摘要:
激活函数的导数 在神经网络中使用反向传播的时候,真的需要计算激活函数的斜率或者导数。针对以下四种激活,求其导数如下: 1)sigmoid activation function 图1.8.1 其具体的求导如下: 公式3.25: \(\frac{d}{dz}g(z) = {\frac{1}{1 + e 阅读全文
摘要:
为什么需要非线性激活函数? 为什么神经网络需要非线性激活函数?事实证明:要让的神经网络能够计算出有趣的函数,必须使用非线性激活函数,证明如下: 这是神经网络正向传播的方程,现在去掉函数\(g\),然后令\(a^{[1]} = z^{[1]}\),或者也可以令\(g(z)=z\),这个有时被叫做线性激 阅读全文
摘要:
激活函数 使用一个神经网络时,需要决定使用哪种激活函数用隐藏层上,哪种用在输出节点上。到目前为止,之前的博客只用过sigmoid激活函数,但是,有时其他的激活函数效果会更好。 在神经网路的前向传播中,\(a^{[1]} = \sigma(z^{[1]})\)和\(a^{[2]} =\sigma(z^ 阅读全文
摘要:
向量化实现的解释 先对几个样本计算一下前向传播,看看有什么规律: 公式1.16: \(z^{[1](1)} = W^{[1]}x^{(1)} + b^{[1]}\) \(z^{[1](2)} = W^{[1]}x^{(2)} + b^{[1]}\) \(z^{[1](3)} = W^{[1]}x^{ 阅读全文
摘要:
多样本向量化 与上篇博客相联系的来理解 逻辑回归是将各个训练样本组合成矩阵,对矩阵的各列进行计算。神经网络是通过对逻辑回归中的等式简单的变形,让神经网络计算出输出值。这种计算是所有的训练样本同时进行的,以下是实现它具体的步骤: 图1.4.1 上篇博客中得到的四个等式。它们给出如何计算出\(z^{[1 阅读全文
摘要:
一个神经网络的输出 首先,回顾下只有一个隐藏层的简单两层神经网络结构: 图1.3.1 其中,\(x\)表示输入特征,\(a\)表示每个神经元的输出,\(W\)表示特征的权重,上标表示神经网络的层数(隐藏层为1),下标表示该层的第几个神经元。这是神经网络的符号惯例,下同。 神经网络的计算 关于神经网络 阅读全文
摘要:
神经网络概述(Neural Network Overview) 先开始快速浏览一下如何实现神经网络。上篇博客了解了逻辑回归,了解了这个模型(见图1.1.1)如何与下面公式1.1建立联系。 图1.1.1 : 公式1.1: \[\left. \begin{array}{l} x\\ w\\ b \end 阅读全文
摘要:
详解 logistic 损失函数 在本篇博客中,将给出一个简洁的证明来说明逻辑回归的损失函数为什么是这种形式。 回想一下,在逻辑回归中,需要预测的结果\(\hat{y}\),可以表示为\(\hat{y}=\sigma(w^{T}x+b)\),\(\sigma\)是熟悉的\(S\)型函数 \(\sig 阅读全文
摘要:
关于 python_numpy 向量的说明 主要讲Python中的numpy一维数组的特性,以及与行向量或列向量的区别。并说一下在实际应用中的一些小技巧,去避免在coding中由于这些特性而导致的bug Python的特性允许使用广播(broadcasting)功能,这是Python的numpy程序 阅读全文
摘要:
Python 中的广播 这是一个不同食物(每100g)中不同营养成分的卡路里含量表格,表格为3行4列,列表示不同的食物种类,从左至右依次为苹果,牛肉,鸡蛋,土豆。行表示不同的营养成分,从上到下依次为碳水化合物,蛋白质,脂肪。 那么,现在想要计算不同食物中不同营养成分中的卡路里百分比。 现在计算苹果中 阅读全文