Scikit sınıflandırıcılarının sınıflandırılması ne kadar zaman alır?


10

1 milyon etiketli belgeden oluşan bir grupta metin sınıflandırması için scikit doğrusal destek vektör makinesi (SVM) sınıflandırıcısı kullanmayı planlıyorum. Ne yapmayı planlıyorum, bir kullanıcı bazı anahtar kelime girdiğinde, sınıflandırıcı ilk önce bir kategoride sınıflandıracak ve daha sonra bu kategori kategorisinin belgelerinde sonraki bilgi alma sorgusu gerçekleşecektir. Bir kaç sorum var:

  1. Sınıflandırmanın fazla zaman almayacağını nasıl doğrularım? Kullanıcıların daha iyi sonuçlar almak için bir sınıflandırmanın bitmesini beklemek zorunda kalmasını istemiyorum.
  2. Python'un scikit kütüphanesini web siteleri / web uygulamaları için kullanmak bunun için uygun mu?
  3. Amazon veya flipkart'ın kullanıcı sorgularında nasıl sınıflandırma yaptığını bilen var mı, yoksa tamamen farklı bir mantık kullanıyorlar mı?

Tüm anahtar kelimeleri önceden sınıflandırabilir ve ardından kategoriyi dizinden alabilirsiniz.
14'te arkadaş

@ffriend bir kelime sorgusu için bir cevap gibi görünüyor. Ama arama sorgusu daha fazla kelime oluşursa .. veya kelime kombinasyonları .. i tüm kombinasyonları için dizin oluşturmak zorunda !!!
user3498

1
SVC hızlıdır, bu nedenle orta yüklü bir uygulamada sorgu sınıflandırması için kullanmak istiyorsanız, çalışır. Ancak, tek (hatta birkaç kelime) ile sınıflandırma çoğu durumda kötü bir fikirdir. Belirsiz kelimeleri ele alalım, örneğin: bir kelime olasılıklar arasında çok az fark olan 2 kategoriye aitse ne olur? Biraz daha az olası bir kategoriyi arama dışı bırakacak mısınız? Muhtemelen istediğiniz şey, arama yaparken daha az olası kategorileri reddetmemek için formül sıralamasında ek bir terimdir.
14'te arkadaş

Yanıtlar:


3

Ne kadar sürdüğünü görmenin tek güvenilir yolu kodlamak ve denemek. Eğitim daha fazla zaman alacaktır, daha sonra kullanmak için modelinizi (turşu) kaydedebilirsiniz.


3

Burada büyük bir sorun görmüyorum. Bu yüzden, tüm sorularınızı üretim seviyesi açısından cevaplamaya çalışacağım:

Sınıflandırmanın fazla zaman almayacağını nasıl doğrularım?

Sahip olduğunuz corpus verilerinin bir alt kümesini alın (rastgele yapabilirsiniz, örneklemeye gerek yoktur) ve algoritmanızı üzerinde test edin ve bunlar genel veri kümesine yaklaşır / genelleştirir.

(SVM nispeten daha hızlıdır. Bununla birlikte, yukarıdaki işlemi sadece emin olmak için yapın.)

Ve üretime başlamadan önce geliştirme ortamında test edin.

Python'un scikit kütüphanesini web siteleri / web uygulamaları için kullanmak bunun için uygun mu?

Evet , öyle. Bu edilir zaten kullanılmakta olan orada şirketlerin güzel yığın tarafından.

Amazon ve Flipkart ile ilgili üçüncü soru, ekipleri dışındaki biri tarafından cevaplanamaz.

Ayrıca, modellerinizi eğitmek için mapreduce tekniklerini kullanmanızı öneririm. Daha önce de önerildiği gibi, modellerinizi turşulayın, böylece her istekle onları eğitmeniz gerekmez.

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.