¿Qué tan complejo debe hacer un corrector ortográfico básico a través del procesamiento del lenguaje natural para verificar los nombres de los hoteles?

La corrección de hechizos es un campo activo de investigación en PNL. Hay muchos enfoques para abordar el problema. Te recomendaría comenzar desde el principio. Primero, eche un vistazo a Cómo escribir un corrector ortográfico de Peter Norvig [1].

Componentes del enfoque simple para la corrección de hechizos

  1. Modelo candidato Dada la lista de palabras, encuentre los candidatos para la palabra mal escrita.
  2. Modelo de lenguaje Calcular la probabilidad de una palabra en el lenguaje.
  3. Modelo de error Calcule la probabilidad de que la palabra1 se escriba en un texto cuando el autor se refirió a la palabra2.
  4. Mecanismo de selección. Seleccione el candidato con la mayor probabilidad.

Creo que el componente más importante en su aplicación es el modelo candidato. El modelo candidato es tan importante que diría cuidadosamente que puede ignorar toda la otra parte.

Modelo de candidato

Necesita tener una lista de nombres de hoteles. La lista de hoteles en los Estados Unidos [2] artículo de Wikipedia puede ser un buen comienzo. El dado el nombre mal escrito encuentra el mejor candidato. Puedes usar el enfoque de Norvig.

def edits1 (palabra):
letras = ‘abcdefghijklmnopqrstuvwxyz’
divisiones = [(palabra [: i], palabra [i:]) para i en rango (len (palabra) + 1)]
elimina = [L + R [1:] para L, R en divisiones si R]
transpone = [L + R [1] + R [0] + R [2:] para L, R en divisiones si len (R)> 1]
reemplaza = [L + c + R [1:] para L, R en divisiones si R para c en letras] inserta = [L + c + R para L, R en divisiones para c en letras]
conjunto de retorno (elimina + transpone + reemplaza + inserta)

Alternativamente, puede utilizar uno de los dos enfoques que se mencionaron en alguna parte [3]. Yo personalmente recomendaría el segundo basado en la puntuación AZUL.

Por supuesto, todavía tienes algunos desafíos que no mencioné aquí. ¿Cómo encontrar el nombre del hotel mal escrito? ¿Es esto una palabra o una frase? Y muchos otros. Sin embargo, esta respuesta puede ser un buen punto de partida.

Bienvenido al mundo de la PNL.

Notas al pie

[1] Cómo escribir un corrector ortográfico

[2] Lista de hoteles en los Estados Unidos – Wikipedia

[3] ¿Cuál es un buen algoritmo de coincidencia para palabras mal escritas?

A2A.

No se trata de complejidad. Se trata de tener estos nombres en el diccionario.

Esto significa que necesita un corrector ortográfico con soporte de diccionarios personalizados. Todas las bibliotecas principales de corrección ortográfica tienen esta característica. Aspell, HunSpell, etc.

More Interesting

¿En qué medida se puede utilizar el aprendizaje automático y la IA en la detección y el tratamiento del cáncer?

¿Qué recursos sobre modelos gráficos se recomiendan para los estudiantes de aprendizaje automático que desean ingresar al campo?

¿Es posible que AI / ML aprenda el patrón subyacente en los siguientes problemas y prediga la respuesta?

¿Cuáles son actualmente los temas candentes en la investigación de aprendizaje automático y en aplicaciones reales?

¿Es la informática de alto rendimiento un conocimiento esencial para el aprendizaje profundo dado que se trata de una gran red neuronal?

Cómo usar el codificador automático de Geoffrey Hinton para datos MNIST para clasificar dígitos

¿Qué piensa sobre el estudio de posgrado especializado en recuperación de información y sistemas de recomendación?

¿Cómo se puede minimizar el riesgo regularizado utilizando métodos bayesianos?

¿Cómo puede ser posible la IA si las máquinas se limitan a la lógica y el lenguaje?

¿Cómo aprenden los algoritmos de aprendizaje automático de los datos?

¿Es útil el aprendizaje automático en el campo de la ingeniería eléctrica?

¿Cómo debo entender el marco experto en aprendizaje en línea?

¿Cómo puedo comenzar a usar métodos de "generalización apilada" en Python para las competencias de Kaggle?

¿Ha habido algún éxito con el aprendizaje profundo bayesiano?

¿Cuáles son los algoritmos / documentos de última generación sobre clasificación y recuperación de imágenes?