
深度学习
Der_Dream
这个作者很懒,什么都没留下…
展开
-
深度学习-逻辑回归sigmoid激活函数
逻辑回归学习算法,适用于二分类问题。对于二元分类问题来讲,给定一个输入特征向量X,它可能对应一张图片,如果想识别这张图片看它是一只猫或者不是一只猫的图片,那么就需要一个算法能够输出预测,输出值为y^\hat{y}y^(也就是预测值),也就是对实际值 y 的估计。更正式地来说,要让y^\hat{y}y^表示 y 等于1的一种可能性或者是概率,通过这个值来告诉你这是一只猫的图片的机率有多大。X...原创 2019-02-25 09:35:11 · 1660 阅读 · 0 评论 -
深度学习-反向传播与梯度下降
首先让我们来回顾一下有关逻辑回归的知识。如下图所示,在逻辑回归的前向传播过程中,第一步我们要先计算出z,第二步计算出预测值y^\hat{y}y^,最后计算出损失函数L。 z = wTw^TwTx+b y^\hat{y}y^ = 11+e−z\frac{1}{1 + e^{-z}}1+e−z1 L(y^\hat{y}y^, y) = -(...原创 2019-02-25 11:27:56 · 1138 阅读 · 1 评论 -
深度学习-神经网络激活函数
使用一个神经网络时,需要决定使用哪种激活函数用隐藏层上,哪种用在输出节点上。之前逻辑回归输出节点使用的激活函数是sigmoid激活函数,图像如下,但是,有时其他的激活函数效果会更好。tanh函数或者双曲正切函数是总体上都优于sigmoid激活函数。如图,y=tan(x)=ex−e−xex+e−xy=tan(x)=\frac{e^x-e^{-x}}{e^x+e^{-x}}y=tan(x)=e...原创 2019-03-01 09:48:39 · 892 阅读 · 0 评论 -
深度学习-核对矩阵维度
在编写深度神经网络程序时,出现的很多问题都是由于矩阵的维度不对引起的,而且这个问题非常难查。而且python有时候还会改变矩阵的维度(例如之前我们学到的python广播化),所以我们需要经常核对矩阵的维度,使他们的维度与我们预料中的保持一致。上面是一个五层的神经网络,输入层有2个元素,所以n[0] =2,第一层有三个元素,所以n[1] =3,所以w[1]为(3,2)其他层同理。因此单个训练样本...原创 2019-03-11 13:13:03 · 1100 阅读 · 0 评论 -
深度学习-深度神经网络
神经网络是由一个个神经元相互连接并按层次排列构成的,深度神经网络是有任意层的神经网络,这里的深度是指层次的多,而不是神经元数量的多。有任意层,那么就要有一个循环来负责遍历每一层进行计算。所以深度神经网络的计算形式,就必须要适应这个循环结构。我们先来说说神经元吧这个神经元通过对x,w,b进行运算,得出z,然后再由z得出a。对于多神经元神经网络,其实也是一样的。简单来说就是重复单神经元的流程,把...原创 2019-03-11 13:24:12 · 974 阅读 · 0 评论 -
深度学习-L2正则化
神经网络可能会存在过拟合,那么建议你首先对模型进行正则化处理。虽然使用更多的训练数据是肯定可以解决过拟合问题的,但问题是我们无法获得更多训练数据,即使能获取也太贵了。所以正则化是首选方案。正则化方法有很多。L2正则化就是其中一种常见的方法。它的实现主要分为两步。第一步,就是在成本函数后面加点“尾巴”;第二步就是在计算偏导数的时候加点“尾巴”。我们以逻辑回归为例来实现L2正则化,求成本函数J的最小...原创 2019-03-11 14:22:48 · 2174 阅读 · 0 评论