实现注意:展开参数
摘要:我们使用神经网络处理矩阵集合: 为了使用优化功能,如“fminunc()”,我们会想“打开”所有的元素放在一个长的矢量: thetaVector = [ Theta1(:); Theta2(:); Theta3(:); ]deltaVector = [ D1(:); D2(:); D3(:) ] 如
阅读全文
posted @
2017-08-09 16:40
郑哲
阅读(192)
推荐(0)
反向传播的直觉
摘要:回想一下,神经网络的代价函数是: 如果我们考虑简单的非多类分类(k=1)和无视正规化,则计算成本: 更正式地说,delta值实际上是成本函数的导数: 回想一下,我们的导数是与成本函数相切的直线的斜率,所以斜率越陡,我们就越不正确。让我们考虑下面的神经网络在看我们如何计算一些:
阅读全文
posted @
2017-08-09 16:28
郑哲
阅读(169)
推荐(0)
神经网络反向传播算法(4,5)
摘要:“反向传播”是最小化成本函数的神经网络术语,就像我们在logistic回归和线性回归中的梯度下降一样。我们的目标是计算: 也就是说,我们希望在θ中使用一组最优参数来最小化我们的成本函数j。在这一节中我们将看看我们用来计算J(Θ)的偏导数方程: 为此,我们使用下面的算法: 反向传播算法实现: 1.得到
阅读全文
posted @
2017-08-09 16:16
郑哲
阅读(190)
推荐(0)
神经网络的成本函数
摘要:让我们首先定义一些需要用到的变量: L:神经网络的层数; Sl:第l层神经网络节点数量; K:神经网络输出层节点数; 回想一下,在神经网络中,我们可能有许多输出节点。我们HΘ(x)k表示一个假设的结果在第k个输出节点的输出。 我们的神经网络的成本函数将是我们用于逻辑回归的一个推广。回顾正规logis
阅读全文
posted @
2017-08-09 15:28
郑哲
阅读(843)
推荐(0)
神经网络(多级分类)
摘要:为了将数据分类为多个类,我们让我们的假设函数返回一个值向量。说我们想把我们的数据分为四类。我们将使用下面的例子来看看这个分类是如何完成的。该算法以图像为输入,对图像进行分类: 我们可以将我们的结果类定义为y: 每个y(i)代表与汽车、行人、卡车或摩托车相对应的不同图像。内层,每一层都为我们提供了一些
阅读全文
posted @
2017-08-09 15:07
郑哲
阅读(1777)
推荐(0)
神经网络案例2
摘要:的Θ(1)矩阵的且,或,非: 我们可以把这些拿到”同“逻辑运算符(如果X1和X2都是0或1则为1)。 在第一层和第二层之间的过渡,我们将使用一个Θ(1)相结合的和矩阵: 第二和第三层之间的过渡,我们将使用一个Θ(2)矩阵的使用价值或: 让我们写下我们所有的节点的值: 我们有了同或算子使用隐藏层节点!
阅读全文
posted @
2017-08-09 15:00
郑哲
阅读(172)
推荐(0)
神经网络案例1
摘要:应用神经网络的一个简单例子是预测X1和x2,这是逻辑“和”运算符,只有X1和x2为1时才是真的。 函数的图看起来像: 记住,x0是我们的偏差变量始终是1。 让我们把第一个θ矩阵设为: 如果当x1和x2都为1这将使我们的结果都为真。换言之: 所以我们用一个小的神经网络,而不是用一个实际的门来构造计算机
阅读全文
posted @
2017-08-09 08:34
郑哲
阅读(259)
推荐(0)
神经网络2
摘要:要重新迭代,下面是一个神经网络的例子: 在本节中我们将做一个以上的功能量化的实施。我们将定义一个新的变量zk(j),它包含g函数中的参数。在我们前面的示例中,如果我们为所有参数替换变量z,我们将得到: 换句话说,对于层j = 2和节点k,变量z将是: 最后一个Θ(j)矩阵为一维,我们最终得到的结果为
阅读全文
posted @
2017-08-08 21:34
郑哲
阅读(126)
推荐(0)
神经网络
摘要:让我们研究一下如何用神经网络表示一个假设函数。在一个非常简单的层次上,神经元基本上是计算单元,它把输入(树突)作为电输入(称为“尖峰”),引导到输出(轴突)。在我们的模型中,我们的树突就像输入特征X1⋯xn,而输出则是我们的假设函数的结果。在这个模型中我们X0输入节点有时被称为“偏差”。它总是等于1
阅读全文
posted @
2017-08-08 21:29
郑哲
阅读(160)
推荐(0)
逻辑回归的正则化
摘要:我们可以规范logistic回归以类似的方式,我们对线性回归。作为一个结果,我们可以避免过拟合。下面的图像显示了正则化函数,用粉红色的线显示出来,是不太可能过度拟合非正则的蓝线表示功能: 成本函数 我们可以使这个方程的最后添加一个项: 第二个和,意思是明确排除二次项。
阅读全文
posted @
2017-08-08 21:10
郑哲
阅读(1636)
推荐(0)
正则化的线性回归
摘要:我们可以运用正则化的线性回归和logistic回归。我们先尝试线性回归。 梯度下降 我们将会把θ0修改梯度下降函数从其余的参数分离出来,因为我们不想惩罚θ0。 执行我们的正则化。通过一些操作,我们的更新规则也可以表示为: 在第一项、1−αλM永远小于1。直觉上你可以看到它在降低θJ值一定都更新。请注
阅读全文
posted @
2017-08-06 18:44
郑哲
阅读(466)
推荐(0)
惩罚项
摘要:如果我们有过从我们的假设函数,我们可以降低权重,再函数中的增加一些项来增加他们的成本。 比如我们要使下面的函数二次项的权重增大: 我们要减小θ3x3和θ4x4的影响。实际上,如果不排除这些特性或改变我们假设的形式,我们可以修改我们的成本函数: 我们已经对最后的θ3和θ4增加了额外的成本。现在,为了使
阅读全文
posted @
2017-08-06 13:07
郑哲
阅读(1781)
推荐(2)
过度拟合的问题
摘要:考虑问题的预测Y从X∈R.下面左边的图显示拟合Y = θ0 +θ1X数据集的结果。我们看到数据并不是真的在直线上,所以拟合度不是很好。 相反,如果我们增加一个额外的元素x2,并且去拟合y=θ0+θ1x+θ2x2。然后我们得到一个稍微好一些的数据(参见下图)。天真的是,似乎我们添加的元素越多越好。 然
阅读全文
posted @
2017-07-23 20:14
郑哲
阅读(505)
推荐(0)
多类分类:一对多
摘要:现在,我们将讨论数据分类时,我们有两个以上的类别。而Y = {0,1}我们将扩大我们的定义,Y = { 0,1…}。 因为Y = { 0,1…},我们把我们的问题转化为n + 1(+ 1因为索引从0开始)二分类问题;在每一个,我们预测,“Y”是我们的一个类成员概率。 我们基本上是选择一类,然后将所有
阅读全文
posted @
2017-07-23 19:24
郑哲
阅读(1269)
推荐(0)
先进的优化
摘要:“共轭梯度”、“BFGS”、和“L-BFGS”更成熟,更快的方法来优化θ可以用来代替梯度下降。我们建议您不要自己编写这些更复杂的算法(除非您是数字计算方面的专家),而是使用库,因为它们已经经过测试并高度优化。octave提供它们。 我们首先需要一个函数来评价下面的两个函数为了输入θ: 我们可以编写一
阅读全文
posted @
2017-07-23 19:20
郑哲
阅读(125)
推荐(0)
简化成本函数和梯度下降
摘要:我们可以将成本函数的两个条件情形压缩为一个情形: 注意到当y=1,那么=0也就是说没有效果。 当y=0,那么=0。 我们可以完全写出我们的全部成本函数如下: 矢量化实现: 梯度下降 请记住,梯度下降的一般形式是: 利用微积分可以求出导数的部分: 注意,这个算法与我们在线性回归中使用的算法是一样的。我
阅读全文
posted @
2017-07-23 19:13
郑哲
阅读(336)
推荐(0)
对数回归的成本函数
摘要:对于线性回归,我们不能使用相同的成本函数,因为logistic函数会导致输出波动,导致许多局部最优解。换句话说,它不是一个凸函数。 相反,我们的逻辑回归的成本函数看起来像: 当y = 1,我们得到如下图J(θ)与H(θ) 当y = 0,我们得到如下图J(θ)与H(θ) 如果我们的正确答案y是0,那么
阅读全文
posted @
2017-07-23 17:02
郑哲
阅读(233)
推荐(0)
决策边界
摘要:为了得到离散的0或1分类,我们可以将假设函数的输出翻译如下: 我们的逻辑函数g的行为方式是,当它的输入大于或等于零时,它的输出大于或等于0.5: 记得. 所以如果我们输入g是θTX,那就意味着: 从这些陈述我们可以说: 决策边界是分隔y=0和y=1的区域的直线。它是由我们的假设函数创建的。例子: 在
阅读全文
posted @
2017-07-23 16:53
郑哲
阅读(620)
推荐(0)
假设表示
摘要:我们可以讨论分类问题,忽略y是离散值这一事实,并使用我们的旧线性回归算法来预测y给定x。然而,很容易构造例子,这种方法表现很差。直观地说,也没有道理当h(θ)(x)取值大于1或小于0时,我们知道,Y∈{ 0, 1 }。为了解决这个问题,让我们改变我们的假设H(θ)(x)满足0≤h(θ)(x)≤1。这
阅读全文
posted @
2017-07-23 16:45
郑哲
阅读(214)
推荐(0)
分类
摘要:为了尝试分类,一种方法是使用线性回归,并将所有大于0.5的预测映射为1,所有小于0.5作为0。然而,这种方法不能很好地工作,因为分类实际上不是线性函数。 分类问题和回归问题一样,除了我们现在要预测的值y只取一小部分离散值。现在,我们将重点讨论二进制分类问题,其中Y只能接受两个值,0和1。(我们在这里
阅读全文
posted @
2017-07-23 16:36
郑哲
阅读(118)
推荐(0)