美文网首页DeepAI
【吴恩达机器学习】第四周—前馈神经网络

【吴恩达机器学习】第四周—前馈神经网络

作者: Sunflow007 | 来源:发表于2020-03-09 20:50 被阅读0次
    31.jpg

    1. 神经元

    1.1 神经元

    为了构建神经网络模型,我们需要首先思考大脑中的神经网络是怎样的?每一个神经元都可以被认为是一个处理单元/神经核(processing unit/Nucleus),它含有许多输入/树突(input/Dendrite),并且有一个输出/轴突(output/Axon)。神经网络是大量神经元相互链接并通过电脉冲来交流的一个网络。

    image

    我们可以把 a_0, a_1, a_2, a_3 看成更为高级的特征值,也就是x_0, x_1, x_2, x_3的进化体,虽然他们是由x决定的,但由于是梯度下降的,所以a是变化的,并且变化的越来越厉害,所以这些高级的特征值比普通的逻辑回归/线性回归模型中仅仅将x次方厉害,也能更好地预测新数据。
    从本质上来讲,神经网络能够通过学习得出其自身的一系列特征。在普通的逻辑回归中,我们被限制为使用数据中的原始特征x_1, x_2... x_n.我们虽然可以使用一些二项式项来组合这些特征,但是我们仍然受到这些原始特征的限制。在神经网络中,原始特征只是输入层,在我们上面三层的神经网络例子中,第三层也就是输出层做出的预测利用的是第二层的特征,而非输入层中的原始特征,我们可以认为第二层中的特征是神经网络通过学习后自己得出的一系列用于预测输出变量的新特征。
    这就是神经网络模型相比于逻辑回归和线性回归的优势。

    3.样本和直观理解

    我们可以用一个单一的激活单元 + 不同的权重即可描三种二元逻辑运算符(BINARY LOGICAL OPERATORS):逻辑与(AND)、 逻辑或(OR)、逻辑非(NOT)
    我们只需要将假设函数h_\theta(x)使用Sigmoid函数即可:
    h_\theta(z) = g(z) = \frac{1}{1+e^{-z}}

    7.png7.png 令
    从而:

    要想实现逻辑与AND,我们可以设置\theta_0,\theta_1,\theta_2分别 = -30,20,20,表达式h_\theta(x) = g(-30 + 20x_1 + 20x_2)

    要想实现逻辑或OR,可以设置\theta_0,\theta_1,\theta_2分别 = -10,20, 20,h_\theta(x) = g(-10 + 20x_1 + 20x_2)要想实现逻辑非NOT,更简单,只需要一个输入即可。可以设置\theta_0,\theta_1分别 = 10,-20,h_\theta(x) = g(10 - 20x_1)

    4.多类分类

    当我们要用神经网络模型来实现多分类,譬如训练一个模型来识别路人、汽车、摩托车和卡车。那么神经网络模型改如何构成?
    假设我们的输入有三个维度、输出根据上述可知有4个分类,并且是4个互斥的分类。那么我们的神经网络模型可以设计成如下的形状:

    8.png8.png 即总共4层、中间有两层隐藏层的网络结构。结果是4 x 1维矩阵。
    我们可以用
    、、、
    来分别表示输出:路人、汽车、摩托、卡车。

    相关文章

      网友评论

        本文标题:【吴恩达机器学习】第四周—前馈神经网络

        本文链接:https://www.haomeiwen.com/subject/ucfjdhtx.html