İyi bir doğal dil işleme kitaplığı var mı [kapalı]


90

Mevcut modülümde bazı NLP uygulamam gerekiyor. Burada bana yardımcı olabilecek iyi bir kitaplık arıyorum. 'LingPipe' ile karşılaştım ama nasıl kullanılacağını tam olarak takip edemedim.
Temel olarak, uygulamanın düz İngilizce olarak yazılan müşteri talimatlarını (teslimat talimatları) deşifre edebileceği bir özellik uygulamamız gerekir. Örneğin:

  • Yarın öğlen 12: 00'de alınacak
  • 10 Hazirandan sonra teslimat iste
  • Lütfen çarşambadan önce göndermeyin
  • Siparişe 10 birim daha XYZ ekleyin

Yanıtlar:


79

LingPipe çok güzel ve iyi belgelenmiştir. Ayrıca şunlara da göz atabilirsiniz:

Sonuncusu özellikle ilginizi çekebilir, ancak hazır Java uygulamaları olup olmadığını bilmiyorum (ve belki de bu sizin sorununuz için çok büyük bir silahtır :-)

Paul'un DSL kullanma fikri, muhtemelen daha kolay ve daha hızlı uygulanması ve müşterileriniz için kullanımı daha güvenilirdir. Ben de önce buna bakmanızı tavsiye ederim.


1
Raporumu bu forumdan ve internetteki diğer yerlerden topladığım girdilere dayanarak sundum. Ayrıca önerdiğiniz diğer seçenekleri de önerdim ve Biz bunu beklemeye almaya karar verdi (Şimdi mümkün olan en iyi adayı bulmak için Ar-Ge'ye başlıyor).
Vini

1
LingPipe'ı listelediğiniz diğerleriyle karşılaştırırsanız hangisini tercih ederdiniz? Bunu sadece @ Winnie'nin sorusu için değil, genel amaçlı soruyorum.
kamaci

1
MALLET'e göz atın: mallet.cs.umass.edu
Samik R

11

NLP'yi kullanmayı seçip seçmemenizin sisteminizin özel gereksinimlerine bağlı olabileceğini düşünüyorum. Serbest biçimli İngilizcenin kabul edilmesi bir gereklilik mi, yoksa yalnızca belirli bir dizi talimat kabul edilecek mi? Kullanıcılarınızın iletmesi gerekenleri destekleyen , alana özgü bir dil oluşturmak , serbest biçimli metnin tam anlamıyla analizini yapmaktan daha kolay olabilir.

Java alanında Groovy, DSL'ler oluşturmak için bazı desteğe sahiptir .


İşte gereksinim belgesinden birkaç satır: '.. ve kullanıcı düz İngilizce bir not veya özel bir talimat girebilmelidir. Sistem daha sonra kullanıcı talimatını ayrıştırmalı ve siparişin ilgili alanlarını (varsa) doğru değerlerle doldurmalıdır. "
Vini

10
Bu oldukça belirsiz bir gereklilik. Örneğin, notun dilbilgisi açısından doğru olması gerekiyor mu? Gereklilikleri ortaya koyan tarafların NLP'nin durumuna aşina olup olmadıklarından emin değilim, ancak anlattıkları sorun esasen okuduğunu anlama veya 'kutsal' olarak tanımlanan sorunlardan biri olan doğal dil anlayışı NLP'nin kasesi. Bunu sizin için yapabilecek bir paket bulacağınız bana kuşkulu - kullanıcıya sınırlı sayıda özel talimat belirleyebilecekleri bir UI vermek muhtemelen çok daha gerçekçi.
Paul Morie

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.