为什么神经网络层数越多越好?训练次数与层数的区别与联系

为什么神经网络层数越多越好?

参考资料:https://www.zhihu.com/question/65403482、https://blog.csdn.net/weixin_44023658/article/details/106177580、https://www.bilibili.com/video/BV1bx411M7Zx

一句话回答

神经网络层数越多,对输入特征抽象的层次越深,对其理解的准确度相对来说也就越深。

神经网络关于层数的原理

人工智能的编程相比于传统编程的一个重要特点就在于,我们难以知道其内部到底是如何一步步执行,最后实现结果的?

image-20210724162321061

神经网络的本质就是模仿人类大脑中的神经元组成的网络,若干神经元的激发促使另一些神经元激发。

在神经网络中,后一层神经元的输入是前一层输出的加权和,前一层的特征在后一层就被抽象出来了,学习的过程其实就是调节和优化各连接权重和阈值,并不断抽象的过程。

例如对应一个猫的识别,第一层抽象出了猫的基本特征——两只眼睛一个鼻子一个嘴巴两个耳朵,第二层抽象出了猫的耳朵应该是尖尖的,眼睛是圆圆的…而第三层我们又抽象除了更加细致的特征,以此类推…最后根据相应的算法公式,我们推出根据这些抽象,最终在输出层给出这个图片中是猫的概率是多少多少,从而得出一个结论。

浅层神经网络的特征抽象程度不高,而层次越深特征的抽象程度越高。也就是在某些特定任务上所谓的“效果越好”,这也是为什么深度神经网络可以做出很多只有人类才能做到的需要高度抽象理解能力的事情。

数字识别的例子

以一个最基础的人工智能算法来举例:手写数字识别:

image-20210724162401171

我们将一个手写数字的图片拆分成一个28*28的图片,其中每一个像素点代表该点的灰度值(0~1,越小越黑,越大越白)

image-20210724162919659

而输入到输出的过程简单描述如下视频:

http://suprit-images.oss-cn-beijing.aliyuncs.com/2021-07-24-Filmage%202021-07-24_163510_MediumQuality.mp4

先来看隐含层第二层,可能各个神经元能分别对应上一个笔画部件,这就是我们前面提到的抽象。而层与层之间是有着连接的,上一层的神经元通过给定的算法公式在一定情况下才能输出到下一层,而通过诸如前向传播、反向传播、梯度下降、损失函数这些东西就可以实现神经网络的学习过程。

img

img

再来看隐含层第一层,识别圆圈的任务同理可以抽象成更细微的问题,也只有层数多了,才能够实现这样的抽象。

数字9的可能的特征抽象如下:

image-20210724174312775

这样的原理同样可以应用到我们刚刚提到的猫的识别上,可能的特征抽象如下:

image-20210724174425786

⭐️个人的一种理解

大一的C语言课上老师就告诉我,编程的逻辑无外乎只有三种:顺序、判断、循环那么人工智能编程是一种例外吗?貌似图像识别并没有用到这三种逻辑来实现识别目标呀?

其实,从原理上来讲,这是可以实现的。以刚刚的数字识别为例,我们输入的图像为28*28个像素,每层有16个节点,分为3层,层与层的连接之间还要考虑权重和偏置,大约有784*16+16*16+16*10=13002个神经元,可以理解为有13002个情况要考虑,每一个地方的不同,都可以导致不同的结果。

我个人认为,如果你真的足够强大,使用我们大一学到的C语言,写上那么** 2 13002 2^{13002} 213002​​个if**,依然是可以实现图像识别这个人工智能程序的。哈哈。

从这个角度上来讲,我们在讨论机器是如何学习,其实就是想办法看看这么让电脑来妥善的处理这么一大坨参数,而使用数学公式、向量化这些东西,其实就是一个工具和桥梁,来让程序能够更好的解决问题,同时使得程序更容易编写。这就是是数学和Python的魅力所在:

image-20210724181710795

