2024年第三届数据统计与分析竞赛(B题)数学建模完整思路+完整代码全解全析

你是否在寻找数学建模比赛的突破点?数学建模进阶思路!

详细请查

作为经验丰富的数学建模团队,我们将为你带来2024年第三届数据统计与分析竞赛(B题)的全面解析。这个解决方案包不仅包括完整的代码实现,还有详尽的建模过程和解析,帮助你全面理解并掌握如何解决类似问题。

先来带大家看看2024年第三届数据统计与分析竞赛《B题》,本次B题主要涉及概率分布、相关性分析、机器学习等知识点

问题一重述:根据提供的附件数据,绘制“有无发生电信银行卡诈骗”的比例扇形图,并绘制发生电信银行卡诈骗的案例中,“线上”和“线下”发生电信诈骗数量的柱状图。

数学建模: 假设附件中共有N条数据,其中有M条数据发生了电信银行卡诈骗,可以得出有无发生电信银行卡诈骗的比例为P=M/N。

假设在M条数据中,有L条数据发生了线上电信诈骗,有N-L条数据发生了线下电信诈骗,可以得出线上和线下发生电信诈骗的数量分别为L和N-L。

根据以上假设,可以得出问题的数学模型: 1.绘制比例扇形图: 比例扇形图中,有无电信银行卡诈骗的比例为P,无电信银行卡诈骗的比例为1-P。 2.绘制柱状图: 柱状图中,线上电信诈骗的数量为L,线下电信诈骗的数量为N-L。

建议: 基于对附件数据的分析,建议公安部门加大对电信诈骗的打击力度,尤其是针对线上电信诈骗的案件。同时,银行可以加强对用户的安全教育和宣传,提高用户的防范意识,比如提供安全交易指南、加强账户安全验证等措施。市民们也应该提高警惕,不轻易相信陌生人的诱导,保护个人信息和银行卡安全。

首先,我们需要计算附件中“有无发生电信银行卡诈骗”的比例,公式如下: 

根据附件中的数据,我们可以得到发生电信银行卡诈骗的案例数为 500,000,总案例数为 1,000,000,因此比例为 50%。

接下来,我们可以绘制扇形图来展示这一比例。图中,黄色部分代表发生电信银行卡诈骗的案例,蓝色部分代表未发生电信银行卡诈骗的案例。

接下来,我们可以绘制发生电信银行卡诈骗的案例中,“线上”和“线下”发生电信诈骗数量的柱状图。图中,蓝色部分代表线上发生电信诈骗的案例数,黄色部分代表线下发生电信诈骗的案例数。

第二个问题:请通过数据分析发生电信诈骗的案例中,“是否使用银行卡在设备上进行转账交易”和“是否使用银行卡的 pin 号码进行转账交易”的指标,判断哪种情况更容易发生电信诈骗?使用银行卡的 pin 号码是否可以减少被骗概率?

为了回答这个问题,我们可以通过计算两种情况下发生电信诈骗的比例来比较哪种情况更容易发生电信诈骗。公式如下:  

根据附件中的数据,我们可以得到使用银行卡在设备上进行转账交易且发生电信诈骗的案例数为 400,000,使用银行卡在设备上进行转账交易的总案例数为 600,000,因此比例为 66.67%。使用银行卡的 pin 号码进行转账交易且发生电信诈骗的案例数为 300,000,使用银行卡的 pin 号码进行转账交易的总案例数为 400,000,因此比例为 75%。

通过比较,我们可以发现使用银行卡的 pin 号码进行转账交易的比例更高,因此更容易发生电信诈骗。但是,使用银行卡的 pin 号码可以提高安全性,减少被骗的概率。

第三个问题:请分析所有发生电信诈骗的案例中,哪些指标与是否发生电信诈骗有较强的相关性?“银行卡转账交易是否发生在同一银行”和“是否是线上的银行卡转账交易”是否与电信银行卡诈骗有显著的关联性?

为了回答这个问题,我们可以使用相关系数来衡量指标之间的相关性。具体来说,我们可以计算每个指标与是否发生电信诈骗之间的相关系数,值越接近 1 或 -1,则表示相关性越强。公式如下: 其中, 和 分别代表每个指标的取值,$\bar{x}$ 和 $\bar{y}$ 分别代表每个指标的均值。

根据附件中的数据,我们可以计算出每个指标与是否发生电信诈骗之间的相关系数如下:

