当前位置: 首页 > news >正文

Pytorch处理数据与训练网络问题汇总(协同训练)

基础语法

模型训练

  • 【Swin-Unet】官方代码预训练权重加载函数load_from()

实际上由于SwinUnet是一个encoder-decoder对称的结构,因此加载权重时,作者并没有像通常那样仅仅加载encoder部分而不加载decoder部分,而是同时将encoder的权重对称地加载到了decoder上(除了swin_unet.layers_up.1/2/3.upsample)

  • 预训练中的权重加载(完全导入,部分导入)

#demo1 完全加载权重
model = NET1()
state_dict = model.state_dict()
weights = torch.load(weights_path)[‘model_state_dict’] #读取预训练模型权重
model.load_state_dict(weights)
#部分导入

  • loss损失函数
  • 一致性损失(半监督学习):用原样本的输出概率分布和增强样本的输出概率分布的KL散度损失与有标签样本的交叉熵损失进行联合训练
  • consistency_weigh一致性损失t的权重随着训练周期逐渐增加,防止网络训练前期被无意义的一致性目标影响。

def get_current_consistency_weight(epoch):
# Consistency ramp-up from https://arxiv.org/abs/1610.02242
return args.consistency * ramps.sigmoid_rampup(epoch, args.consistency_rampup)

  • Epoch与Iteration的概念类似

parser.add_argument( ’ --max_iterations’, type=int,default=300,help='maximum iterations number to train ’ )
#default=30000 改变iteration改变epoch

常见报错

  • For debugging consider passing CUDA_LAUNCH_BLOCKING=1.

os.environ[ " CUDA_VISIBLE_DEVICES" ]=‘4,5’
os.environ[ " CUDA_VISIBLE_DEVICES" ]=‘4,5’ …41

  • ModuleNotFoundError: No module named ‘networks.unet’

相关文章:

  • linux基本指令和权限
  • 初学者的第一个Linux驱动
  • 第十四届蓝桥杯三月真题刷题训练——第 2 天
  • Python Pytorch开发环境搭建(Windows和Ubuntu)
  • 【2.4 golang中循环语句for】
  • 数组之双指针题
  • 【0177】Linux中POSIX信号量实现机制
  • 不写代码、年薪百万,带你玩赚ChatGPT提示工程-高级提示
  • ACM---大一第三周周赛(Floyd算法+并查集算法学习周)
  • 搭建zabbix4.0监控服务实例
  • Elasticsearch:构建自动补全功能 - Autocomplete
  • 华为校招机试 - 检测热点字符(Java JS Python)
  • C语言实现三子棋【详解+全部源码】
  • 【C++PrimerPlus】第三章 处理数据
  • Qt 防止程序退出
  • Vector - CAPL - 简介及数据结构
  • 北京移动CM311-5s-ZG_GK6323V100C_2+8_免拆一键卡刷固件包
  • 2022年考研结果已出,你上岸了吗?
  • Java中常用的七种队列你了解多少?
  • 【YOLO系列】YOLOv5超详细解读(网络详解)
  • 一季度全社会用电量同比增长2.5%,3月增速显著回升
  • 恒安集团创始人许连捷逝世,享年73岁
  • 煤矿疑污水渗漏致数十亩耕地被淹,陕西榆阳区:成立调查组调查
  • G20召开发展工作组第二次会议,中方就美“对等关税”阐明立场
  • 贵州省纪委原副书记、省监委原副主任张平一审被控受贿4772万余元
  • 这颗“超级地球”真有生命?剑桥团队在系外行星K2-18b发现气体证据