ES2379704T3 - Sistema y método para corregir errores ortográficos en peticiones de búsqueda - Google Patents

Sistema y método para corregir errores ortográficos en peticiones de búsqueda Download PDF

Info

Publication number
ES2379704T3
ES2379704T3 ES99935478T ES99935478T ES2379704T3 ES 2379704 T3 ES2379704 T3 ES 2379704T3 ES 99935478 T ES99935478 T ES 99935478T ES 99935478 T ES99935478 T ES 99935478T ES 2379704 T3 ES2379704 T3 ES 2379704T3
Authority
ES
Spain
Prior art keywords
search
request
terms
term
requests
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
ES99935478T
Other languages
English (en)
Inventor
Ruben Ernesto Ortega
Dwayne Edward Bowman
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.)
Amazon com Inc
Original Assignee
Amazon com Inc
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 Amazon com Inc filed Critical Amazon com Inc
Application granted granted Critical
Publication of ES2379704T3 publication Critical patent/ES2379704T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3338Query expansion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9532Query formulation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Método de procesado de una petición de búsqueda que incluye por lo menos un término de petición escrito incorrectamente en un sistema informático (30) que implementa un motor de búsqueda (38) que es accesible a los usuarios a través de una red de ordenadores, comprendiendo el método las siguientes etapas implementadas por ordenador: (a) recibir la petición de búsqueda de un usuario a través de la red de ordenadores, comprendiendo la petición de búsqueda una pluralidad de términos de búsqueda y estando dirigida a una base de datos de información (40) en la que se va a realizar la búsqueda; (b) identificar, dentro de la petición de búsqueda, un término de búsqueda no coincidente que no produce una coincidencia dentro de la base de datos de información, y por lo menos un término de búsqueda coincidente que produce una coincidencia dentro de la base de datos de información; (c) usar datos de correlación de términos de búsqueda para identificar una pluralidad de términos adicionales que se consideran relacionados con dicho por lo menos un término de búsqueda coincidente, basándose los datos de correlación de términos de búsqueda por lo menos en sumisiones de peticiones históricas; y (d) comparar los términos adicionales identificados en la etapa (c) con el término no coincidente usando una función de comparación ortográfica para identificar un término adicional que es una sustitución candidata escrita correctamente para el término no coincidente, estando adaptada la función de comparación ortográfica: para comparar una primera y segunda cadenas de caracteres ordenando la primera y segunda cadenas y comparando carácter a carácter la primera y segunda cadenas ordenadas; y para generar una puntuación que indica un grado de similitud entre la primera y segunda cadenas de caracteres, y comparándose la puntuación con un valor umbral para determinar si un término adicional correspondiente es una sustitución candidata.

Description

