MXPA05002951A - Tablas de conversion con ordenes en lenguaje natural. - Google Patents

Tablas de conversion con ordenes en lenguaje natural.

Info

Publication number
MXPA05002951A
MXPA05002951A MXPA05002951A MXPA05002951A MXPA05002951A MX PA05002951 A MXPA05002951 A MX PA05002951A MX PA05002951 A MXPA05002951 A MX PA05002951A MX PA05002951 A MXPA05002951 A MX PA05002951A MX PA05002951 A MXPA05002951 A MX PA05002951A
Authority
MX
Mexico
Prior art keywords
natural language
order
data
language input
data source
Prior art date
Application number
MXPA05002951A
Other languages
English (en)
Inventor
Su Chin Chang
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of MXPA05002951A publication Critical patent/MXPA05002951A/es

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/243Natural language query formulation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)
  • Input From Keyboards Or The Like (AREA)
  • Document Processing Apparatus (AREA)

Abstract

La presente invencion se refiere a un metodo para la manipulacion de una paliacion de software y al procesamiento de datos en una fuente de datos. El metodo incluye la recepcion de una entrada de lenguaje natural y el analisis de la entrada de lenguaje natural a fin de identificar informacion semantica contenida en la misma. Las porciones de la entrada de lenguaje natural se asocian con objetos de orden y objetos de entidad de un esquema en base a la informacion semantica y a la entrada de lenguaje natural. El metodo tambien incluye la interpretacion de datos provenientes de la fuentes de datos en una tabla de columnas e hileras en base al esquema y las porciones asociadas de la entrada de lenguaje natural.

Description

