【机器学习PAI实践二】人口普查统计
一、背景
感谢大家关注玩转数据系列文章,我们希望通过在阿里云机器学习平台上提供demo数据并搭建相关的实验流程的方式来帮助大家学习如何通过算法来挖掘数据中的价值。本系列文章包含详细的实验流程以及相关的文档教程,欢迎大家进入阿里云数加机器学习平台体验。实验案例请在新建实验页签查看,如下图。 
本章作为玩转数据系列的开篇,先提供一个简单的案例给大家热身。通过截取一份人口普查的数据,对学历和收入进行统计和分析。主要目的是帮助大家学习阿里云机器学习实验的搭建流程和组件的使用方式。任何关于阿里云机器学习方面的交流欢迎访问我们的云栖社区公众号。
二、数据集介绍
数据源: UCI开源数据集Adult
针对美国某区域的一次人口普查结果,共32561条数据。具体字段如下表:
| 字段名 | 含义 | 类型 |
|---|---|---|
| age | 年龄 | double |
| workclass | 工作类型 | string |
| fnlwgt | 序号 | string |
| education | 教育程度 | string |
| education_num | 受教育时间 | double |
| maritial_status | 婚姻状况 | string |
| occupation | 职业 | string |
| relationship | 关系 | string |
| race | 种族 | string |
| sex | 性别 | string |
| capital_gain | 资本收益 | string |
| capital_loss | 资本损失 | string |
| hours_per_week | 每周工作小时数 | double |
| native_country | 原籍 | string |
| income | 收入 | string |
三、数据探索流程
选中人口统计demo,从模型生成实验,如下图: 
使用方式:
-用户通过从左边列表拖拽组件到试验区域搭建实验流程
-在配置区域对每个组件的参数进行设置
1.数据导入
机器学习平台的底层计算式阿里云分布式计算系统MaxCompute(原名ODPS),所以实验数据需要先导入到ODPS表里,用户可以通过读ODPS表(图中的数据源-人口统计)组件导入数据。上传成功后,右键组件可以查看数据,如下图: 
2.理解数据
数据导入后就可以对数据进行分析了,整个实现从纵向看分为三个部分。 
其中全表统计和数值分布统计是帮助用户更好的理解一份数据,理解一份数据是符合泊松分布或是高斯分布,连续或是离散的对之后的算法的选择会有一定帮助(具体的对照关系在之后的文章会详细介绍)。阿里云机器学习的每个套件都提供了可视化显示结果的功能,下图是数值统计的直方图组件结果,可以清楚地看到每个输入数值的分布情况。

3.统计不同学历的人员的收入情况
每个人都想增加收入,都想知道哪些因素对收入的影响最大。这些问题都可以通过提取特征,利用机器学习算法训练来得到。本文主要目的是简单介绍一下机器学习平台的使用方法,这里简单的针对不同学历的人员的收入做一下统计。
(1)数据的预处理
我们看到在收入统计的这条线上,数据流入的第一个组件是SQL脚本(如下图),机器学习平台提供SQL脚本对于数据进行处理。这里是将string型的income字段转换成二值型的0和1的形式。0表示年收入在50K以下,1表示年收入在50K以上。这种将文本数据数值化是机器学习特征处理的常用方式,以后会经常用到这种方式。 
(2)过滤与映射
这一步主要是通过过滤与映射组件将数据按照学历分为三部分,分别是博士、硕士和学士。过滤与映射底层是SQL语法,支持where过滤条件,用户通过在右边的配置栏填写过滤条件即可。 
(3)统计结果
通过每个百分位组件就可以方便的得到每个分类下的收入比例。下图是调成折线图的展示效果,结果中为0的点也就是年收入在50K以下的人群占比例百分之25左右。 
结合三个百分位组件就可以得到如下图结果。
| 学历 | 年收入>50K比例 |
|---|---|
| 博士 | 75% |
| 硕士 | 57% |
| 学士 | 42% |
四、其它
作者微信公众号:
凡人机器学习