增加学习次数与层数的关系和区别

有人问到,单单增加浅层神经网络的学习次数,可以提高准确率吗?

其实是可以的,但是到达一个局限值之后就再也无法提高了,甚至还会降低。而这个局限制往往会比深层神经网络要低的多。因为层数提高的是对任务的抽象程度,而学习次数仅仅是通过当前的学习方法增加熟练度。

层数真的越多越好吗?

不是说仅仅层数越多效果越好,这个还取决于你的激活函数,还有各种超参数的设置等等,关于超参数的设置属于是一个专门的领域问题。神经网络说白了就是个多层复合函数,层数越多一般会更“逼近现实”,但是也容易导致过拟合问题。

在这里插入图片描述

过拟合

当你的模型开始记录训练数据而不是从中学习的时候,就发生了过拟合。就好比我们在复习考试的时候一字不差背下了书中的所有内容,但知识稍微一变通,我们又不会了。

关于过拟合,依然举数字识别的例子,由于我们的层数过多,对训练数据的抽象过分到了几乎每几个像素都要抽象一下,这样就可能导致除了训练集里的图片可以百分百识别(毕竟几乎每个像素都学习好了),我们再也无法识别其他的图片。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/58501.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图神经网络(Graph Neural Networks)概述

论文:A Comprehensive Survey on Graph Neural Networks 一篇关于图神经网络的综述文章,着重介绍了图卷积神经网络(GCN),回顾了近些年的几个主要的图神经网络的的体系:图注意力网络、图自编码机、图生成网…

几种图神经网络方法总结(Graph Neural Network)

