¿Cómo puedo realizar modelado de aprendizaje automático utilizando JMP18 Python Script?Hola,
Estoy trabajando en la creación de un modelo LightGBM utilizando un script JMP Python (JMP18).
Mi configuración actual es la siguiente:
- Variables X: archivo "train1.csv", columnas D1 a D1776
- Variable Y: archivo "y1.csv", columna "Actividad"
- Objetivo de predicción "Actividad": archivo "test1.csv", columnas D1 a D1776
- Nota: Archivo original "train_original.csv", columnas Actividad hasta D1776. de Kaggle.com ( Predicción de una respuesta biológica)
Le agradecería que alguien pudiera proporcionarme orientación para los siguientes problemas:
- No se puede realizar el modelado LightGBM en el entorno Python JMP18
He incluido mi script JMP Python a continuación para su referencia. Consulte lo siguiente para obtener más detalles.
¡Gracias por su tiempo por adelantado! : )
import jmp
import jmputils
# update to latest version of pip (Package Installer of python) and setuptools then install numpy & pandas
jmputils.jpip('install --upgrade', 'pip setuptools')
jmputils.jpip('install', 'pandas numpy scikit-learn keras lightgbm')
# Import package
import numpy as np # linear algebra
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)
# Load data
train1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/train1.csv')
y1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/y1.csv')
test1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test1.csv')
train1.head() # No Result in JMP, but it's okay. It's fine to open the datatable using 'jmp.open'
y1.head() # No Result in JMP, but it's okay. It's fine to open the datatable using 'jmp.open'
# train1 = jmp.open('D:/steve.kim/Kaggle/BI Biological Response/train1.csv')
# y1 = jmp.open('D:/steve.kim/Kaggle/BI Biological Response/y1.csv')
# 01 Modeling training - Library import
from lightgbm import LGBMClassifier
# 02 Modeling training - LGBM Baseline model without hyperparameter tuning
lgb = LGBMClassifier()
# 03 Modeling training - define X (factors) and Y (responses) variables
lgb.fit(train1, y1) # lightgbm.basic.LightGBMError: Length of labels differs from the length of #data
# 04 Predict
predslgb = lgb.predict_proba(test1)
Modelado predictivo y aprendizaje automáticoRe: ¿Cómo puedo realizar el modelado de aprendizaje automático (LGBM) usando JMP18 Python Script?Oh... ¡El código 'head()' funciona bien después de considerarlo como un entorno de terminal, no como el cuaderno Jupyter!
y1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/y1.csv')
print(y1.head()) ¡Entonces puedo obtener el resultado del código del registro incrustado!
Entonces creo que puedo resolver el resto de las cosas también.
Activity
0 1
1 1
2 1
3 1
4 1
Re: ¿Cómo puedo realizar el modelado de aprendizaje automático utilizando JMP18 Python Script?
¡Perdón por esta pregunta!
¡Python pandas y lightGBM funcionan bien en el script de Python JMP18! : )
import jmp
import jmputils
# update to latest version of pip (Package Installer of python) and setuptools then install numpy & pandas
jmputils.jpip('install --upgrade', 'pip setuptools')
jmputils.jpip('install', 'pandas numpy scikit-learn keras lightgbm')
# Checking package version
jmputils.jpip('list')
# Import package
import numpy as np # linear algebra
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)
# Any results you write to the current directory are saved as output.
import os
print (os.listdir("D:/steve.kim/Kaggle/BI Biological Response"))
# Load data
train_x = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/train_x.csv')
print(train_x.head())
train_y = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/train_y.csv')
print(train_y.head())
test_x = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test_x.csv')
print(test_x)
# Modeling
from lightgbm import LGBMClassifier
lgb = LGBMClassifier(colsample_bytree=0.6, subsample=0.8)
lgb.fit(train_x, train_y)
preds_lgb = lgb.predict_proba(test_x)
sub_lgb = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test_y.csv')
sub_lgb["Activity"] = preds_lgb[:,1]
print(sub_lgb.head())
test_answer = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test_answer.csv')
# Evaluation
from sklearn.metrics import mean_absolute_error, mean_squared_error, mean_absolute_percentage_error
print('LightGBM MAE')
print(mean_absolute_error(test_answer, sub_lgb))
print('LightGBM MSE')
print(mean_squared_error(test_answer, sub_lgb))