ES2386631T3 - Léxico con datos divididos en secciones y procedimiento de uso del mismo - Google Patents

Léxico con datos divididos en secciones y procedimiento de uso del mismo Download PDF

Info

Publication number
ES2386631T3
ES2386631T3 ES03008804T ES03008804T ES2386631T3 ES 2386631 T3 ES2386631 T3 ES 2386631T3 ES 03008804 T ES03008804 T ES 03008804T ES 03008804 T ES03008804 T ES 03008804T ES 2386631 T3 ES2386631 T3 ES 2386631T3
Authority
ES
Spain
Prior art keywords
data
word
information
section
sections
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
ES03008804T
Other languages
English (en)
Inventor
James P. Finnegan
Curis E. Huttenhower
Douglas W. Potter
Kevin R. Powell
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
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
Application granted granted Critical
Publication of ES2386631T3 publication Critical patent/ES2386631T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

Un medio de almacenamiento legible por ordenador que tiene una pluralidad de léxicos (180-183) paraalmacenar información de palabras y adaptado para su uso en un analizador (20) de textos en un sistema (10)de tratamiento del lenguaje, comprendiendo cada léxico:una sección (162) de lista de palabras para almacenar una pluralidad de palabras;un conjunto de secciones (168A -168P; 190 - 195) de datos que se corresponde con cada palabra de la listade palabras, almacenando las secciones de datos información seleccionada diferente sobre lacorrespondiente palabra de la lista de palabras; ypara cada palabra de la lista de palabras, una pluralidad de punteros almacenados en una tabla (166) deíndices aparte de los conjuntos de secciones de datos, apuntando cada uno de los punteros a una secciónde datos diferente relacionada con información diferente sobre la palabra correspondiente, incluyendo cadauno de los punteros una primera indicación de a qué sección de datos acceder, una segunda indicación deun valor de desplazamiento relacionado con la información almacenada en el mismo y una terceraindicación de una clasificación de la palabra;en el que las secciones (190-195) de datos de cada uno de los léxicos (180-183) que tienen informaciónsimilar son accesibles selectivamente para obtener información de las mismas, y en el que dicha pluralidadde léxicos que tienen secciones de datos con información similar permite:obtener la información de palabras de al menos dos secciones (195180, 195181, 195182) de datos quetienen información similar para combinar la información (195180-181+182) obtenida de palabras, siendodichas al menos dos secciones (195180, 195181, 195182) de datos de al menos dos léxicos diferentes(180-182), uobtener la información de palabras (192182) de al menos dos secciones (192182, 192183) de datos quetienen información similar y luego usar solo la información de palabras obtenida de una sección (192182)de datos, siendo dichas al menos dos secciones (192182, 192183) de datos de al menos dos léxicosdiferentes (182-183).

Description

