MX2007013357A - Metodo y sistema para generar sugerencias ortograficas. - Google Patents

Metodo y sistema para generar sugerencias ortograficas.

Info

Publication number
MX2007013357A
MX2007013357A MX2007013357A MX2007013357A MX2007013357A MX 2007013357 A MX2007013357 A MX 2007013357A MX 2007013357 A MX2007013357 A MX 2007013357A MX 2007013357 A MX2007013357 A MX 2007013357A MX 2007013357 A MX2007013357 A MX 2007013357A
Authority
MX
Mexico
Prior art keywords
words
candidate
substitution
word
entered
Prior art date
Application number
MX2007013357A
Other languages
English (en)
Inventor
Douglas W Potter
Edward C Hart Jr
Hisakazu Igarashi
Patricia M Schmid
William D Ramsey
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 MX2007013357A publication Critical patent/MX2007013357A/es

Links

Classifications

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

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)
  • Document Processing Apparatus (AREA)

Abstract

Un metodo implementado por computadora para sugerir la sustitucion de palabras para palabras de una cadena. En el metodo, se recibe una cadena ingresada de palabras ingresadas. Las palabras ingresadas se hacen coincidir entonces con palabras tematicas de una tabla candidata. Despues, se extraen las palabras de sustitucion candidatas y las puntuaciones de la tabla candidata correspondiente con las palabras tematicas coincididas. Cada puntuacion es indicativa de una probabilidad de que la palabra ingresada deba sustituirse por la palabra de sustitucion candidata correspondiente. Finalmente, la sustitucion de las palabras ingresadas por sus palabras de sustitucion candidatas correspondientes se sugiere selectivamente con base en las puntuaciones para las palabras de sustitucion. Otro aspecto de la presente invencion se dirige a un sistema de correccion ortografica que se configura para implementar el metodo.

Description

