¿Cómo puedo usar las redes neuronales convolucionales recurrentes (RCNN) para correcciones tipográficas de OCR?

Clem Wang ya ha dado referencias.

La mayoría de los RCNN parecen usar objetos de etiqueta en una imagen Jerarquías de características ricas para la detección precisa de objetos y la segmentación semántica ( también vea el enlace a continuación a otros documentos recientes que citan este documento como referencia ) dividiéndolo en regresiones, pero una posibilidad es

  • use un modelo que convierta texto de OCR en una representación usando una CNN, y luego tenga un modelo de secuencia a secuencia, usando un modelo de lenguaje en el que fue entrenado, para ajustar mejor las palabras / frases de la entrada de texto potencialmente errónea.
  • Entonces, la entrada a este modelo de secuencia a secuencia es la representación del texto OCR y la salida es la secuencia de texto corregida

Otra solución es usar para tomar la salida de texto de una CNN y encontrar alternativas de palabras para cada palabra usando, por ejemplo, Fasttext y luego, evaluar cada alternativa usando un modelo de lenguaje entrenado con un RNN (elija una alternativa con la entropía más baja).

Es probable que estos enfoques funcionen mejor que la corrección basada en la distancia de edición estándar en la salida de OCR, ya que tienen en cuenta el contexto de la oración para la corrección.

Resultados de citas para el documento anterior

  • Construye un modelo de lenguaje.
  • Dada la cadena de entrada (salida del paso OCR), encuentre el número más pequeño de ediciones para obtener una cadena de mayor probabilidad: parece un simple DP.
  • O haga algo como esto: Cómo escribir un corrector ortográfico

Para este tipo de problemas, he observado que los modelos de lenguaje de caracteres n-gram simples son lo suficientemente buenos.

La lección 8 del curso de la red neuronal del profesor Hinton sobre Coursera da un ejemplo de cómo uno podría hacerlo:

https://www.coursera.org/learn/n

En particular, Ilya Sutskever utilizó esto con gran éxito. Se describe aquí:

https://papers.nips.cc/paper/534

http://jmlr.org/proceedings/pape

https://xa.yimg.com/kq/groups/14

Su tesis doctoral entra en muchos más detalles:

http://www.cs.utoronto.ca/~ilya/

Con suerte, hay suficiente información aquí para que pueda replicar la técnica.

More Interesting

¿Cuál es el mayor obstáculo cuando se trata de realizar un ser humano como la IA?

¿Cómo define "inteligencia" en el contexto de la inteligencia artificial?

¿Cuáles son algunas cosas que creemos que son ciertas para las redes neuronales pero que aún no podemos probar?

Cómo crear un bot para escribir noticias automáticamente

¿Es posible que la CIA, la NSA o cualquier otra agencia de inteligencia / seguridad de todo el mundo estén haciendo una investigación clasificada de inteligencia artificial y el resto del mundo no lo sepa?

¿Cuáles son los argumentos a favor de la idea de que una IA entrenada en un 'archivo mental' (conversaciones, pruebas de personalidad, etc.) imitaría suficientemente la conciencia del propietario del archivo mental?

Inteligencia artificial: ¿Qué tan útil es la computación distribuida para construir IA?

¿Cuál es el futuro en el campo de la economía? ¿Cuánto se verán afectados los trabajos debido a la IA y la tecnología? ¿Que Consejo tienes?

¿Cuánto de la inteligencia artificial (investigación, prototipos, etc.) ha encontrado su camino en la tecnología cotidiana?

¿Cómo afecta el aumento del aprendizaje automático a los fabricantes de procesadores?

¿Cuáles son algunos proyectos básicos de robótica que puedo hacer?

¿Cómo se puede desarrollar un algoritmo de aprendizaje automático?

¿La IA se convertirá en el día del juicio final del futuro?

¿Uso de la IA en la teoría del control?

¿Cómo sabe Facebook que los robots de IA se están comunicando en su propio idioma?