Léxico con datos divididos en secciones y procedimiento de uso del mismo
Antecedentes de la invención
La presente invención versa acerca del tratamiento del lenguaje o de textos. Más en particular, la presente invención versa acerca de una estructura de datos mejorada para almacenar un léxico y de un procedimiento mejorado de uso del mismo.
El tratamiento del lenguaje o de textos abarca muchos tipos de sistemas. Por ejemplo, analizadores sintácticos, verificadores ortográficos, verificadores gramaticales, divisores silábicos, procesadores de lenguaje natural o sistemas de comprensión y sistemas de traducción automática son solo algunos de los tipos de sistemas que se encuentran dentro de esta amplia categoría.
Un componente común e importante de muchos sistemas de tratamiento del lenguaje o de textos es el léxico. Generalmente, el léxico es una estructura de datos que contiene información sobre palabras. Por ejemplo, el léxico puede almacenar indicaciones de información sintáctica y semántica. Ejemplos incluyen si la palabra es un sustantivo, un verbo, un adjetivo, etc. Además, en el léxico pueden guardarse diferentes tipos de información lingüística. A menudo es útil almacenar otra información útil para el tipo particular de tratamiento del lenguaje, tal como almacenar información sobre la palabra que contribuya a su análisis sintáctico. En otros léxicos distintos, pueden resultar útiles indicaciones de si la palabra es un nombre propio, una ubicación geográfica, etc.
En operación, tras recibir una cadena de palabras de entrada, el sistema de tratamiento del lenguaje o de textos accede al léxico para obtener la información almacenada con respecto a cada una de las palabras. Habiendo recogido la información sobre cada una de las palabras de la cadena de entrada, el sistema de tratamiento del lenguaje o de textos procesa la cadena de entrada, lo que puede incluir resolver cualquier ambigüedad que pueda existir con base en la información de las palabras. Por ejemplo, en un sistema de tratamiento de lenguaje natural, el léxico asigna partes de la oración a cada una de las palabras de la cadena de entrada. A continuación, un analizador sintáctico decide cuáles de las asignaciones de partes de la oración son apropiadas y construye una estructura a partir de la cadena de entrada, que puede pasarse entonces a un componente semántico para su interpretación.
Comúnmente, cada entrada del léxico comprende un solo objeto binario grande. Aunque la información es accesible, este formato no permite fácilmente un acceso localizado a información léxica usada comúnmente sin tener que leer la entrada completa. Si hay que leer del léxico toda la información perteneciente a una entrada de palabra, hacen falta más memoria y tiempo de procesamiento, particularmente si solo se necesita una parte pequeña de la información para la entrada de la palabra.
También resulta difícil modificar información léxica o añadirla. Específicamente, para modificar la información del léxico o añadir información adicional, el autor del léxico debe replicar todos los bits, los atributos u otra información dentro de cada entrada, luego modificar la información deseada o añadir a la misma mientras se mantiene la integridad y la organización de una estructura de datos muy compleja.
Existe, así, la necesidad de una estructura mejorada de datos de léxico que aborde una, algunas o todas las desventajas presentadas en lo que antecede.
El documento EP-A2-0 539 965 da a conocer un diccionario electrónico usado típicamente en sistemas de traducción. El diccionario electrónico incluye un fichero de cabeceras, un fichero de punteros que tiene una porción de almacenamiento de banderas de corrección y una porción de almacenamiento de punteros, un fichero de información de palabras y un fichero de corrección de la información de palabras.
El documento US-A-6 138 087 da a conocer un sistema para almacenar y recuperar experiencia y conocimiento de lenguaje natural a través de procedimientos y un aparato. El diccionario está organizado de tal forma que cada palabra almacenada contiene: una entrada de texto que corresponde a la palabra; un número de representación que se usa para representar la palabra de texto; un conjunto de conjuntos de palabras de sintaxis, cada uno con una parte asociada de la oración; una dirección para un proceso de selección de función del conjunto de palabras y un código de función asociado; una lista de anomalías gramaticales asociadas divididas por conjuntos de palabras; punteros a tablas comunes para seleccionar códigos de inflexión y/o a otras tablas comunes relacionadas con un conjunto de palabras, tales como preposiciones de modificación de un sustantivo concreto.
C. J. WELLS, L. J. EVETT, P. E. WHITBY Y R. J. WHITROW: “Fast dictionary look-up for contextual word recognition” PATTERN RECOGNITION [en línea], vol. 23, nº 5, 1990, páginas 501-508, XP002407899 Gran Bretaña, recuperado de Internet: URL: http://portal.acm.org/citation.cfm?id=83050> se refiere a una consulta rápida de diccionario para el reconocimiento contextual de palabras en la que el léxico está representado como un trie.
A. NTOULAS ET AL.: “Use of a morphosyntactic lexicon as the basis for the implementation of the Greek Wordnet”, LECTURE NOTES IN COMPUTER SCIENCE, 2000, XP002407900 Springer Berlín/Heidelberg se refiere al uso de
un léxico morfosintáctico como base para la implementación de la WordNet Griega, en la que el léxico está representado como un trie.
FREDKIN E: “TRIE MEMORY”, COMMUNICATIONS OF THE ASSOCIATION FOR COMPUTING MACHINERY, ACM, NUEVA YORK, NY, EE. UU., vol. 3, nº 9, agosto de 1960 (1960-08), páginas 490-499, XP002271883 ISSN: 0001-0782 se refiere a memoria de tipo trie como forma de almacenar y recuperar información.
El objeto de la presente invención es proporcionar un procedimiento mejorado de obtención de información de palabras accediendo a un léxico, así como un correspondiente medio legible por ordenador.
Este objeto se resuelve por medio de la materia de las reivindicaciones independientes.
Las reivindicaciones dependientes definen realizaciones preferentes.
Un aspecto de la presente invención es un léxico de palabras almacenado en un medio legible por ordenador que tiene información de palabras adaptada para su uso en un sistema de tratamiento del lenguaje. El léxico incluye una sección de lista de palabras para almacenar una pluralidad de palabras y una pluralidad de secciones de datos para almacenar información de palabras de la pluralidad de palabras. Las varias secciones de datos están separadas entre sí y de la sección de lista de palabras. Para acceder a la información de palabras, se proporciona una sección de índices que almacena punteros que apuntan a datos en la pluralidad de secciones de datos. Una identificación de qué puntero usar es una función de la correspondiente palabra en la sección de lista de palabras.
La estructura mejorada del léxico permite flexibilidad y eficiencias no disponibles previamente. La sección de índices y la pluralidad de secciones de datos permiten que el léxico se adapte para amoldarse a las necesidad de un sistema de tratamiento del lenguaje según los recursos disponibles del ordenador. En una realización adicional, la estructura del léxico permite que la información de palabras se clasifique o agrupe con base en una clasificación. Por ejemplo, la clasificación puede basarse en la parte de la oración de la entrada de la palabra, tal como si la entrada de la palabra puede ser un sustantivo, un verbo, un adjetivo, etc. La información de la palabra puede ser objeto de acceso selectivo en función de la clasificación. En el aspecto ejemplar, se proporcionan indicadores en punteros para indicar la clasificación de la correspondiente información de la palabra.
Otros aspectos de la presente invención incluyen un procedimiento implementado por ordenador para almacenar información de palabras en una pluralidad de secciones de datos, para almacenar información de punteros en la sección de índices y para almacenar la lista de palabras en la sección de lista de palabras, teniendo información la lista de palabras para identificar los correspondientes punteros relacionados con la palabra seleccionado. De forma similar, otro aspecto es acceder a la información de palabras usando la estructura de datos para el léxico proporcionada en lo que antecede.
La estructura del léxico descrita en lo que antecede es particularmente útil cuando es deseable obtener información de varios léxicos, lo cual es otro aspecto adicional de la presente invención. En general, los datos de múltiples léxicos para una entrada de palabra particular pueden combinarse, ignorarse o seleccionarse según se desee accediendo de forma selectiva a secciones de datos de cada uno de los léxicos.
Breve descripción de los dibujos
La Fig. 1 es un diagrama de bloques de un sistema de tratamiento del lenguaje o de textos. La Fig. 2 es un diagrama de bloques de un entorno ejemplar para implementar la presente invención. La Fig. 3 es una representación gráfica de un entorno ejemplar para implementar la presente invención. La Fig. 4 es una representación gráfica de la recuperación de información en una pluralidad de léxicos o de acceso a la misma.
Descripción detallada del aspecto ilustrativo
La Fig. 1 ilustra en general un sistema 10 de tratamiento del lenguaje o de textos que recibe una entrada 12 de lenguaje, comúnmente en forma de cadena de texto, y procesa la entrada 12 de lenguaje para proporcionar una salida 14 de lenguaje, también comúnmente en forma de una cadena de texto. Por ejemplo, el sistema 10 de tratamiento del lenguaje puede estar implementado como un verificador ortográfico, un verificador gramatical o un procesador de lenguaje natural, por nombrar solo algunos. Según apreciarán los expertos en la técnica, el sistema 10 de tratamiento del lenguaje puede ser una aplicación dedicada o un módulo o componente accesible por otro sistema o incluido en el mismo.
En general, el sistema de tratamiento del lenguaje incluye un analizador 20 de textos y un léxico 22. El analizador 20 de textos representa esquemáticamente componentes o módulos que reciben la entrada 12, acceden y obtienen información del léxico 22 y procesar la información de palabras para proporcionar la salida 14. Un aspecto de la presente invención es una estructura de datos mejorada para el léxico 22 para proporcionar de forma eficiente la información necesaria al analizador 20 de textos según requiera su aplicación. En vista de que el léxico 22 es un componente separado que puede ser usando en muchos sistemas de tratamiento del lenguaje y con muchas formas de analizadores de textos, se describirá la interacción general del analizador 20 de textos con el léxico 22, pero no 3
se describirán los detalles específicos relativos a las diversos formas de los analizadores de textos, porque tal descripción no es necesaria para una comprensión de la presente invención.
Antes de una exposición detallada adicional de la presente invención, puede resultar útil una visión general de un entorno operativo. La FIG. 2 ilustra un ejemplo de un entorno 50 de un sistema informático adecuado en el que la invención puede ser implementada. El entorno 50 de un sistema informático es solo un ejemplo de un entorno informático adecuado y no se pretende sugerir ninguna limitación en cuanto al alcance de uso o la funcionalidad de la invención. ni debería interpretarse que el entorno informático 50 tenga ninguna dependencia ni requerimiento en cuanto a uno cualquiera o una combinación de componentes ilustrados en el entorno ejemplar 50 de un sistema informático.
La invención es operativa con numerosos entornos o configuraciones adicionales de sistemas informáticos de uso general o uso especial. Ejemplos de sistemas, entornos y/o configuraciones informáticas bien conocidos que pueden ser adecuados para su uso con la invención incluyen, sin limitación, ordenadores personales, ordenadores servidores, dispositivos de mano o portátiles, sistemas multiprocesadores, sistemas basados en microprocesadores, decodificadores, electrónica programable de consumo, PC en red, microordenadores, ordenadores centrales, entornos informáticos distribuidos que incluyan cualquiera de los sistemas o dispositivos anteriores, y similares.
La invención puede ser descrita en el contexto general de instrucciones ejecutables por ordenador, tales como módulos de programa que son ejecutados por un ordenador. En general, los módulos de programa incluyen rutinas, programas, objetos, componentes, estructuras de datos, etc., que llevan a cabo tareas particulares o implementan tipos particulares de datos abstractos. La invención también puede ser puesta en práctica en entornos informáticos distribuidos, en los que las tareas son realizadas por dispositivos remotos de procesamiento que están enlazados a través de una red de comunicaciones. En un entorno informático distribuido, los módulos de programa pueden estar situados en medios de almacenamiento de ordenador tanto locales como remotos, incluyendo dispositivos de almacenamiento de memoria. Las tareas llevadas a cabo por los programas y los módulos son descritas en lo que sigue con la ayuda de figuras. Los expertos en la técnica pueden implementar la descripción y las figuras como instrucciones ejecutables por procesador, que pueden ser escritas en cualquier forma de medio legible por ordenador.
Con referencia a la FIG. 2, un sistema ejemplar para implementar la invención incluye un dispositivo informático de uso general en forma de ordenador 60. Los componentes del ordenador 60 pueden incluir, sin limitación, una unidad 70 de proceso, una memoria 80 del sistema y un bus 71 del sistema que acopla diversos componentes del sistema, incluyendo la memoria del sistema, a la unidad 70 de proceso. El bus 71 del sistema puede ser de cualquiera de varios tipos de estructuras de bus, incluyendo un bus de memoria o controlador de memoria, un bus de periféricos y un bus local usando cualquiera de una variedad de arquitecturas de bus. A título de ejemplo y no de limitación, tales estructuras incluyen el bus de la arquitectura industrial normalizada (ISA), el bus de arquitectura microcanal (MCA), el bus ISA mejorado (EISA), el bus local de la Asociación de Normativa Electrónica sobre Vídeo (VESA) y un bus de interconexión de componentes periféricos (PCI), también denominado bus de entresuelo.
Típicamente, el ordenador 60 incluye una variedad de medios legibles por ordenador. Los medios legibles por ordenador pueden ser cualquier medio disponible que pueda ser objeto de acceso por el ordenador 60 e incluyen tanto medios volátiles como no volátiles, medios extraíbles y no extraíbles. A título de ejemplo y no de limitación, los medios legibles por ordenador pueden comprender medios de almacenamiento de ordenador y medios de comunicaciones. Los medios de almacenamiento de ordenador incluyen tanto medios volátiles como no volátiles, extraíbles y no extraíbles, implementados en cualquier procedimiento o tecnología para el almacenamiento de información tal como instrucciones, estructuras de datos, módulos de programa u otros datos legibles por ordenador. Los medios legibles por ordenador incluyen, sin limitación, RAM, ROM, EEPROM, memoria flash o cualquier otra tecnología de memoria, CD-ROM, discos versátiles digitales (DVD) u otro almacenamiento en disco óptico, casetes magnéticas, cinta magnética, almacenamiento en disco magnético u otros dispositivos de almacenamiento magnético, o cualquier otro medio que pueda ser usado para almacenar la información deseada y que pueda ser objeto de acceso por parte del ordenador 50.
Los medios de comunicaciones implementan típicamente instrucciones, estructuras de datos, módulos de programa u otros datos legibles por ordenador en una señal modulada de datos, tal como una onda portadora u otro mecanismo de transporte, e incluyen cualquier medio de distribución de información. La expresión “señal modulada de datos” significa una señal una o más de cuyas características han sido fijadas o cambiadas para cifrar la información de la señal. A título de ejemplo y no de limitación, los medios de comunicaciones incluyen medios cableados, tales como una red cableada o una conexión cableada directa, y medios inalámbricos tales como acústicos, de RF, infrarrojos y otros medios inalámbricos. También deberían incluirse dentro del alcance la los medios legibles por ordenador las combinaciones de cualquier de los anteriores.
La memoria 80 del sistema incluye medios de almacenamiento de ordenador en forma de memoria volátil y/o no volátil, tal como memoria 81 de solo lectura (ROM) y memoria 82 de acceso aleatorio (RAM). Típicamente, en la ROM 81 se almacena un sistema básico 83 de entrada/salida (BIOS) que contiene las rutinas básicas que contribuyen a transferir información entre elementos dentro del ordenador 60, tal como durante el arranque.
Típicamente, la RAM 82 contiene datos y/o módulos de programa que son inmediatamente accesibles a la unidad 70 de proceso y/o que están operados ya por ella. A título de ejemplo y no de limitación, la FIG. 2 ilustra el sistema operativo 84, programas 85 de aplicación, otros módulos 86 de programa y datos 87 de programa.
El ordenador 60 también puede incluir otros medios de almacenamiento de ordenador extraíbles/no extraíbles volátiles/no volátiles. A título de ejemplo únicamente, la FIG. 2 ilustra una unidad 91 de disco duro que lee de medios magnéticos no volátiles no extraíbles o escribe en ellos, un disco magnético no volátil 102 y una unidad 105 de disco óptico que lee de un disco óptico extraíble no volátil 106, tal como un CD ROM u otro medio óptico, o escribe en él. Otros medios de almacenamiento de ordenador extraíbles/no extraíbles volátiles/no volátiles que pueden ser usados en el entorno operativo ejemplar incluyen, sin limitación, casetes de cinta magnética, tarjetas de memoria flash, discos versátiles digitales, cinta de vídeo digital, RAM de estado sólido, ROM de estado sólido y similares. La unidad 91 de disco duro está conectada típicamente al bus 71 del sistema a través de una interfaz de memoria no extraíble, tal como la interfaz 90, y una unidad 101 de disco magnético y una unidad 105 de disco óptico están típicamente conectadas al bus 71 del sistema por medio de una interfaz de memoria extraíble, tal como la interfaz 100.
Las unidades y sus medios asociados de almacenamiento de ordenador presentados en lo que antecede e ilustrados en la FIG. 2 permiten el almacenamiento de instrucciones, estructuras de datos, módulos de programa y otros datos legibles por ordenador para el ordenador 60. En la FIG. 2, por ejemplo, la unidad 91 de disco duro se ilustra almacenando el sistema operativo 94, programas 95 de aplicación, otros módulos 96 de programa y datos 97 de programa. Obsérvese que estos componentes pueden ser los mismos o diferentes que el sistema operativo 84, los programas 85 de aplicación, otros módulos 86 de programa y los datos 87 de programa. El sistema operativo 84, los programas 85 de aplicación, otros módulos 86 de programa y los datos 87 de programa reciben aquí números diferentes para ilustrar que, como mínimo, son copias diferentes.
Un usuario puede introducir órdenes e información en el ordenador 60 a través de dispositivos de entrada tales como un teclado 112, un micrófono 113, un tablero 114 de escritura manuscrita, y un dispositivo 111 de puntero, tal como un ratón, una bola de mando o una almohadilla táctil. Otros dispositivos de entrada (no mostrados) pueden incluir una palanca de mando, un mando para juegos, una antena parabólica, un escáner o similares. Estos y otros dispositivos de entrada están a menudo conectados con la unidad 70 de proceso a través de una interfaz 110 de entrada de usuario que está acoplada al bus del sistema, pero pueden estar conectados por medio de otra interfaz y otras estructuras de bus, tal como un puerto paralelo, un puerto de juegos o un bus serie universal (USB). Un monitor 141 u otro tipo de dispositivo de visualización también está conectado al bus 71 del sistema a través de una interfaz, tal como una interfaz 140 de vídeo. Además del monitor, los ordenadores también pueden incluir otros dispositivos periféricos de salida, tales como altavoces 147 y la impresora 146, que pueden estar conectados a través de una interfaz 145 de periféricos de salida.
El ordenador 60 puede operar en un entorno de red usando conexiones lógicas a uno o más ordenadores remotos, tal como un ordenador remoto 130. El ordenador remoto 130 puede ser un ordenador personal, un dispositivo de mano, un servidor, un dispositivo de encaminamiento, un PC de red, un dispositivo del mismo nivel u otro nodo común de red, y típicamente incluye muchos de los elementos descritos en lo que antecede, o todos, relativos al ordenador 60. Las conexiones lógicas representadas en la FIG. 2 incluyen una red 121 de área local (LAN) y una red 123 de área amplia (WAN), pero también pueden incluir otras redes. Tales entornos de red son habituales en despachos, redes de ordenadores de ámbito empresarial, intranets e Internet.
Cuando se usa en un entorno de red LAN, el ordenador 60 está conectado a la LAN 121 a través de una interfaz o un adaptador 120 de red. Cuando se usa en un entorno de red WAN, el ordenador 60 incluye típicamente un módem 122 u otro medio para establecer comunicaciones en la WAN 123, tal como Internet. El módem 122, que puede ser interno o externo, puede estar conectado al bus 71 del sistema a través de la interfaz 110 de entrada de usuario o de otro mecanismo apropiado. En un entorno de red, los módulos de programa representados relativos al ordenador 60,
o porciones de los mismos, pueden ser almacenados en el dispositivo remoto de almacenamiento de memoria. A título de ejemplo y no de limitación, la FIG. 2 ilustra programas remotos 135 de aplicación que residen en el ordenador remoto 130. Se apreciará que las conexiones de red mostradas son ejemplares y que pueden usarse otros medios de establecimiento de un enlace de comunicaciones entre ordenadores.
Debiera entenderse que el analizador 20 de textos puede residir en el ordenador 60 o en cualquier ordenador que se comunique con el ordenador 60, tal como el ordenador remoto 130. De forma similar, el léxico 22 puede residir en el ordenador 60 en cualquiera de los dispositivos de almacenamiento descritos en lo que antecede, o ser accesible a través de un enlace de comunicaciones adecuado.
La Fig. 3 es una representación gráfica del léxico 22. En el aspecto ejemplar ilustrado, el léxico 22 incluye una sección 160 de cabecera, una sección 162 de lista de palabras, una sección 164 de tabla índice, una sección de índices 166, dos o más secciones 168 de datos de léxico (en el presente documento, por ejemplo, 16 secciones 168A, 168B, 168C, 168D, 168E, 168F, 168G, 168H, 168I, 168J, 168K, 168L, 168M, 168N, 1680, 168P), y una sección 170 de pila de cadenas.
Generalmente, la sección 160 de cabecera almacena información en cuanto a la estructura del léxico 22. Por ejemplo, la sección 160 de cabecera puede incluir información en cuanto al nombre y la versión del léxico. La 5
sección 160 de cabecera puede también incluir información en cuanto al desplazamiento en memoria y el tamaño de cada una de las secciones 162, 164, 166, 168A-168P y 170. La sección 162 contiene la lista de palabras del léxico
22. Puede usarse cualquier formato para implementar la lista de palabras en la sección 162. Un formato particularmente útil comprende almacenar una lista de palabra en una estructure “trie”, que es una técnica de estructura de datos bien conocida. Las ventajas de este formato incluyen ser capaz de determinar fácilmente cuántas palabras pueden comenzar con un prefijo particular, lo que puede resultar útil, por ejemplo, en el reconocimiento de la escritura manuscrita y cuando es necesario determinar la probabilidad de que el usuario haya escrito una letra particular. Este formato también permite que se conozca el sentido de la escritura tanto hacia la derecha como hacia la izquierda. Tal como se ha indicado en lo que antecede, pueden usarse otras formas de listado de palabras en la sección 162. Por ejemplo, puede usarse una simple tabla o lista. En otro aspecto adicional, puede usarse una técnica de “diferencias” para almacenar la lista de palabras en la que se almacene la diferencia en símbolos o caracteres entre palabras sucesivas.
Antes de describir la sección 164, puede resultar útil describir primero la sección 166 y su relación con la pluralidad de secciones 168. Según se expuso en la sección de antecedentes, los léxicos actuales requieren que se lea toda la información relativa a una entrada de palabra particular, aunque puede que solo se desee una porción de la información. Las secciones 168A-168P permiten que los datos de cada entrada de palabra en el léxico estén organizados como se desee, de modo que la información relacionada del léxico puede agruparse generalmente de forma conjunta. Por ejemplo, puede usarse una de las secciones 168A-168P para almacenar información relativa a la verificación ortográfica, mientras que otra sección almacena información relativa a clasificaciones lingüísticas normalizadas. Generalmente, la sección 166 de índices proporciona punteros (por ejemplo, agrupados en conjuntos) a los datos almacenados en las secciones 168A-168P en función de entradas de palabra de la sección 16 de lista de palabras. En otras palabras, la sección 162 (por ejemplo, trie) de lista de palabras determina directa o indirectamente el punto o los puntos de acceso (desplazamientos) a la sección 166 de índices. Generalmente, el procedimiento para obtener información de palabras incluye acceder a la sección de lista de palabras en función de una palabra dada para determinar una identificación de puntero para la sección de índices. Usando la identificación de puntero se obtiene un puntero para la palabra en la sección de índices. El puntero se usa entonces para determinar qué sección de datos de la pluralidad de secciones de datos tiene información sobre la palabra dada en qué lugar está situada la información en la sección de datos. Así, para una entrada de palabra particular presente en la sección 162, los correspondientes datos de léxico almacenados en las secciones 168A-168P para esa palabra pueden ser objeto de acceso selectivo a través de la sección 166 de índices, no requiriéndose por ello que toda la información de palabra para una palabra dada sea procesada o, al menos, leída.
En un aspecto particularmente útil, el puntero o el conjunto de punteros en la sección 166 de índices para las secciones 168A-168P para cada entrada de palabra en la sección 162 están clasificados por su parte de oración (“POS”) en cuanto a si la entrada de palabra puede ser un sustantivo, un verbo, un adjetivo, etc. De esta manera, los datos para una POS de una entrada de palabra son una serie de punteros a la información de POS en las secciones 168A-168P. Así, para una entrada de palabra con dos POS, hay dos conjuntos diferenciados de punteros en la sección 166. Un conjunto indicaría la ubicación de la información sobre la primera POS (por ejemplo, la forma sustantiva de la entrada) y el segundo conjunto de punteros indicaría la ubicación de información sobre la otra POS (por ejemplo, la forma verbal de la entrada). En este punto, debería entenderse que pueden usarse otras formas de clasificación además de la POS, dependiendo del lenguaje al que esté dirigido el léxico 22. Por ejemplo, en vez de usar partes de la oración, para los idiomas japonés o chino pueden usarse clasificaciones de inflexión o tonales. Aunque está ejemplificado en el presente documento cuando la sección 166 de índices proporciona clasificación de POS, no debería considerarse que esta característica sea limitante ni requerida.
También debería hacerse notar que el uso de la palabra “palabra”, tal como se usa en el presente documento, incluye símbolos, ideogramas, logogramas, etc., tal como se usan en idiomas tales como el chino y el japonés. Así, pueden construirse léxicos para estos idiomas usando aspectos de la presente invención y se pretende que estén cubiertos por las reivindicaciones, a no ser que se haga notar lo contrario en el presente documento.
En el aspecto ejemplar, cada puntero incluye información relacionada con a qué sección 168A-168P apunta el puntero, información relacionada con el tipo de POS, y un valor de desplazamiento en el que han de encontrarse los datos relevantes en la sección identificada 168A-168P. Aunque los punteros asociados con una entrada de palabra dada en la sección 162 pueden ser fijos, en el aspecto ejemplar el número de punteros para cada entrada de palabra puede variar de una entrada de palabra a otra. De esta manera, la sección 166 de índices puede ser más compacta y flexible, sin ninguna limitación fija inherente.
A continuación se proporciona una representación de un puntero ejemplar en la sección 166 para una entrada de palabra: X1: X2: X3: X4: siendo X1 una bandera que indica el fin del conjunto de punteros para la entrada de palara, siendo X2 información que identifica a una de las secciones 168, siendo X3 información que identifica la POS u otra clasificación, y siendo X4 un valor que indica el desplazamiento para los datos de léxico identificados por X2. Usando este formato, los punteros para toda la información para una palabra dada son almacenados secuencialmente, estando identificado el primer puntero directa o indirectamente en función de la sección de lista de palabras y estando puesta la bandera X1 para el último puntero para indicar el fin de la lista de punteros para la palabra dada. En un aspecto, la sección 166
de índices es una gran matriz de DWORD (cantidades de 4 bytes, alineamiento de palabra de 4 bytes para un acceso rápido). En este aspecto, un byte comprende una bandera de un bit para X1 que indica el fin del conjunto de punteros, cuatro bits X2 que indican la sección 168A-168P y tres bits X3 que indican el tipo de POS. Luego se usan tres bytes para X4 para proporcionar un valor de desplazamiento de 24 bits para indicar el lugar en el que los datos están almacenados en las secciones 168A-168P. Debiera entenderse que este formato no es más que un ejemplo en el que también pueden usarse otros formatos. De forma similar, no debería considerarse que este ejemplo sea requerido ni limitante. En general, se escoge el formato de los punteros de la sección 166 de índices para indicar la ubicación de los datos en la pluralidad de secciones 168 y, si se desea, una o más clasificaciones de la información de la palabra.
En este punto, debería hacerse notar también que cualquier dato que sea lo bastante pequeño como para caber en la porción de desplazamientos de una entrada de punto de la sección 166 puede ser cifrado directamente en la sección 166 de índices, en vez de en una sección 168A-168P separada. Ejemplos de este tipo de datos incluyen información ortográfica, o datos de probabilidad y frecuencia para la entrada de palabra, cualquiera de los cuales a menudo puede ser fácilmente almacenado en los bits asignados para los valores de desplazamiento de los datos.
Tal como se ha indicado en lo que antecede, la entrada a la sección 166 de índices es una función de la entrada de palabra desde la sección 162. Pueden usarse diversas técnicas para pasar entre las secciones 162 y 166. En un primer aspecto, cada entrada de palabra en la sección 162 podría incluir el requerido desplazamiento a la sección
166. Sin embargo, si la sección 162 comprende una estructura trie, puede ser necesaria la modificación de la estructura del nodo hoja del trie. Da manera alternativa, puede usarse los desplazamientos de los nodos de la estructura trie como desplazamientos a la sección 166 de índices. En el aspecto ejemplo, esto significaría asignar 40 bytes (10 punteros POS) para el conjunto de índices POS para una entrada de palabra. En otro aspecto adicional, el valor de desplazamiento puede estar fijado al final de una entrada de palabra en la sección 166.
En otra realización adicional, la tabla índice 164 está incluida en la estructura del léxico 22. La tabla índice 164 permite el establecimiento de una correlación entre las entradas de palabras y la sección 166 de índices y es particularmente útil cuando los punteros en la sección 166 pueden variar en número de una entrada de palabra a otra. Sin embargo, es posible usar un número de tamaño fijo de punteros en la sección 166 de índices para cada entrada de palabra asociada. Usando esta estructura de la sección 166, no sería necesaria la sección 164 de tabla índice. En este aspecto alternativo, en caso de que se permitan entradas de palabras con más del número fijo de punteros de índice en la sección 166, podría usarse una tabla de desbordamiento.
En este punto debería hacerse notar que los desplazamientos de la sección 162 a la sección 166 de índices y, más en particular, los punteros de la sección 166 que apuntan a los datos en las secciones 168A-168B pueden ser organizados para proporcionar eficiencia y velocidad cuando se recuperan datos del léxico 22. Por ejemplo, los puntos de desplazamiento pueden organizarse para ubicar información de léxico en las secciones 168A-168P adyacente a otra información de palabras usadas frecuentemente o, si se desea, organizarse información asociada o relacionada en las secciones 168A-168B más estrechamente entre sí, de modo que, cuando se almacenen en un dispositivo de almacenamiento de ordenador, tal como un disco duro, un disco flexible o similares, se acorten los tiempos de recuperación de la información.
Los datos de las secciones 168A-168P pueden estar presentes en las mismas o, si se desea, pueden proporcionarse punteros para que refieran las entradas de palabras de la sección 162 a datos contenidos dentro de la misma sección 168A-168P, en otras secciones 168A-168P, y, en el aspecto ilustrativo, también a una pila 170 de cadenas. Se usa la pila 170 de cadenas para proporcionar una única ubicación de almacenamiento para una cadena seleccionada cuyos datos sería preciso que fueran almacenados como múltiples instancias en las secciones 168A168P. La pila 170 de cadenas puede ser una sola sección o puede incluir subsecciones similares a las secciones 168A-168P. Otras formas de información en las secciones 168 pueden incluir banderas booleanas, valores, listas de palabras en árboles de decisión, etc.
La organización de los datos de entradas de palabras usando una pluralidad de secciones 168A-168P permite que el léxico 22 sea fácilmente adaptado para cumplir las necesidades de una aplicación particular sin consumir grandes cantidades de memoria en el ordenador en el que está implementado. Por ejemplo, el léxico 22 puede leer introduciendo datos en una memoria de acceso rápido como la RAM; sin embargo, si no se necesita un tipo particular de datos en el léxico, pueden omitirse esa sección o secciones de la pluralidad de secciones 168A-168P. Aunque los punteros en la sección 166 de índices pueden ser modificados para que reflejen únicamente aquellas secciones 168A-168P que están presentes, en un aspecto adicional, es innecesaria la modificación, dado que, si las secciones 168A-168P están presentes, se obtiene información, mientras que si la sección no está presente, no se busca información alguna. Las secciones presentes en el léxico pueden estar registradas, por ejemplo, en la cabecera 160 para no causar errores.
Un beneficio particular de la estructura de léxico descrita en el presente documento es que un usuario o un autor del léxico pueden poner cualquier tipo de información sobre una palabra para su recuperación posterior si la entrada 12 (Fig. 1) incluye esa palabra. Además, no es preciso que la información definida por el usuario se entremezcle con
otra información contenida en el léxico, sino que, más bien, puede ser almacenada en una o varias secciones dedicadas en la pluralidad de secciones 168A-168P.
Los que siguen no son más que unos ejemplos de datos de léxico organizados en secciones adecuadas para las secciones 168A-168P. Debería hacerse notar que estos no son más que meros ejemplos en los que los datos del léxico 22 pueden ser organizados de cualquier manera deseada en aras de la conveniencia o de la comprensión. Se ha descubierto que las secciones descritas en el presente documento son particularmente útiles, pero no debería considerarse que sean requeridas ni limitantes.
Sección de datos de morfología: tal información puede incluir pronunciación, así como otras formas de la palabra para tiempos verbales de varias palabras.
Sección estándar de datos de autor: tal información puede incluir datos que indiquen si la entrada de palabra es o no singular, plural o si la palabra es animada o inanimada. La información relativa a las entradas de palabras para esta sección es generalmente información bien conocida sobre la entrada de palabra tal como aquella de la que podría ser autor un lego. De esta manera, esta información puede ser cambiada o alterada fácilmente para amoldarse a los requerimientos de un usuario.
Sección estándar de datos lingüísticos: tal información incluye información lingüística de las entradas de palabras. Aunque tal información no resulta bien conocida para un lego común, los lingüistas pueden entender fácilmente esta información y modificarla según sea necesario.
Sección de datos de análisis sintáctico: tal información incluye datos útiles para el análisis sintáctico de lenguaje natural.
Sección de datos de dominio/tema: tal información está relacionada con códigos de dominio o tema. Por ejemplo, la información puede indicar que las correspondientes palabras están relacionadas con la física, las matemáticas, la geografía, la alimentación, etc.
Sección de datos de ortografía: tal información está relacionada con la verificación ortográfica, por ejemplo, marcas de dialecto, marcas restringidas, etc. Las marcas restringidas indican palabras que son permitidas pero que no se sugieren durante la verificación ortográfica, tal como vulgaridades, acrónimos, términos arcaicos, etc.
Sección de datos de expresión de múltiples palabras: tal información es útil cuando es preciso identificar por separado palabras múltiples como modismos, nombres propios, títulos de un libro o de películas, títulos de cargos, nombres de lugares, etc. Comúnmente, los datos almacenados con respecto a cada entrada de palabra son las palabras que preceden y/o siguen a la palabra en una expresión de múltiples palabras.
Por ejemplo, una de las secciones de la pluralidad de secciones 168A-168P puede incluir pares jerárquicos arbitrarios de valores de nombre para buscar únicamente por el autor de las entradas del léxico. Por ejemplo, si un autor desea añadir información de la Entidad Nombre (NE) sobre una expresión de múltiples palabras (expuesto más arriba), el autor puede añadir en la sección un conjunto de pares de valores basados en cadenas de nombres, que en el formato XML puede ser representado como:
<named-entity>
<app-ne-id>movieFinder::el_día_más_largo</app-ne-id>
<semantic-type>movieFinder::movieTitle</semantic-type>
<genre>Drama</genre>
<URL>http://www.movieFinder.com/fetch-movie-info/the_longest_day</URL>
<movie-info>
<date>30 de enero de 1969</date>
<running-time>137 min.</running-time>
<studio>20th Century Fox</studio>
</movie-info>
<non-rated/> </named-entity>
La sección puede representar, así, pares de nombres de valores simples basados en cadenas de anidamiento arbitrario. El formato no soporta atributos de identificadores de XML, sino que el autor codifica estos como subelementos separados de esa sección. En el ejemplo anterior, los datos para el título de una película tiene una mezcla de datos específicos de aplicación que pueden ser almacenados si se desea.
La estructura del léxico 22 acomoda léxicos escribibles aprovechando el hecho de que no es preciso que cada sección del léxico sea continua con la sección que la precede inmediatamente. En otras palabras, las secciones pueden reservar espacio extra no utilizado para su expansión futura. Las operaciones de actualización del léxico se llevan a cabo escribiendo el o los nuevos valores en las debidas ubicaciones. Obsérvese que si el léxico 22 está implementado como un léxico basado en una DLL (biblioteca de enlace dinámico) o como léxicos basados en
ficheros precompilados (estáticos), que no tienen espacio de reserva, una simple implementación de lista libre encuentra espacio libre de entradas con base en un algoritmo de primer ajuste.
Generalmente, un procedimiento de almacenamiento de información de palabras en el léxico 22 incluye almacenar información de palabras en la pluralidad de secciones 168 de datos, almacenando cada sección de datos información seleccionada sustancialmente diferente sobre las palabras de una lista de palabras; almacenar información de punteros en la sección 166 de índices, que está separada de la pluralidad de secciones 168 de datos, apuntando cada uno de los punteros a datos seleccionados en la pluralidad de secciones 168 de datos; y almacenar la lista de palabras en una sección 162 de lista de palabras separada de la pluralidad de secciones 168 de datos y de la sección 166 de índices, teniendo la lista de palabras información para identificar los correspondientes punteros relacionados con una palabra seleccionada. Si se desea, los valores de identificación pueden almacenarse en la sección 164 de tabla índice, en la que cada valor de identificación corresponde a una palabra de la sección 162 de lista de palabras y está asociado con un puntero en la sección 166 de índices. De forma similar, pueden incluirse indicaciones de clasificación en los punteros para clasificar la información de la palabra.
La estructura del léxico 22 resulta particularmente útil cuando es deseable obtener información de varios léxicos. En general, los datos de múltiples léxicos para una palabra particular pueden combinarse, ignorarse o seleccionarse como se desee. Ejemplos de combinación de información de léxico de varios léxicos existen en una implementación en la que un léxico central o base contiene una primera cantidad de información sobre entradas de palabras, un segundo léxico incluye una segunda cantidad de información sobre las entradas de palabras para un dominio particular y un tercer léxico incluye una tercera cantidad de información sobre las entradas de palabras según determina el usuario.
La Fig. 4 ilustra esquemáticamente cómo puede obtenerse de múltiples léxicos información para una entrada de palabra particular. En la Fig. 4, los léxicos (representados solamente por las secciones de datos, pero, por lo demás, de los que se ilustran algunas de sus secciones, o todas, en la Fig. 3) están organizados en filas e indicados en 180, 181, 182 y 183. Las secciones individuales de datos (correspondientes a las secciones 168) están representadas verticalmente en la Fig. 4 y, en este aspecto ilustrativo, hay un máximo de seis secciones 190, 191, 192, 193, 194 y 195 de datos que pueden ser objeto de acceso en los cuatro léxicos 180-183. Obsérvese que no es necesario que cada léxico 180-183 incluya todas las secciones 190-195 de datos y, en muchos casos prácticos, no existiría tal correspondencia entre todas las secciones de datos de todos los léxicos.
En la Fig. 4, se usa la notación Xy para indicar datos en una sección de léxico, denotando X una de las secciones 190-195 de datos y denotando Y el léxico 180-183. Por ejemplo, el léxico 180 comprende las secciones de datos 190180, 193180 y 195180.
Dado que los datos de los léxicos 180-183 han sido organizados en secciones 190-195 que tienen el mismo tipo de contenido, la información puede ser combinada o seleccionada fácilmente en los léxicos 180-183. Puede obtenerse la información para una entrada de palabra dada examinando la información en el primer léxico 180 y luego avanzando a la misma sección de datos de los otros léxicos 181-183 según se necesite. En un aspecto, los datos a recuperar son controlados por un conjunto definido en tiempo de ejecución de tipos de sección deseados. Una variable determina si leer o no leer datos para una entrada de un léxico. Una segunda variable determina si combinar o sobrescribir datos de entradas leídas previamente de la correspondiente sección de los otros léxicos examinados. Esquemáticamente, puede considerarse que los léxicos están “apilados” y que la información se obtiene leyendo la sección 190-195 de datos del léxico superior de la pila y luego proseguir secuencialmente hacia abajo en la pila, siguiendo las reglas en cuanto a si leer o no y en cuanto a si seleccionar, ignorar, sobrescribir o combinar. La estructura de léxico ilustrada en la Fig. 3 permite al implementador escoger cómo se combinan los datos de un tipo dado de sección con los datos de la misma sección en otros léxicos, o los anulan.
En la Fig. 4, la información 186 obtenida de los léxicos 180-183 comprende información correspondiente a las secciones 190180, 191181, 192183, 193180, 194183 y 195180 + 181 + 182. En este ejemplo, los datos para las secciones 190, 191, 193 y 194 se obtienen simplemente examinando los léxicos 180-183 en orden sección a sección hasta que se encuentra un indicador de parada en una de las secciones de datos. Por ejemplo, aunque tanto el léxico 180 como el 183 tienen información en la sección 190, solo se recupera la información del léxico 180 porque se encontró un indicador de parada en la sección 190180. En tiempo de ejecución, esto hace que la información de la sección 190183 sea ignorada. En cambio, se combina entre sí la información de las secciones 195180, 195181 and 195182 para formar la información 195180 + 181 + 182 porque no se encontró un indicador de parada hasta que se examinó la sección 195182. Si se desea, la información en las secciones de todos los léxicos puede ser combinada, ignorada o, si no, seleccionarse con base en reglas implementadas por el analizador 20 de textos o por un módulo de interfaz, no mostrado, que accede al léxico 22 con base en peticiones del analizador 20 de textos. Por ejemplo, tales reglas pueden indicar que una sección particular de un léxico particular ha de usarse siempre, con independencia de si hay información en secciones correspondientes de otros léxicos. Esto se representa en la Fig. 4, en la que, aunque hay información presente en el léxico 182, y al menos la sección 192 es examinada en primer lugar porque está más alta en la pila, se obtiene la información de la sección 192 del léxico 183. Sin embargo, la selección de datos también
puede realizarse por entrada de palabra, por ejemplo usando los punteros de parada, tal como se ha descrito en lo que antecede.
En resumen, se ha descrito una estructura mejorada de léxico que proporciona flexibilidad y eficiencias no disponibles anteriormente. La sección de índices y la pluralidad de secciones de datos permiten que el léxico se
5 adapte para cuadrar con las necesidades del sistema procesador de textos y/o los recursos disponibles del ordenador. La estructura mejorada de datos también permite que los datos de múltiples léxicos sean objeto de acceso selectivo y/o combinados según se desee.
Aunque la presente invención ha sido descrita con referencia a aspectos preferentes, los expertos en la técnica reconocerán que pueden efectuarse cambios en forma y detalla sin apartarse del ámbito de la invención.

