概述
本文是基于学习整理慕课网‘初识机器学习理论篇’视频教程而作。老师视频地址”http://www.imooc.com/learn/717“。在此感谢老师的讲解。
机器学习概念
机器学习就是利用计算机从历史数据中找出规律,并把这些规律用到对未来不确定场景的决策。与传统的数据分析相比,区别如下:
- 传统数据分析的主体是人,依靠人的经验和知识水平;机器学习的主体是机器,抛弃对人的依赖。
- 机器学习数据量越大,找出的规律越精准。
- 从数据中找规律转换成数学规律和数学公式。
- 解决业务问题不同,数据分析,报告历史上发生的事情。机器学习,通过历史上发生的事情,来预测未来的事情。
- 技术手段不同数据分析:分析方式是用户(数据分析师)驱动的,交互式分析。分析能力受限于数据分析师的能力,数据属性和维度很有限。机器学习:分析方式是数据驱动的,自动进行知识发现。数据属性和维度数量级很大。
- 参与者不同:数据分析,分析师能力决定结果,目标用户是公司高层。机器学习,数据质量决定结果,目标用户是个体。
总结一下区别就是:交易数据VS行为数据、少量数据VS海量数据、采样分析VS全量分析、历史VS未来、用户驱动VS数据驱动、目标用户公司高层VS普通个体。
机器学习的典型应用
机器学习目前已经渗透在生活中了,可能你自己并没有意识到,举几个例子如下:
- 关联规则:啤酒+纸尿片,购物篮分析
- 聚类:用户细分精准营销
- 朴素贝叶斯:垃圾邮件检测
- 决策树:风险识别
- ctr预估:互联网广告:百度的前多少个词条(商业广告)(按照点击率排序)
- 协同过滤:推荐系统(淘宝购物车推荐)
- 自然语言处理:情感分析(对文本抓关键情感词),实体识别(提取文本主要数据,人名等)
- 深度学习:图像识别
- 更多应用:语音识别,人脸识别,手势控制,智慧机器人,实时翻译
常见的算法和分类
算法分类的三种方式
第一种分类根据算法中有没有y值(也就是结果、监督)进行分类
- 有监督学习:分类算法,回归算法。
- 无监督学习:聚类。
- 半监督学习:越学越好。
第二种分类根据要解决的问题分类
- 分类与回归
- 聚类
- 标注:为文本打标签
第三种分类训练模型的思想不一样
- 生成模型:关键词模糊判断、百分比、概率。
- 判别模型:判断属于哪个类型。
第一种是概率性的给出答案,(比如有百分之多少属于A,百分之多少属于B。。。。)第二种是直接给出答案(属于B)。这种分类用来判别两种算法的本质区别。
常见的算法
挖掘主题 算法 发表时间
分类 C4.5 1993
聚类 K-Means 1967
统计学习 SVM 1995
关联分析 Apriori 1994
统计学习 EM 2000
链接挖掘 PageRank 1998
集装与推进 AdaBoost 1997
分类 kNN 1996
分类 Naive Bayes 2001
分类 CART 1984
解决问题
哈哈,所有不以业务需求为目标的机器学习都是耍流氓。
- 业务需求
- 数据
- 特征工程
也就是先要有业务需求,我们要做什么,然后围绕我们需要做的去收集数据,然后用数据建立特征工程,特征工程可以看作是数据的预处理。比如数据的清洗和整合,提取。转换。推荐参考python数据挖掘与分析。根据要解决的问题提取出特征。
总结:数据的质量决定上界,特征工程类似于专家的经验,决定能多么逼近上界,特征工程最重要,重要程度占比可能70%。
训练模型
- 定义模型
- 定义损失函数
- 优化算法
模型类似于一个公式,损失函数,就是定义偏差的大小,机器学习解决的问题,不能得到精确解,寻找近似解,寻找偏差最小的函数,针对很大的数据集,就是损失函数。让损失函数求最小,就是优化算法。
模型评估
- 交叉验证
- 效果评估
就是验证生成出来的模型效果好不好,如果最终的指标不求得满足的话,要重新调整特征工程,或是重新求得模型的参数,这是一个不断迭代的过程。