神经网络整体架构及细节(详细简单)
前言:
神经网络的来源已经有大部分博主有详细的讲过了,但我发现整体框架中的细节很多博主都是大体讲了讲,所以作者今天想来好好详细的讲讲框架中的细节。
一:神经网络构架大体介绍
如下图所示:
这张图很生动的展现了我们神经网络的基本框架,我们会发现只要理解了这张图,就掌握了神经网络的大部分内容。
我们在图中不难看出整体架构包括层次结构,神经元,全连接,非线性四个部分,所以我们就依据它们来展开讲解。
二:详细介绍
(1)层次结构
在神经网络中神经网络的我们一般分成三个部分:
1:输入层(input layer)
2:隐藏层(hidden layer)
3:输出层(output layer)
ps:要注意的是,中间的隐藏层可以由多层。
(2)神经元
还是把上图给搬下来如下图:
我们可以看到图中每个层次中都有许多圆圆的球似的东西,这个东西就是在神经网络中的神经元,每一种层次中的神经元中的含量不太一样。
在输入层中的每一个神经元里面是你输入原始数据(一般称为X)的不同特征,比如x为一张图片,这张图片的像素是32*32*3,其中的每一个像素都是它的特征吧,所以有3072个特征对应的输入层神经元个数就是3072个,这些特征以矩阵的形式进行输入的。我们举个例子比如我们的输入矩阵为‘1*3072’(第一维的数字表示一个batch(batch指的是每次训练输入多少个数据)中有多少个输入;第二维数字中的就是每一个输入有多少特征。)
在隐藏层中的每一层神经元表示对x进行一次更新的数据,而每层有几个神经元(比如图中hidden1层中有四个神经元)表示将你的输入数据的特征扩展到几个(比如图中就是四个),就比如你的输入三个特征分别为年龄,体重,身高,而图中hidden1层中第一个神经元中经过变换可以变成这样‘年龄*0.1+体重*0.4+身高*0.5’,而第二个神经元可以表示成‘年龄*0.2+体重*0.5+身高*0.3’,每一层中的神经元都可以有不同的表示形式。
在输出层中的的神经元个数主要取决于你想要让神经网络干什么,比如你想让它做一个10分类问题,输出层的矩阵就可以是'1*10'的矩阵(第一维表示的与输入层表示数字相同,后面10就是10种分类)。
(3)全连接
我们依旧照搬原来的图:
我们看到的每一层和下一层中间都有灰色的线,这些线就被称为全连接(因为你看上一层中每个神经元都连接着下一层中的所有神经元),而这些线我们也可以用一个矩阵表示,这个矩阵我们通常称为‘权重矩阵’,用大写的W来表示(是后续我们需要更新的参数)。权重矩阵W的维数主要靠的是上一层进来数据的输入数据维数和下一层需要输入的维数,可以简单理解为上有一层有几个神经元和下一层有几个神经元,例如图中input layer中有3个神经元,而hidden1 layer中有4个神经元,中的W的维度就为‘3*4’,以此类推。(主要是因为我们全连接层的形式是矩阵运算形式,需要满足矩阵乘法的运算法则)
(4):非线性
在每层运算做完后,我们得数据不能直接输入到下一层计算中,需要添加一些非线性函数(大部分也可以叫做激活函数),常用的激活函数有relu,sigmoid,tanh(读者可以去查查看),就比如说在input layer 在hidden1 layer计算完后不能将数据直接传如hidden2 layer在这之间需要添加一个激活函数。
三:参考视频
1:其中的p5与p6:
不愧是计算机博士唐宇迪居然半天教会了我大学4年没学会的深度学习经典算法解析入门到实战课程,看不懂你打我!!!_哔哩哔哩_bilibili
神经网络整体架构及细节(详细简单)相关推荐
- 神经网络基础:(3)神经网络整体架构
目录 1.神经网络整体架构: 2.影响因素: 3.数据预处理 4.参数初始化
- 5.3 卷积神经网络整体架构
一)整体结构 总结: 卷积神经运算就是使图像变小变厚的过程. 变厚的过程是卷积去提取图片的特征,变小的过程就是池化去减小图片的维度 最后全连接层就是将所有的特征分类集中在一起. 二)非线性变化层 也就 ...
- 卷积神经网络(CNN)超详细介绍
文章转自:https://blog.csdn.net/jiaoyangwm/article/details/80011656 文章目录 1.卷积神经网络的概念 2. 发展过程 3.如何利用CNN实现图 ...
- 颜水成发了个「简单到令人尴尬」的视觉模型,证明Transformer威力源自其整体架构...
来源:量子位 Transformer做视觉取得巨大成功,各大变体频频刷榜,其中谁是最强? 早期人们认为是其中的注意力机制贡献最大,对注意力模块做了很多改进. 后续研究又发现不用注意力换成Spatial ...
- 端云一体人工智能开发平台整体架构
端云一体人工智能开发平台整体架构 引言 当前人工智能(Artificial Intelligence)技术发展迅猛,在机器视觉.语音识别以及自然语言处理等多个技术领域取得了卓越的进展,带来了更高的精确 ...
- 一文读懂:完整的支付系统整体架构
http://www.sohu.com/a/199827912_343156 支付产品模块是按照支付场景来为业务方提供支付服务.这个模块一般位于支付网关之后,支付渠道之前. 它根据支付能力将不同的支付 ...
- Spring Framework(框架)整体架构
原文链接:https://blog.csdn.net/wd2014610/article/details/80061808 Spring 在这个Spring框架大行其道的软件开发世界里,尚有很多工程师 ...
- 厉害了!一文看懂各大互联网支付系统整体架构
在互联网产品运营中,有很多小伙伴或许会遇到这样的困扰:产品好不容易推出来了,流量成本节节攀升,用户的活跃度.留存度却持续下降. 因此在瞬息万变的互联网产品环境中,需要研发接入支付系统来加入商业行为的闭 ...
- 学习 vuex 源码整体架构,打造属于自己的状态管理库
前言 这是学习源码整体架构第五篇.整体架构这词语好像有点大,姑且就算是源码整体结构吧,主要就是学习是代码整体结构,不深究其他不是主线的具体函数的实现.本篇文章学习的是实际仓库的代码. 其余四篇分别是: ...
最新文章
- 用Azure VM + Azure Database for MySQL搭建Web服务
- python客户端与服务器端通信数据库原理_python网络-HTTP协议(28)
- linux下利用shell脚本和mysqldump热备份和恢复mysql
- centos 设置双网卡,双网关
- Meta分析到底该怎么选题?
- 【收藏】使用Docker搭建MySQL服务
- spring14-----AOP之通知参数
- 关于Struts2中的值栈与OGNL表达式
- 从 VMWare 到阿里神龙,虚拟化技术 40 年演进史
- windows msiexec quiet静默安装及卸载msi软件包
- arch linux 看图软件,菠萝看图
- javascript定时器的计时事件
- MSN账号被盗,成功找回记
- JavaScript弹窗事件
- 为什么程序员会秃头?盘点程序员糟心的几大因素
- LoRa 信噪比和接收灵敏度
- 安卓相机camera2开发知识点
- 【JavaScript】this指向经典面试题(超详细)
- 内存占用过高的原因及解决方法
- 2014春节流水帐及杂想