通过最佳实践帮助您实现上述案例效果
Step1:数据导入MaxCompute
1.1 创建需要上传的本地数据
贷款预测表:(今年申请贷款者)
字段名 | 含义 | 类型 | 描述 |
id | 数据唯一标识符 | string | 人 |
name | 用户名 | string | 人 |
region | 用户所属地区 | string | 从北到南排列 |
farmsize | 拥有土地大小 | double | 土地面积 |
rainfall | 降雨量 | double | 降雨量 |
landquality | 土地质量 | double | 土地质量数值越大越好 |
farmincome | 收入 | double | 年收入 |
maincrop | 种植作物 | string | 种植作物的种类 |
claimtype | 贷款类型 | string | 两种 |
claimvalue | 贷款金额 | double | 贷款金额 |
贷款训练表:(历史贷款数据)
字段名 | 含义 | 类型 | 描述 |
id | 数据唯一标识符 | string | 人 |
name | 用户名 | string | 人 |
region | 用户所属地区 | string | 从北到南排列 |
farmsize | 拥有土地大小 | double | 土地面积 |
rainfall | 降雨量 | double | 降雨量 |
landquality | 土地质量 | double | 土地质量数值越大越好 |
farmincome | 收入 | double | 年收入 |
maincrop | 种植作物 | string | 种植作物的种类 |
claimtype | 贷款类型 | string | 两种 |
claimvalue | 贷款收回金额 | double | 贷款金额 |
源数据:farm_claim_train
1.2 创建MaxCompute表
1.2.1 开通MaxCompute
阿里云实名认证账号访问https://www.aliyun.com/product/odps ,开通MaxCompute,选择按量付费进行购买。
https://img.alicdn.com/tps/TB1TxkNOVXXXXaUaXXXXXXXXXXX-1124-472.png" width="836">
https://img.alicdn.com/tps/TB1qRw3OVXXXXX_XFXXXXXXXXXX-1243-351.png" width="836">
https://img.alicdn.com/tps/TB1gvgQOVXXXXXUXVXXXXXXXXXX-1208-337.png" width="836">
1.2.2 数加上创建MaxCompute project
操作步骤:
步骤1: 进入数加管理控制台,前面开通MaxCompute成功页面,点击管理控制台,或者导航产品->大数据(数加)->MaxCompute 点击“管理控制台”。
http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/pic/49126/cn_zh/1487754370705/a1.png" width="836">
步骤2: 创建项目。付费模式选择I/O后付费,输入项目名称:
步骤3: 创建MaxCompute表。进入大数据开发套件的数据开发页面:
以开发者身份进入阿里云数加平台>大数据开发套件>管理控制台,点击对应项目操作栏中的进入工作区
1.2.3 创建表
点击菜单数据管理,右上新建表
1.2.4 填写信息配置
在新建表页面中填写基础信息的各配置项,点击下一步
在新建表页面中填写字段和分区信息的各配置项
1.2.5 点击提交
新建表提交成功后,系统将自动跳转返回数据表管理界面,点击我管理的表即可看到新建表
1.3 导入本地文件
进入大数据开发套件控制台,点击对应项目的进入工作区,点击菜单数据开发-->导入-->导入本地数据
选择目标表,并选择字段匹配方式,点击导入
文件导入成功后,系统右上角将提示文件导入成功,同时可以执行select语句查看数据
Step2:机器学习中的数据准备
进入机器学习管理控制台,点击对应项目的进入机器学习
选择需要的租户及工作空间,点击“提交”
进入机器学习页面后,右击我的实验点击新建空白实验,输入实验名和实验描述
切换到组件栏,向画布中拖入读数据表,点击读数据表,在右侧表选择栏填入你的MaxCompute表
切换到字段信息栏,可以查看输入表的字段名、数据类型和前100行数据的数值分布
Step3:数据探索流程
实验流程图:
3.1 特征工程
将一些字符串类型的数据,根据他们的含义映射成数字。比如说region字段,我们将其中的north、middle、south按照从北到南的顺序分别映射成0、1、2。然后通过类型转换将字段转换成double类型,这样就可以进行下面的回归计算了。
3.1.1 SQL脚本
向画布中拖入工具-->SQL脚本,将贷款训练集和贷款预测集的数据分别输入到SQL脚本,点击SQL脚本,在右侧分别输入如下SQL语句
select id,(case region when '"north"' then 0 when '"midlands"' then 1 else 2 end) as region_num,farmsize,rainfall,landquality,farmincome,(case claimtype when '"decommission_land"' then 1 else 0 end) as claimtype_num,claimvalue from ${t1};
右击SQL脚本点击执行后,查看结果
3.1.2 数据视图
向画布中拖入统计分析-->数据视图,将SQL脚本的结果输入到数据视图中,点击数据视图,在右侧选择字段
贷款训练集字段选择:
贷款预测集字段选择:
右击数据视图点击执行后,查看分析报告
贷款训练集分析报告:
贷款预测集分析报告:
3.2 回归及预测
线性回归组件对于历史数据训练并生成回归模型,在预测组件中利用回归模型对于预测集数据进行了预测。通过合并列组件将用户ID、预测值、申请的贷款值合并。预测值表示的是用户的还贷能力(预期可以归还的金额)。
3.2.1 线性回归
向画布中拖入机器学习-->回归-->线性回归,将贷款训练集转换后的数据输入到线性回归中,点击线性回归,在右侧选择字段和标签列
右击线性回归点击执行后,查看分析报告
3.2.2 预测
向画布中拖入机器学习-->预测,将线性回归的输出和贷款预测集的数据视图分别输入到预测中,点击预测,在右侧设置字段
右击预测点击执行后,查看数据
3.2.2 SQL脚本
向画布中拖入工具-->SQL脚本,将预测结果输入到SQL脚本中,点击SQL脚本,在右侧输入SQL语句
select * from ${t1};
右击SQL脚本点击执行后,查看结果
3.2.3 合并列
向画布中拖入数据预处理-->数据合并-->和并列,将SQL脚本输出和贷款预测集中数据视图转换后的数据分别输入到合并列的关联左表和右表,点击合并列,在右侧选择字段
右击合并列点击执行后,查看数据
3.3 回归模型评估
通过回归模型评估组件对于回归模型进行评估。
向画布中拖入机器学习-->评估-->回归模型评估,将预测的结果输入到回归模型评估中,点击回归模型评估,在右侧选择原回归值
右击回归模型评估点击执行后,查看分析报告
下图是对分析报告中字段的解释
3.4 过滤与映射
通过过滤与映射组件筛选出可以获得贷款的人,这里的业务逻辑是针对每个客户,如果他被预测得到的还款能力大于他申请贷款的金额,就对他发放贷款。
向画布中拖入数据预处理-->采样与过滤-->过滤与映射,将合并列的关联节点输出到过滤与映射中,点击过滤与映射,在右侧选择字段并填写过滤条件
prediction_score-claimvalue>=0;
右击过滤与映射点击执行后,查看数据
3.5 全表统计
向画布中拖入统计分析-->全表统计,将过滤与映射的结果输出到全表统计中,右击全表统计点击执行后,查看数据