I’m facing error on one or more models failed. I try to add Text Feature, but unsuccessful on implementing it (Same error). The data is bank movements, the target is a column named "Categoria". The idea behind the code is to train the Tabular Data [id, Date, TextTransactionBrief, Charge, Deposit] and in base of that data try to categorize what the model may predict, the movement was about on the Target column (Payroll, Taxes, etc.).
The Code:
import pandas as pd
from lightautoml.automl.presets.text_presets import TabularAutoML
from lightautoml.tasks import Task
N_THREADS = 4 #threads
# Cargar el dataset desde el archivo CSV
data = pd.read_csv('C:/Dataset2023_24.csv')
# Verificar si hay valores NaN en la columna 'Categoria'
# Si es así, rellenarlos con algún valor por defecto o eliminarlos
data['Categoria'] = data['Categoria'].fillna('Desconocido')
# Definir las celdas roles: 'target' para la categoría y 'drop' para la columna Día
roles = {'target': 'Categoria', 'drop': ['id']}
# Definir la tarea: en este caso, se trata de un problema de clasificación multiclase
task = Task('multiclass') # Cambiar a 'binary' si solo tienes dos clases
# Instanciar el modelo AutoML
automl = TabularAutoML(task=task,
cpu_limit=N_THREADS,
reader_params = {'n_jobs':N_THREADS},
general_params = {'use_algos':[['linear_l2','lgb','lgb_tuned']]},
tuning_params = {'max_tuning_time':25*60},
timeout=600) # Puedes ajustar el tiempo límite (en segundos)
# Entrenar el modelo
oof_pred = automl.fit_predict(data, roles=roles)
# Mostrar las predicciones del Out-of-Fold (OOF) predictions
print(oof_pred)
# Guardar el modelo entrenado si lo deseas
automl.save_model('trained_model.pkl')
# Para hacer predicciones con un nuevo conjunto de datos, puedes usar:
# test_data = pd.read_csv('path_to_test_data.csv')
# preds = automl.predict(test_data)
# print(preds)
This is the log:
Traceback (most recent call last):
File "C:\Users\Compumex\Documents\Desarrollo\MainTabSBC_GPT.py", line 29, in <module>
oof_pred = automl.fit_predict(data, roles=roles)
File "C:\Users\Compumex\AppData\Local\Programs\Python\Python310\lib\site-packages\lightautoml\automl\presets\tabular_presets.py", line 721, in fit_predict
oof_pred = super().fit_predict(train, roles=roles, cv_iter=cv_iter, valid_data=valid_data, verbose=verbose)
File "C:\Users\Compumex\AppData\Local\Programs\Python\Python310\lib\site-packages\lightautoml\automl\presets\base.py", line 208, in fit_predict
result = super().fit_predict(
File "C:\Users\Compumex\AppData\Local\Programs\Python\Python310\lib\site-packages\lightautoml\automl\base.py", line 218, in fit_predict
pipe_pred = ml_pipe.fit_predict(train_valid)
File "C:\Users\Compumex\AppData\Local\Programs\Python\Python310\lib\site-packages\lightautoml\pipelines\ml\base.py", line 135, in fit_predict
assert (
AssertionError: Pipeline finished with 0 models for some reason.
Probably one or more models failed
I work on adding text Features, as strings. Creating Features as numeric values as in other cases, will not work in this categorization application.
Also a slick version without adding parameters or use model
task = Task('multiclass') # Cambiar a 'binary' si solo tienes dos clases
# Instanciar el modelo AutoML
automl = TabularAutoML(task=task, timeout=3600) # Puedes ajustar el tiempo límite (en segundos)
# Entrenar el modelo
oof_pred = automl.fit_predict(data, roles=roles)
# Mostrar las predicciones del Out-of-Fold (OOF) predictions
print(oof_pred)
You need to sign in to view this answers
Leave feedback about this