对于机器学习的定义:
Arthur Samuel的非正式定义:在不直接针对问题编程的情况下赋予计算机学习能力的一个研究领域。
TomMitchell :对于一个计算机程序来说,给他一个任务T和一个性能测量方法P,如果在经验E的影响下,P对T的测量结果得到了改进,那么就说该程序从E中学习。
总体上来讲,机器学习所采用的学习型算法相当有趣。它可以避免繁重的编程实现,通过相对简单的学习型算法来实现复杂的功能。
工具:MATLAB、Octave
课程的四个部分:
1、监督学习
1)回归问题
举例:给出大量一地区房价与面积的对应关系的已知数据,对数据进行拟合从而可以对某一面积的房子对应的房价作出预测。
2)分类问题
举例:给出肿瘤良性或者是恶性与年龄和大小的关系的大量数据,据此作出预测。如图所示,红色代表恶性,黑色代表良性。我们可以找出一条线将二者分开。
总的来说,监督学习是利用大量已知准确的样本来进行预测。
2、学习理论
通过学习理论,我们可以证明为什么学习型算法是有效的。同时也可以更好的利用机器学习这个工具。
3、无监督学习
对于无监督学习,没有训练样本这样的概念,只有一堆数据。无监督学习主要的关注点在于寻找数据中的特殊结构,从而进行分类。也就是说,无监督学习主要关注的不是预测结果的正确性(在没有训练样本的前提下也没有准确性这个命题)而是分类的准确性。这里的主要问题是聚类问题。如下图所示,输入的数据本身是无分类的,但是无监督算法可以发现数据之间可能存在如图所示的结构,所以就完成了聚类分析。无监督学习的经典问题是鸡尾酒问题。
4、强化学习
强化学习涉及到一个回报函数的问题。举个例子来说,如果一个人养的狗做了一件顺应此人心意的事,则这个人会说“好狗”并给予奖励;反之则说“坏狗”并进行惩罚。经过一段时间的训练,狗会偏向于做顺应主人心意的事来获取更多的奖励和“好狗”。个人感觉这有些类似于数学中的迭代,也有些类似于模电中的正反馈。