大脑中的神经元

我们的大脑都充满了上图所示的神经元,神经元有一个细胞体(cell body),还有一些input wires,专业词汇叫做树突(dendrite),它们从其它地方接收输入信息,神经元还有一个output wire,专业词汇叫做轴突(Axon),用来给其它的神经元发送信号。简单说来,神经元就是一个计算单元,它从input wires那儿接收输入,经过一些计算后,然后能过output wire(轴突)将输出传送给其它神经元。

大脑中的一系列神经元是如何交流的

神经元之间是通过小脉冲电流(spikes)来进行交流的,如果一个神经元想要发送信息,它发送的是小脉冲电流,通过轴突传送给与其连接的其它神经元的树突,这个神经元接收到信息后,经过计算,再通过自己的轴突,将信息传送给其它的神经元。

我们的知觉与肌肉也是这样工作的,如果你想要移动你的一块肌肉,你的神经元将电流传给你的肌肉,导致肌肉收缩。我们的眼睛也可以传递电流给我们大脑中的神经元的树突,这样引起人体的知觉。

Neuron Model: Logistic Unit(单个的神经元)

中间的红色的小圆圈可以看做the body of neuron,feed the neuron a few inputs通过input wires,然后the neuron做一些计算,然后输出值在output wire.做的计算是hΘ(x)=1/(1+e-ΘTx).

当我们画一个神经网络时,有时我们只画x1,x2,x3这三个结点,有时我们会另外增加一个x0的结点,这个x0结点有时称为the bias unit(neuron),因为x0=1,有时候我们会画上它,有时候不画,取决于对具体的问题来说哪个更方便。

在神经网络的另一个专业词汇是sigmoid(logistic) activation function:它是g(z)=1/(1+e-z).

Θ参数在神经网络中有时称为weights of a model = parameters of model.

神经元网络

神经网络是一系列的神经元紧紧结合在一起,在这个神经网络里面,第一层也称为input layer,最后一层也称为output layer,它是一个输出最后结果的神经元;中间的第二层称为the hidden layer,任何不是input layer和output layer的层都叫做hidden layer。

神经网络是如何计算的

我们用ai(j)表示activation of unit i in layer j。a1(2)表示the activation of the first unit in layer 2.activation是指它会接收输入然后进行输出。

Θ(j)为我们的参数,它为一个weights的矩阵,控制function mapping from layer j to layer j+1.

a1(2)的值,a2(2)的值,a3(2)的值计算如上图所示,这儿我们有3个input units和3个hidden units,Θ(1)的维度是3*4的矩阵。

一般来说,如果我们在第j层有sj个units,在j+1层有sj+1个units,则Θ(j)的维度是sj+1*(sj+1)。

最后一个结点的计算如上图所示的hθ(x),Θ(2)表示参数矩阵,控制第2层到第三层的计算.

神经网络(3)---如何表示hypothesis,如何表示我们的model的更多相关文章

  1. Stanford机器学习笔记-4. 神经网络Neural Networks (part one)

    4. Neural Networks (part one) Content: 4. Neural Networks (part one) 4.1 Non-linear Classification. ...

  2. (5keras自带的模型之间的关系)自己动手,编写神经网络程序,解决Mnist问题,并网络化部署

    ​ ​其中: 1.VGG 网络以及从 2012 年以来的 AlexNet 都遵循现在的基本卷积网络的原型布局:一系列卷积层.最大池化层和激活层,最后还有一些全连接的分类层. 2.ResNet 的作者将 ...

  3. Python之TensorFlow的卷积神经网络-5

    一.卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度 ...

  4. 用Keras搭建神经网络 简单模版(六)——Autoencoder 自编码

    import numpy as np np.random.seed(1337) from keras.datasets import mnist from keras.models import Mo ...

  5. (转)word2vec前世今生

    word2vec 前世今生 2013年,Google开源了一款用于词向量计算的工具——word2vec,引起了工业界和学术界的关注.首先,word2vec可以在百万数量级的词典和上亿的数据集上进行高效 ...

  6. NLP之——Word2Vec详解

    2013年,Google开源了一款用于词向量计算的工具--word2vec,引起了工业界和学术界的关注.首先,word2vec可以在百万数量级的词典和上亿的数据集上进行高效地训练:其次,该工具得到的训 ...

  7. word2vec前世今生

    word2vec前世今生 2013年,Google开源了一款用于词向量计算的工具--word2vec,引起了工业界和学术界的关注.首先,word2vec可以在百万数量级的词典和上亿的数据集上进行高效地 ...

  8. word2vec预训练词向量

    NLP中的Word2Vec讲解 word2vec是Google开源的一款用于词向量计算 的工具,可以很好的度量词与词之间的相似性: word2vec建模是指用CBoW模型或Skip-gram模型来计算 ...

  9. Word2Vec详解

    Word2Vec详解 word2vec可以在百万数量级的词典和上亿的数据集上进行高效地训练:其次,该工具得到的训练结果--词向量(word embedding),可以很好地度量词与词之间的相似性.随着 ...

随机推荐

  1. JVM(四) 垃圾回收

    1. 堆内存结构 Java堆从GC的角度可以细分为:新生代(Eden区.From Survivor区和To Survivor区)和老年代. 1.1 新生代 新生代是用来存放新生的对象.一般占据堆的1/ ...

  2. Javascript 闭包何时回收?

    定义 闭包是函数和声明该函数的词法环境的组合.闭包是指有权访问另一个函数作用域中的变量的函数,创建闭包的最常见的方式就是在一个函数内创建另一个函数,通过另一个函数访问这个函数的局部变量. 范例 fun ...

  3. maven profiles多环境配置

    maven profiles多环境配置 转载. https://blog.csdn.net/runbat/article/details/81747874 今天做了一个小项目,需要配置开发.测试.预发 ...

  4. Python 重点知识整理(基于Python学习手册第四版)

    字节型编译 如果Python在系统中有写的权限,当程序运行时Python会把源码编译成字节码(与系统环境无关)存在一个.pyc扩展名文件中,如果没有修改源码而重新运行程序时,不会进行编译的步骤而使用字 ...

  5. I2C基础及时序

    1.模式 标准模式:达到100Kb/S 快速模式:达到400Kb/S 2.连接图  3.协议 SDA.SCL在空闲的时候为高电平 重点!重点!重点!  4.涉及到多主机仲裁的竞争及时钟信号的同步

  6. 用Onenote写博客日志 

    进入OneNote,选中要发布博客的分区,然后点击菜单栏中的[文件]->[发送]->[发送至博客]         这时候会启动word程序弹出下面的对话框(如果你从未设置过),点击[立即 ...

  7. SPA项目首页导航+左侧菜单

    Mock.js是个啥 前后端分离之后,前端迫切需要一种机制,不再需要依赖后端接口开发,而今天的主角mockjs就可以做到这一点 Mock.js是一个模拟数据的生成器,用来帮助前端调试开发.进行前后端的 ...

  8. FFplay源代码分析:整体流程图(仅供参考)

  9. k8s部署nacos

    如果是在centos7上直接启动nacos 注意修改启动命令   sh startup.sh -m standalone 访问路径 http://********:8848/nacos/index.h ...

  10. 多线程面试题之【三线程按顺序交替打印ABC的方法】

    建立三个线程,线程名字分别为:A.B.C,要求三个线程分别打印自己的线程名字,但是要求三个线程同时运行,并且实现交替打印,即按照ABCABCABC的顺序打印.打印10轮,打印完毕控制台输出字符串:&q ...