Cómo escribir un sistema de preguntas y respuestas. Crear árboles de análisis a partir de oraciones

Nuevas tecnologías de la información

Conferencia No. 2.2. Clases básicas de sistemas de lenguaje natural. Sistemas inteligentes de preguntas y respuestas

    Nuevas tecnologías de la información (3)

1.1. Principales clases de sistemas de lenguaje natural.

        Componentes funcionales de los sistemas de lenguaje natural.

        Características comparativas de las principales clases de sistemas NL.

        1. Sistemas inteligentes de preguntas y respuestas

          1. Sistemas de recuperación de información.

            Sistemas de comunicación de bases de datos.

            Sistemas expertos

            Sistemas de resolución de problemas de diálogo.

            Almacenamiento inteligente y bibliotecas digitales

        2. Sistemas de reconocimiento de voz

          1. Sistemas para reconocer comandos hablados de forma aislada

            Sistemas para reconocer palabras clave en un flujo de habla continua

            Sistemas de reconocimiento continuo de voz.

            Enfoque de análisis por síntesis

            Sistemas de lectura de labios

          Sistemas de procesamiento de textos conectados

          1. Sistemas de resumen de textos

            Sistemas de comparación y clasificación de textos.

            Sistemas de agrupamiento de texto

          Sistemas de síntesis

          1. Sistemas de síntesis de voz.

            Sistemas de síntesis de vídeo basados ​​en texto.

          Sistemas de traducción automática. Sistemas de comprensión del habla (texto)

          1. Sistemas de traducción de frases

            Sistemas de traducción contextual

            Sistemas de comprensión del habla (texto)

          Ontologías y tesauros

          Bases de datos de voz y texto.

          Componentes de sistemas inteligentes.

        Características comparativas de los sistemas de lenguaje natural.

        Sistemas inteligentes de preguntas y respuestas

Actualmente, el producto más popular perteneciente a la categoría de sistemas inteligentes de respuesta a preguntas son (57) sistemas de recuperación de información.

2.2.1.1. Sistemas de recuperación de información.

Los sistemas de recuperación de información más conocidos, GOOGLE, Yandex, Rambler, tienen aproximadamente las mismas capacidades y funcionalidades. Lo único (58) diferencia del sistemaGOOGLEdel resto es de naturaleza bastante técnica: este sistema se implementa como un sistema distribuido en paralelo utilizando una gran cantidad de procesadores con memoria producida internamente. Quizás fue esta diferencia la que jugó un papel decisivo en la indudable superioridad de este sistema sobre todos los demás, aunque tenían más funciones intelectuales. (59) El procesamiento del lenguaje natural en este y otros sistemas de recuperación de información no juega un papel muy importante, pero el volumen de su uso en los sistemas de comunicación hombre-máquina es muy grande.

Arroz. 2.2. Un sistema típico de recuperación de información.

(60) Las funciones principales de un sistema de recuperación de información se reducen a analizar fuentes, indexar textos extraídos de fuentes, procesar una solicitud de usuario, comparar textos de bases de datos indexados con una solicitud de usuario y producir resultados. Aparecido recientemente en el sistema GOOGLE. entrada de voz, que le permite ingresar una solicitud de volumen limitado en el sistema mediante voz. Otra función utilizada en los sistemas de recuperación de información es Función de representar la estructura del modelo mundial del sistema, que es un medio para navegar a través de los recursos del sistema..

Por lo tanto, un sistema de recuperación de información estándar (61) contiene siete componentes principales (ver Fig. 2.2): un bloque de entrada de información, un bloque de análisis, un bloque de indexación de fuentes, un bloque de procesamiento de solicitudes de usuario, un bloque de comparación de textos fuente con un usuario. solicitud presentada en lenguaje natural, un bloque para generar resultados y un bloque para estructurar áreas temáticas y navegación.

La tarea principal de implementar la entrada es presentar el conjunto original de textos y la solicitud del usuario en una forma conveniente para la computadora. El caso es que debido al gran volumen de información procesada por los sistemas de recuperación de información (62) Los textos de los documentos procesados ​​normalmente no se almacenan en el sistema..Sólo se almacenan sus representaciones.. Los textos se toman de los repositorios y se procesan de vez en cuando (normalmente de forma cíclica).

(63) Tal representación del texto podría ser, por ejemplo, una lista de palabras clave extraídas del texto (representadas por vector-espacial, o norte-modelos gramaticales), pero también puede haber una red de co-ocurrencia de palabras en fragmentos de texto.

Idea principal (64) modelo espacial vectorial simple: el texto es descrito por un vector léxico en el espacio euclidiano, cada componente del vector corresponde a algún objeto contenido en el texto(palabra, frase, nombres de empresas, cargos, nombres, etc.), que se denomina término. A cada Al término utilizado en el texto se le asigna su peso (importancia), determinado sobre la base de información estadística sobre su aparición en un texto separado. La dimensión vectorial es el número de términos que aparecen en los textos..

(65) En el modelo de poligrama, el texto se representa como un vector, donde los elementos del vector son todas combinaciones de caracteres de longitud. norte del alfabetoMETRO (para idioma ruso METRO = 33 ). Cada elemento del vector está asociado con la frecuencia de aparición del correspondientenorte -gramos en el texto. La dimensión vectorial para texto arbitrario es estrictamente fija y asciende a 33 3 = 35937 elementos. Sin embargo, como muestra la práctica, en textos reales no se implementan más del 25-30 por ciento de los n-gramas del número total permitido, es decir, para el idioma ruso no hay más de 7000.

(66) Red de co-ocurrencia de palabras en fragmentos de texto.. El texto está representado por una variedad de conceptos en sus relaciones. Tanto los conceptos como las conexiones se valoran por su peso.

(67) La consulta del usuario, presentada en lenguaje natural, se procesa de manera similar al procesamiento de información cuando se indexan textos fuente, con el fin de simplificar la comparación de estos textos en lenguaje natural. De hecho, en la etapa de comparación se implementan estrategias de búsqueda.

Por tanto, además de los métodos de representación interna de texto, el método de clasificación (comparación) de textos juega un papel importante en los sistemas de recuperación de información. (68) Actualmente, se utilizan en la práctica los siguientes tipos de clasificadores::

        (69) Clasificadores estadísticos basado en métodos probabilísticos. El más famoso de este grupo es la familia de clasificadores bayesianos. Su característica común es procedimiento de clasificación basado en la fórmula de Bayes para la probabilidad condicional.

El método clásico de clasificación de textos hace suposiciones muy sólidas sobre la independencia de los eventos involucrados (la aparición de palabras en los documentos), pero la práctica demuestra que el ingenuo clasificador de Bayes resulta muy eficaz.

2. (70) Clasificadores basados ​​en funciones de similitud. Lo más característico de estos clasificadores es el uso de vectores léxicos del modelo término-documento, que también se utilizan en clasificadores neuronales. Como Las medidas de similitud suelen tomar el coseno del ángulo entre los vectores, calculado a través del producto escalar..

A la luz de lo anterior (72) Las siguientes estrategias se utilizan en los sistemas de recuperación de información..

1. (73) Basado en palabras clave. Las palabras clave suelen contar con características de peso que determinan el peso de la palabra en el texto. La característica numérica se basa en la frecuencia de aparición de palabras en el texto. Sin embargo, el peso semántico de una palabra difiere de la frecuencia con la que aparece en el texto.

2. Muy importante (74) Información sobreel orden de las palabras clave en fragmentos de texto. Para aumentar la eficiencia de la búsqueda en este caso, se utilizan n-gramas de conceptos clave en lugar de conceptos clave.

