原文 http://blog.csdn.net/abcjennifer/article/details/7758797 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归.Octave Tutorial.Logistic Regression.Regularization.神经网络.机器学习系统设计.SVM(Support Vector Machines 支持向量机).聚类.降维.异常检测.大规模机器学习等章节.所有内容均来自Standford公开课machine…
9.1  代价函数 9.2  反向传播算法 9.3  反向传播算法的直观理解 9.4  实现注意:展开参数 9.5  梯度检验 9.6  随机初始化 9.7  综合起来 9.8  自主驾驶 9.1  代价函数 首先引入一些便于稍后讨论的新标记方法: 假设神经网络的训练样本有 m 个,每个包含一组输入 x 和一组输出信号 y,L 表示神经网络层数, 表示每层的 neuron 个数,SL 表示输出层神经元个数 将神经网络的分类定义为两种情况:二类分类和多类分类, 二类分类:=1, y=0 or 1…
1.一些基本符号 2.COST函数 ================Backpropagation Algorithm============= 1.要计算的东西 2.向前传递向量图,但为了计算上图的偏导,要用到后向传递算法 3.后向传递算法 4.小题目 ==============Backpropagation Intuition============== 1.前向计算与后向计算很类似 2.仅考虑一个例子,COST函数化简 3.倒着算theta   =======Implementation…
循环神经网络(RNN, Recurrent Neural Networks)介绍    这篇文章很多内容是参考:http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/,在这篇文章中,加入了一些新的内容与一些自己的理解.   循环神经网络(Recurrent Neural Networks,RNNs)已经在众多自然语言处理(Natural Language Proce…
本章共两部分,这是第二部分: 第十四章--循环神经网络(Recurrent Neural Networks)(第一部分) 第十四章--循环神经网络(Recurrent Neural Networks)(第二部分) 14.4 深度RNN 堆叠多层cell是很常见的,如图14-12所示,这就是一个深度RNN. 图14-12 深度RNN(左),随时间展开(右) 在TensorFlow中实现深度RNN,需要创建多个cell并将它们堆叠到一个MultiRNNCell中.下面的代码创建了三个完全相同的cel…
本栏目内容来自Andrew NG老师的公开课:https://class.coursera.org/ml/class/index 一般而言, 人工神经网络与经典计算方法相比并非优越, 只有当常规方法解决不了或效果不佳时人工神经网络方法才能显示出其优越性.尤其对问题的机理不甚了解或不能用数学模型表示的系统,如故障诊断.特征提取和预测等问题,人工神经网络往往是最有利的工具.另一方面, 人工神经网络对处理大量原始数据而不能用规则或公式描述的问题, 表现出极大的灵活性和自适应性. 神经网络模型解决问题的…
原文地址: http://blog.csdn.net/heyongluoyao8/article/details/48636251# 循环神经网络(RNN, Recurrent Neural Networks)介绍    这篇文章很多内容是参考:http://www.wildml.com/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/,在这篇文章中,加入了一些新的内容与一些自己的理解.   循环神经网…
由于本章过长,分为两个部分,这是第一部分. 这几年提到RNN,一般指Recurrent Neural Networks,至于翻译成循环神经网络还是递归神经网络都可以.wiki上面把Recurrent Neural Networks叫做时间递归神经网络,与之对应的还有一个结构递归神经网络(recursive neural network).本文讨论的是前者. RNN是一种可以预测未来(在某种程度上)的神经网络,可以用来分析时间序列数据(比如分析股价,预测买入点和卖出点).在自动驾驶中,可以预测路线…
The Neural Network is one of the most powerful learning algorithms (when a linear classifier doesn't work, this is what I usually turn to), and this week's videos explain the 'backprogagation' algorithm for training these models. In this week's progr…
4. Neural Networks (part one) Content: 4. Neural Networks (part one) 4.1 Non-linear Classification. 4.2 Neural Model(神经元模型) 4.3 Forward Propagation 4.4 神经网络实现与或非门以及异或门 4.4.1 实现与或非门(AND/OR/NOT) 4.4.2 实现异或/同或门(XOR/XNOR) 4.5 Multi-class classification k…
原文 http://blog.csdn.net/abcjennifer/article/details/7749309 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归.Octave Tutorial.Logistic Regression.Regularization.神经网络.机器学习系统设计.SVM(Support Vector Machines 支持向量机).聚类.降维.异常检测.大规模机器学习等章节.所有内容均来自Standford公开课machine…
5 Neural Networks (part two) content: 5 Neural Networks (part two) 5.1 cost function 5.2 Back Propagation 5.3 神经网络总结 接上一篇4. Neural Networks (part one).本文将先定义神经网络的代价函数,然后介绍逆向传播(Back Propagation: BP)算法,它能有效求解代价函数对连接权重的偏导,最后对训练神经网络的过程进行总结. 5.1 cost func…
转自 http://blog.csdn.net/xingzhedai/article/details/53144126 更多参考:http://blog.csdn.net/mafeiyu80/article/details/51446558 http://blog.csdn.net/caimouse/article/details/70225998 http://kubicode.me/2017/05/15/Deep%20Learning/Understanding-about-RNN/ RNN…
使用神经网络来实现自动驾驶,也就是说使汽车通过学习来自己驾驶. 下图是通过神经网络学习实现自动驾驶的图例讲解: 左下角是汽车所看到的前方的路况图像.左上图,可以看到一条水平的菜单栏(数字4所指示方向),白亮的区段显示的就是人类驾驶者选择的方向.而最右端则对应向右急转的操作(箭头3),中心稍微向左一点的位置(箭头2),则表示在这一点上人类驾驶者的操作是慢慢的向左拐.这幅图的第二部分(箭头5)对应的就是学习算法选出的行驶方向,类似的白亮的区段(箭头6)显示的就是神经网络在这里选择的行驶方向是稍微的左…
 申明:本文非笔者原创,原文转载自:http://www.36dsj.com/archives/24006 自今年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural Network,CNN),期间配置和使用过theano和cuda-convnet.cuda-convnet2.为了增进CNN的理解和使用,特写此博文,以其与人交流,互有增益.正文之前,先说几点自己对于CNN的感触.先明确一点就是,Deep Learning是全部深度学习算法的总称,CNN是深度学习…
摘自:http://blog.csdn.net/heyongluoyao8/article/details/48636251 不同于传统的FNNs(Feed-forward Neural Networks,前向反馈神经网络),RNNs引入了定向循环,能够处理那些输入之间前后关联的问题.定向循环结构如下图所示:    该tutorial默认读者已经熟悉了基本的神经网络模型.如果不熟悉,可以点击:Implementing A Neural Network From Scratch进行学习. 什么是R…
背景:识别手写数字,给一组数据集ex3data1.mat,,每个样例都为灰度化为20*20像素,也就是每个样例的维度为400,加载这组数据后,我们会有5000*400的矩阵X(5000个样例),会有5000*1的矩阵y(表示每个样例所代表的数据).现在让你拟合出一个模型,使得这个模型能很好的预测其它手写的数字. (注意:我们用10代表0(矩阵y也是这样),因为Octave的矩阵没有0行) 我们随机可视化100个样例,可以看到如下图所示: 一:多类别分类(Multi-class Classific…
本系列主要是讲解卷积神经网络 - Convolutional Neural Networks 的系列知识,本系列主要帮助大家入门,我相信这是所有入门深度学习的初学者都必须学习的知识,这里会用更加直接和用大白话的方式向大家来介绍CNN,如果感兴趣的话就继续看下去吧. ​卷积网络的基本结构 卷积神经网络,简称CNN,是计算机视觉中的重要方法,可以用于计算机视觉中的图像分类.人脸识别.语音处理.文本信息处理等,可以看下面的图直观感受一下卷积神经网络的基本结构. 我们可以看到简单的卷积神经网络CNN结构…
零.说明: 本文的所有代码均可在 DML 找到,欢迎点星星. 注.CNN的这份代码非常慢,基本上没有实际使用的可能,所以我只是发出来,代表我还是实践过而已 一.引入: CNN这个模型实在是有些年份了,最近随着深度学习的兴起又开始焕发青春了,把imagenet测试的准确度提高了非常多,一个是Alex的工作,然后最近好像Zeiler又有突破性的成果,可惜这些我都没看过,主要是imagenet的数据太大了,我根本没有可能跑得动,所以学习的积极性有些打折扣.不说那么多,还是先实现一个最基础的CNN再说吧…
1. 深层神经网络(Deep L-layer neural network ) 2. 前向传播和反向传播(Forward and backward propagation) 3. 总结 4. 深层网络中的前向传播(Forward propagation in a Deep Network) 向量化实现过程可以写成: 注:这里只能用一个显示for循环,l 从 1 到 L,然后一层接着一层去计算. 如何减少bug 4.1 核对矩阵的维数(Getting your matrix dimensions…
背景:跟上一讲一样,识别手写数字,给一组数据集ex4data1.mat,,每个样例都为灰度化为20*20像素,也就是每个样例的维度为400,加载这组数据后,我们会有5000*400的矩阵X(5000个样例),5000*1的矩阵y(表示每个样例所代表的数据).现在让你拟合出一个模型,使得这个模型能很好的预测其它手写的数字. (注意:我们用10代表0(矩阵y也是这样),因为Octave的矩阵没有0行) 一:神经网络( Neural Networks) 神经网络脚本ex4.m: %% Machine…
Note This section assumes the reader has already read through Classifying MNIST digits using Logistic Regression and Multilayer Perceptron. Additionally, it uses the following new Theano functions and concepts: T.tanh, shared variables, basic arithme…
5.1节 Cost Function神经网络的代价函数. 上图回顾神经网络中的一些概念: L  神经网络的总层数. sl  第l层的单元数量(不包括偏差单元). 2类分类问题:二元分类和多元分类. 上图展现的是神经网络的损失函数,注意这是正则化的形式. 正则化部分,i.j不为0.当然i.j可以为0,此时的损失函数不会有太大的差异,只是当i.j不为0的形式更为常见. 5.2节 Backpropagation Algorithm最小化损失函数的算法——反向传播算法:找到合适的参数是J(θ)最小. 如…
在这篇文章中,我们一起来讨论一种叫作"神经网络"(Neural Network)的机器学习算法,这也是我硕士阶段的研究方向.我们将首先讨论神经网络的表层结构,在之后再具体讨论神经网络学习算法. 神经网络实际上是一个相对古老的算法,并且沉寂了一段时间,不过到了现在它又成为许多机器学习问题的首选技术. 1. Non-linear Hypotheses 之前我们已经介绍过线性回归和逻辑回归算法了,那为什么还要研究神经网络? 为了阐述研究神经网络算法的目的,我们首先来看几个机器学习问题作为例子…
在深度学习领域,传统的多层感知机(MLP)具有出色的表现,取得了许多成功,它曾在许多不同的任务上——包括手写数字识别和目标分类上创造了记录.甚至到了今天,MLP在解决分类任务上始终都比其他方法要略胜一筹.尽管如此,大多数专家还是会达成共识:MLP可以实现的功能仍然相当有限.究其原因,人类的大脑有着惊人的计算功能,而“分类”任务仅仅是其中很小的一个组成部分.我们不仅能够识别个体案例,更能分析输入信息之间的整体逻辑序列.这些信息序列富含有大量的内容,信息彼此间有着复杂的时间关联性,并且信息长度各种各…
课上习题 [1]代价函数 [2]代价函数计算 [3] [4]矩阵的向量化 [5]梯度校验 Answer:(1.013 -0.993) / 0.02 = 3.001 [6]梯度校验 Answer:学习的时候要去掉梯度校验,不然会特别慢 [7]随机初始化 Answer:对于神经网络这种复杂模型来说,初始值都是同一个值 r,不然第二层会全都一样. [8]梯度下降 测验 Answer: A Answer:A Answer:D 3*(1.01)4 - 3*(0.99)4 / 0.02 Answer:ACE…
作业文件 machine-learning-ex3 1. 多类分类(Multi-class Classification) 在这一部分练习,我们将会使用逻辑回归和神经网络两种方法来识别手写体数字0到9.手写体数字自动识别在今天有很 广泛的应用.这个联系将会向我们展示我们学习到的方法是如何应用到这个分类任务的.我们可以拓展我们之前实现的逻辑回归方法,并应用到一对多的分类任务. 1.1 数据集 在 ex3data1.mat文件中有给定的手写体数字的数据集,里面有5000个训练样本..mat格式数据表…
3. Model Representation I 1 神经网络是在模仿大脑中的神经元或者神经网络时发明的.因此,要解释如何表示模型假设,我们不妨先来看单个神经元在大脑中是什么样的. 我们的大脑中充满了如上图所示的这样的神经元,神经元是大脑中的细胞.其中有两点值得我们注意,一是神经元有像这样的细胞主体(Nucleus),二是神经元有一定数量的输入神经和输出神经.这些输入神经叫做树突(Dendrite),可以把它们想象成输入电线,它们接收来自其他神经元的信息.神经元的输出神经叫做轴突(Axon),…
8.1 非线性假设 我们之前学的,无论是线性回归还是逻辑回归都有这样一个缺点,即:当特征太多时,计算的负荷会非常大. 下面是一个例子: 当我们使用x1, x2 的多次项式进行预测时,我们可以应用的很好. 之前我们已经看到过,使用非线性的多项式项,能够帮助我们建立更好的分类模型.假设我们有非常多的特征,例如大于100个变量,我们希望用这100个特征来构建一个非线性的多项式模型,结果将是数量非常惊人的特征组合,即便我们只采用两两特征的组合(…
nnCostFunction 消耗公式: a1 = [ones(m,) X]; z2 = a1*Theta1'; pre = sigmoid(a1*Theta1'); a2 = [ones(m,) pre]; z3 = a2*Theta2'; a3 = sigmoid(z3); y_vec = zeros(m,num_labels); :m; y_vec(i,y(i)) = ; end :m J = J + y_vec(i,:)*log(a3(i,:)')+(1-y_vec(i,:))*log(…