【神经网络】基础知识与CNN网络基本框架

神经网络基础架构

基础动图网站:点击这里

整体框架为输入层,中间隐藏层,最后输出结果。

输入层,在这里图中主要是确定输入什么样的参数。比如说这个例子做分类,每一个点具有一个二维坐标系,那么可以选择的输入就如图所示。最基础的就是输入x, y坐标。还可以输入其他的值。

中间隐藏层由一个一个神经元组成(neuron)。具体的个数可以随便更改,隐藏层层数也可以随意更改。

最后输出层,主要看具体问题,需要输出什么。这个例子我也看不懂输出什么,应该是最后的右边图的底层,分界线就是作为分类吧。

神经元

普通神经元所需要干的活,就是把前面一层所有的输出值全部加权平均一下,获得自己的值。然后这个值可以再添加额外的bias,最后得到最终传递给下一层的值。

CNN

CNN卷积神经网络,主要用于图像识别。

学习网站:https://poloclub.github.io/cnn-explainer/#article-pooling

首先明确问题,给出一个咖啡样张,让神经网络进行判断。

上文写到,神经网络具有3层:输入、隐藏、输出。

输入为一张图片,输出为咖啡具体品类。

图片输入一般都采取RGB采样输入,三通道各自的值进行输入。

最后output确定是什么品类。至于怎么区别后面再说,暂时先理解为值越大说明是这个品类概率越高。

再看隐藏层复杂的多。

多了很多特别层,刚才的层都是很简单,加权平均输入,加bias输出就好。这里面层会不一样。

conv层:宏观来看他让输入64×64变为62×62.采取方式是,从图片0,0为左上角,开一个大小为3×3的正方形,小正方形做一个权平均,一直做到61,61最后得到一个62×62的图片。输入层都这么干一下,然后输入层,每一个像素点自己再做一下加权平均,bias然后输出。

relu层:一般作为激活函数,有啥用不知道。但是知道一下怎么计算的,针对每一个输出图像每一个像素单独计算,超过0取本身,小于0取0.

max_pool:跟各刚刚那个去小正方体类似,但是是将60×60压缩成了30×30.做法是比如0,0为左上角取2×2小正方体,然后小正方体里面比一下,取最大值作为该像素的值,然后2,2再作为左上角以此次类推。最后获得30×30.

上面层理解后,就累在一起形成了隐藏层。

最后经过隐藏层输出的是10张图片。但最后输出的是种类,显然是一个一维数组,所以就用了flatten降维,原理非常简单,直接每一行拼接到第一行就完了。最后再根据输出种类,每一个算一个加权平均加一个bias就行。最后让数据好看一些,再加一个softmax函数,让这个一维数组调整一下数值,完了大的代表是哪个种类概率高就完了。

相关推荐
轻刀快马1 分钟前
个人体验:从零构建高可用 Multi-Agent 架构与实战避坑指南
人工智能·架构·agent
SelectDB技术团队1 分钟前
PB 级自动驾驶数据秒级检索:Apache Doris 统一多模态数据平台实践
数据库·人工智能·自动驾驶·apache doris·selectdb
数智工坊4 分钟前
【UniT论文阅读】:用统一物理语言打通人类与人形机器人的知识壁垒
论文阅读·人工智能·深度学习·算法·机器人
Lyon198505287 分钟前
ChatGPT的最终总结分析-《文字定律》随笔
人工智能·ai·chatgpt
L、2189 分钟前
CANN神经网络算子库`ops-nn`:昇腾NPU上Matmul与激活函数的底层逻辑
人工智能·深度学习·神经网络
程序员码歌11 分钟前
OpenSpec 到 Superpowers:AI 编码从说清到做对
android·前端·人工智能
海兰11 分钟前
【第21篇-续】graph-Stream-Node改造为适配openAI模型示例
java·人工智能·spring boot·spring·spring ai
MobotStone16 分钟前
生成代码一分钟,填坑一小时?问题不在 AI,而在用法
人工智能
ccice0117 分钟前
硬核技术解析:运用Gemini多步推理链,攻克办公场景中的复杂决策与风险矩阵构建(国内免费镜像实操)
人工智能·线性代数·矩阵
2601_9594779119 分钟前
Vatee:数字化能力升级的全面观察
大数据·人工智能