Claims (11)

  1. REIVINDICACIONES
    1. Un medio de almacenamiento legible por ordenador que tiene una pluralidad de léxicos (180-183) para almacenar información de palabras y adaptado para su uso en un analizador (20) de textos en un sistema (10) de tratamiento del lenguaje, comprendiendo cada léxico:
    5 una sección (162) de lista de palabras para almacenar una pluralidad de palabras; un conjunto de secciones (168A -168P; 190 - 195) de datos que se corresponde con cada palabra de la lista de palabras, almacenando las secciones de datos información seleccionada diferente sobre la correspondiente palabra de la lista de palabras; y para cada palabra de la lista de palabras, una pluralidad de punteros almacenados en una tabla (166) de
    10 índices aparte de los conjuntos de secciones de datos, apuntando cada uno de los punteros a una sección de datos diferente relacionada con información diferente sobre la palabra correspondiente, incluyendo cada uno de los punteros una primera indicación de a qué sección de datos acceder, una segunda indicación de un valor de desplazamiento relacionado con la información almacenada en el mismo y una tercera indicación de una clasificación de la palabra;
    15 en el que las secciones (190-195) de datos de cada uno de los léxicos (180-183) que tienen información similar son accesibles selectivamente para obtener información de las mismas, y en el que dicha pluralidad de léxicos que tienen secciones de datos con información similar permite:
    obtener la información de palabras de al menos dos secciones (195180, 195181, 195182) de datos que tienen información similar para combinar la información (195180-181+182) obtenida de palabras, siendo
    20 dichas al menos dos secciones (195180, 195181, 195182) de datos de al menos dos léxicos diferentes (180-182), u obtener la información de palabras (192182) de al menos dos secciones (192182, 192183) de datos que tienen información similar y luego usar solo la información de palabras obtenida de una sección (192182) de datos, siendo dichas al menos dos secciones (192182, 192183) de datos de al menos dos léxicos
    25 diferentes (182-183).
  2. 2.
    El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que la sección de lista de palabras es una estructura de datos trie.
  3. 3.
    El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que la identificación es un valor de desplazamiento almacenado en la sección de lista de palabras.
    30 4. El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que cada léxico comprende, además, una sección (164) de tabla índice para almacenar cada una de las identificaciones correlacionadas con palabras de la sección de lista de palabras, teniendo cada palabra de la sección de lista de palabras una entrada correspondiente en la sección de la tabla índice.
  4. 5. El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que una sección de la pluralidad 35 de secciones de datos almacena información relacionada con la verificación ortográfica.
  5. 6.
    El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que una sección de la pluralidad de secciones de datos almacena información relacionada con la morfología.
  6. 7.
    El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que una sección de la pluralidad de secciones de datos almacena información relacionada con la lingüística.
    40 8. El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que una sección de la pluralidad de secciones de datos almacena información que indica que una palabra pertenece a una expresión de múltiples palabras.
  7. 9. El medio de almacenamiento legible por ordenador de la reivindicación 1 en el que dos secciones de datos de la pluralidad de secciones de datos almacenan por separado información seleccionada del grupo que consiste
    45 en información de verificación ortográfica, información morfológica, información lingüística e información de expresiones de múltiples palabras.
  8. 10. Un procedimiento implementado por ordenador para obtener información de palabras accediendo a una pluralidad de léxicos (180-183), estando adaptado cada léxico para ser usado con un analizador (20) de textos en un sistema (10) de tratamiento del lenguaje, en el que cada léxico almacena información de una palabra
    50 perteneciente a una pluralidad de palabras, comprendiendo cada léxico:
    una sección (162) de lista de palabras que almacena la pluralidad de palabras; conjuntos de secciones (168A -168P; 190 - 195) de datos, correspondiéndose cada conjunto de secciones de datos con una palabra individual en la sección de lista de palabras, almacenando cada sección de datos entre un conjunto de secciones de datos información seleccionada diferente sobre la correspondiente
    55 palabra de la lista de palabras; y
    una sección (166) de índices que almacena una pluralidad de punteros aparte de los conjuntos de secciones de datos, correspondiéndose cada pluralidad de punteros con una palabra individual, apuntando cada puntero a datos en una sección de datos, incluyendo cada uno de los punteros una primera indicación de a qué sección de datos acceder, una segunda indicación de un valor de desplazamiento relacionado con
    5 la información almacenada en el mismo y una tercera indicación de una clasificación de la palabra, comprendiendo el procedimiento:
    acceder selectivamente a secciones (190-195) de datos de cada uno de los léxicos (180-183) que tienen información similar y obtener información de los mismos, en el que dicha pluralidad de léxicos que tienen secciones de datos con información similar permite:
    10 obtener la información de palabras de al menos dos secciones (195180, 195181, 195182) de datos que tienen información similar para combinar la información (195180+181+182) obtenida de palabras, siendo dichas al menos dos secciones (195180, 195181, 195182) de datos de al menos dos léxicos diferentes (180-182), u obtener la información de palabras (192182) de al menos dos secciones (192182, 192183) de datos que
    15 tienen información similar y luego usar solo la información de palabras obtenida de una sección (192182) de datos, siendo dichas al menos dos secciones (192182, 192183) de datos de al menos dos léxicos diferentes (182-183); acceder a la sección de lista de palabras de al menos un léxico de dicha pluralidad de léxicos en función de dicha palabra para determinar una identificación de puntero para la sección de índices usando la identificación de puntero de dicho al menos un léxico para obtener un puntero en la
    20 sección de índices; usar el puntero de dicho al menos un léxico para determinar qué sección de datos de la pluralidad de secciones de datos tiene información sobre la palabra dada y del lugar en el que la información está localizada en la sección de datos.
  9. 11. El procedimiento implementado por ordenador de la reivindicación 10 en el que la identificación es un valor de 25 desplazamiento almacenado en la sección de lista de palabras.
  10. 12. El procedimiento implementado por ordenador de la reivindicación 10 en el que cada léxico incluye una sección
    (164) de tabla índice que almacenada cada una de las identificaciones correlacionadas con palabras de la sección de lista de palabras, y en el que acceder a la sección de lista de palabras en función de dicha palabra para determinar una identificación de puntero para la sección de índices incluye, además, el uso de la sección
    30 de lista de palabras para encontrar una entrada correspondiente en la sección de la tabla índice que tenga la identificación correspondiente.
  11. 13. El procedimiento implementado por ordenador de la reivindicación 13 en el que el acceso selectivo incluye obtener la información de palabras de secciones de datos similares de cada léxico hasta que se localiza un indicador de parada.
    35 14. El procedimiento implementado por ordenador de la reivindicación 13 en el que el acceso selectivo a las secciones de datos incluye el acceso secuencial a los léxicos en un orden seleccionado.
