1.lambda表达式,又称匿名函数

作用:函数速写

语法:lambda arg : expression,解释:冒号前是参数,冒号后是返回值。

例子:

>>x=range(10)
>>lambda x:x%2==1

2.filter函数

参数:一个函数func和一个列表list

func的作用:对list的每个元素进行判断,符合条件返回true,否则返回false

filter根据判断结果自动过滤掉不符合条件的元素,并返回有符合元素组成的新列表

举例:

>>x=range(10)
>>filter(lambda x:x%2==1,x)
​
[1, 3, 5, 7, 9]

3.冻结一部分模型的参数中使用了上面两个函数:

# 模型准备
model = MyModel()# 优化、正则项、权重设置与冻结层for param in model.parameters():param.requires_grad = False
for param in model.add_block.parameters():param.requires_grad = Trueoptimizer = optim.SGD(filter(lambda p: p.requires_grad, model.parameters()),  # 记住一定要加上filter(),不然会报错lr=0.01,weight_decay=1e-5, momentum=0.9, nesterov=True)

参考:https://blog.csdn.net/jdzwanghao/article/details/83239111

集中分析下面这行代码

 filter(lambda p: p.requires_grad, model.parameters()),  # 记住一定要加上filter(),不然会报错

由上面第1个函数所知

lambda p: p.requires_grad 中,p是参数,而 p.requires_grad是返回值

结合第2个函数所知 filter(lambda p: p.requires_grad, model.parameters())中 lambda p: p.requires_grad就是以p为参数的满足p.requires_grad的true的条件的函数。而参数p赋值的元素从列表model.parameters()里取。所以只取param.requires_grad = True(模型参数的可导性是true的元素),就过滤掉为false的元素。

pytorch 一些关于模型参数冻结的问题相关推荐

  1. pytorch中获取模型参数

    原文链接:pytorch中获取模型参数:state_dict和parameters两个方法的差异比较_造未来-CSDN博客 一.本文的模型案例 代码如下: import torch import to ...

  2. pytorch如何freeze模型参数

    pytorch如何freeze模型参数 在做迁移学习或者自监督学习时,一般先预训练一个模型,再将该模型参数作为目标任务模型的初始化参数,或者直接freeze预训练模型,不再更新其参数. 今天记录下如何 ...

  3. pytorch怎么设置模型参数初始值_CSGO:想知道职业选手的参数怎么设置?这张地图轻松帮你一键搞定...

    在职业比赛当中,参数往往也是一个非常重要的设定.很多职业比赛中每个选手的持枪视角画面中心,还有各种快捷键的安排,都是完全不一样的.基本上是怎么舒服怎么来,这些设置绝大部分情况下都要根据个人的习惯去进行 ...

  4. Pytorch导入模型参数

    1.Pytorch中,只导入部分模型参数 https://blog.csdn.net/qq_34914551/article/details/87871134 2. pytorch如何在某些层上冻结网 ...

  5. angularjs中state的参数4_一文梳理pytorch保存和重载模型参数攻略

    训练过程中保存模型参数,就不怕断电了--沃资基·索德 在训练完成之前,我们需要每隔一段时间保存模型当前参数值,一方面可以防止断电重跑,另一方面可以观察不同迭代次数模型的表现:在训练完成以后,我们需要保 ...

  6. Pytorch模型迁移和迁移学习,导入部分模型参数

    Pytorch模型迁移和迁移学习 目录 Pytorch模型迁移和迁移学习 1. 利用resnet18做迁移学习 2. 修改网络名称并迁移学习 3.去除原模型的某些模块 1. 利用resnet18做迁移 ...

  7. [pytorch、学习] - 4.2 模型参数的访问、初始化和共享

    参考 4.2 模型参数的访问.初始化和共享 在3.3节(线性回归的简洁实现)中,我们通过init模块来初始化模型的参数.我们也介绍了访问模型参数的简单方法.本节将深入讲解如何访问和初始化模型参数,以及 ...

  8. python保存模型与参数_基于pytorch的保存和加载模型参数的方法

    当我们花费大量的精力训练完网络,下次预测数据时不想再(有时也不必再)训练一次时,这时候torch.save(),torch.load()就要登场了. 保存和加载模型参数有两种方式: 方式一: torc ...

  9. PyTorch实现AlexNet模型及参数详解

    文章目录 一.卷积池化层原理 二.全连接层原理 三.模型参数详解 注:AlexNet论文错误点 1.卷积池化层1 (1)卷积运算 (2)分组 (3)激活函数层 (4)池化层 (5)归一化处理 (6)参 ...

最新文章

  1. 【matlab】meshgrid的使用
  2. python流程控制语句-python语言的流程控制
  3. 挣脱浏览器的束缚(7) - CrossSubDomainExecutor
  4. Python3入门(十一)——IO编程
  5. arthas 排查内存溢出_小学妹问我:如何利用可视化工具排查问题?
  6. js 数组(Array)
  7. CCF201912-2 回收站选址
  8. 执行计划有时不准确_生产计划四个层次和解决方案
  9. Ubuntu 修复windows启动项
  10. java中什么是匿名接口_Java中接口(interface)和匿名类
  11. WinForm 的定时器使用
  12. java 分卷 zip
  13. 整理2020智能车竞赛网站各分赛区报名情况
  14. 基于matlab山脊线,基于Matlab的标记分水岭分割算法
  15. AWS的KVS相关介绍
  16. echarts迁徙效果
  17. 清华大学胡事民是计算机视觉,ResNet也能用在3D模型上了,清华「计图」团队新研究已开源...
  18. PAT 1121 Damn Single
  19. 【精髓】Laravel 模型关联
  20. 在线安装 docker

热门文章

  1. [转]nodejs深入学(7)理解Buffer
  2. Elasticsearch教程(六) elasticsearch Client创建
  3. 回顾Google IO 2016 -Keynote【图解】
  4. hdu 2184 01背包变形
  5. ASP.NET 2.0 数据绑定高级技巧
  6. tomcat 未指定服务器,[转载]Tomcat环境的建立
  7. vba 操作html,VBA IE对象的操作方法
  8. 什么叫做形态学图像处理_图像形态学处理中的膨胀与腐蚀介绍
  9. 专用efi文件包_850个水利水电工程全套表格,施工方/监理方专用表,只发布两天...
  10. java visualvm远程监控_如何监控和诊断堆外内存使用