首页 > 其他分享 >深度学习(统计模型参数量)

深度学习(统计模型参数量)

时间:2023-10-27 21:12:01浏览次数:37  
标签:13 27 nn 模型 torch 学习 深度 256 self

统计模型参数量,方便判断不同模型大小:

import torch
import torch.nn as nn

# 自定义AlexNet模型
class AlexNet(nn.Module):
    def __init__(self):
        super(AlexNet, self).__init__()
        self.conv1 = nn.Conv2d(1, 96, kernel_size=11, stride=4)
        self.conv2 = nn.Conv2d(96, 256, kernel_size=5, stride=1,padding=2)
        self.conv3 = nn.Conv2d(256, 384, kernel_size=3,stride=1,padding=1)
        self.conv4 = nn.Conv2d(384, 384, kernel_size=3,stride=1,padding=1)
        self.conv5 = nn.Conv2d(384, 256, kernel_size=3,stride=1,padding=1)

        self.fc1 = nn.Linear(256*6*6, 4096)
        self.fc2 = nn.Linear(4096, 4096)
        self.fc3 = nn.Linear(4096, 2)

    def forward(self, x):
        x = torch.relu(self.conv1(x))           # 227*227   -> 96*55*55
        x = torch.max_pool2d(x, 3,stride=2)     # 96*55*55  -> 96*27*27
        x = torch.relu(self.conv2(x))           # 96*27*27  -> 256*27*27
        x = torch.max_pool2d(x, 3,stride=2)     # 256*27*27 -> 256*13*13
        x = torch.relu(self.conv3(x))           # 256*13*13 -> 384*13*13
        x = torch.relu(self.conv4(x))           # 384*13*13 -> 384*13*13
        x = torch.relu(self.conv5(x))           # 384*13*13 -> 256*13*13
        x = torch.max_pool2d(x,3,stride=2)      # 256*13*13 -> 256*6*6
        x = x.view(x.size(0), -1)               # 256*6*6   -> 9216
        x = torch.relu(self.fc1(x))             # 9216      -> 4096
        x = torch.relu(self.fc2(x))             # 4096      -> 4096
        x = self.fc3(x)                         # 4096      -> 2
        return x

net = AlexNet()
total = sum([param.nelement() for param in net.parameters()])
print("Number of parameter: %.2fM" % (total/1e6))   

标签:13,27,nn,模型,torch,学习,深度,256,self
From: https://www.cnblogs.com/tiandsp/p/17793141.html

相关文章

  • OSG开发笔记(二十九):OSG加载模型文件、加载3DMax三维型文件Demo
    前言  Osg深入之后需要打开模型文件,这些模型文件是已有的模型文件,加载入osg之后可以在常见中展示模型文件,该节点可以操作,多个逼真的模型的节点就实现了基本的场景构建。<br>Demo  <br>说明  三维模型文件一般是由专业的三维建模人员完成,可以去buy通用模型,但是定制模型......
  • blender模型展uv3.6
    有时候uv贴图直接按U展开效果不理想,不同的模型适合的展开方式也会有一定的差异。以下是几种模型的展开方式,可做参考。在展uv前可以打开uv选区同步,以便更好控制所有网格位置。人物角色面部展开在后面选中中间的那根线一直到发际线标记缝合边。然后A全选U键选择“展开”......
  • uboot支持的cortex-M4内核启动流程分析--Apple的学习笔记
    一,前言居然看到uboot支持stm32的cortex-M4的内核,所以就编译来看看,直接编译通过了,所以代表着我可以直接在真实的板子上连接jlink单步调试了,先看看上电流程的代码吧~二,编译下载了6.0版本以上的arm-none编译即可通过编译。exportPATH=$PATH:/work/tools/gcc-arm-none-eabi-9-2019-q4-......
  • 学习如何新建java项目
    java的程序的运行机制编译型:全局翻译解释型:实时更新 在idea写下hello,world[破解激活码] IDEA2023.2.3最新激活码,注册码(亲测好用)-异常教程(exception.site) 新建一个文件夹 在文件夹新建一个class  Java语法创建一个新项目(重要)project->Empty......
  • 大语言模型Fine-tuning踩坑经验之谈
    前言 由于ChatGPT和GPT4兴起,如何让人人都用上这种大模型,是目前AI领域最活跃的事情。当下开源的LLM(Largelanguagemodel)非常多,可谓是百模大战。面对诸多开源本地模型,根据自己的需求,选择适合自己的基座模型和参数量很重要。选择完后需要对训练数据进行预处理,往往这一步就难......
  • 2023-2024 20231302《计算机基础与程序设计》第五周学习总结
    作业信息这个作业属于哪个课程2022-2023-1-计算机基础与程序设计这个作业要求在哪里2022-2023-1计算机基础与程序设计第五周作业这个作业的目标Pep/9虚拟机、机器语言与汇编语言、算法与伪代码、测试:黑盒,白盒作业正文https://www.cnblogs.com/9q2z2z/p/1779236......
  • 2023-2024-1 20231402《计算机基础与程序设计》第5周学习总结
    2023-2024-120231402《计算机基础与程序设计》第5周学习总结作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2023-2024-1计算机基础与程序设计第5周作业这个作业的目标自学计算机科学概论第6章,《C语言程序设计》第4章作业正......
  • 学习ast
    看别人ast混淆代码挺6的学习一下学习第一步:leta,b=1;//注释varobj={"name":1+3*2,"func":functionadd(a,b){leta1=3;returna+b}}functionadd(a,v){returna+v;}letxx;xx=12;View源代码letfs=require(&quo......
  • [spring学习]一定要写对resources 文件夹的名字,不然,即使正确设置了静态资源访问,仍
    今天遇到的问题,项目能启动,能访问正常的页面,只是静态资源没法访问好好检查过配置文件了,springmvc-config也正常的放行静态资源了就是访问不了最后,想重新创建项目的时候,突然意识到是文件夹名字的问题可以写configs或者resources,但是一定要写成带s的复数形式......
  • [Spring框架学习]SSM 整合,使用maven构建项目的时候,启动项目报错class path resource
    错误:classpathresource[config/spring/springmvc.xml]cannotbeopenedbecauseitdoesnotexist错误原因:找不到我的springmvc.xml,在下面web.xml中是我引用路径,网上找到问题classpath指向路径不是resource路径,所以一直找不到我的xml文件,classpath:到你的class路径......