Sistema y método para corregir errores ortográficos en peticiones de búsqueda.
Apéndice y material bajo derechos de autor
La presente memoria incluye como apéndice un listado C++ de una función de comparación ortográfica usada para comparar dos cadenas de caracteres. El contenido del apéndice esta sujeto a protección de derechos de autor. El propietario de los derechos de autor no plantea ninguna objeción a la reproducción en facsímil del documento de patente o de partes del mismo, tal como aparece en los archivos o registros de la Oficina de Patentes y Marcas de los Estados Unidos u otra oficina de patentes, aunque en cualquier otro caso se reserva todos los derechos.
Campo
La presente invención se refiere a la búsqueda y recuperación de información, y más específicamente, se refiere a métodos para procesar peticiones de búsqueda.
Antecedentes
Muchos sitios de la Malla Multimedia Mundial y servicios en línea proporcionan programas de motor de búsqueda (“motores de búsqueda”) para ayudar a los usuarios en la localización de artículos de interés de entre un dominio de artículos. Por ejemplo, sitios Webs tales como AltaVista e Infoseek proporcionan motores de búsqueda para ayudar a los usuarios a localizar otros sitios Web, y servicios en línea tales como Lexis y Westlaw implementan motores de búsqueda para ayudar a los usuarios a localizar artículos y dictámenes de tribunales. Adicionalmente, los comercios en línea proporcionan comúnmente motores de búsqueda para ayudar a los clientes a localizar artículos de entre un catálogo en línea.
Para realizar una búsqueda usando un motor de búsqueda, un usuario presenta una petición que contiene uno o más términos de búsqueda. La petición también puede identificar explícita o implícitamente un campo de registro a buscar, tal como el título, el autor o la clasificación por materia del artículo. Por ejemplo, un usuario de un sitio de librería en línea puede presentar una petición que contiene términos que el usuario cree que aparecen en el título de un libro. Un programa del servidor de peticiones del motor de búsqueda procesa la petición para identificar cualesquiera artículos que coinciden con la petición. Al conjunto de artículos identificados por el programa del servidor de peticiones se le hace referencia como “resultado de la petición” y se le presenta comúnmente al usuario en forma de una lista de los artículos localizados. En el ejemplo de la librería, el resultado de la búsqueda sería típicamente el conjunto de títulos de libros que incluyen todos los términos de búsqueda, y comúnmente se le presentaría al usuario en forma de un listado hipertextual de estos artículos.
Cuando el usuario de un motor de búsqueda escribe incorrectamente un término de búsqueda dentro de una petición, por ejemplo porque lo ha tecleado mal o no ha conseguido recordar el término, el término que se ha escrito incorrectamente no coincidirá normalmente con ninguno de los términos de la base de datos que cubre la búsqueda. En este caso, muchos motores de búsqueda simplemente devolverán un resultado de búsqueda nulo (vacío). No obstante, la presentación de resultados de búsqueda nulos a los usuarios puede provocar una frustración significativa de estos últimos. Para reducir este problema, algunos motores de búsqueda ignorar eficazmente el(los) término(s) no coincidente(s) durante la búsqueda. Esta estrategia presenta la desventaja de no conseguir tener en cuenta información potencialmente importante especificada por el usuario y tiende a producir resultados de petición que contienen números relativamente grandes de artículos irrelevantes.
La patente US nº 5.694.592 da a conocer un proceso para medir el grado en el que documentos particulares son relevantes para una petición de búsqueda, tal como una petición de búsqueda de lenguaje natural. Este proceso conlleva el uso de un léxico semántico (esencialmente una correspondencia de palabras con categorías semánticas
o significados asociados) para valorar los significados probables de palabras de peticiones específicas. El proceso valora también la importancia de cada palabra de búsqueda basándose en el número de documentos en los que aparece la palabra de petición. Si una palabra de petición dada no aparece en ninguno de los documentos en los que se está realizando la búsqueda, pero aparece en el léxico, el proceso puede sustituirla por un término relacionado seleccionado del léxico. En un ejemplo descrito en la patente US nº 5.694.592, el léxico se usa para sustituir la palabra de petición “partir”, que no aparece en ningún documento, por la palabra “salir”.
Un artículo titulado “Adapting a Full-text information Retrieval System to the Computer Troubleshooting Domain”, publicado en ACM Press, “Online”, Julio de 1994, de P.G Anick, describe la sintonización de un sistema de recuperación de información en el dominio de la resolución de problemas informáticos, en donde las peticiones de usuario tienden a ser breves y los términos en lenguaje natural se entremezclan con terminología de una variedad de sublenguajes técnicos. Anick menciona brevemente que se pueden usar datos de ficheros de registro de peticiones para detectar errores de ortografía pero no da a conocer cómo implementar la corrección ortográfica.
Sumario
La invención se define en las reivindicaciones.
La forma de realización de la invención afronta los problemas anteriores proporcionando un sistema y un método para corregir términos escritos incorrectamente dentro de peticiones de búsqueda. La forma de realización puede incluir una base de datos para datos de correlación que indican correlaciones entre términos de búsqueda. Los datos de correlación se pueden basar en las frecuencias con las cuales han aparecido históricamente juntos términos de búsqueda específicos dentro de la misma petición, y se pueden generar como, por ejemplo, a partir de un fichero de registro de peticiones. En el ejemplo, cada entrada dentro de la base de datos (implementada en forma de una tabla) comprende una palabra clave y una lista de “términos relacionados”, en donde la lista de términos relacionados está compuesta por los términos que han aparecido en combinación con la palabra clave con el grado más alto de frecuencia.
El método de corrección ortográfica se puede invocar cuando se presenta una petición de búsqueda que incluye por lo menos un término coincidente y por lo menos un término no coincidente. Usando la base de datos de correlación, se puede generar inicialmente una lista de términos que se consideran en relación con el término o términos coincidentes. Esto se puede lograr, por ejemplo, extrayendo la lista de términos relacionados para cada término coincidente, y si la petición incluye múltiples términos coincidentes, combinando estas listas en una única lista de términos relacionados.
Los términos relacionados se pueden comparar en cuanto a ortografía con el(los) término(s) no coincidente(s) para identificar cualesquiera sustituciones adecuadas. Las comparaciones ortográficas se pueden realizar usando una función de comparación ortográfica de tipo anagramático, que genera una puntuación que indica el grado de similitud entre dos cadenas de caracteres. En un ejemplo, si se encuentra un término relacionado, con una ortografía suficientemente similar a un término no coincidente, el término no coincidente se puede sustituir automáticamente por el término relacionado. Alternativamente, al usuario se le puede solicitar que seleccione el(los) término(s) de sustitución de entre una lista de términos. Una vez que se han sustituido el término o términos no coincidentes, la petición modificada se puede usar para realizar la búsqueda. Al usuario también se le puede notificar sobre la(s) modificación(es) realizada(s) en la petición.
Una ventaja importante del método de corrección ortográfica antes descrito con respecto a métodos convencionales de corrección ortográfica es que resulta significativamente más probable que los términos de sustitución seleccionados sean los términos que fueron introducidos por el usuario. Esta ventaja se puede potenciar adicionalmente a través del uso de datos de correlación de términos de búsqueda, y particularmente datos de correlación que reflejan las sumisiones de peticiones históricas. El método incrementa la probabilidad de que los resultados de la petición contengan artículos que sean de interés para el usuario. Otra ventaja es que el método resulta muy adecuado para corregir términos que no aparecen en el diccionario, tales como nombre propios de autores y artistas y términos peculiares dentro de títulos y nombres de productos.
En la forma de realización, los datos de correlación se pueden generar de tal manera que reflejen notablemente sumisiones de peticiones recientes, y que reflejen por lo tanto fuertemente las preferencias actuales de los usuarios. Esto se puede lograr, por ejemplo, generando periódicamente una tabla de correlación a partir de un número deseado (por ejemplo, 12) de los ficheros de registro de peticiones diarios más recientes. El uso de datos de correlación que reflejan notablemente sumisiones de peticiones recientes hace que aumente además la probabilidad de que las sustituciones realizadas por el proceso de corrección ortográfica sean aquellas deseadas por los usuarios.
Breve descripción de los dibujos
A continuación, se describirán estas y otras características de la invención en referencia a los dibujos que se resumen seguidamente. Estos dibujos y la descripción asociada se proporcionan para ilustrar la forma de realización de la invención, y no para limitar el alcance de la misma.
La Figura 1 ilustra un sitio Web que implementa un motor de búsqueda de acuerdo con la invención.
La Figura 2 ilustra una página de búsqueda de libros del sitio Web.
La Figura 3 ilustra el formato general de la tabla de correlación de la Figura 1.
La Figura 4 ilustra las etapas realizadas por el servidor de peticiones para procesar una sumisión de una petición.
La Figura 5 ilustra el formato general del fichero de registro de peticiones de la Figura 1.
La Figura 6 ilustra un proceso usado para generar periódicamente la tabla de correlación a partir del fichero de registro de peticiones.
Descripción detallada de las formas de realización preferidas
La presente invención proporciona un método para corregir errores ortográficos en peticiones que son presentadas a motores de búsqueda. Brevemente, el método conlleva el uso de datos de correlación de términos de búsqueda para identificar términos de búsqueda que están relacionados con el(los) término(s) de búsqueda escrito(s) correctamente de la petición, y la evaluación de si cualquiera de estos términos relacionados presenta una escritura similar al(a los) término(s) de búsqueda escrito(s) incorrectamente. Los datos de correlación de términos de búsqueda se basan preferentemente en sumisiones de peticiones históricas, y más específicamente, en las frecuencias con las cuales han aparecido previamente términos de búsqueda juntos dentro de la misma petición. El método se puede implementar dentro de cualquiera de una variedad de tipos diferentes de motores de búsqueda, incluyendo, por ejemplo, motores de búsqueda de Internet, motores de búsqueda de investigaciones legales, y motores de búsqueda proporcionados por comercios en línea.
Con fines ilustrativos, el método se describe en la presente en el contexto de un motor de búsqueda que se usa para ayudar a clientes de Amazon.com Inc. a localizar artículos (libros, CDs, etcétera) de entre un catálogo en línea de productos. Durante toda la descripción, se hará referencia a varios detalles específicos de la implementación de Amazon.com. Estos detalles se proporcionan con el fin de ilustrar en su totalidad la forma de realización de la invención, y no limitan el alcance de la misma. El alcance de la invención se expone en las reivindicaciones adjuntas.
I. Visión general del sitio Web y el motor de búsqueda
La Figura 1 ilustra el sitio Web de Amazon.com 30, que incluye componentes usados para implementar un motor de búsqueda de acuerdo con la invención. Tal como es bien sabido en la técnica del comercio por Internet, el sitio Web Amazon.com incluye una funcionalidad para permitir que los usuarios busquen, exploren, y realicen compras en un catálogo en línea de títulos de libros, títulos de piezas musicales, y otros tipos de artículos. Puesto que el catálogo contiene millones de artículos explorables, es importante que el sitio proporcione un mecanismo eficaz para ayudar a los usuarios a localizar artículos.
Tal como se ilustra por medio de la Figura 1, el sitio Web 30 incluye una aplicación de servidor Web 32 (“servidor Web”) que procesa solicitudes recibidas a través de Internet desde ordenadores de usuarios 34. Estas solicitudes incluyen peticiones de búsqueda que son presentadas por los usuarios para buscar en el catálogo productos. El servidor Web 32 graba transacciones de usuarios, incluyendo sumisiones de peticiones, dentro de un fichero de registro de peticiones 36. En la forma de realización representada en la Figura 1, el fichero de registro de peticiones 36 consta de una secuencia de archivos de ficheros de registro de peticiones diarios 36, cada uno de los cuales representa un día de transacciones.
El sitio Web 30 incluye también el servidor de peticiones 38 que procesa las peticiones de búsqueda mediante búsqueda en una base de datos bibliográfica 40. La base de datos bibliográfica 40 incluye información sobre los diversos artículos que están disponibles para su compra en el sitio. Esta información incluye, por ejemplo, los títulos, autores, editores, descripciones de materias e ISBNs (Números Normalizados Internacionales de Libros) de títulos de libros, y los títulos, artistas, discográficas, y clasificaciones musicales de títulos de piezas musicales. La información para cada artículo se dispone dentro de campos (tales como un campo de “autor” y un campo de “título”), permitiendo buscar en la base de datos 40 de una manera acotada por campos. El sitio incluye también una base de datos 41 de contenido HTML (Lenguaje de Marcado de Hipertexto) que incluye, entre otras cosas, páginas de información del producto que muestran y describen los diversos artículos del catálogo.
La Figura 2 ilustra el formato general de una página de búsqueda de libros que se puede usar para buscar títulos de libros en la base de datos bibliográfica 40. La página incluye campos de autor, título y materia 42, 43, 44 y controles asociados que permiten que el usuario inicie búsquedas de títulos de libros acotadas por el campo. Los usuarios también pueden acceder a una página de búsqueda musical (no mostrada) para buscar títulos de piezas musicales usando los campos de artista, título y discográfica. Otras áreas del sitio permiten que el usuario presente peticiones de búsqueda sin limitar los términos de búsqueda a campos de la base de datos específicos.
Cuando el usuario presenta una petición de búsqueda desde la página de búsqueda de libros u otra página del sitio, el servidor de peticiones 38 (Figura 1) aplica la petición a la base de datos bibliográfica 40, teniendo en cuenta cualquier acotación por campo dentro de la petición. Si el resultado de la petición es un único artículo, se le presenta al usuario la página de información de producto del artículo. Si el resultado de la petición incluye múltiples artículos, se le presenta al usuario una lista de los artículos a través de una o más páginas de resultados de búsqueda (no mostradas) que incluyen enlaces hipertextuales a las páginas de información de producto respectivas de los artículos.
Para peticiones de múltiples términos, el servidor de peticiones 38 aplica eficazmente una operación AND lógica a los términos de búsqueda entre sí para ejecutar la misma. Por ejemplo, si el usuario introduce los términos “Java” y “programación” en el campo de título, el servidor de peticiones 38 buscará y devolverá un listado de todos los artículos que presentan ambos términos mencionados dentro del título. De este modo, si cualquier término de búsqueda de la petición no produce una coincidencia (al cual se hace referencia en la presente como “término no coincidente”), la petición producirá un resultado de petición nulo. En este caso, al usuario se le puede presentar un listado de artículos que se le consideran como “casi coincidencias”.
Aunque el motor de búsqueda descrito en la presente aplica una AND lógica a los términos de búsqueda entre sí, se reconocerá que la invención se aplicará a motores de búsqueda que utilicen otros métodos para combinar términos de búsqueda.
II. Visión general de la característica de corrección ortográfica
De acuerdo con la invención, cuando un usuario presenta una petición de búsqueda de múltiples términos que incluye términos tanto coincidentes como no coincidentes, un proceso de corrección ortográfica 48 (Figura 1) del servidor de peticiones 38 usa el(los) término(s) coincidente(s), en combinación con datos de correlación de términos de búsqueda, para intentar corregir la escritura del(de los) término(s) no coincidente(s). Esto se logra preferentemente usando una tabla de correlación de términos de búsqueda 50 para identificar términos adicionales que se considera que están en relación con el(los) término(s) de búsqueda coincidente(s), y a continuación comparando las escrituras de dichos términos relacionados con la(s) ortografía(s) del(de los) término(s) no coincidente(s). Por ejemplo, si un usuario presenta la petición
Java APPI,
y “APPI” es un término no coincidente, el proceso de corrección de escritura 48 usa la tabla de correlación para identificar una lista de términos que se consideran en relación con “Java”. Esta lista podría ser la siguiente: café, programación, API, gestión, lenguaje. Al comparar ortografía de estos términos relacionados, con la escritura del término no coincidente, el proceso de corrección ortográfica 48 identificará “API” como término de sustitución candidato. Las comparaciones de escritura se realizan preferentemente usando una función de comparación ortográfica de tipo anagramático que genera una puntuación que indica el grado de similitud entre dos cadenas de caracteres.
Los datos contenidos dentro de la tabla de correlación 50 indican relaciones entre términos de búsqueda, y se usan para predecir de manera eficaz términos de búsqueda que es probable que aparezcan dentro de la misma petición. La incorporación de dichas predicciones en el proceso de corrección ortográfica hace que aumente significativamente la probabilidad de que un término de sustitución dado identificado por el proceso sea el término que era deseado por el usuario.
Si el proceso anterior identifica una sustitución adecuada para un término no coincidente dado, el término no coincidente se sustituye automáticamente por el término relacionado. Si no se halla ninguna sustitución adecuada para un término no coincidente dado, el término no coincidente se elimina preferentemente de la petición. Una vez que todos los términos no coincidentes o bien se han sustituido o bien se han eliminado, la petición modificada se usa para buscar en la base de datos bibliográfica 40 y el resultado se le presenta al usuario. Al usuario se le notifica(s) también la(s) modificación(es) realizada(s) en la petición de búsqueda.
Como alternativa a la sustitución automática del(de los) término(s) no coincidente(s), se puede solicitar al usuario que seleccione el(los) término(s) de sustitución de entre una lista de términos de sustitución candidatos. Esto se logra preferentemente presentando cada término de sustitución candidato en forma de un hiperenlace respectivo (no mostrado) que puede ser seleccionado por el usuario para iniciar la búsqueda modificada; de este modo, el usuario puede tanto seleccionar una petición modificada como iniciar una búsqueda nueva con una única acción.
De acuerdo con otro aspecto de la invención, la tabla de correlación 50 preferentemente contiene o refleja información histórica sobre las frecuencias con las cuales han aparecido juntos términos de búsqueda específicos dentro de la misma petición de búsqueda. Tal como se representa en la Figura 1, estos datos se extraen preferentemente del fichero de registro de peticiones 36 usando un proceso de generación de tablas 46. La incorporación de dicha información histórica en el proceso de corrección ortográfica hace que aumente además la probabilidad de que un término de sustitución localizado por el proceso sea el término que era deseado por el usuario.
En el ejemplo (descrito posteriormente), el proceso de generación de tablas 46 regenera la tabla de correlación 50 de una forma diaria a partir de los M archivos de ficheros de registro diarios más recientes 36(1)-36(M), en donde M es un número fijo tal como diez o veinte. Este planteamiento de “ventana deslizante” produce de manera ventajosa una tabla de correlación que se basa únicamente en sumisiones de peticiones recientes, y que por lo tanto refleja las preferencias actuales de los usuarios. Por ejemplo, si un número relativamente grande de usuarios ha buscado el libro Into Thin Air de Jon Krakauer durante la última semana, es probable que las correlaciones entre los términos “into”, “thin”, “air”, y “Krakauer” sean de forma correspondiente elevadas; estas correlaciones elevadas a su vez harán que aumente la probabilidad de que un usuario que escribe incorrectamente un término (de una petición de múltiples términos) mientras está buscando este libro sea dirigido al mismo. En el fichero de registro se puede aplicar cualquiera de una variedad de otros tipos de métodos de encauzamiento para lograr un resultado similar, incluyendo métodos que aplican un peso mayor a sumisiones de peticiones recientes que a sumisiones de peticiones antiguas.
La Figura 3 ilustra el formato general de la tabla de correlación 50. En el ejemplo representado en la Figura 3 y descrito de forma detallada en la presente, las correlaciones entre términos de búsqueda se basan meramente en la frecuencia de aparición dentro de la misma petición. Tal como se ha descrito anteriormente, se pueden usar de forma adicional o alternativa otros tipos de correlaciones de términos de búsqueda. Adicionalmente, aunque la implementación dada a conocer usa una tabla para almacenar las tablas de correlación, se pueden usar otros tipos de bases de datos.
Tal como se ilustra por medio de la Figura 3, cada entrada dentro de la tabla de correlación (se muestran 3 entradas) tiene preferentemente dos componentes principales: (1) una palabra clave 60, y (2) una lista de “términos relacionados” 62 para esa palabra clave. La lista de términos relacionados 62 es una lista de los N (por ejemplo, 20) términos de búsqueda que han aparecido dentro de la misma petición que la palabra clave, con el grado más alto de frecuencia, y está ordenada de acuerdo con la frecuencia. Por ejemplo, la entrada para la palabra clave COSMOS es:
COSMOS: ASTRONOM�?A, SAGAN, UNIVERSO, ESPACIO, CARL…
lo cual indica que ASTRONOM�?A ha aparecido junto con COSMOS con el grado más alto de frecuencia; SAGAN ha aparecido con COSMOS con el segundo grado más alto de frecuencia, y así sucesivamente. Cada término que aparece dentro de la parte de lista 62 se considera en relación con la palabra clave correspondiente 60 en virtud de la frecuencia relativamente alta con la que han aparecido los términos dentro de la misma petición. En la implementación descrita en el presente documento, las palabras claves y los términos relacionados se almacenan en la tabla sin tener en cuenta el orden alfabético, aunque alternativamente se puede conservar información sobre el orden alfabético.
En referencia adicionalmente a la Figura 3, cada término relacionado y cada palabra clave 60 dentro de la tabla 50 incluye preferentemente un prefijo de campo de un solo carácter (no mostrado) que indica el campo de búsqueda 42, 43, 44 con el cual se corresponde el término (basándose en los campos de búsqueda en los cuales fueron introducidos los términos por usuarios). Estos prefijos pueden ser, por ejemplo, los siguientes: A - autor, T = título, M
-
materia, R -artista, D - discográfica. De este modo, por ejemplo, si la palabra clave COSMOS en la Figura 3 tiene el prefijo “T” y el término relacionado SAGAN tiene el prefijo “A”, esto indicaría que se presentó un número relativamente grande de peticiones que incluían COSMOS en el campo de título 43 junto con SAGAN en el campo de autor 42. Tal como se describe posteriormente, los prefijos de los términos relacionados son usados por el proceso de corrección ortográfica 48 para filtrar de manera eficaz los términos no correspondientes a campos de entre las listas de términos relacionados, de manera que un término no coincidente dentro de un campo de búsqueda dado se comparará únicamente con términos relacionados del mismo campo. De este modo, por ejemplo, un término no coincidente dentro del campo de autor 42 se comparará únicamente con otros términos que hayan sido introducidos históricamente en el campo de autor 42. El proceso de corrección ortográfica 48 usa de modo similar los prefijos de las palabras claves 60 para seleccionar entradas de la tabla que se corresponden con los campos de búsqueda respectivos de los términos coincidentes. Por ejemplo, si se recibe una petición errónea queincluye el término coincidente MONTAÑA dentro del campo de título 43, el proceso de corrección ortográfica 48 buscará una entrada de la tabla que tenga la palabra clave TMONTAÑA.
Tal como se representa adicionalmente en la Figura 3, la tabla de correlación 50 incluye también preferentemente puntuaciones de correlación 64 que indican el número de veces que ha aparecido cada término relacionado encombinación con la palabra clave. Por ejemplo, el término PROGRAMACIÓN tiene una puntuación de 320 en laentrada correspondiente a JAVA, lo cual indica que JAVA y PROGRAMACIÓN aparecieron dentro de la misma petición (dentro de los campos indicados por sus prefijos de campo respectivos) trescientas veinte veces. Tal como se describe posterior, el proceso de generación de tablas 46 ignora peticiones que produjeron un resultado de petición nulo, y por lo tanto las mismas no se reflejan en las puntuaciones de correlación 64. En otras implementaciones, las puntuaciones de correlación 64 pueden incorporar otros tipos de correlaciones. Tal como se describe posteriormente, las puntuaciones 64 se usan preferentemente para fusionar listas de términos relacionados cuando una petición tiene múltiples términos coincidentes.
Durante el funcionamiento, cuando el servidor de peticiones 38 determina que una petición contiene un término de búsqueda tanto coincidente como no coincidente, el proceso de corrección ortográfica 48 accede inicialmente a la tabla de correlación 50 para extraer la lista de términos relacionados asociadas 62. Si la petición incluye múltiples términos de búsqueda coincidentes, el proceso 48 obtiene la lista de términos relacionados 62 para cada término coincidente y fusiona estas listas entre sí (tal como se describe posteriormente) para generar una lista de términos relacionadas compuestas. Tal como se ha indicado anteriormente, a continuación el proceso compara las escrituras de los términos relacionados resultantes con la(s) escritura(s) del(de los) término(s) no coincidente(s), y el bien sustituye o bien elimina cada término no coincidente de la petición. Durante el proceso de comparación ortográfica, cada término no coincidente se compara de forma preferente únicamente con aquellos términos relacionados que caen dentro del campo de búsqueda del término no coincidente.
Una ventaja importante de este método es que el mismo resulta particularmente muy adecuado para corregir escrituras incorrectas de términos que no aparecen en el diccionario. La técnica resulta por lo tanto particularmente útil para identificar artículos que tienden a caracterizarse por medio de términos que no son del diccionario. Dichos artículos incluyen, por ejemplo, productos vendidos por comercios en línea, opiniones de tribunales (identificadas comúnmente por los nombres de las partes), y negocios y su sitio Web. En el contexto de una tienda de libros/musical en línea, por ejemplo, el método es útil para corregir escrituras incorrectas de nombres propios de autores/artistas y términos peculiares que aparezcan dentro de los títulos. Por ejemplo, un usuario que busque un libro de Jon Krakauer podría encontrar el libro tecleando unas pocas palabras del título más una versión escrita incorrectamente de “Krakauer”. La probabilidad de que la búsqueda identifique el libro deseado será particularmente alta si un número relativamente grande de usuarios ha buscado recientemente el mismo libro.
Aunque el método usa preferentemente correlaciones de términos de búsqueda que se basan en sumisiones de peticiones anteriores, debería entenderse que los datos de correlación se pueden generar alternativamente a partir de otras fuentes. Por ejemplo, los datos de correlación se pueden generar procesando la información en la base de datos bibliográfica 40 para identificar términos que aparecen juntos dentro del mismo registro de artículo, título, descripción de artículo, revisión de libro u otro campo de la base de datos; al realizar este proceso, a cada artículo se le puede conceder un peso que sea proporcional, por ejemplo, al número de unidades de ese artículo vendido durante esa semana.
Adicionalmente, el método se puede modificar para incorporar otros tipos de correlaciones, incluyendo correlaciones basadas en otros tipos de acciones históricas del usuario. Por ejemplo, en la extracción de datos de correlación del fichero de registro de peticiones 36, se puede asignar un peso mayor a sumisiones de peticiones que, basándose en las acciones posteriores de los usuarios, se puede considerar que han producido un resultado de petición satisfactorio. Dicho resultado satisfactorio se puede presuponer, por ejemplo, si el usuario visiona, compra o añade a un carrito de la compra un artículo localizado por la búsqueda.
En referencia adicionalmente a la Figura 1, el servidor Web 32, el servidor de peticiones 38, el proceso de generación de tablas 46, y el software de la base de datos se ejecutan en uno o más servidores y estaciones de trabajo basados en Unix (no mostrados) del sitio Web 30. La tabla de correlación 50 se almacena en una RAM (memoria de acceso aleatorio) en la misma estación de trabajo que la usada para implementar el servidor de peticiones 38.
III. Método de procesado de las consultas
A continuación se describirá de forma más detallada el proceso de corrección ortográfica en referencia a la Figura 4, que es un diagrama de flujo de las etapas realizadas por el servidor de peticiones 38 (Figura 1) cuando un usuario presenta una petición. Para ilustrar este proceso, se supondrá que el usuario está buscando libros sobre senderismo (hiking) por la Ruta de los Apalaches (Appalachian Trail) y ha tecleado la siguiente petición en el campo de materia 44 (Figura 2): “hike Appalatian trail” (“senderismo ruta Appalaches”). Se supondrá también que “Appalatian” (“Appalaches”) es un término no coincidente (aunque “Appalachian” (“Apalaches”) es coincidente) y que “hike” (“senderismo”) y “trail” (“ruta”) son términos coincidentes que tienen las siguientes listas de términos relacionados:
HIKE: CAMPING (235), WALKS (160), TRAIL (150) TRAIL: BIKE (200), APPALACHIAN (165), WALKS (50)
Se supondrá también que la totalidad de las palabras clave y términos relacionados anteriores tienen un prefijo de campo de “M” de “materia”.
Tal como se indica en la etapa 70, el servidor de peticiones 38 inicialmente aplica la petición a la base de datos bibliográfica 40. Tal como se representa mediante las etapas 72 y 74, si se hallan uno o más artículos, el servidor de peticiones devuelve una lista de estos artículos al servidor Web 32. El servidor Web 32 a su vez incorpora esta lista a una o más páginas de resultados de búsqueda, o, si solamente se localiza un artículo, devuelve la página de información de producto correspondiente a este artículo. Adicionalmente, el servidor Web registra el número de artículos hallados en el fichero de registro de peticiones 36 (véase Figura 5). En el presente ejemplo, no se hallaría ningún artículo puesto que “Appalatian” (“Appalaches”) no existe como palabra de materia en la base de datos bibliográfica 40.
Si, tal como en el presente ejemplo, el número de artículos hallados es cero en la etapa 72, el servidor de peticiones 38 determina si la petición incluye términos tanto coincidentes como no coincidentes (etapa 76). Si los incluye, el servidor de peticiones 38 invoca su proceso de corrección ortográfica 48 (etapas 80 a 90 de la Figura 4) para intentar corregir el(los) término(s) no coincidente(s). Si no los incluye, se devuelve un mensaje al usuario (etapa 78) indicando que no se hallaron coincidencias exactas; en este caso, el servidor de peticiones 38 también puede generar y devolver una lista de “casi coincidencias”, que puede incluir artículos que contienen solamente un subconjunto de los términos coincidentes. El servidor de peticiones 38 se podría configurar de manera adicional o alternativa para invocar un método de corrección ortográfica alternativo (no mostrado) con el fin de intentar corregir cualquier(cualesquiera) término(s) no coincidente(s). En el presente ejemplo, se invocaría el proceso de corrección ortográfica 48 puesto que la petición incluye términos tanto coincidentes como no coincidentes.
5 El proceso de corrección ortográfica comienza en la etapa 80 mediante la recuperación de la lista de términos relacionados para cada término coincidente a partir de la tabla de correlación 50. Si no se halla ninguna lista (entrada de tabla) de términos relacionados de la etapa 80, el proceso preferentemente devuelve un mensaje de resultado de petición nulo y finaliza (no se muestra). Alternativamente, el proceso podría usar un método alternativo
10 de corrección ortográfica para intentar corregir el(los) término(s) no coincidente(s), o podría generar y devolver una lista de “casi coincidencias”.
Si, tal como en el presente ejemplo, la petición incluye múltiples términos coincidentes, las listas de términos relacionados para estos términos se fusionan entre sí en la etapa 80 para formar una lista compuesta de términos 15 relacionados. Las listas se pueden fusionar, por ejemplo, combinando las listas mientras se suman las puntuaciones de correlación de cualesquiera términos cruzados (términos que aparecen en múltiples listas), y a continuación clasificando la lista compuesta según el orden de la puntuación de frecuencia de masa alta-a-más baja. En el presente ejemplo, este método produciría la siguiente lista de términos relacionados: CAMPING (235), WALKS (210), BIKE (200), APPALACHIAN (165), TRAIL (150). La lista compuesta clasificada se puede truncar para reducir
20 la carga de procesado de las etapas posteriores.
A continuación el proceso de corrección ortográfica entra en un bucle (etapas 84 a 90) en el que se comparan las escrituras del(de los) término(s) no coincidente(s) y los términos relacionados. En cada pasada de este bucle, el proceso compara un término no coincidente con la lista de términos relacionados uno a uno (etapa 84), excluyendo 25 cualesquiera términos relacionados que tengan prefijos de campo que no se correspondan con el campo de búsqueda del término no coincidente. Las comparaciones se realizan usando una función de tipo anagramático que compara dos cadenas de caracteres y devuelve una puntuación de similitud numérica. La puntuación de similitud indica el grado de similitud entre las escrituras de las dos cadenas, e indica por lo tanto la probabilidad de que el término relacionado dado sea una sustitución adecuada para el término no coincidente actual. Una puntuación de
30 similitud de cero indica el grado más alto de similitud, y las puntuaciones progresivamente mayores indican grados de similitud progresivamente inferiores.
Las etapas realizadas por la función de comparación ortográfica para comparar CADENA1 con CADENA2 se exponen a continuación, en las cuales la variable RESULTADO representa la puntuación que devuelve la función. 35 Se adjunta como apéndice un listado de código de una implementación en C++ del método (implementado como dos funciones independientes).
Etapa 1: ordenar CADENA1 y CADENA2 en orden alfabético.
40 Etapa 2: inicializar PUNTERO1 al primer carácter de CADENA1 ordenada; PUNTERO2 al primer carácter de CADENA2 ordenada y RESULTADO a cero.
Etapa 3: comparar caracteres respectivos a los que apunta PUNTERO1 y PUNTERO2 sin tener en cuenta mayúsculas y minúsculas. Si son iguales, hacer avanzar ambos punteros al siguiente carácter de la 45 cadena; si no, hacer avanzar el puntero que apunta al carácter alfabéticamente inferior e incrementar
RESULTADO en 1.
Etapa 4: repetir la etapa 3 hasta que un puntero se hace avanzar más allá del último carácter de su cadena respectiva. 50 Etapa 5: si uno de los punteros está apuntando todavía a un carácter, sumar a RESULTADO el número de caracteres (incluyendo el carácter al que se apunta) que quedan en esa cadena.
En el presente ejemplo, la etapa 84 da como resultado que el término no coincidente APPALATIAN se compare con 55 los términos CAMPING, WALKS, BIKE, APPALACHIAN, y TRAIL. Las puntuaciones generadas por estas comparaciones se enumeran en la siguiente tabla.
TABLA
TÉRMINO RELACIONADO
CADENA ORDENADA COMPARADA CON “AAAAILNPPT” PUNTUACIÓN DE SIMILITUD
CAMPING
ACGIMNP 9
WALKS
AKLSW 11
BIKE
BEIK 12
APPALACHIAN
AAAACHILNPP 3
TRAIL
AILRT 7
En la etapa 86, se evalúan las puntuaciones para determinar si cualquiera de los términos relacionados presenta una escritura suficientemente similar como para ser un término de sustitución candidato. En la forma de realización preferida, se considera que un término relacionado es similar (y por lo tanto una sustitución candidata) si su puntuación es menor que o igual a la mitad de la longitud del término no coincidente (“umbral de similitud”). En el presente ejemplo, el término “Appalachian” pasa la prueba de similitud (puesto que 3 5) y los restantes términos relacionados no.
Para incrementar la eficacia de la función de comparación ortográfica, el proceso en la etapa 3 se puede detener una vez que RESULTADO supera el umbral de similitud. La eficacia también se podría incrementar deteniendo el procesado de términos adicionales una vez que se ha identificado un término con una puntuación suficientemente baja (por ejemplo, 0).
Si por lo menos un término relacionado pasa la prueba de similitud en la etapa 86, el término no coincidente se sustituye por el término relacionado que presenta la puntuación más baja (etapa 88). Si múltiples términos relacionados comparten la puntuación más baja en la etapa 88, el término que se sitúa primero en la lista de términos relacionados (y que por lo tanto presenta la puntuación de frecuencia más alta) se usa como sustitución.
Si ninguno de los términos relacionados pasa la prueba de similitud en la etapa 86, el término no coincidente se elimina de la petición. Alternativamente, en este momento se le podría devolver al usuario un mensaje de resultado de petición nulo. Una vez que todos los términos no coincidentes o bien se han sustituido o bien se han eliminado, se vuelve a intentar la búsqueda usando la petición modificada y el resultado se devuelve al usuario (etapa 94).
Si la búsqueda que se ha intentado de nuevo en la etapa 94 produce uno o más artículos, los artículos se presentan junto con un mensaje que indica la(s) modificación(es) realizada(s) en la petición. En el presente ejemplo, este mensaje podría decir lo siguiente:
No se halló ningún libro que incluyera la palabra de materia “Appalatian”. Sin embargo, se volvió a intentar su búsqueda usando el término “Appalachian” en lugar de “Appalatian” y se encontraron los siguientes títulos:
El resultado de la página de búsqueda preferentemente también presenta y permite que el usuario edite la petición modificada de manera que el usuario puede rechazar eficazmente la(s) sustitución(es) del término de búsqueda y/o alternativamente revisar la petición.
Si la búsqueda que se ha intentado nuevamente en la etapa 94 no produce ninguna coincidencia exacta, al usuario se le puede presentar una lista de casi coincidencias, o simplemente se le puede notificar que no halló ninguna coincidencia. Como alternativa, se pueden intentar sustituciones y búsquedas adicionales.
Tal como se apreciará a partir de lo anterior, el proceso de la Figura 4 se puede modificar según cualquiera de una variedad de maneras para lograr un objetivo deseado. Por ejemplo, se podrían generar y usar tablas de correlación independientes para tipos diferentes de artículos (por ejemplo, libros con respecto a música) y/o tipos diferentes de campos (por ejemplo, títulos con respecto a materia). Además, el proceso de corrección ortográfica se podría usar únicamente para corregir escrituras incorrectas dentro de un campo específico (tal como el campo de autor 42), o se podría aplicar únicamente a términos no coincidentes que no aparezcan dentro de un diccionario de términos.
IV. Generación de tabla de correlación
A continuación se describirá en referencia a las Figuras 5 y 6 el proceso de generación de tablas 46 (Figura 1).
El proceso de generación de tablas 46 se implementa como un proceso fuera de línea que se genera periódicamente, por ejemplo, una vez por día, para generar una nueva tabla de correlación 50. Tal y como se ha descrito anteriormente, el proceso genera la tabla a partir de los M archivos de ficheros de registro de peticiones diarias más recientes 36(1) a 36(M). El uso de una M relativamente pequeña (por ejemplo, 5) tiende a producir datos de correlación que reflejan notablemente tendencias de compra de corto plazo (por ejemplo, versiones nuevas, best- sellers semanales, etcétera), mientras que el uso de una M mayor (por ejemplo, 100) tiende a producir una base de datos más exhaustiva. Se puede usar alternativamente un planteamiento híbrido en el que la tabla se genera a partir de un número grande de archivos de ficheros de registro, pero en el cual a los archivos de ficheros de registro más recientes se les asigna un peso mayor. Por ejemplo, las peticiones presentadas durante las últimas semanas se pueden contar tres veces cuando se generan las puntuaciones de correlación 64, mientras que las peticiones presentadas desde hace una semana hasta un mes se pueden contar solamente una vez.
La Figura 5 ilustra el formato general de los archivos de ficheros de registros de peticiones. Cada entrada en el fichero de registro (se muestran cuatro entradas) incluye información sobre una transacción HTTP (Protocolo de Transferencia de Hipertexto) particular. Por ejemplo, la entrada 100 indica que a las 2:23 AM del 13 de febrero de 1998, el usuario 29384719287 presentó la petición {autor=Seagal, título=Human Dynamics} desde la página de búsqueda de libros y que se hallaron dos artículos que coincidían con la petición. Los valores de ART�?CULOS_HALLADOS (ITEMS_FOUND) en el fichero de registro indican preferentemente el número de artículos que coincidieron exactamente con la petición original, y por lo tanto no reflejan ni “casi coincidencias” ni coincidencias resultantes de correcciones ortográficas.
La entrada 102 indica que el mismo usuario seleccionó un artículo que tenía un ISBN de 1883823064 aproximadamente veinte segundos más tarde, y que esta selección se realizó desde una página de resultados de búsqueda (tal como resulta evidente a partir de la línea de “ORIGEN_HTTP). Dentro de los archivos de los ficheros de registro se reflejan de modo similar otros tipos de acciones de usuario, tales como una solicitud de colocar un artículo en un carrito de la compra o de comprar un artículo. Tal como se ha indicado mediante el anterior ejemplo, una ruta de navegación de un usuario dado se puede determinar comparando entradas dentro del fichero de registro
36.
La Figura 6 ilustra la secuencia de etapas realizadas por el proceso de generación de tablas 46. En este ejemplo, se supone que el proceso se ejecuta una vez por día en la medianoche, justo después de que se haya cerrado el archivo del fichero de registro diario más reciente. Se supone también que ya se han procesado los M-1 archivos de ficheros de registro diarios más recientes usando las etapas 110 a 114 del proceso para generar archivos de resultados diarios respectivos.
En la etapa 110, el proceso analiza sintácticamente el nuevo archivo de fichero de registro diario para extraer todaslas sumisiones de peticiones para las cuales ART�?CULOS_HALLADOS>0. El hecho de ignorar las presentacionesde sumisiones que produjeron un resultado de petición nulo (ART�?CULOS_HALLADOS=0) proporciona las ventajas importantes de (1) evitar que se añadan a la tabla de correlación términos no coincidentes o bien como palabras clave o bien como términos relacionados y (2) excluir la consideración de correlaciones potencialmente “débiles” entre términos coincidentes.
En la etapa 112, las entradas extraídas en la etapa 110 se procesan para la correlación de términos de búsqueda según la frecuencia de aparición dentro de la misma petición. Esta etapa conlleva el recuento, para cada par de términos de búsqueda que aparecieron dentro de la misma petición por lo menos una vez, del número de veces que aparecieron juntos los dos términos durante todo el día. Durante este proceso, los términos idénticos que se presentaron en campos de búsqueda diferentes se tratan como términos diferentes. Por ejemplo, el término TRAIL con un prefijo de campo de “T” se trataría como si fuera diferente de TRAIL con un prefijo de “M”.
Tal como se ha indicado anteriormente, durante el proceso de la etapa 112 se puede tener en cuenta cualquiera de una variedad de otros factores. Por ejemplo, una sumisión de petición dada se puede contar dos veces si el usuario posteriormente seleccionó un artículo de la página de resultados de búsqueda, y se puede contar una tercera vez si el usuario a continuación compró el artículo o añadió el mismo a un carrito de compra personal. En el proceso también se pueden incorporar datos de correlación intrínsecos. Los resultados de la etapa 112, que se presentan en la forma general de la tabla de correlación de la Figura 3, se guardan como archivo de resultados diario.
En la etapa 116 el archivo de resultados diario creado en la etapa 114 se fusiona con los últimos M-1 archivos de resultados diarios para producir la tabla de correlación 50. Como parte de este proceso, las listas de términos relacionados se truncan a una longitud fija de N, y los datos de correlación resultantes se almacenan en una estructura de datos de árbol B para lograr una petición eficaz. A continuación, la nueva tabla de correlación 50 se escribe en la RAM en lugar de la tabla de correlación existente.
Aunque esta invención se ha descrito en términos de ciertos ejemplos preferidos, otros ejemplos que resultan evidentes para aquellos con conocimientos habituales en la técnica se sitúan también dentro del alcance de la invención. Por consiguiente, el alcance de la presente invención está destinado a quedar definido únicamente por referencia a las reivindicaciones adjuntas.
En las reivindicaciones que siguen, los caracteres de referencia usados para indicar etapas del proceso se proporcionan únicamente por comodidad descriptiva, y no para implicar un orden particular de realización de las etapas.
Apéndice
char *sort_string(char*string_to_sort) { qsort(strin_to_sort, strlen(string_to_sort), sizeof(char), qsort_char_compare);
return string_to_sort; } int score_sorted_strings(char* string1, char* string2) {
int result = 0; int finished = FALSE; int compare = 0; unsigned char* str1_ptr = (unsigned char*) string1; unsigned char* str2_ptr = (unsigned char*) string2; while (!finished) { -if (*str1_ptr = = 0 || *str2_ptr = = 0)
finished = TRUE; /* La función de puntuación compara dos caracteres; si son iguales, se incrementan ambos punteros para avanzar, si no, se incrementa solamente el puntero menor y se realiza una comparación nuevamente */ if (!finished) {
compare = qsort_char_compare((void*)str1_ptr, (void*)str2_ptr); if ( compare < 0) { str1_ptr++; result+ +;
} else if (compare > 0) { str2_ptr + + ; result+ +;
} else if ( compare = = 0) { str1_ptr++; str2_ptr+ +; }
} } /* Añadir a la puntuación cualesquiera resultados restantes */ while (*str1_ptr++ !=NULL) {
result + + ; } while (*str2_ptr++ != NULL) {
result+ +; } return result;
}