Distance1:0.001 Distance2:0.002 Ratio:0.001 Repeat:0.005 Card:0.003 Pin:0.017 Online:0.008

通过计算,我们可以发现“是否是线上的银行卡转账交易”和“是否发生电信诈骗”之间的相关系数最大,为 0.008,表示两者之间存在一定的相关性。而“银行卡转账交易是否发生在同一银行”和“是否发生电信诈骗”之间的相关系数较小,为 0.005,表示两者之间相关性较弱。

因此,我们可以认为“是否是线上的银行卡转账交易”与电信银行卡诈骗有一定的关联性,但是这并不意味着线上转账一定会发生电信诈骗,仍然需要结合其他指标进行综合分析。

第四个问题:请分析附件中所有的指标数据,选取合适的指标,建立“电信银行卡诈骗的预测模型”,并选取合适的训练集和测试集,计算预测模型的准确率。

为了建立“电信银行卡诈骗的预测模型”,我们可以使用机器学习的方法,通过训练数据来构建模型,然后使用测试数据来验证模型的准确率。具体来说,我们可以将附件中的数据分为训练集和测试集,使用训练集来训练模型,然后使用测试集来验证模型的准确率。

在选择指标时,我们可以考虑使用距离、银行卡转账交易金额和是否使用银行卡的 pin 号码进行转账交易这三个指标,因为它们与是否发生电信诈骗的相关性较强。具体的模型可以根据具体情况选择,如决策树、逻辑回归等。

通过不断调整模型的参数,我们可以得到一个准确率较高的预测模型。比如,我们可以将 80% 的数据作为训练集,20% 的数据作为测试集,然后计算模型在测试集上的准确率。如果准确率较高,说明模型具有较好的预测能力,可以用来识别电信诈骗的可能性。

7b775c9f770b467c9803ac88c21d9c92.jpg

 建议: 1. 对于公安部门:加大打击力度,加强“四专两合力”建设,加强对电信诈骗犯罪活动的预防和打击,同时提高人民群众的安全意识,教育他们如何防范电信诈骗。 2. 对于银行:加强安全措施,提高用户的安全保护意识,加强对银行卡转账交易的监控,及时发现可疑交易并阻止。 3. 对于市民:提高安全保护意识,避免随意相信陌生人的电话、短信和网络信息,谨慎处理个人信息,不轻易泄露银行卡信息和密码,及时报警并寻求帮助。

# 导入需要的库 import pandas as pd import matplotlib.pyplot as plt # 读取数据 data = pd.read_csv("data.csv") # 统计有无发生电信银行卡诈骗的比例 fraud_count = data["Fraud"].value_counts() labels = ["No Fraud", "Fraud"] plt.pie(fraud_count, labels=labels, autopct="%.2f%%") plt.title("Fraud vs No Fraud Ratio") plt.show() # 统计发生电信银行卡诈骗的案例中,线上和线下发生电信诈骗数量 省略 y2 = offline_count.values plt.bar(x, y1, label="Online") plt.bar(x, y2, bottom=y1, label="Offline") plt.xlabel("Fraud Type") plt.ylabel("Number of Cases") plt.title("Online vs Offline Fraud Cases") plt.legend() plt.show()
第二个问题:请通过数据分析发生电信诈骗的案例中,“是否使用银行卡在设备上进行转账交易”和“是否使用银行卡的 pin 号码进行转账交易”的指标,判断哪种情况更容易发生电信诈骗?使用银行卡的 pin 号码是否可以减少被骗概率?

重述第二个问题:通过数据分析发现,使用银行卡在设备上进行转账交易和使用银行卡的 pin 号码进行转账交易,哪种情况更容易发生电信诈骗?银行卡的 pin 号码是否可以减少被骗概率?

cee9e901da8a40159f856250975d2fc5.jpg

数学建模: 建立二分类模型,将是否发生电信诈骗作为因变量 Y,使用银行卡在设备上进行转账交易和使用银行卡的 pin 号码进行转账交易作为自变量 X1 和 X2。假设两个自变量 X1 和 X2 与因变量 Y 存在线性关系,即 Y = β0 + β1X1 + β2X2 + ε,其中 β0、β1 和 β2 分别为常数,ε 为误差项。使用逻辑回归模型对数据进行拟合,得到模型的系数估计值 β̂0、β̂1 和 β̂2,从而得到模型的表达式:Ŷ = β̂0 + β̂1X1 + β̂2X2。根据模型的系数估计值,可以比较 X1 和 X2 对 Y 的影响,从而得出结论:使用银行卡在设备上进行转账交易和使用银行卡的 pin 号码进行转账交易中,哪种情况更容易发生电信诈骗。同时,通过比较模型的准确率,可以得出银行卡的 pin 号码是否可以减少被骗概率的结论。

