首页 > 其他分享 >R语言KNN模型分类信贷用户信用等级参数调优和预测可视化

R语言KNN模型分类信贷用户信用等级参数调优和预测可视化

时间:2024-01-27 22:46:16浏览次数:41  
标签:KNN 借款 变量 ## 模型 调优 可视化 参数 数据

全文链接:https://tecdat.cn/?p=34941

原文出处:拓端数据部落公众号

本文主要介绍了如何帮助客户通过读取数据、查看部分数据、转换数据为因子并将数值变量归一化、进行描述性分析、建立knn模型等步骤对数据进行分析。通过分别选择不同的k值进行建模,并对比它们的准确度,找到最优的参数k。文章还介绍了如何扩大参数的范围,找到最优的k值,并绘制数据的散点图,查看每个分类的分布情况。通过图表分析,得出了模型的预测点和实际点的符合程度较好的结论。

读取数据

   
credit <- read.table("man.data")  

查看部分数据

image.png

根据对数据集的命名和查看,可以看出数据集包含了多个变量,如checkingstatus1、duration、history等,这些变量代表了不同的个人和贷款信息。数据集的前几行展示了每个变量的取值情况,以及最后一列是目标变量"Default",它表示了客户是否违约。这些信息对于理解数据集的结构和内容非常重要。在进一步的分析中,这些变量将被用于建立模型,以预测客户是否会违约。

转换数据为因子,并且将数值变量归一化

   
germalt <- factor(germanault)  
  
gemadit[sapply(germt, is.numeric)] <- lapply(gerdit[sapply(germanit, is.numeric)], scale)

对数据进行描述性分析

   
summary(gerdit.subset)

image.png

根据对数据进行描述性分析的结果,可以看出各个变量的分布情况。例如,duration.V1(借款周期)、amount.V1(借款金额)、installment.V1(分期付款)等变量的最小值、最大值、中位数和平均值等统计信息。通过这些统计信息,可以初步了解数据的范围和分布情况,为后续建模和分析提供基础。例如,可以看出借款周期和借款金额的方差较大,而分期付款的方差较小,这些信息对于理解数据的特点和规律具有重要意义。

knn模型

将数据分区,70%为训练集,30%为测试集,建立knn模型,然后对比模型的准确度

   
set.seed(111)  
test <-sample(1:nrow(germ.subset),nrow(germubset)*0.2)

然后我们分别选取,不同的k作为knn模型的参数,得到模型的结果之后,对比它们的准确度,从而选出最优的参数k。

分别对不同的参数进行建模

   
knn.1 <-  k train.def, k=1)  
it, train.def, k=5)  
kndef, k=20)

然后分别计算不同参数下的准确度:

   
##      test.def  
## knn.1  0  1  
##     0 54 11  
##     1 21 14  
  

## [1] 0.535

##      test.def  
## knn.5  0  1  
##     0 62 13  
##     1 13 12  

## [1] 0.545

##       test.def  
## knn.20  0  1  
##      0 69 13  
##      1  6 12  

## [1] 0.605

从不同的近邻数的结果来看,我们可以发现当参数为二十的时候,模型的准确率最高为0.605。

因此我们可以认为最优的knn参数是20。

