Adlandırılmış Varlık Tanıma için Word2Vec


25

Adlandırılmış bir varlık tanıma sistemi oluşturmak için google’ın word2vec uygulamasını kullanmak istiyorum. Yapısal geri yayılımlı özyinelemeli sinir ağlarının adlandırılmış varlık tanıma görevleri için uygun olduğunu duydum, ancak bu tür bir model için iyi bir uygulama ya da iyi bir eğitim bulamadım. Atipik bir korpusla çalışıyorum, NLTK ve benzeri standart NER araçları çok düşük performans gösterdi ve kendi sistemimi eğitmek zorunda kalacağım gibi görünüyor.

Kısacası, bu tür bir sorun için hangi kaynaklar mevcut? Standart bir özyinelemeli sinir ağı uygulaması mevcut mu?


Korpusunuzda Stanford NER'i eğitmeyi denediniz mi? Burada bir öğretici var .
Emre

Yapmamalıyım - işe yarayıp yaramadığını görmek için bir yol göstermeliyim.
Madison May

Word2vec özelliklerini veya benzerlerini kullanmak isterim, çünkü nispeten küçük bir etiketli veri kümesine erişimim var ve elimdeki etiketsiz verilerin çoğundan yararlanmam gerekiyor.
Madison Mayıs

Yanıtlar:



7

Son iki makale, bu sorunu çözmek için CharWNN adlı Derin öğrenme mimarisini kullanıyor. CharWNN ilk önce bir İngiliz corpus etiketinde Konuşma Bölümünde (POS) en son sonuçları elde etmek için (el yapımı özellikler olmadan) kullanılmıştır.

İkinci bir kağıt aynı yazar tarafından bir kelime sanat sonuçlarının belirgin durum ile, 10 entity'ye sınıflara ait olup olmadığını tahmin etmek için aynı (veya benzeri) yapısını kullanır.


İlginç. Bunu paylaştığın için teşekkürler. Neden bu yaklaşımı ingilizce şirketlerinde test etmediklerini merak ediyorum.
MaticDiba 14:15

3

Http://deeplearning4j.org/word2vec.html adresini deneyin . Bunun NER ve diğer NLP görevlerinde kullanılan Kelimeler Çantası yerine kullanılan bir Word2Vec uygulaması vardır.


1
Word2vec uygulamalarını bulmakta hiçbir sorun yaşamadım, ancak kullanılacak özyinelemeli bir net ağ bulamadım.
Madison

Link artık aktif değil, mümkünse lütfen yeni çalışma bağlantısını paylaşın
Amandeep

1

İşte çoğunlukla denetlenmeyen bir word2vec merkezli yaklaşımı benimseyen NER için kelime vektörlerinin nasıl kullanılacağı hakkında bazı fikirler.

  1. Bir dizi kelime vektörü (eğittiğiniz veya GoogleNews-vectors-negative300.bin gibi hazır bir şey) göz önüne alındığında, vektör uzayındaki kümeleri keşfedin. Bu kümeler, temel olarak adlandırılmamış çeşitli kavramlar için tanımlarınızdır.
  2. Asgari denetim ile, isimlendirilmemiş kümeleri insan bilgisiyle eşleştirmek için haritalandırabilir / dönüştürebilir, böylece bilinen kelime vektörlerinin ve isimlendirilmemiş konseptlerin üzerine kurulmuş isimli kavramlar oluşturabilirsiniz. Örneğin, bir yöntem, findCluster(['joy', 'surprise', 'disgust', 'trust', 'fear', 'sadness', 'anger', 'anticipation'])çoğunlukla duygularla ilgili yüzlerce kelime içeren bir liste döndürür. Bu listeye 'duygu' adını verirseniz, orada vektör uzayını temel alarak tanımlanmış bir 'duygu' konseptine sahipsiniz.
  3. Verilen iki kavramı arasındaki ara kavramı bulmak için vektör matematiğini de yapabilirsiniz. Örneğin, vektör matematiği size, iki kelimeye 'sürpriz' ve 'iğrenç' verildiğinde, aşağıdakilerin ikisinin arasında bulunduğunu söyleyebilir: hoşnutsuzluk, şaşkınlık, hayal kırıklığı, şaşkınlık, şaşkınlık, şiddet, şaşkınlık, şaşkınlık, şok, vb. kavramları arasında ilişki kurmak için.
  4. Hafta içi, tüm duygular, mutlu duygular, araçlar vb. Gibi çeşitli adlandırılmış konseptler oluşturmak için yukarıdakileri tekrarlayabilirsiniz.
  5. Adlandırılmış kavramların katmanlarını oluşturduktan sonra, bir RNN'yi adlandırılmış kavramlarla güçlendirilmiş bir metin corpus'unda eğitebilirsiniz, böylece 'kahverengi tilki atlamaları' da '{color} {animal} {action}' vb. Bu şekilde, RNN denetlenmemiş bir şekilde bazı ilkel gramerleri öğrenebilmelidir.
  6. Yukarıdan yeterince güçlü bir dilbilgisi oluşturduysanız, bunu NER görevlerinizden bazılarına uygulayabilmelisiniz.
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.