deeplearning.ai学习笔记

逻辑回归

$a^{1}$
$$y’=sigmod(W^{T}T+b)$$
$$sigmoid(z)=\frac{1}{1+e^{-z}}$$
$$y’=P(y=1|x)$$

如果是二元分类的输出层,用$$sigmoid(z)=\frac{1}{1+e^{-z}}$$,在其他地方用relu或者是tanh,$$tanh(z)=\frac{e^{z}-e^{-z}}{e^{z}+e^{-z}}$$,通常建议使用reluleaky relu,$$leaky relu(z)=max(0.01z,z)$$

sigmoid函数求导
$$f(z)=\frac{-(-e^{-z})}{(1+e^{-z})^{2}}$$
$$=\frac{e^{-z}}{(1+e^{-z})^{2}}$$
$$=\frac{1+e^{-z}-1}{(1+e^{-z})^{2}}$$
$$=\frac{1}{1+e^{-z}}-\frac{1}{(1+e^{-z})^{2}}$$
$$=\frac{1}{1+e^{-z}}(1-\frac{1}{1+e^{-z}})$$
$$=f(z)(1-f(z))$$

tanh函数求导 $$1-tanh(z)^{2}$$

卷积神经网络

  • 在卷积神经网络中,底层的过滤器(fliter)是用来处理边缘特征,可以很好地检索出图像的边缘。同时筛选器中的参数可以让神经网络自己训练出来,可以检测多种方向的边缘。
  • 过滤器的尺寸一般都是奇数,我的理解是,这样可以确定一个中心位置,便于接下来的计算。
  • 当过滤器的大小为1* 1时,作用相当于全连接,目的就是调整通道的数量。
  • 权值共享(parameter sharing)可以大量的削减参数量

循环神经网络

  • 在Beam Search中,对于每次生成的结果,并不使用贪心的做法,每次选择可能性最大单词作为生成的结果,二是设置一个b(beam width),每次保留前b个结果,然后在下一次生成的时候,根据加权后的概率P(y^{2}|y^{1},X)生成b*n个候选结果,以此类推选择最大的b个结果,这样的话,计算的整体复杂度会变成b倍,但是生成的结果会更好。

发表评论

电子邮件地址不会被公开。 必填项已用*标注