3. Al realizar búsquedas, también se utiliza la frecuencia de coexistencia de palabras clave en fragmentos de texto. Estructura interna del texto (75) en términos de palabras clave en sus relaciones: un retrato semántico del texto– es la base para la representación de texto en sistemas de recuperación de información. El retrato semántico del texto nos permite identificar estructura lógica texto (y la estructura lógica de todo el corpus de texto), que mejoran la calidad de la búsqueda y la aceleran.

4. Recientemente, a la hora de realizar búsquedas, empezaron a utilizar el llamado (76) comparación difusa.

Para mejorar los resultados de la búsqueda, el usuario puede cambiar la consulta. Para eso está la retroalimentación. (77) El procesamiento de información en un sistema de recuperación de información incluye la estructuración de la información con fines de navegación posterior, incluida su agrupación.

Menos (76) Al generar resultados, debe comprender los enlaces al texto fuente (textos) que el sistema proporciona al usuario.. Podría ser un sistema de citas, números de documentos que almacenan textos analizados.

(77) La búsqueda de la información necesaria en la red mediante un motor de búsqueda suele realizarse de la siguiente manera. El usuario ingresa uno o más términos de búsqueda en el cuadro de diálogo del motor de búsqueda. El motor de búsqueda devuelve resultados de búsqueda que coinciden con estos términos de búsqueda. Por ejemplo, un motor de búsqueda puede devolver una lista de direcciones web (URL) que apuntan a documentos que contienen una o más palabras de consulta de búsqueda.

Sistemas de respuesta a preguntas

Anatoli Nikitin, Pavel Raikov

1. Introducción. 2

1.1 Problemas... 3

2. Sistema de control de calidad Inicio 4

2.1 Expresiones ternarias. 5

2.2 Reglas S. 6

2.3 Léxico. 6

2.6 Anotaciones en lenguaje natural. 8

2.7 Conclusión. 9

3. Técnicas estadísticas para el análisis del lenguaje natural. 10

3.1 Introducción. 10

3.2 Determinar las partes del discurso de las palabras en oraciones. once

3.3 Crear árboles de análisis a partir de oraciones. 14

3.4 Creando tus propias reglas de análisis basadas en PCFG. Gramáticas de Treebank. “Gramáticas de Markov” 16

3.5 Analizadores léxicos.. 16

1. Introducción

Debido al rápido desarrollo tecnologías de la información y el continuo aumento del volumen de información disponible en Internet global, las cuestiones de la búsqueda efectiva y el acceso a los datos son cada vez más relevantes. A menudo, una búsqueda estándar utilizando palabras clave no da el resultado deseado, debido a que este enfoque no tiene en cuenta las relaciones lingüísticas y semánticas entre las palabras de consulta. Por lo tanto, las tecnologías de procesamiento del lenguaje natural (PLN) y los sistemas de respuesta a preguntas (QAS) basados ​​en ellas se están desarrollando activamente.

El sistema de preguntas y respuestas es Sistema de informacion, que es un híbrido de búsqueda, referencia y sistemas inteligentes que utiliza una interfaz de lenguaje natural. La entrada a dicho sistema es una solicitud formulada en lenguaje natural, después de lo cual se procesa utilizando métodos de PNL y se genera una respuesta en lenguaje natural. Como enfoque básico a la tarea de encontrar una respuesta a una pregunta, se suele utilizar el siguiente esquema: primero, el sistema de una forma u otra (por ejemplo, buscando por palabras clave) selecciona documentos que contienen información relacionada con la pregunta planteada, luego los filtra, resaltando fragmentos de texto individuales que potencialmente contienen la respuesta, después de lo cual el módulo generador sintetiza la respuesta a la pregunta a partir de los fragmentos seleccionados.

Como fuente de información, el sistema de control de calidad utiliza el almacenamiento local, la red global o ambos al mismo tiempo. A pesar de las ventajas obvias de utilizar Internet, como el acceso a enormes y cada vez mayores recursos de información, existe un problema importante asociado con este enfoque: la información en Internet no está estructurada y para su correcta recuperación es necesario crear los llamados "envoltorios", es decir, subrutinas que brindan acceso unificado a diversos recursos de información.

Los sistemas de control de calidad modernos se dividen en generales (dominio abierto) y especializados (dominio cerrado). Los sistemas generales, es decir, los sistemas centrados en procesar preguntas arbitrarias, tienen una arquitectura bastante compleja, pero, sin embargo, en la práctica dan resultados bastante débiles y baja precisión de las respuestas. Pero, por regla general, para tales sistemas el grado de cobertura del conocimiento es más importante que la precisión de las respuestas. En los sistemas especializados que responden preguntas relacionadas con un área temática específica, por el contrario, la precisión de las respuestas es a menudo un indicador crítico (es mejor no responder la pregunta en absoluto que dar la respuesta incorrecta).

1.1 Problemas

En 2002, un grupo de investigadores redactó un plan de investigación en el campo de los sistemas de preguntas y respuestas. Se propuso considerar las siguientes cuestiones:

tipos de preguntas. Diferentes preguntas requieren diferentes métodos para encontrar respuestas. Por tanto, es necesario crear o mejorar listados metodológicos de los tipos de preguntas posibles. Preguntas de procesamiento. La misma información se puede solicitar de diferentes formas. Es necesario crear métodos eficaces para comprender y procesar la semántica (significado) de una oración. Es importante que el programa reconozca preguntas que tengan un significado equivalente, independientemente del estilo, las palabras, sintáctico Relaciones y modismos. Me gustaría que el sistema de control de calidad divida las preguntas complejas en varias simples e interprete correctamente las frases contextuales, tal vez aclarándolas con el usuario durante el diálogo. Preguntas contextuales. Las preguntas se formulan en un contexto específico. El contexto puede aclarar una consulta, resolver ambigüedades o seguir el pensamiento del usuario a través de una serie de preguntas. Fuentes de conocimiento para el sistema de calidad. Antes de responder a la pregunta, sería una buena idea informarse sobre las bases de datos de texto disponibles. No importa qué métodos de procesamiento de texto se utilicen, no encontraremos la respuesta correcta si no está en las bases de datos. Destacando las respuestas. La ejecución correcta de este procedimiento depende de la complejidad de la pregunta, su tipo, contexto, calidad de los textos disponibles, método de búsqueda, etc. - una gran cantidad de factores. Por tanto, el estudio de los métodos de procesamiento de textos debe abordarse con gran cautela y este problema merece una atención especial. Formulación de la respuesta. La respuesta debe ser lo más natural posible. En algunos casos, una simple descargar del texto. Por ejemplo, si se requiere un nombre (nombre de la persona, nombre del instrumento, enfermedad), cantidad (tipo de cambio, longitud, tamaño) o fecha (“¿Cuándo nació Iván el Terrible?”), una respuesta directa es suficiente. Pero a veces hay que lidiar con consultas complejas y aquí se necesitan algoritmos especiales. fusionar respuestas de diferentes documentos. Respuestas a preguntas en tiempo real. Necesitamos crear un sistema que pueda encontrar respuestas en los repositorios en unos pocos segundos, independientemente de la complejidad y ambigüedad de la pregunta, el tamaño y la inmensidad de la base de documentos. Consultas multilingües. Desarrollo de sistemas de trabajo y búsqueda en otros idiomas (incluida la traducción automática). Interactividad. A menudo, la información que ofrece un sistema de control de calidad como respuesta es incompleta. Es posible que el sistema haya identificado incorrectamente el tipo de pregunta o lo haya "entendido" incorrectamente. En este caso, es posible que el usuario desee no sólo reformular su solicitud, sino también “explicarle” al programa mediante el diálogo. Mecanismo de razonamiento (inferencia). A algunos usuarios les gustaría recibir una respuesta que vaya más allá de los textos disponibles. Para hacer esto, es necesario agregar al sistema de control de calidad conocimientos comunes a la mayoría de las áreas, así como medios para generar automáticamente nuevos conocimientos. Perfiles de usuario de sistemas de calidad. La información sobre el usuario, como su área de interés, su forma de hablar y razonar y los hechos predeterminados, podría mejorar significativamente el rendimiento del sistema.