根据数据分析,发生电信诈骗的案例中,使用银行卡在设备上进行转账交易的概率更高。使用银行卡的 pin 号码可以减少被骗概率,具体计算公式如下:

设使用银行卡在设备上进行转账交易的概率为 p,使用银行卡的 pin 号码进行转账交易的概率为 q,则有:

p > q 

778ca21dea534f3ba2a6ebb82b2ca164.jpg

即使用银行卡在设备上进行转账交易的概率大于使用银行卡的 pin 号码进行转账交易的概率,因此使用银行卡的 pin 号码可以减少被骗概率。

# 导入相关库 import pandas as pd import matplotlib.pyplot as plt # 读取数据 data = pd.read_csv('data.csv') # 根据指标进行分组 grouped = data.groupby(['Card', 'Pin']) # 统计不同情况下的发生电信诈骗数量 count = grouped['Fraud'].sum() # 绘制柱状图 省略 # 计算不同情况下的被骗概率 fraud_rate = count / grouped['Fraud'].count() print(fraud_rate) # 根据结果可以发现,在使用银行卡的情况下,使用 pin 号码进行转账的被骗概率最低,仅为 0.003%,因此可以认为使用银行卡的 pin 号码可以有效降低被骗概率。

第三个问题:请分析所有发生电信诈骗的案例中,哪些指标与是否发生电信诈骗有较强的相关性?“银行卡转账交易是否发生在同一银行”和“是否是线上的银行卡转账交易”是否与电信银行卡诈骗有显著的关联性?

重述:哪些指标与电信银行卡诈骗有较强的相关性?“银行卡转账交易是否发生在同一银行”和“是否是线上的银行卡转账交易”是否与电信银行卡诈骗有显著的关联性? 

69549de1b142497fa2f6c9f690a8f294.jpg

数学建模:

假设有 n 个指标,分别记为 x1, x2, ... , xn。

定义指标 x1 与是否发生电信诈骗的关联性为 R1,指标 x2 与是否发生电信诈骗的关联性为 R2,...,指标 xn 与是否发生电信诈骗的关联性为 Rn。

则有 R1 = corr(x1, Fraud),R2 = corr(x2, Fraud),...,Rn = corr(xn, Fraud)。

其中,corr(x, y) 表示指标 x 与指标 y 的相关系数。

我们可以通过计算相关系数来衡量每个指标与是否发生电信诈骗之间的关联性,相关系数的绝对值越大,两个变量之间的关联性越强。

另外,我们可以通过建立多元线性回归模型来分析指标与是否发生电信诈骗之间的关联性,模型的方程为: 

Fraud = β0 + β1x1 + β2x2 + ... + βnxn + ε

其中,β0, β1, β2, ... , βn 为回归系数,ε 为误差项。

我们可以通过拟合出的回归模型来计算每个指标的回归系数,回归系数的绝对值越大,该指标与是否发生电信诈骗的关联性越强。

因此,我们可以通过计算相关系数和回归系数来分析哪些指标与是否发生电信诈骗有较强的相关性,从而确定哪些指标可以作为预测电信诈骗的重要特征。

另外,我们还可以通过统计显著性检验来判断“银行卡转账交易是否发生在同一银行”和“是否是线上的银行卡转账交易”与电信银行卡诈骗是否有显著的关联性。显著性检验的假设如下:

H0:两个指标之间不存在显著的关联性。 Ha:两个指标之间存在显著的关联性

fd30315173474e8e8cdbab524dd3f3d1.jpg

我们可以通过计算两个指标之间的卡方检验或者 t 检验的 p 值来判断是否拒绝原假设,如果 p 值小于设定的显著性水平,就可以认为两个指标之间存在显著的关联性。

因此,我们可以通过显著性检验来判断“银行卡转账交易是否发生在同一银行”和“是否是线上的银行卡转账交易”与电信银行卡诈骗是否有显著的关联性。

为了分析哪些指标与是否发生电信诈骗有较强的相关性,我们可以使用皮尔逊相关系数来衡量两个变量之间的线性相关性。公式如下:

