En el procesamiento del lenguaje natural , la identificación del lenguaje o la adivinación del lenguaje es el problema de determinar en qué lenguaje natural se encuentra el contenido dado. Los enfoques computacionales para este problema lo ven como un caso especial de categorización de texto , resuelto con varios métodos estadísticos .
Descripción general
Existen varios enfoques estadísticos para la identificación de idiomas que utilizan diferentes técnicas para clasificar los datos. Una técnica consiste en comparar la compresibilidad del texto con la compresibilidad de los textos en un conjunto de idiomas conocidos. Este enfoque se conoce como medida de distancia basada en información mutua. La misma técnica también se puede utilizar para construir empíricamente árboles genealógicos de lenguas que se correspondan estrechamente con los árboles construidos utilizando métodos históricos. [ cita requerida ] La medida de distancia basada en información mutua es esencialmente equivalente a los métodos basados en modelos más convencionales y generalmente no se considera novedosa o mejor que las técnicas más simples.
Otra técnica, como la describen Cavnar y Trenkle (1994) y Dunning (1994) es crear un modelo de n-gramas de lenguaje a partir de un "texto de entrenamiento" para cada uno de los idiomas. Estos modelos pueden basarse en caracteres (Cavnar y Trenkle) o bytes codificados (Dunning); en este último, se integran la identificación de idioma y la detección de codificación de caracteres . Luego, para cualquier fragmento de texto que deba identificarse, se crea un modelo similar y ese modelo se compara con cada modelo de lenguaje almacenado. El idioma más probable es el que tiene el modelo más similar al modelo del texto que necesita ser identificado. Este enfoque puede resultar problemático cuando el texto de entrada está en un idioma para el que no existe un modelo. En ese caso, el método puede devolver otro idioma "más similar" como resultado. También son problemáticos para cualquier enfoque los fragmentos de texto de entrada que se componen de varios idiomas, como es común en la Web.
Para obtener un método más reciente, consulte Řehůřek y Kolkus (2009). Este método puede detectar varios idiomas en un fragmento de texto no estructurado y funciona de manera robusta en textos cortos de solo unas pocas palabras: algo con lo que los enfoques de n-gram luchan.
Un método estadístico más antiguo de Grefenstette se basaba en la prevalencia de ciertas palabras funcionales (por ejemplo, "the" en inglés).
Identificar idiomas similares
Uno de los grandes cuellos de botella de los sistemas de identificación de idiomas es distinguir entre idiomas estrechamente relacionados. Idiomas similares como el serbio y el croata o el indonesio y el malayo presentan una superposición léxica y estructural significativa, lo que dificulta que los sistemas discriminen entre ellos.
En 2014, la tarea compartida de DSL [1] se organizó proporcionando un conjunto de datos (Tan et al., 2014) que contiene 13 idiomas diferentes (y variedades de idiomas) en seis grupos de idiomas: Grupo A (bosnio, croata, serbio), Grupo B ( Indonesio, malayo), grupo C (checo, eslovaco), grupo D (portugués brasileño, portugués europeo), grupo E (español peninsular, español argentino), grupo F (inglés americano, inglés británico). El mejor sistema alcanzó un rendimiento de más del 95% de resultados (Goutte et al., 2014). Los resultados de la tarea compartida de DSL se describen en Zampieri et al. 2014.
Software
- Apache OpenNLP incluye un detector estadístico basado en char n-gram y viene con un modelo que puede distinguir 103 idiomas
- Apache Tika contiene un detector de idiomas para 18 idiomas
Referencias
- Benedetto, D., E. Caglioti y V. Loreto. Árboles de lenguaje y cremallera . Physical Review Letters , 88: 4 (2002), Teoría de la complejidad .
- Cavnar, William B. y John M. Trenkle. "Categorización de texto basada en N-Gram". Actas de SDAIR-94, 3er Simposio anual sobre análisis de documentos y recuperación de información (1994) [1] .
- Cilibrasi, Rudi y Paul MB Vitanyi. " Agrupación por compresión ". IEEE Transactions on Information Theory 51 (4), abril de 2005, 1523-1545.
- Dunning, T. (1994) "Identificación estadística del lenguaje". Informe técnico MCCS 94-273, Universidad Estatal de Nuevo México, 1994.
- Goodman, Joshua. (2002) Comentario extendido sobre "Árboles de lenguaje y compresión" . Microsoft Research, 21 de febrero de 2002. (Esta es una crítica de la compresión de datos a favor del método Naive Bayes).
- Goutte, C .; Leger, S .; Carpuat, M. (2014) El sistema NRC para discriminar idiomas similares . Actas del taller de Coling 2014 "Aplicación de herramientas de PNL a idiomas, variedades y dialectos similares"
- Grefenstette, Gregory. (1995) Comparación de dos esquemas de identificación de idiomas. Actas de la 3ª Conferencia Internacional sobre Análisis Estadístico de Datos Textuales (JADT 1995).
- Poutsma, Arjen. (2001) Aplicación de las técnicas de Monte Carlo a la identificación del lenguaje. SmartHaven, Ámsterdam. Presentado en CLIN 2001 .
- Tan, L .; Zampieri, M .; Ljubešić, N .; Tiedemann, J. (2014) Fusionando fuentes de datos comparables para la discriminación de lenguajes similares: The DSL Corpus Collection . Actas del Séptimo Taller sobre Construcción y Uso de Cuerpos Comparables (BUCC). Reykjavik, Islandia. pag. 6-10
- El economista. (2002) " Los elementos del estilo: el análisis de datos comprimidos conduce a resultados impresionantes en lingüística "
- Radim Řehůřek y Milan Kolkus. (2009) " Identificación de idiomas en la Web: Ampliación del método de diccionario " Lingüística computacional y procesamiento inteligente de textos .
- Zampieri, M .; Tan, L .; Ljubešić, N .; Tiedemann, J. (2014) Un informe sobre la tarea compartida de DSL 2014 . Actas del primer taller sobre la aplicación de herramientas de PNL a idiomas, variedades y dialectos similares (VarDial). Dublín, Irlanda. pag. 58-67.