1 项目背景
某金融服务机构拥有上亿会员,并且业务场景中每天都涉及大量的资金流入和流出,面 对如此庞大的用户群,资金管理压力会非常大。在既保证资金流动性风险最小,又满足日常 业务运转的情况下,精准地预测资金的流入流出情况变得尤为重要。企业希望能精准预测未 来每日的资金流入流出情况。对货币基金而言,资金流入意味着申购行为。资金流出意味着 赎回行为。
2 项目目标
基于企业希望精确预测资金流入流出数量的需求,设定项目目标为:预测蚂蚁金服次月 每天的申购总额。
3 项目步骤
3.1 工程前期准备
3.1.1 导入数据
(1) 介绍数据
用户申购赎回数据表:表中包含 2013 年 7 月 1 日 至 2014 年 8 月 31 日的申购和赎回 信息、以及所有的子类目信息。数据经过脱敏处理,脱敏之后的数据,基本保持了原数据分 布。数据主要包括用户操作时间和操作记录,其中操作记录包括申购和赎回两个部分。金额 的单位是分,即 0.01 元人民币。 如果用户今日消费总量为 0,即 consume_amt=0,则四个子类目为空。如表 3-1 所示。
表 3-1 用户申购赎回数据表
属性 | 含义 | 示例 |
user_id | 用户 id | 1234 |
report_date | 日期 | 20140407 |
tBalance | 今日余额 | 109004 |
yBalance | 昨日余额 | 97389 |
total_purchase_amt | 今日总购买量 = 直接购 买 + 收益 | 21876 |
direct_purchase_amt | 今日直接购买量 | 21863 |
purchase_bal_amt | 今日支付宝余额购买量 | 0 |
purchase_bank_amt | 今日银行卡购买量 | 21863 |
total_redeem_amt | 今日总赎回量 = 消费 + 转出 | 10261 |
consume_amt | 今日消费总量 | 0 |
transfer_amt | 今日转出总量 | 10261 |
tftobal_amt | 今日转出到支付宝余额总量 | 0 |
tftocard_amt | 今日转出到银行卡总量 | 10261 |
share_amt | 今日收益 | 13 |
category1 | 今日类目 1 消费总额 | 0 |
category2 | 今日类目 2 消费总额 | 0 |
category3 | 今日类目 3 消费总额 | 0 |
category4 | 今日类目 4 消费总额 | 0 |
(2) 上传数据到 Python 数据挖掘建模平台
在新增数据源上,选择本地上传数据,如图 1 所示。
图 1 本地上传数据源
在本地路径上选择文件,填写在平台新建的目标表名,如图 2 所示。
图 2 本地选择文件上传
根据文件的数据,可以修改文件的字段名和类型,如图 3 所示。
图 3 字段设置
上传成功,可以在平台的数据源上查看数据,单击数据源操作的查看按钮如图 4 所示, 数据预览如图 5 所示。
图 4 单击预览数据按钮
图 5 数据预览
3.1.2 新建空白工程
右击我的工程,新建一个空白的工程,如图 6 所示。
图 6 新建工程
填写工程的信息,包括工程名称和工程描述,如图 7 所示。
图 7 填写工程信息
3.2 数据预处理
读取 total_purchase_amt 数据,步骤如图 8 所示。
(1) 选择工程。
(2) 选择输入源组件。
(3) 拖入输入源组件。
(4) 填写数据表名。
(5) 单击更新按钮,更新出数据。
图 8 输入源组件
3.2.1 缺失值处理
数据可能存在缺失值,先对数据进行缺失值处理,步骤如错误!未找到引用源。所示。
(1) 找到预处理→缺失值处理组件。
(2) 拖入缺失值处理组件,并将输入源和缺失值处理组件连接。
(3) 单击更新按钮,勾选全部数据的字段作为输出字段。
(4) 对缺失值处理组件右键,选择运行该节点。
图 9 缺失值处理组件
(5) 运行完成后,对缺失值处理组件右键,选择查看数据,如错误!未找到引用源。所示。
图 10 缺失值处理结果
3.2.2 平稳性检验
选择平稳性检验,步骤如图 11 所示。
(1) 找到统计分析→平稳性检验。
(2) 拖入平稳性检验组件,将缺失值处理和平稳性检验组件连接。
(3) 单击更新按钮,时序特征勾选 total_purchase_amt 字段作为检验字段。
(4) 对平稳性检验组件右键,选择运行该节点。
图 11 平稳性检验组件
(5) 运行完成后,对平稳性检验组件右键,选择查看报告,平稳性检验的报告结果如图 12所示。
图 12 平稳性检验报告
3.2.3 纯随机性检验
选择平稳性检验,步骤如图 13 所示。
(1) 找到统计分析→纯随机性检验。
(2) 拖入平稳性检验组件,将缺失值处理和纯随机性检验组件连接。
(3) 单击更新按钮,特征勾选 total_purchase_amt 字段作为检验字段。
(4) 对纯随机性检验组件右键,选择运行该节点。
图 13 纯随机性检验组件
(5) 运行完成后,对纯随机性检验组件右键,选择查看报告,纯随机性检验的报告结果
如图 14 所示。
图 14 纯随机性检验报告
3.3 模型构建
3.3.1 ARIMA 算法
选择 ARIMA 算法模型,步骤如图 15、图 16 所示。
(1) 找到时序模型ARIMA 组件。
(2) 拖入 ARIMA 组件,将生成训练数据和 ARIMA 组件连接。
(3) 选择字段属性,单击更新数据,时序列勾选 total_purchase_amt 字段,时间列勾选 report_date 字段。
(4) 选择参数设置,设置预测周期数的值为 10 ,设置自回归项数p 的值为 7,设置差分 次数 d 的值为 1,设置移动平均项数 q 的值为 2。
图 15 ARIMA 组件_字段属性
图 16 ARIMA 组件_参数设置
(5) 运行完成后,对 ARIMA 组件右键,选择查看报告,ARIMA 的报告如图 17 所示。
图 17 ARIMA 的报告
试用请访问:https://eb.tipdm.org:10078,自行注册即可。
标签:金融服务,如图,检验,组件,TipDM,所示,数据挖掘,平稳性,amt From: https://blog.csdn.net/class4715/article/details/145033851