2. Inicio del sistema de control de calidad

El sistema Start QA es un ejemplo de un sistema general de respuesta a preguntas que responde a consultas arbitrarias formuladas en idioma en Inglés. Se está desarrollando en el Laboratorio de Inteligencia Artificial del MIT bajo la dirección de Boris Katz. Este sistema apareció por primera vez en Internet en 1993 y ahora está disponible en http://start. vela. mit. educación. Al buscar una respuesta a una pregunta, el sistema utiliza tanto una base de conocimientos local como una serie de recursos de información en Internet.

El sistema puede responder varios tipos de preguntas, que se pueden dividir en las siguientes categorías:

Preguntas sobre definiciones (¿Qué es un fractal?)

Preguntas objetivas (¿Quién inventó el telégrafo?)

Preguntas sobre relaciones (¿Qué país es más grande, Rusia o Estados Unidos?)

Consultas de lista (Muéstrame algunos poemas de Alexander Pushkin)

El núcleo del sistema es la Base de Conocimiento. Hay 2 módulos: Parser y Generator, que pueden, respectivamente, convertir textos en inglés a una forma especial (expresiones T), en la que se almacenan en la base de conocimientos y, a la inversa, generar textos en inglés a partir de un conjunto de T. -expresiones.

2.1 expresiones ternarias

Una expresión ternaria (expresión T) es una expresión de la forma<объект отношение субъект>. En este caso, otras expresiones T pueden actuar como objetos/sujetos de algunas expresiones T. Adjetivos, posesivos pronombres, preposiciones y otras partes de una oración se utilizan para crear expresiones T adicionales. Otros atributos de la propuesta ( artículos, tiempos verbales, adverbios, verbos auxiliares, signos de puntuación, etc.) se almacenan en una estructura histórica especial asociada con la expresión T.

Por ejemplo, una frase FacturasorprendidoHillaryconsurespuesta" después de pasar por el analizador, se convertirá en 2 expresiones ternarias: << FacturasorpresaHillary>conrespuesta> Y < respuestarelacionado-aFactura>. La información sobre el tiempo del verbo sorpresa se almacenará en la estructura Historial.

Dejemos que al sistema, en cuya base de conocimientos hay 2 expresiones T descritas anteriormente, se le haga la pregunta: A quienhizoFacturasorpresaconsu¿respuesta?" La emisión se procesará en el siguiente orden:

1. El Analizador de preguntas convierte la pregunta a un tipo de plantilla, invirtiendo la inversión que se utiliza al formular preguntas en inglés: Facturasorprendidoa quien consu¿respuesta?".

2. El analizador traduce la oración en 2 expresiones T: <quien> con respuesta> Y

3. La plantilla resultante se compara con las expresiones T ubicadas en la base de conocimientos. Coincidencia encontrada cuando A quien = Hillary

4. El generador convierte expresiones T. <> con respuesta> Y en una oración y la devuelve como respuesta.

La búsqueda de respuestas a preguntas como “¿Bill sorprendió con su respuesta?” se lleva a cabo de manera similar. Sólo en este caso se buscará una coincidencia exacta con expresiones de la Base de Datos y no una búsqueda mediante plantilla.

Por tanto, las expresiones T retienen información sobre las relaciones semánticas entre palabras hasta cierto punto. En 2002, se llevaron a cabo una serie de experimentos para evaluar la eficacia de organizar las búsquedas basadas en expresiones T en comparación con las búsquedas por palabras clave. Después de que Parser procesó la Enciclopedia con descripciones de varias especies animales, se le hizo la pregunta al sistema: "¿Qué comen las ranas?" (“¿Qué comen las ranas?”). El método de búsqueda descrito anteriormente arrojó 6 respuestas, 3 de las cuales fueron correctas. Una búsqueda basada en palabras clave de los documentos fuente arrojó 33 resultados, incluidas las mismas 3 respuestas correctas, pero además hubo coincidencias de palabras aleatorias. ranas Y comer(por ejemplo, respuestas a la pregunta "¿Quién come ranas?"). Así, la búsqueda basada en expresiones T produjo 10 veces menos respuestas incorrectas.

2.2 reglas S

Además de las expresiones T, la base de conocimientos también almacena una lista de reglas S. Estas son las reglas para convertir expresiones T en formas equivalentes. El caso es que una misma idea en lenguaje natural se puede expresar de diferentes formas. Por ejemplo, oraciones "La respuesta de Bill sorprendió a Hillary" Y “Bill sorprendió a Hillary con su respuesta” son equivalentes. Pero las expresiones T obtenidas al pasar estas oraciones por el analizador son diferentes: , Y <con respuesta>, . Por lo tanto, se introduce la regla S. Sorpresa :

<<n1 sorpresa n2> con n3>, <n3 relacionado con n1> = <n3 sorpresa n2>, <n3 relacionado con n1>,

DóndeniSustantivos

Con la ayuda de tales reglas es posible describir la llamada lingüística. variaciones, es decir, transformaciones equivalentes de construcciones del lenguaje:

Léxico (sinónimos)

Morfológico (palabras con la misma raíz)

Sintáctico (inversiones, voz activa/pasiva,...)

Además, las reglas S pueden describir implicaciones lógicas. Por ejemplo:

<<A vender B >a C > = <<C comprar B >desde A>

2.3 Léxico

Muchas reglas S se aplican a grupos de palabras. Por ejemplo, la regla S descrita anteriormente Sorpresa se realiza no sólo para el verbo sorpresa, sino también para cualquier verbo del llamado grupo de verbos emocionales-reaccionarios. Para no producir reglas S, se creó un Léxico, que almacena todas las palabras del idioma inglés. Cada palabra está asociada a una lista de grupos a los que pertenece. Ahora regla S Sorpresa se puede hacer aún más abstracto:

<<n1v n2> con n3>, <n3 relacionado con n1> = <n3 vn2>, <n3 relacionado con n1>,

Dónde niSustantivos, vverbos-de-reacción-emocional

2.4 WordNet

Excepto Léxico , que almacena palabras agrupadas según diversas características sintácticas y semánticas, el sistema Start utiliza otra poderosa herramienta para procesar la semántica de las palabras: un diccionario. WordNet . La unidad básica de este diccionario es el concepto. sintetizador. Synset es un cierto significado, significado. Diferentes palabras pueden tener el mismo significado (sinónimos) y, por tanto, pertenecer a un conjunto sintético y, a la inversa, una palabra puede tener varios significados, es decir, pertenecer a varios conjuntos sintéticos. Además, el diccionario WordNet introduce relaciones entre conjuntos sintéticos. Por ejemplo, existen las siguientes relaciones entre sustantivos:

- Hiperónimos : Yhiperónimo X, Si X- variedad Y(fruta– hiperónimo durazno)

- Hipónimos : Yhipónimo X, Si Y- variedad X(durazno– hipónimo fruta)

- Igual en rango : X Y Y igual en rango, si tienen un hiperónimo común ( durazno Y manzana– igual en rango)

- Golonims : Yholonimo X, Si X- Parte Y(durazno– holonim huesos)

- Merónimos : Ymerónimo X, Si Y– parte X ( cáscara– merónimo durazno)

