2014-09-03 5 views
5

Ho una parola, secondo cui voglio scoprire se il testo è collegato a quella parola o non usando python e nltk è possibile?Relazione di testo e testo usando python e NLP

Ad esempio, ho una parola denominata "fosforo". Vorrei scoprire che il particolare file di testo è relativo a questa parola o no?

Non posso usare un sacco di parole in nltk perché ho solo una parola e nessun dato di allenamento.

Qualche suggerimento?

Grazie in anticipo.

risposta

5

Non senza un corpus, no.

Guardalo in questo modo: puoi, un essere intelligente, dire se 光 è legato a 部屋 に 入 た た 時 気 気 け け け た た senza chiedere a qualcuno o qualcosa che in realtà conosce il giapponese (supponendo che tu non sappia il giapponese se lo fai, prova con "svjetlo" e "Kad je ušao u sobu, upalio je lampu"). Se non puoi, come ti aspetti che un computer lo faccia?

E un altro esperimento - puoi, un essere intelligente, darmi l'algoritmo con cui puoi insegnare a una persona che non parla inglese che "luce" è relativa a "Quando entrò nella stanza, accese la lampada "? Di nuovo, no.

tl; dr: Sono necessari dati di allenamento, a meno che non si limiti significativamente il significato di "correlati" (ad "contiene", ad esempio).

+0

Questo! Il cervello umano non fa nient'altro che abbinare qualcosa ai dati che deve già trovare schemi o irregolarità per identificare o capire la cosa. Nell'esempio di Amadans, posso solo supporre che 'upalio je lampu' abbia qualcosa a che fare con una 'lampada' perché riconosco la 'lampada' (pattern) e ho imparato che cos'è una lampada (dati di allenamento). ancora di più. – xvdiff

2

È possibile utilizzare la WordNet NLTK per calcolare il percorso punteggio di somiglianza tra la parola e le parole nel vostro altro testo e stimare un euristica basata su questo punto:

from nltk.corpus import wordnet as wn hit = wn.synset('hit.v.01') slap = wn.synset('slap.v.01') wn.path_similarity(hit, slap)

È possibile trovare maggiori NLTK WordNet esempi di utilizzo qui: http://www.nltk.org/howto/wordnet.html

+0

questo richiederebbe qualche sperimentazione e messa a punto dell'euristica, ma se non hai nulla, potrebbe valere la pena provare! – arturomp