TABLAS DE CONVERSIÓN CON ÓRDENES EN LENGUAJ E NATURAL ANTECEDENTES DE LA I NVENCIÓN La presente invención se refiere a un método para manipular una aplicación de software mediante resolución de la entrada de usuario en órdenes de aplicación. En particular, la presente invención se refiere a la resolución de entradas de usuario en una orden a fin de convertir la información proveniente de una fuente de datos, tal como una base de datos. En sistemas computacionales típicos, la entrada de usuario se ha limitado a un conjunto rígido de respuestas de usuario que tienen un formato fijo. Por ejemplo, con una inferíase de línea de órdenes, la entrada de usuario debe ser de una forma específica que identifique de manera única una sola orden y argumentos seleccionados de un dominio limitado y específico de posibles argumentos. De manera similar, con una interfase de usuario gráfica, solamente se presenta un conjunto limitado de opciones al usuario y relativamente se adelanta de manera directa a un desarrollador para definir un dominio de entrada de usuario que consiste en un conjunto limitado de órdenes o entidades para cada entrada de usuario específica en el conjunto limitado de entradas de usuario. Al limitar a un usuario a un conjunto rígido de entradas o respuestas permitidas, los sistemas computarizados han requerido de un importante nivel de experiencia por parte del usuario o del operador. Tradicionalmente, ha sido responsabilidad del usuario el traducir mentalmente la labor deseada a llevarse a cabo en la entrada específica reconocida por las aplicaciones que se ejecutan en el sistema computarizado. Con objeto de expandir la utilidad de los sistemas de computadora, ha existido un constante esfuerzo por proporcionar aplicaciones con una interfase de lenguaje natural (NL). La interfase de lenguaje natural extiende la funcionalidad de las aplicaciones más allá de su conjunto de entradas limitadas y abre el sistema de computadora a entradas en un formato de lenguaje natural. La interfase de lenguaje natural es responsable de llevar a cabo la traducción del universo del lenguaje natural altamente en base a contexto y relativamente vago, en el conjunto preciso y rígido de entradas requeridas por una aplicación de computadora. La resolución de entradas de lenguaje natural para volverse información a partir de una fuente de datos, tal como una base de datos, puede ser difícil de llevar a cabo debido a la naturaleza usual de las fuentes de datos y las muchas maneras de convertir información proveniente de una fuente de datos. En particular, las tablas de conversión para analizar información que se almacena en una fuente de datos se llevan a cabo con instrucciones específicas provenientes de un usuario que define cuál información debe convertirse y la manera de hacerlo. Debido a esta molesta interfase, muchos usuarios tienen dificultad en la conversión de tablas para análisis de datos útiles. La proporción de una interfase amistosa con el usuario para crear y convertir tablas a partir de información de una fuente de datos proporcionaría una herramienta más eficiente a través de la cual puede analizarse información.
BREVE DESCRIPCIÓN DE LA INVENCIÓN La presente invención se refiere a un método para manipular una aplicación de software, que incluye procesamiento de datos almacenados en una fuente de datos estructurada. El método incluye la recepción de una entrada de lenguaje natural y el análisis de la entrada de lenguaje natural a fin de identificar información semántica contenida en la misma. Las porciones de la entrada de lenguaje natural se asocian con objetos de orden y objetos de entidad de un esquema en base a la información semántica y la entrada de lenguaje natural. El método también incluye la conversión de datos provenientes de la fuente de datos en una tabla de columnas e hileras en base al esquema y las porciones asociadas de la entrada de lenguaje natural. Otro aspecto de la presente invención se refiere a un medio legible por computadora que tiene instrucciones para el procesamiento de datos en una fuente de datos estructurada que incluye dimensiones y valores asociados con las dimensiones. Las instrucciones incluyen un módulo de ¡nterfase de usuario adaptado para recibir una entrada de lenguaje natural y volverla una tabla. Un módulo de generación de tabla se adapta para tener acceso a dimensiones y valores y definir un esquema para la conversión de las dimensiones y valores. Además, un módulo de interpretación se adapta para asociar términos en la entrada de lenguaje natural con un objeto de entidad del esquema correspondiente a las dimensiones en la fuente de datos y generar interpretaciones candidato de la manera de convertir los datos en la fuente de datos en base a la entrada de lenguaje natural, las dimensiones y el esquema. Otro aspecto de la presente invención es un método para el procesamiento de información a fin de manejar una aplicación que incluye la recepción de una entrada de lenguaje natural. La entrada de lenguaje natural se analiza para identificar la información semántica contenida en la misma. E! método también incluye el acceso a un esquema para identificar objetos de orden y objetos de entidad en base a la información semántica y a la entrada de lenguaje natural y la realización de una acción asociada con la aplicación en base al objeto de orden y al objeto de entidad.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La figura 1 es un diagrama de bloque de un ambiente de sistema de cómputo. La figura 2 es un diagrama de bloque de un sistema para la conversión de una tabla en base a una entrada de usuario. La figura 3 es un diagrama de bloque de un esquema ejemplar. La figura 4 es un diagrama de flujo de un método ejemplar para la conversión de una tabla.
La figura 5 es un disparo de selección de una ¡nterfase de usuario para recibir una entrada proveniente de un usuario y convertir información de la tabla.
DESCRI PCIÓN DETALLADA DE LAS MODALIDADES ILUSTRATIVAS La figura 1 ilustra un ejemplo de un ambiente de sistema de cómputo adecuado 100 sobre el cual puede implementarse la invención. El ambiente de sistema de cómputo 1 00 es solamente un ejemplo de un ambiente de cómputo adecuado y no intenta sugerir limitación alguna al alcance de uso o funcionalidad de la invención. Tampoco debe interpretarse el ambiente de cómputo 100 como si tuviera dependencia alguna o requisito con relación a ninguna o cualquier combinación de los componentes ilustrados en el ambiente operativo ejemplar 1 00. La invención es operacional con otros numerosos ambientes de sistemas de cómputo o configuraciones de propósito general o de propósito especial. Los ejemplos de sistemas de cómputo muy conocidos, ambientes y/o configuraciones que pueden ser adecuados para utilizarse con la invención incluyen , pero sin limitarse, computadoras personales, computadoras de servidor, dispositivos manuales o portátiles, sistemas de múltiples procesadores, sistemas a base de microprocesadores, cajas superiores fijas, electrónicos programables por el consumidor, PCs en red , minicomputadoras, computadoras de estructura principal, sistemas de telefonía, ambientes de cómputo distribuidos que incluyen cualquiera de los anteriores sistemas o dispositivos y lo similar. La invención puede describirse en el contexto general de las instrucciones ejecutables por computadora, tal como módulos de programa, que se ejecutan por una computadora. En general, los módulos de programa incluyen rutinas, programas, objetos, componentes, estructuras de datos, etc. , que desempeñan labores particulares o implementan tipos de datos abstractos en particular. La invención también puede practicarse en ambientes de cómputo distribuido donde se llevan a cabo labores mediante dispositivos de procesamiento remoto que se enlazan a través de una red de comunicaciones. En un ambiente de cómputo distribuido, los módulos de programa pueden localizarse en medios de almacenamiento en computadora tanto locales como remotos, incluyendo dispositivos de almacenamiento en memoria. Las labores llevadas a cabo por los programas y módulos se describen a continuación y con la ayuda de figuras. Aquellos expertos en la materia pueden implementar la descripción y figuras como instrucciones ejecutables por el procesador, las cuales pueden ser escritas o de cualquier forma de un medio legible por computadora. Con relación a la figura 1 , un sistema ejemplar para implementar la invención incluye un dispositivo de cómputo de propósito general en la forma de una computadora 1 10. Los componentes de la computadora 1 10 pueden incluir, pero sin limitarse, una unidad de procesamiento 120, una memoria de sistema 130 y un bus de sistema 121 que acopla diversos componentes de sistema, incluyendo la memoria del sistema, a la unidad de procesamiento 120. El bus de sistema 121 puede ser cualquiera de varios tipos de estructuras de bus, incluyendo un bus de memoria o controlador de bus, un bus periférico y un bus local que utiliza cualquiera de una variedad de arquitecturas de bus. A manera de ejemplo y no como limitación, tales arquitecturas incluyen bus de Arquitectura Estándar Industrial (ISA), bus de Arquitectura de Micro Canal (MCA), bus ISA Mejorado (EISA), bus local de Asociación de Estándares Vídeo Electrónicos (VESA), y bus de Interconexión de Componentes Periféricos (PCI) también conocido como bus Mézanme. La computadora 1 10 típicamente incluye una variedad de medios legibles por computadora. Los medios legibles por computadora pueden ser cualquier medio disponible al que puede accederse mediante la computadora 1 10 e incluye medios tanto volátiles como no volátiles, medios removibles y no removibles. A manera de ejemplo, y no como limitación, el medio legible por computadora puede comprender medio de almacenamiento en computadora y medio de comunicación. El medio de almacenamiento en computadora incluye medios tanto volátiles como no volátiles, removibles y no removibles, implementados en cualquier método o tecnología para almacenamiento de información, tal como instrucciones legibles por computadora, estructuras de datos, módulos de programa u otros datos. El medio de almacenamiento en computadora incluye, pero sin limitarse, RAM, ROM, EEPROM, memoria instantánea u otra tecnología de memoria, CD-ROM, discos versátiles digitales (DVD) u otro disco de almacenamiento óptico, cintas magnéticas, casettes magnéticos, almacenamiento en disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que puede utilizarse para almacenar la información deseada y al que puede accederse mediante la computadora 1 10. Los medios de comunicación típicamente incorporan instrucciones legibles por computadora, estructuras de datos, módulos de programa u otros datos en una señal de datos modulada, tal como una onda vehículo u otro mecanismo de transporte e incluye cualquier medio de suministro de información. El término "señal de datos modulada" significa una señal que tiene una o más de este conjunto de características o que cambia de tal manera que codifica información en la señal. A manera de ejemplo y no como limitación, los medios de comunicación incluyen medios cableados tales como una red de conexión por cable o conexión directa por cable y medios inalámbricos tales como medios acústicos, de RF, infrarrojos y otros. Las combinaciones de cualquiera de los anteriores también deben incluirse dentro del alcance los medios legibles por computadora. La memoria de sistema 130 incluye medios de almacenamiento en computadora en la forma de memoria volátil y/o no volátil, tal como memoria de solo lectura (ROM) 131 y memoria de acceso aleatorio (RAM) 132. Un sistema básico de entradas/salidas 133 (BIOS), que contiene las rutinas básicas que ayudan a la transferencia de información entre elementos dentro de la computadora 1 10, tal como durante el inicio, se almacena típicamente en la ROM 131 . La RAM 132 típicamente contiene datos y/o módulos de programa que son inmediatamente accesibles y/o que se operan actualmente mediante la unidad de procesamiento 120. A manera de ejemplo y no como limitación, la figura 1 ilustra el sistema operativo 134, programas de aplicación 135, otros módulos de programa 136 y datos de programa 137. La computadora 1 1 0 también puede incluir otros medios de almacenamiento removibles/no removibles, volátiles/no volátiles. A manera de ejemplo solamente, la figura 1 ilustra una unidad de disco duro 141 que lee a partir de o escribe en medios magnéticos no volátiles, no removibles, una unidad de disco magnético 151 que lee a partir o escribe en un disco magnético no volátil, removible 152, y una unidad dé disco óptico 155 que lee a partir de o escribe en un disco óptico no volátil, removible 156, tal como un CD ROM u otro medio óptico. Pueden utilizarse otros medios de almacenamiento en computadora, volátiles/no volátiles, removibles/no removibles, en el ambiente operativo ejemplar, que incluyen, pero sin limitarse, casettes de cinta magnética, tarjetas de memoria instantánea, discos versátiles digitales, cintas de video digitales, RAM de estado sólido, ROM de estado sólido y lo similar. La unidad de disco duro 141 se conecta típicamente al bus de sistema 121 a través de una interfase de memoria no removible, tal como una interfase 140, y la unidad de disco magnético 151 y la unidad de disco óptico 155 se conectan típicamente al bus de sistema 121 mediante una interfase de memoria removible, tal como la interfase 150. Las unidades y sus medios de almacenamiento en computadora asociados, arriba discutidos e ilustrados en la figura 1 , proporcionan almacenamiento de instrucciones legibles por computadora, estructuras de datos, módulos de programa y otros datos para la computadora 1 10. En la figura 1 , por ejemplo, la unidad de disco duro 141 se ilustra como almacenando el sistema operativo 144, programas de aplicación 145, otros módulos de programa 146, y datos de programa 147. Observe que estos componentes pueden ser ya sea iguales o diferentes del sistema operativo 134, programas de aplicación 135, otros módulos de programa 136 y datos de programa 137. El sistema operativo 144, los programas de aplicación 145, otros módulos de programa 146 y los datos de programa 147 reciben diferentes números aquí para ilustrar que, por lo menos, son copias diferentes. Un usuario puede introducir órdenes e información en la computadora 1 10 a través de dispositivos de entrada, tales como un teclado, un micrófono 163, y un dispositivo de señalamiento 161 , tal como un ratón, esfera de desplazamiento o cojinete al tacto. Otros dispositivos de entrada (no mostrados) pueden incluir una palanca de mando, cojinete de juego, disco satelital, explorador o lo similar. Para aplicaciones de interfase de usuario naturales, un usuario puede comunicarse además con la computadora mediante el uso de voz, escritura, mirada (movimiento ocular), y otros gestos. Para facilitar una interfase de usuario natural, una computadora puede incluir micrófonos, cojinetes de escritura, cámaras, sensores de movimiento, y otros dispositivos para capturas movimientos del usuario. Estos y otros dispositivos de entrada se conectan con frecuencia a la unidad de procesamiento 120 a través de una interfase de entrada de usuario 160 que se acopla al bus de sistema, pero pueden conectarse mediante otra interfase y estructuras de bus, tal como un puerto paralelo, puerto de juego o un bus serial universal (USB). Un monitor 191 u otro tipo de dispositivo de despliegue también se conecta al bus de sistema 121 a través de una interfase, tal como una interfase de video 190. Además del monitor, las computadoras también pueden incluir otros dispositivos de emisión periféricos, tales como bocinas 197 e impresora 1 96, las cuales pueden conectarse a través de una interfase periférica de salida 190. La computadora 1 10 puede operar en un ambiente conectado en red mediante el uso de conexiones lógicas a una o más computadoras remotas, tal como una computadora remota 180. La computadora remota 180 puede ser una computadora personal, un dispositivo manual, un servidor, un direccionador, una PC en red, un dispositivo paritario u otro nodo de red común y típicamente incluye muchos o todos los elementos arriba descritos con relación a la computadora 1 1 0. Las conexiones lógicas ¡lustradas en la figura 1 incluyen una red de área local (LAN) 171 y una red de área amplia (WAN) 173, pero también pueden incluir otras redes. Tales ambientes de trabajo en red son comunes en oficinas, redes de computadora por toda la empresa, intra redes y la Internet. Cuando se utiliza en un ambiente de red LAN, la computadora 1 10 se conecta a la LAN 171 a través de una interfase de red o adaptador 170. cuando se utiliza en un ambiente de red WAN, la computadora 1 1 0 típicamente incluye un módem 172 u otro medio para establecer comunicaciones sobre la WAN 173, tal como la Internet. El módem 172, el cual puede ser interno o externo, puede conectarse al bus de sistema 121 a través de la interfase de entrada de usuario 160 u otro mecanismo adecuado. En un ambiente conectado en red, los módulos de programa ilustrados con relación a la computadora 1 1 0, o porciones de los mismos, pueden almacenarse en el dispositivo de almacenamiento en memoria remoto. A manera de ejemplo y no como limitación, la figura 1 ¡lustra programas de aplicación remota 185 que residen en la computadora remota 180. Se apreciará que las conexiones de red mostradas son ejemplares y que pueden utilizarse otros medios para el establecimiento de un enlace de comunicaciones entre las computadoras. Típicamente, los programas de aplicación 135 han interactuado con un usuario a través de una línea de órdenes o una Interfase de Usuario Gráfica (GUI) a través de la interfase de entrada de usuario 160. Sin embargo, en un esfuerzo por simplificar y expandir el uso de sistemas de computadora, se han desarrollado entradas que son capaces de recibir una entrada de lenguaje natural del usuario. En contraste con lenguaje o conversación naturales, una interfase de usuario gráfica es precisa. Una interfase de usuario gráfica bien diseñada normalmente no produce referencias ambiguas ni requiere de la aplicación implícita para confirmar una interpretación en particular de la entrada recibida a través de ia interfase 160. Por ejemplo, debido a que la interfase es precisa, no existe típicamente algún requisito que se solicite al usuario con respecto a la entrada, es decir, "¿Oprimió el botón de Ok'?". Típicamente, un modelo objeto diseñado para una interfase de usuario gráfica es muy mecánico y rígido en su implementación. En contraste con una entrada de una interfase de usuario gráfica, una consulta u orden de lenguaje natural con frecuencia se traducirán no solamente en una, sino en una serie de llamadas de función para el modelo objeto de entrada. En contraste con las rígidas limitaciones mecánicas de una entrada de línea tradicional o interfase de usuario gráfica, el lenguaje natural es un medio de comunicación en el cual los interlocutores humanos dependen de la inteligencia del otro, con frecuencia de manera inconsciente, para resolver ambigüedades. De hecho, el lenguaje natural se considera como "natural" exactamente debido a que no es mecánico. Los interlocutores humanos pueden resolver ambigüedades en base a información contextúa! y claves con respecto a cualquier número de dominios que rodean la pronunciación. Con los interlocutores humanos, la oración "Adelantar los minutos a aquellos en la junta de revisión el Viernes" es una oración perfectamente comprensible sin explicación adicional alguna. Sin embargo, desde el punto de vista mecánico de una máquina, deben especificarse detalles específicos tal como exactamente qué documento y a cuál junta se refiere, y exactamente a quién debe enviarse el documento. La presente invención se refiere a la interpretación de entradas de lenguaje natural para manejar una aplicación y sus acciones asociadas. Un esquema puede definirse para ambas interpretaciones de la entrada de lenguaje natural, así como también para iniciar acciones asociadas con la aplicación. Como resultado, el esquema interactúa tanto con la aplicación en sí como con las interpretaciones semánticas de entrada de lenguaje natural por un usuario. Como se aprecia por aquellos expertos en la materia, el esquema puede ser un código separado y/o incluirse con el código de aplicación. Los aspectos de la presente invención pueden utilizarse en un número de ambientes diferentes para proporcionar una interfase de lenguaje natural mejorada a un usuario. Una modalidad en particular que puede utilizar aspectos de la presente invención involucra la conversión de información proveniente de una fuente de datos estructurada, tal como una base de datos. El esquema puede utilizarse para convertir una tabla de columnas e hileras o una sola celda, por ejemplo. En el caso donde se convierte una sola celda de información, la información puede ser una respuesta a una pregunta presentada en lenguaje natural en vez de proporcionar los datos en un formato de tabla. Por ejemplo, un usuario puede introducir, "¿Cuántos reclamos ha pagado California en 1999?". La respuesta "3482" podría presentarse entonces a fin de que un usuario no necesite buscar a través de una gran cantidad de datos para encontrar la respuesta. La figura 2 ilustra un diagrama de bloque de un sistema para resolver entradas de lenguaje natural provenientes de un usuario y convertir la información de tabla en base a la entrada de lenguaje natural. El sistema 200 incluye un módulo de interfase de usuario 202, un módulo de generación de tablas 204, un módulo de interpretación 206 y una base de datos 208. Es importante recalcar que la base de datos 208 es una fuente de datos ejemplar. La fuente de datos puede tomar muchas formas, tal como una base de datos SQL, cubo OLAP u Hoja de Cálculo Excel Microsoft. Un usuario proporciona una entrada de lenguaje natural al módulo de interfase de usuario 202 en una forma de una orden, pregunta u otra entrada relacionada con la generación de una tabla. Por ejemplo, el usuario puede proporcionar "Muestra el beneficio bruto para transporte aéreo y destino por año" o "¿Cuál fue el ingreso total para 737 en 1999?", o simplemente "ganancia". El módulo de interfase de usuario 202 recibe la entrada de lenguaje natural y la proporciona a un módulo de generación de tabla 204. El módulo de generación de tabla 204 define un esquema de órdenes y atributos asociados para diversas órdenes que pueden utilizarse cuando se convierte una tabla. Por ejemplo, las órdenes pueden incluir crear, mostrar, agregar, ocultar, resaltar, filtrar, limpiar, etc., e incluyen atributos que definen además las órdenes. Las órdenes también pueden incluir la impresión de una tabla y la creación de un diagrama a partir de los datos en una base de datos 208. El esquema puede proporcionarse al módulo de interpretación 206 para manejar interpretaciones de la entrada. Alternativamente, el esquema puede utilizarse para convertir una sola celda de información. El módulo de generación de tabla 204 utiliza el módulo de interpretación 206 para ayudar en la determinación de cuál información debe convertirse en base a la entrada de lenguaje natural recibida desde el módulo de interfase 202 y el esquema definido que dirija las acciones preformadas para construir y generar tablas. El módulo de generación de tablas 204 tiene acceso a la base de datos 208 con objeto de identificar palabras y/o frases que corresponden a temas almacenados en una base de datos 108 y las proporciona al módulo de interpretación 206. El módulo de interpretación 206 analiza la entrada de usuario, esquema y palabras y frases de la base de datos para generar interpretaciones semánticas candidato de la conversión de información para el usuario. Un análisis esquemático de la entrada de usuario se lleva a cabo primero a fin de proporcionar información semántica para la interpretación de lo que el usuario desearía que se interprete. Por ejemplo, una entidad nombrada en la entrada puede señalar un término que el usuario desea que se interprete como una página, hilera o columna o dentro de un área de datos de una tabla. Otras técnicas semánticas también pueden utilizarse, tal como la identificación de partes de conversación, la aceptación de comparaciones parciales de términos y/o la dependencia sobre ciertas partes de conversación para comparaciones, identificación de alternativas morfológicas (es decir, "región" y "regional"), resolución de concatenación de nombres (es decir, "propietario del domicilio" y "propietario domiciliar"), normalización de fechas (es decir, "1/1/04" y "Enero 1 , 2004"), identificación de sinónimos a través de un compendio de palabras, permitir órdenes con palabras cambiadas (es decir, "ingreso total" y "total ingreso") y métodos de ordenamiento. Puede identificarse ora información semántica mediante el módulo de interpretación 206, tal como negación de valores (es decir, ocultar), comparativos (es decir, valores por encima de un umbral), etc. Mediante el uso de la información semántica y el esquema, el módulo de interpretación 206 asocia una o más labores en la entrada de lenguaje natural con un objeto de orden del esquema y asocia otra información en la entrada de lenguaje natural con una o más objetos de estructura y/o uno o más objetos de entidad del esquema. El esquema también puede incluir otros objetos, tales como objetos denotadores y de restricción que pueden denotar otras entidades y describir propiedades de objetos. Una vez que la entrada de lenguaje natural se asocia con objetos del esquema, se resuelven interpretaciones candidato y se envían al módulo de generación de tabla 204. En una modalidad ejemplar, el módulo de ¡nterfase de usuario 202 puede ser una aplicación de hoja extendida, tal como Microsoft Excel proporcionada por Microsoft Corporation of Redmond, Washington. La aplicación de hoja extendida puede configurarse para procesar y convertir todo tipo de información de la base de datos. Por ejemplo, la aplicación de hoja extendida puede ser una herramienta de conversión por procesamiento analítico en línea (OLAP). El OLAP se refiere a un método de procesamiento que permite que un usuario extraiga de manera fácil y selectiva y observe los datos provenientes de una base de datos de diversas maneras. En un modelo de datos OLAP, la información se observa conceptualmente como cubos, lo cual consiste en categorías descriptivas (dimensiones) y valores cuantitativos (medidas). El modelo de datos multldimensional hace para los usuarios el formular consultas complejas, arreglar datos en un reporte, cambiar de datos sumarios a detallados y filtrar o dividir los datos en sub-conjuntos representativos. Por ejemplo, las dimensiones en un cubo que contiene información de ventas pueden incluir tiempo, geografía, producto, canal, organización y escenario (presupuestado o real). Las medidas pueden incluir ventas en dólares, ventas unitarias, inventario, contabilidad superior, ingresos y gastos. Dentro de cada dimensión de un modelo de datos OLAP, los datos pueden organizarse en una jerarquía que representa niveles de detalle en los datos. Por ejemplo, dentro de la dimensión de tiempo, pueden existir estos niveles: años, meses y días; de manera similar, dentro de la dimensión geográfica, pueden existir estos niveles: país, región, estado/provincia, y ciudad. Un caso particular del modelo de datos OLAP tendría los valores específicos para cada nivel en la jerarquía. Un usuario que observa datos OLAP se moverá hacia arriba o hacia abajo entre niveles para ver información más o menos detallada. En una modalidad de la presente invención, la entrada de lenguaje natural proporcionada por un usuario puede resolverse para crear una así llamada Tabla Pivote en una aplicación de hoja extendida, tal como Microsoft Excel en base a dimensiones de cubo OLAP. Una Tabla Pivote es una tabla interactiva que puede resumir grandes cantidades de datos. La interfase interactiva que convierte la tabla permite a un usuario girar las hileras y columnas de información con objeto de que el usuario observe diferentes resúmenes de datos en la base de datos 208, filtre los datos mediante despliegue de diferentes páginas y/o despliegue detalles con relación a la información en la base de datos. La Tabla Pivote contiene campos, cada uno de los cuales resume múltiples hileras de información a partir de la fuente de datos. La Tabla Pivote también puede resumir datos mediante el uso de una función de resumen tal como sumar, contar y/o promediar celdas específicas en la tabla. Con objeto de crear una Tabla Pivote, un usuario puede invocar al módulo de generación de tablas 204. En una modalidad, el módulo de generación de tabla 204 es un mago que guía al usuario a introducir información con respecto a la conversión de información de tablas. En esta modalidad, el módulo de generación de tabla 204 puede definir un esquema en base a acciones disponibles para la construcción y modificación de una Tabla Pivote. El esquema puede representarse como una jerarquía de órdenes, estructuras y objetos de entidad. Otros objetos pueden incluir un denotador, llamado objetos de entidad y de restricción. El objeto de orden identifica labores y acciones, el objeto de estructura identifica la acción con relación a la manera como los datos se despliegan y el objeto de entidad identifica los datos. Los casos específicos de estos objetos pueden utilizarse para implementar la interpretación de la información. Los casos pueden tener propiedades inherentes de una clase de base, si se desea. El esquema utilizado por el módulo de generación de tabla 204 para llevar a cabo las acciones en los datos a fin de generar una tabla y mediante el módulo de interpretación 206 manejar la interpretación de la entrada del usuario. La figura 3 es un diagrama de bloque de un esquema ejemplar que se utiliza para mover un campo de datos entre los ejes en una tabla. El esquema 220 incluye un objeto de orden 222, el cual es ilustrativamente una orden de "mover eje". El objeto de orden 222 incluye un objeto de estructura asociado 224 que es una estructura de "mover eje". El objeto de estructura 224 incluye tres objetos de entidad asociados 226, 228 y 230. El objeto de estructura 224 asocia cada uno de los objetos de entidad 226, 228 y 230 con el objeto de orden 222. Los objetos de entidad se asocian con los datos en la base de datos 208. En una modalidad, los objetos de entidad pueden asociarse con una columna o hilera por interpretarse. En la modalidad ilustrada, el objeto de entidad 226 es una entidad por omisión, lo cual en la presente en una entidad de campo y especifica el campo de datos que está por moverse. Por lo tanto, si una interpretación de la entrada de usuario no resuelve una entidad en particular, necesaria para llevar a cabo la orden en el objeto de orden 222, la entidad de campo 226 se resolverá en un valor por omisión, lo cual puede ser en base a diversas reglas. El objeto de entidad 228 es una entidad de propósito, la cual define el eje hacia el cual interpretar los datos. El objeto de entidad 230 es una entidad de fuente, que define un campo actual que está por moverse a un eje diferente. La figura 4 es un diagrama de flujo de un método ejemplar para convertir una tabla para un usuario. El método 250 comienza en la etapa 252 en donde el módulo de generación de tabla se invoca. El módulo de generación de tabla también puede tener acceso a términos de la base de datos y/o frases correspondientes a dimensiones, niveles, medidas y/o miembros de la base de datos 208 en la etapa 254 que se utilizará para comparar los términos provenientes de la entrada del usuario. Los términos de la base de datos identificados pueden mantenerse en un historial para uso futuro a fin de mejorar el desempeño del módulo de generación de tabla 204. En la etapa 256, una entrada de lenguaje natural se recibe a partir de un usuario. La entrada de lenguaje natural puede ser de cualquier forma, incluyendo texto desde una entrada de teclado, datos de voz y/o datos escritos manualmente y ser de cualquier idioma, incluyendo Inglés, Alemán, Francés, Español, Japonés, etc. Dada la entrada de lenguaje natural, puede llevarse a cabo un análisis semántico de la entrada en la etapa 258 para identificar información semántica asociada con la entrada. Las interpretaciones candidato de la entrada de usuario pueden suministrarse entonces en base a la información de semántica y a la asociación de porciones de la entrada de usuario con porciones del esquema, como se describe arriba. Es importante recalcar que la orden no necesita expresarse de manera explícita en la entrada de lenguaje natural, sino que puede implicarse a partir de la entrada. Por ejemplo, la entrada "manzanas y plátanos" puede implicarse que se utilice con una orden de "mostrar". Mediante el uso de las interpretaciones candidato, las descripciones candidato de la tabla pueden interpretarse en la etapa 262. Las descripciones candidato de tabla pueden tomar muchas formas para crear una interfase interactiva, amigable con el usuario. Por ejemplo, las interpretaciones y/o vistas previas de la tabla pueden presentarse mientras un usuario se encuentra mecanografiando, los términos reconocidos en la entrada pueden resaltarse, pueden presentarse múltiples configuraciones de tabla (es decir, una entidad como una hilera o una columna), puede presentarse una descripción de lenguaje natural de las descripción candidato de tabla en una lista y pueden presentarse términos alternativos, ambiguos, en un menú de traslado. Adicionalmente, un usuario puede seleccionar ambigüedades locales en las descripciones candidato. Por ejemplo, si un usuario introduce "ventas" en la entrada, una de las descripciones candidato podría incluir el término "número de ventas", el cual es una parte de la base de datos 208 y podría igualarse al término "ventas". Al proporcionar un enfoque interactivo para resolver ambigüedades locales, un usuario podría seleccionar "número de ventas" como un equivalente a "ventas". Esta información (es decir, igualar "ventas" y "número de ventas") puede mantenerse y utilizarse además para manejar futuras interpretaciones. Si un usuario selecciona una de las descripciones candidato de tabla, esa tabla en particular se interpreta entonces en la etapa 266. Alternativamente, si se desea, la tabla puede interpretarse "en el vuelo", cuando un término se reconoce u ocurren cambios en la entrada del usuario. También, una porción de la entrada de lenguaje natural puede utilizarse para reconocer e indicar visualmente términos como un tipo de usuario. Por ejemplo, un término reconocido puede resaltarse como un tipo de usuario. Una vez que se ha interpretado la tabla, un usuario puede cambiar la tabla mediante proporción de una orden adicional o múltiples órdenes para modificar la tabla o volverla una nueva tabla. La orden adicional puede utilizarse, por ejemplo, para resaltar porciones de la tabla, ocultar y/o agregar hileras y columnas, ordenar y filtrar información así como también otras órdenes en la etapa 268. La nueva tabla puede interpretarse entonces en la etapa 266. La figura 5 ilustra una inferíase ejemplar 300 utilizada de acuerdo con una modalidad de la presente invención. La interfase 300 incluye un despliegue de tabla 302 para desplegar información a partir de la base de datos 208 en una tabla de columnas e hileras. En la modalidad ilustrada, el ingreso total para diversos tipos de transporte aéreo se muestra por región. Se proporciona una ventana 304 para que un usuario observe las descripciones de tabla y proporcione una entrada de lenguaje natural que se utiliza por el módulo de generación de tabla 204. La ventana 304 incluye una descripción de tabla 306 que describe el contenido de la tabla actualmente mostrada en el despliegue 302. Adicionalmente, se proporciona un ejemplo 308 de la entrada para la construcción de una tabla. El usuario puede introducir texto en el campo 310 con objeto de interpretar una tabla. Las descripciones candidato 312 pueden proporcionarse además al usuario según se describe arriba en una lista para que el usuario seleccione fácilmente uno de los candidatos de la lista. Adicionalmente, los botones 314 pueden proporcionarse para que el usuario seleccione un patrón de tabla en particular. Por ejemplo, los botones 314 pueden cambiar una dimensión de una columna a una hilera. En una modalidad, el número de patrones variables (o configuraciones) puede limitarse en base al orden de términos en la entrada de lenguaje natural. En el ejemplo ilustrado en la figura 4, un usuario ha proporcionado la entrada de lenguaje natural, "mostrar ingreso para transporte aéreo y región" en el campo de entrada 31 0. El módulo de generación de tabla 204, que tiene términos de acceso a partir de la base de datos 208, ha identificado las dimensiones "Ingreso Total", "Tipo de Transporte Aéreo" y "Nombre de Región". El módulo de interpretación 206, que utiliza la entrada en el campo 310 y las dimensiones en la base de datos 208, resuelve la entrada en el campo 31 0 y proporciona la descripción candidato "Mostrar Ingreso Total por Tipo de Transporte Aéreo y por Nombre de Región" en 312.
Después de la selección del usuario de esta interpretación, la descripción actual 306 y el despliegue de tabla 302 se actualizan para mostrar la tabla seleccionada y la descripción asociada. El usuario se permite entonces introducir órdenes de lenguaje natural adicionales en el campo 310 respecto a la tabla en el despliegue 302 o respecto a una nueva tabla. Por ejemplo, el usuario puede proporcionar "Ocultar Australia", "mostrar solamente 747", "resaltar ingresos superiores a $1 0,000", etc. En estos ejemplos, la aplicación ocultará la columna Australia, interpretará una tabla solamente con datos asociados con el Tipo de Avión 747 y resaltará los valores Totales de Ingreso mayores que $10,000, respectivamente. Como resultado de las modalidades descritas arriba, se proporciona una interfase de lenguaje natural para convertir información de una fuente de datos, tal como una base de datos, en una tabla de columnas e hileras. La interfase hace más fácil que los usuarios generen e interpreten tablas utilizadas para análisis de datos. Por lo tanto, el análisis de datos mediante conversión de tablas puede llevarse a cabo en una manera más eficiente y amistosa para el usuario. Aunque la presente invención se ha descrito con relación a modalidades particulares, los trabajadores expertos en la materia reconocerán que pueden hacerse cambios en forma y detalle sin apartarse del espíritu y alcance de la invención.