Así, el diccionario WordNet describe las relaciones entre significados de la forma general-particular y parte.

WordNet se utiliza para buscar coincidencias en la base de conocimientos. Por ejemplo, si la expresión T se almacena en la base < pájaropodervolar> y el diccionario WordNet define que canariohipónimo pájaro. Que se haga la pregunta Podercanario¿volar?. El analizador convierte esta pregunta en una expresión. < canariopodervolar>. Si no encuentra una coincidencia en la base de datos, Start utilizará WordNet e intentará encontrar una respuesta a una pregunta más general: Poderpájaro¿volar? Esta pregunta será respondida Sí, de lo cual, considerando que canario- variedad pájaro El inicio concluirá que canariopodervolar".

2.5 Omnibase

Para encontrar respuestas a preguntas objetivas como "¿Cuándo murió Beethoven?" o "¿Cuál es la capital de Inglaterra?" Inicio utiliza la base. omnibase. Esta base de datos utiliza un modelo de almacenamiento de información diferente: “objeto-propiedad-valor”. Por ejemplo información “Federico Fellini es director de La Strada” se guardará en la base de datos omnibase como La Strada – director – Federico Fellini . Aquí LaStrada- un objeto, director– propiedad, y federicoFellini– el valor de esta propiedad. Con este modelo de datos, la búsqueda de la información necesaria se realiza con bastante rapidez y eficacia.

Para buscar información omnibase utiliza una gran cantidad de fuentes de datos externas de Internet: Wikipedia, Google, Internet Movie Database, etc. En este caso, los datos se extraen de una fuente externa a través del llamado contenedor, un módulo que proporciona acceso a una base de datos externa a través de consultas del tipo “objeto” -propiedad". Para determinar la fuente en la que se almacena la información sobre un objeto en particular, omnibase usos Catálogo de Objetos, en el que cada objeto está asociado a una fuente de datos. Por ejemplo, un objeto LaStrada corresponde a la base imdb-película(Base de datos de películas de Internet). Una vez determinada la base sobre la que buscar, omnibase envía una solicitud al contenedor de esta base de datos: ( LaStrada, director) y recibe una respuesta FedericoFellini.

2.6 Anotaciones en lenguaje natural

El problema del análisis automático del habla natural es muy complejo. Por lo tanto, los desarrolladores de sistemas de respuesta a preguntas proponen resolver este problema desde dos lados: por un lado, mejorar los métodos de procesamiento del lenguaje natural enseñando a la computadora a "comprender" el idioma, pero, por otro lado, tratando de hacer el texto. más comprensible para las computadoras. Es decir, se propone compilar anotaciones en lenguajes naturales para recursos de información.

En este caso, es posible organizar eficazmente una búsqueda no solo de texto, sino también de información multimedia diversa: imágenes, vídeos y grabaciones de audio. En el sistema Inicio, las anotaciones se utilizan de la siguiente manera: al agregar información a la base de conocimientos, el analizador procesa solo su anotación y adjunta un enlace al recurso fuente a las expresiones T generadas.

La implementación de anotaciones se produce a través de descripciones RDF (Resource Description Framework), que se adjuntan a cada recurso. El lenguaje RDF se basa en el formato XML. La descripción de este lenguaje es bastante extensa, por lo que sólo nos limitaremos a un ejemplo de descripción RDF de una determinada base de datos en la que se almacena información geográfica. A esta base se adjuntan anotaciones parametrizadas. " Muchosgenteviviren ? s " Y " poblaciónde ? s " y la plantilla de respuesta: "La poblacion de ?s es ?o" , Dónde ? oh denota acceder a la base y recuperar una propiedad población en el objeto ? s. Al procesar dicha anotación, el analizador guardará 2 plantillas de preguntas y un enlace a la plantilla de respuestas. Si, al ejecutar una solicitud de usuario, Start encuentra una coincidencia en la base de conocimientos con una plantilla de pregunta, se comunicará con el recurso externo del cual se tomó la anotación y se generará una respuesta adecuada.

Además, utilizando anotaciones parametrizadas, puede describir el patrón de búsqueda de una respuesta a una clase completa de preguntas. Por ejemplo, preguntas como "¿Cuál es el país de África con la superficie más grande?" o "¿Qué país de Europa tiene la tasa de mortalidad infantil más baja?" caen bajo una plantilla: “¿En qué país $región tiene el más grande $atributo " Además, la anotación describe un algoritmo general para encontrar respuestas a este tipo de preguntas.

Algunas preguntas son una composición de varias preguntas. Por ejemplo, para responder a la pregunta "¿Es la costa de Canadá más larga que la costa de Rusia?" Es necesario, en primer lugar, calcular la longitud de las costas de Canadá y Rusia y, en segundo lugar, comparar los valores obtenidos y generar una respuesta. Por tanto, para este tipo de preguntas, se puede describir un plan para encontrar una respuesta, en el que se harán preguntas auxiliares.

2.7 Conclusión

El sistema de preguntas y respuestas de Start utiliza diferenciado enfoque para encontrar respuestas según el tipo de pregunta. Esto da un resultado relativamente bueno para una gran cantidad de preguntas generales.

La base de conocimientos y las expresiones ternarias utilizadas como base son un modelo exitoso para presentar información que, por un lado, preserva hasta cierto punto las conexiones semánticas entre palabras y, por otro lado, es lo suficientemente simple para realizar búsquedas efectivas. y editar la base de datos.

Mediante anotaciones, puede organizar el acceso programático a los recursos de información de Internet utilizando una interfaz universal de lenguaje natural. Y el uso de estructuras adicionales, como Omnibase, permite aumentar la eficiencia a la hora de encontrar respuestas a algunos tipos específicos de preguntas.

Finalmente, varios diccionarios y módulos lingüísticos pueden, hasta cierto punto, modelar las características semánticas del lenguaje natural y manejar consultas más complejas. La tarea de compilar dichos diccionarios, así como otros problemas asociados con el desarrollo de sistemas de preguntas y respuestas, requiere inevitablemente la participación de especialistas no sólo en el campo de la informática, sino también de lingüistas y filólogos.

3. Técnicas estadísticas para el análisis del lenguaje natural.

3.1 Introducción

Consideremos el proceso de análisis de propuestas. Nuestra tarea será compilar un árbol de análisis para cada oración. Debido a la relativa complejidad idioma ruso y la falta de literatura para él y trabajos científicos sobre este tema, se considerarán más ejemplos del idioma inglés. A continuación se muestra un ejemplo de dicho análisis.

Fig. 1 Árbol de análisis de la frase “El perro comió”

En la Fig. 1, los vértices (det, sustantivo, np, etc.) representan combinaciones lógicas de partes de una oración. Por ejemplo, np – frase nominal significa que este nodo del árbol es responsable de la parte de la oración que tiene el significado de un sustantivo. Tenga en cuenta que para cualquier frase, incluso una tan simple, puede haber varios árboles de análisis, que se diferenciarán en que darán diferentes significados a la misma frase. Por ejemplo, puedes decir: “Comí carne con los perros”. De tal oración puedes obtener 2 árboles de análisis completamente diferentes. En un caso resulta que comí carne con perros, y en el otro, que comí algún tipo de carne diluida con entrañas de perro. Lo más sorprendente es que ejemplos tan “maravillosos” se encuentran en todas partes en literatura inglesa, por lo que tendrás que contentarte con ellos. Para evitar tales absurdos, conviene utilizar un analizador independiente que, en la medida de sus posibilidades, ayudará a nuestro analizador. En este trabajo, construiremos un analizador que a su vez tendrá en cuenta las conexiones sintácticas al construir un árbol de análisis.