ETODO Y SISTEMA PARA GENERAR SUGERENCI. ORTOGRÁFICAS CAMPO DE LA INVENCIÓN La presente invención en general se refiere a métodos y sistemas! de corrección ortográfica y, más particularmente, a métodos y sistemas de corrección ortográfica que se configuran para sugerir palabras! de sustitución para aquéllas de una cadena ingresada que se basan en las palabras en la cadena ingresada.
ANTEDEDENTES DE LA -NVENC.QN Entradas de texto, tales como aquéllas en documentos generados al utilizar una aplicación para procesamiento de palabras, pueden ¡contener muchos diferentes tipos de errores, incluyendo errores ortográficos. Los errores ortográficos que dan como resultado palabras no válidas por lo general se pueden manejar mediante un corrector ortográfico basado en un diccionario. Tales errores ¡ortográficos pueden ocurrir debido a un error tipográfico o por ignorancia de la ortografía de la palabra. Los correctores ortográficos basados en un diccionario comparajn las palabras en la entrada de texto con un diccionario de palabras e identifican las palabras en la entrada de texto que no se encuentrtan en el diccionario. Por lo general se sugieren una o más palabras de sustitución para la palabra con error ortográfico. Por ejemplo.j en la entrada de texto " f I y frm Boston", el corrector ortográfico identificaría "frm" como un error ortográfico. i Ojros tipos de errores ortográficos dan como resultado palabras, válidas que por lo general no se pueden detectar utilizando aplicaciones de corrección ortográfica tradicionales. Por ejemplo, el usuario jde la aplicación para procesamiento de palabras puede ingresan una palabra válida accidental como resultado de un error tipográfico o por ignorancia de la ortografía de la palabra deseada. Por ejen plo, en una entrada de texto "f I y form Boston", la palabra "form" e|s una palabra válida que las aplicaciones de corrección ortog ráfi|ca convencionales no indicarían, aunque la palabra es un error ortográfico de la palabra "from". La corrección de estos tipos de errofes ortográficos por lo general requiere un análisis del contexto en el que se utiliza la palabra. Aplicaciones de corrección ortográfica tradicionales por lo general basan las palabras de sustitución sugeridas para las palabras no válidas identificadas en una distancia de edición. La distancia de edición representa el cambio que se requiere para i formar una palabra alternativa válida. La palabra en el diccionario que tie?e la distancia de edición más corta a partir de la palabra i inválida' escrita a máquina es la primera palabra de sustitución que se sugiere al usuario. Por ejemplo, en la frase "f I y frm Boston", la mayoría de las aplicaciones de corrección ortográfica sugerirían "form" como la palabra de sustitución antes de que se sugiera la palabra correcta "from", debido a que el contexto de la palabra no se toma en' cuenta cuando se realiza la sugerencia. Para sugerir la palabra de sustitución más apropiada para el error ortográfico, se debe realizar un análisis del contexto en el que se encuentra el error ortográfico. En consecuencia, existe una necesidad de métodos y sistemas de corrección ortográfica mejorados que puedan analizar el contexto en el que se utilizan las palabras para proporcionar mejores sugerencias para las palabras con errores ortográficos y una deteccióp mejorada de palabras válidas que se utilizan de manera I incorrectia. Las modalidades de la presente invención proporcionan solucion s a estos y otros problemas, y ofrecen otras ventajas sobre la técnica anterior BREVE DESCRIPCIÓN DE LA INVENCIÓN Lá presente invención en general se refiere a métodos y sistema^ de corrección ortográfica que utilizan una tabla candidata que inciuye palabra temática y pares de palabras de sustitución candidatas y una puntuación para cada par, en el que están basadas las sugerencias de sustitución de palabras. U,n aspecto de la presente invención se relaciona con un método ' ¡mplementado por computadora para la sugerencia de palabras1 de sustitución para palabras de una cadena. En el método, se recibe una cadena ingresada de palabras ingresadas. Las palabras; ingresadas se hacen coincidir entonces con las palabras temáticas de una tabla candidata. Después, se extraen las palabras de sustitución candidatas y las puntuaciones candídatas de la tabla candidatá que corresponde con las palabras temáticas coincididas. Cada puntuación candidata es indicativa de una probabilidad de que la palabra ingresada debe sustituirse por la palabra de sustitución candidato correspondiente. Finalmente, la sustitución de las palabras ingresadas por sus palabras de sustitución candidatas correspondientes se sugiere selectivamente con base en las i puntuaciones candidatas para las palabras de sustitución. Otro aspecto de la presente invención se dirige a un sistema de corrección ortográfica para la sugerencia de palabras de sustitución para palabras ingresadas de una cadena ingresada. El sistema ¡ncluye un generador candidato y un procesador ortográfico contextual candidato. El generador candidato incluye un resultado de una palabra de sustitución candidata y una puntuación candidata correspondiente para cada una de las palabras ingresadas que coincide? con una palabra temática de una tabla candidata. Cada puntuación candídata es indicativa de una probabilidad de que la palabra ingresada debe sustituirse por la palabra de sustitución candidata correspondiente. El procesador ortográfico contextual ¡ncluye lin resultado selectivo de palabras de sustitución candidatas para la? palabras ingresadas con base en las puntuaciones candidatás correspondientes.
Aún otro aspecto de la presente invención se dirige a un método par la formación de una tabla candidata para su uso en un sistema ! de corrección ortográfica para sugerir palabras de sustitución para palabras ingresadas de una cada ingresada. En el método, 'se proporciona un diccionario de palabras. Después, se comparan las palabras temáticas del diccionario con las otras palabras del diccionario. Se identifican entonces palabras de sustitución candidatas para las palabras temáticas con base en la comparación. Se forma entonces una tabla candidata que incluye pares dq las palabras temáticas identificadas y de sus palabras de ¡ sustitución candidatas correspondientes. Finalmente, se hace una puntuación de la tabla candidata en un medio que se puede leer por computadora. Otras características y beneficios que caracterizan las modalidades de la presente invención serán aparentes a partir de la lectura de la siguiente descripción detallada y de la revisión de los dibujos asociados.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La Figura 1 es un diagrama de bloques de un entorno informático en el que se puede practicar la presente invención. Lá Figura 2 es un diagrama de flujo que ilustra un método para la sugerencia de palabras de sustitución para palabras de una cadena, de acuerdo con las modalidades de la invención.
Lá Figura 3 es un diagrama de bloques de un sistema de corrección ortográfica, de acuerdo con las modalidades de la i n ve nció ifi . La Figura 4 es un diagrama de flujo que ilustra un método para la generación de una tabla candidata para su uso en un sistema de correjcción ortográfica para sugerir palabras de sustitución para palabras! ingresadas de una cadena ingresada, de acuerdo con las modalidades de la invención.
DESCRIPCIÓN DETALLADA DE LAS MOD LIDADES ILUSTRATIVAS La presente invención en general se refiere a un método y sistema ¡ de corrección ortográfica para proporcionar sugerencias precisas de palabras de sustitución para palabras ingresadas de una cada ingresada que no son válidas. Adicionalmente, el método y sistema ¡de corrección ortográfica de la presente invención puede proporcionar sugerencias de palabras de sustitución para palabras ingresadas válidas de una cadena ingresada que se utilizan de manera ¡incorrecta. Las Modalidades de la presente invención basan las sugerencias de palabras de sustitución en el contexto en el que se utilizan las palabras ingresadas. Ajntes de describir en detalle la presente invención, se proporcionará una discusión de los entornos informáticos ejemplares en los que se puede utilizar la presente invención.
Entorno Ir-foprmá-ico Ejemplar La Figura 1 ilustra un ejemplo de un entorno 100 de sistema ?nformát?¡co adecuado en el que se puede implementar la invención I El entorno 100 de sistema informático sólo es un ejemplo de un entorno informático adecuado y no pretende sugerir ninguna limitacióh en lo que se refiere al alcance de uso o funcionalidad de la invención El entorno 100 informático tampoco debe interpretarse como que tiene alguna dependencia o requerimiento en relación con alguno o combinación de los componentes ilustrados en el entorno I 100 opetjativo ejemplar Lá invención se puede operar con otros numerosos entornos o configuraciones de sistema informáticos de aplicación especial o de aplicación general Ejemplos de sistemas, entornos y/o configuraciones informáticas que pueden ser adecuadas para su uso con la invención incluyen, pero no se limitan a, computadoras personales, servidores, dispositivos de computadoras portátiles o de mano, sistemas de multiprocesadores, sistemas basados en microprocesadores, descodificadores de señales, electrónica de consumidor programable, PCs en red, minicomputadoras, i computajdoras centrales, entornos informáticos distribuidos que incluyan cualquiera de los sistemas o dispositivos anteriores, y similares Lá invención puede describirse en el contexto general de las instrucciones ejecutables por computadora, tales como módulos de program'a, que se ejecutan mediante una computadora En general, los módulos de programa incluyen rutinas, programas, objetos, componentes, estructuras de datos, etc. que realizan tareas particulares o que implantan tipos de datos abstractos particulares.
La ¡nven'ción también puede practicarse en entornos informáticos distribuidos donde las tareas se realizan mediante dispositivos de procesamiento remotos que se enlazan a través de una red de comunicaciones En un ambiente informático distribuido, los módulos de programa pueden localizarse tanto un medio de almacenamiento informátibo tanto remoto como local que incluya dispositivos de almacenamiento de memoria Có^n referencia a la Figura 1, un sistema ejemplar para implantar la invención incluye un dispositivo informático de aplicacióin general en forma de una computadora 110. Los componentes de la computadora 110 pueden incluir, pero no se limitan a¡ , una unidad 120 de procesamiento, una memoria 130 de sistema y un conductor común 121 del sistema que acople varios compon ejn tes de sistema que incluyan la memoría de sistema hasta la unidad 1 '20 de procesamiento. El conductor común 121 del sistema puede ser de varios tipos de estructuras de conductor común, incluyendo un conductor común de memoria o un controlador de memoria,! un conductor común periférico y un conductor común local que utilice cualquiera de una variedad de arquitecturas del conductor común. A modo de ejemplo, y no de limitación, tales arquitecturas incluyen ' conductor común de Arquitectura Industrial Normalizada (ISA), conductor común de Arquitectura de Microcanal (MCA), conductor común de Arquitectura Normalizada Industrial Avanzada (EISA), Conductor común local de la Asociación para estándares Electrónicos y de Video (VESA), y conductor común para Interconexión de Componentes Periféricos (PCI), también conocido como conductor común de mézanme. La. computadora 110 típicamente incluye una variedad de medios que se pueden leer por computadora. Los medios que se pueden l¡eer por computadora pueden ser cualquier medio disponible al que se pueda tener acceso medíante la computadora 110 e ¡ncluye medios tanto volátiles y no volátiles como medios extraíbles y no extraíblejs A modo de ejemplo, y no de limitación, los medios que se pueden leer por computadora pueden comprender medios de almacenamiento por computadora y medios de comunicación. El medio die almacenamiento por computadora incluye tanto medios volátiles' y no volátiles como extraíbles y no extraíbles implantados en cualquier método o tecnología para el almacenamiento de informac¡?ón, tal como instrucciones ejecutables por computadora, estructuras de datos, módulos de programa u otros datos. El medio de almacenamiento de computadora incluye, pero no se limita a, memorias RAM, ROM, EEPROM, memoria flash u otra tecnología de memoria, CD-ROM, discos digitales de video (DVD) u otro almacenamiento de disco óptico, casetes magnéticos, cinta magnética, almacenamiento de disco magnético u otros dispositivos de almacenamiento, o cualquier otro medio que pueda utilizarse para almacenar la información deseada y al que se pueda tener acceso mediante' la computadora 110 El medio de comunicación típicamente representa instrucciones ejecutables por computadora, estructuras I de datosj, módulos de programa u otros datos en una señal de datos modulada, tal como un WAV portador u otro mecanismo de trasporte I e incluye cualquier medio de entrega de información El término "señal de datos modulada" significa una señal que tiene una o más de sus características ajustadas o cambiadas de tal manera que codifique información en la señal A modo de ejemplo, y no de hmitació'n, el medio de comunicación incluye medios alámbricos, tal como unía red alámbrica o una conexión alámbrica directa, y medios inalámbpicos, tales como acústicos, RF, infrarrojos y otros medios inalámbricos También deben incluirse combinaciones de cualquiera de los anteriores dentro del alcance de los medios que se pueden leer por ¡computadora La memoria 130 de sistema incluye medios de almacenamiento I por computadora en forma de memoria volátil y/o no volátil, tal como la memoria 131 sólo de lectura (ROM) y la memoria 132 de acceso aleatopf (RAM) Un sistema 133 básico de entrada/salida (BIOS), que contiene las rutinas básicas que ayudan a transferir información entre lo elementos dentro de la computadora 110, tal como durante el inicio, se almacena típicamente en la ROM 131 La RAM 132 i típicamente contiene datos y/o módulos de programa a los que se tiene acceso inmediatamente y/o sobre los que se opera en ese momentp mediante la unidad 120 de procesamiento A modo de ejemplo', y no de limitación, la Figura 1 ilustra el sistema 134 operativo, los programas 135 de aplicación, otros módulos 136 de programa y datos 137 de programa. L computadora 110 también puede incluir otros medios de almacenamiento por computadora volátiles y no volátiles, extraíbles y no extraíbles A modo de ejemplo solamente, la Figura 1 ilustra una unidad 1 ¡41 de disco duro que lee de o escribe a un medio magnético no volatíjl, no extraíble, una unidad 151 de disco magnético que lee de o escribe a un disco 152 magnético no volátil, extraíble, y una unidad 155 de disco óptico que lee de o escribe a un disco 156 óptico n© volátil, extraíble, tal como un CD ROM u otro medio óptico. Otros rriedios de almacenamiento por computadora volátiles/no volátiles, extraíbles/no extraíbles que se pueden utilizar en el entorno ¡operativo ejemplar incluyen, pero no se limitan a, casetes de cinta m¡agnética, tarjetas de memoria flash, discos versátiles digitales,, cintas de video digitales, RAM de estado sólido, ROM de estado ¿olido y similares. La unidad 141 de disco duro se conecta típicame|nte al conductor común 121 del sistema a través de una interfase de memoria no extraíble, tal como la interfase 140, y la unidad ¡151 de disco magnético y unidad 155 de disco óptico se conectan típicamente al conductor común 121 del sistema mediante una interfase de memoria extraíble, tal como la interfase 150. Las unidades y sus medios de almacenamiento por computa|dora, discutidos en lo anterior e ilustrados en la Figura 1, proporcionan un almacenamiento de instrucciones ejecutables de computajdora, estructuras de datos, módulos de programa y otros datos para la computadora 110 En la Figura 1, por ejemplo, la i unidad 141 de disco duro se ilustra como sistema 144 operativo de almacenamiento, programas 145 de aplicación, otros módulos 146 de programa y datos 147 de programa Observe que estos componentes pueden ser ya sea los mismos o diferentes del sistema 134 operativo, programa 135 de aplicación, otros módulos 136 de programa y datos 137 de programa Se les da números diferentes aquí al sistema 144 operativo, a los programas 145 de aplicación, a otros mo dulos 146 de programa y a los datos 147 de programa para ilustrar que, como mínimo son copias diferentes I Ur¡? usuario puede ingresar comandos e información en la computadora 110 a través de dispositivos de entrada, tales como un ! teclado 162, un micrófono 163 y un dispositivo 161 de indicación, tal como urji ratón, bola de mando o tablero gráfico táctil Otros ¡ dispositivos de entrada (no mostrados) pueden incluir una palanca de i mando, ijnando para juegos, antena parabólica, escaner o similares Estos y otros dispositivos de entrada por lo general se conectan a la i unidad i 20 de procesamiento a través de una interfase 160 de entrada de usuario que se acopla al conductor común del sistema, I pero pueden conectarse mediante otras interfaces y estructuras de conductor común, tal como un puerto paralelo, puerto para juegos o ¡ un conductor común de serie universal (USB) Un monitor 191 u otro tipo de dispositivo de despliegue también se conecta al conductor común i 21 del sistema mediante una interfase, tal como una i interfasej 190 de video Ademas del monitor, las computadoras también pueden incluir otros dispositivos de salida periféricos, tales como bocinas 197 e impresora 196, los cuales pueden conectarse a través dé una interfase 190 periférica de salida. La computadora 110 puede operar en un entorno conectado a la red, tilizando conexiones lógicas a una o más computadoras remotas,1 tal como una computadora 180 remota. La computadora 180 remota puede ser una computadora personal, un dispositivo portátil, un servidor, un enrutador, una PC en red, un dispositivo de extremo u otro nédo de red común, y típicamente incluye muchos o todos los elementos descritos en lo anterior en relación con la computadora 110. Las conexiones lógicas representadas en la Figura 1 incluyen una red de área local (LAN) 171 y una red de área ancha (WAN) 173, pero también pueden incluir otras redes. Tales entornos de conexiones de redes son comunes en oficinas, redes informáticas para todja la empresa, redes internas y la Internet. Cuando se utiliza en un entorno de conexión de red LAN, la computadora 110 se conecta a la LAN 171 a través de una interfase de red b adaptador 170. Cuando se utiliza en un entorno de red WAN, la computadora 110 típicamente incluye un módem 172 u otros medios para establecer comunicaciones en la WAM 173, tal como la Internet.; El módem 172, el cual puede ser interno o externo, puede conectarse al conductor común 121 del sistema mediante la interfase 160 de entrada de usuario, u otro mecanismo apropiado. En un entorno 'conectado a la red, los módulos de programa representados I en relaóión con la computadora 110, o porciones de los mismos, pueden almacenarse en el dispositivo de almacenamiento de memoria remota ¡A modo de ejemplo, y no de limitación, la Figura 1 ilustra I programas 185 de aplicación remotos que residen en la computadora i 180 remota Se apreciará que las conexiones de red mostradas son i ejemplares y que se pueden utilizar otros medios para establecer un enlace de comunicaciones entre las computadoras Debe observarse que la presente invención puede llevarse a cabo en un sistema de computadora tal como aquél descrito con respecto! a la Figura 1 Sin embargo, la presente invención puede llevársela cabo en un servidor, una computadora dedicada al manejo de mensajes, o en un sistema distribuido en el que porciones diferentes de la presente invención se lleven a cabo en partes diferentes del sistema informático distribuido Método y Sistema de Corrección Ortográfica C¡omo se menciono en lo anterior, la presente invención en general ¡se refiere a un método y sistema de corrección ortográfica i para proporcionar sugerencias precisas de palabras de sustitución para palabras ingresadas de una cadena ingresada que no son válidas Adicionalmente, el método y sistema de corrección ortográfica de la presente invención pueden proporcionar I sugerencias de palabras de sustitución para palabras ingresadas válidas ¡ de una cadena ingresada que se utilizan de manera incorrecita Las sugerencias de palabras de sustitución proporcionadas por la presente invención por lo general se basan en el contento en el cual se utilizan las palabras ingresadas. I Adicionalmente, la presente invención proporciona un método basado én datos para corrección ortográfica. Como resultado, las modalidades del método y sistema de corrección ortográfica no requieren el mismo tipo de especializaron lingüística teórica que los I correctoifes gramaticales basados en reglas o sintaxis. La implantabíón también es mucho más simple que aquélla de los sistemas; basados en reglas, con costos de seguridad y de mantenimiento más bajos. Adicionalmente, el mecanismo para I generar ¡sugerencias por lo general es independiente del lenguaje y puede adaptarse a múltiples idiomas. Las modalidades de la presente invención se discutirán con referencia a las Figuras 2 y 3. La Figura 2 es un diagrama de flujo que i I u s|t r a un método para sugerir palabras de sustitución para palabras! de una cadena, de acuerdo con las modalidades de la invención La Figura 3 es un diagrama de bloques de un sistema 200 de corrección ortográfica, de acuerdo con las modalidades de la I invención, que se configura para implantar el método. I Eh la etapa 202 del método, el sistema 200 de corrección ortográfica recibe una cadena 204 ingresada de palabras ingresadas. La cadena 204 ingresada puede ingresarse inicialmente por un usuario ¡ de la aplicación 206 para procesamiento de palabras medíant un teclado, un micrófono (es decir, dictado), u otro método convencional. De manera alterna, la cadena 204 ingresada puede recuperarse de un documento existente, un página web o de otra fuente ! De preferencia, la aplicación 206 proporciona la cadena 204 ingresada al sistema 200 en oraciones completas Adicionalmente, la cadena 204 ingresada se puede proporcionar al sistema 200 de corrección ortográfica en una forma de señal u otro formato reconocible, o cambiarse de otro modo en el formato mediante el sistema 200 I La cadena ingresada se proporciona a un generador 208 i candidato desde un procesador 210 ortográfico contextual del i sistema £00 De preferencia, la cadena 204 ingresada solo contiene I palabras|vál?das (es decir, escritas correctamente). De acuerdo con una modalidad del método, las palabras ingresadas con errores ortográficos de la cadena 204 ingresada se corrigen ! utilizando un corrector 212 ortográfico basado en un diccionario El corrector 212 ortográfico compara cada palabra ingresada de la cadena 204 ingresada con las palabras de un diccionaiiio 214 Las sustituciones sugeridas par las palabras ingresadas que se encuentran contenidas en el diccionario 214 se i generan i mediante el corrector 212 ortográfico de acuerdo con métodos¡ convencionales Las sustituciones sugeridas generadas mediante' el corrector 212 ortográfico pueden presentarse al usuario para la jselección de una sustitución para palabras con errores ortográficos identificadas mediante el corrector 212 ortográfico y en consecuencia la cadena ingresada se modifica De manera alterna, las correcciones sugeridas generadas mediante el corrector 212 ortográfico para palabras ingresadas con errores ortográficos se proporcionan al generador 208 candidato, el cual forma una cada ingresada que contiene sólo palabras válidas La cadena ingresada que contliene sólo palabras válidas se analiza entonces mediante el generador 208 candidato El! propósito del generador 208 candidato es identificar las palabras! de sustitución candidatas que sean similares, o que se relacionen de otro modo, con las palabras ingresadas de la cadena 204 ingresada Las palabras de sustitución candidatas pueden proporcionarse después a la aplicación 206 como palabras de sustitución sugeridas para las palabras ingresadas Los pares de palabra ' de sustitución candidata y la palabra ingresada se encuentran contenidos en una tabla 216 candidata. La tabla 1 es un ejemplo de una porción de una tabla 216 cand?dat|a, de acuerdo con las modalidades de la invención La tabla 216 can idata incluye palabras temáticas que se asocian, cada una, con una palabra de sustitución candidata, y una puntuación i cand?dat!a es indicativa de una probabilidad de que la palabra I temática' debe sustituirse por la palabra de sustitución candidata Tabla 1: Tabla Candida-a llus-ratova ! Pa ab ra de Sustitución Puntuación Palabra Tem át ca Candidata Candidata Edición Aback alack 0 543 b:1 Aback back 0 023 a: A b a 1 o n e s abalone's 0 870 A Abandonad abandoner 0 765 d:r Break break 0 689 H Una modalidad de la Tabla 216 candidata incluye una entrada editada bara cada par de palabra de sustitución candidata y temática que describe el cambio que debe realizarse en la palabra temática para formar la palabra de sustitución candidata. Por ejemplo, para cambiar "aback" a "alack", la "b" de "aback" debe cambiarse a una "I", lo cual se denota como "b:l". De manera similar, la eliminación de ! la primqra "a" en "aback" para formar la palabra de sustitución candidata "back" puede denotarse como "a:" La adición de las "" para abalone's puede denotarse simplemente como "A". Palabras de sustitución candidatas homónimas, tal como "brake" para la palabra temática "break", se denotan como "H". También se pueden utilizar otros m todos para identificar varias ediciones que deben realizarse ! para cambiar la palabra temática a la palabra de sustitución candidata correspondiente. Eil procesador ortográfico contextual puede utilizar la entrada editada én la tabla candidata para modificar la puntuación para la palabra ¡de sustitución candidata durante un análisis de la cadena ingresada. Las entradas editadas pueden agruparse en clases y asignárseles valores diferentes que reflejen tales cosas como la frecuencia de una clase de tipos de edición. Entre más elevado sea el valor, ¡mayor es el efecto del tipo de edición en una puntuación de i palabra la palabra de sustitución candidata. Estas puntuaciones de clases o tipos de edición pueden ser además de o incluirse en la puntuación candidata. Por ejemplo, una edición para eliminar un carácter i inicial de la palabra temática para formar la palabra de sustitución capdidata puede dar como resultado un aumento en la puntuación para la palabra de sustitución candidata. D acuerdo con una modalidad de la invención, la tabla 216 candidata se almacena en un medio que se puede leer por computadora como un archivo binario, el cual se carga en la memoria del entorno informático para su acceso rápido por el sistema 200 de corrección ortográfica De acuerdo con una modalidad de la invención, la tabla 216 candidata se almacena como una tabla hash en el arcjhivo binario. Dé acuerdo con otra modalidad de la tabla 216 candidata, los identifícádores de diccionario se utilizan para identificar las palabras de sustitución candidata y temática. Los identificadores de diccionario proporcionan un enlace a las palabras correspondientes en un diccionario, tal como el diccionario 214 mostrado en la Figura 3. Esta modalidad de la invención opera para reducir la cantidad de memoria' que se requiere para almacenar la extensa tabla 216 candidata Erji la etapa 218 del método, el generador 208 candidato hace co?nc?d?r¡ las palabras ingresadas de la cadena 204 ingresada con las palabras temáticas de la tabla 216 candidata Las palabras 222 de sustitución candidatas y las puntuaciones 224 candidatas ! correspo'ndientes se extraen entonces de la tabla 216 candidata para cada palabra ingresada de la cadena 204 ingresada con base en la palabra t|emát?ca coincidida correspondiente, en la etapa 220 Debido a que pjueden existir muchas palabras de sustitución candidatas asociadals con la misma palabra ingresada o temática, el generador 208 candidato puede producir más de un par de puntuación y palabra de sustitución candidata para cada palabra ingresada coincidida Los pares de puntuación 224 y palabra 222 de sustitución candidata se transmiten al procesador 210 ortográfico contextual para su procesamiento adicional La puntuación 224 candidata en la tabla 216 candidata por lo general es indicativa de una probabilidad de que la palabra ingresad^ debe sustituirse por la palabra de sustitución candidata i correspondiente Adicionalmente, la puntuación 224 candidata puede reflejar la cantidad de error entre la palabra temática y la palabra 222 de s stitución candidata correspondiente i De acuerdo con una modalidad de la invención, la puntuación 224 candidata se base en uno o más factores, cada uno de los cuales de preferencia se multiplica en conjunto para formar la puntuación candidatá para el par de palabra de sustitución candidata y palabra temática; en la tabla 216 candidata. Tales factores incluyen una edición o distancia de escritura entre la palabra temática y la palabra de sustitución candidata, la heurística, una diferencia fonética entre la palabra temática y la palabra de sustitución candidata, y otros factores que pueden relacionarse con una probabilidad de que la palabra de sustitución candidata debe sustituir la palabra temática. Las puntuaciones 224 candídatas basadas en un tipo de edición heurística variarán dependiendo de la diferencia entre la palabra ¡temática y la palabra de sustitución candidata. Por ejemplo, la probabilidad de que una palabra temática en singular deba cambiarle por una palabra de sustitución candidata en plural puede ser poco común. Como resultado, a tales palabras de sustitución candidatos se les debe dar una puntuación candidata baja. Por otro lado, cµando el cambio de la palabra temática a la palabra de sustitución candidata implica una modificación del primer carácter solamenjte, lo cual se relaciona con un error ortográfico encontrado con más frecuencia, tales pares de palabras de sustitución candidatas y temáticas reciben una puntuación candidata alta. Relacionadas también con la distancia de edición se encuentran las puntuaciones que están basadas en la separación de la palabra temática en dos palabras al agregar un espacio a la palabra ¡temática. A tales ediciones se les asigna generalmente una puntuación candídata alta debido a su frecuencia relativamente alta. Cuando la palabra de sustitución candidata es una homófona o casi homófona de la palabra temática, al par de palabras se le asigna u¡na puntuación más alta que cuando la palabra de sustitución candidato no tiene semejanza sustancialmente en forma fonética con la palabija temática. I Eh la etapa 226 del método, el procesador 210 ortográfico contextujal produce selectivamente un resultado 230 de las palabras 222 de sustitución candidatas para las palabras ingresadas de la cadena i ' 204 ingresada, basándose en las puntuaciones 224 correspondientes de las palabras 222 de sustitución candidatas. De acuerdo con una modalidad de la invención, el sistema 200 ¡ncluye un modelo 240 de lenguaje que recibe cadenas 242 de sustitución candidatas del procesador 210 ortográfico contextual. Las cadenas i 242 de! sustitución candidatas son cadenas 204 ingresadas modifica¡das, cada una de las cuales incluye una palabra 222 de sustitución candidata en lugar de la palabra ingresada correspondiente. i E¡l modelo 240 de lenguaje opera para producir puntuaciones 244 de ?robabilidad para cada una de las cadenas 242 de sustitución candidatas. Las puntuaciones 244 de probabilidad proporcionan una I medida ¡ de probabilidad de ver la cadena 242 de sustitución candidata particular basada en datos 246 estadísticos (es decir, ¡ datos dé frecuencia de ocurrencia de palabra en relación con otras palabra^) para un bloque grande de oraciones. En general, se asume que ent^e más probable sea ver una cadena particular de palabras, j es más probable que las palabras contenidas en la cadena se utilicen de manera correcta De este modo, la puntuación 244 de probabilidad para cada cadena 242 de sustitución candidata refleja la exactitud de la combinación de las palabras ingresadas con la palabra de sustitución candidata en esa cadena ¡ Lá puntuación 244 de probabilidad (denotada como P (contexto)) para una cadena de palabras dada (es decir, W?,w2,w3.. wN) puede calcularse de acuerdo con la Ecuación 1, utilizando los datos 246 estadísticos. En general, la probabilidad de la cadena es igual a la probabilidad de cada palabra en la cadena asignada a las otras. De este modo, la probabilidad de la cadena es igual a lá probabilidad de la primera palabra (P(w ) multiplicada por ! la probabilidad de la segunda palabra asignada a la primera palabra (P(w2| wr)), multiplicada por la probabilidad de la tercera palabra asignada a la primera y segunda palabras (P(w31 w2,W!)), y así sucesivamente. P(contex^o) = P(|W!)*P(w21 Wi)*P(w31 w2,w1)*..JP(wN | wN-? ,wN-2... w2,Wt) Ec. 1 De acuerdo con una modalidad de la invención, se utiliza una aproximación de tpgrama de la Ecuación 1, la cual se proporciona en la Ecuación 2 Para cada palabra de la cadena, la aproximación de trigrama utiliza las dos palabras anteriores (si existen), en lugar de todas las¡ N palabras de la cadena. P(contexto)~ P(¡W?)*P(w21 W?)*P(w31 w2lw1)*..JP(wN | wN.?1wN.2...w2,W?) Ec. 2 De acuerdo con una modalidad de la invención, el procesador 210 ortográfico contextual selecciona las palabras o cadenas 230 de sustitución candidatas sugeridas para transferirlas a la aplicación 206, coh base en una puntación final para cada cadena de sustitución candidata Cada una de las puntuaciones finales (denotadlas como P(candidate I imput word, context)) se calculan de acuerdo con la Ecuación 3 al multiplicar la puntuación de probabilidad para la cadena de sustitución candidata (denotada como P(contex¡to, candidata) por la puntuación 224 candidata que corresponda con la palabra 222 de sustitución candidata (candídata) que sustituya a la palabra ingresada para formar la cadena 242 de sustitución candidata Digamos, por ejemplo, que las palabras 22 de sustitución candidatas de "too", " t o t " , y "two" se generan junto con sus puntuaciones 224 correspondientes mediante el generador 208 candidato para la palabra ingresada "to" de la cadena 204 ingresada de "I sbe you to". Las cadenas 242 de sustitución candidatas correspondientes se convierten entonces en "I see you too", "\ see you tot",? y "I see you two". El procesador 210 ortográfico contextual ¡ realiza entonces varias llamadas al modelo 240 de lenguaje, el cual calcula las puntuaciones de probabilidad para cada una de las cadenas¡242 de sustitución candidatas. Las puntuaciones finales para las cadenas 242 de sustitución candidatos se calculan mediante el procesador 210 ortográfico contextual al multiplicar sus puntuaciones 244 de probabilidad por sus puntuaciones 224 candidatas correspondientes. De este modo, la puntuacipn final para la cadena 242 de sustitución candídata "I see you too"! es igual a la probabilidad de la cadena "I see you too" multiplicada por la puntuación 244 que corresponda con la palabra de sustitución candidata "too" para la palabra ingresada "to" obtenida de la tab¡la 216 candidata. I D acuerdo con una modalidad de la invención, la palabra 222 candidata de la cadena de sustitución candidata que tiene la puntuación final más alta es sugerida a la aplicación 206 mediante el procesador 210 ortográfico contextual como el resultado 230. De manera alterna, el procesador 210 ortográfico contextual puede sugerir ?ólo la palabra 222 de sustitución que corresponda con la cadena 242 de sustitución candidata que tenga la puntuación final más alta;, siempre y cuando ésta exceda de un límite. De acuerdo con otra modalidad de la invención, múltiples palabras 222 de sustitución candidatjas que tengan puntuaciones finales que excedan de un límite se sugieren mediante el procesador 210 ortográfico contextual a la aplicación 206 como el resultado 230. El límite puede predeterminarse o calcularse dinámicamente como una función de la probabilidad de las palabras temáticas y de las pala'bras candidatas. En una modalidad, el límite se determina dinámic mente a partir de Límite = aP(palabras temát¡ca!s)¡? = ) + ßP(palabras candidatas)+? | P(palabras ingresadas)-P(palabras candidatas).
Generac ón de tabla candidata La Figura 4 es un diagrama de flujo que ilustra un método para generar la tabla 216 candidata para su uso en el sistema 200 de corrección ortográfica, de acuerdo con las modalidades de la invención En la etapa 250 del método, se proporciona un diccionario I de palabras De preferencia, el diccionario es muy extenso (por ejemplo, alrededor de 100,000 palabras) Después, en la etapa 252, se comp¡aran las palabras temáticas del diccionario con las otras I palabras; del diccionario De preferencia, cada palabra del diccionaijio, o por lo menos las palabras utilizadas con más I I frecuencja del diccionario, cada una se convierte en palabras temáticas que se comparan con las otras palabras del diccionario En i la etapa|254, las palabras de sustitución candidatas se identifican para las palabras temáticas con base en la comparación de la etapa 252 De acuerdo con una modalidad de la invención, la i comparación de las palabras temáticas con las otras palabras del diccionario (etapa 252) implica el cálculo una distancia de escritura i o de edibión entre cada una de las palabras del diccionario con la palabra ¡temática y comparar la distancia de edición con una distancia) de edición límite Las palabras de sustitución candidatas que tengl an una distancia de edición que alcance la distancia de edición límite se identifican como palabras de sustitución candidatas para las ¡palabras temáticas Debe entenderse que el "alcance" del límite pretende satisfacerse alcanzando el límite, excediendo el límite, o colocándose bajo el límite, dependiendo de cómo se calculeni ,las distancias de edición. D acuerdo con otra modalidad de la etapa 252 de comparación, un significado de cada una de las palabras del diccionario se compara con las palabras temáticas. La etapa 254 de identificación incluye entonces identificar las palabras del diccionario cuyo significado es similar a aquél de la palabra temáticaí, como palabras de sustitución candidatas. Por ejemplo, sinónimos de las palabras temáticas se identificarían como palabras de sustitución candidatas. De acuerdo con una modalidad de la invención, las palabras temáticas del diccionario se revisan contra los datos de un tesauro, a partir del cual las palabras de sustitución candidatias que tienen un significado similar se identifican como palabras de sustitución candidatas en la etapa 254 del método. Dé acuerdo con otra modalidad de la etapa 252 de comparajción, las representaciones fonéticas de las palabras en el diccionario se comparan con las palabras temáticas del diccionario. Las representaciones fonéticas de las palabras del diccionario de preferenlcia se generan automáticamente a través de un envío de las palabras a un procesador de conversión de texto a diálogo convencional. Las palabras del diccionario que tienen representaciones fonéticas que coincidan con la representación fonética! de la palabra temática se identifican como palabras de sustitución candidatas para la palabra temática en la etapa 254 de identifi c|ación Ejemplos de estos pares incluyen "bear" y "bare", y "which" y "witch". De este modo, las homófonas de la palabra temática se identifican como palabras de sustitución candidatas. De acuerdo ¡con otra modalidad de la invención, las palabras de del diccionario que sean casi homófonas (es decir, aquellas que alcance? un límite) también se identifican como palabras de sustitución candidatas. Otra modalidad de la invención ¡ncluye un análisis de bigramas (es decir, pares de palabras) encontrados en un bloque grande de oraciones. El análisis implica determinar si cambiar o elíminarjel espacio localizado entre la primera y la segunda palabras del bigrama daría como resultado la generación de por lo menos una palabra válida. Una modalidad de la etapa 252 de comparación incluye comparar las palabras temáticas con las palabras válidas que se formgn a partir del análisis de espaciado-cambio. De preferencia, sólo las palabras válidas que se forman al cambiar el espacio, ya sea antes d l carácter terminal de la palabra o después del primer carácter' de la segunda palabra, o al eliminar el espacio, se utilizan en la etapa 252 de comparación, debido a que éstas corresponden con err¡ores tipográficos más comunes. Las palabras válidas i formadas recientemente que coincidan con las palabras temáticas se identifican entonces como palabras de sustitución candidatas para las palabras temáticas en la etapa 254. Por ejemplo, las palabras de sustitución candidatas para el par de palabras "use swords" sería "uses wórds" y las palabras de sustitución candidatas para el par de palabras "dog sand" sería "dogs and". De manera similar, una palabra de sustitución candidata par el par de palabras "any one" sería "anyone", y" por el contrario, una palabra de sustitución candidatá par el par de palabras "anyone" sería "any one". Eh la etapa 256 del método, la lista 216 candidata que se forma incluye las palabras temáticas emparejadas con sus palabras de sustitución candidatas identificadas correspondientes.
Finalmente, en la etapa 258, la tabla 216 candidata se almacena en un medip que se puede leer por computadora, tal como aquél descrito én lo anterior con respecto a la Figura 1. i D^ acuerdo con otra modalidad de la invención, la puntuación 224 candidata se genera para cada uno de los pares de palabras de sustitución candidatas y temáticas en la etapa 256 con base en una probabilidad de que la palabra de sustitución candidata deba sustituir la palabra temática correspondiente, como se explica en lo anterior. Las puntuaciones candídatas de preferencia se basan en uno o más de los factores analizados en la etapa 252 de comparación y aquellos discutidos en lo anterior. La puntuación candidato se incluye en la tabla 216 candidata que se almacena en el medio q e se puede leer por computadora en la etapa 258.
Tabla de¡ Exclusión Candidata D acuerdo con otra modalidad de la invención, se genera una i tabla 26f de exclusión candídata que identifica ciertas palabras de sustitución candidatas que el generador 208 candidato debe enviar al procesadior 210 ortográfico contextual como palabras 222 de sustitución candidatas De este modo, la tabla 260 de exclusión candidata evita que se sugieran palabras de sustitución candidatas no apropiadas o deseadas a la aplicación 206 mediante el I procesador 210 ortográfico contextual De preferencia, la tabla 260 de exclusión candidata incluye palabras de sustitución candidatas que son ¡ofensivas Adicionalmente, las palabras cuya ambigüedad es difícil de¡ eliminar y que por lo general ocurre en contextos similares pueden incluirse en la tabla de exclusión candidata, tal como "rough" y "tough" Se pueden eliminar variantes ortográficas aceptables de la i misma palabra temática, tal como "color" y "colour", o "goodbye" y "good-byle", al incluirlas en la tabla 260 de exclusión candidata También, debido a que los errores tipográficos que dan como resultado una forma plural de una palabra ingresada en singular son poco comunes, las palabras temáticas en singular sus equivalentes de preferencia se incluyen en la tabla 260 de exclusión candidata Dé acuerdo con una modalidad de la invención, la tabla 216 i candidato se actualiza periódicamente par eliminar los pares de palabras de sustitución candidatas y palabra temáticas que tengan pares de palabras coincidentes en la tabla 260 de exclusión candidatá Adicionalmente, los pares de palabras de sustitución candidatas y palabras temáticas en la tabla 216 candidata que tengan palabras de sustitución candidatas que coincidan con aquéllas; en la tabla 260 de exclusión candidata también puede eliminarse La reducción resultante al tamaño de la tabla 216 candidatá permite que el sistema 200 de corrección ortográfica opere con mayor eficacia. Aunque la presente invención se ha descrito con referencia a modalida|des particulares, trabajadores con experiencia en la técnica reconocerán que se pueden realizar cambios en forma y detalle sin apartars del espíritu y alcance de la invención.

Claims (3)

REIVINDICACIONES
1.¡ Un método implementado por computadora para sugerir palabras¡de sustitución para palabras de una cadena, que comprende las etapas de: a) recibir una cadena ingresada de palabras ingresadas; b) hacer coincidir las palabras ingresadas con las palabras temáticas de una tabla candidata; c)¡extraer palabras de sustitución candidatas y puntuaciones candidatas de la tabla candidata que correspondan con las palabras temáticas coincididas, en donde cada puntuación candidata es indicativa de una probabilidad de que la palabra ingresada debe sustituirse por la palabra candidata correspondiente; y d)' sugerir selectivamente la sustitución de las palabras ingresadas por sus palabras de sustitución candidatas correspondientes con base en las puntuaciones candídatas para las I palabras ide sustitución.
2. El método de acuerdo con la reivindicación 1, que incluye corregir palabras ingresadas con errores ortográficos antes de la etapa b) ide coincidencia, por lo cual la cadena ingresada contiene sólo palabras ingresadas escritas correctamente. 3JEI método de acuerdo con la reivindicación 1, que incluye formar cadenas de sustitución candidatas utilizando las palabras de sustitución candidatas, incluyendo la sustitución de las palabras ingresadas de la cadena ingresada con las palabras de sustitución candidatas correspondientes 4 El método de acuerdo con la reivindicación 3, que incluye calcular , las puntuaciones de probabilidad para las cadenas de sustitución candidatas, cada puntuación de probabilidad basada en las palabras ingresadas y en la palabra de sustitución candidata contenida en la cadena de sustitución candidata, en donde la etapa d) de sugerencia incluye sugerir la sustitución de la palabra ingresada por la palabra de sustitución candidata correspondiente de la cadena de sustitución candidata basada en la puntuación de probabilidad 5 El método de acuerdo con la reivindicación 4, en donde la etapa d) de sugerencia incluye multiplicar las puntuaciones de probabilidad con la puntuación candidata correspondiente para obtener puntuaciones finales para cada una de las cadenas de sustitución candidatas en donde la etapa d) de sugerencia incluye sugerir la sustitución de la palabra ingresada con la palabra de sustitución candidata de la cadena de sustitución candidata que tenga la puntuación final mas alta 6 El método de la reivindicación 1, en donde las palabras temáticas y las palabras de sustitución candidatas correspondientes de la tabla candidata se encuentran, cada una, en forma de un identificador de diccionario que identifica las palabras en un diccionario 7 El método de acuerdo con la reivindicación 1, en donde las palabras de sustitución candidatas de la tabla candidata incluyen palabras que tienen una distancia de edición a partir de sus palabras temáticas correspondientes que satisfacen un límite. 8. i El método de acuerdo con la reivindicación 1, en donde las palabras; de sustitución candidatas de la tabla candidata incluyen palabras que tienen un significado similar con sus palabras temáticas correspo|ndientes. 9.¡ El método de acuerdo con la reivindicación 1, en donde las palabras de sustitución candidatas de la tabla candidata incluyen palabras! que tienen una coincidencia fonética con sus palabras temáticals correspondientes. 10. El método de acuerdo con la reivindicación 1, en donde las palabras de sustitución candidatas de la tabla candidafa incluyen palabras] que son correcciones comunes a sus palabras temáticas correspondientes 11 Un método implementado por computadora para generar una tabila candidata para su uso por un sistema de corrección ortográfica para sugerir la sustitución de palabras para palabras ingresadas de una cadena ingresada, el método comprende las etapas de: i aj proporcionar un diccionario de palabras; b) comparar palabras temáticas en el diccionario con las palabras en el diccionario; i c) identificar palabras de sustitución candidatas para las palabras temáticas con base en la etapa b) de comparación; d) formar una tabla candidata las palabras temáticas emparejadas con sus palabras de sustitución candidatas identificadas correspondientes; y e)| almacenar la tabla candidata en un medio que se pueda leer por bomputadora. 12,. El método de acuerdo con la reivindicación 11, en donde la etapa e) de comparación incluye comparar distancias de edición medidasja partir de las palabras en el diccionario con las palabras temática para una distancia de edición límite, en donde la etapa c) de identificación incluye identificar palabras de sustitución candida tjas para cada una de las palabras temáticas cuya distancia de edición a partir de la palabra temática satisfaga una distancia de edición ijímite. 1
3. El método de acuerdo con la reivindicación 11, en donde la etapa¡ b) de comparación incluye comparar un significado de cada una de las otras palabras en el diccionario con cada una de las palabras! temáticas, en donde la etapa c) de identificación incluye identificar las palabras de sustitución candidatas para cada una de las palabras temáticas cuyo significado sea similar al de la palabra temática. 14- El método de acuerdo con la reivindicación 11, en donde la etapa b) de comparación incluye comparar una representación fonéticaí de cada una de las palabras en el diccionario con una represerjitación fonética de cada una de las palabras temáticas, en donde lá etapa c) de identificación incluye identificar las palabras de ! sustitución candidatas para cada una de las palabras temáticas cuya representación fonética coincida con la representación fonética de la palabra temática. 1 Ó I. El método de acuerdo con la reivindicación 11, en donde la etapaj d) de formación incluye generar una puntuación candidata para cada uno de los pares de palabras de sustitución candidatas y temáticas con base en una probabilidad de que la palabra de sustitución candidata deba sustituir la palabra temática correspondiente, y formar la tabla candidata para incluir las puntuaciones candídatas. 1(5. El método de acuerdo con la reivindicación 15, en donde la puntuación candidata se base en una distancia de edición entre la palabra de sustitución candidata y la palabra temática correspqndiente 17. El método de acuerdo con la reivindicación 11, que incluye: ahalizar pares de palabras que tengan una primera palabra y una segjunda palabra separadas por un espacio en un bloque de i oracioneis, incluyendo la identificación de una nueva palabra válida que se forma por uno de eliminar el espacio, mover el espacio antes de un carácter terminal de una primera palabra, y mover el espacio después! de un carácter inicial de la segunda palabra; y agregar la nueva palabra válida a la tabla candidata como una I palabra Ide sustitución candidata para alguna correspondiente de la primera ¡y segunda palabras en la etapa d) de formación. 1¡B. Un sistema de corrección ortográfica para sugerir la sustitucipn de palabras para palabras ingresadas de una cadena ingresadla, el sistema comprende: uñ generador candidato que incluye un resultado de una palabra ' de sustitución candidata y una puntuación candidata correspondiente para cada una de las palabras ingresadas que coinciden con una palabra temática de una tabla candidata, en donde cada puntuación candidata es indicativa de una probabilidad de que la palabra ingresada deba sustituirse con la palabra de sustitución candidata correspondiente; y , u? procesador ortográfico contextual que incluye un resultado selectivo de palabras de sustitución candidatas para las palabras ingresadlas con base en las puntuaciones candidatas correspondientes 19. El sistema de la reivindicación 18, que incluye un modelo de lengulaje que tiene una puntuación de probabilidad producido para una cadena de sustitución candidata que corresponde con la cadena ¡ngresadja con por lo menos una de las palabras ingresadas sustituidas por la palabra de sustitución candidata correspondiente producidja por el generador candidato, en donde la puntuación de probabilidad producida es una medida de una exactitud de la cadena de sustitución candidata, y en donde el resultado selectivo de palabras; de sustitución candidatas producidas por el procesador ortográfico contextual se basa en el resultado de la puntuación de probabilidad y la puntuación candidata que corresponde con la palabra de sustitución candidata contenida en la cadena de sustitución candidata. 20. El sistema de acuerdo con la reivindicación 18, que incluye una tabla de exclusión candidata que incluye una lista de palabras' de sustitución candidatas que se excluyen de uno del resultado del generador candidato y el resultado del procesador ortográfico contextual.
MX2007013357A 2005-04-25 2006-03-14 Metodo y sistema para generar sugerencias ortograficas. MX2007013357A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/113,612 US7584093B2 (en) 2005-04-25 2005-04-25 Method and system for generating spelling suggestions
PCT/US2006/009147 WO2006115598A2 (en) 2005-04-25 2006-03-14 Method and system for generating spelling suggestions

