1.简介
- 在大多数开始关注深度学习的人都有过一些编程的经历,与此同时也会关注过一些机器学习和深度学习的报道或者文章甚至是书籍。但是更多的时候,深度学习会被冠以更加广义的一种含义:人工智能。其实,在日程应用的大多数的程序都不需要深度学习、人工智能这样的需求。比如:做一个电饭煲的用户界面,可能几个小时就可以写出很多个按钮,以及定义好的规则。像这种问题就可以以目标、应用为方向去做。
- 假如现在有这样的一个需求,写一个程序实现,将图片中含有猫的图片给找出来,这种情况,看起来是很简单的,就是一个判断问题,简单的思维是含有猫记为0,不含有记为1,这样的一个程序感觉并不难。但是,什么样的规则可以判定为0或者1呢?我想最优秀的专家,也很难给出这样的规则吧!
- 这种时候,我们就要逆向思维了,正向解题无路可走,那么就逆着来,我们可以直接找出一些数据,这些数据中包含了指定的标签,有猫的给打上标签0,没有猫的给打上标签1,这时候我们只需要定义一种方法去学习者两种样本的一些内在规则就可以了,这些规则可能是:质地、轮廓、色彩、鼻子、眼镜等的特征。
- 那么从实质上说机器学习和深度学习就是一种“数据编程思想”,而从原理上来说,是面对不同问题时使用不同的“函数形式”。
2.起源
虽然深度学习似乎是最近⼏年刚兴起的名词,但它所基于的神经⽹络模型和⽤数据编程的核⼼思想已经被研究了数百年。⾃古以来,⼈类就⼀直渴望能从数据中分析出预知未来的窍⻔。实际上,数据分析正是⼤部分⾃然科学的本质,我们希望从⽇常的观测中提取规则,并找寻不