【视频】Python基于SVM和RankGauss的低消费指数构建模型

简介: 【视频】Python基于SVM和RankGauss的低消费指数构建模型

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

分析师:Wenyi Shen


校园的温情关怀是智慧校园的一项重要内容。通过大数据与数据挖掘技术对学生日常校园内的消费信息进行快速筛选和比对,建立大数据模型,对校园内需要帮助的同学进行精准识别,为高校温情关怀提供有效的数据依据点击文末“阅读原文”获取完整代码数据


该项目解决的主要问题是如何通过数据挖掘技术筛选和比对学生消费信息,从而自动识别校园内需要帮助的同学,为高校扶贫提供数据依据。


模型假设与问题分析


模型假设

三点假设:

  • 没有同学使用自己的账户为他人垫付,每一笔消费均为本人所为。
  • 在全部数据的60天内,认为消费总次数小于80次的为经常点外卖的人,剔除他们,不认为属于低消费人群。
  • 不存在收费错误的情况。


数据清洗


剔除时间异常值

image.png

数据共计260多万条条,从20年9月1日6时一直持续到20年10月30日19时。但其中有“9月31日”的数据,我们将其删除。

image.png

为了减少计算量,我们从200万条数据里随机选取20000条进行训练,最终获得两个聚类簇,以及各个簇的最大最小值。考虑到数据选取的随机性,本文将消费金额80作为异常值阈值,删除所有消费金额大于80的数据,保留下约98%的正常数据。


点击标题查阅往期内容


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


01

02

03

04



image.png

我们观察消费价格后发现,有少部分消费金额数据在1000甚至10000以上,这部分数据是异常数据,我们采用密度聚类(DBSCAN)算法来寻找一个阈值进行划分。

image.png

image.png

窗口与价位分类


窗口分类

对数据进行了Z-score标准化,以消除数据中的量纲差异,使得每个特征在模型中的影响程度相等。

绘制出标准化后的数据的SSE(Sum of Squared Errors)随分类个数变化的肘形图如下图所示:

image.png

使用簇为4的k-means聚类算法对标准化后的数据进行聚类,并得到各个分类中心的经过标准化后的均值和标准差及每个数据的所属的簇(即标签)。

将标准化后的数据还原,并画出平均消费价格和消费价格的方差与分类标签的关系图,如下图所示:

image.png

image.png

价位分类


最终的聚类效果如下。根据每个簇的最大最小值,将消费分为低、中、高三个价位,分别界定为小于10.37元,10.37元到24.67元和大于24.67元。

image.png

低消费指数模型


image.png

我们选取下面7个自变量参与模型训练:夜宵次数,午饭金额,晚饭金额,下午茶金额,夜宵金额,中消费频率,高消费频率。然后,用户的消费分类cluster变量将作为y标签。

我们以70%的数据做训练集,30%做测试集,建立SVM(支持向量机)分类模型,输出测试数据的准确率、精确率、召回率和F1值,以及混淆矩阵热力图,效果如下所示:

image.png

训练SVM模型后,我们获得了权重和偏置项,如下表所示,后面计算概率矩阵时会用到这些参数。

image.png

点击标题查阅往期内容


【视频】支持向量机算法原理和Python用户流失数据挖掘SVM实例


01

image.png

02

image.png

03

image.png

04

image.png


低消费指数模型


简单的说,RankGauss首先将该特征按照大小排序,计算出每个值的排名(排名从1开始);然后将排名除以n+1,其中n是该特征的样本数量,得到一个0到1之间的比例因子;最后将比例因子作为标准正态分布的累积分布函数(CDF)的输入,得到转换后的数据,如下表所示。

image.png

通过RankGauss标准化,可以看到,原本极小的数据也能转化到10个(-3)数量级及以上,在保留了模型可解释性和科学性的同时规范化了数据,便于数据参与二次运算。相较于其他标准化算法,只有RankGauss能做到将任意分布的数据映射到高斯分布,并且保留原始特征的顺序关系,同时规范减小数据的数量级差异。

相关文章
|
4天前
|
机器学习/深度学习 数据可视化 TensorFlow
使用Python实现深度学习模型的分布式训练
使用Python实现深度学习模型的分布式训练
113 73
|
7天前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品消费需求分析的深度学习模型
使用Python实现智能食品消费需求分析的深度学习模型
46 21
|
9天前
|
机器学习/深度学习 数据采集 搜索推荐
使用Python实现智能食品消费偏好预测的深度学习模型
使用Python实现智能食品消费偏好预测的深度学习模型
50 23
|
8天前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费模式预测的深度学习模型
使用Python实现智能食品消费模式预测的深度学习模型
35 2
|
15天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
14天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
2天前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
97 80
|
21天前
|
存储 索引 Python
Python编程数据结构的深入理解
深入理解 Python 中的数据结构是提高编程能力的重要途径。通过合理选择和使用数据结构,可以提高程序的效率和质量
133 59
|
1天前
|
分布式计算 大数据 数据处理
技术评测:MaxCompute MaxFrame——阿里云自研分布式计算框架的Python编程接口
随着大数据和人工智能技术的发展,数据处理的需求日益增长。阿里云推出的MaxCompute MaxFrame(简称“MaxFrame”)是一个专为Python开发者设计的分布式计算框架,它不仅支持Python编程接口,还能直接利用MaxCompute的云原生大数据计算资源和服务。本文将通过一系列最佳实践测评,探讨MaxFrame在分布式Pandas处理以及大语言模型数据处理场景中的表现,并分析其在实际工作中的应用潜力。
13 2