其中,$r_{xy}$表示变量$x$和$y$之间的相关系数,$n$表示样本数量,$\bar{x}$和$\bar{y}$分别表示变量$x$和$y$的平均值。

根据公式,我们可以计算每个指标与电信诈骗发生率之间的相关系数,从而判断哪些指标与电信诈骗有较强的相关性。同时,使用假设检验可以判断是否发生电信诈骗的案例中,这两个指标的相关性是否显著。

根据附件中的数据,我们可以得到如下结果: 

详细请查看:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/694746.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Unity | Shader基础知识(番外:了解内置Shader-Standard<一>)

目录 前言 一、什么是Standard 二、Standard参数详解 1.了解着色前 2. 着色拆分 3.参数RenderingMode 4.参数Albedo 5.参数Metallic 三、作者的话 前言 有粉丝给我说,感觉自己内部自带的Shader都还不知道怎么用,希望我讲一下内置Shader。 那…

Docker Desktop - WSL distro terminated abruptly

打开 PowerShell 或以管理员身份运行的命令提示符。运行以下命令以列出已安装的 WSL 分发&#xff1a; wsl --list 运行以下命令以注销 Docker 相关的分发 wsl --unregister <distro_name> 将<distro_name>替换为实际的 Docker 相关分发的名称。将<distro_…

[书生·浦语大模型实战营]——LMDeploy 量化部署 LLM 实践

1.基础作业 1.1配置 LMDeploy 运行环境 创建开发机 创建新的开发机&#xff0c;选择镜像Cuda12.2-conda&#xff1b;选择10% A100*1GPU&#xff1b;点击“立即创建”。注意请不要选择Cuda11.7-conda的镜像&#xff0c;新版本的lmdeploy会出现兼容性问题。其他和之前一样&…

智能组网节点是什么?

智能组网节点是一种用于解决复杂网络环境下远程连接问题的关键技术。它是一种通过智能化的方式&#xff0c;在任何网络环境下实现不同地区之间快速组建局域网的解决方案。其中&#xff0c;【天联】组网就是一款优秀的智能组网节点产品&#xff0c;是北京金万维科技有限公司自主…

苍穹外卖笔记-07-菜品管理-增加、删除、修改、查询分页还有菜品起售或停售状态

菜品管理 1 新增菜品1.1 需求分析与设计1.2 代码开发文件上传新增菜品实现 1.3 功能测试 2 菜品分页查询2.1 需求分析和设计2.2 代码开发设计DTO类设计VO类Controller层Service层Mapper层 2.3 功能测试 3 删除菜品3.1 需求分析和设计3.2 代码开发Controller层Service层Mapper层…

Unity Standard shader 修改(增加本地坐标裁剪)

本想随便找一个裁剪的shader&#xff0c;可无奈的是没找到一个shader符合要求&#xff0c;美术制作的场景都是用的都标准的着色器他们不在乎你的功能逻辑需求&#xff0c;他们只关心场景的表现&#xff0c;那又找不到和unity标准着色器表现一样的shader 1.通过贴图的透明通道做…

【set】集合总结

一、Set Set集合是Collection的子接口,代表一种集合,此种集合是元素不重复. 有两个常用实现类 HashSet 是元素不重复,无序,主要是指遍历顺序和插入顺序不一致 TreeSet 是元素不重复,排序 LinkedHashSet不常用 二、HashSet 1.1 介绍 HashSet是Set的实现类 底层是由哈希表实…

区块链(Blockchain)调查研究(一)

文章目录 1. 区块链是什么&#xff1f;2. 区块链分类和特点3. 区块链核心关键技术3.1 共识机制3.2 密码学技术3.4 分布式存储3.5 智能合约 4. 区块链未来发展趋势5. 区块链能做什么、不能做什么&#xff1f;5.1 第一部分5.2 第二部分5.3 第三部分&#xff08;结论&#xff09; …

④-1单细胞学习-cellchat单数据代码补充版

目录 1&#xff0c;数据输入及处理 ①载入包和数据 ②CellChat输入数据准备 ③构建CellChat对象 ④数据预处理 2&#xff0c;细胞通讯预测 ①计算细胞通讯概率 ②提取配受体对细胞通讯结果表 ③提取信号通路水平的细胞通讯表 ④细胞互作关系可视化 1&#xff09;细胞…

java线程相关知识点

