您的位置:首页 > 其它

机器学习的动机与应用

2016-07-18 20:01 169 查看
《Andrew Ng 机器学习笔记》这一系列文章文章是我再观看Andrew Ng的Stanford公开课之后自己整理的一些笔记,除了整理出课件中的主要知识点,另外还有一些自己对课件内容的理解。同时也参考了很多优秀博文,希望大家共同讨论,共同进步。

网易公开课地址:http://open.163.com/special/opencourse/machinelearning.html

参考博文:http://www.cnblogs.com/jianxinzhou/p/4019949.html

课程分为四个部分:

(1)supervised Learning (监督学习)

(2)Learning Theory (学习理论)

(3)Unsupervised Learning (无监督学习)

(4)Reinforcement Learning (强化学习)


What is machine learning

Arthur Samuel 1959年(亚瑟·塞穆尔)的定义: Field of study that gives computers the
ability to learn without being explicitly programmed.

【在没有明确为计算机编写(完成某项具体任务的)程序的情况下,让计算机拥有 “学习” 能力的一个研究领域。】

 Tom Mitchell 1998年的定义: A computer program is said to learn
from experience E with respect to some task T and some performance measure P, if its performance on T, as measured by P, improves with experience E.

【如果一个计算机程序在任务
T 上的性能度量 P ,通过经验 E 而提高,那么我们称这个计算机程序通过经验 E 来学习。】

Supervised Learning

1、以房屋面积(Size in feet²)和房价(Price)为例:(这是一个回归问题)



我们目前已经收集到了一组数据,并且可以认为这组数据是房屋面积和对应房价的一组正确数据,我们采用直线或者二次函数去拟合这组数据(可以看出这个例子中二次函数更加符合),我们的目的是当给出一个新的房屋面积时,可以计算出更正确的房价,这也就是我们所说的回归问题。

回归问题要求我们将预测的结果看作是连续的。(不是离散的)
像这种我们给学习算法一个数据集,这个数据集由一组“正确答案”组成,这类机器学习算法就叫着监督学习。

2、以肿瘤大小(Tumor Size)和肿瘤是否为恶性(maligant为恶性记为1,benign为良性记为0)为例:(这是一个分类问题)



     
 同样目前我们搜集了一组肿瘤大小和其是否为良性的数据,这是一组为0或者为1的离散值,我们的目的是当有一个新的肿瘤时,可以根据它的大小将其进行正确分类。
      在上面这个例子中,我们判断肿瘤是否为良性是依靠肿瘤大小。然而在实际生活中,单凭这一个特征是无法正确分类的,可能还需要参考患者年龄、肿块厚度、细胞大小的一致性、细胞形状的一致性等等很多输入量。
      例如当我们有两个特征:肿瘤大小和患者年龄 时,可以得到下图:(X表示恶性肿瘤,O表示良性肿瘤)



       我们找到一条直线将不同性质的肿瘤分开,当有一个新的肿瘤时,就可以根据其大小以及患者年龄进行更正确的分类。
       那当我们有更多的特征变量时,我们无法在二维,三维甚至任何有限维空间中表示出来,当这个数据是一个无限维时,要如何处理?
      此时,就可以使用一个被称为支持向量机的算法,这个算法可以把数据映射到无限维空间中
    【这是一个非常有趣的问题,试想我们该如何将一个无限维的向量映射到电脑内存中?我们当然不可能
ba2d
有一个无限的计算机,所以我们要如何表示这个无限维空间中的点呢?】

Unsupervised Learning

以上面肿瘤为例,在上述supervised Learning例子中,我们已经有了一组分类的正确答案,即我们已经知道哪些是恶性肿瘤哪些是良性肿瘤。(X表示恶性,O表示良性)



而在Unsupervised Learning中,我们只是得到了一组数据,但并不知道这些数据代表什么意思,(如下图)这时就要求我们要自己找到这些数据中存在何种结构,有什么特点。



     
 对于上图给定的数据集,Unsupervised Learning 可能判定该数据集包含两个不同的聚类。
     Unsupervised Learning 会把这些数据分成两个不同的聚类,这就是所谓的聚类算法

    
      之后本节课程中列举了一些聚类算法的实例,这里不做更多介绍,感兴趣的同学可以观看公开课了解。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  机器学习