Publications (1)

Publication Number Publication Date
MX2007013357A true MX2007013357A (es) 2008-01-11

Family

ID=37188148

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2007013357A MX2007013357A (es) 2005-04-25 2006-03-14 Metodo y sistema para generar sugerencias ortograficas.

Country Status (9)

Country Link
US (1) US7584093B2 (es)
EP (1) EP1875462A4 (es)
JP (1) JP2008539476A (es)
KR (1) KR101292404B1 (es)
CN (1) CN101371253B (es)
BR (1) BRPI0609108A2 (es)
MX (1) MX2007013357A (es)
RU (1) RU2007139510A (es)
WO (1) WO2006115598A2 (es)

Families Citing this family (246)

* 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
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US7831911B2 (en) * 2006-03-08 2010-11-09 Microsoft Corporation Spell checking system including a phonetic speller
US7562811B2 (en) 2007-01-18 2009-07-21 Varcode Ltd. System and method for improved quality management in a product logistic chain
WO2007129316A2 (en) 2006-05-07 2007-11-15 Varcode Ltd. A system and method for improved quality management in a product logistic chain
EP1855210B1 (en) * 2006-05-11 2018-01-03 Dassault Systèmes Spell checking
US8395586B2 (en) 2006-06-30 2013-03-12 Research In Motion Limited Method of learning a context of a segment of text, and associated handheld electronic device
US7565624B2 (en) * 2006-06-30 2009-07-21 Research In Motion Limited Method of learning character segments during text input, and associated handheld electronic device
US9552349B2 (en) * 2006-08-31 2017-01-24 International Business Machines Corporation Methods and apparatus for performing spelling corrections using one or more variant hash tables
US8626486B2 (en) * 2006-09-05 2014-01-07 Google Inc. Automatic spelling correction for machine translation
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US9275036B2 (en) * 2006-12-21 2016-03-01 International Business Machines Corporation System and method for adaptive spell checking
US8074172B2 (en) 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US7991609B2 (en) * 2007-02-28 2011-08-02 Microsoft Corporation Web-based proofing and usage guidance
US8775931B2 (en) * 2007-03-30 2014-07-08 Blackberry Limited Spell check function that applies a preference to a spell check algorithm based upon extensive user selection of spell check results generated by the algorithm, and associated handheld electronic device
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8528808B2 (en) 2007-05-06 2013-09-10 Varcode Ltd. System and method for quality management utilizing barcode indicators
CN105045777A (zh) 2007-08-01 2015-11-11 金格软件有限公司 使用互联网语料库的自动的上下文相关的语言校正和增强
US8055670B2 (en) * 2007-08-13 2011-11-08 Yahoo! Inc. System and method for the generation of replacement titles for content items
US7761524B2 (en) * 2007-08-20 2010-07-20 International Business Machines Corporation Automatically generated subject recommendations for email messages based on email message content
US20090100335A1 (en) * 2007-10-10 2009-04-16 John Michael Garrison Method and apparatus for implementing wildcard patterns for a spellchecking operation
EP2218055B1 (en) 2007-11-14 2014-07-16 Varcode Ltd. A system and method for quality management utilizing barcode indicators
US8176419B2 (en) * 2007-12-19 2012-05-08 Microsoft Corporation Self learning contextual spell corrector
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
US20090300126A1 (en) * 2008-05-30 2009-12-03 International Business Machines Corporation Message Handling
US11704526B2 (en) 2008-06-10 2023-07-18 Varcode Ltd. Barcoded indicators for quality management
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8762153B2 (en) * 2008-08-18 2014-06-24 At&T Intellectual Property I, L.P. System and method for improving name dialer performance
KR101480711B1 (ko) * 2008-09-29 2015-01-09 에스케이플래닛 주식회사 주제 탐지 장치와 주제 탐지 방법, 저장 매체, 정보 제공 시스템, 서비스 서버 및 방법
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
KR101126406B1 (ko) * 2008-11-27 2012-04-20 엔에이치엔(주) 유사어 결정 방법 및 시스템
KR101049358B1 (ko) * 2008-12-08 2011-07-13 엔에이치엔(주) 유사어 결정 방법 및 시스템
WO2010067118A1 (en) 2008-12-11 2010-06-17 Novauris Technologies Limited Speech recognition involving a mobile device
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual 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
US20100332215A1 (en) * 2009-06-26 2010-12-30 Nokia Corporation Method and apparatus for converting text input
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
KR101083455B1 (ko) * 2009-07-17 2011-11-16 엔에이치엔(주) 통계 데이터에 기초한 사용자 질의 교정 시스템 및 방법
EP2341467B1 (en) * 2009-09-24 2019-12-18 Nec Corporation Word recognition device, method, non-transitory computer readable medium storing program and shipped item classification device
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
US20110179353A1 (en) * 2010-01-19 2011-07-21 Research In Motion Limited Mobile Electronic Device and Associated Method Providing Proposed Spelling Corrections Based Upon a Location of Cursor At or Adjacent a Character of a Text Entry
DE112011100329T5 (de) 2010-01-25 2012-10-31 Andrew Peter Nelson Jerram Vorrichtungen, Verfahren und Systeme für eine Digitalkonversationsmanagementplattform
CA2787390A1 (en) 2010-02-01 2011-08-04 Ginger Software, Inc. Automatic context sensitive language correction using an internet corpus particularly for small keyboard devices
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8266528B1 (en) 2010-06-24 2012-09-11 Google Inc. Spelling suggestions based on an input sequence including accidental “delete”
US9262397B2 (en) 2010-10-08 2016-02-16 Microsoft Technology Licensing, Llc General purpose correction of grammatical and word usage errors
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US8639494B1 (en) * 2010-12-28 2014-01-28 Intuit Inc. Technique for correcting user-interface shift errors
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US20120246133A1 (en) * 2011-03-23 2012-09-27 Microsoft Corporation Online spelling correction/phrase completion system
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
US9298693B2 (en) 2011-12-16 2016-03-29 Microsoft Technology Licensing, Llc Rule-based generation of candidate string transformations
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
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
US8713433B1 (en) 2012-10-16 2014-04-29 Google Inc. Feature-based autocorrection
US8612213B1 (en) 2012-10-16 2013-12-17 Google Inc. Correction of errors in character strings that include a word delimiter
US8807422B2 (en) 2012-10-22 2014-08-19 Varcode Ltd. Tamper-proof quality management barcode indicators
CN104969289B (zh) 2013-02-07 2021-05-28 苹果公司 数字助理的语音触发器
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
US9489372B2 (en) * 2013-03-15 2016-11-08 Apple Inc. Web-based spell checker
KR101759009B1 (ko) 2013-03-15 2017-07-17 애플 인크. 적어도 부분적인 보이스 커맨드 시스템을 트레이닝시키는 것
US10303762B2 (en) * 2013-03-15 2019-05-28 Disney Enterprises, Inc. Comprehensive safety schema for ensuring appropriateness of language in online chat
CN104102625B (zh) * 2013-04-15 2017-07-04 佳能株式会社 通过应用键盘布局信息来改进拼写检查的方法和设备
US9122376B1 (en) * 2013-04-18 2015-09-01 Google Inc. System for improving autocompletion of text input
US8887103B1 (en) 2013-04-22 2014-11-11 Google Inc. Dynamically-positioned character string suggestions for gesture typing
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
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
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
KR101959188B1 (ko) 2013-06-09 2019-07-02 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
WO2014200731A1 (en) 2013-06-13 2014-12-18 Apple Inc. System and method for emergency calls initiated by voice command
CN104298672B (zh) * 2013-07-16 2018-09-11 北京搜狗科技发展有限公司 一种输入的纠错方法和装置
KR101749009B1 (ko) 2013-08-06 2017-06-19 애플 인크. 원격 디바이스로부터의 활동에 기초한 스마트 응답의 자동 활성화
US20150073771A1 (en) * 2013-09-10 2015-03-12 Femi Oguntuase Voice Recognition Language Apparatus
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
KR101990929B1 (ko) * 2014-03-12 2019-06-20 네이버 주식회사 문자열 사이의 연관성 판단을 통한 오타 수정 방법
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
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US10204096B2 (en) * 2014-05-30 2019-02-12 Apple Inc. Device, method, and graphical user interface for a predictive keyboard
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
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
US20160062979A1 (en) * 2014-08-27 2016-03-03 Google Inc. Word classification based on phonetic features
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US11354755B2 (en) 2014-09-11 2022-06-07 Intuit Inc. Methods systems and articles of manufacture for using a predictive model to determine tax topics which are relevant to a taxpayer in preparing an electronic tax return
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
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
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
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10013721B1 (en) 2014-10-31 2018-07-03 Intuit Inc. Identification of electronic tax return errors based on declarative constraints
US10255641B1 (en) 2014-10-31 2019-04-09 Intuit Inc. Predictive model based identification of potential errors in electronic tax return
KR102392867B1 (ko) * 2014-11-28 2022-04-29 한화테크윈 주식회사 영상 검색 방법 및 장치
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
GB2535439A (en) * 2015-01-06 2016-08-24 What3Words Ltd A method for suggesting candidate words as replacements for an input string received at an electronic device
GB2549240A (en) * 2015-01-06 2017-10-18 What3Words Ltd A method for suggesting one or more multi-word candidates based on an input string received at an electronic device
KR101670326B1 (ko) 2015-03-03 2016-11-10 울산과학기술원 언어 문장 패턴 제안을 위한 생성 시스템
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9760560B2 (en) * 2015-03-19 2017-09-12 Nuance Communications, Inc. Correction of previous words and other user text input errors
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10740853B1 (en) 2015-04-28 2020-08-11 Intuit Inc. Systems for allocating resources based on electronic tax return preparation program user characteristics
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
JP6649472B2 (ja) 2015-05-18 2020-02-19 バーコード リミティド 活性化可能な品質表示ラベルのための熱変色性インク証印
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
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
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
CN107709946B (zh) 2015-07-07 2022-05-10 发可有限公司 电子质量标志
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
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10740854B1 (en) 2015-10-28 2020-08-11 Intuit Inc. Web browsing and machine learning systems for acquiring tax data during electronic tax return preparation
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
US10410295B1 (en) 2016-05-25 2019-09-10 Intuit Inc. Methods, systems and computer program products for obtaining tax data
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
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
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
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US9858257B1 (en) * 2016-07-20 2018-01-02 Amazon Technologies, Inc. Distinguishing intentional linguistic deviations from unintentional linguistic deviations
US20180039608A1 (en) * 2016-08-03 2018-02-08 Google Inc. Correction of previously received textual messages based on one or more later received textual messages
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
CN108008832A (zh) 2016-10-31 2018-05-08 北京搜狗科技发展有限公司 一种输入方法和装置、一种用于输入的装置
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10089297B2 (en) * 2016-12-15 2018-10-02 Microsoft Technology Licensing, Llc Word order suggestion processing
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
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
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
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED 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
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
KR20190024072A (ko) * 2017-08-31 2019-03-08 필아이티 주식회사 가상 키보드를 통하여 입력받은 문자열을 교정하는 모바일 장치 및 방법
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
CN110083819B (zh) * 2018-01-26 2024-02-09 北京京东尚科信息技术有限公司 拼写纠错方法、装置、介质及电子设备
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
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
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
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
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
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
CN109858004B (zh) * 2019-02-12 2023-08-01 四川无声信息技术有限公司 文本改写方法、装置及电子设备
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
CN110209783B (zh) * 2019-04-26 2024-03-15 平安科技(深圳)有限公司 聊天应答方法及系统、电子装置及可读存储介质
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
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
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11416136B2 (en) 2020-09-14 2022-08-16 Apple Inc. User interfaces for assigning and responding to user inputs
KR20220084408A (ko) * 2020-10-25 2022-06-21 구글 엘엘씨 동적 공간 모델에 기초하여 가상 키보드 오류 수정
US11347352B2 (en) 2020-10-25 2022-05-31 Google Llc Virtual keyboard error correction based on a dynamic spatial model
KR102368418B1 (ko) * 2020-12-31 2022-03-02 (주)휴에버그린팜 펀치 라인이 포함되는 랩 가사 생성 장치 및 방법

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62143173A (ja) * 1985-12-18 1987-06-26 Hitachi Ltd 文字列つづり訂正方法
US5604897A (en) 1990-05-18 1997-02-18 Microsoft Corporation Method and system for correcting the spelling of misspelled words
US5649222A (en) 1995-05-08 1997-07-15 Microsoft Corporation Method for background spell checking a word processing document
US5659771A (en) 1995-05-19 1997-08-19 Mitsubishi Electric Information Technology Center America, Inc. System for spelling correction in which the context of a target word in a sentence is utilized to determine which of several possible words was intended
US6085206A (en) 1996-06-20 2000-07-04 Microsoft Corporation Method and system for verifying accuracy of spelling and grammatical composition of a document
US5878386A (en) * 1996-06-28 1999-03-02 Microsoft Corporation Natural language parser with dictionary-based part-of-speech probabilities
US6154843A (en) 1997-03-21 2000-11-28 Microsoft Corporation Secure remote access computing system
US6424983B1 (en) * 1998-05-26 2002-07-23 Global Information Research And Technologies, Llc Spelling and grammar checking system
US6131102A (en) 1998-06-15 2000-10-10 Microsoft Corporation Method and system for cost computation of spelling suggestions and automatic replacement
US6401060B1 (en) 1998-06-25 2002-06-04 Microsoft Corporation Method for typographical detection and replacement in Japanese text
US6144958A (en) 1998-07-15 2000-11-07 Amazon.Com, Inc. System and method for correcting spelling errors in search queries
GB2343037B (en) 1998-10-22 2002-12-31 Ibm Phonetic spell checker
US6298321B1 (en) 1998-11-23 2001-10-02 Microsoft Corporation Trie compression using substates and utilizing pointers to replace or merge identical, reordered states
US6304878B1 (en) 1998-11-23 2001-10-16 Microsoft Corporation Method and system for improved enumeration of tries
KR100749289B1 (ko) * 1998-11-30 2007-08-14 코닌클리케 필립스 일렉트로닉스 엔.브이. 텍스트의 자동 세그멘테이션 방법 및 시스템
US6601059B1 (en) 1998-12-23 2003-07-29 Microsoft Corporation Computerized searching tool with spell checking
US6675169B1 (en) 1999-09-07 2004-01-06 Microsoft Corporation Method and system for attaching information to words of a trie
US6889361B1 (en) * 2000-06-13 2005-05-03 International Business Machines Corporation Educational spell checker
US6694296B1 (en) 2000-07-20 2004-02-17 Microsoft Corporation Method and apparatus for the recognition of spelled spoken words
US7627596B2 (en) * 2001-02-22 2009-12-01 International Business Machines Corporation Retrieving handwritten documents using multiple document recognizers and techniques allowing both typed and handwritten queries
US20040111475A1 (en) * 2002-12-06 2004-06-10 International Business Machines Corporation Method and apparatus for selectively identifying misspelled character strings in electronic communications
US7346615B2 (en) * 2003-10-09 2008-03-18 Google, Inc. Using match confidence to adjust a performance threshold

