Glosario

Tokenización

¡Descubre el poder de la tokenización en PLN y PLM! Aprende cómo dividir el texto en tokens mejora las tareas de IA, como el análisis de sentimientos y la generación de texto.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

La tokenización es un paso fundamental en el Procesamiento del Lenguaje Natural (PLN) y el Aprendizaje Automático (AM) que consiste en descomponer el texto en unidades más pequeñas, conocidas como tokens. Estos tokens pueden ser palabras, subpalabras, caracteres o símbolos, dependiendo de los requisitos específicos de la tarea y del modelo que se utilice. Al convertir el texto sin procesar en un formato numérico que los modelos de aprendizaje automático puedan entender, la tokenización es crucial para diversas aplicaciones de IA.

Definición

La tokenización es el proceso de segmentar una cadena de texto en tokens individuales. Es como cortar una frase en trozos. Estos trozos, o tokens, se convierten en las unidades básicas que puede procesar un ordenador. Por ejemplo, la frase "Ultralytics YOLO es rápido" podría dividirse en ["Ultralytics", "YOLO", "es", "rápido", "."]. La forma en que se tokeniza el texto puede afectar significativamente a la forma en que un modelo comprende y procesa el lenguaje. Existen diferentes estrategias de tokenización, cada una con sus propios puntos fuertes y débiles. Los métodos más comunes son:

  • Tokenización de palabras: Es el método más sencillo, en el que el texto se divide en palabras individuales, normalmente en función de los espacios y la puntuación. Por ejemplo, "¡Aprendamos IA!" se convierte en ["Aprendamos", "'s", "aprendamos", "IA", "!"].
  • Tokenización de caracteres: Aquí, cada carácter se considera un token. La misma frase, "¡Aprendamos IA!", se tokenizaría en ["L", "e", "t", "'", "s", " ", "l", "e", "a", "r", "n", " ", "A", "I", "!"]. Este método es útil para las lenguas en las que las palabras no están claramente separadas por espacios o cuando se trata de palabras fuera de vocabulario.
  • Tokenización de subpalabras: Este método establece un equilibrio entre la tokenización de palabras y la de caracteres. Divide las palabras en unidades más pequeñas (subpalabras) basándose en secuencias de caracteres frecuentes. Por ejemplo, "irrompible" podría dividirse en ["un", "break", "able"]. Esta técnica es eficaz para manejar palabras poco frecuentes y reducir el tamaño del vocabulario, lo que resulta especialmente beneficioso en modelos como la familia BERT (Representaciones Codificadoras Bidireccionales de Transformadores) y GPT (Transformador Generativo Preentrenado), incluidos GPT-4 y GPT-3.

Relevancia y aplicaciones

La tokenización es un requisito previo para casi todas las tareas de PNL, ya que permite a las máquinas procesar y comprender el lenguaje humano. Sus aplicaciones son muy amplias y abarcan varios ámbitos:

  • Análisis de Sentimiento: En el análisis de sentimientos, la tokenización ayuda a descomponer las opiniones de los clientes o las publicaciones en redes sociales en palabras o frases individuales, que luego se analizan para determinar el sentimiento general (positivo, negativo o neutro). Por ejemplo, al analizar la frase "¡Este Ultralytics HUB es increíblemente fácil de usar!", la tokenización permite al modelo de análisis de sentimientos centrarse en palabras individuales como "increíblemente" y "fácil de usar" para calibrar el sentimiento positivo.
  • Traducción automática: La tokenización es esencial para la traducción automática. Antes de traducir una frase de un idioma a otro, primero se tokeniza la frase. Esto permite que el modelo de traducción procese el texto palabra por palabra o subpalabra por subpalabra, facilitando traducciones precisas y conscientes del contexto. Por ejemplo, traducir "Cómo entrenar los modelos Ultralytics YOLO " implica primero tokenizarlo en palabras o subpalabras antes de mapear estos tokens a otro idioma.
  • Generación de texto: Los modelos utilizados para la generación de texto, como los Modelos de Lenguaje Amplio (LLM), se basan en gran medida en la tokenización. Al generar texto, estos modelos predicen el siguiente token de una secuencia. La tokenización garantiza que la salida se construya a partir de unidades significativas, ya sean palabras o subpalabras, lo que da lugar a un texto coherente y gramaticalmente correcto.
  • Motores de búsqueda y recuperación de información: Los motores de búsqueda utilizan la tokenización para indexar las páginas web y procesar las consultas de búsqueda. Cuando buscas "detección de objetos con Ultralytics YOLO ", el motor de búsqueda convierte tu consulta en palabras clave y las compara con el contenido indexado para obtener resultados relevantes. La búsqueda semántica refina aún más este proceso al comprender el significado de los tokens y su contexto.

