PNL - Gazetteer est-il une triche?

16

En PNL, le concept Gazetteerpeut être très utile pour créer des annotations. Pour autant que je comprends:

Un répertoire géographique se compose d'un ensemble de listes contenant des noms d'entités telles que des villes, des organisations, des jours de la semaine, etc. Ces listes sont utilisées pour trouver des occurrences de ces noms dans le texte, par exemple pour la tâche de reconnaissance d'entités nommées.

Il s'agit donc essentiellement d'une recherche. N'est-ce pas une sorte de triche? Si nous utilisons un Gazetteerpour détecter les entités nommées, alors il ne se passe pas grand Natural Language Processing- chose . Idéalement, je voudrais détecter des entités nommées à l'aide de NLPtechniques. Sinon, en quoi est-il meilleur qu'un comparateur de motifs d'expression régulière?

AbtPst
la source
2
Je n'appellerais pas cela de la tricherie en soi ... sauf si vous avez été spécifiquement conçu pour utiliser une solution de recherche non-dictionnaire. Je ne l'appellerais pas non plus la PNL traditionnelle, bien que vous ne devriez jamais négliger le kilométrage substantiel que vous pouvez obtenir d'une solution simple à un problème.
Kyle.
1
Vous pouvez peut-être l'utiliser pour former un identificateur d'entité nommée. Que va faire votre répertoire géographique à propos des entités qui ne sont pas dans son corpus?
Emre
J'espérais qu'en utilisant correctement les balises POS et le découpage de noms, je n'aurais jamais besoin d'un répertoire géographique. est-ce possible?
AbtPst
2
Dans l'industrie, la tricherie n'existe pas. :-) Mais de toute façon, si vous voulez une "approche générale", vous devez commencer par quelques données annotées à la main, c'est-à-dire les semences, pour apprendre les contextes dans lesquels apparaissent les éléments NE, pour en savoir plus.
Adam Bittlingmayer

Réponses:

15

Le répertoire géographique ou toute autre option de fonctionnalité de taille intentionnellement fixe semble une approche très populaire dans les articles universitaires , lorsque vous avez un problème de taille finie, par exemple NER dans un corpus fixe, ou étiquetage POS ou autre. Je ne considérerais pas cela comme de la triche à moins que la seule fonctionnalité que vous utilisiez soit l'appariement de Gazetteer.

Cependant, lorsque vous entraînez tout type de modèle de PNL, qui repose sur un dictionnaire pendant la formation, vous pouvez obtenir des performances réelles bien inférieures à celles que vos tests initiaux auraient rapportées, à moins que vous ne puissiez inclure tous les objets d'intérêt dans le répertoire géographique (et pourquoi alors vous avez besoin de ce modèle?) parce que votre modèle entraîné dépendra de la fonctionnalité à un moment donné et, dans le cas où d'autres fonctionnalités seront trop faibles ou non descriptives, de nouveaux objets d'intérêt ne seraient pas reconnus.

Si vous utilisez un répertoire géographique dans vos modèles, vous devez vous assurer que cette fonctionnalité possède une fonction de compteur pour permettre au modèle de s'équilibrer elle-même, de sorte qu'une simple correspondance de dictionnaire ne sera pas la seule fonctionnalité de la classe positive (et plus important encore, le répertoire géographique devrait correspondent non seulement à des exemples positifs, mais aussi à des exemples négatifs).

Par exemple, supposons que vous ayez un ensemble complet de variations infinies de tous les noms de personnes, ce qui rend le NER général non pertinent, mais maintenant vous essayez de décider si l'objet mentionné dans le texte est capable de chanter. Vous vous baserez sur les fonctionnalités d'inclusion dans votre répertoire géographique Person, ce qui vous donnera beaucoup de faux positifs; ensuite, vous ajouterez une fonction centrée sur les verbes de " Is Subject of verb sing ", et cela vous donnera probablement de faux positifs de toutes sortes d'objets comme des oiseaux, votre ventre lorsque vous avez faim et un homme ivre qui penseil peut chanter (mais soyons honnêtes, il ne peut pas) - mais cette fonctionnalité centrée sur le verbe s'équilibrera avec votre répertoire géographique pour attribuer une classe positive de `` chanteur '' à des personnes et non à des animaux ou à d'autres objets. Cependant, cela ne résout pas le cas d'un artiste ivre.

chewpakabra
la source
4

L'utilisation d'une liste d'entités présente quelques inconvénients:

  • La liste est fermée
  • La liste n'est pas contextuelle. Vous avez besoin de contexte pour faire la différence entre "une maison blanche" et "la maison blanche".
  • La création de listes nécessite beaucoup de travail
  • La liste peut également contenir des erreurs.
  • Cela ressemble à de la triche (ou à la liste, aucun aperçu de la PNL n'est utilisé).

Vous pouvez faire face à ces inconvénients en suivant la direction suggérée par @emre et en utilisant la liste pour apprendre un classificateur.

Par exemple, vous pouvez utiliser des jetons près de l'entité et apprendre une règle comme celle-ci: "J'habite à X" est un indicateur d'un lieu et "J'ai parlé avec X" est un indicateur d'une personne. Vous pouvez jouer à ce jeu quelques tours en augmentant votre liste par les coups des règles et utiliser la nouvelle liste pour en savoir plus.

Veuillez noter que dans cet apprentissage, vous introduirez du bruit dans les données, donc dans la plupart des cas, l'apprentissage devrait être si simple.

DaL
la source