欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python机器学习与实践——简介篇

程序员文章站 2022-03-29 20:41:24
Python机器学习与实践——简介篇。 1959年,美国的前IBM员工塞缪尔开发了一个西洋棋程序,这个程序可以在于人类棋手对弈的过程中,不断改善自己的棋艺...

Python机器学习与实践——简介篇。

1959年,美国的前IBM员工塞缪尔开发了一个西洋棋程序,这个程序可以在于人类棋手对弈的过程中,不断改善自己的棋艺。在4年之后,这个程序战胜了设计者本人;并且又过了3年,战胜了美国一位保持8年常胜不败的专业棋手。

最近谷歌的DeepMind研究团队正式宣布其创造和撰写的机器学习程序AlphaGo以4:1的总比分击败了世界*选手李世石,后来进化后的AlphaGo又以3:0的总比分击败了世界排名第一的柯洁。

根据机器学习理论先驱、缪赛尔先生的说法,他并没有编写具体的程序告诉西洋棋程序如何行棋。事实上,这也是不可能的,因为下棋策略千变万化,我们无法通过编写完备的,哪怕是固定的执行规程来挑战人类棋手。从塞缪尔的西洋棋程序,到谷歌的AlphaGo,我们可以总结出机器学习系统的如下特点:

1)许多机器学习系统所解决的都是无法直接使用固定规则或者流程代码完成的问题,通常这类问题对人类而言很简单。比如,计算机和手机里的计算器就不属于具备智能的系统,因为里面的计算方法都有清楚而且固定的规程;但是如果要求一台机器去辨别一张相片中有哪些人和物体,这对人来讲很容易,机器却很难做到。

2)所谓具备“学习”能力的程序都是指它能够不断地从经历和数据中吸取经验教训,从而应对未来的预测任务。我们习惯把这种对为未知的预测能力叫做泛化力。

3)机器学习更加诱人的地方在于,它具备不断改善自身应对具体任务的能力。我们习惯把这种完成任务的能力称为性能。塞缪尔的西洋棋程序和谷歌的AlphaGo都是典型的借助过去对弈的经验或棋谱,不断提高自身性能的机器学习系统。

以上是通过西洋棋程序的例子总结的一些机器学习系统所具备的特效,但是这里再引述一下美国卡内基梅隆大学(大学学的课程是几年前引入的cmu的教程。。话说很羡慕去cmu读研的小伙伴,最近还拿了微软的special offer)机器学习领域的著名教授Tom Mitchell的经典定义来阐述机器学习理论的开篇:

英文原话这里就不打了,感兴趣可以自己去百度,此处放翻译:如果一个程序在使用既有的经验(E)执行某类任务(T)的过程中被认定为“具备学习能力的”,那么它一定需要展现出:利用现有的经验(E),不断改善其完成既定任务(T)的性能(P)的特质。