Construyendo un Modelo de Lenguaje Pequeño (SLM) con el Algoritmo Jaro-Winkler para Mejorar y Potenciar los Errores de Ortografía
Creando un SLM con Jaro-Winkler para mejorar errores ortográficos
Los errores ortográficos son un problema común para muchas personas. Pueden ser causados por una variedad de factores, como errores tipográficos, malentendidos de palabras o simplemente no saber cómo escribir correctamente una palabra. Si bien los errores ortográficos suelen ser menores, a veces pueden resultar embarazosos e incluso provocar malentendidos.
El algoritmo Jaro-Winkler es una de las muchas formas de lograr esto con un resultado satisfactorio de 0.87 en Precisión Promedio Media (MAP), y es una métrica de cadena que mide la similitud entre dos cadenas. Es una medida más sofisticada que la simple distancia de edición, ya que tiene en cuenta la transposición de caracteres y la coincidencia de prefijos y sufijos.
Ya sea pequeño, VoAGI o grande, el modelo de lenguaje se conoce como un método estadístico que predice la siguiente palabra en una secuencia de palabras que se entrenan con diversos datos y aprende la distribución de probabilidad de las palabras en el lenguaje.
En este artículo, te mostraré cómo utilizar el algoritmo Jaro-Winkler para construir un Modelo de Lenguaje Pequeño (SLM) con un conjunto de datos pequeño y fijo que puede mejorar las verificaciones ortográficas del sistema.
- Dominando lo desconocido con GPT-4 y el patrón de interacción invertida
- Reseña de Jasper AI (julio de 2023) ¿El mejor generador de escritura de IA?
- Cómo resolver problemas de dependencias de Python con Anaconda en Windows
Introducción a J-W
El algoritmo J-W es una variación de Damerau-Levenshtein que mide la similitud entre dos cadenas, donde la sustitución de dos caracteres cercanos se considera menos crítica que la sustitución de dos caracteres lejanos entre sí.
Operaciones Comunes en J-W
1. Sustitución
- Entrada: sent
- Salida esperada: send
- Letra sustituida: d
- Posición sustituida: 3
2. Eliminación
- Entrada: ssend
- Salida esperada: send
- Letra eliminada: s
- Posición eliminada: 0
3. Inserción
- Entrada: snd
- Salida esperada: send
- Letra insertada: e
- Posición insertada: 1
Componentes de J-W
- Escalado de prefijos comunes: Esto asegura que los caracteres coincidentes deben estar dentro de la mitad de la longitud de la cadena más corta.
- Puntuación de similitud: Esto calcula una puntuación basada en el número de caracteres comunes, el número de transposiciones y la longitud de las cadenas.
- Comparador de distancias: Esto determina si dos cadenas son lo suficientemente similares como para considerarse iguales.
- Evaluación de transposiciones: Esto evalúa el carácter de una cadena que está fuera de orden con el carácter común correspondiente de la otra cadena.
El valor del comparador de cadenas se expresa principalmente como:
- s1 y s2 = Las cadenas en cuestión
- len s1 y len s2 = Longitud de las cadenas en cuestión
- Nc = Recuento de caracteres comunes entre las dos cadenas, donde la distancia para lo común es la mitad de la longitud mínima de s1 y s2
- Nt = Número de transposiciones
Ejemplos de Modelo de Lenguaje Pequeño
Implementación del Algoritmo del Modelo de Lenguaje Pequeño
- Paso 1: Verificaciones de similitud
- Paso 2: Calcular la puntuación de similitud con el algoritmo J-W
- Paso 3: Comparación de lo siguiente:
- puntuaciónDeSimilitud con puntuaciónDeSimilitudEsperada
- puntuaciónDeSimilitud y umbral
- Paso 4: Evaluación de las letras faltantes
Implementación en Java
Salida:
Conclusión
Aunque esto aún está en proceso, construir SLMs con el algoritmo Jaro-Winkler y algoritmos relacionados es un enfoque emocionante para mejorar la ortografía, y es mejor que una implementación simple de distancia de edición.
We will continue to update Zepes; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- Mejora la predicción de datos tabulares con el modelo de lenguaje grande a través de la API de OpenAI
- ¡Deja de ignorar a Julia! Aprende ahora y agradece a tu yo más joven en el futuro
- Errores que los nuevos científicos de datos novatos deben evitar
- Explorando el Árbol de Pensamiento Promoviendo Cómo la IA puede aprender a razonar a través de la búsqueda
- ¿Qué es la innatismo y importa para la inteligencia artificial? (Parte 2)
- Hacia una IA de nivel Dios desde una IA de nivel Perro
- ¿Dónde ocurre la IA?