Also Published As

Publication number Publication date
WO2006115598A2 (en) 2006-11-02
JP2008539476A (ja) 2008-11-13
US7584093B2 (en) 2009-09-01
CN101371253A (zh) 2009-02-18
KR101292404B1 (ko) 2013-08-01
EP1875462A2 (en) 2008-01-09
RU2007139510A (ru) 2009-04-27
KR20080003364A (ko) 2008-01-07
EP1875462A4 (en) 2010-08-11
US20060241944A1 (en) 2006-10-26
CN101371253B (zh) 2010-11-03
WO2006115598A3 (en) 2008-10-16
BRPI0609108A2 (pt) 2010-02-23

Similar Documents

Publication Publication Date Title
MX2007013357A (es) Metodo y sistema para generar sugerencias ortograficas.
US7810030B2 (en) Fault-tolerant romanized input method for non-roman characters
US7831911B2 (en) Spell checking system including a phonetic speller
US7599828B2 (en) Grammatically correct contraction spelling suggestions for french
US20130096911A1 (en) Normalisation of noisy typewritten texts
KR101279676B1 (ko) 언어 모델을 생성하기 위한 방법, 가나-간지 변환 방법 및그 장치
CN101815996A (zh) 检测名称实体和新词
JPH07325828A (ja) 文法チェックシステム
JP2006031295A (ja) 単語境界確率推定装置及び方法、確率的言語モデル構築装置及び方法、仮名漢字変換装置及び方法、並びに、未知語モデルの構築方法、
JPH07325824A (ja) 文法チェックシステム
JP2013117978A (ja) タイピング効率向上のためのタイピング候補の生成方法
US20070179779A1 (en) Language information translating device and method
EP1627325A1 (en) Automatic segmentation of texts comprising chunsks without separators
JP2004303240A (ja) 単語解析のためのシステムおよび方法
JP5097802B2 (ja) ローマ字変換を用いる日本語自動推薦システムおよび方法
JP2013134753A (ja) 誤り文修正装置、誤り文修正方法およびプログラム
US8977538B2 (en) Constructing and analyzing a word graph
JP2004309928A (ja) 音声認識装置、電子辞書装置、音声認識方法、検索方法、及びプログラム
JPH07325825A (ja) 英文法チェックシステム装置
JP2009163109A (ja) 言語モデル生成装置及び音声認識装置
Chalamandaris et al. Bypassing Greeklish!
JP2008077360A (ja) 文末記号補正装置、音声翻訳システム、文末記号補正方法、制御プログラム、及び該プログラムを記録したコンピュータ読み取り可能な記録媒体
JP5159657B2 (ja) 複数種類の読み仮名を有する漢字含み文字列の誤変換を指摘する誤変換指摘装置及びその方法
JP2021085996A (ja) 音声認識システム、音声認識方法
JP2007249409A (ja) 辞書生成装置

Legal Events

Date Code Title Description
FG Grant or registration