- 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 claro
Paquetes listos para usar > Análisis de idioma de UiPath > LightTextClassification
Este es un modelo genérico que se puede volver a entrenar para la clasificación de textos. Admite todos los idiomas basados en caracteres latinos, como inglés, francés, español y otros. Este paquete ML debe entrenarse y, si se implementa sin entrenar primero, fallará con un error que indica que el modelo no está entrenado. Este modelo funciona con Saco de palabras. Este modelo proporciona una explicabilidad basada en n-gramas.
JSON con clase y fiabilidad (entre 0 y 1).
{
"class": "7",
"confidence": 0.1259827300369445,
"ngrams": [
[
"like",
1.3752658445706787
],
[
"like this",
0.032029048484416685
]
]
}
{
"class": "7",
"confidence": 0.1259827300369445,
"ngrams": [
[
"like",
1.3752658445706787
],
[
"like this",
0.032029048484416685
]
]
}
Este paquete admite los tres tipos de procesos (entrenamiento completo, entrenamiento y evaluación). El modelo utiliza técnicas avanzadas para encontrar un modelo con rendimiento mediante la búsqueda de hiperparámetros. De forma predeterminada, la búsqueda de hiperparámetros (la variable BOW.hyperparameter_search.enable ) está habilitada. Los parámetros del modelo de mayor rendimiento están disponibles en el Informe de evaluación.
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.target_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.target_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.target_column_name:
annotations.intent.choices
- 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
.
- BOW.hyperparameter_search.enable
- El valor predeterminado para este parámetro es
True
. Si se deja habilitado, encontrará el modelo con más rendimiento en el período de tiempo y los recursos de cálculo dados. - Esto también generará un archivo PDF
HyperparameterSearch_report
para mostrar las variaciones de los parámetros que se probaron.
- El valor predeterminado para este parámetro es
- BOW.hyperparameter_search.timeout
- El tiempo máximo que se permite ejecutar la búsqueda de hiperparámetros en segundos.
- El valor predeterminado es
1800
.
- BOW.explain_inference
- Cuando se establece en
True
, durante el tiempo de inferencia cuando el modelo se sirve como habilidad ML, algunos de los n-gramas más importantes también se devolverán junto con la predicción. - El valor predeterminado es
False
.
- Cuando se establece en
Variables opcionales
True
, se buscan los valores óptimos de estas variables. Para que el modelo utilice los siguientes parámetros opcionales, establece la variable de búsqueda BOW.hyperparameter_search.enable en False
:
- BOW.lr_kWargs.class_peso
- Los valores admitidos son:
balanced
oNone
.
- Los valores admitidos son:
- BOW.ngrama_rango
- Rango de longitud de secuencia de secuencia de palabras consecutivas que pueden considerarse como características para el modelo.
- Asegúrate de seguir este formato:
(1, x)
, dondex
es la longitud máxima de secuencia que quieres permitir.
- BOW.min_df
- Se utiliza para establecer el número mínimo de apariciones del n-grama en el conjunto de datos que se considerará como una característica.
- Los valores recomendados están entre
0
y10
.
- dataset.text_pp_remove_stop_word
- Se utiliza para configurar si se deben incluir o no palabras de detención en la búsqueda (por ejemplo, palabras como
the
,or
). - Los valores admitidos son:
True
oFalse
.
- Se utiliza para configurar si se deben incluir o no palabras de detención en la búsqueda (por ejemplo, palabras como