如何计算神经网络参数的个数?

这篇具有很好参考价值的文章主要介绍了如何计算神经网络参数的个数?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. 卷积层

2. 分类层

3. 计算 LeNet 网络的参数个数


神经网络随着层数的加深,网络参数的个数会越来越多,小的网络有成千上万个参数,大的可以达到千万个网络参数。

所以应该如何计算神经网络参数的个数?

图像分类的神经网络,包含两个部分:特征提取层+ 分类层

特征提取层就是将提取图像中的特征,这里的特征就是图像的细节,例如边缘、关键点等等。类似于人在识别物体的时候,往往不需要看清物体具体长什么样子,只需要观察大概的轮廓就知道这个物体是人还是树。那么这里人的轮廓或者树的轮廓就是特征,而我们是不需要知道这个人长得怎么样的。

因此神经网络的特征提取层就是在不断的提取这些特征

如果把神经网络比作一个近视的人的话,那么他在分类例如人、树的时候,度数就可以深一点(神经网络可以浅一点),只要不是太瞎,都可以将人、树进行分类。但是在做男人、女人分类的时候就不能这么瞎了,因为男人女人的轮廓是近似的,所以随着分类任务的难度,神经网络的就要叠加深度,让神经网络不要看的那么模糊

在神经网络中,特征提取的操作就是利用卷积。最典型的例子就是假如卷积核是soebl算子的时候,就可以进行垂直或者水平的边缘检测(具体的可以参考图像处理的空域滤波)。因此,特征提取的卷积操作只不过是神经网络将它认为的关键特征逐步的提取出来而已

而分类层就提取的特征按照label进行分类,用的是线性的全连接

所以,计算神经网络里面的参数包含两个部分:特征提取层+ 分类层

1. 卷积层

这里先介绍卷积层的参数

如何计算神经网络参数的个数?

上图是一个3维图像的卷积过程,这里将图像的维度叫做通道(channel)。卷积的过程就是建立一个卷积核对每个通道的图像进行卷积(每个通道对应不同的卷积核),然后相加产生一个单通道的图像

因为神经网络学习的内容就是卷积核里面的权重是多少,那么这里需要参数的个数就是 3*3*3 = 27

如果图像的维度不是3通道呢 ?或者说输出的维度一定是 单通道 ?

如何计算神经网络参数的个数?

我们将它当成方块来进行思考,一个方块就是一组卷积核。这样图像的维度是C的话,将C个卷积核堆在一块就是一组卷积核,那么产生的图像仍然是单通道的(一层输出特征图)

只要将方块(一组卷积核)的个数任意扩展,那么输出的图像就是多通道了

所以上述图像参数个数是:FH * FW * C * FN,也就是一个方块的权重个数 * FN 个,然后每个方块又是由一片一片的卷积核堆起来的,就等于 FH * FW * C

所以,卷积层的参数计算公式为 :卷积核的size * 一组卷积核的深度 * 总共有多少组

这里与之对应的关系是:卷积核的深度 = 输入图像的深度,方块的个数 = 输出图像的深度

所以,可以得出下面的参数个数

如何计算神经网络参数的个数?

 而偏置bias 是等于方块的个数,也就是输出的深度

如果将bias改为True的话,加上输出的深度就行了,这里是6,所以答案为456

如何计算神经网络参数的个数?

2. 分类层

全连接层的计算很简单,就是:输入的深度 * 输出的深度

如何计算神经网络参数的个数?

如下的线性层,这里是 84*10 = 840

如何计算神经网络参数的个数?

 而偏置bias 是等于输出的个数

如果将bias改为True的话,加上输出的深度就行了,这里是10,所以答案为850

 如何计算神经网络参数的个数?

3. 计算 LeNet 网络的参数个数

LeNet 网络结构如图

如何计算神经网络参数的个数?

conv1 的参数个数为:3*6*5*5 + 6 = 456

这里的3 是输入的深度,6是输出的深度,5是卷积核的大小,这里是正方形 5 * 5

如何计算神经网络参数的个数?

因此网络总参数个数应该为:456+2416+48120+10164+850=62006

如何计算神经网络参数的个数?

如图,和我们计算的结果一样

如何计算神经网络参数的个数?文章来源地址https://www.toymoban.com/news/detail-462922.html

