谷歌机器学习
Facebook相册分类
邮箱垃圾过滤系统
……
Arthur Samuel(1959)年将机器学习定义为:在没有明确设置的情况下使计算机具有学习能力的研究领域 。Samuel成名是由于在1959年代他编写了一个跳棋游戏程序,这个跳棋游戏的令人惊讶之处在于,Samuel自己并不是一个玩跳棋的高手,他所做的是使程序与自己对弈几万次,通过观察哪些布局容易赢,哪些布局容易输。一段时间后,跳棋游戏程序就学到了,什么是好的布局,什么是不好的布局,最终程序学会了跳棋,比Samuel玩的还好,这是一个引人注目的结果。Samuel自己并不是跳棋高手,但是因为计算机有耐心与自己玩上万次对弈,没有人有这种耐心下这么多盘棋,因此计算机能够获得如此丰富的跳棋游戏经验,最终成为了一个比Samuel更好的跳棋棋手。这是有点不正式,也是比较陈旧的一个定义。
下面是一个更新的定义,由Tom Mitchell提出,他是我在卡内基梅隆大学的一个朋友。Tom是这样定义机器学习的, 一个适当的学习问题定义如下, 他说计算机程序从经验E中学习,解决某一任务T,进行某一性能度量P,通过P测定在T上的表现因经验E而提高 ,其实我认为他这样定义只是想使它押韵。对于跳棋游戏,经验E就是程序与自己下了几万次跳棋,任务T就是玩跳棋,性能度量P就是与新对手玩跳棋时赢的概率。 我除了教给你这些问题外,还会偶尔问你一个问题,以确保你已经 理解内容了。那么问题来了,根据Tom Mitchell 对机器学习的定义,假设你的邮件程序观察,你讲哪些邮件标记为垃圾邮件,而其他的不标记。基于你标记的垃圾邮件,你的邮件程序学会了如何更好地过滤垃圾邮件,在这个例子中,任务T是什么
目前有各种不同类型的学习算法,最主要的两类是监督学习和无监督学习。简单的来说,监督学习就是我们会教计算机做某件事情,而在无监督学习中,我们让计算机自己学习,后面我们将详细介绍。教授学习算法就像给你一组工具,但同样重要的或者说更重要的是教你如何使用这些工具。知道如何使用机器学习算法的人,与不知道如何有效使用这些工具的人有很大的不同。本课程要做的就是,花大量的时间讨论,假设你确实想要开发机器学习系统,如何让那些最佳实践操作指导你决定用什么方式建立自己的系统。这样当你应用学习算法时,就不会像那些用其他方法做了6个月的人一样,别人可能一眼就能看出他们是在做无用功。因此我会用很多时间来教你们机器学习和AI中那些最好的实践经验,以及如何做这件事情,我们是怎样做的