ES03008804T 2002-04-30 2003-04-23 Léxico con datos divididos en secciones y procedimiento de uso del mismo Expired - Lifetime ES2386631T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/137,456 US7490034B2 (en) 2002-04-30 2002-04-30 Lexicon with sectionalized data and method of using the same
US137456 2002-04-30

Publications (1)

Publication Number Publication Date
ES2386631T3 true ES2386631T3 (es) 2012-08-24

Family

ID=29249733

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03008804T Expired - Lifetime ES2386631T3 (es) 2002-04-30 2003-04-23 Léxico con datos divididos en secciones y procedimiento de uso del mismo

Country Status (8)

Country Link
US (1) US7490034B2 (es)
EP (1) EP1367501B1 (es)
JP (1) JP4724357B2 (es)
CY (1) CY1113100T1 (es)
DK (1) DK1367501T3 (es)
ES (1) ES2386631T3 (es)
PT (1) PT1367501E (es)
SI (1) SI1367501T1 (es)

Families Citing this family (205)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US7447627B2 (en) * 2003-10-23 2008-11-04 Microsoft Corporation Compound word breaker and spell checker
US7421386B2 (en) * 2003-10-23 2008-09-02 Microsoft Corporation Full-form lexicon with tagged data and methods of constructing and using the same
US7398210B2 (en) * 2003-10-23 2008-07-08 Microsoft Corporation System and method for performing analysis on word variants
US7548849B2 (en) * 2005-04-29 2009-06-16 Research In Motion Limited Method for generating text that meets specified characteristics in a handheld electronic device and a handheld electronic device incorporating the same
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US20070078644A1 (en) * 2005-09-30 2007-04-05 Microsoft Corporation Detecting segmentation errors in an annotated corpus
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US9633005B2 (en) 2006-10-10 2017-04-25 Abbyy Infopoisk Llc Exhaustive automatic processing of textual information
US8548795B2 (en) * 2006-10-10 2013-10-01 Abbyy Software Ltd. Method for translating documents from one language into another using a database of translations, a terminology dictionary, a translation dictionary, and a machine translation system
US9235573B2 (en) 2006-10-10 2016-01-12 Abbyy Infopoisk Llc Universal difference measure
US9645993B2 (en) 2006-10-10 2017-05-09 Abbyy Infopoisk Llc Method and system for semantic searching
US9047275B2 (en) 2006-10-10 2015-06-02 Abbyy Infopoisk Llc Methods and systems for alignment of parallel text corpora
US8214199B2 (en) * 2006-10-10 2012-07-03 Abbyy Software, Ltd. Systems for translating sentences between languages using language-independent semantic structures and ratings of syntactic constructions
US8145473B2 (en) 2006-10-10 2012-03-27 Abbyy Software Ltd. Deep model statistics method for machine translation
US9984071B2 (en) 2006-10-10 2018-05-29 Abbyy Production Llc Language ambiguity detection of text
US20080086298A1 (en) * 2006-10-10 2008-04-10 Anisimovich Konstantin Method and system for translating sentences between langauges
US8195447B2 (en) * 2006-10-10 2012-06-05 Abbyy Software Ltd. Translating sentences between languages using language-independent semantic structures and ratings of syntactic constructions
US8074172B2 (en) 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US8959011B2 (en) 2007-03-22 2015-02-17 Abbyy Infopoisk Llc Indicating and correcting errors in machine translation systems
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
CN101779200B (zh) 2007-06-14 2013-03-20 谷歌股份有限公司 词典词和短语确定方法和设备
US8812296B2 (en) 2007-06-27 2014-08-19 Abbyy Infopoisk Llc Method and system for natural language dictionary generation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8232973B2 (en) 2008-01-09 2012-07-31 Apple Inc. Method, device, and graphical user interface providing word recommendations for text input
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US9262409B2 (en) 2008-08-06 2016-02-16 Abbyy Infopoisk Llc Translation of a selected text fragment of a screen
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
US20100235780A1 (en) * 2009-03-16 2010-09-16 Westerman Wayne C System and Method for Identifying Words Based on a Sequence of Keyboard Events
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
WO2011089450A2 (en) 2010-01-25 2011-07-28 Andrew Peter Nelson Jerram Apparatuses, methods and systems for a digital conversation management platform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US8971630B2 (en) 2012-04-27 2015-03-03 Abbyy Development Llc Fast CJK character recognition
US8989485B2 (en) 2012-04-27 2015-03-24 Abbyy Development Llc Detecting a junction in a text line of CJK characters
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
KR20150104615A (ko) 2013-02-07 2015-09-15 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
CN105027197B (zh) 2013-03-15 2018-12-14 苹果公司 训练至少部分语音命令系统
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3008641A1 (en) 2013-06-09 2016-04-20 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
AU2014278595B2 (en) 2013-06-13 2017-04-06 Apple Inc. System and method for emergency calls initiated by voice command
CN105453026A (zh) 2013-08-06 2016-03-30 苹果公司 基于来自远程设备的活动自动激活智能响应
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
RU2592395C2 (ru) 2013-12-19 2016-07-20 Общество с ограниченной ответственностью "Аби ИнфоПоиск" Разрешение семантической неоднозначности при помощи статистического анализа
RU2586577C2 (ru) 2014-01-15 2016-06-10 Общество с ограниченной ответственностью "Аби ИнфоПоиск" Фильтрация дуг в синтаксическом графе
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9606983B1 (en) * 2014-08-27 2017-03-28 Amazon Technologies, Inc. Human readable mechanism for communicating binary data
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
RU2596600C2 (ru) 2014-09-02 2016-09-10 Общество с ограниченной ответственностью "Аби Девелопмент" Способы и системы обработки изображений математических выражений
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9606986B2 (en) 2014-09-29 2017-03-28 Apple Inc. Integrated word N-gram and class M-gram language models
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9626358B2 (en) 2014-11-26 2017-04-18 Abbyy Infopoisk Llc Creating ontologies by analyzing natural language texts
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
US9866393B1 (en) 2014-12-22 2018-01-09 Amazon Technologies, Inc. Device for creating reliable trusted signatures
US10110385B1 (en) 2014-12-22 2018-10-23 Amazon Technologies, Inc. Duress signatures
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US9819673B1 (en) 2015-06-24 2017-11-14 Amazon Technologies, Inc. Authentication and authorization of a privilege-constrained application
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11010553B2 (en) * 2018-04-18 2021-05-18 International Business Machines Corporation Recommending authors to expand personal lexicon
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
CN110795173A (zh) * 2019-10-30 2020-02-14 深圳市元征科技股份有限公司 一种数据处理方法、装置和电子设备及可读存储介质

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4384329A (en) * 1980-12-19 1983-05-17 International Business Machines Corporation Retrieval of related linked linguistic expressions including synonyms and antonyms
US4724523A (en) * 1985-07-01 1988-02-09 Houghton Mifflin Company Method and apparatus for the electronic storage and retrieval of expressions and linguistic information
JPS608980A (ja) * 1983-06-28 1985-01-17 Brother Ind Ltd 電子辞書
US4736296A (en) * 1983-12-26 1988-04-05 Hitachi, Ltd. Method and apparatus of intelligent guidance in natural language
JPS60245083A (ja) * 1984-05-18 1985-12-04 Brother Ind Ltd 電子辞書
JPS6126176A (ja) * 1984-07-17 1986-02-05 Nec Corp 言語処理用辞書
US4771385A (en) * 1984-11-21 1988-09-13 Nec Corporation Word recognition processing time reduction system using word length and hash technique involving head letters
US4868750A (en) * 1987-10-07 1989-09-19 Houghton Mifflin Company Collocational grammar system
US5056021A (en) * 1989-06-08 1991-10-08 Carolyn Ausborn Method and apparatus for abstracting concepts from natural language
JPH03161727A (ja) * 1989-11-20 1991-07-11 Fuji Photo Film Co Ltd カメラの主要被写体検出装置
US5708829A (en) * 1991-02-01 1998-01-13 Wang Laboratories, Inc. Text indexing system
JP2875075B2 (ja) 1991-10-30 1999-03-24 シャープ株式会社 電子辞書
US5867812A (en) * 1992-08-14 1999-02-02 Fujitsu Limited Registration apparatus for compound-word dictionary
US6760695B1 (en) * 1992-08-31 2004-07-06 Logovista Corporation Automated natural language processing
US6278967B1 (en) * 1992-08-31 2001-08-21 Logovista Corporation Automated system for generating natural language translations that are domain-specific, grammar rule-based, and/or based on part-of-speech analysis
JPH0756957A (ja) * 1993-08-03 1995-03-03 Xerox Corp ユーザへの情報提供方法
US5611076A (en) * 1994-09-21 1997-03-11 Micro Data Base Systems, Inc. Multi-model database management system engine for databases having complex data models
US5715468A (en) * 1994-09-30 1998-02-03 Budzinski; Robert Lucius Memory system for storing and retrieving experience and knowledge with natural language
JP3003915B2 (ja) * 1994-12-26 2000-01-31 シャープ株式会社 単語辞書検索装置
JPH08323842A (ja) * 1995-06-02 1996-12-10 Tsutsunaka Plast Ind Co Ltd シートブロー成形品と成形方法
US5864863A (en) * 1996-08-09 1999-01-26 Digital Equipment Corporation Method for parsing, indexing and searching world-wide-web pages
US6081774A (en) * 1997-08-22 2000-06-27 Novell, Inc. Natural language information retrieval system and method
US5995992A (en) * 1997-11-17 1999-11-30 Bull Hn Information Systems Inc. Conditional truncation indicator control for a decimal numeric processor employing result truncation
US6298321B1 (en) * 1998-11-23 2001-10-02 Microsoft Corporation Trie compression using substates and utilizing pointers to replace or merge identical, reordered states
US6675169B1 (en) * 1999-09-07 2004-01-06 Microsoft Corporation Method and system for attaching information to words of a trie
JP3717730B2 (ja) * 1999-11-02 2005-11-16 セイコーインスツル株式会社 電子辞書
US6792418B1 (en) * 2000-03-29 2004-09-14 International Business Machines Corporation File or database manager systems based on a fractal hierarchical index structure