3.2 Determinación de partes del discurso para palabras en oraciones.

En inglés, la tarea de esta parte suena como etiquetado de parte del discurso y es una de las muchas subtareas de una sección de la ciencia moderna como el PNL (procesamiento del lenguaje natural). En general, la PNL tiene como objetivo permitir que una computadora comprenda textos en lenguaje natural. Estos problemas se encuentran ahora ampliamente y sus soluciones efectivas tienen una gran demanda. Por supuesto, sería fantástico que el programa, después de "leer" un libro de texto de física, respondiera de forma independiente preguntas como: "¿Cuál es el motivo del calentamiento del semiconductor en tal o cual experimento?" Aquí se ve inmediatamente otra dificultad: incluso después de leer el libro de texto, el programa debe comprender las preguntas del usuario y, preferiblemente, ser capaz de generar sus propias preguntas (el sueño de algunos profesores perezosos).

Volvamos a la pregunta ya planteada: “¿Cómo determinar Parte del discurso por una palabra en una oración?

Antónimos" href="/text/category/antonimi/" rel="bookmark">antónimos, etc. Dado que estamos analizando un enfoque estadístico, para cada palabra consideraremos la probabilidad de que sea un sustantivo, adjetivo, etc. ... d. Podemos construir una tabla de probabilidades de este tipo sobre la base de textos de prueba que ya han sido analizados manualmente. En la Fig. 2, las partes de la oración que se determinan para las palabras usando este enfoque están resaltadas en negrita. Una de las posibles Los problemas son inmediatamente visibles: incluso "can" en la mayoría de los casos es un verbo modal, pero a veces también puede ser un sustantivo. Resulta que este método siempre considerará "can" como un verbo modal. A pesar de su simplicidad y desventajas obvias , este método muestra buenos resultados y, en promedio, reconoce que el 90% de las palabras son correctas. Formalizando los resultados obtenidos, escribiremos el producto que necesita maximizarse durante este algoritmo:

Aquí se introducen las siguientes notaciones:

    t – etiqueta (det, sustantivo, …) w – palabra en el texto (can, will...) p(t | w) – probabilidad de que la etiqueta t corresponda a la palabra w

Teniendo en cuenta las deficiencias del modelo anterior, se creó uno nuevo que tiene en cuenta que, por ejemplo, según las estadísticas, después de un adjetivo hay otro adjetivo o sustantivo. Vale la pena señalar que esta, como todas las demás estadísticas, se obtiene a partir de algún ejemplo, y no se considerará el caso en el que no existan estadísticas iniciales. A partir de esta propuesta se derivó la siguiente fórmula:

    p(w | t) – probabilidad de que la palabra w corresponda a la etiqueta t p(t1 | t2) – probabilidad de que t1 venga después de t2

Como puede verse en la fórmula propuesta, estamos intentando seleccionar etiquetas para que la palabra coincida con la etiqueta y la etiqueta coincida con la etiqueta anterior. Este método muestra mejores resultados que el anterior, lo cual es bastante natural, por ejemplo, reconoce "can" como un sustantivo y no como un verbo modal.

Resulta que el modelo construido para calcular la probabilidad de que un conjunto de etiquetas corresponda a una oración puede interpretarse como un "modelo oculto de Markov".

Obtenemos algo así como una máquina de estados finitos. Ahora describiremos cómo conseguirlo. Los vértices son partes del discurso. El par (palabra, probabilidad) en el vértice muestra la probabilidad de que la palabra asignada a una determinada parte del discurso sea exactamente esta, por ejemplo, para el vértice “det” y la palabra “a” esta será la probabilidad de que El artículo tomado al azar del texto de prueba será "a". Las transiciones muestran la probabilidad de que a una parte del discurso le siga otra. Por ejemplo, la probabilidad de que aparezcan 2 artículos seguidos, siempre que se encuentre un artículo, será igual a 0,0016.

Nuestra tarea será encontrar un camino en dicho modelo para que el producto de los números en las aristas y en los vértices sea máximo. Existe una solución a tal problema, pero no nos detendremos en ella, ya que esta cuestión está fuera del alcance de este trabajo. Digamos simplemente que existen algoritmos que resuelven este problema en un tiempo lineal en el número de vértices. Añadamos que según la clasificación existente hemos obtenido un “tagger estadístico canónico”.

Consideremos ahora otro enfoque para definir etiquetas. Se llama esquema transformacional. Consiste en el hecho de que, cuando se trabaja en oraciones de prueba, primero se aplica un algoritmo trivial y luego el sistema considera todas las reglas de la forma: “Cambie la etiqueta X de una palabra por la etiqueta Y si la etiqueta de la palabra anterior es Z .” El número total de dichas reglas será el número de etiquetas en un cubo, que es relativamente pequeño. Por lo tanto, en cada paso intentamos aplicar dicha regla, y si después de esto aumenta el número de partes del discurso correctamente identificadas, entonces la regla se convertirá en candidata al título de mejor regla en el primer paso. A continuación, se selecciona la mejor regla y se agrega a la lista de reglas "buenas". Hacemos esto varias veces. Obtenemos N reglas que mejoran “bien” la probabilidad del sistema de etiquetas para oraciones del sistema de prueba. A continuación, al analizar una oración arbitraria, después de aplicar un algoritmo trivial, utilizamos reglas ya preparadas. De este algoritmo cabe destacar una de sus principales ventajas: la velocidad. Es igual a 11.000 palabras/seg, mientras que el algoritmo que utiliza HMM tiene 1.200 palabras/seg.

En conclusión, me gustaría agregar que hasta ahora hemos asumido la presencia de una base inicial voluminosa. Si no existe tal cosa, entonces la formación en HMM no conduce a mejoras significativas (la eficacia es del 90%). Mientras que TS (esquema transformacional) le permite llegar al 97%. Le recordamos que la eficiencia se mide como el número de etiquetas correctamente identificadas en los textos de prueba.

3.3 Crear árboles de análisis a partir de oraciones

Fig. 4 Análisis de la frase “El extraño comió donut con tenedor”.

La tarea de esta sección será construir árboles de análisis similares a los que se muestran en la Fig. 4. Notemos inmediatamente que hay una rica recopilaciónárboles ya creados para las propuestas correspondientes de la base de datos inicial. Puede obtener más información sobre este sistema visitando el sitio web. Analicemos de inmediato la cuestión de la verificación de analizadores. Simplemente les alimentamos con oraciones como entrada y verificamos las coincidencias de los árboles resultantes. Esto se puede hacer de varias formas, pero en este trabajo usaremos una de las ya propuestas en. En el espacio del árbol, introducimos dos métricas: precisión y memoria. La precisión se definirá como el número de vértices no terminales correctamente identificados dividido por su número total. La memoria será igual al número de vértices encontrados correctamente, dividido por el número de no terminales de la misma oración en la base de datos. Se afirma que si aplica el enfoque más simple para construir un árbol, obtendrá inmediatamente un 75% de eficiencia para ambas métricas. Sin embargo, los analizadores modernos pueden alcanzar una eficiencia del 87-88% (en adelante, a menos que se indique específicamente, ambas métricas se referirán a la eficiencia).

Dividamos nuestra tarea en 3 etapas principales:

    Encontrar reglas para aplicar Asignar probabilidades a las reglas Encontrar la regla más probable

Uno de los mecanismos más simples para resolver este problema son las “Gramáticas probabilísticas libres de contexto” (PCFG). Veamos un ejemplo de gramática que facilitará la comprensión de este concepto:

    sp → np vp (1.0) vp → verbo np (0.8) vp → verbo np np (0.2) np → det sustantivo (0.5) np → sustantivo (0.3) np → det sustantivo sustantivo (0.15) np → np np (0.05)

