- 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 multilingüe
Paquetes listos para usar > Análisis de idioma de UiPath > MultiLingualTextClassification
Se trata de un modelo genérico que se puede volver a entrenar para la clasificación de textos. Este paquete ML debe entrenarse y, si se implementa sin haberse entrenado antes, la implementación fallará mostrando un error que indica que el modelo no está entrenado. Se basa en el modelo BERT, un método autogestionado para entrenar previamente los sistemas de procesamiento de idiomas naturales. Se recomienda una GPU, especialmente durante el entrenamiento. Una GPU ofrece una mejora de la velocidad de entre 5 y 10 veces superior.
Este modelo multilingüe admite los idiomas enumerados a continuación. Se han elegido estos idiomas porque son los 100 idiomas más importantes con las Wikipedias más grandes:
- Afrikáans
- Albanés
- Árabe
- Aragonés
- Armenio
- Asturiano
- Azerbaiyano
- Baskir
- Vasco
- Bávaro
- Bielorruso
- Bengalí
- Bishnupriya Manipuri
- Bosnio
- Bretón
- Búlgaro
- Birmano
- Catalán
- Cebuano
- Checheno
- Chino (simplificado)
- Chino (Tradicional)
- Chuvasio
- Croata
- Checo
- Danés
- Holandés
- English
- Estonio
- Finlandés
- Francés
- Gallego
- Georgiano
- Alemán
- Griego
- Gujaratí
- Haitiano
- Hebreo
- Hindi
- Húngaro
- Islandés
- Ido
- Indonesio
- Irlandés
- Italiano
- Japonés
- Javanés
- Canarés
- Kazajo
- Kirguís
- Koreano
- Latín
- Letón
- Lituano
- Lombardo
- Bajo sajón
- Luxemburgués
- Macedonio
- Malgache
- Malayo
- Malayo
- Maratí
- Minangkabau
- Nepalí
- Nevarí
- Noruego (Bokmal)
- Noruego (Nynorsk)
- Occitano
- Persa (Farsi)
- Piamontés
- Polaco
- Portugués
- Punyabí
- Rumano
- Ruso
- Escocés
- Serbio
- Serbo-croata
- Siciliano
- Eslovaco
- Esloveno
- Azerbaiyano del sur
- Español
- Sundanés
- Suajili
- Sueco
- Tagalo
- Tayiko
- Tamil
- Tártaro
- Telugu
- Tailandés
- Turco
- Ucraniano
- Urdu
- Uzbeko
- Vietnamita
- Volapük
- Waray-Waray
- Galés
- Frisón occidental
- Punyabí occidental
- Yoruba
JSON con el nombre de clase predecido; confianza asociada a esa predicción de clase (entre 0-1).
Ejemplo:
{
"prediction": "Positive",
"confidence": 0.9422031841278076
}
{
"prediction": "Positive",
"confidence": 0.9422031841278076
}
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).
Hay tres opciones disponibles para estructurar tu conjunto de datos para este modelo: JSON, CSV y formato JSON de AI Center (este es también el formato de exportación de la herramienta de etiquetado). El modelo leerá todos los archivos CSV y JSON en el directorio especificado. Para cada formato, el modelo espera dos columnas o dos propiedades, dataset.input_column_name y dataset.target_column_name por defecto. Los nombres de estas dos columnas y/o directorios se pueden configurar mediante variables de entorno.
Formato de archivo CSV
Cada archivo CSV puede tener cualquier número de columnas, aunque el modelo solo utilizará dos. Estas columnas se especifican mediante los parámetros dataset.input_column_name y dataset.target_column_name.
Comprueba la siguiente muestra y variables de entorno para un ejemplo de formato de archivo de CSV.
text, label
I like this movie, 7
I hated the acting, 9
text, label
I like this movie, 7
I hated the acting, 9
Las variables de entorno para el ejemplo anterior serían las siguientes:
- conjunto_datos.formato_entrada:
auto
- dataset.input_column_name:
text
- dataset.output_column_name:
label
Formato de archivo JSON
Varios conjuntos de datos podrían formar parte del mismo archivo JSON.
Comprueba la siguiente muestra y variables de entorno para un ejemplo de formato de archivo de JSON.
[
{
"text": "I like this movie",
"label": "7"
},
{
"text": "I hated the acting",
"label": "9"
}
]
[
{
"text": "I like this movie",
"label": "7"
},
{
"text": "I hated the acting",
"label": "9"
}
]
Las variables de entorno para el ejemplo anterior serían las siguientes:
- conjunto_datos.formato_entrada:
auto
- dataset.input_column_name:
text
- dataset.output_column_name:
label
formato de archivo ai_center
.json
.
Comprueba la siguiente muestra y variables de entorno para un ejemplo de formato de archivo de ai_center.
{
"annotations": {
"intent": {
"to_name": "text",
"choices": [
"TransactionIssue",
"LoanIssue"
]
},
"sentiment": {
"to_name": "text",
"choices": [
"Very Positive"
]
},
"ner": {
"to_name": "text",
"labels": [
{
"start_index": 37,
"end_index": 47,
"entity": "Stakeholder",
"value": " Citi Bank"
},
{
"start_index": 51,
"end_index": 61,
"entity": "Date",
"value": "07/19/2018"
},
{
"start_index": 114,
"end_index": 118,
"entity": "Amount",
"value": "$500"
},
{
"start_index": 288,
"end_index": 293,
"entity": "Stakeholder",
"value": " Citi"
}
]
}
},
"data": {
"cc": "",
"to": "xyz@abc.com",
"date": "1/29/2020 12:39:01 PM",
"from": "abc@xyz.com",
"text": "I opened my new checking account with Citi Bank in 07/19/2018 and met the requirements for the promotion offer of $500 . It has been more than 6 months and I have not received any bonus. I called the customer service several times in the past few months but no any response. I request the Citi honor its promotion offer as advertised."
{
"annotations": {
"intent": {
"to_name": "text",
"choices": [
"TransactionIssue",
"LoanIssue"
]
},
"sentiment": {
"to_name": "text",
"choices": [
"Very Positive"
]
},
"ner": {
"to_name": "text",
"labels": [
{
"start_index": 37,
"end_index": 47,
"entity": "Stakeholder",
"value": " Citi Bank"
},
{
"start_index": 51,
"end_index": 61,
"entity": "Date",
"value": "07/19/2018"
},
{
"start_index": 114,
"end_index": 118,
"entity": "Amount",
"value": "$500"
},
{
"start_index": 288,
"end_index": 293,
"entity": "Stakeholder",
"value": " Citi"
}
]
}
},
"data": {
"cc": "",
"to": "xyz@abc.com",
"date": "1/29/2020 12:39:01 PM",
"from": "abc@xyz.com",
"text": "I opened my new checking account with Citi Bank in 07/19/2018 and met the requirements for the promotion offer of $500 . It has been more than 6 months and I have not received any bonus. I called the customer service several times in the past few months but no any response. I request the Citi honor its promotion offer as advertised."
Para aprovechar el JSON de muestra anterior, las variables de entorno deben establecerse de la siguiente manera:
- conjunto_datos.formato_entrada:
ai_center
- dataset.input_column_name:
data.text
- dataset.output_column_name:
annotations.intent.choices
Puedes utilizar GPU o CPU para el entrenamiento. Se recomienda utilizar la GPU, ya que es más rápido.
- dataset.input_column_name
- El nombre de la columna de entrada que contiene el texto.
- El valor predeterminado es
data.text
. - Asegúrese de que esta variable esté configurada de acuerdo con su archivo JSON o CSV de entrada.
- dataset.target_column_name
- El nombre de la columna de destino que contiene el texto.
- El valor predeterminado es
annotations.intent.choices
. - Asegúrese de que esta variable esté configurada de acuerdo con su archivo JSON o CSV de entrada.
- dataset.input_format
- El formato de entrada de los datos de entrenamiento.
- El valor predeterminado es
ai_center
. - Los valores admitidos son:
ai_center
oauto
. - Si se selecciona
ai_center
, solo se admitenJSON
archivos. Asegúrate de cambiar también el valor de dataset.target_column_name aannotations.sentiment.choices
si se seleccionaai_center
. - Si se selecciona
auto
, se admiten tanto archivosCoNLL
comoJSON
.
- model.epoch
- El número de épocas.
- Valor predeterminado:
100
.
Matriz de confusión
Informe de clasificación
precision recall f1-score support
positive 0.94 0.94 0.94 10408
negative 0.93 0.93 0.93 9592
accuracy 0.94 20000
macro avg 0.94 0.94 0.94 20000
weighted avg 0.94 0.94 0.94 20000
precision recall f1-score support
positive 0.94 0.94 0.94 10408
negative 0.93 0.93 0.93 9592
accuracy 0.94 20000
macro avg 0.94 0.94 0.94 20000
weighted avg 0.94 0.94 0.94 20000
Archivo CSV de evaluación
Este es un archivo CSV con predicciones en el conjunto de pruebas utilizado para la evaluación.
text,label,predict,confidence
I like this movie, positive, positive, 0.99
I hated the acting, negative, negative, 0.98
text,label,predict,confidence
I like this movie, positive, positive, 0.99
I hated the acting, negative, negative, 0.98