理解神经网络

本质上,神经网络是通用函数逼近器,他可以近似拟合各种函数 ,这是靠激活函数压缩变化曲线实现的。

下边以ReLU拟合分段函数为例:这个分段函数有四个段,所以用一个隐藏层,隐藏层中有四个神经元,神经元①拟合最左边段......神经元④拟合最右边段:

ReLU=max(x,0);

首先ReLU的本质:使小于0的部分曲线消失,只保留大于0的部分,故我可以设法用多个ReLU做出多段曲线,然后叠加,就可以生成对应多段曲线:如下蓝色线为不同ReLU实际生效部分

所以一个隐藏层中,不同神经元可处理片段曲线,即可实现同一层神经元处理图片不同部分,然后叠加,就处理完了整张图片。

sigmoid做激活函数也可以实现拟合不同段曲线

一、所以可以理解神经网络处理图片的过程:

比如说有三个隐藏层:

隐藏层①有4个神经元

隐藏层②有3个神经元

隐藏层③有2个神经元

输入层输入数据到隐藏层

隐藏层①的神经元可以分别处理左上、左下、右上、右下部分图片,然后综合信息传到隐藏层②

隐藏层②的神经元可以进一步处理上、中、下部分图片,然后综合信息传到隐藏层③

隐藏层③的神经元可以处理上、下部分图片,然后整合,得到图片处理完的结果

所以一般随着隐藏层递进,神经元个数是逐渐减小的,因为要把部分得到的信息一步步综合,得到整张图片的信息。所以越靠近输入层的神经元,个数越多,因为安排每个神经元处理图片不同微小部分的信息。然后信息一步步综合,越靠近输出层的神经元,处理的信息面越广,所要神经元的个数也就越少。

二、那为什么有时候一开始会把输入层的信息先放大,即输入层n个特征,先放大数量到隐藏层①,其中隐藏层①有m个神经元(m>n):

因为可以泛化图片,把特征数先扩大,相当于给输入多加了一点噪声,此时得到的模型是不易过拟合的

三、理解迁移学习:

迁移学习是指我想训练某个模型,但是我没有足够多的数据,我可以把别人已经做好的能实现类似功能的模型搬过来,自己调一下输出等,就可以给自己用。

那为什么迁移学习有效呢?以处理图片为例,神经元是功能的载体,它不知道自己处理的是什么图片,它只知道自己要怎么处理那部分 。整个神经网络是实现功能的工具,我放入图片可以得到类似的处理,我把我要处理的图片放进模型,然后根据得出的结果,调整输出,就可能可以得到能处理自己图片的模型(对于迁移学习还不是很了解,深入学了再补一下内容)

相关推荐
悟纤4 小时前
Suno 爵士歌曲创作提示整理 | Suno高级篇 | 第22篇
大数据·人工智能·suno·suno ai·suno api·ai music
小北方城市网4 小时前
微服务注册中心与配置中心实战(Nacos 版):实现服务治理与配置统一
人工智能·后端·安全·职场和发展·wpf·restful
yl45304 小时前
污泥清淤机器人实践复盘分享
大数据·人工智能·机器人
码农丁丁4 小时前
第二十七篇 技术管理者自身的能力升级
人工智能·职场和发展·技术管理·ai时代的技术管理
想用offer打牌4 小时前
Spring AI Alibaba与 Agent Scope到底选哪个?
java·人工智能·spring
大江东去浪淘尽千古风流人物5 小时前
【DSP】xiBoxFilter_3x3_U8 dsp VS cmodel
linux·运维·人工智能·算法·vr
超级小龙虾5 小时前
Augment Context Engine MCP
人工智能
行业探路者5 小时前
健康宣教二维码是什么?主要有哪些创新优势?
人工智能·学习·音视频·二维码·产品介绍
灏瀚星空5 小时前
基于 Python 与 GitHub,打造个人专属本地化思维导图工具全流程方案(上)
开发语言·人工智能·经验分享·笔记·python·个人开发·visual studio
xcLeigh5 小时前
AI的提示词专栏:Prompt 与 Python Pandas 的结合使用指南
人工智能·python·ai·prompt·提示词