stringtranslate.com

Desambiguación de los límites de la oración

La desambiguación de límites de oraciones ( SBD ), también conocida como ruptura de oraciones , detección de límites de oraciones y segmentación de oraciones , es el problema en el procesamiento del lenguaje natural de decidir dónde comienzan y terminan las oraciones . Las herramientas de procesamiento del lenguaje natural a menudo requieren que su entrada se divida en oraciones; sin embargo, la identificación de los límites de las oraciones puede resultar desafiante debido a la posible ambigüedad de los signos de puntuación . En inglés escrito , un punto puede indicar el final de una oración, o puede denotar una abreviatura , un punto decimal , una elipsis o una dirección de correo electrónico, entre otras posibilidades. Alrededor del 47% de los puntos del corpus de The Wall Street Journal denotan abreviaturas. [1] Los signos de interrogación y exclamación pueden ser igualmente ambiguos debido a su uso en emoticonos , códigos informáticos y jerga .

Algunos idiomas, incluidos el japonés y el chino, tienen marcadores de final de oración inequívocos.

Estrategias

El enfoque estándar ' vainilla ' para localizar el final de una oración: [ se necesita aclaración ]

(a) Si es un punto, finaliza una frase.
(b) Si el token anterior está en la lista de abreviaturas compilada a mano , entonces no termina una oración.
(c) Si la siguiente ficha está en mayúscula, termina una oración.

Esta estrategia consigue que alrededor del 95% de las frases sean correctas. [2] Cosas como nombres abreviados, por ejemplo, " DH Lawrence " (con espacios en blanco entre las palabras individuales que forman el nombre completo), ortografías ortográficas idiosincrásicas utilizadas con fines estilísticos (a menudo refiriéndose a un solo concepto, por ejemplo, el título de un producto de entretenimiento como " .hack//SIGN ") y el uso de puntuación no estándar (o uso no estándar de puntuación) en un texto a menudo se encuentran dentro del 5% restante.

Otro enfoque consiste en aprender automáticamente un conjunto de reglas a partir de un conjunto de documentos en los que las frases están marcadas previamente. Las soluciones se han basado en un modelo de máxima entropía . [3] La arquitectura SATZ [4] utiliza una red neuronal para eliminar la ambigüedad de los límites de las oraciones y logra una precisión del 98,5%.

Software

Ejemplos de uso de expresiones regulares compatibles con Perl (" PCRE ")
  • ((?<=[a-z0-9][.?!])|(?<=[a-z0-9][.?!]\"))(\s|\r\n)(?=\"?[A-Z])
  • $sentences = preg_split("/(?<!\..)([\?\!\.]+)\s(?!.\.)/", $text, -1, PREG_SPLIT_DELIM_CAPTURE);(para PHP )
Uso en línea, bibliotecas y API
  • detector_enviado – Java [5]
  • Oración Lingua-EN – perl [6]
  • Sentencia.pm – perl [7]
  • SATZ – Un sistema adaptativo de segmentación de oraciones – por David D. Palmer – C [8]
Kits de herramientas que incluyen detección de oraciones

Ver también

Referencias

  1. ^ E. Stamatatos; N. Fakotakis y G. Kokkinakis. "1 Extracción automática de reglas para la desambiguación de los límites de las oraciones". Universidad de Patrás . Consultado el 3 de enero de 2009 .
  2. ^ O'Neil, John. "Hacer cosas con palabras, segunda parte: detección de límites de oraciones" . Consultado el 3 de enero de 2009 .
  3. ^ Reynar, JC; Ratnaparkhi, A. "Un enfoque de máxima entropía para identificar los límites de las oraciones" (PDF) . Consultado el 3 de enero de 2009 .
  4. ^ "SATZ: un detector de límites de oraciones adaptativo". Archivado desde el original el 22 de septiembre de 2007.
  5. ^ [1]
  6. ^ "Lingua-EN-Sentence-0.25 - Módulo para dividir texto en oraciones. - metacpan.org". metacpan.org .
  7. ^ "Texto::Sentencia - módulo para dividir texto en oraciones - metacpan.org". metacpan.org .
  8. ^ http://elib.cs.berkeley.edu/src/satz/
  9. ^ "Apache OpenNLP". opennlp.apache.org .
  10. ^ [2]
  11. ^ "NLTK :: Kit de herramientas de lenguaje natural". www.nltk.org .
  12. ^ "Software: grupo de procesamiento del lenguaje natural de Stanford". nlp.stanford.edu .
  13. ^ "Google Code Archive: almacenamiento a largo plazo para el alojamiento de proyectos de Google Code". código.google.com .
  14. ^ "CogCompNLP". 2 de enero de 2024 – vía GitHub.

enlaces externos