扩大参数的范围,使参数从2到30变化,并分别计算不同参数下的准确度,从而找到最优的参数。

   
acc=numeric(0)  
for(k in 2:30){

plot(acc,type="b",col="blue")

image.png

   
#查看最优k  
which.max(acc)+1

## [1] 2

因此,最优的k为2。

绘制数据的散点图,查看每个分类的分布情况

   
plot(train.germancredit[,c("amount","duration")],

微信活码:20231208-1755.png

图中四种颜色的点分别表示以下四个种类的用户:

图中的圆形和三角形分别代表没有信贷的用户和有信贷的用户。实心点和空心点,分别代表着预测的数据和实际的数。从散点图的结果来看空心点和实心点的覆盖重合度较高,说明模型的预测点和实际点的符合程度较好。同时可以看到不同的客户,信用等级的分类出现了不同的分布情况。三角形代表信用较好的客户,他们的借款周期一般较短,借款金额也较少。而圆形的点代表没有信贷的用户,他们的借款周期较长,借款金额较大,存在信贷危机。


000.png

最受欢迎的见解

1.PYTHON用户流失数据挖掘:建立逻辑回归、XGBOOST、随机森林、决策树、支持向量机、朴素贝叶斯模型和KMEANS聚类用户画像

2.R语言基于树的方法:决策树,随机森林

3.python中使用scikit-learn和pandas决策树

4.机器学习:在SAS中运行随机森林数据分析报告

5.R语言用随机森林和文本挖掘提高航空公司客户满意度

6.机器学习助推快时尚精准销售时间序列

7.用机器学习识别不断变化的股市状况——隐马尔可夫模型的应用

8.python机器学习:推荐系统实现(以矩阵分解来协同过滤)

9.python中用pytorch机器学习分类预测银行客户流失

标签:KNN,借款,变量,##,模型,调优,可视化,参数,数据
From: https://www.cnblogs.com/tecdat/p/17992298

相关文章

  • 医学研究的新里程碑:人体组织展示可视化模型
    在医学领域,人体组织是研究疾病、生理机制和药物作用的关键。然而,传统的组织学研究方法往往局限于切片观察,难以全面、直观地展示组织结构和功能。随着科技的发展,人体组织展示可视化模型为医学研究带来了革命性的变革。 使用山海鲸可视化搭建的人体组织展示可视化系统,利用现代科......
  • 文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
    一、介绍文本分类系统,使用Python作为主要开发语言,通过选取的中文文本数据集("体育类","财经类","房产类","家居类","教育类","科技类","时尚类","时政类","游戏类","娱乐类"),基于TensorFlow搭建CNN卷积神经网络算法模型,并进行多轮迭代训练最后得到一个识......
  • 程序员必备!10款实用便捷的Git可视化管理工具
    前言俗话说得好“工欲善其事,必先利其器”,合理的选择和使用可视化的管理工具可以降低技术入门和使用的门槛。我们在团队开发中统一某个开发工具的使用能够大大降低沟通成本,提高协作沟通效率。今天给大家分享10款实用便捷的Git可视化管理工具,注意排名不分先后希望能对各位小伙伴有......
  • 快递分拣中心可视化系统:提升效率与准确率的革命性工具
    在快递行业飞速发展的今天,分拣中心作为物流链中的重要环节,其运作效率直接影响到整个物流体系的顺畅度。为了应对这一挑战,山海鲸可视化搭建了一个快递分拣中心可视化模型。  快递分拣中心可视化系统利用先进的技术手段,将分拣中心的各个环节进行实时监控与数据采集,并通过大屏......
  • 【scikit-learn基础】--『回归模型评估』之可视化评估
    在scikit-learn中,回归模型的可视化评估是一个重要环节。它帮助我们理解模型的性能,分析模型的预测能力,以及检查模型是否存在潜在的问题。通过可视化评估,我们可以更直观地了解回归模型的效果,而不仅仅依赖于传统的评估指标。1.残差图所谓残差,就是实际观测值与预测值之间的差值。......
  • 穿越时空的沉浸式体验:红色教育基地漫游可视化
    在快节奏的现代社会,人们对于教育和休闲的追求愈发多元化。红色教育基地作为历史的见证者,承担着传承革命精神、弘扬社会主义核心价值观的重要使命。然而,传统的参观方式往往过于单调,难以让参观者在短时间内深入理解革命历史的内涵。正是基于这样的背景,山海鲸可视化基于自研的3D渲染......
  • R语言关联规则模型(Apriori算法)挖掘杂货店的交易数据与交互可视化
    原文链接:http://tecdat.cn/?p=22732 原文出处:拓端数据部落公众号 关联规则挖掘是一种无监督的学习方法,从交易数据中挖掘规则。它有助于找出数据集中的关系和一起出现的项目。在这篇文章中,我将解释如何在R中提取关联规则。关联规则模型适用于交易数据。交易数据的一个例子可以......
  • plotly——比 matplotlib 更灵活的可视化库
    在使用plotly后,我抛弃了matplotlib。importnumpyasnpimportplotly.graph_objectsasgofromscipyimportsignalx=np.linspace(0,1,1000)chebwin_window=signal.windows.chebwin(len(x),at=90)hann_window=signal.windows.hann(len(x))trace_chebwin=......
  • 沉浸于海滨风光:借助可视化技术,畅游海边的绝美景色
    在繁忙的现代生活中,我们常常渴望逃离城市的喧嚣,寻找一处宁静的天堂。海边旅游,无疑是满足这一愿望的绝佳选择。而如今,随着可视化技术的飞速发展,我们能够以全新的方式探索和体验海边旅游的魅力。 想象一下,站在海边,微风吹拂,海浪轻轻拍打着岸边。你佩戴着智能眼镜,手持虚拟现实设备,......
  • Granfana与数据可视化
    详情参考:https://www.prometheus.wang/grafana/这块知识点有点偏工具类,需要用到的时候再补充学习。Panel面板Panel是Grafana中最基本的可视化单元。每一种类型的面板都提供了相应的查询编辑器(QueryEditor),让用户可以从不同的数据源(如Prometheus)中查询出相应的监控数据,并且......