1.1.3神经网络与深度学习
神经网络算法是一类基于神经网络从数据中学习的算法,它仍然属于机器学习的范畴。受限于计算能力和数据量,早起的神经网络层数较浅,一般在1-4层左右,网络表达能力有限。随着计算能力的提升和大数据时代的到来,高度并行化的GPU和海量数据让大规模神经网络的训练称为可能。
2006年,Geoffrey Hinton 首次提出深度学习的概念。2012年,8层的深层神经网络AlexNet发布,并在图片识别竞赛中取得了巨大的性能提升,伺候数十层、百层甚至上千层的神经网络模型相继提出,展现出深层神经网络强大的学习能力。一般利用深层神经网络实现的算法乘坐深度学习,本质上神经网络和深度学习可以认为是相同的。
简单的来比较一下深度学习算法与其他算法的特点,如下图:
基于规则系统 一般会编写显式的规则逻辑,这些规则逻辑一般是针对特定的任务设计的,并不适合其他任务。
传统的机器学习算法 认为设计具有一定通用性的特征检测方法,如SIFT,HOG特征,这些特征能够适合某一类的任务,具有一定的通用性,但是如何设计特征方法,以及特征方法的优劣性是问题的关键。
神经网络 设计特征这一部分可以通过神经网络让机器自动学习完成,不需要人类干预,但是浅层的神经网络的特征提取能力较为有限,而深层神经网络擅长提取高层抽象的特征因此具有更好的性能表现。
深度学习与其它算法比较