2022钉钉杯初赛A题(银行卡电信诈骗危险预测)

本文探讨了数字支付领域中欺诈检测的挑战,数据集包含七个特征和欺诈标签。经过数据预处理,发现部分数值特征存在异常值。使用决策树和其他模型进行建模,发现决策树在欺诈检测中表现优秀。通过参数重要性分析和调整,优化了模型性能。最终,展示了决策树模型的决策路径,并讨论了模型的精度、召回率和F1分数,强调了模型在欺诈识别中的价值。

题目以及数据自取:
链接:https://pan.baidu.com/s/1UkzMxcsHOryGJotaXkYObQ?pwd=1234
提取码:1234

一、题目

1、问题背景

数字支付正在发展,但网络犯罪也在发展。电信诈骗案件持续高发,消费者受损比例持续走高。报告显示,64%的被调查者曾使用手机号码同时注册多个账 户,包括金融类账户、社交类账户和消费类账户等,其中遭遇过电信诈骗并发生损失的比例过半。用手机同时注册金融类账户及其他账户,如发生信息泄露,犯罪分子更易接管金融支付账户盗取资金。
随着移动支付产品创新加快,各类移动支付在消费群体中呈现分化趋势,第三方支付的手机应用丰富的场景受到年轻人群偏爱,支付方式变多也导致个人信息也极易被不法分子盗取。根据数据泄露指数,每天有超过 500 万条记录被盗,这一令人担忧的统计数据表明 - 对于有卡支付和无卡支付类型的支付,欺诈仍然非常普遍。
在今天的数字世界,每天有数万亿的银行卡交易发生,检测欺诈行为的发生 是一个严峻挑战。

2、数据描述

该数据来自一些匿名的数据采集机构,数据共有七个特征和一列类标签。下面对数据特征进行一些简单的解释(每列的含义对我们来说并不重要,但对于机 器学习来说,它可以很容易地发现含义。它有点抽象,但并不需要真正了解每个功能的真正含义。只需了解如何使用它以便您的模型可以学习。许多数据集,尤 其是金融领域的数据集,通常会隐藏一条数据所代表的内容,因为它是敏感信息。 数据所有者不想让他人知道,并且数据开发人员从法律上讲也无权知道)

属性 描述
distance_from_home 银行卡交易地点与家的距离;
distance_from_last_transaction 与上次交易发生的距离;
ratio_to_median_purchase_price 近一次交易与以往交易价格中位数的比率;
repeat_retailer 交易是否发生在同一个商户;
used_chip 是通过芯片(银行卡)进行的交易;
used_pin_number 交易时是否使用了 PIN 码;
online_order 是否是在线交易订单;
fraud 诈骗行为(分类标签);

二、数据预处理

import pandas as pd
data=pd.read_csv('card_transdata.csv')
data.head(10)

在这里插入图片描述

1、列数据类型和缺失值汇总

# 列数据类型和缺失值汇总
data.info()

在这里插入图片描述

2、查看数据整体描述

data.describe() # 查看数据整体描述

在这里插入图片描述

data.isnull().sum()

根据以上输出可以看到,没有缺失值

在这里插入图片描述

3、使用箱型图查看异常值

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns  # 可视化w
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号

# 绘制不同参数的箱型图
plt.style.use('ggplot')
fig,axes = plt.subplots(1,2)
color = dict(boxes='DarkGreen', whiskers='DarkOrange',
              medians='DarkBlue', caps='Red')
# boxes表示箱体,whisker表示触须线
# medians表示中位数,caps表示最大与最小值界限
 
data[['distance_from_home', 'distance_from_last_transaction',
]].plot(kind='box',ax=axes,subplots=True,
                              title='异常值箱型图检测',color=color,sym='r+', figsize=(26,44) ,fontsize=13)
# sym参数表示异常值标记的方式
axes[0].set_ylabel()
axes[1].set_ylabel()
fig.subplots_adjust(wspace=2,hspace=2)  # 调整子图之间的间距
# fig.savefig("p1.png")    # 将绘制的图片保存为p1.png

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
从上图可以看出:distance_from_home、distance_from_last_transaction、ratio_to_median_purchase_price中异常值较多,repeat_retailer、used_chip,used_pin_number、online_order是二分类的类别特征。

3、对二分类属性进行分析

对诈骗行为做类别分析:0和1分别表示一种欺诈行为,属于二分类。

data.fraud.value_counts()

在这里插入图片描述

(data.fraud.value_counts
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

温欣2030

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值