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.

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

  1. 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.
  2. 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.
  3. Comparador de distancias: Esto determina si dos cadenas son lo suficientemente similares como para considerarse iguales.
  4. 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!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Robot inspirado en tortugas bebé puede nadar bajo la arena

Un nuevo robot inspirado en las crías de tortugas puede moverse a través de la arena a una profundidad de 5 pulgadas ...

Inteligencia Artificial

Acuerdo preliminar de la UE sobre la regulación de la IA Implicaciones para ChatGPT

La Unión Europea recientemente ha logrado un acuerdo preliminar que establece las regulaciones para gobernar modelos ...

Inteligencia Artificial

La IA escribió un proyecto de ley de vivienda. Los críticos dicen que no es inteligente

Un asambleísta de Queens utilizó un programa de inteligencia artificial para identificar vacíos en la ley de Nueva Yo...

Inteligencia Artificial

Acelerando el tiempo para obtener conocimientos con las colecciones de series temporales de MongoDB y Amazon SageMaker Canvas

Este es un artículo de invitado escrito conjuntamente con Babu Srinivasan de MongoDB. A medida que las industrias evo...

Inteligencia Artificial

Esta Investigación de IA Explica los Rasgos de Personalidad Sintéticos en los Modelos de Lenguaje de Gran Escala (LLMs)

La personalidad de un individuo consiste en una combinación única de cualidades, características y formas de pensar. ...