Aquí se escriben reglas para analizar los vértices correspondientes, y para cada regla existe una probabilidad de su aplicación. Así, podemos calcular la probabilidad de que el árbol “π” coincida con su oración “s”:

margin-top:0cm" type="disc"> s – oración inicial π – el árbol que obtuvimos c – pasa por los vértices internos del árbol r(c) – probabilidad de usar r para c

No daremos algoritmos exactos, solo diremos que iterar a través de todos los árboles de análisis de longitud N usando PCFG tomará N tiempo al cubo. Desafortunadamente, se puede observar que los PCFG por sí solos no producen "buenos" analizadores estadísticos, razón por la cual no se utilizan ampliamente.

3.4 Creando tus propias reglas de análisis basadas en PCFG. Gramáticas de Treebank. “Gramáticas de Markov”

Consideremos las principales tareas que deben resolverse para analizar la propuesta:

Construir su propia gramática en forma de PCFG (sería deseable que nuestra propuesta tuviera al menos una conclusión en esta gramática). Un analizador que aplicaría reglas dadas a una oración y obtendría algunos o todos los árboles de análisis posibles. Capacidad para encontrar árboles óptimos para la ecuación (1).

En la parte anterior se brindó una descripción general de los dos últimos problemas, así que detengámonos ahora.

sobre el primer punto. Primero, le ofreceremos una solución simple. Digamos que ya tenemos una colección de árboles de análisis ya preparada. Luego, procesando cada uno de estos árboles, simplemente haremos una regla a partir de cada vértice no terminal, en función de cómo se expande en un árbol en particular. Después de esto, si dicha regla ya existe, aumentamos su parámetro estadístico en 1, y si no existe, agregamos una nueva regla a nuestra gramática con este parámetro igual a 1. Después de procesar todos los árboles de prueba, Realice la normalización para que la probabilidad de aplicar cada regla sea ≤ 1. La eficiencia de dichos modelos es del 75%. Estos modelos se denominan "gramáticas de Treebank".

Ahora hablemos un poco sobre el enfoque que le permite inventar nuevas reglas sobre la marcha. Para hacer esto, basándonos en árboles de prueba, construiremos estadísticas para el siguiente valor: p(t1 | f, t2). Significa la probabilidad de que la etiqueta "t1" aparezca después de la etiqueta "t2" al expandir la forma "f". Por ejemplo, p(adj | np, det) significa la probabilidad de que al adjetivo le siga un artículo, siempre que expandamos la “frase nominal” (traducción libre de np) y encontremos el artículo. En base a esto, para la probabilidad de aplicación correcta de cualquier regla a algún vértice, podemos crear una fórmula:

3.5 analizadores léxicos

La idea principal de esta parte será cambiar la estructura del árbol para poder mejorar la eficiencia de nuestro modelo. Ahora no solo construiremos un árbol de análisis, como se presentó anteriormente, sino que además asignaremos a cada vértice una palabra que lo caracterizará mejor como una unidad léxica. Para el vértice "c", denotamos una línea como cabeza (c). Head(c) se definirá como la aplicación de una determinada función a los hijos de "c" y la regla por la cual "c" fue "abierta". En general, resulta que al construir este encabezado, tenemos en cuenta que algunas palabras aparecen frecuentemente entre sí, por lo tanto, al tener tales estadísticas, podemos mejorar la probabilidad de analizar la veracidad de algunas oraciones. Por ejemplo, en la oración “el déficit comercial de mercancías de agosto” hay 4 sustantivos seguidos, por lo tanto, si utilizamos los modelos anteriores, obtendremos una probabilidad muy baja de analizar correctamente esta oración. Pero el hecho de que "déficit" sea la parte principal de este "np" y que en los textos de prueba encontremos expresiones que contienen simultáneamente "déficit" y otras palabras nos ayudará a compilar correctamente un árbol de análisis. Ahora formalicemos lo anterior usando la fórmula:

    p(r | h) es la probabilidad de que se aplique la regla r para un nodo con una h determinada. p(h | m, t) – la probabilidad de que tal h sea hijo de un vértice con cabeza = m y etiqueta t.

Presentemos una tabla a partir de la cual la forma de la fórmula dada anteriormente debería quedar más clara.

h(c) = “déficit”

Aquí se utiliza activamente el concepto de probabilidad condicional. Es sólo que la probabilidad de que la palabra en la parte superior del árbol "c" sea "agosto" resulta ser mayor si asumimos que head(c) = "déficit". De hecho, queremos hacer nuestros casos más específicos para que reglas muy raras como “regla = np → det nombre propio sustantivo sustantivo sustantivo” puedan tener una probabilidad bastante buena, y luego podamos procesar textos muy complejos. En este caso, no nos importa que la regla que nos gustaría aplicar no se encuentre en la colección inicial de reglas.

3.6 Conclusión

El enfoque estadístico permite resolver muchos problemas de PNL y es una de las áreas bastante nuevas y de rápido desarrollo en la lingüística matemática. En este trabajo solo se consideraron conceptos y términos básicos, lo que deja al lector libertad de elección al leer estudios específicos sobre este tema. Desafortunadamente para los lectores de habla rusa, vale la pena señalar que el número de estudios y trabajos sobre este tema en Rusia es pequeño y todo el material tuvo que ser tomado de fuentes inglesas. Quizás usted sea la persona que pueda cambiar la situación y retomar las iniciativas de dos proyectos rusos. Uno de ellos no es comercial y se está desarrollando en el PM-PU de la Universidad Estatal de San Petersburgo. El otro es un producto comercial de RCO, los interesados ​​pueden leer los trabajos científicos de esta empresa en su sitio web. Todos los ejemplos e imágenes utilizados en este artículo fueron tomados de.

4. Enlaces

CLAVE. http://clef-qa. itc. eso/WordNet. http://wordnet. princeton. edu/Pen treebank. http://www. cis. upen. edu/~treebank/Inicio. http://inicio. vela. mit. educación/TREC. http://trec. nist. gov/ Eugene Charniak, “Técnicas estadísticas para el análisis del lenguaje natural” Gary C. Borchardt, “Reconstrucción causal” Boris Katz, Beth Levin “Explotación de regularidades léxicas en el diseño de sistemas de lenguaje natural” SEMLP. http:///RCO. http://www. *****/

Poco después de la llegada del procesamiento de listas en informática, se escribió el programa BASEBALL (para ilustrar cómo se podían aplicar los nuevos métodos a los sistemas de preguntas y respuestas) (Green, Wolfe, Chomsky y Loughrey, 1961; Greene, 1963). Este programa fue diseñado para responder preguntas sobre los juegos de la Liga Americana de Béisbol de 1959, de ahí su nombre. Aunque el valor social de esta aplicación del programa es cuestionable, proporciona un buen aparato para probar los principios de programación que desde entonces han encontrado un amplio uso. Los mensajes al programa se compilaron en un subconjunto simple del idioma inglés, en el que prácticamente no nos detendremos. Mucho más interesante es la estructura de datos utilizada aquí.

Los datos del programa BÉISBOL se organizaron en un sistema jerárquico. Esta estructura de datos podría representarse de manera equivalente como un árbol. El nivel más alto fue AÑO (sólo se utilizaron datos de 1959, pero el programa proporcionó opciones para varios años), seguido en orden por MES y LUGAR. Después de determinar el AÑO, MES y LUGAR, se indicaron secuencialmente el número del juego, el día y la puntuación (puntos ganados por el equipo).

En términos generales, el formato de la estructura de datos fue:

