- Notas relacionadas
- Primeros pasos
- Notificaciones
- Proyectos
- Conjuntos de datos
- Etiquetado de datos
- Paquetes ML
- Paquetes listos para usar
- Procesos
- Habilidades ML
- Logs de ML
- Document UnderstandingTM en AI Center
- API de AI Center
- Licencia
- Plantillas de soluciones de AI
- Tutorial
- Guía básica de resolución de problemas
Clasificación de texto en japonés
Paquetes del SO > Análisis de idioma > JapaneseTextClassification
Este es un modelo genérico y reentrenable para la clasificación en japonés. Este paquete ML debe reentrenarse. Si se implementa sin entrenarse antes, la implementación fallará con un error que indica que el modelo no está entrenado.
Este modelo es una arquitectura de aprendizaje profundo para la clasificación de idiomas. Se basa en el modelo BERT, un método autogestionado para preentrenar los sistemas de procesamiento de idiomas naturales. Puede utilizarse una GPU tanto en el momento del servicio como en el del entrenamiento. Una GPU ofrece de 5 a 10 veces más mejoras en la velocidad. El modelo se hizo de código abierto por Google y nuestro modelo base es un modelo preentrenado de la universidad de Tohoku.
Este paquete es compatible con los tres tipos de procesos (entrenamiento completo, entrenamiento y evaluación).
Para la mayoría de casos de uso, no se necesitan especificaciones de parámetros; el modelo utiliza técnicas avanzadas para encontrar un modelo eficiente. En entrenamientos posteriores al primero, el modelo utiliza el aprendizaje incremental (es decir, se utilizará la versión previamente entrenada, al final de una ejecución de entrenamiento).
Leer varios archivos
De forma predeterminada, este modelo leerá todos los archivos con la extensión .csv y .json. (de forma recurrente) en el directorio proporcionado.
Formato de archivo CSV:
Cada archivo CSV puede tener cualquier número de columnas, aunque el modelo solo utilizará dos. Esas columnas estarán especificadas con los parámetros input_column (si no se establece, el valor predeterminado será "input") y target_column (si no se establece, el valor predeterminado será "target").
Por ejemplo, un único archivo CSV puede tener la siguiente apariencia:
input,target
この映画が好き,positive
演技が嫌だった,negative
input,target
この映画が好き,positive
演技が嫌だった,negative
En el archivo de ejemplo anterior, puede iniciarse cualquier tipo de proceso sin añadir ningún parámetro adicional. En el siguiente ejemplo, las columnas deben especificarse de forma explícita:
review,sentiment
この映画が好き,positive
演技が嫌だった,negative
review,sentiment
この映画が好き,positive
演技が嫌だった,negative
Los archivos que no tengan las columnas especificadas por input_column y target_column se omitirán. Además, el delimitador que se utilizará para analizar el archivo puede establecerse estableciendo los parámetros de csv_delimiter. Por ejemplo, si tu archivo está separado por tabuladores, guárdalo con la extensión .csv y establece el parámetro csv_delimiter a ** **
Formato de archivo JSON:
Cada archivo JSON puede ser para un único punto de datos o una lista de puntos de datos. Es decir, cada archivo JSON puede tener uno de los dos siguientes formatos: Un solo punto de datos en un archivo JSON:
{
"input": "この映画が好き",
"target": "positive"
}
{
"input": "この映画が好き",
"target": "positive"
}
Varios puntos de datos en un archivo .json:
[
{
"input": "この映画が好き",
"target": "positive"
},
{
"input": "演技が嫌だった",
"target": "negative"
}
]
[
{
"input": "この映画が好き",
"target": "positive"
},
{
"input": "演技が嫌だった",
"target": "negative"
}
]
Como ocurre con el archivo .csv, si se establecen los parámetros de input_column y target_column, el formato anula "input" con input_column y "target" con target_column.
Todos los archivos válidos (todos los archivos CSV y los archivos JSON que se ajustan al formato anterior) se fusionarán.
Leer un único archivo
En algunos casos, puede ser útil utilizar un único archivo (aunque tu directorio tenga muchos archivos). En este caso, puede utilizarse el parámetro csv_name. Si se establece, el proceso solo leerá ese archivo. Cuando se establece este parámetro, se habilitan dos parámetros adicionales:
- csv_start_index, que permite al usuario especificar la fila donde empezar a leer.
- csv_end_index, que permite al usuario especificar la fila donde acabar de leer.
Por ejemplo, puedes tener un archivo grande con 20 000 filas, pero podrías querer ver rápidamente cómo se vería una ejecución de entrenamiento en un subconjunto de datos. En este caso, puedes especificar el nombre del archivo y establecer csv_end_index en un valor mucho menor que 20 000.
- input_column: cambia este valor para que coincida con el nombre de tu columna de input del conjunto de datos ("input", de forma predeterminada).
- target_column: cambia este valor para que coincida con el nombre de tu columna de input del conjunto de datos ("target", de forma predeterminada).
- evaluation_metric: establece este valor para cambiar el resultado de la métrica de la función de evaluación y emerger en la IU. Este parámetro puede establecerse en uno de los siguientes valores: "accuracy" (predeterminado), "auroc" (área en la curva ROC), "precision", "recall", "matthews correlation" (coeficiente de la correlación de matthews) y "fscore".
- csv_name: utiliza esta variable si quieres especificar un archivo .csv único que se leerá desde el conjunto de datos.
- csv_start_index: permite especificar la fila donde empezar a leer. Se utiliza en combinación con csv_name.
- csv_end_index: permite especificar la fila donde acabar de leer. Se utiliza en combinación con csv_name.
La función de entrenamiento produce tres artefactos:
- train.csv: los datos que se utilizaron para entrenar el modelo, guardados aquí para su control y trazabilidad.
- validation.csv: los datos que se utilizaron para validar el modelo.
learning-rate-finder.png
: la mayoría de usuarios nunca tendrá que preocuparse de esto. Los usuarios avanzados pueden encontrar esto útil (consulta la sección avanzada). - train-report.pdf: un informe que contiene información resumida de esta ejecución. La primera sección incluye todos los parámetros que el usuario ha especificado. La segunda sección incluye estadísticas sobre los datos (el número de puntos de datos para el entrenamiento, la validación y la suma de comprobación de cada archivo). La última sección incluye dos trazados:
- Trazado de pérdidas: esto traza la pérdida de entrenamiento y de validación como una función del número de epochs. La versión de paquete ML de output siempre será la versión que tuvo la pérdida mínima de validación (no el modelo en el último epoch).
- Trazado de métricas: esto traza una serie de métricas calculadas en el conjunto de validación al final de cada epoch.
- evaluation.csv: los datos que se utilizaron para evaluar el modelo.
- evaluation-report.pdf: un informe que contiene información de resumen de esta ejecución. La primera sección incluye todos los parámetros que el usuario ha especificado. La segunda sección incluye estadísticas sobre los datos (el número de puntos de datos para la evaluación y la suma de comprobación del archivo). La tercera sección incluye estadísticas de esa evaluación (para multiclase, las mediciones son ponderadas). La última sección incluye un plan de la matriz de confusión, y un cálculo por clase de "accuracy" (exactitud), "precision" (precisión), "recall" (sensibilidad) y "support" (especifidad), además de sus valores promediados.
BERT: "BERT: Preentrenamiento de transformadores bidireccionales profundos para compresión lingüistica", de Jacob Devlin et al.