Machine Learning学习笔记-第一周

来源:互联网 发布:avast 小红伞 知乎 编辑:程序博客网 时间:2024/05/21 22:33

前言

机器学习看上去是很高深莫测的技术,不过机器学习其实就在我们身边。淘宝、亚马逊上的商品推荐;垃圾邮件的识别过滤;无人机与自动驾驶;iOS/谷歌照片的自动分类等,都是机器学习的例子。那么,究竟什么是机器学习呢?
关于机器学习,并没有明确的定义。下面给出两位科学家给出的关于机器学习的解释:

Machine Learning: Field of study that gives computers the ability to learn without being explicitly programmed.–Arthur Samual(1959)
(机器学习:使计算机在未针对性编程的情况下获得学习能力的研究领域。——亚瑟·塞缪尔1959)

(中文是我自己翻译的,包括后文的许多内容都是自己翻译的,希望能帮助理解叭)亚瑟自己并不是国际象棋高手,不过他写的国际象棋程序自我对战了成千上万次后,该国际象棋程序的技术最终超过了亚瑟的国际象棋技术。(是不是想到了最近又掀起波澜的AlphaGo Zero阿尔法元~)这是关于机器学习比较老且非正式的定义。

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.–Tom Mitchell(1998)
(关于某项任务T,以及某项性能测量P,如果计算机程序在某项任务T上的性能,通过P指标测量,随着试验E而有所增加,则可以说明该计算机程序通过试验E得到了学习。——汤姆·米切尔1998)

在Coursera的课程的小quiz中有这么一道题:

假设你的邮件系统观察你把哪些邮件标记为垃圾邮件,并据此学习如何更好地过滤垃圾邮件。在该系统设定中任务T指的是什么?
A. 将邮件归类为垃圾邮件或普通邮件
B. 观察你将哪些邮件标记为垃圾邮件
C. 邮件正确归类的数量(比例)
D. 上述均不正确——这不是一个机器学习问题

按T/P/E归类的话,A选项为任务P,B选项为试验E,C选项则为性能P。

机器学习算法

  • 监督学习(Supervised learning)
  • 非监督学习(Unsupervised learning)

其他还有强化学习(Reinforcement learning),推荐系统(Recommender systems)等。不过在该课程中主要还是讲解监督学习和无监督学习。(推荐系统方面推荐阅读几篇论文吧:Item-based Collaborative Filtering Recommendation Algorithms、Amazon.com Recommendations Item-to-Item Collaborative Filtering。其中第一篇的英文版阅读笔记包括部分代码实现发表于我的个人博客,欢迎阅读)

监督学习

之所以称为监督学习,是因为在给定数据集的条件下,我们已经知道了正确的输出结果,即了解输入输出之间的关系。
监督学习分为回归(Regression)问题和分类(Classification)问题。简单地理解就是回归问题的输出是连续的,而分类问题的输出是离散的。下面分别举一个回归的例子和一个分类的例子(都是Coursera课程中的例子)。

回归问题
房价预测

在上图中,横坐标表示房屋的面积,纵坐标表示房价(单位为$1000)。根据已知数据集的数据,将已知数据都绘制于图上。如何根据这些结果预测房价呢?我们可以绘制曲线来尽可能拟合这些数据,可以使用直线、二次三次曲线、指数对数曲线等。不管怎样,房价都视为连续的变化量,所以这是个回归问题。

线性

曲线

注意不同的曲线拟合程度不同,给出的预测结果也不尽相同。例如若以线性表示房价,则750平方英尺的房价约$180,000,而若以类对数曲线表示,则750平方英尺对应的房价约$200,000。机器学习的一大目标便是尽可能地减小误差,使预测值更接近于真实值。

分类问题
乳腺癌肿瘤良性与尺寸的关系

上图显示的是肿瘤的恶性与否与肿瘤大小的关系。其中0(N)表示肿瘤是良性的,1(Y)表示肿瘤是恶性的。肿瘤要么是良性的,要么是恶性的,所以取值要么是0,要么是1,没有其他的取值。因为输出结果是离散的(只有0和1两个值),所以这是个分类问题。

根据已知的数据集,机器学习可以根据肿瘤大小,较高准确度地判断该肿瘤是否为恶性肿瘤。(当然这看上去很简单,目测都可以判断。不过实际情况下肿瘤的恶性还与年龄、肿块密度、细胞大小均匀性等因素有关,当因素的数目增多,就不能依靠目测等方法,而需要用到机器学习。机器学习可以处理无穷多的因素。)

非监督学习

监督学习是在给定“正确答案”的数据集里进行学习,我们已经知道了部分输入对应的输出结果。而非监督学习则是在没有(或者说极少数)“正确答案”的情况下的机器学习。非监督学习一般可以分为两类:聚类(Clustering)和非聚类(Non-clustering)。

聚类
取100万个不同的基因,根据平均寿命、所处位置、作用等特点,找出一种方式将这些基因根据相似的特点进行自动分组。这就是一种聚类。

非聚类
比较有名的是”鸡尾酒宴会模型“,使得你可以在混乱的环境中分辨出特定结构。(比如在鸡尾酒宴会的嘈杂声音中分辨出人声和背景音乐)

单变量线性回归

首先介绍一些符号表示:
m: 训练集中的样本数目
x: 输入变量 / 特征值
y:输出变量 / 目标变量
(x(i),y(i)): 表示第i个样本。注意是用上标(i)表示,下标的话因为是单变量所以可以省略,若多变量则用x(i)j 表示第j个变量(特征)。关于多变量会在下周笔记中详细解释。

假设函数和成本函数

关于监督学习少正式的定义是:给定一个训练集,学习一个函数h:X→Y,使h(x)能较准确地“预测”y的值。(由于历史原因,函数h称为假设函数hypothesis function)。
单变量的线性假设方程可以表示为

hθ(x)=θ0+θ1x

(也许我们更熟悉y=kx+b的表示形式。

阅读全文
0 0