La PNL: tout facile et de bonnes méthodes pour trouver de similarité sémantique entre les mots?
Je ne sais pas si StackOverflow couvre la PNL, donc je vais donner un coup de cette.
Je suis intéressé à trouver la proximité sémantique entre deux termes d'un domaine spécifique, c'est à dire "qualité d'image" et "bruit". Je suis en train de faire des recherches pour déterminer si les examens de caméras sont positifs ou négatifs pour un attribut particulier de la caméra. (comme la qualité d'image dans chacun des examens).
Cependant, pas tout le monde utilise exactement la même formulation "qualité d'image" dans les posts, donc je suis sorti pour voir si il y a un moyen pour moi de construire quelque chose comme ça:
"qualité d'image", qui comprend ("bruit", "couleur", "netteté", etc etc)
je peux donc envelopper tout le tout au sein d'un grand parasol.
Je le fais pour une autre langue, afin de Wordnet n'est pas forcément utile. Et non, je ne travaille pas pour Google ou Microsoft donc je n'ai pas les données du peuple en cliquant sur les comportements de l'entrée des données.
Cependant, j'ai beaucoup de texte, pos-tag, segmenté, etc.
- Il serait utile si vous pouviez nous en dire plus sur les données que vous travaillez avec et la tâche que vous voulez effectuer. Êtes-vous essayer de classer le contenu des examens individuels comme étant positive ou négative? Ou, êtes-vous en supposant que les commentaires sont déjà étiquetés comme positif ou négatif et vous êtes à essayer de comprendre quels sont les attributs de la caméra conduire à un utilisateur sentiments sur le produit (par exemple, le produit a été donné de 1 étoiles sur 5, et que l'utilisateur mentionne "qualité d'image" de l'examen, de sorte que vous déduire que l'image est de mauvaise qualité)?
- Oups. Confondre la PNL/Traitement de la Langue Naturelle avec la PNL/Programmation Neuro-Linguistique. Mon mauvais.
- 1) je voudrais trouver l'égide de la classification de termes: à l'instar de plusieurs attributs appartiennent à la même catégorie (je suppose que c'est de la classification, alors?) Je ne l'ai traitée avec classificaion par le biais de l'apprentissage de la machine de la méthode, j'en doute fortement, peut être appliquée à la PNL 2) je veux fondamentalement quelque chose à me dire la similitude entre les deux concept termes: "focus" vs "Détails" devrait être plus élevé que le "poids de la caméra" vs "flash"
Vous devez vous connecter pour publier un commentaire.
Découvrez google similitude distance http://arxiv.org/abs/cs.CL/0412098
par exemple. si beaucoup de pages web, de les inclure à la fois, theyre probablement liées.
programme de démonstration à http://mechanicalcinderella.com
Autre que cela, vous pourriez essayer de traduire un projet comme wordnet ((google translate pourrait aider), ou de démarrer une collaboration de l'ontologie.
Afin de trouver de similarité sémantique entre les mots, un mot le modèle de l'espace devrait faire l'affaire. Un tel modèle peut être mis en place très facilement et assez rapidement. Très probablement, vous voulez mettre en œuvre une sorte de réduction de dimensionnalité. Le plus simple je pense est de Aléatoire D'Indexation, qui a été largement utilisé en PNL.
Une fois que vous avez votre mot modèle de l'espace, vous pouvez calculer la distance (par exemple, cosinus distance) entre les mots. Dans un tel modèle, vous devriez obtenir les résultats que vous avez mentionné plus tôt (distance entre le "focus" et "Détails" devrait être plus élevé que le "poids de la caméra" vs "flash").
Espérons que cette aide!
Re votre commentaire:
Veuillez également vous reporter à ces questions: trouver les mots liés à l',sémantique de la similitude des deux phrases.
Prendre un coup d'oeil à l'Indexation Sémantique Latente http://en.wikipedia.org/wiki/Latent_semantic_indexing il traite spécifiquement de votre problème. Cependant, vous devez trouver la manière de faire la corrélation entre ces méta-concepts positifs ou négatifs en sentiments. L'analyse des sentiments http://en.wikipedia.org/wiki/Sentiment_analysis devrait vous aider.
J'ai vu word2vec sur HackerNews il y a quelques semaines, semble assez proche de ce que vous voulez.
Mot l'Espace est certainement le chemin à parcourir ici.Si la LSA est trop lente pour votre application, et si la sémantique de hasard-l'indexation est trop peu profond de l', vous devriez envisager l'api.corticale.io .
Cette API REST peut vous donner la sémantique des empreintes digitales de la représentation de n'importe quel mot. Cette sémantique empreinte contient tous les différents contextes dans lesquels les mots appartiennent. Vous pouvez distinguer un mot d'esprit appeler comme "organe" les retours (muscle, du piano, de l'église, adhésion...)
Et pour chacun des contextes, vous pouvez obtenir contextuelle termes: "le piano" donnera (orgue, clarinette, violon, flûte, violoncelle, compositions, clavecin, orchestre)
Concernant votre dernier aspect, ces sémantique empreintes digitales sont entièrement indépendants de la langue. Actuellement corticale.io API couvre: l'anglais, l'espagnol, le français, l'allemand, le danois, arabe, russe, Chinois. D'autres langues sont en cours de publication jusqu'à la fin de 2014.
Vous voudrez peut-être jeter un coup d'œil au livre L'Opinion mining et sentiment analysis.
Si vous êtes uniquement intéressé par la similitude des mots et des phrases, cette étude peut vous aider à: À partir de la Fréquence de Sens: Espace Vectoriel des Modèles de la Sémantique