神经网络是如何一步步进行计算的,以及对计算过程的向量化

Z1(2),Z2(2),Z3(2) are just weighted linear combination of input value x1,x2,x3.上图右边灰色框里面的为Z(2),为3*1矩阵。

a1(2)=g(Z1(2))......a(2)为3*1的矩阵,对Z(2) 里面的每个元素应用g函数.

上述的计算我们可以分为两步,一步是计算Z(2),一步是计算a(2),如上图所示。

我们将input的x定义为a(1),所以将x写成a(1)(将其做为第一层的activations).

增加bias unit,a0(2)=1,则a(2)为4*1矩阵.

最后的结果,计算z(3),和a(3)=hΘ(x)=g(z(3)).

这个计算的过程也称为forward propagation,因为它的计算从input到output是一层一层推进(activation)的.我们将其计算过程向量化了,若我们按照右边绿色框中的进行计算的话,用矩阵与向量进行计算,这样计算更高效。

Neural network learning its own features

如果我们将左边的input遮住,只看右部分的话,和logistic regression很相似,如果我们只看右边蓝色部分的式子的话,我们会发现它和标准的logistic regression model是一样的(除了我们使用的是大写的Θ),但是这部分所做的就是logistic regression,但是它的input是由hidden layer(layer 2)计算后的输出,即这部分所做的和logistic regression是一样的,除了logistic regression输入是x1,x2,x3,而它的输入是a1(2),a2(2),a3(2).

a1(2),a2(2),a3(2)它们是自己learn function from input,从layer1到layer2的function是由Θ(1)来构成的,所以神经网络不是feed x1,x2,x3 to logistic regression,而是自己学习自己的features(a1(2),a2(2),a3(2)),然后将它们feed into logistic regression,并且取决于我们选择的Θ(1),你可以学习一些非常有趣复杂的features,然后你会得出一个better hypotheses(相比使用原始的x1,x2,x3或者x1,x2,x3的多项式来说),总之算法在选择参数上是灵活的,选择了参数后得到a1(2),a2(2),a3(2),然后再将它们feed into logistic regression(即最后一个结点).

神经网络结构

architectures是指神经网络的连接方式,上图是一种不同的neural network architecture, layer2可以接收来自layer1的输入,然后计算出复杂的features,layer3接收来自layer2的输入,计算出更为复杂的features,layer4接收layer3的输出计算出比layer3复杂的features,然后得到very interesting nonlinear hypotheses.

layer1是input layer,layer4是output layer,layer2和layer3是hidden layer,除了input layer和output layer之外的layer叫做hidden layer.

总结:

1,知道了什么叫做forward propagation(传播),从input layer到hidden layer再到output layer

2, 了解在计算中如何向量化来提高我们的计算效率