Also Published As

Publication number Publication date
EP1367501A3 (en) 2007-01-03
EP1367501A2 (en) 2003-12-03
SI1367501T1 (sl) 2012-09-28
PT1367501E (pt) 2012-08-08
JP2003345796A (ja) 2003-12-05
CY1113100T1 (el) 2016-04-13
DK1367501T3 (da) 2012-07-16
JP4724357B2 (ja) 2011-07-13
EP1367501B1 (en) 2012-06-13
US20030204392A1 (en) 2003-10-30
US7490034B2 (en) 2009-02-10

Similar Documents

Publication Publication Date Title
ES2386631T3 (es) Léxico con datos divididos en secciones y procedimiento de uso del mismo
US8041557B2 (en) Word translation device, translation method, and computer readable medium
US8473501B2 (en) Methods, computer systems, software and storage media for handling many data elements for search and annotation
US7739104B2 (en) System and method for natural language processing and using ontological searches
US7421386B2 (en) Full-form lexicon with tagged data and methods of constructing and using the same
US7024351B2 (en) Method and apparatus for robust efficient parsing
JP2005092883A (ja) 中国語の単語分割
Jabbar et al. A survey on Urdu and Urdu like language stemmers and stemming techniques
Taghi-Zadeh et al. A new hybrid stemming method for Persian language
US20040034656A1 (en) Information retrieval and encoding via substring-number mapping
Czarnecki et al. Mining biological networks from full-text articles
Yeshambel et al. Evaluation of corpora, resources and tools for Amharic information retrieval
JP2005242416A (ja) 自然言語文の検索方法および検索装置
Singh et al. Query relational databases in Punjabi language
JP2007200252A (ja) 省略語生成・妥当性評価方法、同義語データベース生成・更新方法、省略語生成・妥当性評価装置、同義語データベース生成・更新装置、プログラム、記録媒体
Padma et al. Development of morphological stemmer, analyzer and generator for Kannada nouns
Nuzzolese et al. MACJa: metadata and citations jailbreaker
Mon et al. Myanmar language search engine
Vajda An introduction to languages of the world
Rajalingam A rule based iterative affix stripping stemming algorithm for Tamil
Haaland A maximum entropy approach to proper name classification for Norwegian
Lertnattee et al. Using Multicultural Herbal Information to Create Multi-pattern Herb Name Retrieval System
Kadam Develop a Marathi Lemmatizer for Common Nouns and Simple Tenses of Verbs
Simons et al. A model for interoperability: XML documents as an RDF database
Yoon et al. Customizing the XTAG system for efficient grammar development for Korean