sklearn库

Sklearn库

  • 分类模型
  • 回归模型
  • 训练
  • 评估指标

分类模型

KNN

from sklearn.neighbors import KNeighborsClassifier
KNeighborsClassifier()

DT

from sklearn import tree, linear_model
tree.DecisionTreeClassifier()

Bagging

from sklearn.ensemble import BaggingClassifier
BaggingClassifier(KNeighborsClassifier())

XGboost

from xgboost import XGBClassifier
XGBClassifier()

RF

from sklearn.ensemble import RandomForestClassifier
RandomForestClassifier(n_estimators=100)

LightGBM

import lightgbm as lgb
lgb.LGBMClassifier(
        boosting_type='gbdt', num_leaves=55, reg_alpha=0.0, reg_lambda=1,
        max_depth=15, n_estimators=6000, objective='binary',
        subsample=0.8, colsample_bytree=0.8, subsample_freq=1,
        learning_rate=0.06, min_child_weight=1, random_state=20, n_jobs=4
    )

回归模型

训练

clf= KNeighborsClassifier()
clf.fit(X_train, Y_train)

评估指标

acc = clf.score(X_test, Y_test) # acc
y_pred = clf.predict(X_test) 
X_ = np.round(np.array(y_pred).reshape(-1, 1))
m = metrics.confusion_matrix(Y_test, X_)  # 混淆矩阵

metrics.precision_score(Y_test, y_pred) # precision
metrics.recall_score(Y_test, y_pred) # recall
metrics.f1_score(Y_test, y_pred) # F1-score
metrics.roc_auc_score(Y_test, y_pred) # AUC

# 画AUC 曲线
y_socre = clf.predict_proba(X_test)  

fpr, tpr, threshold = metrics.roc_curve(Y_test, y_socre[:, 1])
roc_auc = metrics.auc(fpr, tpr)
    
plt.plot(fpr, tpr,  label=str(name)+'= %0.3f' % roc_auc)
plt.legend(loc='lower right')
plt.plot([0, 1], [0, 1], 'r--')
plt.xlim([0, 1])
plt.ylim([0, 1])
plt.ylabel('True Positive Rate')
plt.xlabel('False Positive Rate')

你可能感兴趣的:(python,机器学习,sklearn,机器学习,python)