Claramente, esta forma de estructura de datos no es exclusiva del béisbol, y las rutinas de procesamiento de datos en el programa BÉISBOL se escribieron con la intención de trabajar con cualquier estructura de datos jerárquica, independientemente de la interpretación de los distintos niveles y ramas.

El funcionamiento del programa BÉISBOL se puede entender considerando dos conceptos: la ruta de datos y la lista de especificaciones.

Una ruta de datos es una secuencia de ramas que se deben seguir para obtener información sobre un juego específico.

Por ejemplo, define y de paso establece alguna información sobre este juego. Cada juego tiene una única ruta de datos asociada y sus entradas definen, como se muestra en el ejemplo, las características del juego. Para generar todas las rutas de datos posibles, puede utilizar cualquier algoritmo de búsqueda de árbol simple, ya que el árbol de datos es obviamente finito.

Una lista de especificaciones es una lista de atributos que debe tener una ruta de datos para ser una respuesta válida a una pregunta. Por ejemplo, una lista de especificaciones de preguntas.

¿Dónde (en qué lugares) jugó el equipo Redsox en julio? (1) voluntad

Digamos que el procesador de lenguaje ha generado una lista de especificaciones para una pregunta. Un procesador de datos jerárquico toma una lista de especificaciones y genera sistemáticamente todas las rutas de datos que coinciden. La ruta coincide con la lista de especificaciones si

