理解神经网络

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

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

ReLU=max(x,0);

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

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

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

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

比如说有三个隐藏层:

隐藏层①有4个神经元

隐藏层②有3个神经元

隐藏层③有2个神经元

输入层输入数据到隐藏层

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

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

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

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

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

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

三、理解迁移学习:

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

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

相关推荐
橙汁味的风1 分钟前
1基础搜索算法
人工智能·图搜索
Dfreedom.5 分钟前
第一阶段:U-net++的概况和核心价值
人工智能·深度学习·神经网络·计算机视觉·图像分割·u-net·u-net++
weixin_462446236 分钟前
使用 Docker Compose 部署 Next-AI-Draw-IO(精简 OpenAI 兼容配置)
人工智能·docker·容器
Dfreedom.6 分钟前
循阶而上,庖丁解牛:系统学习开源 AI 模型的行动指南
人工智能·深度学习·学习·开源·图像算法
亚马逊云开发者8 分钟前
使用 Kiro AI IDE 开发 基于Amazon EMR 的Flink 智能监控系统实践
人工智能
数据光子10 分钟前
【YOLO数据集】自动驾驶
人工智能·yolo·自动驾驶
Elastic 中国社区官方博客12 分钟前
使用 Elasticsearch 中的结构化输出创建可靠的 agents
大数据·人工智能·elk·elasticsearch·搜索引擎·ai·全文检索
北京耐用通信16 分钟前
告别AGV“迷路”“断联”!耐达讯自动化PROFIBUS三路中继器,用少投入解决大麻烦
人工智能·科技·网络协议·自动化·信息与通信
xinyaozixun17 分钟前
闪极loomos系列AI眼镜重磅发布,重构日常佩戴体验,再次引领智能穿戴赛道
人工智能·重构
Hcoco_me19 分钟前
大模型面试题22:从通俗理解交叉熵公式到通用工程实现
人工智能·rnn·自然语言处理·lstm·word2vec