Tipos de tokenización

Aunque el concepto básico de la tokenización es sencillo, hay varias técnicas que se adaptan a diferentes lenguas y tareas de PNL:

  • Tokenización de espacios en blanco: Este sencillo método divide el texto basándose en los caracteres de los espacios en blanco (espacios, tabuladores, nuevas líneas). Aunque es fácil de aplicar, puede que no sea eficaz con los signos de puntuación y puede tener problemas con los idiomas que no utilizan espacios para separar las palabras.
  • Tokenización basada en reglas: Este enfoque utiliza reglas predefinidas para tratar la puntuación, las contracciones y otros matices específicos de la lengua. Por ejemplo, se pueden establecer reglas para separar los signos de puntuación como tokens individuales o para manejar contracciones como "can't" como dos tokens: "ca" y "n't".
  • Tokenización estadística: Las técnicas más avanzadas utilizan modelos estadísticos entrenados en grandes corpus de texto para determinar los límites de las fichas. Estos métodos, incluidos los algoritmos de tokenización de subpalabras como Byte Pair Encoding (BPE) y WordPiece, son especialmente eficaces para tratar lenguas complejas y palabras fuera de vocabulario.

Ventajas de la tokenización

La tokenización ofrece varias ventajas clave en el contexto de la IA y el ML:

  • Simplifica los Datos Textuales: Al descomponer el texto en unidades más pequeñas y manejables, la tokenización transforma los datos textuales complejos y no estructurados en un formato que los algoritmos pueden procesar con eficacia.
  • Permite la representación numérica: Las fichas pueden convertirse fácilmente en representaciones numéricas, como vectores, que son la entrada estándar para los modelos de aprendizaje automático. Esta conversión es esencial para que los modelos aprendan patrones y relaciones en los datos de texto. Técnicas como la incrustación de palabras mejoran aún más esta representación al captar el significado semántico.
  • Mejora el rendimiento de los modelos: Una tokenización eficaz puede mejorar significativamente el rendimiento de los modelos de PNL. Elegir la estrategia de tokenización adecuada para una tarea y un idioma concretos puede mejorar la precisión y la eficacia en tareas como la clasificación, la traducción y la generación.
  • Gestiona el tamaño del vocabulario: La tokenización de subpalabras, en particular, ayuda a gestionar el tamaño del vocabulario. Al dividir las palabras en unidades de subpalabras, se reduce el número de tokens únicos que un modelo necesita aprender, lo que hace que los modelos sean más eficientes y capaces de manejar una gama más amplia de texto, incluidas palabras raras o no vistas.

En resumen, la tokenización es un paso crítico del preprocesamiento en PNL y ML, que permite a los ordenadores comprender y procesar datos textuales. Su eficacia depende de la técnica elegida y de su idoneidad para la tarea y el idioma específicos. Entender la tokenización es fundamental para cualquiera que trabaje con aplicaciones de IA basadas en texto, desde el análisis de sentimientos hasta modelos lingüísticos complejos como Ultralytics YOLO -World, que puede entender indicaciones textuales para la detección de objetos.

Leer todo