神经网络(4)---神经网络是如何帮助我们学习复杂的nonlinear hypotheses的更多相关文章

  1. 神经网络(1)--Non-linear hypotheses,为什么我们要学习神经网络这种算法来处理non-linear hypotheses

    神经网络(1)--No-linear hypotheses 为什么我们已经有了linear regression与logistic regression算法还要来学习神经网络这个另外的算法呢,让我们来 ...

  2. 图机器学习(GML)&图神经网络(GNN)原理和代码实现(前置学习系列二)

    项目链接:https://aistudio.baidu.com/aistudio/projectdetail/4990947?contributionType=1 欢迎fork欢迎三连!文章篇幅有限, ...

  3. 秒懂神经网络---BP神经网络具体应用不能说的秘密.

    秒懂神经网络---BP神经网络具体应用不能说的秘密 一.总结 一句话总结: 还是要上课和自己找书找博客学习相结合,这样学习效果才好,不能单视频,也不能单书 BP神经网络就是反向传播神经网络 1.BP神 ...

  4. [DL学习笔记]从人工神经网络到卷积神经网络_1_神经网络和BP算法

    前言:这只是我的一个学习笔记,里边肯定有不少错误,还希望有大神能帮帮找找,由于是从小白的视角来看问题的,所以对于初学者或多或少会有点帮助吧. 1:人工全连接神经网络和BP算法 <1>:人工 ...

  5. 学习笔记TF053:循环神经网络,TensorFlow Model Zoo,强化学习,深度森林,深度学习艺术

    循环神经网络.https://github.com/aymericdamien/TensorFlow-Examples/blob/master/examples/3_NeuralNetworks/re ...

  6. 深度学习原理与框架-Tensorflow卷积神经网络-卷积神经网络mnist分类 1.tf.nn.conv2d(卷积操作) 2.tf.nn.max_pool(最大池化操作) 3.tf.nn.dropout(执行dropout操作) 4.tf.nn.softmax_cross_entropy_with_logits(交叉熵损失) 5.tf.truncated_normal(两个标准差内的正态分布)

    1. tf.nn.conv2d(x, w, strides=[1, 1, 1, 1], padding='SAME')  # 对数据进行卷积操作 参数说明:x表示输入数据,w表示卷积核, stride ...

  7. 神经网络4_BP神经网络

    sklearn实战-乳腺癌细胞数据挖掘(博客主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005269003&a ...

  8. 单层感知机_线性神经网络_BP神经网络

    单层感知机 单层感知机基础总结很详细的博客 关于单层感知机的视频 最终y=t,说明经过训练预测值和真实值一致.下面图是sign函数 根据感知机规则实现的上述题目的代码 import numpy as ...

  9. 洛谷P1038 神经网络==codevs1088 神经网络

    P1038 神经网络 题目背景 人工神经网络(Artificial Neural Network)是一种新兴的具有自我学习能力的计算系统,在模式识别.函数逼近及贷款风险评估等诸多领域有广泛的应用.对神 ...

随机推荐

  1. 2017ACM/ICPC广西邀请赛 1007 Duizi and Shunzi

    Duizi and Shunzi Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  2. Android接收RabbitMQ消息。

    参考:https://blog.csdn.net/qq_36576738/article/details/83754621 我这android这边就不实现发布消息功能.因为我是在服务端那边推送消息. ...

  3. Float在内存中的存储方式及IEC61131处理

    Float在内存中的存储方式及IEC61131处理 1,fp32(32bits float)类型数据在存储器中占用4Bytes存储,且遵循IEEE-754标准: 一个浮点数分三部分组成: 符号位s(1 ...

  4. Centos7下nginx的安装与配置

    说明:软件安装的基础目录路径:/usr/local 所以下载软件的时候切换到此目录下下载直接解压即可 1.安装gcc gcc-c++依赖包 yum install -y gcc gcc-c++ 2.下 ...

  5. PAT(B) 1085 PAT单位排行(Java:20分)

    题目链接:1085 PAT单位排行 (25 point(s)) 题目描述 每次 PAT 考试结束后,考试中心都会发布一个考生单位排行榜.本题就请你实现这个功能. 输入格式 输入第一行给出一个正整数 N ...

  6. hdu 1022 Train Problem I【模拟出入栈】

    Train Problem I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  7. SAS学习笔记63 如何导出Log

    如上,将Log输出,然后又恢复到SAS系统里面的Log,把需要运行的程序放到他们中间就可以了.这种方法不会出现Log打印满了的情况 这种是先输出在SAS系统里面,然后在输出,在SAS里面Log的行是有 ...

  8. mysql sql 分析

    一.SQL 执行时间分析通过找到执行时间长的 SQL 语句,可以直观的发现数据层的效率问题. 1.通过 show processlist 来查看系统的执行情况mysql> show proces ...

  9. 7、注解@Mapper、@MapperScan

    7.注解@Mapper.@MapperScan 2018年09月20日 11:12:41 飞奔的加瓦 阅读数 3284    版权声明:版权声明:本文为博主原创文章,未经博主允许不得转载. https ...

  10. java之hibernate之配置讲解

    1.映射文件:User.hbm.xml <!-- package 指向class中所有类的包名,可以直接在指定类名时同时指定包名 --> <hibernate-mapping pac ...