在机器学习的专业人士中,也不存在一个被广泛认可的定义 来准确定义机器学习是什么或不是什么。
Arthur Samuel:他将机器学习定义为,在进行特定编程的情况下,给予计算机学习的能力。
他编写了一个西洋棋程序。 就通过编程, 让西洋棋程序自己跟自己下了上万盘棋。通过观察哪种布局(棋盘位置)会赢,哪种布局会输,久而久之,这西洋棋程序明白了什么是好的布局, 什么样是坏的布局。然后程序通过学习后, 玩西洋棋的水平超过了Samuel。这绝对是令人注目的成果。 尽管编写者自己是个菜鸟,但因为计算机有着足够的耐心,去下上万盘的棋,没有人有这耐心去下这么多盘棋。通过这些练习, 计算机获得无比丰富的经验,于是渐渐成为了 比Samuel更厉害的西洋棋手。
Tom Mitchell提出,来自卡内基梅隆大学,Tom定义如下,一个程序被认为能从经验E中学习,解决任务 T,达到性能度量值P,当且仅当,有了经验E后,经过P评判, 程序在处理 T 时的性能有所提升。
在西洋棋那例子中,经验e 就是程序上万次的自我练习的经验,而任务 t 就是下棋。性能度量值 p呢, 就是它在与一些新的对手比赛时,赢得比赛的概率。
不同类型的学习算法:监督学习和无监督学习
监督学习:教计算机如何去完成任务
无监督学习:让计算机自己进行学习。