MXPA01000469A - Sistema y metodo para corregir errores de ortografia en preguntas de busqueda - Google Patents

Sistema y metodo para corregir errores de ortografia en preguntas de busqueda

Info

Publication number
MXPA01000469A
MXPA01000469A MXPA/A/2001/000469A MXPA01000469A MXPA01000469A MX PA01000469 A MXPA01000469 A MX PA01000469A MX PA01000469 A MXPA01000469 A MX PA01000469A MX PA01000469 A MXPA01000469 A MX PA01000469A
Authority
MX
Mexico
Prior art keywords
search
terms
term
question
questions
Prior art date
Application number
MXPA/A/2001/000469A
Other languages
English (en)
Inventor
Ruben Ernesto Ortega
Dwayne Edward Bowman
Original Assignee
Amazoncom 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 Amazoncom Inc filed Critical Amazoncom Inc
Publication of MXPA01000469A publication Critical patent/MXPA01000469A/es

Links

Abstract

Un receptor para procesar una señal modulada de banda lateral residual que contiene información de televisión de alta definición de transmisión terrestre y un componente piloto incluye una red de recuperación de portadora (22;Figura 3) que produce una señal de banda base demodulada. La red de recuperación de portadora adicionalmente responde a una señal de control generada de manera local (Desplazamiento de Fase;360) que representa un desplazamiento de fase no deseado de la señal piloto debido a, por ejemplo, distorsión de múltiples trayectorias. La señal de control se utiliza para compensar el desplazamiento de fase piloto antes que la señal demodulada sea ecualizada. La señal de control es producida correlacionando valores de sincronización recibidos con un valor de sincronización de referencia (362) y una transformada de Hilbert del valor de sincronización de referencia (363). La salida de la señal de red de recuperación de portadora es compensada en fase dos veces.

Description

