Selamlar. 11 Haziran 2021 tarihinde, Hora 21'de (https://www.horacongress.com/) sunduğumuz 'Text Generation Practices in Human Resources' isimli bildirimizin sunumunu buraya da koymak istedik.
A Matching Approach Based on Term Clusters for eRecruitment
Hora sunum
1. Text Generation Practices in
Human Resources
Şevval Az1, Kemal Can Kara1, Deniz Kılınç2 and Fatma Bozyiğit 2*
1Kariyet.net Inc, İstanbul, TURKEY
2Computer Engineering, İzmir Bakırçay University, İzmir, TURKEY
+Konuşmacı: Kemal Can Kara
Sunum/Bildiri Tipi: Sözlü / Abstract
Konferans : Hora 2021
2. Ajanda
Kariyer.net Hakkında
Problemin Tanımı
Yenilikçi Yönü
Veri Hazırlama
Model’in Hazırlanması
Sonuçlar
Değerlendirme & Gelecek Çalışmalar
3. Her yıl 1,5 Milyondan fazla işe yerleştirmeye aracılık yapıyoruz
Adaylar ile işverenleri iki farklı platformda buluşturuyoruz
Her ay:
+50
bin İş ilanı
32
milyon ziyaret
+12
milyon başvuru
112
bin işveren
10
milyon download
25
milyon özgeçmiş
Toplam:
Her ay:
+40
bin İş ilanı
4,7
milyon ziyaret
2
milyon başvuru
290
bin işveren
5
milyon download
2.5
milyon mavi yaka aday
Toplam:
+200
bin yeni aday
(21 yılda) (2 yılda)
%50
ilan pazarı
Yılda:
600
bin istihdam
Yılda:
900
bin istihdam
4. BAŞLATILMA GEREKÇESİ VE AMACI
Projenin Başlatılma Gerekçesi ve Amacı
• Uzman olmayan kişiler için iş ilanı oluşturmak hem
zahmetli hem de firmanın itibarı açısından riskli bir süreçtir.
• İş tanımı yazmadaki tecrübesizliğin net olmayan ve eksik
metinlere yol açması
• Problem Örnek:
- İlan 1/Cümle 4 (Yanlış): Microsoft ofis programlama konusunda tecrübeli.
- İlan 1/Cümle 4 (Doğru): Microsoft ofis programlarında tecrübeli.
• Çalışma Anı Örnek
- Girdi1: yüksek lisans
- Sistem önerisi#1: mezunu | veya | bölümlerinden| derecesine
- Kullanıcı tercihi#1: yüksek lisans mezunu
Sistem önerisi#2: tercihen | veya | iş | ms
Kullanıcı tercihi#2: yüksek lisans mezunu tercihen
Sistem önerisi#3: üniversitelerin | tercihen | üniversite | meslek
Kullanıcı tercihi#3: yüksek lisans mezunu tercihen üniversitelerin
Bir iş ilanı örneği
5. Otomatik İlan Metni Oluşturan Derin Öğrenme Modeli Geliştirilmesi
YENİLİKÇİ YÖNÜ
• Daha önce Türkçe dili için ilan metni üretmeye hedefleyen, benzer özelliklere sahip akademik bir
çalışma ve kullanılabilir bir ürün olmaması,
• Metin işleme (Text Processing) ve Doğal Dil İşleme yöntemleri kullanılarak, Türkçe ilan
metinlerinden öznitelikler oluşturulması,
• LSTM ve benzeri tekrarlayan sinir ağı (Recurrent Neural Networks) modelleri kullanılarak anlamlı
Türkçe ilan metinlerinin oluşturulması
6. Veri Hazırlama
• Metin ön işleme adımları
• Html temizlenmesi
• Küçük harfe dönüştürülmesi
• Cümle sonlarının tespiti (html <li> tag)
• Zemberek kütüphanesi ile yazım hatalarının
düzeltilmesi
• Verinin arttırılması
• Her pozisyon grubu için ayrı bir model
olacağından
• Nlpaug python kütüphanesi kullanıldı
• Türkçe ilanlar için elimizdeki veri ile
hazırlanan TF-IDF tabanlı üretim
kullanıldı (İngilizce ilanlar için gömülü
Bert modellerinden faydalınabilir)
7. Word2Vec Embedding
Original After pre-processing
Dataset Number of adverts Number of words Number of adverts Number of words
Civil
Engineering
6.506 140.788 6.102 93.595
Accounting 20.911 321.184 20.074 276.072
Software
Engineering
64.025 1.691.495 63.118 1.162.500
Property Value
Model CBOW
Dimension of vectors 100
Window size 5
Sequence length 3
Learning rate 0.001
Vocabulary size None
Activation functions ReLu, softmax
Optimization method Adam
Metin işleme öncesi ve sonrası öznitelik ve ilan sayıları
Word2vec model parametreleri Word embedding’lerin görselleştirilmesi.
sql
.Net
8. Model Oluşturma
Model Parameters Character level LSTM Word level LSTM
Corpus 1/10 1/40
Batch size 256 128
Learning Rate 0.01 0.01
Epoch 3 5
Sequence Length 50 6
GridSearch ile parametre optimizasyonu
LSTM model için önerilen hyper parametreler
• 3+1 mimaride(3 kelime girdiden sonra 1 kelime çıktı tahmin edecek
şekilde ön işlenmiş) veri setiyle eğitilmiş,
• 256 Batch Size ve 5 Epochs, Adaptive Momentum optimizer’ına sahip
LSTM sequence to sequence modelidir.
• 3 ana katman var. Giriş LSTM ve çıkış katmanları. Kelime seviyesindeki bi-
LSTM modeli 128 nörondan oluşuyor ve aktivasyon fonksiyonu olarak
softmax kullanılmıştır.
• Python dilinde Tenserflow ve Keras kullanılarak oluşturulmuştur.
9. Model Oluşturma
• Üretilen modelin, bir cümleye tamamlaması için farklı algoritmalar tasarlandı.
• Başarıları Bleu Skor ile ölçüldü.
• Bleu skorunun dışında, birbirine benzer metinlerin oluşmaması hedefi için seçilen algortima:
• Her bir girişten sonra, 4 er tahmin almak
• Tahminlerin olasıklarını, ağırlıkla çalışan bir rastgele sayı üreticine sokmak
• Bunu “.” yı bulana kadar tekrarlayıp 3 farklı tahmin cümlesi oluşturuluyor
• Üretim ortamında kullanıcıya, kelime-kelime (kelime grubu) mi yoksa tüm cümle mi önerilmeli
şeklinde dinamik seçim imkanı tanınabilir
10. Sonuçlar
Categories in the corpus BLEU scores (character
level Bi-LSTM)
BLEU scores (word level
Bi-LSTM)
Software Engineering 78.66 92.17
Civil Engineering 71.24 83.22
Accounting 75.02 87.13
Input Generated text Bleu Score
detay (detail) detaylara önem veren, titiz özenli çalışmayı seven, ekip çalışmasına
yatkın, sonuç odaklı analitik düşünebilen
(paying attention to details, like working meticulously, prone to
teamwork, thinking analytically with results)
85.33
erkek (male) erkek adayların askerliğini tamamlamış olmaları tercih sebebidir.
(it is preferable that male candidates have completed their military
service.)
94.57
mobilya (furniture) mobilya sektöründe faaliyet gösteren firmamızın muhasebe
departmanına destek olabilecek çalışma arkadaşları aramaktayız.
(we are looking for colleagues who can support the accounting
department of our company operating in the furniture industry.)
93.91
diksiyon (diction) diksiyonu düzgün, ikna kabileyeti yüksek, sorumluluk sahibi takım
arkadaşları arıyoruz.
(we are looking for team members with diction, high persuasion
and responsible.)
93.91
Kelime seviyesindeki modelin örnek çıktıları ve BLEU skorları
Karakter ve kelime seviyesindeki modellerin BLEU skorları
12. Değerlendirme & Gelecek Çalışmalar
• Domain uzmanları tarafından manuel değerlendirilmelerin yapılması.
• Diğer pozisyon grupların için farklı modellerin eğitilmesi
• GPT-2 ile yeni bir model hazırlanıp, başarısının kıyaslanması
• Teknik terim ağırlıklı domainler için, terim içeren tam öneri cümlelerinde, terimlerin farkına
varılarak önerilebilmesi. Yani kişilere istenen pozisyonun çizgisini aşmadan ve uygun terimleri
de önerecek bir öneri listesi sunabilmek.
• İş ilanları alanındaki ilk otomatik metin üretme çalışmasıdır
• Proje sonunda Türkçe ilan metinlerini içeren bir veri kümesi oluşturulacak ve diğer
araştırmacıların da üzerinde çalışma yapabilmesi adına, ilgili akredite ortamlarda
paylaşılacaktır.