Claims (25)

  1. REIVINDICACIONES
    1. Método de procesado de una petición de búsqueda que incluye por lo menos un término de petición escrito incorrectamente en un sistema informático (30) que implementa un motor de búsqueda (38) que es accesible a los usuarios a través de una red de ordenadores, comprendiendo el método las siguientes etapas implementadas por ordenador:
    (a)
    recibir la petición de búsqueda de un usuario a través de la red de ordenadores, comprendiendo la petición de búsqueda una pluralidad de términos de búsqueda y estando dirigida a una base de datos de información (40) en la que se va a realizar la búsqueda;
    (b)
    identificar, dentro de la petición de búsqueda, un término de búsqueda no coincidente que no produce una coincidencia dentro de la base de datos de información, y por lo menos un término de búsqueda coincidente que produce una coincidencia dentro de la base de datos de información;
    (c)
    usar datos de correlación de términos de búsqueda para identificar una pluralidad de términos adicionales que se consideran relacionados con dicho por lo menos un término de búsqueda coincidente, basándose los datos de correlación de términos de búsqueda por lo menos en sumisiones de peticiones históricas; y
    (d)
    comparar los términos adicionales identificados en la etapa (c) con el término no coincidente usando una función de comparación ortográfica para identificar un término adicional que es una sustitución candidata escrita correctamente para el término no coincidente, estando adaptada la función de comparación ortográfica:
    para comparar una primera y segunda cadenas de caracteres ordenando la primera y segunda cadenas y comparando carácter a carácter la primera y segunda cadenas ordenadas; y para generar una puntuación que indica un grado de similitud entre la primera y segunda cadenas de caracteres, y
    comparándose la puntuación con un valor umbral para determinar si un término adicional correspondiente es una sustitución candidata.
  2. 2.
    Método según la reivindicación 1, en el que los datos de correlación de términos de búsqueda se basan por lo menos en frecuencias con las cuales han aparecido previamente términos de búsqueda en la misma petición.
  3. 3.
    Método según la reivindicación 1 ó la reivindicación 2, que comprende además la etapa de procesar sumisiones de peticiones históricas dentro de un fichero de registro para generar los datos de correlación de términos de búsqueda.
  4. 4.
    Método según la reivindicación 3, en el que la etapa de procesar sumisiones de peticiones históricas comprende aplicar una función de ventana al fichero de registro.
  5. 5.
    Método de la reivindicación 3 ó la reivindicación 4, en el que la etapa de procesar sumisiones de peticiones históricas comprende ignorar peticiones que produjeron resultados de petición nulos.
  6. 6.
    Método según cualquiera de las reivindicaciones anteriores, en el que el valor umbral depende de una longitud del término no coincidente.
  7. 7.
    Método según cualquiera de las reivindicaciones anteriores, que comprende además las siguientes etapas implementadas por ordenador:
    (e)
    sin requerir una entrada de datos por el usuario, sustituir el término no coincidente por el término de sustitución candidato dentro de la petición de búsqueda para generar una petición de búsqueda modificada;
    (f)
    aplicar la petición de búsqueda modificada a la base de datos de información con el fin de realizar una búsqueda; y
    (g)
    notificar al usuario el resultado de la petición de la etapa (f) y la sustitución realizada en la etapa (e).
  8. 8.
    Método según cualquiera de las reivindicaciones 1 a 6, en el que la etapa (d) comprende identificar una pluralidad de términos de sustitución candidatos escritos correctamente para el término no coincidente, y el método comprende además presentar al usuario una lista de los términos de sustitución candidatos para su selección.
  9. 9.
    Método según la reivindicación 8, en el que la etapa de presentar al usuario una lista comprende presentar cada término de sustitución candidato dentro de un respectivo hiperenlace que puede ser seleccionado por el usuario para
    iniciar una búsqueda modificada.
  10. 10.
    Método según cualquiera de las reivindicaciones anteriores, en el que la etapa (b) comprende identificar una pluralidad de términos de búsqueda no coincidentes dentro de la petición de búsqueda, y el método comprende repetir la etapa (e) para cada uno de los términos de búsqueda no coincidentes con el fin de identificar un término de sustitución candidato para cada término de búsqueda no coincidente.
  11. 11.
    Método según cualquiera de las reivindicaciones anteriores, en el que la etapa (c) comprende:
    (c1) para cada uno de entre una pluralidad de términos de búsqueda coincidentes, identificar una lista respectiva de términos relacionados; y
    (c2) combinar las listas de términos relacionados identificadas en la etapa (c1).
  12. 12.
    Método según cualquiera de las reivindicaciones anteriores, que comprende además procesar peticiones de búsqueda sometidas al motor de búsqueda por una pluralidad de usuarios durante un periodo de tiempo para generar los datos de correlación (50), indicando los datos de correlación correlaciones entre términos de búsqueda sobre la base de por lo menos frecuencias de apariciones anteriores de los términos de búsqueda dentro de la misma petición de búsqueda.
  13. 13.
    Método según la reivindicación 12, en el que dicho procesado de peticiones de búsqueda comprende actualizar los datos de correlación sustancialmente en tiempo real a medida que se reciben peticiones de búsqueda de los usuarios.
  14. 14.
    Método según la reivindicación 12 ó la reivindicación 13, en el que dicho procesado de peticiones de búsqueda comprende analizar sintácticamente un fichero de registro que incluye peticiones sometidas al motor de búsqueda.
  15. 15.
    Método según la reivindicación 14, en el que dicho procesado de peticiones de búsqueda comprende además aplicar una función de sesgado basada en el tiempo al fichero de registro para favorecer las sumisiones de peticiones de búsqueda recientes con respecto a las sumisiones de peticiones de búsqueda antiguas.
  16. 16.
    Método según la reivindicación 15, en el que dicha aplicación de una función de sesgado basada en el tiempo comprende aplicar una función de ventana al fichero de registro.
  17. 17.
    Método según cualquiera de las reivindicaciones 12 a 16, en el que dicho procesado de peticiones de búsqueda comprende ignorar peticiones de búsqueda que producen un resultado de petición nulo.
  18. 18.
    Método según cualquiera de las reivindicaciones 12 a 17, en el que dicho procesado de peticiones de búsqueda comprende además evaluar acciones de usuarios posteriores a la sumisión de peticiones para identificar peticiones de búsqueda que se considera que han producido un resultado satisfactorio, y ponderar con mayor intensidad las peticiones de búsqueda que produjeron un resultado satisfactorio en la generación de los datos de correlación.
  19. 19.
    Método según cualquiera de las reivindicaciones anteriores, en el que el sistema informático forma parte de un sitio Web, y la base de datos de información incluye información sobre productos que están disponibles para su compra a través del sitio Web.
  20. 20.
    Motor de búsqueda para permitir que los usuarios de una red de ordenadores realicen búsquedas de una base de datos (40) de artículos, comprendiendo el motor de búsqueda:
    un sistema informático (30) que tiene almacenados en una memoria del mismo datos de correlación de términos de búsqueda, indicando los datos de correlación de términos de búsqueda (50) correlaciones entre términos de búsqueda sobre la base por lo menos de sumisiones de peticiones anteriores de usuarios; y
    un servidor de peticiones (38) que se ejecuta en el sistema informático, estando adaptado el servidor de peticiones para buscar en la base de datos de artículos usando peticiones de búsqueda recibidas de los usuarios, estando configurado el servidor de peticiones para procesar una petición de búsqueda de múltiples términos que incluye términos tanto coincidentes como no coincidentes mediante por lo menos:
    el acceso a los datos de correlación de términos de búsqueda para identificar una pluralidad de términos adicionales que se consideran relacionados con el(los) término(s) coincidente(s) de la petición de búsqueda;
    la comparación de la ortografía de los términos adicionales con la escritura de por lo menos un término no coincidente de la petición de búsqueda usando una función de comparación ortográfica para determinar si algunos de los términos adicionales es una sustitución candidata para el término no coincidente, estando adaptada la función de comparación ortográfica:
    para comparar una primera y segunda cadenas de caracteres ordenando la primera y segunda cadenas y comparando carácter a carácter la primera y segunda cadenas ordenadas; y
    para generar una puntuación que indica un grado de similitud entre la primera y segunda cadenas de caracteres; y
    comparándose la puntuación con un valor umbral para determinar si un término adicional correspondiente es una sustitución candidata.
  21. 21.
    Motor de búsqueda según la reivindicación 20, en el que los datos de correlación de términos de búsqueda se basan por lo menos en frecuencias con las cuales han aparecido previamente términos de búsqueda dentro de la misma petición.
  22. 22.
    Motor de búsqueda según la reivindicación 20 ó la reivindicación 21, en el que el servidor de peticiones está configurado para, sin requerir una entrada de datos por el usuario:
    sustituir un término no coincidente por un término adicional para generar una petición modificada; y
    buscar en la base de datos de artículos con la petición modificada.
  23. 23.
    Programa de ordenador que comprende elementos de programa de ordenador legibles por ordenador o por máquina para configurar un sistema informático con el fin de implementar el método según cualquiera de las reivindicaciones 1 a 19.
  24. 24.
    Medio portador de programa de ordenador que comprende un programa de ordenador según la reivindicación
  25. 23.