(a) un par característica-valor (por ejemplo, está contenido tanto en la lista de especificaciones como en la ruta, o

(b) el par característica-valor en la lista de especificaciones tiene un valor (por ejemplo, en este caso el valor correspondiente en la ruta de datos está registrado como posible (en el ejemplo (1), la lista de valores sería la respuesta).

Si un par característica-valor en una lista de especificaciones tiene un valor, es consistente con el valor de cualquier característica en la ruta de datos. El tipo de aprobación no está registrado.

Como ya se mencionó, el proceso de generar rutas de datos y hacerlas coincidir con una lista de especificaciones no contiene nada específico sobre el tema del béisbol. Los pares atributo-valor derivados también pueden ser coherentes, pero en este caso son específicos de la aplicación. Por ejemplo, considere la pregunta:

¿Cuántos partidos ganaron los equipos en sus campos locales en julio? (2)

Para responder, el programa debe encontrar todas las rutas de datos que definen los juegos para los cuales el valor coincide con el valor y cuyo nombre coincide con el valor y tiene la mejor puntuación. Está claro que la subrutina que compila la correspondiente lista de especificaciones se basa en el conocimiento del juego de béisbol.

Cuando se encuentran rutas de datos que satisfacen las listas de especificaciones, se combinan en una lista maestra. También se le representa como un árbol. Por ejemplo, las rutas que responden a la pregunta (1) se pueden resumir de la siguiente manera:

La respuesta a la pregunta se compila revisando la lista principal. En el caso (1), la respuesta se obtiene simplemente enumerando los valores de LUGAR en la lista principal.

Arroz. 14.1. (ver escaneo) Etapas de respuesta de preguntas en el programa BÉISBOL.

La respuesta a una pregunta un poco más compleja.

¿En cuántos lugares jugaron los Redsox en julio? (3)

Se puede obtener recalculando los valores en la lista principal.

Un diagrama de este procedimiento para responder preguntas se muestra en la Fig. 14.1. Analizador de subconjuntos de lenguaje natural

percibe una pregunta en lenguaje natural, reconoce el tipo de pregunta formulada y produce una lista de especificaciones. Esta parte del programa de BÉISBOL está necesariamente relacionada con el campo de aplicación en dos aspectos. Obviamente, debe tener acceso al léxico de este juego. De manera menos obvia, debería contener rutinas que transformen expresiones del lenguaje natural como “cuánto” o “en qué” en listas adecuadas de especificaciones. Así, aunque Green et al., no restringieron que el usuario hiciera preguntas “indexadas”, como se hace en las bibliotecas, predeterminaron los tipos de preguntas que el sistema podía recibir.

En el paso (B), el programa genera la lista de datos principales a partir de la lista de especificaciones. Como ya se señaló, grandes secciones de B son independientes de las aplicaciones, aunque las rutinas individuales pueden necesitar características de prueba derivadas. En el último paso, la respuesta se deriva de la lista principal (bloques y Aquí nuevamente el programador debe anticipar el tipo de preguntas que se formularán e ingresar al sistema una rutina de generación de lista principal adecuada para cada tipo de pregunta.

Como se puede observar en los bloques de la Fig. 14.1, el programa BÉISBOL no se limita a preguntas que pueden responderse revisando los datos solo una vez. Consideremos la pregunta:

¿Cuántos equipos jugaron en 8 lugares en julio? (4)

La lista inicial de especificaciones es la siguiente:

La pregunta definida por esta lista de especificaciones no puede responderse de inmediato. En cambio, el procesador debe explorar

y no se puede responder de inmediato, por lo que se necesita una pregunta auxiliar:

Tampoco se puede responder inmediatamente, por lo que se recuerda y se genera una pregunta.

Se puede responder utilizando un procesador de preguntas que proporciona una lista maestra.

La especificación significa ver todas las listas del formulario. Al contar los nombres de los lugares, puede obtener la respuesta. Puede convertirlo en una lista y obtener la respuesta. Esto sigue inmediatamente a la respuesta a

El desarrollo del programa BÉISBOL no fue más allá del alcance del proyecto inicial: el destino habitual de los sistemas de inteligencia artificial. De hecho, la idea de una estructura de datos jerárquica parece haber desaparecido de la programación legible por máquina. Esto es algo sorprendente, ya que las estructuras jerárquicas permiten una gestión eficiente de los datos, especialmente si grandes cantidades de información deben guardarse en parte en la memoria primaria y en parte en dispositivos de memoria relativamente lentos y económicos (para más detalles, véase Sussengut, 1963). Además, las estructuras jerárquicas pueden implementarse mediante técnicas de gestión de datos que sean compatibles con sistemas de procesamiento de información más tradicionales (Hunt y Kildall, 1971; Lefkowitz, 1969). Sin duda, cuando usted va a utilizar programas “comprensivos”, en algún momento debe plantear las inevitables cuestiones prácticas de costo y compatibilidad del sistema. Quizás en el futuro valga la pena volver a los principios aplicados en este programa bastante antiguo.

Sistemas de respuesta a preguntas

Sistema de preguntas y respuestas(Sistema de preguntas y respuestas en inglés) es un tipo especial de sistemas de información, que son un híbrido de sistemas de búsqueda, referencia e inteligentes (a menudo se los considera como motores de búsqueda inteligentes). Un sistema de control de calidad debe poder aceptar preguntas en lenguaje natural, es decir, es un sistema con una interfaz de lenguaje natural. La información se proporciona en base a documentos de Internet o del almacenamiento local. Los desarrollos modernos de los sistemas de control de calidad permiten procesar muchas variantes de solicitudes de hechos, listas, definiciones, preguntas como cómo, por qué, hipotéticas, complejas e interlingüísticas.

  • Altamente especializado Los sistemas de control de calidad funcionan en áreas específicas (por ejemplo, medicina o mantenimiento de automóviles). Construir tales sistemas es una tarea relativamente fácil.
  • Son comunes Los sistemas de calidad trabajan con información de todas las áreas del conocimiento, permitiendo así realizar búsquedas en áreas relacionadas.

Arquitectura

Los primeros sistemas de control de calidad se desarrollaron en la década de 1960 y eran estructuras de lenguaje natural para sistemas expertos centrados en áreas específicas. Los sistemas modernos están diseñados para buscar respuestas a preguntas en los documentos proporcionados utilizando tecnologías de procesamiento del lenguaje natural (NLP).

Los sistemas de control de calidad modernos suelen incluir un módulo especial: clasificador de preguntas, que determina el tipo de pregunta y, en consecuencia, la respuesta esperada. Después de este análisis, el sistema aplica gradualmente métodos de PNL cada vez más complejos y sutiles a los documentos proporcionados, descartando información innecesaria. El método más aproximado es buscar en documentos- implica el uso de un sistema de recuperación de información para seleccionar partes del texto que potencialmente contienen una respuesta. Entonces filtrar resalta frases que son similares a la respuesta esperada (por ejemplo, para la pregunta "¿Quién ..." el filtro devolverá fragmentos de texto que contienen los nombres de las personas). Y finalmente el módulo. resaltando respuestas Encontrarás la respuesta correcta entre estas frases.

Esquema de trabajo

El rendimiento de un sistema de respuesta a preguntas depende de la calidad de la base de texto: si no hay respuestas a las preguntas, el sistema de control de calidad no podrá encontrar nada. Cuanto más grande sea la base, mejor, pero sólo si contiene Información necesaria. Los grandes repositorios (como Internet) contienen mucha información redundante. Esto lleva a dos puntos positivos:

  1. Dado que la información se presenta en diferentes formas, el sistema de control de calidad encontrará rápidamente la respuesta adecuada. No es necesario recurrir a complejas técnicas de procesamiento de textos.
  2. La información correcta se repite con más frecuencia, por lo que se eliminan los errores en los documentos.

Búsqueda de superficie

El método de búsqueda más común es por palabras clave. Las frases encontradas de esta manera se filtran según el tipo de pregunta y luego se clasifican según características sintácticas, como el orden de las palabras.

Búsqueda Avanzada

Problemas

En 2002, un grupo de investigadores redactó un plan de investigación en el campo de los sistemas de preguntas y respuestas. Se propuso considerar las siguientes cuestiones.

Tipos de preguntas Diferentes preguntas requieren diferentes métodos para encontrar respuestas. Por tanto, es necesario crear o mejorar listados metodológicos de los tipos de preguntas posibles. Procesamiento de preguntas La misma información se puede solicitar de diferentes maneras. Es necesario crear métodos eficaces para comprender y procesar la semántica (significado) de una oración. Es importante que el programa reconozca preguntas que tengan un significado equivalente, independientemente del estilo, las palabras, las relaciones sintácticas y los modismos utilizados. Me gustaría que el sistema de control de calidad divida las preguntas complejas en varias simples e interprete correctamente las frases contextuales, tal vez aclarándolas con el usuario durante el diálogo. Preguntas contextuales Las preguntas se formulan en un contexto específico. El contexto puede aclarar una consulta, resolver ambigüedades o seguir el pensamiento del usuario a través de una serie de preguntas. Fuentes de conocimiento para un sistema de control de calidad Antes de responder a la pregunta, sería bueno informarse sobre las bases de datos de texto disponibles. No importa qué métodos de procesamiento de texto se utilicen, no encontraremos la respuesta correcta si no está en las bases de datos. Selección de respuestas La correcta ejecución de este procedimiento depende de la complejidad de la pregunta, su tipo, contexto, calidad de los textos disponibles, método de búsqueda, etc. - una gran cantidad de factores. Por tanto, el estudio de los métodos de procesamiento de textos debe abordarse con gran cautela y este problema merece una atención especial. Formulación de la respuesta La respuesta debe ser lo más natural posible. En algunos casos, una simple descargar del texto. Por ejemplo, si se requiere un nombre (nombre de la persona, nombre del instrumento, enfermedad), cantidad (tipo de cambio, longitud, tamaño) o fecha (“¿Cuándo nació Iván el Terrible?”), una respuesta directa es suficiente. Pero a veces hay que lidiar con consultas complejas y aquí se necesitan algoritmos especiales. fusionar respuestas de diferentes documentos. Responder preguntas en tiempo real Es necesario crear un sistema que encuentre respuestas en los repositorios en unos pocos segundos, independientemente de la complejidad y ambigüedad de la pregunta, el tamaño y la inmensidad de la base de documentos. Consultas multilingües Desarrollo de sistemas de trabajo y búsqueda en otros idiomas (incluida la traducción automática). Interactividad A menudo la información que ofrece un sistema de calidad como respuesta es incompleta. Es posible que el sistema haya identificado incorrectamente el tipo de pregunta o lo haya "entendido" incorrectamente. En este caso, es posible que el usuario desee no sólo reformular su solicitud, sino también “explicarle” al programa mediante el diálogo. Mecanismo de razonamiento (inferencia) A algunos usuarios les gustaría recibir una respuesta que vaya más allá de los textos disponibles. Para hacer esto, es necesario agregar al sistema de control de calidad conocimientos comunes a la mayoría de las áreas (consulte Ontologías generales en informática), así como medios para inferir automáticamente nuevos conocimientos. Perfiles de usuario de sistemas de control de calidad La información sobre el usuario, como su área de interés, su forma de hablar y razonar y los hechos predeterminados, podría aumentar significativamente el rendimiento del sistema.

Enlaces

  • Dialogus es un motor de búsqueda que selecciona automáticamente las respuestas a las preguntas de los usuarios.
  • [email protected]: Búsqueda humana de respuestas a cualquier pregunta.

Fundación Wikimedia. 2010.

Vea qué son los “sistemas de preguntas y respuestas” en otros diccionarios:

    Este artículo trata sobre sistemas de información automáticos. Para información sobre el tipo de redes sociales, consulte el sistema de preguntas y respuestas (servicio web). Sistema de respuesta a preguntas (sistema de control de calidad; del inglés QA English Respuesta a preguntas... ... Wikipedia

    Un sistema de información inteligente (IIS) es uno de los tipos de sistemas de información automatizados; a veces un IIS se denomina sistema basado en el conocimiento. IIS es un complejo de software, lingüístico y lógico-matemático... ... Wikipedia

    Este artículo carece de enlaces a fuentes de información. La información debe ser verificable, de lo contrario podrá ser cuestionada y eliminada. Puedes... Wikipedia

    URL... Wikipedia

    - (del inglés Virtual virtual, Digital digital, Assistant Assistant, abreviado VDA) servicio web y/o aplicación para teléfonos inteligentes y PC, que en realidad desempeña el papel de secretaria personal del usuario. Resuelve problemas de programación,... ... Wikipedia

    La representación del conocimiento es un problema que surge en la investigación de las ciencias cognitivas (la ciencia del pensamiento), la informática y la inteligencia artificial. En ciencia cognitiva, está relacionado con cómo las personas almacenan y procesan información. En informática con selección ... Wikipedia

    La representación del conocimiento es una cuestión que surge en la ciencia cognitiva (la ciencia del pensamiento), en la informática y en la inteligencia artificial. En ciencia cognitiva, está relacionado con cómo las personas almacenan y procesan información. En informática, el objetivo principal es seleccionar una representación... Wikipedia

    Está destinado a que el usuario obtenga la información más precisa (relevante) sobre un tema de su interés (y limitada por la base de datos de artículos). Normalmente, un artículo se selecciona según la jerarquía de temas de ayuda. Los sistemas de ayuda a menudo se combinan con... ... Wikipedia

    - (Natural Language Processing, PNL) dirección general de inteligencia artificial y lingüística matemática. Estudia problemas de análisis informático y síntesis de lenguaje natural. Cuando se aplica a la inteligencia artificial, el análisis significa... Wikipedia

    Wolfram|Alpha Página principal del sitio ... Wikipedia