d4rk-lucif3r 的自动化机器学习
项目描述
d4rk-lucif3r 的半自动化机器学习库 LuciferML
关于
LuciferML 是一个半自动机器学习 Python 库,可处理表格数据。它旨在在进行数据分析时节省时间。它将帮助您从数据预处理到数据预测。
LuciferML 将帮助您
- 预处理数据:
- 编码
- 分裂
- 缩放
- 降维
- 重采样
- 通过超参数调整尝试许多不同的机器学习模型,
安装
pip install lucifer-ml
可用的预处理技术
-
偏度校正
将 Pandas 数据框作为输入。转换数据集中的每一列,除了作为可选参数给出的列。返回转换后的数据。
例子:
-
所有列:
from luciferml.preprocessing import Preprocess as prep import pandas as pd dataset = pd.read_csv('/examples/Social_Network_Ads.csv') dataset = prep.skewcorrect(dataset) -
除了列/列:
from luciferml.preprocessing import Preprocess as prep import pandas as pd dataset = pd.read_csv('/examples/Social_Network_Ads.csv') dataset = prep.skewcorrect(dataset,except_columns=['Purchased'])
更多关于预处理在这里
-
可用的建模技术
-
分类
可用的分类模型
- 'lr' : 'Logistic Regression', - 'sgd' : 'Stochastic Gradient Descent', - 'perc': 'Perceptron', - 'pass': 'Passive Aggressive Classifier', - 'ridg': 'Ridge Classifier', - 'svm' : 'Support Vector Machine', - 'knn' : 'K-Nearest Neighbours', - 'dt' : 'Decision Trees', - 'nb' : 'Naive Bayes', - 'rfc' : 'Random Forest Classifier', - 'gbc' : 'Gradient Boosting Classifier', - 'ada' : 'AdaBoost Classifier', - 'bag' : 'Bagging Classifier', - 'extc': 'Extra Trees Classifier', - 'lgbm': 'LightGBM Classifier', - 'cat' : 'CatBoost Classifier', - 'xgb' : 'XGBoost Classifier', - 'ann' : 'Multilayer Perceptron Classifier', - 'all' : 'Applies all above classifiers'例子:
from luciferml.supervised.classification import Classification dataset = pd.read_csv('Social_Network_Ads.csv') X = dataset.iloc[:, :-1] y = dataset.iloc[:, -1] classifier = Classification(predictor = ['lr']) classifier.fit(X, y) result = classifier.result()更多关于分类
-
回归
Available Models for Regression - 'lin' : 'Linear Regression', - 'sgd' : 'Stochastic Gradient Descent Regressor', - 'elas': 'Elastic Net Regressot', - 'krr' : 'Kernel Ridge Regressor', - 'br' : 'Bayesian Ridge Regressor', - 'svr' : 'Support Vector Regressor', - 'knr' : 'K-Nearest Regressor', - 'dt' : 'Decision Trees', - 'rfr' : 'Random Forest Regressor', - 'gbr' : 'Gradient Boost Regressor', - 'ada' : 'AdaBoost Regressor', - 'bag' : 'Bagging Regressor', - 'extr': 'Extra Trees Regressor', - 'lgbm': 'LightGBM Regressor', - 'xgb' : 'XGBoost Regressor', - 'cat' : 'Catboost Regressor', - 'ann' : 'Multilayer Perceptron Regressor', - 'all' : 'Applies all above regressors'例子:
from luciferml.supervised.regression import Regression dataset = pd.read_excel('examples\Folds5x2_pp.xlsx') X = dataset.iloc[:, :-1] y = dataset.iloc[:, -1] regressor = Regression(predictor = ['lin']) regressor.fit(X, y) result = regressor.result()更多关于回归这里
超参数调优
LuciferML 由Optuna提供支持,用于超参数调优。只需在回归器或分类器中添加“tune = True”,它将开始使用 Optuna 调整模型。
持久性
LuciferML 的模型可以保存为 pickle 文件。它将模型和缩放器都保存到 pickle 文件中。
- Saving
Ex:
regressor.save([<path-to-model.pkl>, <path-to-scaler.pkl>])
也可以通过指定模型和缩放器的路径来加载新的 LuciferML 对象
- Loading
Ex:
regressor = Regression(path = [<path-to-model.pkl>, <path-to-scaler.pkl>])
这些适用于分类和回归。
例子
请在此处参考更多示例