最近由于毕业论文的原因搞得学习进度有点慢,过了5月份再加快进度。
DeepLearning,也就是我们所说的深度学习。深度学习是机器学习的一个分支,属于无监督学习,近年来深度学习在语音识别和图像识别等领域取得了巨大的成功。
深度学习的本质,就是通过构建具有很多隐层的机器学习模型和海量的训练数据,来学习数据中更加有用的特征。也就是说,训练数据的特征不用我们去提取了,深度学习帮我们干了这些事。也就是说,我们以往HOG特征、LBP特征、Haar特征等特征提取的算法,如今都可以用DeepLearning 来代替,而且DeepLearning学习到的特征能够更加准确地反映数据的本质,这也就是DeepLearning能够完成精确的算法分类以及预测的根据所在。
好了,扯太多了。接下来主要介绍如何搭建一个非常好用的DeepLearning学习平台,以及分享一些入门资料。
DeepLearning现在主要是用Python或者是matlab语言编写,matlab语言的话,在windows环境下可以直接用,就不介绍了。这里主要介绍Python语言的。
这里默认环境是Linux,笔者的系统是Ubuntu12.04
首先,Ubuntu12.04自带了Python,因此我们不用安装了,要在linux环境下编写python,个人推荐使用sublime Text2,轻量化,用户体验好,而且还有一些Python插件。
在ubuntu下安装sublime Text2,可以参考
http://jingyan.baidu.com/article/3aed632e66dc877011809166.html
然后就是为sublime Text2搭建各种插件了,可以参考
http://www.cnblogs.com/dolphin0520/archive/2013/04/29/3046237.html
这里我个人推荐AndyPython 和 Bracket Highlighter 两个插件,AndyPython是编写python的智能补全插件,而且安装后不用配置就可以直接使用,传说中的很强大的SublimeCodeIntel 插件,如果不会配置,结果还是跟没装一样,呵呵。
这一步完成之后,效果如下:
美哉美哉,客官请慢用!
安装完sublime Text2之后,我们继续搭建DeepLearning环境。DeepLearning的代码依赖于几个库:Numpy,Theano,matplotlib,BLAS。
Numpy主要用于矩阵操作,Theano主要用于编写DeepLearning方便,matplotlib用于画图,BLAS即Basic Linear Algebra Subprograms,也就是基础线性代数程序集的意思。
sudo apt-get install python-numpy
sudo apt-get install python-scipy
sudo apt-get install python-matplotlib
sudo apt-get install libblas-dev
这里可以用git命令安装,如果没有git,先要安装git
Git安装
sudo apt-get install git
Theano安装
git clone git://github.com/Theano/Theano.git
Theano通过git方式安装的过程下载会很慢,我这里已经下载好了,需要可以直接在这里下载,然后解压,然后进入 Theano 文件夹,最后在终端下用 python 命令安装。
sudo python setup.py install
嗯,到这里,所有的软件安装和环境搭配都已经做好了,接下来我们来下载DeepLearning的数据和代码。
命令行输入如下:
git clone git://github.com/lisa-lab/DeepLearningTutorials.git
下载完后,加入你下载的DeepLearningTutorials 文件位置为:
~/DeepLearningTutorials
接下来,进入到 data/ 目录,获取数据集(dataset),
cd ~/DeepLearningTutorials/data/
sh download.sh
然后数据集就会通过 wget 自动下载到 data/ 目录下,数据集下载完成后,便可以进入到 code/ 目录,运行指南提供的 Demo 程序了。
至此,环境搭配与数据集下载全部做完,请尽情下DeepLearningzhong”遨游”~~~
DeepLearning的入门资料网上还是挺多的,这里稍微归纳一下:
NG的matlab版本:UFLDL
还有我的一篇博客:机器学习(Machine Learning)&深度学习(Deep Learning)资料 .
其他的,比如Python还不会?不怕
什么?Numpy不会?不怕
什么?Theano不会?不怕
全英的,不要说英语也不会哦,我帮不了你,自己去背单词吧。
当然DeepLearning的资料还有各种论文,这里就不介绍了,在这机器学习(Machine Learning)&深度学习(Deep Learning)资料 里面有很多。
等过了毕业论文这一关,后期还会有更多关于DeepLearning的博客,欢迎关注,也欢迎大家分享知识,共同进步。
原文地址:http://blog.csdn.net/llp1992/article/details/45534937