Pregunta

Estoy construyendo un corrector de ortografía para consultas en los motores de búsqueda mediante la aplicación del método descrito en " Spelling corrección como un proceso iterativo que se aprovecha el conocimiento colectivo de usuarios de Internet ".

El enfoque de alto nivel es la siguiente: para una determinada consulta, llegar a posibles candidatos de corrección (palabras en el registro de consultas dentro de una cierta distancia de edición) de cada unigram y bigram, a continuación, realice una de Viterbi modificado búsqueda para encontrar las más probable secuencia de candidatos dados frecuencias bigrama. Repita este proceso hasta que la secuencia es de máxima probabilidad.

La modificación a la búsqueda Viterbi es tal que si dos palabras adyacentes ambos se encuentran en un léxico de confianza, a lo sumo una puede ser corregida. Esto es especialmente importante para evitar la corrección de escanda correctamente-consultas de una sola palabra a las palabras de alta frecuencia.

Mi pregunta es dónde encontrar tal un léxico. Debe estar en Inglés y contienen los nombres propios (primeros / últimos nombres, lugares, nombres de marcas, etc.) que puedan aparecer en las consultas de búsqueda, así como común y palabras poco comunes en inglés. Incluso un empujón en la dirección correcta sería útil.

Además, si alguien está leyendo esto y tiene alguna sugerencia de mejora en la metodología proporcionada en el papel, estoy abierto a esos también teniendo en cuenta que esta es mi primera incursión en la PNL.

¿Fue útil?

Solución

La mejor léxico para este propósito es, probablemente, el Google Web 1T conjunto de datos de 5 gramos.

http://www.ldc.upenn.edu/Catalog /CatalogEntry.jsp?catalogId=LDC2006T13

Por desgracia, no está libre a menos que su universidad es un miembro de la LDC.

También puede probar los cuerpos en paquetes como Python NLTK, pero la que Google parece ser el mejor para su propósito, ya que está relacionado con las consultas de búsqueda ya.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top