ES99935478T 1998-07-15 1999-07-08 Sistema y método para corregir errores ortográficos en peticiones de búsqueda Expired - Lifetime ES2379704T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/115,662 US6144958A (en) 1998-07-15 1998-07-15 System and method for correcting spelling errors in search queries
US115662 1998-07-15
PCT/US1999/015596 WO2000004465A1 (en) 1998-07-15 1999-07-08 System and method for correcting spelling errors in search queries

Publications (1)

Publication Number Publication Date
ES2379704T3 true ES2379704T3 (es) 2012-04-30

Family

ID=22362718

Family Applications (1)

Application Number Title Priority Date Filing Date
ES99935478T Expired - Lifetime ES2379704T3 (es) 1998-07-15 1999-07-08 Sistema y método para corregir errores ortográficos en peticiones de búsqueda

Country Status (10)

Country Link
US (6) US6144958A (es)
EP (1) EP1104568B1 (es)
JP (1) JP4035685B2 (es)
AT (1) ATE542183T1 (es)
AU (1) AU5094799A (es)
CA (1) CA2337249C (es)
DK (1) DK1104568T3 (es)
ES (1) ES2379704T3 (es)
PT (1) PT1104568E (es)
WO (1) WO2000004465A1 (es)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111310442A (zh) * 2020-02-06 2020-06-19 北京字节跳动网络技术有限公司 形近字纠错语料挖掘方法、纠错方法、设备及存储介质

