在之前的几篇BLOG中,我们一同学习了很多关于神经网络的零散的知识。下面就让我们一同把它们整合起来。 网络结构选择 当我们准备训练一个神经网络时,我们要做的第一件事就是搭建网络的大体框架,这里我说的框架指的是神经元之间的连接模式。比如我们可能会从以下几种结构中选择: 上图中,第一种神经网络的结构是一个输入层三个输入单元,一个隐藏层五个隐藏单元和一个输出层四个输出单元;第二种结构是一个输...
在之前的BLOG里,我们介绍了神经网络的大致原理。 现在就让我们一起来看看其中的一些实现技巧吧! 矩阵展开 在神经网络反向传播的过程中,我们需要将参数从矩阵展开成向量,以便我们在高级最优化步骤中的使用需要,我们称这个将矩阵展开成向量的过程为过程是矩阵展开。 具体来讲,为了使用 Octave 自带的高级优化算法,我们需要自己编写代价函数 costFunction : function [j...
在之前的BLOG里,我们通过例子讲解了神经网络的作用。现在让我们来看看如何定义我的代价函数已经如何最小化我们的代价函数吧。 代价函数 神经网络是当今最流行的学习算法之一,现在就让我们一同学习在给定训练集下为神经网络拟合参数的学习算法。正如我们之前学习的大多数学习算法一样,我们还是从拟合神经网络参数的代价函数开始讲起。 我们还是从例子入手。下图是神经网络结构,假设我们有一个像下面这样的训练...
在之前的BLOG里,我们通过实例讲解了如何通过神经网络来解决逻辑运算的假设模型,这篇BLOG就让我们通过几个例子一起看看神经网络下的多元分类问题吧。 行人与车辆的分类 这一部分,我想和大家一同通过例子了解如何用神经网络做多类别分类。在多类别分类中,通常有不止一个类别需要我们去区分。比如车辆种类的分辨,手写数字辨识的问题登顶。因此你也许已经开始好奇,究竟应该怎样处理这些多类别分类的问题呢。...
在之前的BLOG里,我们一同了解了神经网络的一些数学记号和表示方法。现在就让我们通过实例了解神经网络在非线性假设函数,特别是逻辑运算假设函数的运用吧! 逻辑运算假设函数 我们考虑下面的问题,我们有二进制的输入特征 x1 x2 ,其要么取0 要么取1 ,在这个例子中只画出了两个正样本和 两个负样本: 但我们可以认为这是一个更复杂的学习问题的简化版本,在这个复杂问题中,我们可能在右上角和左...