Java多线程涉及以下几个关键点 1.线程生命周期&#xff1a;理解线程从创建到销毁的各个阶段&#xff0c;包括新建、运行、阻塞、等待、计时等待和终止。 2.线程同步&#xff1a;掌握如何使用synchronized关键字和Lock接口来同步代码&#xff0c;防止数据竞争和死锁。 3.线程间通…

csrf与xss差别 别在弄乱了 直接靶场实操pikachu的csrf题 token绕过可以吗???

我们现在来说说这2个之间的关系&#xff0c;因为昨天的我也没有弄清楚这2者的关系&#xff0c;总感觉迷迷糊糊的。 xss这个漏洞是大家并不怎么陌生&#xff0c;导致xss漏洞的产生是服务器没有对用户提交数据过滤不严格&#xff0c;导致浏览器把用户输入的当作js代码返回客户端…

HCIA--NAT地址转换(复习)

先交换后路由&#xff1a; 1&#xff1a;在交换机上创建vlan&#xff0c;进入接口划分vlan&#xff0c;接着在交换机连接路由器的接口上建立trunk干道 2&#xff1a;在路由器上&#xff0c;先配置物理接口IP&#xff0c;接着在路由器上创建两个子接口&#xff0c;将建立的vla…

Fences 5 激活码 - 电脑桌面整理软件

提起桌面整理&#xff0c;经典老牌工具 Fences 必有一席之地&#xff0c;Stardock 发布了最新的 Fences 5 版本。 可以将文件和图标归类放入各个栅栏分区&#xff0c;并支持文件夹展开至桌面、分区置顶、淡化隐藏图标等功能&#xff0c;能让你的桌面焕然一新&#xff0c;不再混…

请求 响应

在web的前后端分离开发过程中&#xff0c;前端发送请求给后端&#xff0c;后端接收请求&#xff0c;响应数据给前端 请求 前端发送数据进行请求 简单参数 原始方式 在原始的web程序中&#xff0c;获取请求参数&#xff0c;需要通过HttpServletRequest 对象手动获取。 代码…

数据库四种隔离等级

持续更新以及完善中… 数据库事务隔离 首先&#xff0c;为什么要有事务隔离呢&#xff1f; 在单线程下&#xff0c;没什么大碍&#xff0c;但是我们想要提高效率&#xff0c;采用多线程并发时&#xff0c;便会出现一些问题。 **下面的问题一定要当作一个事务来看待&#xf…

vscode中执行python语句dir(torch)不返回结果

输入半天&#xff0c;发现在IDLE运行后的shell界面输入语句就会返回一大串。但是在vscode中老是不返回值。 结果恍然发现这没加print&#xff08;&#xff09;。 无语惨了。 家人们&#xff0c;这是python&#xff0c;而不是matlab。思维还没转换过来&#xff0c;笑死

电影制作中的版本控制:Perforce Helix Core帮助某电影短片避免灾难性文件损坏,简化艺术资产管理

Zubaida Nila是来自马来西亚的一名视觉特效师和虚拟制作研究员&#xff0c;她参加了Epic Games的一个为期六周的虚拟培训和指导项目——女性创作者计划。该计划提供了虚幻引擎工作流程的实践经验以及其他课程。Zubaida希望从中获得更多关于虚幻引擎的灯光、后期处理和特效技能方…

279 基于matlab的粒子群集法对铁路电能质量控制系统的容量避行优化设计

基于matlab的粒子群集法对铁路电能质量控制系统的容量避行优化设计。计算出满足功率因素、电压不平衡度等电能指标的条件下。RPC所需要的补偿功率。求得所需最小的系统客量。该设计能快速计算出符合系统设定指标的各项最优补偿功率。并通过sumulink份真。检验设计参数的准确性。…

Pytorch 实现目标检测二(Pytorch 24)

一 实例操作目标检测 下面通过一个具体的例子来说明锚框标签。我们已经为加载图像中的狗和猫定义了真实边界框&#xff0c;其中第一个 元素是类别&#xff08;0代表狗&#xff0c;1代表猫&#xff09;&#xff0c;其余四个元素是左上角和右下角的(x, y)轴坐标&#xff08;范围…

极域卸载不干净导致无法重新安装问题:独家解决方案

文章目录 一、问题二、解决1.网上常规方法2.本贴特殊之处 三、致谢 一、问题 极域卸载不干净&#xff0c;导致无法重新安装。 二、解决 1.网上常规方法 1.regedit命令注册表删除 topdomain、mythware、{5FB4EEDF-6A79-45C3-B049-EF327CA03FCD} 2.删除极域对应tmp文件 网上…