the stanford parser online natural language corenlp nlp stanford-nlp named-entity-recognition named-entity-extraction

nlp - natural - stanford parser online



¿Cómo pueden las mediciones de captura de reconocimiento de entidad nombradas por Stanford CoreNLP, como 5 pulgadas, 5 ", 5 pulgadas, 5 pulgadas (2)

No creo que exista un sistema basado en reglas para esta tarea en particular. Sin embargo, no debería ser difícil de hacer con TokensregexNER. Por ejemplo, un mapeo como:

[{ner:NUMBER}]+ /(k|m|g|t)b/ memory? MEMORY [{ner:NUMBER}]+ /"|''''|in(ches)?/ LENGTH ...

También podría intentar usar TokensRegex de vanilla y luego extraer el valor relevante con un grupo de captura:

(?$group_name [{ner:NUMBER}]+) /(k|m|g|t)b/ memory?

Estoy buscando capturar mediciones usando Stanford CoreNLP . (Si puede sugerir un extractor diferente, también está bien).

Por ejemplo, quiero encontrar 15 kg , 15 kg , 15 kg , 15 kg , 15 lb , 15 lb , etc. Pero entre las reglas de extracción de CoreNLP, no veo ninguna para las mediciones.

Por supuesto, puedo hacer esto con expresiones regulares puras, pero los toolkits pueden ejecutarse más rápidamente, y ofrecen la oportunidad de dividir a un nivel superior, por ejemplo, para tratar gb y gigabytes juntos, y la memoria RAM como bloques de construcción, incluso sin completar análisis sintáctico, ya que construyen unidades más grandes como 128 gb de RAM y 8 gigabytes de memoria .

Quiero un extractor para esto basado en reglas, no basado en el aprendizaje automático), pero no veo uno como parte de RegexNer ni en ningún otro lado. ¿Cómo hago esto?

IBM Named Entity Extraction puede hacer esto. Las expresiones regulares se ejecutan de manera eficiente en lugar de pasar el texto a través de cada una. Y las expresiones regulares se agrupan para expresar entidades significativas, como por ejemplo una que une todas las unidades de medida en un solo concepto.


Puede construir sus propios datos de entrenamiento y etiquetar las medidas requeridas en consecuencia.

Por ejemplo, si tienes una oración como Jack weighs about 50 kgs

Entonces el modelo clasificará su entrada como:

Jack, PERSONA
pesa, O
sobre, O
50, MES
kgs, MES

Donde MES significa mediciones.

Recientemente, he creado datos de capacitación para el Stanford NER tagger para mi problema personalizado y he creado un modelo para él.

Creo que para Stanford CoreNLP NER también puedes hacer lo mismo

Este puede ser un enfoque machine learning-based lugar de un enfoque rule-based