【机器学习PAI实践二】人口普查统计的更多相关文章
- 【机器学习PAI实践十二】机器学习算法基于信用卡消费记录做信用评分
背景 如果你是做互联网金融的,那么一定听说过评分卡.评分卡是信用风险评估领域常用的建模方法,评分卡并不简单对应于某一种机器学习算法,而是一种通用的建模框架,将原始数据通过分箱后进行特征工程变换,继而应 ...
- [置顶]
【机器学习PAI实践五】机器学习眼中的《人民的名义》
一.背景 最近热播的反腐神剧"人民的名义"掀起来一波社会舆论的高潮,这部电视剧之所能得到广泛的关注,除了老戏骨们精湛的演技,整部剧出色的剧本也起到了关键的作用.笔者在平日追剧之余, ...
- [置顶]
【机器学习PAI实践九】如何通过机器学习实现云端实时心脏状况监测
背景 我们通过之前的案例已经为大家介绍了如何通过常规的体检数据预测心脏病的发生,请见http://blog.csdn.net/buptgshengod/article/details/53609878 ...
- 【机器学习PAI实践一】搭建心脏病预测案例
一.背景 心脏病是人类健康的头号杀手.全世界1/3的人口死亡是因心脏病引起的,而我国,每年有几十万人死于心脏病. 所以,如果可以通过提取人体相关的体侧指标,通过数据挖掘的方式来分析不同特征对于心脏病的 ...
- [置顶]
【机器学习PAI实践十一】机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码
背景 最近互联网上出现一个热词就是"freestyle",源于一个比拼rap的综艺节目.在节目中需要大量考验选手的freestyle能力,freestyle指的是rapper即兴的 ...
- 【机器学习PAI实践十】深度学习Caffe框架实现图像分类的模型训练
背景 我们在之前的文章中介绍过如何通过PAI内置的TensorFlow框架实验基于Cifar10的图像分类,文章链接:https://yq.aliyun.com/articles/72841.使用Te ...
- [置顶]
【机器学习PAI实践七】文本分析算法实现新闻自动分类
一.背景 新闻分类是文本挖掘领域较为常见的场景.目前很多媒体或是内容生产商对于新闻这种文本的分类常常采用人肉打标的方式,消耗了大量的人力资源.本文尝试通过智能的文本挖掘算法对于新闻文本进行分类.无需任 ...
- [置顶]
【机器学习PAI实践六】金融贷款发放预测
一.背景 很多农民因为缺乏资金,在每年耕种前会向相关机构申请贷款来购买种地需要的物资,等丰收之后偿还.农业贷款发放问题是一个典型的数据挖掘问题.贷款发放人通过往年的数据,包括贷款人的年收入.种植的作物 ...
- [置顶]
【机器学习PAI实践四】如何实现金融风控
(本文数据为虚构,仅供实验) 一.背景 本文将针对阿里云平台上图算法模块来进行实验.图算法一般被用来解决关系网状的业务场景.与常规的结构化数据不同,图算法需要把数据整理成首尾相连的关系图谱.图算法更多 ...
随机推荐
- C++学习笔记——大杂烩
C++学习笔记--大杂烩 by方阳 版权声明:本文为博主原创文章,转载请指明转载地址 h ...
- ionic搭建与基础
ionic搭建与基础 一.环境搭建 安装 npm install -g cordova npm install -g ionic 创建 项目 ionic start MyProject blank i ...
- JAVAEE——SSH项目实战01:SVN介绍、安装和使用方法
1 学习目标 1.掌握svn服务端.svn客户端.svn eclipse插件安装方法 2.掌握svn的基本使用方法 2 svn介绍 2.1 项目管理中的版本控制问题 通常软件开发由多人协作开发,如果对 ...
- 设置select标签的高度
当无法给select标签设置高度的时候,给他加一个背景色,就可以设置了.
- 从一个针对ASP.NET MVC框架的Controller.Action的请求处理顺序来说整个请求过程。
下面引用的所有代码都来自ASP.NET MVC的源码,但是可能只选取每个方法的其中一部分. System.Web.Routing.UrlRoutingModule在管道事件中注册PostResolve ...
- [jbdj]SpringMVC框架(3)映射器
映射器:什么样的请求交给Action. 1} class : BeanNameUrlHandlerMapping 要掌握, 将程序员定义的Action所对应的<bean>标签的nam ...
- PHP面向对象 ——多态
接口 接口(interface)是抽象方法和静态常量定义的集合. 接口是一种特殊的抽象类,这种抽象类中只包含抽象方法和静态常量. 接口中没有其它类型的内容 接口的定义 /** * 接口可以认为是特殊的 ...
- css 2D转换 transform-rotate 画插图
学习了一点2D转换,关于Transfrom-rotate的小用法 rotate()方法,在一个给定度数顺时针旋转的元素.负值是允许的,这样是元素逆时针旋转. 下面看实例 第一个例子是没有使用rotat ...
- POJ 2296 Map Labeler / ZOJ 2493 Map Labeler / HIT 2369 Map Labeler / UVAlive 2973 Map Labeler(2-sat 二分)
POJ 2296 Map Labeler / ZOJ 2493 Map Labeler / HIT 2369 Map Labeler / UVAlive 2973 Map Labeler(2-sat ...
- 分享网上搜到的Oracle中对判定条件where 1=1的正解
今天在网上找到了Oracle中对判定条件where 1=1的正解,粘贴出来和大家分享下 1=1 是永恒成立的,意思无条件的,也就是说在SQL语句里有没有这个1=1都可以. 这个1=1常用于应用程序根据 ...