机器学习关键步骤(一)

机器学习有四个关键步骤。

(1) 数据准备,理和准备待分析的数据。
(2) 算法选择,根据需求挑选算法为数据建立模型。
(3) 参数调优,优化模型结果。
(4) 模型评估,根据准确度评价模型选出最好的。

1数据准备

1 准备数据

数据科学就是关于数据的科学。如果数据的质量差,那么分析得再精确也只能得到平淡无奇的结果。本节将介绍数据分析中常用的数据格式,还会涉及一些用来改进结果的数据处理方法。

1.1 数据格式

在数据分析中,表格是最常用的数据表示形式,如表 所示。表格中的每一行就是一个数据点,代表一个观测结果;每一列是一个变量,用来描述数据点。变量也叫属性、特征或维度。

假设一些动物顾客去超市购物,以下是交易数据集。每一行代表一笔交易,每一列则描述交易的某一方面信息

根据需求,可以更改每行观测的类型。例如,通过下表这种表示形式,我们可以借助大量交易来研究交易模式。但是,如果想根据日期研究交易模式,则需要以行为单位汇总每一日的数据。为了分析得更全面,可以另外再添加几个变量,比如天气等,如表所示。

根据日期汇总后的交易数据集,并且另外添加了几个变量

1.2 变量类型

变量主要有 4 类,正确区分它们对于为算法选择合适的变量至关重要。

二值变量:这是最简单的变量类型,它只有两种可能的值。在表中,“是否买鱼”就是二值变量。
分类变量:当某信息可以取两个以上的值时,便可以使用分类变量来表示它。在表中,“顾客类别”就是分类变量。
整型变量:这种变量用来描述可以使用整数表示的信息。在表中,“水果购买量”就是整型变量,它表示每位顾客所购水果的数量。
连续变量:这是最精细的变量,用来表示小数。在表中,“支出”就是连续变量,它表示每位顾客花费的金额。

1.3 变量选择

原始数据集可能包含许多变量。往一个算法中放入过多变量,可能导致计算速度变慢,或者因干扰过多而产生错误的预测结果。因此,需要从众多变量中筛选出那些与研究目标密切相关的变量,这个过程就是变量选择。

通常,变量选择是一个试错的过程,需要根据反馈结果不断更换变量。一开始,可以借助简单的图来研究变量之间的相关性(详见 6.5 节),选取那些最有希望的变量,以待进一步分析。

1.4 特征工程

有时候,需要做一些处理才能获得最佳变量。例如,如果要预测表 1-1 中的哪些动物顾客不会买鱼,可以通过查看“顾客类别”获知,兔子、马和长颈鹿不会买鱼。不过,如果以食草动物、杂食动物和食肉动物这 3 大类划分表中的动物顾客,将得到更广义的结论:食草动物不吃鱼。

除了对单个变量进行重新编码之外,还可以合并多个变量,这个技巧叫作降维。降维可以提取最有用的信息,从而获得更精简的变量集,以供进一步分析。

1.5 缺失数据

收集的数据并非总是完整的。比如,在最后一笔交易中,水果购买量就没有被记录下来。数据缺失会妨碍分析,因此要尽可能地使用如下一些方法来解决数据缺失问题。

近似:如果缺失值所属的类型为二值变量或分类变量,那么可以使用该变量的众数(即出现次数最多的那个值)来替换它。若缺失值属于整型变量或连续变量,则可以使用中位数来替换它。利用这个方法,可以将表中的缺失值替换为 5,即猫购买了 5 个水果,因为其他 7 笔交易中水果购买量的中位数为 5。
计算:对于缺失值,还可以使用更高级的监督学习算法将它计算出来。虽然计算更耗时,但是所得到的数值更准确,这是因为算法基于类似交易来估算缺失值,这一点与近似方法(考虑每一笔交易)有所不同。从表可知,买鱼的顾客购买的水果往往比较少,因此推断猫购买的水果大约只有 2 个或 3 个。
移除:万不得已时,可以把包含缺失值的整行数据移除。但是,尽量不要这样做,因为这会减少分析时可用的数据量。而且,移除数据点可能会导致数据样本倾向或偏离特定的群体。例如,猫可能不太愿意公开自己所购水果的数量,如果把未记录水果购买量的顾客移除,那么最终的样本就会丢失有关猫的数据。
处理完数据集之后,就该对数据集进行分析了。

推荐参考学习书籍:白话机器学习算法