Claims (1)

  1. REIVINDICACIONES 1 . Un método para el procesamiento de datos almacenados en una fuente de datos estructurada, caracterizado porque comprende: recibir una entrada de lenguaje natural; analizar la entrada de lenguaje natural para identificar información semántica contenida en la misma asociar porciones de la entrada de lenguaje natural con un objeto de orden y un objeto de entidad de un esquema en base a la información semántica y a la entrada de lenguaje natural; e interpretar datos de la fuente de datos en una tabla de columnas e hileras en base al esquema, y las porciones asociadas de la entrada de lenguaje natural. 2. El método según la reivindicación 1 , caracterizado porque comprende además tener acceso a la base de datos APRA identificar palabras y frases asociadas con dimensiones en la fuente de datos. 3. El método según la reivindicación 2, caracterizado porque el tener acceso comprende además la identificación de palabras y frases asociadas con niveles y valores en la fuente de datos. 4. El método según la reivindicación 1 , caracterizado porque la asociación comprende además asociar porciones de la entrada de lenguaje natural con un objeto de estructura del esquema, en donde el objeto de estructura corresponde a la manera de interpretar los datos. 5. El método según la reivindicación 1 , caracterizado porque el objeto de orden se relaciona con una labor por llevarse a cabo para la interpretación de datos. 6. El método según la reivindicación 1 , caracterizado porque el objeto de entidad se refiere a los datos en la fuente de datos o a los objetos en la aplicación. 7. El método según la reivindicación 1 , caracterizado porque comprende además: cambiar la tabla en base a una orden adicional recibida. 8. El método según la reivindicación 7, caracterizado porque la orden adicional es resaltar una porción de la tabla. 9. El método según la reivindicación 7, caracterizado porque la orden adicional es ordenar una porción de la tabla. 10. El método según la reivindicación 7, caracterizado porque la orden adicional es filtrar información en la tabla. 1 1 . El método según la reivindicación 7, caracterizado porque la orden adicional es agregar información a la tabla. 12. El método según la reivindicación 7, caracterizado porque la orden adicional es quitar información en la tabla. 13. El método según la reivindicación 7, caracterizado porque la orden adicional incluye cambiar la información de hilera y columna. 14. El método según la reivindicación 1 , caracterizado porque comprende además: presentar interpretaciones candidato en base a la entrada de lenguaje natural. 15. El método según la reivindicación 1 , caracterizado porque comprende además: proporcionar una interfase interactiva a un usuario para introducir la entrada de lenguaje natural. 16. El método según la reivindicación 15, caracterizado porque comprende además: llevar a cabo al menos una de indicar los términos reconocidos en la entrada de lenguaje natural y proporcionar interpretaciones candidato mientras un usuario introduce la entrada de lenguaje natural. 17. El método según la reivindicación 1 , caracterizado porque comprende además: interpretar una descripción de lenguaje natural de información en la tabla. 18. El método según la reivindicación 1 , caracterizado porque comprende además: mantener una historia de tablas previas interpretadas para uso futuro. 1 9. El método según la reivindicación 1 , caracterizado porque comprende además asociar porciones de la entrada de lenguaje natural con palabras y frases asociadas con la fuente de datos. 20. El método según la reivindicación 1 , caracterizado porque el análisis comprende además la identificación de términos ambiguos en la entrada de lenguaje natural y la presentación de alternativas candidato para los términos ambiguos. 21 . Un medio legibles por computadora que tiene instrucciones para el procesamiento de datos en una fuente de datos estructurada que incluye dimensiones y valores asociados con las dimensiones, caracterizado porque las instrucciones comprenden: un módulo de interfase de usuario adaptado para recibir una entrada de lenguaje natural e interpretar una tabla; un módulo de generación de tabla adaptada para tener acceso a las dimensiones y valores y definir un esquema para interpretar las dimensiones y valores; y un módulo de interpretación adaptado para asociar términos en la entrada de lenguaje natural con un objeto de entidad del esquema correspondiente a las dimensiones en la fuente de datos y para generar interpretaciones candidato de la manera de interpretar datos en la fuente de datos en base a la entrada de lenguaje natural, las dimensiones y el esquema. 22. El medio legible por computadora según la reivindicación 21 , caracterizado porque la fuente de datos incluye niveles asociados con las dimensiones. 23. El medio legible por computadora según la reivindicación 21 , caracterizado porque la fuente de datos incluye niveles asociados con las dimensiones. 24. El medio legible por computadora según la reivindicación 21 , caracterizado porque el módulo de interfase de usuario se adapta para interpretar una tabla de dimensiones y valores a partir de la fuente de datos en base a por lo menos una de las interpretaciones de tabla candidato. 25. El medio legible por computadora según la reivindicación 21 , caracterizado porque el módulo de interpretación se adapta para comparar palabras y frases en la entrada de lenguaje natural con las dimensiones y valores de la fuente de datos. 26. El medio legible por computadora según la reivindicación 21 , caracterizado porque el módulo de interpretación se adapta además para llevar a cabo un análisis semántico de la entrada de lenguaje natural. 27. El medio legible por computadora según la reivindicación 21 , caracterizado porque el esquema incluye además un objeto de orden con relación a una labor por llevarse a cabo y un objeto de estructura con relación a la manera de interpretar datos. 28. El medio legible por computadora según la reivindicación 27, caracterizado porque el módulo de interpretación se adapta además a asociar términos en la entrada de lenguaje natural con el objeto de orden y el objeto de estructura. 29. El medio legible por computadora según la reivindicación 21 , caracterizado porque el módulo de interfase de usuario se adapta para presentar interpretaciones candidato al usuario. 30. El medio legible por computadora según la reivindicación 29, caracterizado porque las interpretaciones candidato incluyen múltiples configuraciones de tabla, en donde al menos una configuración se asocia con los mismos datos. 31 . El medio legible por computadora según la reivindicación 21 , caracterizado porque el módulo de interfase de usuario se adapta para permitir que un usuario seleccione una de las interpretaciones candidato con objeto de interpretar una tabla asociada con la interpretación candidato seleccionada. 32. Un método para el procesamiento de información a fin de manejar una aplicación, caracterizado porque comprende: recibir una entrada de lenguaje natural; analizar la entrada de lenguaje natural a fin de identificar información semántica contenida en la misma; tener acceso a un esquema a fin de identificar un objeto de orden y un objeto de entidad en base a la información semántica y la entrada de lenguaje natural; y llevar a cabo una acción asociada con la aplicación en base al objeto de orden y al objeto de entidad. 33. El método según la reivindicación 32, caracterizado porque la aplicación es una aplicación de hoja extendida. 34. El método según la reivindicación 32, caracterizado porque la acción incluye la interpretación de datos a partir de una fuente de datos en una tabla de columnas e hileras en base al esquema. 35. Ei método según la reivindicación 34, caracterizado porque la acción incluye la interpretación de una sola celda de información a partir de una fuente de datos en base a la entrada de lenguaje natural. 36. El método según la reivindicación 32, caracterizado porque el objeto de orden se asocia con una orden llevada a cabo en la aplicación y el objeto de entidad se asocia con los datos utilizados por la aplicación cuando se lleva a cabo la orden. 37. El método según la reivindicación 36, caracterizado porque el acceso a un esquema comprende además la identificación de un objeto de estructura, en donde el objeto de estructura asocia el objeto de entidad con el objeto de orden. 38. El método según la reivindicación 32, caracterizado porque comprende además la presentación de interpretaciones candidato de la entrada de lenguaje natural en base al esquema y la información semántica. 39. El método según la reivindicación 32, caracterizado porque el acceso al esquema incluye la identificación de múltiples objetos de entidad. 40. El método según la reivindicación 32, caracterizado porque el acceso al esquema incluye la identificación de múltiples objetos de orden.