概要 近年来图神经网络受到大家越来越多的关注,在文本分类(Text classification),序列标注(Sequence labeling), 神经机器翻译(Neural machine translation),关系抽取(Relation extraction&…

CNN神经网络层次分析

一. CNN简介 CNN(卷积神经网络)是传统神经网络的变种,CNN在传统神经网络的基础上,引入了卷积和pooling。与传统的神经网络相比,CNN更适合用于图像中,卷积和图像的局部特征相对应,pooling使得通过…

图神经网络(Graph neural networks)综述

论文链接:Graph Neural Networks: A Review of Methods and Applications Abstract:图(Graph)数据包含着十分丰富的关系型信息。从文本、图像这些非结构化数据中进行推理学习,例如句子的依赖树、图像的场景图等&#…

神经网络训练数据集大小,神经网络输入图片大小

卷积神经网络 测试图像和 训练图像 大小要一样吗 这取决于你的卷积神经网络中是否存在全连接层,因为不同于全连接层,卷积神经网络中的参数是卷积核的权重,与输入大小无关。 如果是全卷积网络,那么对于输入的图像分辨率要求不高&…

神经网络层数越多越好吗,神经网络的层数怎么看

神经网络的隐含层节点数怎么设置啊?比如要设置18层隐含节点数!跪求,工作急用! 隐层一般是一层或两层,很少会采用三层以上,至少隐层的节点数确定,一般有以下几种方法:1、有经验的人员…

华为最新大模型来了!盘古3.0问世,千亿参数规模3万亿tokens,放话「不作诗只做事」

来源 | 量子位 | 公众号 QbitAI 终于,华为的大模型动向来了! 盘古大模型3.0,今天正式发布。 最底层的基础大模型包括100亿参数、380亿参数、710亿参数和1000亿参数四个版本,预训练使用了超3万亿tokens。 但和早先的传言不同&am…

Nat Biotechnol -- 生成式AI进军更高效价抗体

类似于ChatGPT的语言模型已被应用于改进针对COVID-19、埃博拉和其他病毒的抗体疗法。 代码看不懂?ChatGPT 帮你解释,详细到爆! 单克隆抗体(Y形)与SARS-CoV-2病毒纤突蛋白(红色)上的结合位点&…

什么是科技大爆炸?2023年星云虚境绝对是AI人工智能行业大拿

什么是科技大爆炸?2023年绝对是AI人工智能发展最爆发那一年,自从315chatgpt发布,你看看一夜之间市面上出来了多少的AI工具,在普通人还在嘲笑现在的AI是个智障的时候,聪明的人已经使用这些工具极大的提高自己的生产力了…

华为最新大模型来了!盘古3.0问世,千亿参数规模3万亿tokens,放话「不作诗只做事」...

明敏 发自 东莞量子位 | 公众号 QbitAI 终于,华为的大模型动向来了! 盘古大模型3.0,今天正式发布。 最底层的基础大模型包括100亿参数、380亿参数、710亿参数和1000亿参数四个版本,预训练使用了超3万亿tokens。 但和早先的传言不同…

Unity实现简单卡牌游戏框架

Unity卡牌游戏教程(一)简单框架 前言 项目的初衷是以项目形式串起unity各种零散知识,语言风格较详细(啰嗦) 需求 先来看需要实现什么东西 构建卡牌对象 简单的UI系统 UI和场景的简单交互 前期准备 打开unity&…

卡牌游戏算法原理、代码

1、原理 卡片游戏算法桌上有一叠牌,从第一张牌(即位于顶面的牌)开始从上往下依次编号为1~n。当至少还剩两张牌时进行一下操作:把第一张牌扔掉,然后把第二张牌放到整叠牌的最后,以此往复。输入卡牌数量n&am…

Unity制作卡牌游戏

我的第一个unity项目是卡牌游戏,是看着慕课网以及用同学分享的项目资源跟着老师做的。慕课网课程的链接,希望老师允许我把课程的链接放在这里,宁静方致远 分享的项目,内含素材,希望他们可以同意把他们的链接放在这里。…

百度搜索框搜索时显示或者隐藏历史搜索记录

1.首先进入百度首页 2.找到设置下的搜索设置,如下图所示 3.点击“搜索设置”会出现如下图的弹框,有搜索历史记录的设置,“显示”或者“不显示”。

在谷歌搜索框内不显示搜索记录

在谷歌搜索框内不显示搜索记录 在不删除谷歌历史浏览记录的前提下,不主动显示浏览记录。 操作步骤如上图所示,在数据与个性化中找到网络与应用活动记录,点进去,然后关闭 推荐用edge,可以轻松切换用户,管理…

google 输入栏不显示历史搜索记录方法

网上看了很多回答,试了都不起作用。这里记录一下我的方法,供大家参考。 第一步:在google输入栏输入:chrome://version 查看浏览器信息。其中有个个人资料路径 第二步:在文件夹中找到该路径,路径下有个His…

企业数据分析分四步走:描述、诊断、预测、指导

谈到数据,大家都喜欢拿大数据说事儿,精准营销、客户管理、企业洞察,但事实上,对于大部分中小型企业来说,把创立至今多少年来各个渠道积攒下来的数据统合到一起,也仅仅只是小数据而已。 这些数据,选用合适的工具,可以非常轻松的管好。不过,在选工具之前可以先问自己这…

什么是RLHF

什么是RLHF? **字面翻译:**RLHF (Reinforcement Learning from Human Feedback) ,即以强化学习方式依据人类反馈优化语言模型。 强化学习从人类反馈(RLHF)是一种先进的AI系统训练方法,它将强化学习与人类…

ChatGPT,我跟不动了,你呢?

周末扒出来一个 10 多年前的老系统,搁现在绝对得老破旧一个,如果要升级改造,绝对不如重写速度快。打开编辑器,从 JSP 翻到 XML 配置文件,基本还算看得懂,不过还是太久远了,把玩起来难度比较大。…

chatgpt赋能python:用Python开发软件的步骤

用 Python 开发软件的步骤 Python 是一种广泛使用的编程语言,因其灵活性、易读性以及可扩展性而备受推崇。Python 也有许多应用场景。在本文中,我们将重点介绍使用 Python 开发软件的基本步骤,帮助初学者入门。 第一步:确定需求…