
14
|
第
1
章
1.1 什么是机器学习
机器学习是一门通过编程让计算机从数据中进行学习的科学(和艺术)。
下面是一个稍微通用一点的定义:
机器学习是一个研究领域,让计算机无须进行明确编程就具备学习能力。
—
亚瑟
·
萨缪尔(Arthur Samuel), 1959
更工程化的概念:
一个计算机程序利用经验
E
来学习任务
T
,性能是
P
,如果针对任务
T
的性能
P
随着经
验
E
不断增长,则称为机器学习。
—
汤姆
·
米切尔(Tom Mitchell), 1997
例如,垃圾邮件过滤器就是一个机器学习程序,它可以根据垃圾邮件(比如,用户标记
的垃圾邮件)和普通邮件(非垃圾邮件,也称作 ham)学习标记垃圾邮件。系统用来进
行学习的样例称作训练集。每个训练样例称作训练实例(或样本)。在这个示例中,任
务
T
就是标记新邮件是否是垃圾邮件,经验
E
是训练数据,性能
P
需要定义。例如,可
以使用正确分类邮件的比例。这个性能指标称为准确率,通常用在分类任务中。
如果你只下载了一份维基百科的副本,虽然你的计算机有了很多数据,但不会在任何工
作中变得聪明起来。因此,下载一份维基百科的副本不是机器学习。
1.2 为什么使用机器学习
思考一下,你会如何使用传统的编程技术写一个垃圾邮件过滤器(见图 1-1):
1. 你会先看一下垃圾邮件一般都是什么样子。你可能注意到一些词或短语(比如 4U、
credit card、free、amazing)在邮件主题中频繁出现,也许还注意到一些在邮件的发
件人名字、正文和其他地方会出现的一些固定模式,等等。
2. 你会为观察到的每个模式各写一个检测算法,如果检测到了某个规律,程序就会将邮 ...