Kelime çantası modeli

Kelime çantası modeli doğal dil işleme ve enformasyon getiriminde kullanılan basitleştirici bir temsildir. Bu modelde bir metin (cümle ya da belge gibi bir metin) kelimelerinin çantası (çoklukümesi) halinde temsil edilir, çoksallık tutulurken gramer ve hatta kelime sırası gözardı edilir. Kelime çantası modeli bilgisayarla görmede de kullanılmıştır.

Metni "kelime çantasın" dönüştürdükten sonra, metnin karakterini verecek çeşitli nicelikler hesaplayabiliriz. Kelime çantası modelinden hesaplanan en yaygın karakteristik tipi ya da özellik, terim sıklığıdır, yani o terimin metinde kaç kez geçtiğidir. Yukarıdaki örnekte her bir ayrı kelimenin terim sıklıklarını şu iki listeyi oluşturarak kaydedebiliriz.

Listelerdeki her bir girdi listedeki mütekabil girdinin sayısını belirtir (buna histogram temsili de denir). Örneğin, birinci (belge 1'i temsil eden) listede, ilk iki girdi "1,2"dir. İlk girdi "Can" kelimesine tekabül eder, o da listedeki ilk kelimedir, ve değeri "1"dir çünkü "Can" birinci belgede 1 kere geçer. Bunun gibi, ikinci girdi "film" kelimesine tekabül eder, o da listedeki ikinci kelmedir, ve değeri "1"dir çünkü "film" ilk belgede 1 kere geçer. Bu liste (ya da vektör) temsili kelimelerin kaynak cümlelerdeki sırasını muhafaza etmez, bu da kelime çantası modelinin temel özelliğidir. Bu tür temsillerin birçok başarılı uygulaması vardır, örneğin e-posta filtreleme.

Kelime çantası modeli sırasız bir belge temsilidir—kelimelerin sadece sayısına bakılır. Mesela yukarıdaki örnekte "Can film seyretmeyi sever. Meryem de filmleri sever", kelime çantası modeli bu metinde her cümlenin "sever" yüklemiyle bittiğini ortaya çıkarmayacaktır. Alternatif olarak, metindeki bu uzamsal enformasyonu saklamakta n-gram modeli kullanılabilir. Yukarıdaki aynı örneğe uygulanarak, bigram modeli metni şu birimlere çözdürecek ve her birimdeki terim sıklıklarını önceki gibi saklayacaktır.

Sözlük kullanımının yaygın bir alternatifi karım dolabıdır: kelimeler doğrudan bir karım işleviyle [hashing function] endekslere eşlenir. Kelimelerin endekslere bir karım işleviyle doğrudan eşlenmesiyle, sözlük saklayacak belleğe hiç gerek kalmaz. Karım çakışmaları olduğunda çoğu zaman boşaltılmış bellek kullanılarak karım kovalarının sayısı çoğaltılır. Pratikte, karım, kelime çantası modellerinin kodlanmasını müthiş basitleştirir ve ölçeklenebilirliğini geliştirir.

Bayesci spam süzgecinde, e-posta mesajı iki olasılık dağılımının birinden seçilen kelimelerin sırasız derlemesi gibi modellenir: biri spamleri, öbürü meşru e-postaları ("ham") temsil eder. Kelimelerle dolu iki tane çanta hayal edin. Çantaların biri spam mesajlarda bulunan kelimelerle doludur, diğer çanta meşru e-postalarda bulunan kelimelerle doludur. Verilen herhangi bir kelimenin iki çantada da bulunması muhtemel olsa da, "spam" çantası "borsa", "Viagra", "satın al" gibi spamvari kelimeleri çok daha sıklıkla içerecektir, "ham" çantası ise kullanıcının arkadaşları ve işyeriyle ilgili kelimeleri daha çok içerecektir.

E-posta mesajını sınıflandırmak için, Bayesci spam süzgeci bu mesajın iki çantanın birinden rastgele dökülmüş bir kelimeler yığını olduğunu varsayar, ve Bayesci olasılıkları kullanarak hangi çantanın daha muhtemel olduğunu belirler.