现在的 AI 技术在整个科技界大受追捧,有我们熟知的 AlphaGo 与李世石和柯洁的人机大战,也有在《最强大脑》节目上,小度机器人的惊艳表现,还有科大讯飞所推出的实时翻译机,这些都是 AI 技术所引起的一场科技的巨大进步。
想想以后家有一个超级棒的 AI 管家帮你智能调控关于你的饮食起居,他能记录你的睡眠,你的生活习性,并保证家里的安全,出门忘了关闭电器,也能轻轻松松帮你搞定,想想都觉得很兴奋。
出门也不用自己开车,自动驾驶技术轻轻松松帮你搞定。出国在外,再也不怕听不懂对方的语言,有了语言翻译机,就能超级愉快的跟世界上各个地方的人愉快的交流了。
上面所讲述的一切,都是基于神经网络和深度学习实现的。
一、什么是神经网络
神经网络是一种基于人脑机制的强大的学习型算法。
它又可以分成单神经网络和多神经网络。
- 单神经网络
其实单神经网络很好理解,就是一个输入一个输出。
其实就是一个输入一个输出了,类似我们初中所学习的函数。
y = ax + b
是不是很简单,就是当我们输入一个固定 x 的时候有唯一的 y 与之对应。
看我们上面的函数图像,是一个面积和售价的函数,它是根据一些已存在的数据(红叉)在坐标轴上的分布情况,用了一条直线去拟合这些数据从而生成的一条直线函数,因为房屋的价格不可能小于 0 ,所以当小于某一点的时候就成了一条水平的直线。只要我们选定房屋的面积都会有一个唯一的价格与之对应,这就是一个简单的单神经网络。
上图中的图形就是一个最最简单的神经网络,就是只有一个神经元(圆形)的神经网络。
- 多神经网络
其实简单点来讲就是多个输入对应一个输出。
y = f ( x1, x2, x3, x4 ...)
就是上面的四个输入 x1, x2, x3, x4 都能对 y 产生影响,所以我们要构建更多的神经元去处理这些输入的变量值,这样我们就能得到一个相对比较正确的 y 值。
可以看到现在房屋的价格不仅仅跟面积有关,它还跟卧室数,邮编,天气数据相关,这里我们可以看到由我们之前的一个神经元变成了四个神经元。所以一旦 y 所依赖的因素过高,就会造成神经网络的复杂度呈几何倍数增长。
二、深度学习又是什么
其实深度学习是跟神经网络捆绑到一起的,所谓深度就是上面我们所看到的圆圈的层数,当层数越来越多,就是网络结构更深,通过这种结构去学习,就是所谓的深度学习。
三、用神经网络进行监督学习
就是通过一些已有的输入和输出数据,对我们所构建的模型进行训练,其实训练不过就是对过程中的各个值进行调整,在这些数据的监督下,我们就能训练出一个符合这些输入和输出的网络。
上图中,我们可以看到对应不同的数据形式,我们就会选择更擅长处理这些数据的神经网络进行训练。比如通过房屋的特性去预测房屋的价格就比较适合使用标准神经网络(SNN)进行,对一些图片的识别,就比较适合用卷积神经网络(CNN)去训练,而对一些有时间顺序的数据就比较适合使用循环神经网络(RNN)去训练,当然对于一些更复杂的比如汽车自动驾驶,这就需要混合使用多种神经网络进行训练。
下图分别是标准神经网络、卷积神经网络和循环神经网络的图示。
当然由于输入数据的差别,我们也会对数据进行分类,可分为结构化的数据和非结构化的数据,从下图中我们便能清楚的认识它们之间的区别。
四、总结
上图是一个数据量和表现性能的图。一般来说我们训练一个模型,往往根据的是线的走势区域平缓,我们才能认为这个模型稳定,才能被应用于实践。
上图中从下到上的四条线分别代表的是传统学习算法、小型神经网络,中型神经网络和大型神经网络。可以看到越往上,所需要的数据越多,所以对待特定问题,我们要选用特定的模型去处理。
推动深度学习最重要的三要素分别是:数据、计算能力和算法,通过他们的相辅相成才能使得深度学习发挥更加强大的力量,而且随着科技的发展,这三要素在以后也会有更大的进度,因此我们相信深度学习在未来是有很大前程的一个方向。