Deep Learning
文章平均质量分 80
huiliao
热爱机器学习数据挖掘,对C/C++、Python、Matlab、PHP等感兴趣,关注科技互联网发展,希望结识更多同道中人。
展开
-
浅谈神经网络
神经网络简介 神经网络起源于上个世纪40年代,到现在已经有70年的历史。然而神经网络是最近几年才逐渐火起来的,因为以前相关的理论模型、训练方法和计算能力的条件都还不成熟,随着06年多伦多大学的hinton在science上发表了论文,用神经网络来把高维的原创 2013-12-25 22:40:37 · 7341 阅读 · 0 评论 -
自编码算法与稀疏性
前言看完神经网络及BP算法介绍后,这里做一个小实验,内容是来自斯坦福ULIDL教程,实现图像的压缩表示,模型是用神经网络模型,训练方法是BP后向传播算法。理论 在有监督学习中,训练样本是具有标签的,一般神经网络是有监督的学习方法。我们这里要讲的是自编码神经网络,这是一种无监督的学习方法,它是让输出值等于自身来实现的。 从图中可以看到,神经网络模型原创 2014-01-07 20:33:43 · 5421 阅读 · 20 评论 -
Softmax Regression
Softmax简介记得之前做过的logistic regression的练习是一个二类分类的问题,模型的假设函数是 这个函数判断给定的x在当前的模型theta下被预测为1的概率,显然预测为0的概率就是1减去预测为1的概率即可。LR实际上就是在训练数据中的空间中找一条超平面把正负样本分开,与感知机、SVM(支持向量机)也有点类似,但是损失函数是不一样的。LR的损失函数为原创 2014-02-18 21:08:43 · 5117 阅读 · 0 评论 -
Softmax Regression练习
在上篇博文(http://blog.csdn.net/freeliao/article/details/19424565)介绍了Softmax Regression的模型,现在来做下该模型在MNIST数据集上的识别练习(http://ufldl.stanford.edu/wiki/index.php/Exercise:Softmax_Regression)。MNIST数据集训练集由60000张28原创 2014-02-19 16:21:20 · 2135 阅读 · 0 评论 -
Self-Taught Learning
自编码器是一个三层的feed-forward神经网络模型,输入层经过隐含层的特征表示后再重构出跟输入层逼近的输出层,中间的隐含层是特征表示层,表示对输入层学习到的特征,这些特征可能更好地表示了数据,如果用学到的特征来训练数据分类或回归可能学习效果更好,于是就有了自我学习和无监督特征学习。 如果我们有很多的未标注数据,那就更好了,我们可以用自编码器学习特征表示,然后用学到的特征表示原创 2014-02-19 20:49:34 · 3629 阅读 · 2 评论 -
PCA与Whitening
一、PCA PCA即主成分分析(Principle Component Analysis),是统计机器学习、数据挖掘中对数据进行预处理的常用的一种方法。PCA的作用有2个,一个是数据降维,一个是数据的可视化。在实际应用数据中,样本的维数可能很大,远远大于样本数目,这样模型的复杂度会很大,学习到的模型会过拟合,而且训练速度也会比较慢,内存消耗比较大,但实际数据可能有些维度是线性相关的,可能也含有原创 2014-02-18 14:43:37 · 4474 阅读 · 0 评论 -
Convolution and Pooling
博文参考standford UFLDL教程working with large images小节。1、卷积特征提取之前做过的练习如sparse autoencoders、softmax regression、stacked autoencoders等处理的都是比较小的图像,如8x8啊,28x28啊,那时用的是全联通网络(full connected networks),就是隐含原创 2014-02-22 19:21:50 · 2373 阅读 · 0 评论 -
Linear Decoders
博文参考standford UFLDL网页教程线性解码器。1、线性解码器 前面说过的稀疏自编码器是一个三层的feed-forward神经网络结构,包含输入层、隐含层和输出层,隐含层和输出层采用的激活函数都是sigmoid函数,由于sigmoid函数的y值范围在[0,1],这就要求输入也要在这个范围内,MNIST数据是在这个范围内的,但是对于原创 2014-02-21 22:10:56 · 1741 阅读 · 0 评论 -
Stacked Autoencoders
博文内容参照网页Stacked Autoencoders,Stacked Autocoders是栈式的自编码器(参考网页Autoencoder and Sparsity和博文自编码与稀疏性),就是多层的自编码器,把前一层自编码器的输出(中间隐藏层)作为后一层自编码器的输入,其实就是把很多自编码器的编码部分叠加起来,然后再叠加对应自编码器的解码部分,这样就是一个含有多个隐含层的自编码器了。本博文原创 2014-02-21 17:08:24 · 7847 阅读 · 15 评论 -
Self-Taught Learning To Deep Networds
本博客是参照UFLDL教程的Self-Taught Learning to Deep Networds写的,也感谢tornadomeet,看了他的博客也对自己的理解帮助不小。一、从自我学习到深层网络 在自我学习(参考本博客Self-Taught Learning)中,我们用未标注的数据来学习自编码器,然后用学到的特征表示对已标注数据学习特征,然后用该特征作为softm原创 2014-02-20 16:20:13 · 1839 阅读 · 0 评论 -
word2vec浅析
本文是参考神经网络语言模型、word2vec相关论文和网上博客等资料整理的学习笔记,仅记录自己的学习历程,欢迎拍砖。 word2vec是2013年google提出的一种神经网络的语言模型,通过神经网络来学习词语的联合概率分布,同时可以得到词向量,有了词向量可以做很多NLP相关的事情。其实,早在2000年初就有学者在用神经网络来学习语言模型了,通过多年的改进、演变,得到我们现原创 2014-11-09 17:15:55 · 1794 阅读 · 0 评论