Metnin istatistiksel sınıflandırması


32

İstatistiki altyapısı olmayan bir programcıyım ve şu anda önceden tanımlanmış kategorilerde sınıflandırmak istediğim çok sayıda farklı belge için farklı sınıflandırma yöntemlerine bakıyorum. KNN, SVM ve NN hakkında okuyorum. Ancak, başlamakta biraz zorlanıyorum. Hangi kaynakları önerirsiniz? Tek değişkenli ve çok değişkenli hesabı oldukça iyi biliyorum, bu yüzden matematiğim yeterince güçlü olmalı. Piskopos'un Sinir Ağları hakkındaki kitabına da sahibim, ancak giriş olarak biraz yoğun olduğu kanıtlandı.

Yanıtlar:


19

Bu kitapları öneriyorum - Amazon'da da yüksek puan aldı:

Weiss tarafından "Metin Madenciliği"

Konchady tarafından "Metin Madenciliği Uygulama Programı",

Yazılım için, ücretsiz ve açık kaynaklı RapidMiner'i (metin eklentisi ile birlikte) öneririm.

Bu benim "metin madenciliği süreci":

  • Belgeleri toplamak (genellikle bir web taraması)
    • [eğer çok büyükse örnek]
    • Zaman damgası
    • işaretlemeyi çıkarmak
  • tokenize: karakter, kelime, n-gram veya sürgülü pencerelere bölün
  • köklenme (aka lemmatization)
    • [eş anlamlılarını ekle]
    • kapıcı ya da kar tanesi algoritma zamirlerini ve makaleleri görmek genellikle kötü tahmin edicilerdir
  • stopwordsleri kaldır
  • özellik vektörleşmesi
    • ikili (görünür veya görünmez)
    • sözcük sayısı
    • bağıl frekans: tf-idf
    • bilgi kazancı, ki kare
    • [katılım için asgari değere sahip]
  • ağırlıklandırma
    • Belge üstündeki ağırlık kelimeleri daha yüksek?

Sonra onları sınıflandırma çalışmasına başlayabilirsiniz. kNN, SVM veya uygun şekilde Naive Bayes.

Metin madenciliği videolarımın serisini burada görebilirsiniz.


Bu harika bir cevap! Kitap önerilerinize bakacağım ve işleminizin açıklaması da harika. Özellikle özellik vektörleşmeleri için önerileri seviyorum.
Emil H,

(Herhangi biri vektörleştirme bölümünde daha fazla ayrıntı almak isterse, bu harika olurdu.)
Emil H

11

Bahsettiğiniz konuları kapsayan harika bir tanıtım metni , tam metinde çevrimiçi olarak ücretsiz olarak sunulan Bilgi Edinme Girişine .

Bilgi Edinme Girişine Giriş


Bunu dün işte taradım. Bu ilginç bir okuma - Keşke içindeki malzemeyi absorbe etmek için daha fazla zamanım olsaydı, ama ihtiyacım olanı elde edip devam etmek zorunda kaldım.
Thomas Owens,

kabul etti, bu mükemmel bir kitap. Google’ın nasıl çalıştığını açıklıyor :)
Neil McGuigan

5

Sinir ağı çok sayıda belge için yavaş olabilir (ayrıca bu şimdi oldukça eskidir).
Ve ayrıca sınıflandırıcılar arasında Random Forest'ı da kontrol edebilirsiniz; oldukça hızlı, güzel ölçekler ve karmaşık ayar gerektirmez.


Rastgele Ormanlar için +1. Kesinlikle iyi bir sınıflandırıcı, denemek için değil, çünkü denemek için iyi.
Zach

4

Programlama tarafından geliyorsanız, seçeneklerden biri Python için Doğal Dil Araç Takımı'nı (NLTK) kullanmaktır. Serbestçe temin edilebilen bir O'Reilly kitabı var, bu da diğer şeylerin yanı sıra belgeler için sınıflandırıcılar oluşturmaya daha az yoğun ve daha pratik bir giriş olabilir.

İstatistiki tarafa geçmekle ilgileniyorsanız, Roger Levy'nin devam etmekte olan kitabı , Dil Etüdündeki Olasılıklı Modeller kitabının kullanımda olması kötü olmayabilir. İstatistiksel NLP teknikleri ile başlayan cogsci / compsci grad öğrencileri için yazılmıştır.


3

Öncelikle Manning ve Schütze'nin istatistiksel doğal dil işlemenin temelleri kitabını önerebilirim .

Kullanacağım yöntemler kelime frekans dağılımları ve ngram dil modelleridir. İlki, konuyla ilgili sınıflandırma yapmak istediğinizde ve konularınız belirli ve uzman olduğunda (anahtar kelimelere sahip) çok işe yarar. Ngram modelleme, yazma stillerini vb. Sınıflandırmak istediğinizde en iyi yoldur.


0

Naive Bayes genellikle metin sınıflandırmalarının başlangıç ​​noktasıdır, işte Dr. Dobbs'tan birinin nasıl uygulanacağı üzerine bir makale . Ayrıca, metin sınıflandırma için genellikle bitiş noktasıdır çünkü SpamAssassin ve POPFile bunu çok verimli ve iyi bir şekilde paralelleştirir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.