最近开始学习深度学习的内容,先介绍下自己的学习背景,本人才学习机器学习不到一个月的时间,是在cousera上Andrew Ng的机器学习的课,花了一个多星期的时间把那门课学完了,感觉算是入门了,但是这肯定不够(因为自己去翻了翻Simon Haykin的《神经网络与机器学习》,发现有好多还是迷迷糊糊的,所以打算再继续学些),然后就想在这方面多学些,看到有人推荐深度学习(Deep Learning)这门课,于是就来学了。巧的是,这门课也是Andrew Ng的,之前在cousera上学到的知识刚好成为了预备知识。别担心知识过不了关,我看的这两门课程都是入门级的。
稀疏自编码器(sparsity autoencoder):
1.介绍
监督性学习是人工智能当中最强大的工具之一,涉及到智能识别、无人车等等。但是监督性学习在如今还是被严重的限制住了。特别地,大多数监督性学习的应用仍要求人为地指定输入的特征。一旦得到一个好的特征表示,监督性学习通常能够很好的工作,然而在类似于计算机视觉、音频处理和自然语言处理中,成百上千的研究人员用了许多年头手工地在寻找最好的特征。尽管有很多非常机智的方法找到特征,但是人们不得不考虑是否能够做得更好。理想地,我们更希望能够拥有一种自动学习寻找特征的方法。
这里介绍一种叫稀疏自编码器学习算法。这是一种能够自动从非标号数据中学习特征的方法。更进一步的,还有很多更加复杂的稀疏自编码器学习算法,就不一一介绍了。
我们先引入监督性学习的前向神经网络和后传播算法。然后介绍如何通过这两个算法构造一个非监督性学习的自编码器。最后我们进一步得到一个稀疏的自编码器。
2.神经网络
先回顾一个最简单的神经元
其中X1,X2,X3是输入值,而+1是的作用是偏移;然后输出值其中f被称为激活函数,通常有两种表示形式,一种是sigmoid函数1/(1+e^(-Z)),另一种是tanh函数
,图像分别如下
,由图可以看出,这两个函数的区别在于sigmoid函数为假时函数值趋于0,为真时函数值趋于1,而tanh函数为假时函数值趋于-1,为真时函数值趋于1,关于tanh函数,在Andrew Ng的machine learning的课上没有提到,所以这里应该是第一次提,不过接下来的内容还是以f为sigmoid函数为主,因此不用担心与machine learning课上的有什么多大的变化。
2.1 神经网络公式化
还是放出一张图出来,感觉图出来了,就一目了然了
我们称L1为输入层,L2