Quelqu'un a-t-il trouvé un moyen simple, mais efficace d'extraire des références de la date du texte? J'ai fait une bonne quantité de recherche d'outils d'extraction temporelle, mais il n'y a pas beaucoup de choses là-bas. Il y a quelques papiers blancs, mais il semble tomber dans un sous-ensemble de l'ensemble de la bande Web sémantique mais qui n'a pas beaucoup d'attention. p>
Je cherche juste quelque chose de 80% efficace. Il n'est pas nécessaire de capturer des choses comme "le mois après Jan 2009", mais des entités de base des dates communes seraient bien. P>
Je suis ouvert à toutes les suggestions, même des expressions fantaisistes des regex. P>
feu loin! p>
(et merci - henry) p>
3 Réponses :
Une façon dont j'ai fait cela est de rechercher tout ce qui est de 4 chiffres et de la convertir en un nombre. Si le nombre tombe dans l'intervalle d'années, vous êtes intéressé, vous avez probablement une année que vous pouvez utiliser. Si vous êtes intéressé par des mois et des jours de correspondance, vous pouvez vérifier les mots adjacents pour voir s'ils sont un nom de mois ou un nombre compris entre 1 et 31. Je suis convaincu que cela satisferait votre exigence de 80%. P>
regex pour des années: [0-9] {4} - Vous devrez vous convertir en un numéro et voir si elle est dans la plage des années que vous envisagez de valider. P>
regex pendant des mois: janvier | janvier | février | février ... etc. pour chaque mois p>
regex pendant des jours du mois: [0-9] {1,2} - Vous auriez besoin de convertir en un numéro et de voir s'il est 1-31 p>
J'extruit actuellement l'année en utilisant une simple regex => / \ b ((19 | 20) \ d \ d) \ B / (seulement voulait se concentrer sur des années commençant par 19 et 20 pour limiter les faux positifs); L'étape suivante consiste à rechercher des mois, mais il n'a toujours pas trouvé de moyen de faire face à une date multiple dans la même phrase.
Je dessine une ébauche sur la façon de trouver quoi de l'alimenter, mais Cette bibliothèque analysera une large gamme de dates et pourrait être utilisée comme fonction "Est-ce une date réelle". (Divulgation complète, je suis l'auteur de cette lib) p>
On dirait que la bibliothèque vous oblige à envoyer dans les conditions de date réelle. Je cherche quelque chose qui vous permet de nourrir des phrases informatiques et de l'extraire des entités de date / heure.
Si les expressions temporelles cible de vos données ne sont que sous forme limitée, utilisez une expression régulière et une approche itérative pour affiner votre système P> LI>
Sinon, utilisez Stanford NLP Toolkit, Sutime , qui pourrait être un sur-tuer mais respecte définitivement vos demandes p> li> ol>