Bag-of-Words Modeli

Bu yazıda Türkçeye Kelime Çantası Modeli olarak çevrilen Bag-of-Words modeline yakından bakacağız.

Kelime çantası modeli, metni makine öğrenme algoritmalarıyla modellerken metinleri vektörel olarak göstermenin bir yoludur. Bu modelde metni tabiri caizse bir çanta içindeymiş gibi temsil ediyoruz.

Bir örnek yapalım. 2 metnimiz olsun.

(1)Buğra Ayan Erzurumda doğdu. Erzurumda büyüdü.
(2)Buğra Ayan Ankarada yaşıyor.

Şimdi bu iki cümleye dayanarak bir liste oluşturulur.

[     "Buğra", "Ayan", "Erzurumda" , "doğdu", "büyüdü", "Ankarada", "yaşıyor" ]

Şimdi bu listeyi histogram temsili ile gösteriyoruz. İlk metin ve ikinci metinin liste ile kesişimini ve kelimenin kaç kez geçtiğini vektöre çeviriyoruz.

(1) [1, 1, 2, 1, 1, 0, 0 ]
(2) [1, 1, 0, 0, 0, 1, 1 ]

Bu temsilin e-posta filtreleme gibi başarılı olduğu alanlar var. Fakat terim sıklıkları en iyi yöntem değil. Çünkü en sıradan kelimeler olan “ile,ve,yani” gibi kelimeler en sık geçen kelimeler olabiliyor. İşte bu problemi ala almak ve terim sıklıklarını normalleştirmek için tf-idf kullanılıyor.

Peki daha iyisi ne olabilirdi ?

Bunun için önerilen yöntem n-gram modeli. Burada da kelimeleri belirlenen n sayısına göre örneğin 2 li 3 lü halde eleman olarak listeye aktarıyoruz.

Örneğin 2 gram için listemiz:

(1)Buğra Ayan Erzurumda doğdu. Erzurumda büyüdü.
(2)Buğra Ayan Ankarada yaşıyor.

metinleri için listemiz:

[ “Buğra Ayan”, “Ayan Erzurumda”, “Erzurumda doğdu” …. ] gibi oluyor.

Buradan baktığımızda şunu diyebiliriz. “Kelime çantası yaklaşımı saslında n-gram modelinin n=1 değeri için olan özel durumudur.”

You may also like...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir