PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享-4

简介: PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享

PYTHON银行机器学习:回归、随机森林、KNN近邻、决策树、高斯朴素贝叶斯、支持向量机SVM分析营销活动数据|数据分享-3

https://developer.aliyun.com/article/1489342


KNN近邻

classifier = KNeighborsClassifier(n_neighbors =13,metric = 'minkowski' , p=2)
print("Mean accuracy: ",accuracyknn/K)
print("The best AUC: ", bestaucknn)
\[\[7952   30\]
 \[1046   15\]\]

image.png

\[\[7987   30\]
 \[1010   15\]\]

image.png

\[\[7989   23\]
 \[1017   13\]\]

image.png

\[\[7920   22\]
 \[1083   17\]\]

image.png

\[\[7948   21\]
 \[1052   21\]\]

image.png

高斯朴素贝叶斯

kf = KFold(n_splits=K, shuffle=True)
gaussian = GaussianNB()
\[\[7340  690\]
 \[ 682  331\]\]

image.png

\[\[7321  633\]
 \[ 699  389\]\]

image.png

\[\[7291  672\]
 \[ 693  386\]\]

image.png

\[\[7300  659\]
 \[ 714  369\]\]

image.png

\[\[7327  689\]
 \[ 682  344\]\]

image.png

``````
models = pd.DataFrame({
    'Model': \['KNN', 'Logistic Regression', 
              'Naive Bayes', 'Decision Tree','Random Forest'\],
    'Score': \[ accuracyknn/K, accuracylogreg/K, 
              accuracygnb/K, accuracydt/K, accuracyrf/K\],
    'BestAUC': \[bestaucknn,bestauclogreg,bestaucgnb,
                bestaucdt,bestaucrf\]})

image.png

我们看到根据 AUC 值的最佳模型是朴素贝叶斯我们不应该太在意最低的 R2 分数,因为数据非常不平衡(很容易预测 y=0)。在混淆矩阵中,我们看到它预测了漂亮的价值真正值和负值。令我们惊讶的是,决策树的 AUC 约为 50%。

欠采样

我们尝试对变量 y=0 进行欠采样

gTrain, gValid = train\_test\_split

image.png

逻辑回归

predsTrain = logreg.predict(gTrainUrandom)

image.png

predsTrain = logreg.predict(gTrain20Urandom)

image.png

predsTrain = logreg.predict(gTrrandom)

image.png

决策树

``````
print("Train AUC:", metrics.roc\_auc\_score(ygTrds))

image.png

随机森林

print("Train AUC:", metrics.roc\_auc\_score(ygTr, predsTrain),
      "Valid AUC:", metrics.roc\_auc\_score(ygVd, preds))

image.png

KNN近邻

print("Train AUC:", metrics.roc\_auc\_score(ygTrm, predsTrain),
      "Valid AUC:", metrics.roc\_auc\_score(ygVal10, preds))

image.png

高斯朴素贝叶斯

print("Train AUC:", metrics.roc\_auc\_score(ygTraom, predsTrain),
      "Valid AUC:", metrics.roc\_auc\_score(ygid, preds))

image.png

过采样

我们尝试对变量 y=1 进行过采样

feates = datolist()
print(feures)
feaes.remove('y')

image.png

print(gTrainOSM.shape)
(31945, 39)
``````
smt = SMOT
(32345, 39)
``````
smt = SMOT
(32595, 39)
``````
ygTrain10OSM=gTrain10OSM\['y'\]
gTrain10OSM=gTrain10OSM.drop(columns=\['y'\])

逻辑回归

print("Train AUC:", metrics.roc\_auc\_score(ygTrin10SM, predsTrain),
      "Valid AUC:", metrics.roc\_auc\_score(ygValid, preds))

image.png

决策树

dt2.fit(,ygTranOS)
predsTrain = dtpreict(TrainOSM)
preds = dt2.predict(gValid)

image.png

随机森林

random_forest.fit(rainOSM, ygTranOS)
predsTrain = random_forest.prect(gTraiOSM)
p

image.png

KNN近邻

classifier.fit(granOSM, yTanOSM)
predsTrain = classifier.predict(gTaiSM)
preds = classifier.predict(Vaid)

image.png

高斯朴素贝叶斯

gaussian.fit(gTriOM, ygrainM)
predsTrain = gaussian.predcti)

image.png

结论

我们看到欠采样和过采样变量 y 对 AUC 没有太大帮助。

相关文章
|
5天前
|
机器学习/深度学习 算法 数据处理
【阿旭机器学习实战】【33】中文文本分类之情感分析--朴素贝叶斯、KNN、逻辑回归
【阿旭机器学习实战】【33】中文文本分类之情感分析--朴素贝叶斯、KNN、逻辑回归
|
5天前
|
机器学习/深度学习 算法 数据挖掘
【阿旭机器学习实战】【32】预测银行客户是否会开设定期存款账户--逻辑回归
【阿旭机器学习实战】【32】预测银行客户是否会开设定期存款账户--逻辑回归
|
7天前
|
IDE 开发工具 C++
Python-turtle-樱花树
Python-turtle-樱花树
12 3
|
8天前
|
机器学习/深度学习 算法 大数据
【机器学习】朴素贝叶斯算法及其应用探索
在机器学习的广阔领域中,朴素贝叶斯分类器以其实现简单、计算高效和解释性强等特点,成为了一颗璀璨的明星。尽管名字中带有“朴素”二字,它在文本分类、垃圾邮件过滤、情感分析等多个领域展现出了不凡的效果。本文将深入浅出地介绍朴素贝叶斯的基本原理、数学推导、优缺点以及实际应用案例,旨在为读者构建一个全面而深刻的理解框架。
13 1
|
8天前
|
SQL 算法 数据可视化
LeetCode题目99:图解中叙遍历、Morris遍历实现恢复二叉树搜索树【python】
LeetCode题目99:图解中叙遍历、Morris遍历实现恢复二叉树搜索树【python】
|
8天前
|
存储 算法 数据可视化
python多种算法对比图解实现 验证二叉树搜索树【力扣98】
python多种算法对比图解实现 验证二叉树搜索树【力扣98】
|
8天前
|
机器学习/深度学习 SQL 数据可视化
python揭秘决策树:如何每次都精确预测鸢尾花的种类
python揭秘决策树:如何每次都精确预测鸢尾花的种类
|
13天前
|
算法 Java Go
【经典算法】LeetCode 100. 相同的树(Java/C/Python3/Go实现含注释说明,Easy)
【经典算法】LeetCode 100. 相同的树(Java/C/Python3/Go实现含注释说明,Easy)
6 0
|
20天前
|
机器学习/深度学习 算法 API
【机器学习】Python中的决策树算法探索
决策树作为机器学习中的一种基础且强大的算法,因其易于理解和实现、能够处理分类和回归任务的特性而广受欢迎。本文旨在深入浅出地介绍决策树算法的基本原理,并通过Python编程语言实践其应用,帮助读者掌握如何利用Python构建及优化决策树模型。本文预计分为以下几个部分:决策树基础理论、Python中实现决策树的库介绍、实战案例分析、模型评估与调优方法,以及决策树算法的局限性与未来展望。
24 0
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
炸裂!PAI-DSW 和 Free Prompt Editing 图像编辑算法,成就了超神的个人 AIGC 绘图小助理!
【6月更文挑战第11天】PAI-DSW 和 Free Prompt Editing 算法引领图像编辑革命,创造出个人AIGC绘图小助理。PAI-DSW擅长深度图像处理,通过复杂模型和深度学习精准编辑;Free Prompt Editing则允许用户以文本描述编辑图像,拓展编辑创意。结合两者,小助理能根据用户需求生成惊艳图像。简单Python代码示例展示了其魅力,打破传统编辑局限,为专业人士和普通用户提供创新工具,开启图像创作新篇章。未来,它将继续进化,带来更多精彩作品和体验。

热门文章

最新文章