什么是机器学习

本文主要通过一个典型的例子介绍什么是机器学习以及机器学习里常见的一些概念。

例子

一个顾客想申请招商银行信用卡,招商银行让这个顾客填写一些基本资料,假设整个申请表一共只有五项(真实的申请表会被这五个选项要多得多)。

性别
年龄 23
工作年限 0.5
年收入 10万
负债 1万

假如你是招商银行信用卡负责人,你会给她发放信用卡吗?实际上你想知道的是给她发放信用卡对银行有好处还是坏处。你可能有点摸不着头脑,不知道到底是给不给这位顾客发送信用卡,正在焦头烂额之时,领导又来电话了:“张某某上上个月刷了一万块,还款日都过去半个月了,怎么还不见他还钱?当初是怎么通过他的审核给他发送信用卡的?blabla。。。”这时候你多么希望手上掌握一个非常完美的公式,只要用这个公式一算,得到一个分数,就知道是不是应该给张某某,李某某。。。发放信用卡啊,而且这个完美的公式的确很完美,不会犯错误。无奈你根本找不到这个公式,于是你想凭借自己的聪明才智攒一个公式出来,所以你想整理一下已经拥有行用卡的顾客的消费数据,希望根据这些数据发明一个公式,而且这个公式跟那个完美的公式长得越像越好。

从这个例子,我们引出一些基本概念:

输入空间(Input)

输入所有可能取值的集合。上面的例子,输入实际上是一个五维的向量,所以输入空间就是这个向量所有的可能取值。

输出空间(Output)

输出所有可能取值的集合。上面的例子,输出空间就是是和否,或者有好处,有坏处...

输入空间和输出空间可以是同一个空间,也可以是不同的空间,通常输出空间远小于输入空间。

目标函数(Target function)

就是例子中的完美公式。

训练数据集(Training data)

例子中已经拥有信用卡的顾客的消费数据。

假设(Hypothesis)

例子中发明的公式就是一个假设。

我们期望的是“假设”和“目标函数”长得越像越好,那到底“假设”长什么样呢?

假设1:年收入大于8万就发放信用卡,小于8万就不发。

假设2:女性就发放信用卡,否则不发。

。。。

假设N:。。。

假设空间(Hypothesis set)

所有上面的那些假设就构成了假设空间,一般假设空间里的假设有无穷多个。

模型(Model)

在李航博士的统计学习方法里,假设又可以叫模型,如果模型是一个线性模型,那模型对应的假设空间就是所有线性函数构成的函数集合。

策略(Strategy)

有了模型的假设空间,接下来需要考虑的是采取什么样的准则选择最优的模型。一般都是先定义好风险损失函数,采取最小化损失函数的策略。

算法(Algorithm)

算法是指学习模型的具体计算方法,一般如我们常说的梯度下降法,牛顿法,向后传播算法等等。

 

最后借用台湾国立大学林轩田老师的一副图来描述什么是机器学习:Machine learning is using "data" to compute hypothesis "g" that approximates target "f"。

 

 

典型机器学习例子

  • 垃圾邮件检测:根据邮箱中的邮件,识别哪些是垃圾邮件,哪些不是。这样的模型,可以程序帮助归类垃圾邮件和非垃圾邮件。这个例子,我们应该都不陌生。
  • 信用卡欺诈检测:根据用户一个月内的信用卡交易,识别哪些交易是该用户操作的,哪些不是。这样的决策模型,可以帮助程序退还那些欺诈交易。
  • 数字识别:根据信封上手写的邮编,识别出每一个手写字符所代表的数字。这样的模型,可以帮助程序阅读和理解手写邮编,并根据地利位置分类信件。
  • 语音识别:从一个用户的话语,确定用户提出的具体要求。这样的模型,可以帮助程序能够并尝试自动填充用户需求。带有Siri系统的iPhone就有这种功能。
  • 人脸识别:根据相册中的众多数码照片,识别出那些包含某一个人的照片。这样的决策模型,可以帮助程序根据人脸管理照片。某些相机或软件,如iPhoto,就有这种功能。
  • 产品推荐:根据一个用户的购物记录和冗长的收藏清单,识别出这其中哪些是该用户真正感兴趣,并且愿意购买的产品。这样的决策模型,可以帮助程序为客户提供建议并鼓励产品消费。登录Facebook或GooglePlus,它们就会推荐可能有关联的用户给你。
  • 医学分析:根据病人的症状和一个匿名的病人资料数据库,预测该病人可能患了什么病。这样的决策模型,可以程序为专业医疗人士提供支持。
  • 股票交易:根据一支股票现有的和以往的价格波动,判断这支股票是该建仓、持仓还是减仓。这样的决策模型,可以帮助程序为金融分析提供支持。
  • 客户细分:根据用户在试用期的的行为模式和所有用户过去的行为,识别出哪些用户会转变成该产品的付款用户,哪些不会。这样的决策模型,可以帮助程序进行用户干预,以说服用户早些付款使用或更好的参与产品试用。
  • 形状鉴定:根据用户在触摸屏幕上的手绘和一个已知的形状资料库,判断用户想描绘的形状。这样的决策模型,可以帮助程序显示该形状的理想版本,以绘制清晰的图像。iPhone应用Instaviz就能做到这样。

机器学习问题的类型

通过上述的机器学习问题的实例,你一定已经意识到一些相似性之处。这种技能很有价值,因为擅长从现象看本质,使得你可以高效的思考需要的数据和可尝试的算法类型。
关于机器学习,有一些常见的分类。以下这些分类,是我们在研究机器学习时碰到的大多问题都会参考的典型。
  • 分类:标记数据,也就是将它归入某一类,如垃圾/非垃圾(邮件)或欺诈/非欺诈(信用卡交易)。决策建模是为了标记新的未标记的数据项。这可以看做是辨别问题,为小组之间的差异性或相似性建模。
  • 回归:数据被标记以真实的值(如浮点数)而不是一个标签。简单易懂的例子如时序数据,如随着时间波动的股票价格。这个建模的的决策是为新的未预测的数据估计值。
  • 聚类:不标记数据,但是可根据相似性,以及其他的对数据中自然结构的衡量对数据进行分组。可以从以上十个例子清单中举出一例:根据人脸,而不是名字,来管理照片。这样,用户就不得不为分组命名,如Mac上的iPhoto。
  • 规则提取:数据被用作对提议规则(前提/结果,又名如果)进行提取的基础。这些规则,可能但不都是有指向的,意思是说,这些方法可以找出数据的属性之间在统计学上有说服力的关系,但不都是必要的涉及到需要预测的东西。例如非常著名的啤酒与尿布.

 

参考资料

[1]: 统计学习方法 李航著

[2]: 机器学习基石 https://class.coursera.org/ntumlone-002

[3]: http://dataunion.org/bbs/forum.php?mod=viewthread&tid=806&extra=page%3D1

posted @ 2014-11-11 18:28  Lei Jun  阅读(723)  评论(0编辑  收藏  举报