机器学习关键步骤(一)相关推荐

  1. 机器学习关键步骤(四)

    机器学习关键步骤(四) 机器学习有四个关键步骤. (1) 数据准备,理和准备待分析的数据. (2) 算法选择,根据需求挑选算法为数据建立模型. (3) 参数调优,优化模型结果. (4) 模型评估,根据 ...

  2. 机器学习关键步骤(二)

    机器学习关键步骤(二) 机器学习有四个关键步骤. (1) 数据准备,理和准备待分析的数据. (2) 算法选择,根据需求挑选算法为数据建立模型. (3) 参数调优,优化模型结果. (4) 模型评估,根据 ...

  3. ML之回归预测:机器学习中的各种Regression回归算法、关键步骤配图

    ML之回归预测:机器学习中的各种Regression回归算法.关键步骤配图 目录 机器学习中的各种回归算法 1.回归算法代码 2.各种回归算法 3.各种回归算法大PK 机器学习中的各种回归算法 1.回 ...

  4. 机器学习关键的几门课程_互联网上每门机器学习课程,均按您的评论排名

    机器学习关键的几门课程 by David Venturi 大卫·文图里(David Venturi) 互联网上每门机器学习课程,均按您的评论排名 (Every single Machine Learn ...

  5. EL:集成学习(Ensemble Learning)的概念讲解、问题应用、算法分类、关键步骤、代码实现等相关配图详细攻略

    EL:集成学习(Ensemble Learning)的概念讲解.算法分类.问题应用.关键步骤.代码实现等相关配图详细攻略 目录 集成学习Ensemble Learning 1.集成学习中弱分类器选择 ...

  6. 构建机器学习系统步骤

    构建机器学习系统 我们使用机器学习预测模型的工作流程讲解机器学习系统整套处理过程. 整个过程包括了数据预处理.模型学习.模型验证及模型预测.其中数据预处理包含了对数据的基本处理,包括特征抽取及缩放.特 ...

  7. 构建和管理有效API市场的关键步骤

    API市场关键要点 各个行业的公司正在寻找通过外部API扩展服务来塑造数字业务的方法.然而,要获得API的真正好处,是需要超越基本的API管理,再到创建API市场,这是一种专注于连接生产者和消费者的专 ...

  8. 6个关键步骤,手把手教你构建图模型

    导读:图模型作为当前流行的信息处理加工技术,自提出以来,迅速在学术界和工业界得到了普及,在智能推荐.决策分析等方面有着广泛的应用. 作者:华为公司数据管理部 来源:大数据DT(ID:hzdashuju ...

  9. 谷歌VR/AR业务副总裁:Daydream是关键步骤,要解决设备摩擦问题

    [转] http://36kr.com/p/5076363.html 编者按:2017年谷歌 I/O 开发者大会开幕前,谷歌虚拟现实和增强现实副总裁 Clay Bavor 在 Medium 上分享了一 ...

最新文章

  1. poj 2288 Islands and Bridges_状态压缩dp_哈密尔顿回路问题
  2. 重庆python就业工资待遇-重庆达内毕业的Python学员都在做什么?能拿多少工资?...
  3. 再谈对比学习:更好的对比样本选择,更好的对比效果
  4. Android-简单拨号器案例
  5. 支付宝前端开源框架Alice(解决各个浏览器的样式不一致的问题)
  6. mysql分页查询减轻压力_mysql分页查询优化
  7. 为什么要使用React Hooks?(5分钟实例)
  8. [转]让.NET应用秒变微服务
  9. cursor 过滤 android,Android cursor query方法详解
  10. asp.net 安装element ui_不用上官网,自己部署一套Element官方最新文档
  11. AINLP-Archive:AINLP文章存档计划
  12. MySQL的使用笔记
  13. vs vb连接mysql_详细介绍VS2010 VB ACCESS数据库的连接(如有不对,敬请改正)
  14. Galaxy Digital CEO:比特币应能守住4万美元关口
  15. git生成SSH密钥提示ssh文件不存在-已解决
  16. “内心强大的人”依然会被移出首页
  17. 支持有道词典单词本更新
  18. Python多进程 struct.error: ‘i‘ format
  19. 投影仪光源与亮度科普
  20. 科学论文的写作内容与要求

热门文章

  1. 单片机中的上电复位 和手动复位
  2. 常见的web服务器有哪些
  3. Design Compiler知识点汇总
  4. Spring5的IOC容器
  5. RedHat7.4安装
  6. MySQL视图 视图的作用、视图常用语法
  7. ADXL345 驱动代码
  8. 易语言认识易语言数据类型
  9. postgresql 执行sql文件
  10. 头歌 数据结构与算法答案 善用目录