【神经网络】基础知识与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函数,让这个一维数组调整一下数值,完了大的代表是哪个种类概率高就完了。

相关推荐
cici158744 小时前
卡尔曼滤波器实现RBF神经网络训练
人工智能·深度学习·神经网络
Neolnfra8 小时前
拒绝数据“裸奔”!把顶级AI装进自己的硬盘,这款神仙开源工具我粉了
人工智能·开源·蓝耘maas
code_li8 小时前
只花了几分钟,用AI开发了一个微信小程序!(附教程)
人工智能·微信小程序·小程序
飞Link8 小时前
瑞萨联姻 Irida Labs:嵌入式开发者如何玩转“端侧视觉 AI”新范式?
人工智能
RSTJ_16258 小时前
PYTHON+AI LLM DAY THREETY-SEVEN
开发语言·人工智能·python
郝学胜-神的一滴8 小时前
深度学习优化核心:梯度下降与网络训练全解析
数据结构·人工智能·python·深度学习·算法·机器学习
Aision_8 小时前
Agent 为什么需要 Checkpoint?
人工智能·python·gpt·langchain·prompt·aigc·agi
小贺儿开发9 小时前
《唐朝诡事录之长安》——盛世马球
人工智能·unity·ai·shader·绘画·影视·互动
秋99 小时前
ESP32 与 Air780E 4G 模块配合做 MQTT 数据传输
人工智能
DeepFlow 零侵扰全栈可观测9 小时前
运动战:AI 时代 IT 运维的决胜之道——DeepFlow 业务全链路可观测性的落地实践
运维·网络·人工智能·arcgis·云计算