Verilerimdeki ince ilişkileri nasıl ifade ederim?


20

"A", "B" ve "C" ile ilgilidir. "B" ve "C" nin bu bağlamda da ilişkili olabileceğini nasıl gösterebilirim?

Örnek:

Yakın zamanda yapılan bir Broadway oyunu hakkında birkaç başlık:

  1. Al Mamino'nun oynadığı David Mamet'in Glengarry Glen Ross'u Broadway'de açılıyor
  2. 'Glengarry Glen Ross' da Al Pacino: Eleştirmenler ne düşündü?
  3. Al Pacino Broadway turn için cansız yorumlar kazanıyor
  4. Tiyatro İncelemesi: Glengarry Glen Ross Yıldızlarını Zor Satıyor
  5. Glengarry Glen Ross; Hey, Klieg Işıklarını Kim Öldürdü?

Sorun:

Bu kayıtlar üzerinde bulanık bir dize eşleşmesi çalıştırmak, bazı ilişkiler kuracak, ancak diğerleri değil, bir insan okuyucu bunları daha büyük veri kümelerinde bağlamdan seçebilmesine rağmen.

# 3'ün # 4 ile ilgili olduğunu gösteren ilişkiyi nasıl bulurum? Her ikisi de # 1'e kolayca bağlanabilir, ancak birbirine bağlanamaz.

Bu tür veri veya yapı için (Google ile) bir ad var mı? Ne tür bir algoritma arıyorum?

Hedef:

1.000 başlık verildiğinde, bu 5 öğenin muhtemelen aynı şeyle ilgili olduğunu otomatik olarak öneren bir sistem .

Dürüst olmak gerekirse, programladığımdan beri çok uzun zaman geçti, bu sorunu nasıl doğru bir şekilde ifade edeceğimi kaybettim. (Eğer mantıklıysa, bilmediğimi bilmiyorum).

Bu kişisel bir proje ve ben Python'da yazıyorum. Herhangi bir yardım, tavsiye ve işaretçi için şimdiden teşekkür ederiz!


1
doğal dil ayrıştırma gibi sesler ve / veya başka olasılıklı teknikler gereklidir
jk.

2
Bu harika bir soru!
Michael Brown

Sanırım bunu Prolog'da uygulayabilen sistemler gördüm.
SinirliWithFormsDesigner

1
@FrustratedWithFormsDesigner Mantık programlamasında birleşme düşündüğünüzden şüpheleniyorum ..?
Izkata

Yanıtlar:



7

Anlambilim dünyasına giriyorsunuz. Metni ayrıştıracak ve serbest form belgesini ayrıştıracak ve insanlar, yerler, şeyler, tarihler ve kavramlar da dahil olmak üzere karşılaşılan önemli konuları döndürecek olan temel kavramları ( Semantic API için hızlı bir arama birkaç tane ortaya çıktı) ortaya çıkaracak kamu hizmetleri vardır. . Daha iyi olanlardan bazıları [RDF] olarak bilinen bir biçimde dönecektir

Bunu yapabilen kendi sisteminizi inşa etmek istiyorsanız, alan Doğal Dil İşleme'dir ve bu da dalmak için çok ilginç bir tavşan deliğidir.


4

Mümkünse, hikayeyi başlık ile birlikte alın. Manşetler bazen "sevimli" olabilir ve tartışılan konuya sadece teğetsel referans verebilir. Bu insanlarda işe yarar (çünkü küresel bağlamları vardır ), ancak NLP ile pek iyi değildir.

Karl Bielefeldt'in cevabında belirtildiği gibi, kümelenme iyi bir yaklaşımdır, ancak Şeytan ayrıntıda gizlidir. Sadece sorun / kullanıcı alanınıza uyan bir kümeleme yaklaşımı seçmekle kalmaz, aynı zamanda neyin kümelenmekte olduğunu da bulmanız gerekir .

Arka planım 80'li-90'lı yıllardan itibaren Bilgi Alma (IR) 'da ve benzerlik arama ve merkez tabanlı kümelenmeye odaklandık . Belgelerimiz , temelde bir terimler listesi ve bunların dokümandaki göreceli önemi olan ağırlıklı nitelik vektörleri ile temsil edildi . Bu yaklaşım işe yarayabilir (bazı koleksiyonlarda diğerlerinden daha iyi olsa da), ancak kısa sevimli başlıklarla ilgili sorunları vardır, çünkü işleri birbirine bağlamak için anahtar kelime terimlerinden yoksundurlar. Ancak belgenin tamamını kullanırsanız, daha zengin bir terim listesi (ve muhtemelen daha iyi bir önem duygusu) elde edersiniz ve bu terimler listesi, muhtemelen, "Şirin".

Vektör oluşturma sorunlarına vb. Girmek isterseniz e-postalarım profilimde.

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.