到了这里,关于如何计算神经网络参数的个数?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 使用PyTorch构建神经网络,并使用thop计算参数和FLOPs

    使用PyTorch构建神经网络,并使用thop计算参数和FLOPs

    FLOPs和FLOPS区别 FLOPs(floating point operations)是指浮点运算次数,通常用来评估一个计算机算法或者模型的计算复杂度。在机器学习中,FLOPs通常用来衡量神经网络的计算复杂度,因为神经网络的计算主要由矩阵乘法和卷积操作组成,而这些操作都可以转化为浮点运算次数的形式

    2024年02月03日
    浏览(10)
  • 深度学习基础入门篇[8]::计算机视觉与卷积神经网络、卷积模型CNN综述、池化讲解、CNN参数计算

    计算机视觉作为一门让机器学会如何去“看”的学科,具体的说,就是让机器去识别摄像机拍摄的图片或视频中的物体,检测出物体所在的位置,并对目标物体进行跟踪,从而理解并描述出图片或视频里的场景和故事,以此来模拟人脑视觉系统。因此,计算机视觉也通常被叫

    2024年02月05日
    浏览(15)
  • 经过卷积神经网络之后的图片的尺寸如何计算

    经过卷积神经网络(Convolutional Neural Network,CNN)处理后,图片的尺寸会发生变化,这是由于卷积层、池化层等操作引起的。计算图片经过卷积神经网络后的尺寸变化通常需要考虑卷积核大小、步幅(stride)、填充(padding)以及池化操作等因素。以下是计算过程的一般步骤:

    2024年02月10日
    浏览(11)
  • PyTorch+PyG实现图神经网络经典模型目录

    PyTorch+PyG实现图神经网络经典模型目录

    大家好,我是阿光。 本专栏整理了《图神经网络代码实战》,内包含了不同图神经网络的相关代码实现(PyG以及自实现),理论与实践相结合,如GCN、GAT、GraphSAGE等经典图网络,每一个代码实例都附带有完整的代码。 正在更新中~ ✨ 🚨 我的项目环境: 平台:Windows10 语言环

    2024年02月03日
    浏览(24)
  • 神经网络:参数更新

    在计算机视觉中,参数更新是指通过使用梯度信息来调整神经网络模型中的参数,从而逐步优化模型的性能。参数更新的作用、原理和意义如下: 1. 作用: 改进模型性能:参数更新可以使模型更好地适应训练数据,提高模型的预测准确性。 减小损失函数:通过调整参数,可

    2024年02月10日
    浏览(9)
  • 神经网络 03(参数初始化)

    神经网络 03(参数初始化)

    对于某一个神经元来说 ,需要初始化的参数有两类:一类是权重W,还有一类是偏置b,偏置b初始化为0即可。而权重W的初始化比较重要,我们着重来介绍常见的初始化方式。 (1)随机初始化 随机初始化从均值为 0,标准差是 1 的高斯分布(也叫正态分布)中取样,使用一些

    2024年02月09日
    浏览(5)
  • 【人工智能】神经网络、M-P_神经元模型、激活函数、神经网络结构、学习网络参数、代价定义、总代价

    ⚫ 输入:来自其它n个神经元传递过来的输入信号 ⚫ 处理:输入信号通过带权重的连接进行传递, 神经元接受到总输入值将与神经元的阈值进行比较 ⚫ 输出:通过激活函数的处理以得到输出

    2024年02月16日
    浏览(11)
  • 神经网络中参数与超参数的区别是什么?

    在神经网络中,参数和超参数是两个非常重要但概念上不同的元素。它们的主要区别在于它们在模型训练和构建中的角色和如何被确定。 参数(Parameters) 定义:参数是神经网络在训练过程中学习的变量。这些包括权重(weights)和偏差(biases)。 确定方式:参数是通过训练

    2024年01月22日
    浏览(6)
  • 神经网络中的超参数调整

    神经网络中的超参数调整

    背景         在深度神经网络学习和优化中,超参数调整一项必备技能,通过观察在训练过程中的监测指标如损失loss和准确率来判断当前模型处于什么样的训练状态,及时调整超参数以更科学地训练模型能够提高资源利用率。在本研究中使用了以下超参数,下面将分别介

    2024年04月15日
    浏览(6)
  • RBF神经网络参数的参数优化(进化算法)+Matlab源码

    RBF神经网络参数的参数优化(进化算法)+Matlab源码

    @RBF神经网络参数的参数优化(进化算法) 1985年,Powell提出了多变量插值的径向基函数(RBF)方法。径向基函数是一个取值仅仅依赖于离原点距离的实值函数,也就是Φ(x)=Φ(‖x‖),或者还可以是到任意一点c的距离,c点称为中心点,也就是Φ(x,c)=Φ(‖x-c‖)。任意一个满足Φ(x

    2023年04月26日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包