SISTEMAY MÉTODO PARA CORREGIR ERRORES DE ORTOGRAFÍA EN PREGUNTAS DE BÚSQUEDA MATERIALES DE APÉNDICE Y DE DERECHOS DE AUTOR Esta especificación incluye como un apéndice una listado C++ de una función de comparación de ortografía usada para comparar dos cadenas de caracteres . Los contenidos del apéndice están sujetos a la protección de derechos de autor. El propietario de los derechos de autor no tiene objeción en la reproducción en facsímil del documento de patente o porciones del mismo, como aparecen en los archivos de los registros de la Oficina de Patentes y Marcas de E.U.A., u otras oficinas de patentes, pero, de otra manera, se reserva todos los derechos de cualquier clase.
CAMPO DE LA INVENCIÓN 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 el proceso de las preguntas de búsqueda.
ANTECEDENTES DE LA INVENCIÓN Muchos sitios en la World Wide Web (www) y servicios en línea, suministran programas de motores de búsqueda ("motores de búsqueda") para ayudar a los usuarios atki.lM.k.MlMktk.HItl ,. L * . aaia-- a localizar los artículos de interés de un dominio de artículos. Por ejemplo, los sitios de Web, tal como AltaVista e Infoseek, suministran motores de búsqueda para ayudar a los usuarios a localizar otros sitios de Web, y los 5 servicios en línea, tal como Lexis y Westlaw, llevan a cabo motores de búsqueda para ayudar a los usuarios en localizar artículos y opiniones de la corte. Además, los comerciantes en línea suministran comúnmente motores de búsqueda para ayudar a los clientes en localizar productos desde un catálogo en línea. Para ejecutar una búsqueda que usa un motor para la misma, un usuario expone una pregunta que contiene uno o más términos de la búsqueda. La pregunta puede también identificar, explícita o implícitamente, a un campo de registro que se va a buscar, tal como el título, autor o clasificación de tema del artículo. Por ejemplo, un usuario de un sitio de una librería en línea, puede exponer una pregunta que contiene términos que el usuario cree aparecen en el título de un libro. Un programa del servidor de preguntas del motor de búsqueda procesa la pregunta para identificar cualquier artículo que coincida con la pregunta. El conjunto de artículos identificado por el programa del servidor de preguntas se refiere como el "resultado de la pregunta" y se presenta comúnmente al usuario como una lista de los artículos localizados. En el ejemplo de la librería, ÉÜÉHliÉiÉ^tflttiJUi el resultado de la pregunta típicamente será el conjunto de títulos de libros que incluyan todos los términos de búsqueda, y se presentará comúnmente al usuario como una lista hipertextual de estos artículos. Cuando el usuario de un motor de búsqueda escribe mal un término de esta búsqueda dentro de una pregunta, tal como por un error de mecanografía o una falla en recordar el término, este término mal escrito comúnmente no corresponderá con cualquiera de los términos de la base de datos que son abarcados por la búsqueda. En este caso, muchos de los motores de búsqueda, regresarán simplemente una resultado nulo (vacío) de la búsqueda La presentación de resultados nulos de la búsqueda al usuario, sin embargo, puede causar una frustración significante a este usuario. Para reducir este problema, algunos motores de búsqueda ignoran efectivamente uno o más términos que no correspondan, durante la búsqueda. Esta estrategia tiene la desventaja de fallar en tomar en cuenta información potencialmente importante especificada por el usuario y tiende a producir resultados de preguntas que contienen números relativamente grandes de artículos irrelevantes.
COMPENDIO DE LA INVENCIÓN La presente invención resuelve los problemas anteriores por la provisión de un sistema y método para corregir términos mal escritos dentro de las preguntas de búsqueda. El sistema incluye una base de datos de correlación que indican las correlaciones entre los términos de búsqueda. Los datos de correlación se basan preferiblemente en las frecuencias con las cuales los términos de búsqueda específicos han aparecido históricamente juntos dentro de la misma pregunta y son generados preferiblemente de un archivo de registro de preguntas. En una modalidad, cada entrada dentro de la base de datos (realizada como una tabla) comprende una palabra clave y una lista de "términos relacionados, en que esta lista de términos relacionados se compone de términos que han aparecido en combinación con la palabra clave con el mayor grado de frecuencia. El método de corrección de ortografía es empleado preferiblemente cuando se expone una pregunta de búsqueda que incluye al menos un término coincidente y al menos un término no coincidente. Usando la base de datos de correlación, se genera inicialmente una lista de términos, que se considera se relaciona a uno o más términos coincidentes. Esto se puede lograr, por ejemplo, por la extracción de la lista de términos relacionados para cada artículo coincidente, y si la pregunta incluye múltiples términos coincidentes, se combinan estas listas en una sola lista de términos relacionada.
Los términos relacionados son luego comparados en su ortografía a uno o más términos no coincidentes, para identificar cualquier reemplazo adecuado. Las comparaciones de ortografía se realizan preferiblemente usando una función 5 de comparación de ortografía de tipo anagrama, que genera una clasificación que indica el grado de similaridad entre dos cadenas de caracteres. Si se encuentra un término relacionado con una ortografía suficientemente similar a un término no coincidente, el término no coincidente es reemplazado preferiblemente en forma automática con el término relacionado. Al usuario puede alternativamente ser sugerido seleccionar los términos de reemplazo de una lista de términos. Una vez que uno o más términos no coincidentes se han reemplazado, se usa la pregunta modificada para realizar la búsqueda. El usuario es también notificado preferiblemente de una o más modificaciones hechas a la pregunta. Un beneficio importante al método de corrección de ortografía, entes descrito, sobre los métodos de corrección de ortografía convencionales, es que los términos de reemplazo seleccionados considerablemente son muy probables los términos que se intentan por el usuario. Estos resultados benéficos del uso, antes descrito, de los datos de correlación del término de búsqueda y particularmente los datos de correlación que reflejan envíos históricos de ^¡g^j^ preguntas. El método aumenta así la probabilidad que el resultado de la pregunta contenga artículos que son de interés al usuario. Otro beneficio es que el método es muy adecuado para corregir términos que no aparezcan en el diccionario, tal como los nombres propios de autores y artistas y términos caprichosos dentro de los títulos y nombres de productos . De acuerdo con otro aspecto de la invención, los datos de correlación se generan preferiblemente de modo que refleje altamente envíos de preguntas recientes y así refleje fuertemente las preferencias actuales de los usuarios. Esto puede ser logrado, por ejemplo, generando periódicamente una tabla de correlación desde un número deseado (por ejemplo 12) de los registros de preguntas diarias más recientes. Usando los datos de correlación que reflejan los envíos de preguntas recientes, se aumenta más la probabilidad que los reemplazos hechos por el proceso de corrección de ortografía sean aquéllos intentados por los usuarios .
BREVE DESCRIPCIÓN DE LOS DIBUJOS Estas y otras características de la invención serán ahora descritas con referencia a los dibujos resumidos abajo. Estos dibujos y la descripción asociada son provistos para ilustrar una modalidad preferida de la invención y no limitar el alcance de la misma. La Figura 1 ilustra un sitio Web que realiza un motor de búsqueda de acuerdo con la invención. La Figura 2 ilustra una página de búsqueda de un libro 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 búsqueda al proceso en el envío de una pregunta. La Figura 5 ilustra el formato general del registro de pregunta de la Figura 1. La Figura 6 ilustra un proceso usado para generar periódicamente la tabla de correlación del registro de preguntas.
DESCRIPCIÓN DETALLADA DE LAS MODALIDADES PREFERIDAS La presente invención suministira un método para corregir errores de ortografía en las preguntas que se presentan a los motores de búsqueda. En breve, el método implica usar datos de correlación del término de búsqueda para identificar los términos de búsqueda que se relacionan a uno o más términos de búsqueda escritoís correctamente, y evaluar si cualquiera de estos términos .relacionados tiene una ortografía similar a uno o más términos de búsqueda mal escritos. Los datos de correlación del término de búsqueda son basados preferiblemente en los envíos históricos de preguntas, y, más específicamente, en las frecuencias con las cuales los términos de búsqueda han ocurrido previamente dentro de la misma pregunta. El método puede ser realizado dentro de cualquiera de una variedad de tipos diferentes de motores de búsqueda, que incluyen, por ejemplo, motores de búsqueda de Internet, motores de búsqueda de investigaciones legales y motores de búsqueda provistos por los comerciantes en línea. Para fines de ilustración, el método aquí descrito en el contexto de un motor de búsqueda, que se usa para asistir a los clientes de Amazon.com Inc., en localizar artículos (libros, CDs, etc.) de un catálogo en línea de productos. A través de la descripción, se hará referencia a los varios detalles específicos de realización de la ejecución de Amazon.com. Estos detalles son provistos con el fin de ilustrar completamente una modalidad preferida de la invención y no de limitar el alcance de la invención. Este alcance de la invención se señala en las reivindicaciones anexas .
I . Revisión del Sitio Web y el Motoa: de Búsqueda La Figura 1 ilustra el sitio Web de Amazon.com, 30, que incluye los componentes usados para la realización de un motor de búsqueda, de acuerdo con La invención. Como •laá^ÉMUM es bien conocido en el arte del comercio de la Internet, el sitio Amazon.com incluye funcionalidad para permitir que los usuarios busquen, revisen rápidamente y hagan compras de un catálogo en línea de títulos de libros, títulos musicales, y 5 otros tipos de artículos. Debido a que el catálogo contiene millones de productos que se pueden ojear, es importante que el sitio suministre un mecanismo eficiente para asistir a los usuarios a localizar los productos. Como se ilustra en la Figura 1, el sitio Web, 30, incluye una aplicación 32 del servidor de Web ("servidor de Web"), que procesa las solicitudes recibidas en la Internet desde las computadoras de usuarios 34. Estas solicitudes incluyen preguntas de búsqueda que se exponen por los usuarios para buscar en el catálogo de productos. El servidor 32 de Web registra las transacciones del usuario, que incluyen los envíos de preguntas, dentro de un registro 36 de preguntas. En la modalidad ilustrada en la Figura 1, el registro 36 de preguntas consiste de una secuencia de archivos 36 de registros de preguntas diarias, cada uno representa un día de transacciones. El sitio Web 30 también incluye un servidor 38 de preguntas, que procesa las preguntas de búsqueda, investigando una base de datos bibliográfica 40. Esta base de datos bibliográfica 40 incluye la información acerca de los varios productos que están disponibles para la compra ¡^^^m desde el sitio, esta información incluye, por ejemplo, los títulos, autores, publicadores, descripciones de materia y los ISBN (International Standard Book Numbers) (Números Internacionales de Libros Estándar) , y los títulos, artistas, etiquetas y clasificaciones musicales de títulos musicales. La información de cada producto se dispone dentro de campos (tal como un campo de "autor" y un campo de "título"), que hacen posible que la base de datos 40 sea buscada en una base restringida de campo,, El sitio también incluye una base de datos 41 del contenido de HTML (Hypertext Markup Language) que incluye, entre otras cosas, las páginas de información del producto, que muestra y describe los varios productos del catálogo. La Figura 2 ilustra el formato general de una página de búsqueda de libros que puede ser usado para buscar la base de datos bibliográfica 40 para títulos de libros. La página incluye el autor, título y campos de la materia, 42, 43, 44, y los controles asociados que permiten al usuario iniciar las búsquedas de campo restringido para los títulos de libros. Los usuarios pueden también tener acceso a una página de búsqueda de música (no mostrada) para buscar títulos musicales, que usan el artista, título y campos de etiqueta. Otras áreas del sitio permiten que el usuario envíe preguntas de búsqueda sin limitar los términos de búsqueda a campos específicos de base de datos.
Cuando el usuario expone una pregunta de búsqueda desde la página de búsqueda de libros u otra página del sitio, el servidor de preguntas 38 (Figura 1) aplica la pregunta a la base de datos 40 bibliográfica, tomando en 5 cuenta cualquier restricción de ampo dentro de la pregunta. Si el resultado de la pregunta es un artículo sencillo, la página de información del producto del articulo se presenta al usuario. Si el resultado de la pregunta incluye múltiples artículos, una lista de los artículos se presenta al usuario a través de una o más páginas de resultados de búsqueda (no mostradas) , que incluyen los enlaces hipertextuales a las páginas de información del producto respectivo de los artículos . Para preguntas de términos múltiples, el servidor de preguntas 38 realiza efectiva y lógicamente las "Y" (AND) , a los términos de búsqueda juntos para llevar a cabo la búsqueda. Por ejemplo, si el usuario entra los términos "Java" y "programación" en el campo del título, el servidor 39 de preguntas buscará y regresará una lista de todos los productos que tengan ambos de estos términos dentro del título. Así, si cualquier término de búsqueda de la pregunta no produce una coincidencia (referida aquí como un "término no coincidente", la pregunta producirá un resultado nulo de esta pregunta. En este caso, el usuario puede ser presentado «^MHIIIi^U.^ wá?**^* *?^ con una lista de productos que se consideran como "coincidencias estrechas". Aunque el motor de búsqueda aquí descrito realiza lógicamente las "Y" en los términos de búsqueda juntos, se reconocerá que la invención puede ser aplicada a los motores de búsqueda que usan otros métodos para combinar los términos de búsqueda.
II . Revisión de la Característica de Corrección de la Ortografía De acuerdo con la invención, cuando un usuario expone una pregunta de búsqueda de múltiples términos, que incluye términos tanto coincidentes como no coincidentes, un proceso 48 de corrección de ortografía (Figura 1) del servidor 38 de preguntas, usa uno o más términos coincidentes, en combinación con los datos de correlación del término de búsqueda, para intentar corregir la ortografía de uno o más términos no coincidentes. Esto se logra preferiblemente usando una tabla de correlación 50 de términos de búsqueda para identificar términos adicionales que se consideran se relacionan con uno o más términos de búsqueda coincidentes, y luego comparar la ortografía de cada uno de los términos relacionados a la ortografía de los términos no coincidentes. Por ejemplo, si un usuario expone la pregunta Java APPI, y "APPI" es un término no coincidente, el proceso 48 de corrección de ortografía usa la tabla de correlación para identificar una lista de términos que se consideran serán relacionados con "Java". Esta lista puede ser como sigue: 5 café, programación, API, manejo, lenguaje;. Al comparar las ortografías de estos términos relacionados a la ortografía del término no relacionado, el proceso 48 de corrección de ortografía identificará "API" como un término de reemplazo candidato. Las compasiones de ortografía se llevan a cabo preferiblemente usando una función de comparación de ortografía de tipo anagrama, que genera una clasificación que indica el grado de similaridad entre las dos cadenas de caracteres . Los datos contenidos dentro de la tabla 50 de correlación indica las relaciones entre los términos de búsqueda y se usan para predecir efectivamente los términos de búsqueda que probablemente aparecerán dentro de la misma pregunta. La incorporación de tales predicciones en el proceso de corrección de ortografía, aumenta significantemente la probabilidad que un término de reemplazo dado, identificado por el proceso, sea el término que se intenta por el usuario. Si el proceso anterior identifica un reemplazo adecuado para un término no coincidente dado, este término no coincidente se reemplaza automáticamente con el término MIíiMiltf fÜlitfh l& ¡^ relacionado. Si no se encuentra un reemplazo adecuado para un término no coincidente dado, este término no coincidente se omite preferiblemente de la pregunta. Una vez que todos los términos no coincidentes o se han reemplazado u omitido, la pregunta modificada se usa para buscar la base de datos bibliográfica 40 y el resultado se presenta al usuario. El usuario es también notificado de las modificaciones hechas a la pregunta de búsqueda. Como una alternativa al reemplazo automático de los términos no coincidentes, el usuario puede ser sugerido seleccionar los términos de reemplazo de una lista de términos de reemplazo candidatos. Esto se logra preferiblemente presentando cada término de reemplazo candidato como un hiperenlace respectivo (no mostrado) , el cual puede ser seleccionado por el usuario para iniciar la búsqueda modificada; el usuario puede así tanto seccionar una pregunta modificada como iniciar una nueva búsqueda con una acción sencilla. De acuerdo con otro aspecto de la invención, la tabla de correlación 50 contiene preferiblemente o refleja la información histórica acerca de las frecuencias con las cuales los términos de búsqueda han aparecido juntos dentro de la misma pregunta de búsqueda. Como se ilustra en la Figura 1, este dato se extrae preferiblemente del registro 36 de preguntas, que usa un proceso 46 de generación de tabla. La incorporación de tal información histórico en el proceso de corrección de ortografía aiumenta además la probabilidad que un término de reemplazo ubicado por el proceso será el término el cual se intenta por el usuario. En una modalidad (descrita abajo) , el proceso 48 de generación de tabla regenera la tabla 50 de correlación en una base diaria desde los M archivos de registro diarios más recientes, 36 (1) - (36 (M) , donde M es un número fijo, tal como diez o veinte. Esta acercamiento de "ventana de deslizamiento" produce ventajosamente una tabla de correlación, que se basa sólo en los envíos de pregunta recientes, y que refleja así las preferencias actuales de los usuarios. Por ejemplo, si un núme;ro, relativamente grande, de usuarios ha buscado el libre Tnto Thin Air, por Jon Krakauer, en la pasada semana, las correlaciones entre los términos "Into", "thin", "air" y "Krakauer" probablemente serán correspondientemente altas; estas elevadas correlaciones , a su vez, aumentan la probabilidad que un usuario quien escribe mal un término (de una pregunta de múltiples términos) , mientras busca este libro, será dirigida al libro. Cualquiera de una variedad de otros tipos de métodos de orientación se puede aplicar al registro para lograr un resultado similar, que incluyen los métodos que aplican un peso mayor a envíos de preguntas recientes sobre los envíos de preguntas antiguos.
La Figura 3 ilustra el formato general de la tabla 50 de correlación. En la modalidad ilustr.ada en la Figura 3 y descrita aquí en detalle, las correlaciones entre los términos de búsqueda se basan sólo en la frecuencia de 5 ocurrencia dentro de la misma pregunta. Como se describe abajo, otros tipos de correlaciones de términos de búsqueda pueden, adicional o alternativamente, ser usados Además, aunque la realización descrita usa una tabla para almacenar los datos de correlación, otros tipos de bases de datos pueden ser usados. Como se ilustra por la Figura 3, cada entrada dentro de la tabla de correlación (3 entradas mostradas) tiene preferiblemente dos componentes primarios: (1) una palabra clave 60 y (2) una lista 62 de "términos relacionados" para esa palabra clave. La lista 62 de términos relacionados es una lista de N (por ejemplo 20) términos de búsqueda que han aparecido dentro de la misma pregunta como la palabra clave con el grado mayor de frecuencia y se ordena de acuerdo con esta frecuencia. Por ejemplo, la entrada para la palabra cave COSMOS es: COSMOS: ASTRONOMY, SAGAN, UNÍVERSE, SPACE, CARL ... (COSMOS: ASTRONOMÍA, SAGAN, UNIVERSO, ESPACIO, CARL...) que indica que ASTRONOMY ha aparecido junto con COSMOS con el mayor grado de frecuencia; SAGAN ha aparecido con COSMOS con el segundo grado mayor de frecuencia, etc. Cada término ^^j^ — •" ' * que aparece dentro de la poción 62 de lista se considera como relacionado a la palabra clase correspondiente 60 en virtud de la frecuencia, relativamente alta, con la cual los términos han ocurrido dentro de la misma pregunta, En la realización aquí descrita, las palabras clave y los términos relacionados se almacenan en la tabla sin considerar el caso alfabético, aunque la información del caso puede ser preservada alternativamente. Con referencia ulterior a la Figura 3, cada término relacionado y cada palabra clave; 60 dentro de la tabla 50 incluyen preferiblemente un prefijo del ampo de un solo carácter (no mostrado) que indica que el campo de búsqueda 42, 43, 44 al cual corresponde el término (basado en los ampos de búsqueda en que los términos son entrados por los usuarios) . Estos prefijos pueden, por ejemplo, ser como sigue: A = autor, T = título, S = sujeto, R = artista, L = etiqueta. Así, 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 un número relativamente grande de preguntéis se exponen, que incluyen COSMOS en el campo 43 del título, . junto con SAGAN en el campo del autor 42. Como se describe abajo, los prefijos de los términos relacionados se usan por el proceso 48 de corrección de ortografía, para filtrar efectivamente los términos que no corresponden al campo de las listas de términos relacionados, así que un término no coincidente dentro de un campo de búsqueda dado será solamente comparado con los términos relacionados del mismo campo. Así, por ejemplo, un término no coincidente dentro de un campo de 5 búsqueda dado, sólo será comparado con los términos relacionados del mismo campo. Así, por ejemplo, un término no coincidente dentro del campo 42 del autor, será comparado sólo a otros términos que han sido entrados históricamente en el ampo 42 del autor. El proceso 48 de corrección de ortografía usa similarmente los prefij OES de las palabras clave 60 para seleccionar entradas de tabla que corresponden a los ampos de búsqueda respectivos de los términos coincidentes. Por ejemplo, si una pregunta errónea es recibida, la cual incluye el término coincidente MOUNTAIN (MONTAÑA) dentro del campo 43 del título, el proceso de corrección 48 de orografía buscará una tabla que tenga la palabra clave TMOUNTAIN. Como se ilustra además en la Figura 3, la tabla 50 de correlación también incluye preferiblemente clasificaciones 64 de correlaciones que indican el número de veces que cada término relacionado ha aparecido en combinación con la palabra clave. Por ejemplo, el término de PROGRAMMING tiene una clasificación de 320 en la entrada para JAVA, que indica que JAVA y PROGRAMMING aparecieron dentro de la misma pregunta (dentro de los campos indicados * ^ ?m * a *í¡tm¿¡sj^ por sus prefijos de ampo respectivos) trescientas veinte veces. Como se describe abajo, las preguntas que producen un resultado nulo de la pregunta son ignoradas por el proceso 46 de generación de tabla, y así no se reflejan en las clasificaciones 64 de correlaciones. En otra realización, las clasificaciones de correlación 64 pueden incorporar otros tipos de correlaciones. Como se describe abajo, las clasificaciones 64 se usan preferiblemente para fundir las listas de términos relacionados cuando una pregunta tiene múltiples términos coincidentes. En operación, cuando el servidor 38 de preguntas determina que una pregunta contiene términos de búsqueda tanto coincidentes como no coincidentes, el proceso de corrección 48 de ortografía, tiene acceso inicialmente a la tabla 50 de correlación para extraer la lista 62 de términos relacionados asociados. Si la pregunta incluye múltiples términos de búsqueda coincidentes, el proceso 48 obtiene las listas 62 de términos relacionados para cada término coincidente y funde estas listas juntas (como se describe abajo) para generar una lista compuesta de términos relacionados. Como se indicó antes, el proceso luego compara la ortografía de los términos relacionados resultante a la ortografía de los términos no coincidentes, y o reemplaza o suprime cada término no coincidente de la pregunta. Durante el proceso de comparación de ortografía, cada término no coincidente se compara preferiblemente sólo a esos términos relacionados que se encuentran dentro del ampo de búsqueda no coincidente. Un beneficio importante de este método es que es 5 particularmente muy adecuado para corregir términos mal escritos que no aparecen en el diccionario. La técnica es así particularmente útil para identificar artículos que tienden a ser caracterizados por los términos no del diccionario. Tales artículos incluyen, por ejemplo, los productos vendidos por los comerciantes en línea, opiniones de la corte (comúnmente identificadas por los nombres de las partes) y negocios y sus sitios Web. En el contexto de un almacén en línea de libros / música, por ejemplo, el método es útil para corregir nombres propios mal escritos de autores/ artistas y términos caprichosos que aparecen con los títulos. Por ejemplo, un usuario que busca un libro por Jon Krakauer puede ser capaz de encontrar el libro escribiendo unas cuantas palabras del título más una versión mal escrita de "Krakauer" . La probabilidad 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 preferiblemente correlaciones del término de búsqueda que se basan en los envíos de preguntas anteriores, se debe entender que los datos de «üáüÉiáii correlación pueden alternativamente ser generados de otras fuentes . Por ejemplo, los datos de correlación pueden ser generados por el proceso de la información en la base de datos bibliográfica 40 para identificar términos que aparecen juntos dentro del mismo registro de artículos, título, descripción de artículos, revisión del libro u otro campo de base de datos; en la ejecución de este proceso, cada artículo puede estar de acuerdo con un peso que es proporcional, por ejemplo, al número de; unidades de ese artículo vendido en la última semana. Además, el método puede ser modificado incorporando otros tipos de correlaciones, que incluyen las correlaciones basadas en otros tipos de acciones históricas del usuario. Por ejemplo, en la extracción de los datos de correlación desde el registro 36 de preguntas, se puede dar un peso mayor a los envíos de preguntas los cuales, con base en las acciones subsiguientes del usuario, pueden ser consideradas han producido un resultado de pregunta exitosa. Se puede presumir tal éxito, por ejemplo, si el usuario ve, compra o agrega a una gráfica de compras un artículo ubicado por la búsqueda. Con referencia ulterior a la Figura 1, el servidor 32 de Web, servidor 38 de preguntas, proceso 46 de generación de tabla y software (programa) de base de datos van en uno o más servidores basados en Unís y estaciones de rffaHttÉttta J&fc, trabajo (no mostradas) del sitio 30 de Web. La tabla 50 de correlación se almacena en una RAM (memoria de acceso aleatorio) en la misma estación de trabajo como aquélla usada para realizar el servidor 38 de preguntas.
III. Método de Proceso de Preguntas El proceso de corrección de ortografía será ahora descrito en mayor detalle con referencia a la Figura 4, que es un diagrama de flujo de las etapas ejecutadas por el servidor 38 de preguntas (Figura 1) cuando un usuario expone una pregunta. Para ilustrar este proceso, se supondrá que el usuario en la búsqueda de libros acerca de una excursión a las Veredas de los Apalaches y se ha escrito la siguiente pregunta en el campo 44 de la materia (Figura 2) : "hike Appalatian trail". También se supondrá que "Appalatian" es un término no coincidente (aunque "Appalachian" es coincidente) y que "hike" y "trail" son términos coincidentes, que tienen las siguientes listas de términos relacionados : HIKE : CAMPING (235), WALKS (160), TRAIL (150) (EXCURSIÓN: ACAMPAR (235) SENDERO (160) , VEREDA (150) TRAIL: BIKE(200), APPALACHI.AN (165), WALKS (50) (VEREDA: BICICLETA (200) , APALACHE (165) , SENDERO (50) También se supondrá que todas las palabras clave anteriores y términos relacionados tienen un prefijo de campo de "S" para "sujeto".
Como se indica por la etapa 70, el servidor de preguntas 38 aplica inicialmente la pregunta a la base e datos 40 bibliográfica. Como se ilustra por las etapas 72 y 74, si uno o más artículos se encuentran, el servidor de preguntas regresa una lista de estos artículos al servidor 32 de Web. Este servidor 32 de Web, a su vez, incorpora esta lista en una o más páginas de los resultados de búsqueda o, si sólo se localiza un artículo, regresa la página de información del producto para ese articulo. Además, el servidor de Web registra el número de artículos encontrado en el registro 36 de preguntas (véase la Figura 5) . En el presente ejemplo, ningún artículo será encontrado, puesto que "Appalatian" no existe como una palabra sujeto en la base de datos bibliográfica 40. Si, como en el presente ejemplo, el número de artículos encontrados es de cero en la etapa 72, el servidor 38 de preguntas determina si la pregunta incluye términos tanto coincidentes como no coincidentes (etapa 76) . Si es así, el servidor de preguntas 38 invoca su proceso 48 de corrección de ortografía (etapas 80-90 en la Figura 4) para intentar corregir los términos no coincidentes. Si no, se regresa un mensaje al usuario (etapa 78) que indica que no se encontraron coincidencias exactas; en este caso, el servidor 38 de preguntas puede también generar y regresar una lista de "coincidencias estrechas", que pueden incluir artículos que contienen sólo un subconjunto de términos coincidentes. El servidor 38 de preguntas puede adicional o alternativamente ser configurado para invocar un método de corrección de ortografía alternativo (no mostrado) , para 5 intentar corregir cualquier término no coincidente. En el ejemplo presente, el proceso 48 de corrección de ortografía será invocado puesto que la pregunta incluye términos tanto coincidentes como no coincidentes. El proceso de corrección de ortografía comienza en la etapa 80, recuperando la lista de los términos relacionados para cada término coincidente desde la tabla 50 de correlación. Si ninguna lista de términos relacionados (entradas de la tabla) se encuentra durante la etapa 80, el proceso regresa preferiblemente un mensaje de resultado nulo de pregunta y termina (no mostrado) . Alternativamente, el proceso puede usar un método de corrección alternativo de ortografía, para intentar corregir los términos no coincidentes, o puede generar y regresa una lista de "coincidencias estrechas". 20 Si, como en el presente ejemplo, la pregunta incluye múltiples términos coincidentes, las listas de términos relacionados para esos términos se funden juntos en la etapa 80 para formar una lista compuesta de términos relacionados. Las listas pueden ser fundidas, por ejemplo, combinando éstas mientras suma las clasificaciones de correlaciones de cualquier término de intersección (términos que aparecen en múltiples listas) y luego colocando la lista compuesta en orden de la clasificación de frecuencia mayor a menor. En el presente ejemplo, este método producirá la siguiente lista de términos relacionados: CAMPING (235), WALKS (210) BIKE (200) APPALACHIAN (165) , TRAIL (150) , (ACAMPAR (235), SENDERO (210), BICICLETA (200), APALACHES (165) , VEREDA (150) . La lista compuesta clasificada puede ser truncada para reducir la carga del proceso de las etapas subsiguientes. El proceso de corrección de ortografía luego entra en un ciclo (etapas 84-90) en que la ortografía de los términos no coincidentes y los términos relacionados se comparan. En cada paso de este ciclo, el proceso compara un término no coincidente a la lista de términos relacionados, uno por uno (etapa 84) , excluyendo cualquier término relacionado que tenga prefijos de campo que no correspondan al campo de búsqueda del término no coincidente . Las comparaciones se realizan usando una función de tipo anagrama, que compara dos cadenas de caracteres y regresa una clasificación numérica de similaridad. La clasificación de similaridad indica el grado de similaridad entre las ortografías de las dos cadenas, y así indica la probabilidad que un término relacionado dado es un reemplazo adecuado para el término no coincidente actual. Una clasificación de cero de la similaridad indica el grado mayor de similaridad y las clasificaciones progresivamente más altas indican grados progresivamente menores de similaridad. Las etapas realizadas por la función de comparación de ortografía para comparar la CADENAl a la CADENA2 se señalan abajo, en que la variable RESULTADO representa la clasificación, que se regresa por la función.
Un listado de código de una realización de C++ del método (realizado como dos funciones separadas) se adjunta como un apéndice. Etapa 1: Clasificar la CADENAl y la CADENA 2 en orden alfabético. Etapa 2 : Iniciar INDICAD0R1 al primer carácter de la CADENAl clasificada: INDICADOR2 al primer carácter de la CADENA2 clasificada; y el RESULTADO a cero. Etapa 3 : Comparar caracteres respectivos señalados por el INDICADOR1 y el INDICADOR2 SIN CONSIDERAR EL CASO. Si son iguales, avanzar ambos indicadores al siguiente carácter de la cadena; también avanzar el indicador que apunta al carácter alfabéticamente menor y aumentar el RESULTADO por 1. Etapa 4 : Repetir la etapa 3 hasta que un indicador avance más allá del último carácter de su cadena respectiva. ariÜÉtaMMfa l ÉÜMÜHÜÉÉMIMÉ Etapa 5 : Si uno de los indicadores está aún señalando a un carácter, agregar al RESULTADO el número de caracteres (que incluyen el carácter apuntado) que quedan en esa cadena. En el presente ejemplo, el paso 84 resulta en que el término no coincidente APPALATIAN se comparó con los términos CAMPING (ACAMPAR) , WALKS (SENDEROS) , BIKE (BICICLETA) , APPALACHIAN (APALACHES) Y TRAIL (VEREDA) . Las clasificaciones generadas por estas comparaciones se listan en la siguiente tabla.
En la etapa 86, las clasificaciones se evaluaron para determinar si cualquiera de los términos relacionados tiene una ortografía suficientemente similar para ser una forma de reemplazo candidato. En la modalidad preferida, un término relacionado se considera es similar (y así un reemplazo candidato) si su clasificación es menor o igual a MaÜk HU la mitad de la longitud del término no coincidente (el "umbral de similaridad"). En el presente ejemplo, el término de "Appalachian" satisface la prueba de similaridad (desde 3 5) y los términos relacionados no. 5 Para aumentar la eficiencia de la función de comparación de ortografía, el proceso en la etapa 3 puede ser detenido una vez que el RESULTADO excede el umbral de similaridad. La eficiencia puede ser también aumentada deteniendo el proceso de los términos adicionales una vez que un término con clasificación suficientemente baja (por ejemplo de 0) se ha identificado. Si al menos un término relacionado satisface la prueba de similaridad en la etapa 86, el término no coincidente es reemplazado con el término relacionado que tiene la clasificación más baja (etapa 88) . Si múltiples términos relacionados comparten la clasificación más baja en la etapa 88, el término que falla primeiro en la lista de términos relacionados (y así la clasificación de frecuencia más alta) se usa como el reemplazo. 20 Si ninguno de los términos relacionados satisface la prueba de similaridad en la etapa 86, el término no coincidente se suprime de la pregunta. Alternativamente, un mensaje de resultado nulo de pregunta puede ser regresado al usuario en este punto. Una vez que todos los términos no coincidentes se han o reemplazado o suprimido, la búsqueda t ¡t¡? ^n¿¡ se vuelve a intentar usando la pregunta modificada y el resultado es regresado al usuario (etapa 94) . Si la búsqueda reintentada en la etapa 94 produce uno o más artículos, los artículos se presentan junto con un mensaje que indica las modificaciones hechas a la pregunta.
En el ejemplo presente, este mensaje puede ser leído como sigue : Ningún libro se encontró que incluya la palabra sujeto "appalatian . " Sin embargo, reintentamos su búsqueda usando el término de "appalachian " en lugar de "Appalatian " , y encontramos los siguientes títulos : lia página de resultados de la búsqueda exhibe preferiblemente y permite que el usuario edite la pregunta modificada, de modo que el usuario pueda rechazar efectivamente los reemplazos del término de búsqueda y/o revisar de otra manera la pregunta. Si la búsqueda reintentada en la etapa 94 no produce cualquier coincidencia exacta, el usuario puede ser presentado con una lista de coincidencias estrechas, o puede simplemente ser notificado que no se encontró alguna coincidencia. Como una alternativa, se pueden intentar reemplazos y búsquedas adicionales. Como se apreciará de lo anterior, el proceso de la Figura 4 puede ser alterado en cualquiera de una variedad de maneras para lograr un objetivo deseado. Por ejemplo, las tablas de correlación separadas pueden ser generadas y usadas para diferentes tipos de artículos (por ejemplo, libros v. música) y/o diferentes tipos de campos (por 5 ejemplo, título v. sujeto) . Además el proceso de corrección de ortografía puede ser usado sólo para corregir ortografías dentro de un campo específico (tal como el campo de autor 42) o puede ser aplicado solamente a términos no coincidentes que no aparecen dentro de un diccionario de 10 términos.
IV. Generación de la Tabla de Correlación El proceso 46 de la generación de tabla (Figura 1) será descrito ahora con referencia a las Figuras 5 y 6. Este proceso 46 de generación de tabla es realizado como un proceso fuera de líne.a, que se ej.ecuta periódicamente, tal como una vez por día, para generar una nueva tabla 50 de correlación. Como se describió antes, el proceso genera la tabla desde los M archivos de registro 36(1)-36(M) de preguntas diarias más recientes. Usando una M relativamente pequeña (por ejemplo de 5) se tiende a producir datos de correlación que reflejéin fuertemente las tendencias de compra de período corto (por ejemplo, nuevas ofertas, "best-seller" semanales, etc.) mientras el uso de una M mayor (por ejemplo de 100) tiende a producir una base de datos más amplía. Un acercamiento híbrido puede ser usado ¿¿¡^Ü^ alternativamente, en el cual la tabla es generada de un número grande de archivos de registro, pero en la cual los archivos de registro más recientes se dan con un mayor peso. Por ejemplo, las preguntas enviadas durante la última semana 5 pueden ser contadas tres veces cuando generan las clasificaciones 64 de correlación, mientras las preguntas enviadas desde hace una semana a un mes pueden ser contadas sólo una vez. La Figura 5 ilustra el formato general de los archivos de registro de preguntas. Cada entrada en el archivo (cuatro entradas mostradas) incluye la información acerca de una transacción de http (Protocolo de Transferencia de Hipertexto) . Por ejemplo, la entrada 100 indica que a las 2:23 AM el 13 de febrero de 1998, el usuario 29384719287 envió la pregunta (autor - Seagal, título = Human Dynamics) de la página de búsqueda de libro y que dos artículos se encontraron que coincidieron con la pregunta. Los valores de ARTÍCULOS_ENCONTRADOS en el registro, indican preferiblemente el número de artículos que coinciden exactamente con la pregunta original y así no reflejan "coincidencias estrechas" o coincidencias que resulten de correcciones de ortografía. La entrada 102 indica que el mismo usuario selecciona un artículo que tiene una ISBN de 1883823064 alrededor de veinte segundos más tarde, y que esta selección l^ a^^f- se hizo de la página de resultados de búsqueda (como es evidente de la línea "HTRP_REFERIDA) . Otros tipos de acciones del usuario, tal como una solicitud a colocar un artículo en una gráfica de compras o para comparar un 5 artículo, son reflejadas similarmente dentro de los archivos de registro. Como se indicó en el ejemplo anterior, la trayectoria de navegación de un usuario dado puede ser determinada comparando las entradas dentro del registro 36. La Figura 6 ilustra la secuencias de las etapas ejecutadas por el proceso 46 de generación de tabla. En este ejemplo, se supone que el proceso se ejecuta una vez por día, a media noche, justo después que se cerró el archivo de registro diario más reciente. También se supone que los M-l archivos de registro diarios más recientes, ya se han procesado usando las etapas 110-114 del proceso para generar archivos de resultados diarios respectivos . En la etapa 110, el proceso analiza el nuevo archivo de registro diario para extraer todos los envíos para los cuales existen ARTÍCULOS_ENCONTRADOS > 0. Ignorando las presentaciones de preguntas que produjeron resultados nulos (ARTÍCULOS_ENCONTRADOS = 0) se suministran beneficios importantes de (1) impedir que los términos no coincidentes sean agregados a la tabla de correlación, o como palabras clave o como términos relacionados y (2) excluir las M^AÉUMM^ ^jjg^ correlaciones potencialmente "débiles" entre los términos coincidentes de la consideración. En la etapa 112, las entradas extraídas en la etapa 110 se procesan para correlacionar los términos de 5 búsqueda por la frecuencia de ocurrencia dentro de la misma pregunta. Esta etapa implica el conteo pcira cada pareja de términos de búsqueda que aparecen dentro de la misma pregunta, al menos una vez, el número de veces que los dos términos apareen juntos a través del día. Durante este proceso, los términos idénticos, que se expusieron en diferentes campos de búsqueda, se tratan como términos diferentes. Por ejemplo, el término TRAIL con un prefijo de campo "T" se tratará como diferente de TR^.IL con el prefijo de "S " . 15 Como se indicó antes, cualquiera de una variedad de otros factores pueden ser tomados en consideración durante el proceso de la etapa 112. Por ejemplo, un envío de pregunta dado puede ser contado dos veces si el usuario selecciona subsiguientemente un artículo de la página de resultados de búsqueda, y cuenta una tercera vez si el usuario luego compró el artículo o agregó el artículo a una gráfica de compras personal. Los datos de correlación extrínsecos pueden también ser incorporados en el proceso. Los resultados de la etapa 112, que están en la forma -*— ***«*•*- ^^^^ '-"-* ' '- "-" general de la tabla de correlación de la Figura 3, se guardan como un archivo de resultados diario. En la etapa 116, el archivo de resultados diarios creado en la etapa 114 se funde con los M-l archivos de 5 resultados diarios,, para producir la tabla de correlación 50. Como parte de este proceso, las listas de términos relacionados son truncadas a una longitud fija de N, y los datos de correlación resultantes se almacenan en una estructura de datos de árbol en B para la consulta eficiente. La nueva tabla 50 de correlación es luego escrita a una memoria RAM (memoria de acceso aleatorio) en lugar de la tabla de correlación existente. Aunque la invención se ha descrito en términos de ciertas modalidades preferidas, otras modalidades que sean evidentes a las personas con experienciéi ordinaria en la materia, se encuentran también dentro del ámbito de esta invención. Por lo tanto, el alcance de la presente invención se intenta sea definido solamente con referencia a las reivindicaciones anexas. 20 En las reivindicaciones que siguen, los caracteres de referencia usados para denotar las etapas del proceso, son provistas por conveniencia de la descripción únicamente, y no implica algún orden particular en la forma de realización de estas etapas. 25 APÉNDICE char *sort_string(char *stripgLto_sort) { qsortlstfing o_sort, strien(string_to_sort), sizeof(char), qsort_cha?_corpparß); return sttlng D ort; } ¡ntscora_sorlB _strings(ch3i* stringl, char* string2| { int result - 0; int finished - FALSE: int compare - 0; upeigpßd char* strl_?ir - (unsigned char*] strtpgl; unsigned char* str2_ptr - (unsignßd char*) str gi while (Ifinished) { if (*str1_ptr - - O 1 1 *str2_ptr - - 0) finished - TRUE; /* La función de clasificación compara dos caracteres; si ellos son iguales, ambos indicadores se incrementan para no detenerse, de otra manera, sólo el indicador menor se incrementa y se compara de nuevo*/ if [ifinishedi { compare - qsort_c ar_co pare{(void*)str1_ptrf (v«d )jtr2_ptr); if ( compare < 0) { slrl_ptr++; rßsult++; } elsß if ( compare > 0) { str2_ptr+ +; rßsult+ +; } else If ( compare - - 0) { «r1_ptt++; str2_ptr++; } } 5 } /" agregar a la clasificación cualquier resultado restante*/ mientras(*str1 _ptr++1 = NULO){ resultado ++; , n } 10 mientras(*str2_ptr++ 1 = NULO) { resultado++; } regresar resultado; } ] 5 Copyright 1998 A nopxßm Protectüd ta an tmpubBjhed work üßtei^

Claims (28)

  1. REIVINDICACIONES 1. En un sistema de computadora, que lleva a cabo un motor de búsqueda, el cual es accesible a los usuarios sobre una red de computadora, un método para manejar los términos de búsqueda mal escritos, en las preguntas de búsqueda, este método comprende las etapas realizadas por la computadora de : (a) procesar las preguntas de búsqueda, enviadas al motor de búsqueda por una pluralidad de usuarios en un período de tiempo, para generar datos de correlación, estos datos de corre Lación indican las correlaciones entre los términos de búsqueda, basados al menos en las frecuencias de las ocurrencias anteriores de los términos de búsqueda, dentro de la misma pregunta de búsqueda; (b) recibir una pregunta de búsqueda desde un usuario, sobre la red de computadora, la pregunta de búsqueda comprende una pluralidad de términos de búsqueda y se dirige a una base de datos de información que se va a buscar; (c) identificar, dentro de la pregunta de búsqueda, un término de búsqueda no coincidente, el cual no produce una coincidencia dentro de la base de datos de información, y al menos un término de búsqueda «ÉÉÉÉkriiÉí coincidente, el cual produce una coincidencia dentro de la base de datos de información; (d) usar al menos los datos de correlación para identificar una pluralidad de términos adicionales, que se consideran serán relacionados a cuando menos un término de búsqueda coincidente/ y (e) comparar los términos adicionales, en la etapa (d) , al término no coincidente, para identificar un término adicional que sea un candidato para el término de reemplazo con ortografía correcta para el término no coincidente.
  2. 2. El método de la reivindicac ón 1, que además comprende las etapas realizadas por la computadora de: (f) sin requerir la entrada del usuario, reemplazar el término no coincidente con el término de reemplazo candidato, dentro de la pregunta de búsqueda, para generar una pregunta de búsqueda modificada; (g) aplicar la pregunta de búsqueda modificada a la base de datos de información, para realizar una búsqueda; y (h) notificar al usuario del resultado de la pregunta, de la etapa (g) , y del reemplazo hecho en la etapa (f) .
  3. —*-• - * =»»*-"-^ 3. El método de la reivindicación 1, en que la etapa (a) comprende actualizar los datos de correlación substancialmente en el tiempo real, conforme las preguntas de búsqueda son recibidas de los usuarios.
  4. 4. El método de la reivindicación 1, en que la etapa (a) comprende analizar un registro que incluye las preguntas enviadas al motor de búsqueda .
  5. 5. El método de la reivindicación 4, en que la etapa (a) además comprende aplicar una función de orientación basada en el tiempo al registro, para favorecer las presentaciones de preguntas de búsqueda recientes sobre las presentaciones de preguntas de búsqueda anteriores.
  6. 6. El método de la reivindicación 5, en que la etapa de aplicar una función de orientación a base del tiempo, comprende aplicar una función de ventana al registro.
  7. 7. El método de la reivindicación 1, en que la etapa (a) comprende ignorar preguntas de búsqueda que produzcan un resultado nulo de la pregunta .
  8. 8. El método de la reivindicación 1, en que la etapa (a) además comprende evaluar acciones de presentación de preguntas anteriores de los usuarios, para identificar preguntas de búsqueda que se considera han producido un resultado exitoso, y clasificar las preguntas de búsqueda que produjeron un resultado exitoso en mejor forma en la generación de los datos de correlación.
  9. 9. El método de la reivindicación 1, en que la 5 etapa (c) comprende identificar una pluralidad de términos de búsqueda no coincidentes, dentro de; la pregunta de búsqueda, y este método comprende repetir la etapa (e) para cada uno de los términos de búsqueda no coincidentes, para identificar un término de reemplazo candidato para cada 10 término de búsqueda no coincidente.
  10. 10. El método de la reivindicación 1, en que la etapa (d) comprende: (di) para cada uno de una pluréilidad de términos de búsqueda coincidentes, identificar una lista 15 respectiva de los términos relacionados; y (d2) combinar las listas de los términos relacionados identificados en la etapa (di) .
  11. 11. El método de la reivindicación 1, en que la etapa (e) comprende usar una función de comparación de 20 ortografía, para comparar el término no coincidente a los términos adicionales, esta función de comparación de ortografía se adapta para comparar primeras y segundas cadenas de caracteres, por la clasificación de estas primeras y segundas cadenas, y comparar las primeras y ü nttMHi flUfaM^taa^^^ta segundas cadenas clasificadas en una base de carácter por carácter.
  12. 12. El método de la reivindicación 11, en que la función de compasión de ortografía genera una clasificación que indica un grado de similaridad entre la primera y segunda cadenas de caracteres, y donde la etapa (e) además comprende comparar una clasificación, generada por la función de clasificación, a un valor umbral, para determinar si un término adicional correspondiente es un reemplazo candidato, este valor de umbral depende de un número de caracteres en el término no coincidente.
  13. 13. El método de la reivindicación 1, en que la etapa (e) comprende identificar una pluralidad de términos de reemplazo candidato de ortografía correcta, para el término no coincidente, y este método además comprende presentar al usuario con una lista de términos de reemplazo candidato para la selección.
  14. 14. El método de la reivindicación 13, en que la etapa de presentar al usuario con una lista, comprende presentar cada término de reemplazo candidato dentro de un hiperenlace respectivo, el cual puede ser seleccionado por el usuario, para indicar una búsqueda modificada.
  15. 15. El método de la reivindicación 1, en que el sistema de computadora es parte de un sitio Web, y la base de datos de información incluye la informcición acerca de los productos que están disponibles para la compra por medio del sitio Web.
  16. 16. En un sistema de computadora, que lleva a cabo un motor de búsqueda, el cual es accesible a los usuarios sobre una red de computadora, un método para procesar una pregunta de búsqueda, que incluye al menos un término de búsqueda mal escrito, este método comprende las etapas, realizadas por la computadora, de: (a) recibir la pregunta de búsqueda desde un usuario sobre la red de computadora, esta pregunta de búsqueda comprende una pluralidad de términos de búsqueda y se dirige a una base de datos de información que se va a buscar; (b) identificar, dentro de la pregunta 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 al menos un término de búsqueda coincidente, que produce una coincidencia dentro de la base de datos de información; (c) usar los datos de correlación del término de búsqueda para identificar una pluralidad de términos adicionales, que se consideran estarán relacionados a cuando menos un término de búsqueda coincidente, los datos de correlación del término de búsqueda se basan en al menos las presentaciones de preguntas históricas; y (d) comparar los términos adicionales, identificados en la etapa (c) , al término no coincidente, para identificar un término adicional que es un reemplazo candidato de ortografía correcta, para el término no coincidente .
  17. 17. El método de la reivindicación 16, en que los datos de correlación del término de búsqueda se basan al menos en las frecuencias con las cuales los términos de búsqueda han ocurrido previamente dentro de la misma pregunta .
  18. 18. El método de la reivindicación 16, que además comprende la etapa de procesar las presentaciones de preguntas históricas dentro de un registro, para generar datos de correlación del término de búsqueda.
  19. 19. El método de la reivindicación 18, en que la etapa de procesar las presentaciones de preguntas históricas comprende aplicar una función de ventana al registro.
  20. 20. El método de la reivindicación 18, en que la etapa de procesar las presentaciones de preguntas históricas comprende ignorar las preguntas que produjeron resultados nulos de las mismas.
  21. 21. El método de la reivindicación 16, que además comprende las etapas realizadas por computadora, de: 5 (e) sin requerir la entrada del usuario, reemplazar el término no coincidente con el término de reemplazo candidato, dentro de la pregunta de búsqueda, para generar una pregunta de búsqueda modificada; (f) aplicar la pregunta de búsqueda modificada a la base 10 de datos de información, para realizar una búsqueda; y (g) notificar al usuario del resultado de la pregunta de la etapa (f) , y del reemplazo hecho en la etapa (e) .
  22. 22. El método de la reivindicación 16, en que la 15 etapa (d) comprende usar una función de comparación de ortografía, para comparar el término no coincidente a los términos adicionales, esta función de comparación de ortografía se adapta para comparar primeras y segundas cadenas de caracteres, por clasificar estas primeras y 20 segundas cadenas y compararlas en una base de carácter por carácter.
  23. 23. El método de la reivindicación 1, en que la función de comparación de ortografía genera una clasificación, la cual indica un grado de similaridad entre j^^^h^&gjy las primeras y segundas cadenas de caracteres, y donde la etapa (d) además comprende comparar una clasificación, generada por la función de clasificación, a un valor umbral, para determinar si un término adicional correspondiente es 5 un reemplazo candidato, este valor de umbral depende de la longitud de un término no coincidente .
  24. 24. Un motor de búsqueda, para permitir que los usuarios de una red de computadora lleven a cabo búsquedas de una base de datos de artículos, este motor de búsqueda 0 comprende: un sistema de computadora, el cual tiene datos de correlación de términos de búsqueda almacenados en su memoria, los datos de correlación del término de búsqueda indican las correlaciones entre los términos de 5 búsqueda basados al menos en las presentaciones de preguntas anteriores de los usuarios; y un servidor de preguntas, que va en el sistema de computadora, este servidor de preguntas se adapta para buscar la base de datos de los artículos que usan las 0 preguntas de búsqueda recibidas de los usuarios, el servidor de preguntas se configura péira el proceso de preguntas de búsqueda de múltiples términos, que incluyen tanto términos coincidentes como no coincidentes, por al menos: el acceso de los datos de correlación de los términos de búsqueda, para identificar una pluralidad de términos adicionales, que son considerados estarán relacionados con los términos 5 coincidentes de la pregunta de búsqueda; y comparar las ortografías de los términos adicionales a la ortografía de al menos un término no coincidente de la pregunta, p>ara determinar si cualquiera de los términos adicionales es un 10 reemplazo candidato para el término no coincidente.
  25. 25. El motor de búsqueda de la reivindicación 24, en que los datos de correlación de los términos de búsqueda se basan al menos en las frecuencias con las cuales los términos de búsqueda han ocurrido previamente dentro de la 15 misma pregunta.
  26. 26. El motor de búsqueda de la reivindicación 24, en que el servidor de preguntas se configura para, sin requerir la entrada del usuario: reemplazar el término no coincidente con un 20 término adicional, para generar una pregunta modificada; y buscar la base de datos de los artículos con la pregunta modificada.
  27. 27. El motor de búsqueda de la reivindicación 24, en que el servidor de preguntas compara los términos ül é áM ii adicionales al término no coincidente, usado una función de comparación de ortografía, esta función de comparación de ortografía se adapta para comparar las primeraza y segundas cadenas de caracteres, por la clasificación de estas primeras y segundas cadenas y comparar las primeras y segundas cadenas clasificadas en una base de carácter por carácter.
  28. 28. El motor de búsqueda de la reivindicación 27, en que la función de comparación de ortografía genera una clasificación, la cual indica el grado de similaridad entre las primeras y segundas cadenas de caracteres, y en que el servidor de preguntas compara una clasificación generada por la función de clasificación a un valor umbral, para determinar si un término adicional correspondiente es un reemplazo candidato. RESUMEN DE LA INVENCIÓN Un motor de búsqueda usa correlaciones entre los términos de búsqueda para corregir los términos mal escritos, dentro de las preguntas de búsqueda. Las 5 correlaciones se basan, al menos en parte, en las presentaciones de preguntas históricas al motor de búsqueda. Preferiblemente, las correlaciones reflejan las frecuencias con las cuales los términos de búsqueda ha.n aparecido juntos históricamente, dentro de la misma pregunta, y se almacenan 10 dentro de una tabla (50) de correlación, que usa listas (62) de términos relacionados. En una modalidad, la tabla (50) de correlación se genera periódicamente desde los M (por ejemplo, 10) días más recientes de entradas en un registro (36) de preguntas, y así refleja las preferencias reales de 15 los usuarios. En operación, cuando una pregunta, que incluye términos de búsqueda, tanto coincidentes como no coincidentes, se presenta al motor de búsqueda, un proceso (48) de corrección de ortografía, que tiene acceso a la tabla de correlación (50) para generar una lista de términos 20 que se consideran estarán relacionados con los términos coincidentes. Las ortografías de estos términos relacionados son luego comparadas a las ortografías de cada término no coincidente, usando una función de comparación de ortografía, que compara dos cadenas de céiracteres y genera una clasificación de similaridad. Si se encuentra un reemplazo adecuado para un término no coincidente dado, este término no coincidente es reemplazado con el término relacionado similar. La pregunta modificada es luego usada para buscar, y el usuario es notificado de las modificaciones hechas a la pregunta. En la modalidad descrita, el motor de búsqueda se usa en el sitio Web de un comerciante en línea, para asistir a los usuarios en localizar los títulos de libros, títulos musicales y otros tipos de productos.
MXPA/A/2001/000469A 1998-07-15 2001-01-15 Sistema y metodo para corregir errores de ortografia en preguntas de busqueda MXPA01000469A (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09115662 1998-07-15

Publications (1)

Publication Number Publication Date
MXPA01000469A true MXPA01000469A (es) 2002-07-25

Family

ID=

Similar Documents

Publication Publication Date Title
JP4035685B2 (ja) サーチ照会におけるスペルミスを修正するためのシステムおよび方法
US6772150B1 (en) Search query refinement using related search phrases
US9817920B1 (en) Locating meaningful stopwords or stop-phrases in keyword-based retrieval systems
US8452799B2 (en) Query rewriting with entity detection
US7072890B2 (en) Method and apparatus for improved web scraping
US6006225A (en) Refining search queries by the suggestion of correlated terms from prior searches
US7412442B1 (en) Augmenting search query results with behaviorally related items
US7657555B2 (en) Method and apparatus for identifying related searches in a database search system
US20070250501A1 (en) Search result delivery engine
WO2004086192A2 (en) Systems and methods for interactive search query refinement
WO2001042880A2 (en) Search query refinement using related search phrases
US8090736B1 (en) Enhancing search results using conceptual document relationships
MXPA01000469A (es) Sistema y metodo para corregir errores de ortografia en preguntas de busqueda
Claussen et al. i, United States Patent (10) Patent No.: US 7.809. 695 B2
MXPA00012374A (es) Sistema y metodo para refinar las preguntas de busqueda