Families Citing this family (615)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
EP1036466B1 (en) 1997-07-21 2003-03-26 E Guide, Inc. Method for navigating within a television program guide having advertisements
IL125432A (en) 1998-01-30 2010-11-30 Easynet Access Inc Personalized internet interaction
IL123129A (en) * 1998-01-30 2010-12-30 Aviv Refuah Www addressing
US20050203835A1 (en) * 1998-01-30 2005-09-15 Eli Nhaissi Internet billing
US6321226B1 (en) * 1998-06-30 2001-11-20 Microsoft Corporation Flexible keyboard searching
US6144958A (en) 1998-07-15 2000-11-07 Amazon.Com, Inc. System and method for correcting spelling errors in search queries
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
IL126373A (en) 1998-09-27 2003-06-24 Haim Zvi Melman Apparatus and method for search and retrieval of documents
GB9821969D0 (en) * 1998-10-08 1998-12-02 Canon Kk Apparatus and method for processing natural language
US6411950B1 (en) * 1998-11-30 2002-06-25 Compaq Information Technologies Group, Lp Dynamic query expansion
US7506252B2 (en) * 1999-01-26 2009-03-17 Blumberg Marvin R Speed typing apparatus for entering letters of alphabet with at least thirteen-letter input elements
US6460033B1 (en) 1999-02-03 2002-10-01 Cary D. Perttunen Browsing methods, articles and apparatus
US6359635B1 (en) 1999-02-03 2002-03-19 Cary D. Perttunen Methods, articles and apparatus for visibly representing information and for providing an input interface
GB9904662D0 (en) * 1999-03-01 1999-04-21 Canon Kk Natural language search method and apparatus
US6745177B2 (en) * 1999-04-09 2004-06-01 Metro One Telecommunications, Inc. Method and system for retrieving data from multiple data sources using a search routing database
US6598039B1 (en) * 1999-06-08 2003-07-22 Albert-Inc. S.A. Natural language interface for searching database
US6594657B1 (en) * 1999-06-08 2003-07-15 Albert-Inc. Sa System and method for enhancing online support services using natural language interface for searching database
US6446064B1 (en) * 1999-06-08 2002-09-03 Albert Holding Sa System and method for enhancing e-commerce using natural language interface for searching database
US7844594B1 (en) 1999-06-18 2010-11-30 Surfwax, Inc. Information search, retrieval and distillation into knowledge objects
AU6630800A (en) * 1999-08-13 2001-03-13 Pixo, Inc. Methods and apparatuses for display and traversing of links in page character array
US6477524B1 (en) * 1999-08-18 2002-11-05 Sharp Laboratories Of America, Incorporated Method for statistical text analysis
US7111252B1 (en) * 1999-09-22 2006-09-19 Harris Scott C Enhancing touch and feel on the internet
US8738471B2 (en) * 1999-09-22 2014-05-27 Scott C. Harris Enhancing touch and feel on the internet
US6671407B1 (en) * 1999-10-19 2003-12-30 Microsoft Corporation System and method for hashing digital images
US6651052B1 (en) * 1999-11-05 2003-11-18 W. W. Grainger, Inc. System and method for data storage and retrieval
EP1236354A4 (en) 1999-11-10 2009-04-22 Yahoo Inc INTERNET RADIO AND BROADCASTING METHOD
US7454509B2 (en) 1999-11-10 2008-11-18 Yahoo! Inc. Online playback system with community bias
US6665657B1 (en) * 1999-11-19 2003-12-16 Niku Corporation Method and system for cross browsing of various multimedia data sources in a searchable repository
US6785671B1 (en) * 1999-12-08 2004-08-31 Amazon.Com, Inc. System and method for locating web-based product offerings
US6772150B1 (en) 1999-12-10 2004-08-03 Amazon.Com, Inc. Search query refinement using related search phrases
US6892196B1 (en) 1999-12-22 2005-05-10 Accenture Llp System, method and article of manufacture for a user programmable diary interface link
US6487553B1 (en) * 2000-01-05 2002-11-26 International Business Machines Corporation Method for reducing search results by manually or automatically excluding previously presented search results
US6389467B1 (en) 2000-01-24 2002-05-14 Friskit, Inc. Streaming media search and continuous playback system of media resources located by multiple network addresses
US7617135B2 (en) * 2000-02-16 2009-11-10 Illinois Computer Research, Llc Enhancing touch and feel on the internet
US10002167B2 (en) 2000-02-25 2018-06-19 Vilox Technologies, Llc Search-on-the-fly/sort-on-the-fly by a search engine directed to a plurality of disparate data sources
US6760720B1 (en) 2000-02-25 2004-07-06 Pedestrian Concepts, Inc. Search-on-the-fly/sort-on-the-fly search engine for searching databases
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US6564213B1 (en) * 2000-04-18 2003-05-13 Amazon.Com, Inc. Search query autocompletion
US7010537B2 (en) * 2000-04-27 2006-03-07 Friskit, Inc. Method and system for visual network searching
US8478732B1 (en) 2000-05-02 2013-07-02 International Business Machines Corporation Database aliasing in information access system
US6711561B1 (en) * 2000-05-02 2004-03-23 Iphrase.Com, Inc. Prose feedback in information access system
US7127450B1 (en) * 2000-05-02 2006-10-24 International Business Machines Corporation Intelligent discard in information access system
US6704728B1 (en) * 2000-05-02 2004-03-09 Iphase.Com, Inc. Accessing information from a collection of data
US7251665B1 (en) * 2000-05-03 2007-07-31 Yahoo! Inc. Determining a known character string equivalent to a query string
US8352331B2 (en) 2000-05-03 2013-01-08 Yahoo! Inc. Relationship discovery engine
US7162482B1 (en) 2000-05-03 2007-01-09 Musicmatch, Inc. Information retrieval engine
US7024485B2 (en) 2000-05-03 2006-04-04 Yahoo! Inc. System for controlling and enforcing playback restrictions for a media file by splitting the media file into usable and unusable portions for playback
US7383299B1 (en) * 2000-05-05 2008-06-03 International Business Machines Corporation System and method for providing service for searching web site addresses
US7617184B2 (en) 2000-05-18 2009-11-10 Endeca Technologies, Inc. Scalable hierarchical data-driven navigation system and method for information retrieval
US7325201B2 (en) 2000-05-18 2008-01-29 Endeca Technologies, Inc. System and method for manipulating content in a hierarchical data-driven search and navigation system
US7062483B2 (en) * 2000-05-18 2006-06-13 Endeca Technologies, Inc. Hierarchical data-driven search and navigation system and method for information retrieval
US7035864B1 (en) 2000-05-18 2006-04-25 Endeca Technologies, Inc. Hierarchical data-driven navigation system and method for information retrieval
US20020062258A1 (en) * 2000-05-18 2002-05-23 Bailey Steven C. Computer-implemented procurement of items using parametric searching
US6636848B1 (en) * 2000-05-31 2003-10-21 International Business Machines Corporation Information search using knowledge agents
US9699129B1 (en) 2000-06-21 2017-07-04 International Business Machines Corporation System and method for increasing email productivity
US8290768B1 (en) 2000-06-21 2012-10-16 International Business Machines Corporation System and method for determining a set of attributes based on content of communications
US6408277B1 (en) 2000-06-21 2002-06-18 Banter Limited System and method for automatic task prioritization
US6925608B1 (en) * 2000-07-05 2005-08-02 Kendyl A. Roman Graphical user interface for building Boolean queries and viewing search results
US7136854B2 (en) * 2000-07-06 2006-11-14 Google, Inc. Methods and apparatus for providing search results in response to an ambiguous search query
US8706747B2 (en) 2000-07-06 2014-04-22 Google Inc. Systems and methods for searching using queries written in a different character-set and/or language from the target pages
US7099886B2 (en) 2000-07-20 2006-08-29 Microsoft Corporation Method and apparatus for identifying programming object attributes
US6604098B1 (en) * 2000-07-24 2003-08-05 Viagold Direct Network Limited Method and system in a computer network for searching and linking web sites
US7007008B2 (en) 2000-08-08 2006-02-28 America Online, Inc. Category searching
US7047229B2 (en) * 2000-08-08 2006-05-16 America Online, Inc. Searching content on web pages
US20020078023A1 (en) * 2000-10-02 2002-06-20 Lawton Scott S. Method and system for combining user-supplied sort information with secondary sort information
GB2367917A (en) 2000-10-12 2002-04-17 Qas Systems Ltd Retrieving data representing a postal address from a database of postal addresses using a trie structure
GB0026353D0 (en) * 2000-10-27 2000-12-13 Canon Kk Apparatus and a method for facilitating searching
US8271333B1 (en) 2000-11-02 2012-09-18 Yahoo! Inc. Content-related wallpaper
US7233940B2 (en) * 2000-11-06 2007-06-19 Answers Corporation System for processing at least partially structured data
US7016892B1 (en) * 2000-11-17 2006-03-21 Cnet Networks, Inc. Apparatus and method for delivering information over a network
EP1619599A1 (en) * 2000-11-27 2006-01-25 Yamaha Corporation Information retrieval system and information retrieval method using network
US7320019B2 (en) * 2000-11-30 2008-01-15 At&T Delaware Intellectual Property, Inc. Method and apparatus for automatically checking e-mail addresses in outgoing e-mail communications
US8402068B2 (en) 2000-12-07 2013-03-19 Half.Com, Inc. System and method for collecting, associating, normalizing and presenting product and vendor information on a distributed network
US7644057B2 (en) 2001-01-03 2010-01-05 International Business Machines Corporation System and method for electronic communication management
US6983270B2 (en) 2001-01-24 2006-01-03 Andreas Rippich Method and apparatus for displaying database search results
GB0103053D0 (en) * 2001-02-07 2001-03-21 Nokia Mobile Phones Ltd A communication terminal having a predictive text editor application
US7027987B1 (en) * 2001-02-07 2006-04-11 Google Inc. Voice interface for a search engine
US7406529B2 (en) 2001-02-09 2008-07-29 Yahoo! Inc. System and method for detecting and verifying digitized content over a computer network
US20020126902A1 (en) * 2001-03-08 2002-09-12 Konica Corporation Character information collating correction apparatus
JP2002288201A (ja) * 2001-03-23 2002-10-04 Fujitsu Ltd 質問応答処理方法,質問応答処理プログラム,質問応答処理プログラム記録媒体および質問応答処理装置
US7136846B2 (en) 2001-04-06 2006-11-14 2005 Keel Company, Inc. Wireless information retrieval
US6976019B2 (en) * 2001-04-20 2005-12-13 Arash M Davallou Phonetic self-improving search engine
US6996273B2 (en) 2001-04-24 2006-02-07 Microsoft Corporation Robust recognizer of perceptually similar content
US6973574B2 (en) * 2001-04-24 2005-12-06 Microsoft Corp. Recognizer of audio-content in digital signals
US7356188B2 (en) * 2001-04-24 2008-04-08 Microsoft Corporation Recognizer of text-based work
US7020775B2 (en) * 2001-04-24 2006-03-28 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US7574513B2 (en) * 2001-04-30 2009-08-11 Yahoo! Inc. Controllable track-skipping
US6983271B2 (en) * 2001-06-13 2006-01-03 Microsoft Corporation Answer wizard drop-down control
US7299270B2 (en) * 2001-07-10 2007-11-20 Lycos, Inc. Inferring relations between internet objects that are not connected directly
US20090006543A1 (en) * 2001-08-20 2009-01-01 Masterobjects System and method for asynchronous retrieval of information based on incremental user input
JP2003091552A (ja) * 2001-09-17 2003-03-28 Hitachi Ltd 検索要求情報抽出方法及びその実施システム並びにその処理プログラム
ITFI20010199A1 (it) 2001-10-22 2003-04-22 Riccardo Vieri Sistema e metodo per trasformare in voce comunicazioni testuali ed inviarle con una connessione internet a qualsiasi apparato telefonico
US7296019B1 (en) * 2001-10-23 2007-11-13 Microsoft Corporation System and methods for providing runtime spelling analysis and correction
US20030115191A1 (en) * 2001-12-17 2003-06-19 Max Copperman Efficient and cost-effective content provider for customer relationship management (CRM) or other applications
US20030120630A1 (en) * 2001-12-20 2003-06-26 Daniel Tunkelang Method and system for similarity search and clustering
US20030135477A1 (en) * 2002-01-17 2003-07-17 Elsey Nicholas J. Technique for effectively collecting and analyzing data in providing information assistance services
US7343372B2 (en) * 2002-02-22 2008-03-11 International Business Machines Corporation Direct navigation for information retrieval
US7707221B1 (en) 2002-04-03 2010-04-27 Yahoo! Inc. Associating and linking compact disc metadata
US7194684B1 (en) * 2002-04-09 2007-03-20 Google Inc. Method of spell-checking search queries
US7305483B2 (en) 2002-04-25 2007-12-04 Yahoo! Inc. Method for the real-time distribution of streaming data on a network
US6993586B2 (en) * 2002-05-09 2006-01-31 Microsoft Corporation User intention modeling for web navigation
US7006703B2 (en) * 2002-06-28 2006-02-28 Microsoft Corporation Content recognizer via probabilistic mirror distribution
US7440941B1 (en) * 2002-09-17 2008-10-21 Yahoo! Inc. Suggesting an alternative to the spelling of a search query
US7599922B1 (en) * 2002-11-27 2009-10-06 Microsoft Corporation System and method for federated searching
US20050038781A1 (en) * 2002-12-12 2005-02-17 Endeca Technologies, Inc. Method and system for interpreting multiple-term queries
US20040117366A1 (en) * 2002-12-12 2004-06-17 Ferrari Adam J. Method and system for interpreting multiple-term queries
US8819039B2 (en) 2002-12-31 2014-08-26 Ebay Inc. Method and system to generate a listing in a network-based commerce system
US7584173B2 (en) * 2003-02-24 2009-09-01 Avaya Inc. Edit distance string search
US7756847B2 (en) * 2003-03-03 2010-07-13 Koninklijke Philips Electronics N.V. Method and arrangement for searching for strings
JP4381012B2 (ja) * 2003-03-14 2009-12-09 ヒューレット・パッカード・カンパニー 万物識別子を用いたデータ検索システムおよびデータ検索方法
US20040210560A1 (en) * 2003-04-16 2004-10-21 Shuster Gary Stephen Method and system for searching a wide area network
US7783617B2 (en) 2003-04-16 2010-08-24 Yahoo! Inc. Personals advertisement affinities in a networked computer system
US20040267731A1 (en) * 2003-04-25 2004-12-30 Gino Monier Louis Marcel Method and system to facilitate building and using a search database
US7669134B1 (en) 2003-05-02 2010-02-23 Apple Inc. Method and apparatus for displaying information during an instant messaging session
US20050187913A1 (en) 2003-05-06 2005-08-25 Yoram Nelken Web-based customer service interface
US8495002B2 (en) 2003-05-06 2013-07-23 International Business Machines Corporation Software tool for training and testing a knowledge base
US20040243632A1 (en) * 2003-05-30 2004-12-02 International Business Machines Corporation Adaptive evaluation of text search queries with blackbox scoring functions
US7617202B2 (en) * 2003-06-16 2009-11-10 Microsoft Corporation Systems and methods that employ a distributional analysis on a query log to improve search results
US7739295B1 (en) * 2003-06-20 2010-06-15 Amazon Technologies, Inc. Method and system for identifying information relevant to content
CN1875377A (zh) 2003-09-10 2006-12-06 音乐匹配公司 音乐购买和播放系统及其方法
US7454417B2 (en) * 2003-09-12 2008-11-18 Google Inc. Methods and systems for improving a search ranking using population information
US7505964B2 (en) * 2003-09-12 2009-03-17 Google Inc. Methods and systems for improving a search ranking using related queries
US8543378B1 (en) 2003-11-05 2013-09-24 W.W. Grainger, Inc. System and method for discerning a term for an entry having a spelling error
US8521725B1 (en) 2003-12-03 2013-08-27 Google Inc. Systems and methods for improved searching
US20060230040A1 (en) * 2003-12-08 2006-10-12 Andy Curtis Methods and systems for providing a response to a query
US7181447B2 (en) * 2003-12-08 2007-02-20 Iac Search And Media, Inc. Methods and systems for conceptually organizing and presenting information
US7451131B2 (en) * 2003-12-08 2008-11-11 Iac Search & Media, Inc. Methods and systems for providing a response to a query
US20050131872A1 (en) * 2003-12-16 2005-06-16 Microsoft Corporation Query recognizer
US7337166B2 (en) * 2003-12-19 2008-02-26 Caterpillar Inc. Parametric searching
US7890526B1 (en) * 2003-12-30 2011-02-15 Microsoft Corporation Incremental query refinement
US7831832B2 (en) * 2004-01-06 2010-11-09 Microsoft Corporation Digital goods representation based upon matrix invariances
US7444327B2 (en) * 2004-01-09 2008-10-28 Microsoft Corporation System and method for automated optimization of search result relevance
US8341017B2 (en) * 2004-01-09 2012-12-25 Microsoft Corporation System and method for optimizing search result listings
US8375048B1 (en) * 2004-01-20 2013-02-12 Microsoft Corporation Query augmentation
US20050165690A1 (en) * 2004-01-23 2005-07-28 Microsoft Corporation Watermarking via quantization of rational statistics of regions
US8655904B2 (en) * 2004-02-11 2014-02-18 Ebay, Inc. Method and system to enhance data integrity in a database
US7672927B1 (en) 2004-02-27 2010-03-02 Yahoo! Inc. Suggesting an alternative to the spelling of a search query
US8676830B2 (en) * 2004-03-04 2014-03-18 Yahoo! Inc. Keyword recommendation for internet search engines
US7254774B2 (en) * 2004-03-16 2007-08-07 Microsoft Corporation Systems and methods for improved spell checking
US7925657B1 (en) 2004-03-17 2011-04-12 Google Inc. Methods and systems for adjusting a scoring measure based on query breadth
US7428528B1 (en) 2004-03-31 2008-09-23 Endeca Technologies, Inc. Integrated application for manipulating content in a hierarchical data-driven search and navigation system
US7840547B1 (en) 2004-03-31 2010-11-23 Google Inc. Methods and systems for efficient query rewriting
US8914383B1 (en) 2004-04-06 2014-12-16 Monster Worldwide, Inc. System and method for providing job recommendations
US7747601B2 (en) * 2006-08-14 2010-06-29 Inquira, Inc. Method and apparatus for identifying and classifying query intent
US8082264B2 (en) 2004-04-07 2011-12-20 Inquira, Inc. Automated scheme for identifying user intent in real-time
US8612208B2 (en) 2004-04-07 2013-12-17 Oracle Otc Subsidiary Llc Ontology for use with a system, method, and computer readable medium for retrieving information and response to a query
US8250613B2 (en) * 2004-04-29 2012-08-21 Harris Corporation Media asset management system for managing video news segments and associated methods
US7770014B2 (en) * 2004-04-30 2010-08-03 Microsoft Corporation Randomized signal transforms and their applications
US8090698B2 (en) * 2004-05-07 2012-01-03 Ebay Inc. Method and system to facilitate a search of an information resource
PL1598108T3 (pl) * 2004-05-12 2008-09-30 Vomm Chemipharma Srl Zastosowanie silikonów do wywoływania lub ułatwiania przepływu zawiesin cząstek stałych w cieczach
US7739142B2 (en) * 2004-05-17 2010-06-15 Yahoo! Inc. System and method for providing automobile marketing research information
US7746376B2 (en) * 2004-06-16 2010-06-29 Felipe Mendoza Method and apparatus for accessing multi-dimensional mapping and information
US8321786B2 (en) * 2004-06-17 2012-11-27 Apple Inc. Routine and interface for correcting electronic text
US7487145B1 (en) * 2004-06-22 2009-02-03 Google Inc. Method and system for autocompletion using ranked results
US7836044B2 (en) 2004-06-22 2010-11-16 Google Inc. Anticipated query generation and processing in a search engine
ATE409332T1 (de) * 2004-06-24 2008-10-15 Nxp Bv Verfahren, leser und system zum auffinden von objekten
US8392453B2 (en) * 2004-06-25 2013-03-05 Google Inc. Nonstandard text entry
US8972444B2 (en) * 2004-06-25 2015-03-03 Google Inc. Nonstandard locality-based text entry
US7617176B2 (en) * 2004-07-13 2009-11-10 Microsoft Corporation Query-based snippet clustering for search result grouping
US7207004B1 (en) * 2004-07-23 2007-04-17 Harrity Paul A Correction of misspelled words
US8065316B1 (en) * 2004-09-30 2011-11-22 Google Inc. Systems and methods for providing search query refinements
US7765178B1 (en) 2004-10-06 2010-07-27 Shopzilla, Inc. Search ranking estimation
CA2600281A1 (en) * 2004-11-01 2006-05-11 Basf Corporation Fast-drying, radiofrequency-activatable inkjet inks and methods and systems for their use
US7499940B1 (en) * 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US20060106769A1 (en) 2004-11-12 2006-05-18 Gibbs Kevin A Method and system for autocompletion for languages having ideographs and phonetic characters
US8775459B2 (en) * 2005-01-07 2014-07-08 International Business Machines Corporation Method and apparatus for robust input interpretation by conversation systems
US20060161520A1 (en) * 2005-01-14 2006-07-20 Microsoft Corporation System and method for generating alternative search terms
WO2006083973A2 (en) * 2005-01-31 2006-08-10 4Info, Inc. Automated transfer of data from pc clients
US7668808B2 (en) * 2005-03-10 2010-02-23 Yahoo! Inc. System for modifying queries before presentation to a sponsored search generator or other matching system where modifications improve coverage without a corresponding reduction in relevance
US20060206517A1 (en) * 2005-03-11 2006-09-14 Yahoo! Inc. System and method for listing administration
WO2006099299A2 (en) 2005-03-11 2006-09-21 Yahoo! Inc. System and method for managing listings
US9262056B2 (en) * 2005-03-30 2016-02-16 Ebay Inc. Methods and systems to browse data items
US20060229866A1 (en) * 2005-04-07 2006-10-12 Business Objects, S.A. Apparatus and method for deterministically constructing a text question for application to a data source
US20060230027A1 (en) * 2005-04-07 2006-10-12 Kellet Nicholas G Apparatus and method for utilizing sentence component metadata to create database queries
US20060230028A1 (en) * 2005-04-07 2006-10-12 Business Objects, S.A. Apparatus and method for constructing complex database query statements based on business analysis comparators
US20060229853A1 (en) * 2005-04-07 2006-10-12 Business Objects, S.A. Apparatus and method for data modeling business logic
JP2008537225A (ja) * 2005-04-11 2008-09-11 テキストディガー,インコーポレイテッド クエリについての検索システムおよび方法
US7908242B1 (en) 2005-04-11 2011-03-15 Experian Information Solutions, Inc. Systems and methods for optimizing database queries
US7584093B2 (en) 2005-04-25 2009-09-01 Microsoft Corporation Method and system for generating spelling suggestions
US7577646B2 (en) * 2005-05-02 2009-08-18 Microsoft Corporation Method for finding semantically related search engine queries
US7546289B2 (en) * 2005-05-11 2009-06-09 W.W. Grainger, Inc. System and method for providing a response to a search query
EP1889181A4 (en) * 2005-05-16 2009-12-02 Ebay Inc METHOD AND SYSTEM FOR SEARCHING SEARCH
US20060265388A1 (en) * 2005-05-20 2006-11-23 Woelfel Joseph K Information retrieval system and method for distinguishing misrecognized queries and unavailable documents
US8527510B2 (en) 2005-05-23 2013-09-03 Monster Worldwide, Inc. Intelligent job matching system and method
US8375067B2 (en) 2005-05-23 2013-02-12 Monster Worldwide, Inc. Intelligent job matching system and method including negative filtration
US8433713B2 (en) 2005-05-23 2013-04-30 Monster Worldwide, Inc. Intelligent job matching system and method
US20060287986A1 (en) * 2005-06-21 2006-12-21 W.W. Grainger, Inc. System and method for facilitating use of a selection guide
US8260771B1 (en) 2005-07-22 2012-09-04 A9.Com, Inc. Predictive selection of item attributes likely to be useful in refining a search
US7321892B2 (en) * 2005-08-11 2008-01-22 Amazon Technologies, Inc. Identifying alternative spellings of search strings by analyzing self-corrective searching behaviors of users
US7747639B2 (en) * 2005-08-24 2010-06-29 Yahoo! Inc. Alternative search query prediction
US7844599B2 (en) * 2005-08-24 2010-11-30 Yahoo! Inc. Biasing queries to determine suggested queries
US7672932B2 (en) * 2005-08-24 2010-03-02 Yahoo! Inc. Speculative search result based on a not-yet-submitted search query
CN1928860B (zh) * 2005-09-05 2010-11-10 日电(中国)有限公司 用于校正按键错误的方法、搜索装置和搜索系统
US8677377B2 (en) * 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US7633076B2 (en) 2005-09-30 2009-12-15 Apple Inc. Automated response to and sensing of user activity in portable devices
US20070076869A1 (en) * 2005-10-03 2007-04-05 Microsoft Corporation Digital goods representation based upon matrix invariants using non-negative matrix factorizations
US7676517B2 (en) * 2005-10-14 2010-03-09 Microsoft Corporation Search results injected into client applications
US7730081B2 (en) * 2005-10-18 2010-06-01 Microsoft Corporation Searching based on messages
JP4622808B2 (ja) * 2005-10-28 2011-02-02 日本ビクター株式会社 楽曲分類装置、楽曲分類方法、楽曲分類プログラム
US8266162B2 (en) * 2005-10-31 2012-09-11 Lycos, Inc. Automatic identification of related search keywords
US8019752B2 (en) 2005-11-10 2011-09-13 Endeca Technologies, Inc. System and method for information retrieval from object collections with complex interrelationships
US20070118441A1 (en) * 2005-11-22 2007-05-24 Robert Chatwani Editable electronic catalogs
US8977603B2 (en) 2005-11-22 2015-03-10 Ebay Inc. System and method for managing shared collections
US8010523B2 (en) 2005-12-30 2011-08-30 Google Inc. Dynamic search box for web browser
KR101265263B1 (ko) * 2006-01-02 2013-05-16 삼성전자주식회사 발음 기호를 이용한 문자열 매칭 방법 및 시스템과 그방법을 기록한 컴퓨터 판독 가능한 기록매체
WO2007081681A2 (en) * 2006-01-03 2007-07-19 Textdigger, Inc. Search system with query refinement and search method
US8195657B1 (en) 2006-01-09 2012-06-05 Monster Worldwide, Inc. Apparatuses, systems and methods for data entry correlation
US20060217984A1 (en) * 2006-01-18 2006-09-28 Eric Lindemann Critical band additive synthesis of tonal audio signals
US7644373B2 (en) 2006-01-23 2010-01-05 Microsoft Corporation User interface for viewing clusters of images
TW200729002A (en) * 2006-01-25 2007-08-01 Go Ta Internet Information Co Ltd List optimization method for web page search result and system using the same
US7836050B2 (en) 2006-01-25 2010-11-16 Microsoft Corporation Ranking content based on relevance and quality
TW200729003A (en) * 2006-01-25 2007-08-01 Bridgewell Inc Conceptual keyword function generation method, adjustment method, system, search engine, and calculation method for keyword related value
US7814040B1 (en) 2006-01-31 2010-10-12 The Research Foundation Of State University Of New York System and method for image annotation and multi-modal image retrieval using probabilistic semantic models
US8996406B2 (en) * 2006-02-02 2015-03-31 Microsoft Corporation Search engine segmentation
US8380726B2 (en) 2006-03-06 2013-02-19 Veveo, Inc. Methods and systems for selecting and presenting content based on a comparison of preference signatures from multiple users
US7814097B2 (en) * 2006-03-07 2010-10-12 Yahoo! Inc. Discovering alternative spellings through co-occurrence
US7831911B2 (en) 2006-03-08 2010-11-09 Microsoft Corporation Spell checking system including a phonetic speller
US8316394B2 (en) 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
US12314907B2 (en) 2006-03-31 2025-05-27 Monster Worldwide, Inc. Apparatuses, methods and systems for automated online data submission
US7716229B1 (en) * 2006-03-31 2010-05-11 Microsoft Corporation Generating misspells from query log context usage
US8600931B1 (en) 2006-03-31 2013-12-03 Monster Worldwide, Inc. Apparatuses, methods and systems for automated online data submission
WO2007114932A2 (en) 2006-04-04 2007-10-11 Textdigger, Inc. Search system and method with text function tagging
US20070265831A1 (en) * 2006-05-09 2007-11-15 Itai Dinur System-Level Correction Service
US7921099B2 (en) 2006-05-10 2011-04-05 Inquira, Inc. Guided navigation system
US7558725B2 (en) * 2006-05-23 2009-07-07 Lexisnexis, A Division Of Reed Elsevier Inc. Method and apparatus for multilingual spelling corrections
US20070288308A1 (en) * 2006-05-25 2007-12-13 Yahoo Inc. Method and system for providing job listing affinity
US7814112B2 (en) 2006-06-09 2010-10-12 Ebay Inc. Determining relevancy and desirability of terms
US20080016157A1 (en) * 2006-06-29 2008-01-17 Centraltouch Technology Inc. Method and system for controlling and monitoring an apparatus from a remote computer using session initiation protocol (sip)
US7558787B2 (en) * 2006-07-05 2009-07-07 Yahoo! Inc. Automatic relevance and variety checking for web and vertical search engines
US7664744B2 (en) * 2006-07-14 2010-02-16 Yahoo! Inc. Query categorizer
US8301616B2 (en) 2006-07-14 2012-10-30 Yahoo! Inc. Search equalizer
US8001114B2 (en) * 2006-07-18 2011-08-16 Wilson Chu Methods and apparatuses for dynamically searching for electronic mail messages
US7822764B2 (en) 2006-07-18 2010-10-26 Cisco Technology, Inc. Methods and apparatuses for dynamically displaying search suggestions
US8781813B2 (en) 2006-08-14 2014-07-15 Oracle Otc Subsidiary Llc Intent management tool for identifying concepts associated with a plurality of users' queries
US7818332B2 (en) * 2006-08-16 2010-10-19 Microsoft Corporation Query speller
EP2074572A4 (en) 2006-08-17 2011-02-23 Experian Inf Solutions Inc SYSTEM AND METHOD FOR PROVIDING AN EVALUATION FOR A SECOND-HAND VEHICLE
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US9147271B2 (en) 2006-09-08 2015-09-29 Microsoft Technology Licensing, Llc Graphical representation of aggregated data
US8234706B2 (en) * 2006-09-08 2012-07-31 Microsoft Corporation Enabling access to aggregated software security information
US7761805B2 (en) * 2006-09-11 2010-07-20 Yahoo! Inc. Displaying items using a reduced presentation
WO2008039860A1 (en) 2006-09-26 2008-04-03 Experian Information Solutions, Inc. System and method for linking mutliple entities in a business database
US8036979B1 (en) 2006-10-05 2011-10-11 Experian Information Solutions, Inc. System and method for generating a finance attribute from tradeline data
US7707208B2 (en) * 2006-10-10 2010-04-27 Microsoft Corporation Identifying sight for a location
US8442972B2 (en) * 2006-10-11 2013-05-14 Collarity, Inc. Negative associations for search results ranking and refinement
US20080087725A1 (en) * 2006-10-11 2008-04-17 Qing Liu Fixture based Item Locator System
US7979425B2 (en) * 2006-10-25 2011-07-12 Google Inc. Server-side match
US8661029B1 (en) 2006-11-02 2014-02-25 Google Inc. Modifying search result ranking based on implicit user feedback
US20080109752A1 (en) * 2006-11-07 2008-05-08 Yahoo! Inc. Expanding search query input box to support livesearch interaction
US8635203B2 (en) * 2006-11-16 2014-01-21 Yahoo! Inc. Systems and methods using query patterns to disambiguate query intent
US8095476B2 (en) * 2006-11-27 2012-01-10 Inquira, Inc. Automated support scheme for electronic forms
US7630970B2 (en) * 2006-11-28 2009-12-08 Yahoo! Inc. Wait timer for partially formed query
US8676802B2 (en) 2006-11-30 2014-03-18 Oracle Otc Subsidiary Llc Method and system for information retrieval with clustering
US7630978B2 (en) * 2006-12-14 2009-12-08 Yahoo! Inc. Query rewriting with spell correction suggestions using a generated set of query features
CN101206659B (zh) * 2006-12-15 2013-09-18 谷歌股份有限公司 自动搜索查询校正
US9275036B2 (en) * 2006-12-21 2016-03-01 International Business Machines Corporation System and method for adaptive spell checking
US8880478B2 (en) * 2006-12-28 2014-11-04 International Business Machines Corporation Scan-free archiving
US7720826B2 (en) * 2006-12-29 2010-05-18 Sap Ag Performing a query for a rule in a database
US8606666B1 (en) 2007-01-31 2013-12-10 Experian Information Solutions, Inc. System and method for providing an aggregation tool
US20080189163A1 (en) * 2007-02-05 2008-08-07 Inquira, Inc. Information management system
US7912828B2 (en) * 2007-02-23 2011-03-22 Apple Inc. Pattern searching methods and apparatuses
US9449322B2 (en) * 2007-02-28 2016-09-20 Ebay Inc. Method and system of suggesting information used with items offered for sale in a network-based marketplace
US9411903B2 (en) 2007-03-05 2016-08-09 Oracle International Corporation Generalized faceted browser decision support tool
US7801888B2 (en) * 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US8938463B1 (en) 2007-03-12 2015-01-20 Google Inc. Modifying search result ranking based on implicit user feedback and a model of presentation bias
US8694374B1 (en) 2007-03-14 2014-04-08 Google Inc. Detecting click spam
CN101276361B (zh) 2007-03-28 2010-09-15 阿里巴巴集团控股有限公司 一种显示相关关键词的方法及系统
US7877375B1 (en) * 2007-03-29 2011-01-25 Oclc Online Computer Library Center, Inc. Name finding system and method
US8285656B1 (en) 2007-03-30 2012-10-09 Consumerinfo.Com, Inc. Systems and methods for data verification
US8977255B2 (en) * 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
CN101281522B (zh) * 2007-04-06 2010-11-03 阿里巴巴集团控股有限公司 一种处理相关关键词的方法及系统
CN101286150B (zh) * 2007-04-10 2010-09-15 阿里巴巴集团控股有限公司 生成更新参数的方法和装置、展示相关关键词的方法和装置
US8484192B1 (en) * 2007-04-30 2013-07-09 Google Inc. Media search broadening
US7809714B1 (en) * 2007-04-30 2010-10-05 Lawrence Richard Smith Process for enhancing queries for information retrieval
US8631440B2 (en) * 2007-04-30 2014-01-14 Google Inc. Program guide user interface
US9092510B1 (en) 2007-04-30 2015-07-28 Google Inc. Modifying search result ranking based on a temporal element of user feedback
US8005826B1 (en) 2007-04-30 2011-08-23 Google Inc. Identifying media content in queries
US20080294619A1 (en) * 2007-05-23 2008-11-27 Hamilton Ii Rick Allen System and method for automatic generation of search suggestions based on recent operator behavior
US20080294540A1 (en) 2007-05-25 2008-11-27 Celka Christopher J System and method for automated detection of never-pay data sets
US8195655B2 (en) * 2007-06-05 2012-06-05 Microsoft Corporation Finding related entity results for search queries
US8046339B2 (en) 2007-06-05 2011-10-25 Microsoft Corporation Example-driven design of efficient record matching queries
US8302197B2 (en) * 2007-06-28 2012-10-30 Microsoft Corporation Identifying data associated with security issue attributes
US8290921B2 (en) * 2007-06-28 2012-10-16 Microsoft Corporation Identification of similar queries based on overall and partial similarity of time series
US7693908B2 (en) * 2007-06-28 2010-04-06 Microsoft Corporation Determination of time dependency of search queries
US7693823B2 (en) * 2007-06-28 2010-04-06 Microsoft Corporation Forecasting time-dependent search queries
US8090709B2 (en) 2007-06-28 2012-01-03 Microsoft Corporation Representing queries and determining similarity based on an ARIMA model
US7685100B2 (en) 2007-06-28 2010-03-23 Microsoft Corporation Forecasting search queries based on time dependencies
US7689622B2 (en) * 2007-06-28 2010-03-30 Microsoft Corporation Identification of events of search queries
US7685099B2 (en) * 2007-06-28 2010-03-23 Microsoft Corporation Forecasting time-independent search queries
US8250651B2 (en) * 2007-06-28 2012-08-21 Microsoft Corporation Identifying attributes of aggregated data
ITFI20070177A1 (it) 2007-07-26 2009-01-27 Riccardo Vieri Sistema per la creazione e impostazione di una campagna pubblicitaria derivante dall'inserimento di messaggi pubblicitari all'interno di uno scambio di messaggi e metodo per il suo funzionamento.
US8312010B1 (en) 2007-08-16 2012-11-13 Google Inc. Local business ranking using mapping information
US8694511B1 (en) 2007-08-20 2014-04-08 Google Inc. Modifying search result ranking based on populations
WO2009029865A1 (en) 2007-08-31 2009-03-05 Google Inc. Automatic correction of user input
EP2031819A1 (en) * 2007-09-03 2009-03-04 British Telecommunications Public Limited Company Distributed system
US20090083255A1 (en) * 2007-09-24 2009-03-26 Microsoft Corporation Query spelling correction
US9690820B1 (en) 2007-09-27 2017-06-27 Experian Information Solutions, Inc. Database system for triggering event notifications based on updates to database records
US9053089B2 (en) 2007-10-02 2015-06-09 Apple Inc. Part-of-speech tagging using latent analogy
US8595642B1 (en) 2007-10-04 2013-11-26 Great Northern Research, LLC Multiple shell multi faceted graphical user interface
US8583670B2 (en) * 2007-10-04 2013-11-12 Microsoft Corporation Query suggestions for no result web searches
US9195743B2 (en) * 2007-10-04 2015-11-24 Yahoo! Inc. System and method for creating and applying predictive user click models to predict a target page associated with a search query
US8165886B1 (en) 2007-10-04 2012-04-24 Great Northern Research LLC Speech interface system and method for control and interaction with applications on a computing system
US8909655B1 (en) 2007-10-11 2014-12-09 Google Inc. Time based ranking
US8364694B2 (en) 2007-10-26 2013-01-29 Apple Inc. Search assistant for digital media assets
WO2009059297A1 (en) * 2007-11-01 2009-05-07 Textdigger, Inc. Method and apparatus for automated tag generation for digital content
US7904462B1 (en) * 2007-11-07 2011-03-08 Amazon Technologies, Inc. Comparison engine for identifying documents describing similar subject matter
US7856434B2 (en) * 2007-11-12 2010-12-21 Endeca Technologies, Inc. System and method for filtering rules for manipulating search results in a hierarchical search and navigation system
US8620662B2 (en) 2007-11-20 2013-12-31 Apple Inc. Context-aware unit selection
US8667004B2 (en) * 2007-11-30 2014-03-04 Microsoft Corporation Providing suggestions during formation of a search query
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
US8001139B2 (en) * 2007-12-20 2011-08-16 Yahoo! Inc. Using a bipartite graph to model and derive image and text associations
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8327272B2 (en) 2008-01-06 2012-12-04 Apple Inc. Portable multifunction device, method, and graphical user interface for viewing and managing electronic calendars
US8065143B2 (en) 2008-02-22 2011-11-22 Apple Inc. Providing text input using speech data and non-speech data
US8289283B2 (en) 2008-03-04 2012-10-16 Apple Inc. Language input interface on a device
US9053088B2 (en) * 2008-03-31 2015-06-09 Qualcomm Incorporated Displaying mnemonic abbreviations for commands
EP2107472A1 (en) * 2008-03-31 2009-10-07 British Telecommunications Public Limited Company Electronic resource annotation
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US8244551B1 (en) 2008-04-21 2012-08-14 Monster Worldwide, Inc. Apparatuses, methods and systems for advancement path candidate cloning
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8346791B1 (en) 2008-05-16 2013-01-01 Google Inc. Search augmentation
US20090300126A1 (en) * 2008-05-30 2009-12-03 International Business Machines Corporation Message Handling
US8464150B2 (en) 2008-06-07 2013-06-11 Apple Inc. Automatic language identification for dynamic text processing
JP2010008601A (ja) * 2008-06-25 2010-01-14 Fujitsu Ltd 案内情報表示装置、案内情報表示方法及びプログラム
US8312033B1 (en) 2008-06-26 2012-11-13 Experian Marketing Solutions, Inc. Systems and methods for providing an integrated identifier
US8312032B2 (en) 2008-07-10 2012-11-13 Google Inc. Dictionary suggestions for partial user entries
US8180771B2 (en) * 2008-07-18 2012-05-15 Iac Search & Media, Inc. Search activity eraser
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
JP2010039721A (ja) * 2008-08-04 2010-02-18 Just Syst Corp データ入力装置、方法、及びプログラム
US8768702B2 (en) 2008-09-05 2014-07-01 Apple Inc. Multi-tiered voice feedback in an electronic device
US8898568B2 (en) 2008-09-09 2014-11-25 Apple Inc. Audio user interface
US8396714B2 (en) * 2008-09-29 2013-03-12 Apple Inc. Systems and methods for concatenation of words in text to speech synthesis
US8352268B2 (en) * 2008-09-29 2013-01-08 Apple Inc. Systems and methods for selective rate of speech and speech preferences for text to speech synthesis
US8355919B2 (en) * 2008-09-29 2013-01-15 Apple Inc. Systems and methods for text normalization for text to speech synthesis
US20100082328A1 (en) * 2008-09-29 2010-04-01 Apple Inc. Systems and methods for speech preprocessing in text to speech synthesis
US8352272B2 (en) * 2008-09-29 2013-01-08 Apple Inc. Systems and methods for text to speech synthesis
US8712776B2 (en) 2008-09-29 2014-04-29 Apple Inc. Systems and methods for selective text to speech synthesis
US8583418B2 (en) 2008-09-29 2013-11-12 Apple Inc. Systems and methods of detecting language and natural language strings for text to speech synthesis
US20100082356A1 (en) * 2008-09-30 2010-04-01 Yahoo! Inc. System and method for recommending personalized career paths
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20100114887A1 (en) * 2008-10-17 2010-05-06 Google Inc. Textual Disambiguation Using Social Connections
US20100100563A1 (en) * 2008-10-18 2010-04-22 Francisco Corella Method of computing a cooperative answer to a zero-result query through a high latency api
US20100138402A1 (en) * 2008-12-02 2010-06-03 Chacha Search, Inc. Method and system for improving utilization of human searchers
WO2010060117A1 (en) * 2008-11-21 2010-05-27 Chacha Search, Inc. Method and system for improving utilization of human searchers
US8396865B1 (en) 2008-12-10 2013-03-12 Google Inc. Sharing search engine relevance data between corpora
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
US20100169296A1 (en) * 2008-12-31 2010-07-01 Evrichart, Inc. Systems and Methods for Maintaining Records
US8862252B2 (en) 2009-01-30 2014-10-14 Apple Inc. Audio user interface for displayless electronic device
US8380507B2 (en) * 2009-03-09 2013-02-19 Apple Inc. Systems and methods for determining the language to use for speech generated by a text to speech engine
US20100241630A1 (en) * 2009-03-18 2010-09-23 Frank John Williams Methods for indexing and retrieving information
GB0905562D0 (en) * 2009-03-31 2009-05-13 British Telecomm Electronic resource storage system
US8041700B2 (en) * 2009-04-07 2011-10-18 Motorola Mobility, Inc. Content item retrieval based on a free text entry
US9009146B1 (en) 2009-04-08 2015-04-14 Google Inc. Ranking search results based on similar queries
CN101872351B (zh) * 2009-04-27 2012-10-10 阿里巴巴集团控股有限公司 识别同义词的方法、装置及利用其进行搜索的方法和装置
US8126875B2 (en) * 2009-05-08 2012-02-28 Microsoft Corporation Instant answers and integrated results of a browser
CN101887436B (zh) * 2009-05-12 2013-08-21 阿里巴巴集团控股有限公司 一种检索方法和装置
JP5129194B2 (ja) * 2009-05-20 2013-01-23 ヤフー株式会社 商品検索装置
US8996550B2 (en) 2009-06-03 2015-03-31 Google Inc. Autocompletion for partially entered query
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
US10540976B2 (en) 2009-06-05 2020-01-21 Apple Inc. Contextual voice commands
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
EP2267615A1 (de) * 2009-06-26 2010-12-29 Yatego GmbH Verfahren zur Analyse und Verarbeitung von Suchworteingaben
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US20110010179A1 (en) * 2009-07-13 2011-01-13 Naik Devang K Voice synthesis and processing
US8447760B1 (en) 2009-07-20 2013-05-21 Google Inc. Generating a related set of documents for an initial set of documents
US8498974B1 (en) 2009-08-31 2013-07-30 Google Inc. Refining search results
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US8972391B1 (en) 2009-10-02 2015-03-03 Google Inc. Recent interest based relevance scoring
US20110099164A1 (en) * 2009-10-23 2011-04-28 Haim Zvi Melman Apparatus and method for search and retrieval of documents and advertising targeting
US8301512B2 (en) 2009-10-23 2012-10-30 Ebay Inc. Product identification using multiple services
US8682649B2 (en) 2009-11-12 2014-03-25 Apple Inc. Sentiment prediction from textual data
US8874555B1 (en) 2009-11-20 2014-10-28 Google Inc. Modifying scoring data based on historical changes
US20110167350A1 (en) * 2010-01-06 2011-07-07 Apple Inc. Assist Features For Content Display Device
US8600743B2 (en) 2010-01-06 2013-12-03 Apple Inc. Noise profile determination for voice-related feature
US8311838B2 (en) 2010-01-13 2012-11-13 Apple Inc. Devices and methods for identifying a prompt corresponding to a voice input in a sequence of prompts
US8381107B2 (en) 2010-01-13 2013-02-19 Apple Inc. Adaptive audio feedback system and method
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8875038B2 (en) 2010-01-19 2014-10-28 Collarity, Inc. Anchoring for content synchronization
US8615514B1 (en) 2010-02-03 2013-12-24 Google Inc. Evaluating website properties by partitioning user feedback
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8924379B1 (en) 2010-03-05 2014-12-30 Google Inc. Temporal-based score adjustments
US8959093B1 (en) 2010-03-15 2015-02-17 Google Inc. Ranking search results based on anchors
US9002866B1 (en) 2010-03-25 2015-04-07 Google Inc. Generating context-based spell corrections of entity names
US9165065B2 (en) * 2010-03-26 2015-10-20 Paypal Inc. Terminology management database
JP5156047B2 (ja) * 2010-03-31 2013-03-06 株式会社東芝 キーワード提示装置、方法及びプログラム
US9317613B2 (en) * 2010-04-21 2016-04-19 Yahoo! Inc. Large scale entity-specific resource classification
US20110295897A1 (en) * 2010-06-01 2011-12-01 Microsoft Corporation Query correction probability based on query-correction pairs
US8639516B2 (en) 2010-06-04 2014-01-28 Apple Inc. User-specific noise suppression for voice quality improvements
US8738377B2 (en) * 2010-06-07 2014-05-27 Google Inc. Predicting and learning carrier phrases for speech input
US9158846B2 (en) 2010-06-10 2015-10-13 Microsoft Technology Licensing, Llc Entity detection and extraction for entity cards
US8595207B2 (en) 2010-06-14 2013-11-26 Salesforce.Com Methods and systems for dynamically suggesting answers to questions submitted to a portal of an online service
US20110314001A1 (en) * 2010-06-18 2011-12-22 Microsoft Corporation Performing query expansion based upon statistical analysis of structured data
US9623119B1 (en) 2010-06-29 2017-04-18 Google Inc. Accentuating search results
US8713021B2 (en) 2010-07-07 2014-04-29 Apple Inc. Unsupervised document clustering using latent semantic density analysis
US9104670B2 (en) * 2010-07-21 2015-08-11 Apple Inc. Customized search or acquisition of digital media assets
US8832083B1 (en) 2010-07-23 2014-09-09 Google Inc. Combining user feedback
US9152727B1 (en) 2010-08-23 2015-10-06 Experian Marketing Solutions, Inc. Systems and methods for processing consumer information for targeted marketing applications
US8719006B2 (en) 2010-08-27 2014-05-06 Apple Inc. Combined statistical and rule-based part-of-speech tagging for text-to-speech synthesis
US8719014B2 (en) 2010-09-27 2014-05-06 Apple Inc. Electronic device with text error correction based on voice recognition data
JP5598223B2 (ja) * 2010-09-30 2014-10-01 アイシン・エィ・ダブリュ株式会社 検索支援装置、検索支援方法および検索支援プログラム
US8346792B1 (en) 2010-11-09 2013-01-01 Google Inc. Query generation using structural similarity between documents
US9147042B1 (en) 2010-11-22 2015-09-29 Experian Information Solutions, Inc. Systems and methods for data verification
US9098569B1 (en) * 2010-12-10 2015-08-04 Amazon Technologies, Inc. Generating suggested search queries
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US10515147B2 (en) 2010-12-22 2019-12-24 Apple Inc. Using statistical language models for contextual lookup
KR101850886B1 (ko) * 2010-12-23 2018-04-23 네이버 주식회사 감소 질의를 추천하는 검색 시스템 및 방법
US9002867B1 (en) 2010-12-30 2015-04-07 Google Inc. Modifying ranking data based on document changes
US9736524B2 (en) 2011-01-06 2017-08-15 Veveo, Inc. Methods of and systems for content search based on environment sampling
EP2487604A1 (en) 2011-02-11 2012-08-15 ExB Asset Management GmbH Compact visualization of search strings for the selection of related information sources
US8781836B2 (en) 2011-02-22 2014-07-15 Apple Inc. Hearing assistance system for providing consistent human speech
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
US8983995B2 (en) 2011-04-15 2015-03-17 Microsoft Corporation Interactive semantic query suggestion for content search
US10275518B2 (en) 2011-04-30 2019-04-30 Tibco Software Inc. Integrated phonetic matching methods and systems
US20120284308A1 (en) * 2011-05-02 2012-11-08 Vistaprint Technologies Limited Statistical spell checker
US10672399B2 (en) 2011-06-03 2020-06-02 Apple Inc. Switching between text data and audio data based on a mapping
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US9104765B2 (en) 2011-06-17 2015-08-11 Robert Osann, Jr. Automatic webpage characterization and search results annotation
US8812294B2 (en) 2011-06-21 2014-08-19 Apple Inc. Translating phrases from one language into another using an order-based set of declarative rules
US9483606B1 (en) 2011-07-08 2016-11-01 Consumerinfo.Com, Inc. Lifescore
US8706472B2 (en) 2011-08-11 2014-04-22 Apple Inc. Method for disambiguating multiple readings in language conversion
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
CN102955821A (zh) * 2011-08-30 2013-03-06 北京百度网讯科技有限公司 一种对查询序列进行扩展处理的方法与设备
US8762156B2 (en) 2011-09-28 2014-06-24 Apple Inc. Speech recognition repair using contextual information
US10176168B2 (en) * 2011-11-15 2019-01-08 Microsoft Technology Licensing, Llc Statistical machine translation based search query spelling correction
US9189550B2 (en) * 2011-11-17 2015-11-17 Microsoft Technology Licensing, Llc Query refinement in a browser toolbar
JP5113936B1 (ja) * 2011-11-24 2013-01-09 楽天株式会社 情報処理装置、情報処理方法、情報処理装置用プログラム、および、記録媒体
US20130151936A1 (en) * 2011-12-12 2013-06-13 Microsoft Corporation Page preview using contextual template metadata and labeling
US9251270B2 (en) * 2012-01-17 2016-02-02 International Business Machines Corporation Grouping search results into a profile page
US9317606B1 (en) * 2012-02-03 2016-04-19 Google Inc. Spell correcting long queries
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9026547B2 (en) * 2012-03-05 2015-05-05 Coupons.Com Incorporated Fault-tolerant search
US20130238636A1 (en) * 2012-03-06 2013-09-12 Salesforce.Com, Inc. Suggesting access-controlled related queries
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
CN103377232B (zh) * 2012-04-25 2016-12-07 阿里巴巴集团控股有限公司 标题关键词推荐方法及系统
US9853959B1 (en) 2012-05-07 2017-12-26 Consumerinfo.Com, Inc. Storage and maintenance of personal data
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US8775442B2 (en) 2012-05-15 2014-07-08 Apple Inc. Semantic search using a single-source semantic model
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
US10019994B2 (en) 2012-06-08 2018-07-10 Apple Inc. Systems and methods for recognizing textual identifiers within a plurality of words
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US8577671B1 (en) 2012-07-20 2013-11-05 Veveo, Inc. Method of and system for using conversation state information in a conversational interaction system
GB2518988A (en) * 2012-07-30 2015-04-08 Hewlett Packard Development Co Search method
US9465833B2 (en) 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US8756241B1 (en) * 2012-08-06 2014-06-17 Google Inc. Determining rewrite similarity scores
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
US8935167B2 (en) 2012-09-25 2015-01-13 Apple Inc. Exemplar-based latent perceptual modeling for automatic speech recognition
CN103020047A (zh) * 2012-12-31 2013-04-03 威盛电子股份有限公司 修正语音应答的方法及自然语言对话系统
US8996516B2 (en) 2013-01-02 2015-03-31 Google Inc. Adjacent search results exploration
DE112014000709B4 (de) 2013-02-07 2021-12-30 Apple Inc. Verfahren und vorrichtung zum betrieb eines sprachtriggers für einen digitalen assistenten
US9697263B1 (en) 2013-03-04 2017-07-04 Experian Information Solutions, Inc. Consumer data request fulfillment system
US9733821B2 (en) 2013-03-14 2017-08-15 Apple Inc. Voice control to diagnose inadvertent activation of accessibility features
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
US10572476B2 (en) 2013-03-14 2020-02-25 Apple Inc. Refining a search based on schedule items
US10642574B2 (en) 2013-03-14 2020-05-05 Apple Inc. Device, method, and graphical user interface for outputting captions
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9977779B2 (en) 2013-03-14 2018-05-22 Apple Inc. Automatic supplementation of word correction dictionaries
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9740767B2 (en) * 2013-03-15 2017-08-22 Mapquest, Inc. Systems and methods for analyzing failed and successful search queries
CN105190607B (zh) 2013-03-15 2018-11-30 苹果公司 通过智能数字助理的用户培训
EP2973058A4 (en) 2013-03-15 2016-09-21 Harpercollins Christian Publishing SYSTEM, METHOD AND INTERFACE FOR COLLECTED LITERARY WORKS
WO2014144949A2 (en) 2013-03-15 2014-09-18 Apple Inc. Training an at least partial voice command system
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
KR102057795B1 (ko) 2013-03-15 2019-12-19 애플 인크. 콘텍스트-민감성 방해 처리
US9824122B2 (en) * 2013-03-15 2017-11-21 Entit Software Llc Requests for source code text
US8965915B2 (en) 2013-03-17 2015-02-24 Alation, Inc. Assisted query formation, validation, and result previewing in a database having a complex schema
US9183499B1 (en) 2013-04-19 2015-11-10 Google Inc. Evaluating quality based on neighbor features
ES2751484T3 (es) * 2013-05-07 2020-03-31 Veveo Inc Interfaz de entrada de voz incremental con retroalimentación en tiempo real
US9946757B2 (en) 2013-05-10 2018-04-17 Veveo, Inc. Method and system for capturing and exploiting user intent in a conversational interaction based information retrieval system
GB2514404A (en) * 2013-05-23 2014-11-26 Basis Technologies Internat Ltd A method and apparatus for searching a system with multiple discrete data stores
US20140351278A1 (en) * 2013-05-23 2014-11-27 Basis Technologies International Limited Method and apparatus for searching a system with multiple discrete data stores
US9336277B2 (en) 2013-05-31 2016-05-10 Google Inc. Query suggestions based on search data
US9626439B2 (en) * 2013-05-31 2017-04-18 Xilopix Method for searching in a database
US9116952B1 (en) 2013-05-31 2015-08-25 Google Inc. Query refinements using search data
US9552411B2 (en) 2013-06-05 2017-01-24 Microsoft Technology Licensing, Llc Trending suggestions
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
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
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 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
KR101809808B1 (ko) 2013-06-13 2017-12-15 애플 인크. 음성 명령에 의해 개시되는 긴급 전화를 걸기 위한 시스템 및 방법
US9772765B2 (en) 2013-07-06 2017-09-26 International Business Machines Corporation User interface for recommended alternative search queries
KR101749009B1 (ko) 2013-08-06 2017-06-19 애플 인크. 원격 디바이스로부터의 활동에 기초한 스마트 응답의 자동 활성화
US10318970B2 (en) 2013-10-04 2019-06-11 International Business Machines Corporation Generating a succinct approximate representation of a time series
US10395198B2 (en) 2013-10-04 2019-08-27 International Business Machines Corporation Forecasting a time series based on actuals and a plan
US10102536B1 (en) 2013-11-15 2018-10-16 Experian Information Solutions, Inc. Micro-geographic aggregation system
US9529851B1 (en) 2013-12-02 2016-12-27 Experian Information Solutions, Inc. Server architecture for electronic data quality processing
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US10262362B1 (en) 2014-02-14 2019-04-16 Experian Information Solutions, Inc. Automatic generation of code for attributes
CN104933081B (zh) 2014-03-21 2018-06-29 阿里巴巴集团控股有限公司 一种搜索建议提供方法及装置
US9576030B1 (en) 2014-05-07 2017-02-21 Consumerinfo.Com, Inc. Keeping up with the joneses
US20170330153A1 (en) 2014-05-13 2017-11-16 Monster Worldwide, Inc. Search Extraction Matching, Draw Attention-Fit Modality, Application Morphing, and Informed Apply Apparatuses, Methods and Systems
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
US9659109B2 (en) * 2014-05-27 2017-05-23 Wal-Mart Stores, Inc. System and method for query auto-completion using a data structure with trie and ternary query nodes
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
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
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
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
WO2015184186A1 (en) 2014-05-30 2015-12-03 Apple Inc. Multi-command single utterance input method
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
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
US9703868B2 (en) 2014-06-23 2017-07-11 Microsoft Technology Licensing, Llc Reconciling query results associated with multiple indices
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9747273B2 (en) 2014-08-19 2017-08-29 International Business Machines Corporation String comparison results for character strings using frequency data
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US10762091B2 (en) * 2014-09-08 2020-09-01 Salesforce.Com, Inc. Interactive feedback for changes in search relevancy parameters
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
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
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
US10445152B1 (en) 2014-12-19 2019-10-15 Experian Information Solutions, Inc. Systems and methods for dynamic report generation based on automatic modeling of complex data structures
US9852136B2 (en) 2014-12-23 2017-12-26 Rovi Guides, Inc. Systems and methods for determining whether a negation statement applies to a current or past query
WO2016101133A1 (en) * 2014-12-23 2016-06-30 Microsoft Technology Licensing, Llc Surfacing relationships between datasets
US9854049B2 (en) 2015-01-30 2017-12-26 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms in social chatter based on a user profile
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
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
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
DE112015006437T5 (de) * 2015-04-10 2017-12-28 Harman International Industries, Incorporated Suchmaschine mit Mehrfachzeichen-Suchkette für ein Fahrzeug-Informationssystem
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10339467B2 (en) 2015-06-02 2019-07-02 International Business Machines Corporation Quantitative discovery of name changes
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
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
KR102568097B1 (ko) * 2015-06-22 2023-08-18 삼성전자 주식회사 파싱 데이터의 관련 정보를 표시하는 방법 및 전자 장치
US9959354B2 (en) 2015-06-23 2018-05-01 Google Llc Utilizing user co-search behavior to identify search queries seeking inappropriate content
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital 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
CN106682012B (zh) * 2015-11-06 2020-12-01 阿里巴巴集团控股有限公司 商品对象信息搜索方法及装置
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
CN105468719B (zh) * 2015-11-20 2018-11-23 北京齐尔布莱特科技有限公司 一种查询纠错方法、装置和计算设备
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
CN105975625A (zh) * 2016-05-26 2016-09-28 同方知网数字出版技术股份有限公司 一种面向英文搜索引擎的中式英文查询纠错方法和系统
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
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
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
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
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
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
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
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
GB2551525A (en) * 2016-06-20 2017-12-27 Austin Consultants Ltd A system for automated code calculation and an automated code calculation method
US10678894B2 (en) 2016-08-24 2020-06-09 Experian Information Solutions, Inc. Disambiguation and authentication of device users
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10296659B2 (en) * 2016-09-26 2019-05-21 International Business Machines Corporation Search query intent
US10372814B2 (en) 2016-10-18 2019-08-06 International Business Machines Corporation Methods and system for fast, adaptive correction of misspells
US10579729B2 (en) 2016-10-18 2020-03-03 International Business Machines Corporation Methods and system for fast, adaptive correction of misspells
EP3350726B1 (en) 2016-12-09 2019-02-20 Google LLC Preventing the distribution of forbidden network content using automatic variant detection
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
CA3050139A1 (en) 2017-01-31 2018-08-09 Experian Information Solutions, Inc. Massive scale heterogeneous data ingestion and user resolution
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal 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
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
RU2693328C2 (ru) 2017-07-27 2019-07-02 Общество С Ограниченной Ответственностью "Яндекс" Способы и системы для создания заменяющего запроса для введенного пользователем запроса
US11093709B2 (en) 2017-08-10 2021-08-17 International Business Machine Corporation Confidence models based on error-to-correction mapping
US11341405B2 (en) * 2017-09-13 2022-05-24 Ebay Inc. Semantic signatures
US11645277B2 (en) * 2017-12-11 2023-05-09 Google Llc Generating and/or utilizing a machine learning model in response to a search request
US10942954B2 (en) * 2017-12-22 2021-03-09 International Business Machines Corporation Dataset adaptation for high-performance in specific natural language processing tasks
CN108337001B (zh) * 2018-01-31 2022-03-11 深圳开思时代科技有限公司 配件编码处理方法、装置、电子设备及存储介质
US10963434B1 (en) 2018-09-07 2021-03-30 Experian Information Solutions, Inc. Data architecture for supporting multiple search models
US11423068B2 (en) * 2018-11-27 2022-08-23 Google Llc Canonicalizing search queries to natural language questions
US11580127B1 (en) 2018-12-21 2023-02-14 Wells Fargo Bank, N.A. User interfaces for database visualizations
CN112445953B (zh) * 2019-08-14 2024-07-19 阿里巴巴集团控股有限公司 信息的搜索纠错方法、计算设备及存储介质
US11941065B1 (en) 2019-09-13 2024-03-26 Experian Information Solutions, Inc. Single identifier platform for storing entity data
US11947604B2 (en) * 2020-03-17 2024-04-02 International Business Machines Corporation Ranking of messages in dialogs using fixed point operations
US20220100756A1 (en) * 2020-09-30 2022-03-31 Microsoft Technology Licensing, Llc Navigation agent for a search interface
US11880377B1 (en) 2021-03-26 2024-01-23 Experian Information Solutions, Inc. Systems and methods for entity resolution
US12038954B2 (en) * 2021-03-31 2024-07-16 Rovi Guides, Inc. Query correction based on reattempts learning
US12072918B1 (en) 2021-12-28 2024-08-27 Wells Fargo Bank, N.A. Machine learning using knowledge graphs
US11768837B1 (en) 2021-12-28 2023-09-26 Wells Fargo Bank, N.A. Semantic entity search using vector space
US11995070B2 (en) * 2022-03-16 2024-05-28 International Business Machines Corporation Query expression error detection and correction
US11880379B1 (en) 2022-04-28 2024-01-23 Wells Fargo Bank, N.A. Identity resolution in knowledge graph databases
CN115495483B (zh) * 2022-09-21 2024-08-20 企查查科技股份有限公司 数据批量处理方法、装置、设备和计算机可读存储介质
US12450429B2 (en) 2023-01-30 2025-10-21 Walmart Apollo, Llc Offline spellcheck candidates complementing runtime spellcheck

