Doğal Dil İşleme Serisi – Word Embedding Yöntemleri

Herkese merhabalar, bu yazımda sizlere en çok keyif aldığım NLP bilimi ile ilgili ufak bilgiler vereceğim. Konu word embedding olunca bilgilere ulaşmak için birçok farklı kaynaktan araştırma süreci yaşadım. Şunu da söylemeliyim ki makine öğrenimi alanında en çok araştırmayı sevdiğim şeylerden birisi de doğal dil işleme oldu! Gelin sizlerle bu güzel süreci daha eğlenceli kılalım.

Word embedding, kalıplaşmış bir tabir olduğu için kalıbını bozmadan sizler ile paylaştım. Çünkü çalıştığımız bu yapay zeka alanı maalesef İngilizce tabirlere alışkanlık sağladığı için Türkçe bir kelime kullanıldığı an sanki anlamını yitiriyormuş gibi hissediyorum.

Word embedding is the collective name for a set of language modeling and feature learning techniques in natural language processing where words or phrases from the vocabulary are mapped to vectors of real numbers.

Wikipedia

Yukarıda gördüğünüz açıklamada ise bu tabirin ifadelerin bir dizi dil modelleme ve özellik öğrenme tekniğinin ortak adı olduğunu belirtmektedir. Çok fazla kafanızı karıştırmadan işin detayına gelin bakalım. Biliyorsunuz ki makineler bizim gibi kelimelerden anlayamıyorlar. Bunun yerine sayısal değerler ve vektörler ile iletişim halindeler. Söz konusu sayısal değerler olduğunda ise kategorik veriler geçersiz kalmaktadır. Ne dersiniz, anlatmak istediklerime biraz daha yaklaşabildik mi?

Bu yazıda en sık kullandığım iki yöntemden bahsedeceğim. Yüksek lisansım boyunca çalıştığım projelerde one-hot encoding ve word2vec yöntemlerini kullanma fırsatım olmuştu. Bu sebeple bu iki yöntemi sizlere en anlaşılır şekilde anlatmak istiyorum.

1. Frekans Bazlı Word Embedding Yöntemi

Makine öğrenimi algoritmaları yukarıda da bahsettiğim gibi doğrudan kategorik veriler üzerinde çalışmamaktadır. Bu sebeple içerdiği verilerin sayısal (numerik) değerlere dönüştürülmesi gerekmektedir. Şu numerik değerleri biraz daha açmak gerekirse ikili (binary) değerlerden bahsetmekteyiz.

Nasıl Çalışır?

Metinde var olan kategorik değerler öncelikle tamsayı değerleri ile eşleşir. Bu eşleşme vektörel olarak gerçekleşir. Başlangıçta tüm tamsayı değerleri 0 olarak atanmaktadır. Metin incelenirken hangi veri geçerli ise o değer 1 ile değiştirilmektedir.

Label Encoding

Ürün İsmiKategorisiFiyatı
Çikolata14
Makarna23
Deterjan36

⬆️ Yukarıdaki tabloda ürün isimleri, değerleri ve fiyatları yer almaktadır.

One Hot Encoding

ÇikolataMakarnaDeterjanFiyatı
1004
0103
0016

2. tabloda ise dikkat ettiyseniz 0 veya 1 değerleri yer almaktadır. Örneğin çikolatanın mevcut olduğu satırda değer 1 olarak atanmıştır. Çikolata 1 değerine sahip iken makarna ve deterjan 0 olmuştur. Bu duruma dikkat ederek diğer ürünleri de yorumlamanız mümkündür.

NOT ❗️

Yukarıda yer alan bu yöntemlerle genellikle bir dokümanda veya metinler üzerinde kelime gruplarının olup olmaması durumuna göre matris oluşturulmaktadır.

Sizleri çok yormadan embedding işleminin birinci sürecini bitirmiş olduk. Bir sonraki yazımda bahsedeceğim TF/IDF ve word2vec yöntemlerinin yer aldığı yazımı heyecanla bekliyorum, peki ya siz?

REFERANSLAR

Leave a Reply

Your email address will not be published. Required fields are marked *