机器学习概述
机器学习
1. 定义
学科交叉.png 流程.png- 机器学习是多领域交叉学科,机器学习从业者需要掌握一定的编程技能、数理统计知识以及相应的专业领域知识。
- 机器学习研究的是计算机怎样模拟人类的学习行为,以获取新的知识或技能,并重新组织已有的知识结构使之不断改善自身。
- 简而言之,就是计算机从数据中学习出规律和模式,以应用在新数据上做预测的任务。
数据(Data)、学习算法(Learning Algorithm)、模型(Model)是机器学习三要素,机器学习的输入是数据(Data),学到的结果叫模型(Model)。从数据中学得模型这个过程通过执行某个学习算法(Learning Algorithm)来完成。
由上图可知:假设了Ground Truth f的存在,那么学习算法要做的就是找出某个映射,这个映射尽可能得接近f。在实际的训练过程中,学习算法会有一个假设集合(Hypothesis Set,记作H),这个集合包含所有候选的映射函数。学习算法做的事情就是从中选出最好的g,使得g越接近f越好。
因此机器学习可定义为:A takes D and H to get g(using data to compute hypothesis g that approximates target f)。
2. 历史
历史.jpgAI(人工智能)在上世纪中叶就已经诞生,1950年,一位名叫马文·明斯基(后被人称为“人工智能之父”)的大四学生与他的同学邓恩·埃德蒙一起,建造了世界上第一台神经网络计算机。这也被看做是人工智能的一个起点。巧合的是,同样是在1950年,被称为“计算机之父”的阿兰·图灵提出了一个举世瞩目的想法——图灵测试。
1956年,在由达特茅斯学院举办的一次会议上,计算机专家约翰·麦卡锡提出了“人工智能”一词。后来,这被人们看做是人工智能正式诞生的标志。就在这次会议后不久,麦卡锡从达特茅斯搬到了MIT。同年,明斯基也搬到了这里,之后两人共同创建了世界上第一座人工智能实验室——MIT AI LAB实验室。
二十世纪80年代,机器学习成为一个独立的科学领域,各种机器学习技术百花初绽。机器学习是人工智能领域中最能够体现智能的一个分支,也是发展最快的一个分支。机器学习有两大主流:
-
符号主义学习:其代表包括决策树和基于逻辑的学习(事实上,机器学习在20世纪80年代正是被视为“解决公式工程瓶颈问题的关键”而走上人工智能主舞台的)。
-
基于神经网络的连接主义学习:代表性技术是支持 向量机以及更一般的“核方法”。我们目前所说的机器学习方法,一般认为是统计机器学习方法。
2010年前后,随着大数据和计算机性能的提升,机器学习的新方向深度学习开始爆发。
3. 机器学习工作流程
工作流程2.png机器学习工作流程一般分为四步:
- 数据预处理
- 机器学习、训练模型
- 模型评估
- 预测新数据
4. 机器学习分类
根据训练数据是否有标注,机器学习问题大致划分为监督学习(Supervised Learning)和无监督学习(Unsupervised Learning)两大类:
- 监督学习:每个输入样本都有标注,这些标注就像老师的标准答案一样”监督“着学习的过程。而监督学习又大致分成两类:分类(Classification)和回归(Regression):
- 分类问题:标注是离散值,比如用户”点击“和”不点击“。如果标注只有两个值,则称为二分类,如果标注有多个值,则称为多分类。
- 回归问题:标注是连续值,比如如果问题是预测北京市房屋的价格,价格作为标注就是一个连续值,属于回归问题。
- 无监督学习:训练样本没有标注,无监督学习解决的典型问题是聚类(clustering)问题。比如对一个网站的用户进行聚类,看看这个网站用户的大致构成,分析下每类用户群的特点是什么。
此外,机器学习还有其他的类别,比如半监督学习、集成学习、深度学习、增强学习:
- 半监督学习:这类问题给出的训练数据,有一部分有标签,有一部分没有标签。我们想学习出数据组织结构的同时,也能做相应的预测。此类问题相对应的机器学习算法有自训练(Self-Training)、直推学习(Transductive Learning)、生成式模型(Generative Model)等。
机器学习常见算法如下图所示(详细分类见博客:http://blog.csdn.net/han_xiaoyang/article/details/50469334):
机器学习算法选择流程如下图:
算法树.png