Family Cites Families (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5062074A (en) 1986-12-04 1991-10-29 Tnet, Inc. Information retrieval system and method
US4797855A (en) * 1987-01-06 1989-01-10 Smith Corona Corporation Word processor having spelling corrector adaptive to operator error experience
JPH021057A (ja) 1988-01-20 1990-01-05 Ricoh Co Ltd 文書検索装置
US5218536A (en) 1988-05-25 1993-06-08 Franklin Electronic Publishers, Incorporated Electronic spelling machine having ordered candidate words
US5408655A (en) * 1989-02-27 1995-04-18 Apple Computer, Inc. User interface system and method for traversing a database
JPH03122770A (ja) * 1989-10-05 1991-05-24 Ricoh Co Ltd キーワード連想文書検索方法
US5175814A (en) * 1990-01-30 1992-12-29 Digital Equipment Corporation Direct manipulation interface for boolean information retrieval
US5255386A (en) 1990-02-08 1993-10-19 International Business Machines Corporation Method and apparatus for intelligent help that matches the semantic similarity of the inferred intent of query or command to a best-fit predefined command intent
US5604897A (en) * 1990-05-18 1997-02-18 Microsoft Corporation Method and system for correcting the spelling of misspelled words
US5278980A (en) * 1991-08-16 1994-01-11 Xerox Corporation Iterative technique for phrase query formation and an information retrieval system employing same
US5265065A (en) 1991-10-08 1993-11-23 West Publishing Company Method and apparatus for information retrieval from a database by replacing domain specific stemmed phases in a natural language to create a search query
JP3219840B2 (ja) 1992-05-13 2001-10-15 富士通株式会社 情報検索装置
US5467425A (en) * 1993-02-26 1995-11-14 International Business Machines Corporation Building scalable N-gram language models using maximum likelihood maximum entropy N-gram models
JPH06314296A (ja) 1993-03-02 1994-11-08 Fujitsu Ltd 情報検索システム
US5519608A (en) * 1993-06-24 1996-05-21 Xerox Corporation Method for extracting from a text corpus answers to questions stated in natural language by using linguistic analysis and hypothesis generation
JPH0756933A (ja) * 1993-06-24 1995-03-03 Xerox Corp 文書検索方法
WO1995002221A1 (en) 1993-07-07 1995-01-19 Inference Corporation Case-based organizing and querying of a database
US5606690A (en) * 1993-08-20 1997-02-25 Canon Inc. Non-literal textual search using fuzzy finite non-deterministic automata
DE69423838T2 (de) * 1993-09-23 2000-08-03 Xerox Corp., Rochester Semantische Gleichereignisfilterung für Spracherkennung und Signalübersetzungsanwendungen
US5576954A (en) * 1993-11-05 1996-11-19 University Of Central Florida Process for determination of text relevancy
US5584024A (en) * 1994-03-24 1996-12-10 Software Ag Interactive database query system and method for prohibiting the selection of semantically incorrect query parameters
US6202058B1 (en) * 1994-04-25 2001-03-13 Apple Computer, Inc. System for ranking the relevance of information objects accessed by computer users
US5675819A (en) * 1994-06-16 1997-10-07 Xerox Corporation Document information retrieval using global word co-occurrence patterns
US5761689A (en) * 1994-09-01 1998-06-02 Microsoft Corporation Autocorrecting text typed into a word processing document
WO1996010795A1 (en) * 1994-10-03 1996-04-11 Helfgott & Karas, P.C. A database accessing system
US5715444A (en) 1994-10-14 1998-02-03 Danish; Mohamed Sherif Method and system for executing a guided parametric search
US5742180A (en) * 1995-02-10 1998-04-21 Massachusetts Institute Of Technology Dynamically programmable gate array with multiple contexts
US5855015A (en) 1995-03-20 1998-12-29 Interval Research Corporation System and method for retrieval of hyperlinked information resources
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
US5794177A (en) * 1995-07-19 1998-08-11 Inso Corporation Method and apparatus for morphological analysis and generation of natural language text
US5742816A (en) * 1995-09-15 1998-04-21 Infonautics Corporation Method and apparatus for identifying textual documents and multi-mediafiles corresponding to a search topic
US5721902A (en) * 1995-09-15 1998-02-24 Infonautics Corporation Restricted expansion of query terms using part of speech tagging
US5873076A (en) * 1995-09-15 1999-02-16 Infonautics Corporation Architecture for processing search queries, retrieving documents identified thereby, and method for using same
US5675788A (en) * 1995-09-15 1997-10-07 Infonautics Corp. Method and apparatus for generating a composite document on a selected topic from a plurality of information sources
US5737734A (en) * 1995-09-15 1998-04-07 Infonautics Corporation Query word relevance adjustment in a search of an information retrieval system
US5717914A (en) * 1995-09-15 1998-02-10 Infonautics Corporation Method for categorizing documents into subjects using relevance normalization for documents retrieved from an information retrieval system in response to a query
US5640553A (en) * 1995-09-15 1997-06-17 Infonautics Corporation Relevance normalization for documents retrieved from an information retrieval system in response to a query
US5983220A (en) 1995-11-15 1999-11-09 Bizrate.Com Supporting intuitive decision in complex multi-attributive domains using fuzzy, hierarchical expert models
US5911140A (en) 1995-12-14 1999-06-08 Xerox Corporation Method of ordering document clusters given some knowledge of user interests
US6136911A (en) * 1996-01-11 2000-10-24 E.I. Du Pont De Nemours And Company Fibers flash-spun from partially fluorinated polymers
US5787422A (en) 1996-01-11 1998-07-28 Xerox Corporation Method and apparatus for information accesss employing overlapping clusters
US5875443A (en) * 1996-01-30 1999-02-23 Sun Microsystems, Inc. Internet-based spelling checker dictionary system with automatic updating
US5819251A (en) * 1996-02-06 1998-10-06 Oracle Corporation System and apparatus for storage retrieval and analysis of relational and non-relational data
CA2250694A1 (en) * 1996-04-04 1997-10-16 Flair Technologies, Ltd. A system, software and method for locating information in a collection of text-based information sources
US5721897A (en) 1996-04-09 1998-02-24 Rubinstein; Seymour I. Browse by prompted keyword phrases with an improved user interface
US6012055A (en) 1996-04-09 2000-01-04 Silicon Graphics, Inc. Mechanism for integrated information search and retrieval from diverse sources using multiple navigation methods
US5913215A (en) 1996-04-09 1999-06-15 Seymour I. Rubinstein Browse by prompted keyword phrases with an improved method for obtaining an initial document set
US5794233A (en) 1996-04-09 1998-08-11 Rubinstein; Seymour I. Browse by prompted keyword phrases
US5768581A (en) 1996-05-07 1998-06-16 Cochran; Nancy Pauline Apparatus and method for selecting records from a computer database by repeatedly displaying search terms from multiple list identifiers before either a list identifier or a search term is selected
US5826261A (en) * 1996-05-10 1998-10-20 Spencer; Graham System and method for querying multiple, distributed databases by selective sharing of local relative significance information for terms related to the query
US5802515A (en) 1996-06-11 1998-09-01 Massachusetts Institute Of Technology Randomized query generation and document relevance ranking for robust information retrieval from a database
US5920859A (en) * 1997-02-05 1999-07-06 Idd Enterprises, L.P. Hypertext document retrieval system and method
US5956739A (en) 1996-06-25 1999-09-21 Mitsubishi Electric Information Technology Center America, Inc. System for text correction adaptive to the text being corrected
US6581056B1 (en) 1996-06-27 2003-06-17 Xerox Corporation Information retrieval system providing secondary content analysis on collections of information objects
US5864845A (en) 1996-06-28 1999-01-26 Siemens Corporate Research, Inc. Facilitating world wide web searches utilizing a multiple search engine query clustering fusion strategy
US5864846A (en) 1996-06-28 1999-01-26 Siemens Corporate Research, Inc. Method for facilitating world wide web searches utilizing a document distribution fusion strategy
US5907839A (en) 1996-07-03 1999-05-25 Yeda Reseach And Development, Co., Ltd. Algorithm for context sensitive spelling correction
US5819265A (en) * 1996-07-12 1998-10-06 International Business Machines Corporation Processing names in a text
US5832480A (en) * 1996-07-12 1998-11-03 International Business Machines Corporation Using canonical forms to develop a dictionary of names in a text
US6014134A (en) 1996-08-23 2000-01-11 U S West, Inc. Network-based intelligent tutoring system
US5940825A (en) 1996-10-04 1999-08-17 International Business Machines Corporation Adaptive similarity searching in sequence databases
US5987446A (en) 1996-11-12 1999-11-16 U.S. West, Inc. Searching large collections of text using multiple search engines concurrently
US6415319B1 (en) 1997-02-07 2002-07-02 Sun Microsystems, Inc. Intelligent network browser using incremental conceptual indexer
US6816880B1 (en) * 1997-03-26 2004-11-09 Concerto Software, Inc. Browser user inter face for client workstation
US6006222A (en) 1997-04-25 1999-12-21 Culliss; Gary Method for organizing information
US6038560A (en) 1997-05-21 2000-03-14 Oracle Corporation Concept knowledge base search and retrieval system
JP3547069B2 (ja) * 1997-05-22 2004-07-28 日本電信電話株式会社 情報関連づけ装置およびその方法
US5920856A (en) 1997-06-09 1999-07-06 Xerox Corporation System for selecting multimedia databases over networks
US6137911A (en) * 1997-06-16 2000-10-24 The Dialog Corporation Plc Test classification system and method
US6182068B1 (en) 1997-08-01 2001-01-30 Ask Jeeves, Inc. Personalized search methods
US6014665A (en) 1997-08-01 2000-01-11 Culliss; Gary Method for organizing information
US5865862A (en) 1997-08-12 1999-02-02 Hassan; Shawky Match design with burn preventative safety stem construction and selectively impregnable scenting composition means
US6999959B1 (en) 1997-10-10 2006-02-14 Nec Laboratories America, Inc. Meta search engine
US5987457A (en) 1997-11-25 1999-11-16 Acceleration Software International Corporation Query refinement method for searching documents
US6345264B1 (en) 1998-01-22 2002-02-05 Microsoft Corporation Methods and apparatus, using expansion attributes having default, values, for matching entities and predicting an attribute of an entity
EP1062602B8 (en) 1998-02-13 2018-06-13 Oath Inc. Search engine using sales and revenue to weight search results
US6101503A (en) 1998-03-02 2000-08-08 International Business Machines Corp. Active markup--a system and method for navigating through text collections
CA2320293C (en) 1998-03-03 2004-08-03 Amazon.Com, Inc. Identifying the items most relevant to a current query based on items selected in connection with similar queries
US6421675B1 (en) 1998-03-16 2002-07-16 S. L. I. Systems, Inc. Search engine
US6032145A (en) 1998-04-10 2000-02-29 Requisite Technology, Inc. Method and system for database manipulation
US6175829B1 (en) 1998-04-22 2001-01-16 Nec Usa, Inc. Method and apparatus for facilitating query reformulation
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
US6006225A (en) * 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches
US6178416B1 (en) 1998-06-15 2001-01-23 James U. Parker Method and apparatus for knowledgebase searching
US6144958A (en) 1998-07-15 2000-11-07 Amazon.Com, Inc. System and method for correcting spelling errors in search queries
US6751606B1 (en) 1998-12-23 2004-06-15 Microsoft Corporation System for enhancing a query interface
US6615247B1 (en) 1999-07-01 2003-09-02 Micron Technology, Inc. System and method for customizing requested web page based on information such as previous location visited by customer and search term used by customer
US6381594B1 (en) * 1999-07-12 2002-04-30 Yahoo! Inc. System and method for personalized information filtering and alert generation
US6260041B1 (en) 1999-09-30 2001-07-10 Netcurrents, Inc. Apparatus and method of implementing fast internet real-time search technology (first)
US6772150B1 (en) 1999-12-10 2004-08-03 Amazon.Com, Inc. Search query refinement using related search phrases

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111310442A (zh) * 2020-02-06 2020-06-19 北京字节跳动网络技术有限公司 形近字纠错语料挖掘方法、纠错方法、设备及存储介质

Also Published As

Publication number Publication date
ATE542183T1 (de) 2012-02-15
US7840577B2 (en) 2010-11-23
US20060117003A1 (en) 2006-06-01
WO2000004465A1 (en) 2000-01-27
US20110035370A1 (en) 2011-02-10
JP2002520740A (ja) 2002-07-09
CA2337249A1 (en) 2000-01-27
EP1104568A1 (en) 2001-06-06
US6401084B1 (en) 2002-06-04
EP1104568B1 (en) 2012-01-18
EP1104568A4 (en) 2006-04-12
AU5094799A (en) 2000-02-07
JP4035685B2 (ja) 2008-01-23
US6144958A (en) 2000-11-07
CA2337249C (en) 2011-09-20
DK1104568T3 (da) 2012-03-19
US7444324B2 (en) 2008-10-28
US7996398B2 (en) 2011-08-09
US20020152204A1 (en) 2002-10-17
US20050071332A1 (en) 2005-03-31
PT1104568E (pt) 2012-03-29
US6853993B2 (en) 2005-02-08

Similar Documents

Publication Publication Date Title
ES2379704T3 (es) Sistema y método para corregir errores ortográficos en peticiones de búsqueda
US6772150B1 (en) Search query refinement using related search phrases
US7779002B1 (en) Detecting query-specific duplicate documents
US9773055B2 (en) Query rewriting with entity detection
US8214385B1 (en) Locating meaningful stopwords or stop-phrases in keyword-based retrieval systems
JP2007293896A (ja) 検索照会改善システムおよび方法
US8214369B2 (en) System and method for indexing and prefiltering
WO2001042880A2 (en) Search query refinement using related search phrases
Zheng et al. Data extraction from web pages based on structural-semantic entropy
Lage et al. Collecting hidden weeb pages for data extraction
Park Analysis of characteristics and trends of Web queries submitted to NAVER, a major Korean search engine
Hawkins Multiple Database Searching: Techniques and Pitfalls.
Cornick Being an End-User Is Not for Everyone.
Gao et al. Web-based citation parsing, correction and augmentation
MXPA01000469A (es) Sistema y metodo para corregir errores de ortografia en preguntas de busqueda
Kelledy Query space reduction in information retrieval
Mendelsohn Searching Social Work Abstracts: A Review.
Bhimireddy et al. A survey to fix the threshold and implementation for detecting duplicate web documents
Bates The Seven Deadly Sins of Online Searching.
McAllister FP-Tree Motivated System for Information Retrieval Using an Abstraction Path-based Inverted Index
Benayon Exploiting Usenet Newsgroups to Derive Authoritative Web Pages