MXPA05002951A 2004-03-18 2005-03-16 Tablas de conversion con ordenes en lenguaje natural. MXPA05002951A (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/804,815 US7613719B2 (en) 2004-03-18 2004-03-18 Rendering tables with natural language commands

Publications (1)

Publication Number Publication Date
MXPA05002951A true MXPA05002951A (es) 2006-05-25

Family

ID=34838946

Family Applications (1)

Application Number Title Priority Date Filing Date
MXPA05002951A MXPA05002951A (es) 2004-03-18 2005-03-16 Tablas de conversion con ordenes en lenguaje natural.

Country Status (10)

Country Link
US (1) US7613719B2 (es)
EP (1) EP1577797A3 (es)
JP (1) JP2005267647A (es)
KR (1) KR100969447B1 (es)
CN (1) CN1670733B (es)
AU (1) AU2005200962B2 (es)
BR (1) BRPI0500943A (es)
CA (1) CA2501254A1 (es)
MX (1) MXPA05002951A (es)
RU (1) RU2380747C2 (es)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8255791B2 (en) 2000-11-29 2012-08-28 Dov Koren Collaborative, flexible, interactive real-time displays
US20060250369A1 (en) * 2005-05-09 2006-11-09 Keim Oliver G Keyboard controls for customizing table layouts
US20070055556A1 (en) * 2005-07-06 2007-03-08 Frank-Backman Elizabeth G Spreadsheet Generator
AU2006308779B2 (en) * 2005-10-31 2012-03-08 Think Software Pty Ltd. Interacting with a computer-based management system
US8694319B2 (en) 2005-11-03 2014-04-08 International Business Machines Corporation Dynamic prosody adjustment for voice-rendering synthesized data
US9361622B2 (en) * 2006-12-28 2016-06-07 Oracle International Corporation Multi-dimensioned data hierarchies
KR100865481B1 (ko) * 2007-05-14 2008-10-27 엔에이치엔(주) 삼차원으로 구조화된 데이터 모델을 이용하여 데이터를분산 관리하는 방법
US8090746B2 (en) * 2007-11-29 2012-01-03 Sap Aktiengeselleschaft System and method for maintaining consistent behavior when in different table modes
US8312366B2 (en) 2009-02-11 2012-11-13 Microsoft Corporation Displaying multiple row and column header areas in a summary table
US20100228752A1 (en) * 2009-02-25 2010-09-09 Microsoft Corporation Multi-condition filtering of an interactive summary table
US8375056B2 (en) * 2010-02-26 2013-02-12 International Business Machines Corporation Optimizing data cache when applying user-based security
US8392442B2 (en) * 2010-04-15 2013-03-05 Dee Gee Holdings, Llc Method and computer program product for creating content management systems
EP2455844A1 (en) 2010-11-10 2012-05-23 Michael Rabben Computerized method to associatively and efficiently select elements in textual electronic lists and to operate computer-implemented programs using natural language commands
US8589336B1 (en) * 2011-04-25 2013-11-19 Netapp, Inc. Framework for automated storage processes and flexible workflow
US9129448B2 (en) * 2011-08-31 2015-09-08 Timur Nuruahitovich Bekmambetov Visualization of a natural language text
US20130338995A1 (en) * 2012-06-12 2013-12-19 Grant Street Group, Inc. Practical natural-language human-machine interfaces
US11176523B2 (en) 2012-06-24 2021-11-16 Harms Software, Inc. System and method for intelligent conversation-based appointment tool
US10706047B2 (en) * 2012-10-22 2020-07-07 Sap Se Boolean content search
US9171066B2 (en) 2012-11-12 2015-10-27 Nuance Communications, Inc. Distributed natural language understanding and processing using local data sources
US9330090B2 (en) * 2013-01-29 2016-05-03 Microsoft Technology Licensing, Llc. Translating natural language descriptions to programs in a domain-specific language for spreadsheets
US10776375B2 (en) * 2013-07-15 2020-09-15 Microsoft Technology Licensing, Llc Retrieval of attribute values based upon identified entities
US10282407B1 (en) 2013-08-21 2019-05-07 The United States Of America, As Represented By The Secretary Of The Navy Method for filtering data to generate a balance sheet
US9594737B2 (en) * 2013-12-09 2017-03-14 Wolfram Alpha Llc Natural language-aided hypertext document authoring
CN104881414A (zh) 2014-02-28 2015-09-02 国际商业机器公司 数据展示方法和***
US20160124937A1 (en) * 2014-11-03 2016-05-05 Service Paradigm Pty Ltd Natural language execution system, method and computer readable medium
US20170177716A1 (en) * 2015-12-22 2017-06-22 Intel Corporation Technologies for semantic interpretation of user input by a dialogue manager
US10318528B2 (en) 2016-02-25 2019-06-11 Microsoft Technology Licensing, Llc Query response using mapping to parameterized report
US10817527B1 (en) * 2016-04-12 2020-10-27 Tableau Software, Inc. Systems and methods of using natural language processing for visual analysis of a data set
GB201616990D0 (en) * 2016-10-06 2016-11-23 Microsoft Technology Licensing Llc User interface
EP4220630A1 (en) 2016-11-03 2023-08-02 Samsung Electronics Co., Ltd. Electronic device and controlling method thereof
WO2019087194A1 (en) * 2017-11-05 2019-05-09 Walkme Ltd. Chat-based application interface for automation
KR20200013162A (ko) 2018-07-19 2020-02-06 삼성전자주식회사 전자 장치 및 그의 제어 방법
CN111191431A (zh) * 2018-10-29 2020-05-22 百度在线网络技术(北京)有限公司 一种根据自然语言指令生成报表的方法及***
CN110413767A (zh) * 2019-08-05 2019-11-05 浙江核新同花顺网络信息股份有限公司 基于自然语言生成呈递内容的***及方法
US11379577B2 (en) 2019-09-26 2022-07-05 Microsoft Technology Licensing, Llc Uniform resource locator security analysis using malice patterns
US11509667B2 (en) 2019-10-19 2022-11-22 Microsoft Technology Licensing, Llc Predictive internet resource reputation assessment
US11163760B2 (en) 2019-12-17 2021-11-02 Mastercard International Incorporated Providing a data query service to a user based on natural language request data
US11431751B2 (en) 2020-03-31 2022-08-30 Microsoft Technology Licensing, Llc Live forensic browsing of URLs
CN114912427A (zh) * 2021-02-10 2022-08-16 微软技术许可有限责任公司 响应于用户输入的数据表分析
US12001783B2 (en) 2021-09-24 2024-06-04 Google Llc Autonomous spreadsheet creation
US12001782B2 (en) 2021-09-24 2024-06-04 Google Llc Personalized autonomous spreadsheets

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324713A (ja) * 1992-05-20 1993-12-07 Hitachi Ltd 自然語処理方法および自然語処理システム
JPH0744638A (ja) * 1993-07-29 1995-02-14 Nec Corp 表データ検索装置
US5960384A (en) * 1997-09-03 1999-09-28 Brash; Douglas E. Method and device for parsing natural language sentences and other sequential symbolic expressions
US6385644B1 (en) * 1997-09-26 2002-05-07 Mci Worldcom, Inc. Multi-threaded web based user inbox for report management
KR100289065B1 (ko) * 1997-10-14 2001-05-02 정선종 전자상거래상품정보검색용자연언어질의어처리방법
JPH11259524A (ja) * 1998-03-06 1999-09-24 Omron Corp 情報検索システム、情報検索システムにおける情報処理方法および記録媒体
JP2002523828A (ja) * 1998-08-24 2002-07-30 ビーシーエル コンピューターズ, インコーポレイテッド 適応型自然言語インターフェース
US7912696B1 (en) * 1998-08-31 2011-03-22 Sony Corporation Natural language processing apparatus and natural language processing method
FR2806183B1 (fr) * 1999-12-01 2006-09-01 Cartesis S A Dispositif et procede pour la consolidation instantanee, l'enrichissement et le "reporting" ou remontee d'information dans une base de donnees multidimensionnelle
US6701294B1 (en) 2000-01-19 2004-03-02 Lucent Technologies, Inc. User interface for translating natural language inquiries into database queries and data presentations
FI109952B (fi) 2000-06-06 2002-10-31 Sonera Oyj Palvelutarjonta tietoliikenneverkossa
KR20020045343A (ko) * 2000-12-08 2002-06-19 오길록 표준화된 문장 구문구조 및 의미구조에 기반한 정보생성/검색 장치 및 그 방법
JP2002259443A (ja) * 2001-02-28 2002-09-13 Ricoh Co Ltd 文書管理システム、文書検索方法および文書検索プログラム
US7269788B2 (en) * 2001-06-29 2007-09-11 Versata Development Group, Inc. Extensibility and usability of document and data representation languages
US7283951B2 (en) * 2001-08-14 2007-10-16 Insightful Corporation Method and system for enhanced data searching
US20050043940A1 (en) * 2003-08-20 2005-02-24 Marvin Elder Preparing a data source for a natural language query

Also Published As

Publication number Publication date
AU2005200962B2 (en) 2010-06-03
CN1670733A (zh) 2005-09-21
BRPI0500943A (pt) 2005-11-08
RU2005107522A (ru) 2006-08-27
CN1670733B (zh) 2011-07-13
JP2005267647A (ja) 2005-09-29
KR20060043741A (ko) 2006-05-15
RU2380747C2 (ru) 2010-01-27
EP1577797A2 (en) 2005-09-21
AU2005200962A1 (en) 2005-10-06
KR100969447B1 (ko) 2010-07-14
EP1577797A3 (en) 2006-11-08
US7613719B2 (en) 2009-11-03
CA2501254A1 (en) 2005-09-18
US20050210061A1 (en) 2005-09-22

Similar Documents

Publication Publication Date Title
MXPA05002951A (es) Tablas de conversion con ordenes en lenguaje natural.
Srinivasan et al. Orko: Facilitating multimodal interaction for visual exploration and analysis of networks
Setlur et al. Eviza: A natural language interface for visual analysis
US7685116B2 (en) Transparent search query processing
Anthony AntConc: design and development of a freeware corpus analysis toolkit for the technical writing classroom
JP5744873B2 (ja) トラステッドクエリのシステムおよび方法
US20140280072A1 (en) Method and Apparatus for Human-Machine Interaction
JP3266586B2 (ja) データ分析システム
US20050177358A1 (en) Multilingual database interaction system and method
Brookes et al. Corpus linguistics
JP7297458B2 (ja) 対話コンテンツ作成支援方法
Smith et al. Corpus tools and methods, today and tomorrow: Incorporating linguists’ manual annotations
Lommatzsch et al. An Information Retrieval-based Approach for Building Intuitive Chatbots for Large Knowledge Bases.
JP6550628B1 (ja) 対話管理サーバ、対話管理方法、及びプログラム
US11868343B2 (en) Utilizing autocompletion as a data discovery scaffold for supporting visual analysis
JP2005250762A (ja) 辞書生成装置、辞書生成方法および辞書生成プログラム
WO2019235131A1 (ja) 検索文生成システム、及び検索文生成方法
Bakar The development of an integrated corpus for Malay language
US11698933B1 (en) Using dynamic entity search during entry of natural language commands for visual data analysis
Thollot et al. Text-to-query: dynamically building structured analytics to illustrate textual content
CN110457435A (zh) 一种专利新颖性分析***及其分析方法
Hu et al. Crowdsourcing-based semantic relation recognition for natural language questions over RDF data
CN112771508A (zh) 研讨会辅助***和研讨会辅助方法
von Lünen et al. Hansard at Huddersfield: Adapting Corpus Linguistic Methods for Non-Specialist Use
Tiwari et al. ROC Bot: Towards Designing Virtual Command Centre for Energy Management

Legal Events

Date Code Title Description
FG Grant or registration