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

详细描述建设一个网站的具体步骤网上做任务网站有哪些

详细描述建设一个网站的具体步骤,网上做任务网站有哪些,西安做网站朋朋网络,找做柜子的网站完成数据预处理命令后,开始训练 本文目录 训练代码入口nnUNetv2_train命令行参数run_training函数 训练代码训练结束 训练代码入口 nnU-Net V2 的训练命令是nnUNetv2_train nnUNetv2_train命令行参数 参数名称是否必填默认值描述dataset_name_or_id是无用于训练的…

完成数据预处理命令后,开始训练

本文目录

  • 训练代码入口
    • nnUNetv2_train命令行参数
    • run_training函数
  • 训练代码
  • 训练结束

训练代码入口

nnU-Net V2 的训练命令是nnUNetv2_train

nnUNetv2_train命令行参数

参数名称是否必填默认值描述
dataset_name_or_id用于训练的数据集名称或 ID
configuration需要训练的配置
fold5 折交叉验证的折数。应为 0 到 4 之间的整数
-trnnUNetTrainer指定自定义训练器。默认值为 nnUNetTrainer
-pnnUNetPlans指定自定义计划标识符。默认值为 nnUNetPlans
-pretrained_weightsNone用于预训练模型的 nnU-Net checkpoint文件路径。仅在实际训练时使用。测试版,请谨慎使用
-num_gpus1指定训练时使用的 GPU 数量
–use_compressedFalse如果设置此标志,训练数据(预处理后生成的压缩版数据集)将不会被解压缩。读取压缩数据会消耗更多 CPU 和(可能)内存,仅在您知道自己在做什么时使用
–npzFalse将最终验证的 softmax 预测(数值为概率值,不是类别)保存为 npz 文件(除了预测的分割结果)。这对于找到最佳集成是必需的
–cFalse从上次训练结束处开始(已经完成训练则不用)
–valFalse设置此标志以仅运行验证。需要训练已完成
–val_bestFalse如果设置,验证将使用 checkpoint_best 而不是 checkpoint_final。与 --disable_checkpointing 不兼容!警告:这将使用与常规验证相同的“validation”文件夹,无法区分两者!(val数据集没法区分checkpoint_best 还是checkpoint_final)
–disable_checkpointingFalse设置此标志以禁用checkpoint保存。适合测试时使用,避免硬盘被checkpoint文件填满
-devicecuda设置训练运行的设备。可用选项为 ‘cuda’(GPU)、‘cpu’(CPU)和 ‘mps’(Apple M1/M2)。不要用此参数设置 GPU ID!请使用 CUDA_VISIBLE_DEVICES=X nnUNetv2_train […] 代替!

确定执行该命令后,首先调用run_training_entry函数,该函数会收集用户在命令行输入的参数,调用同文件下的run_training函数,并将收集的命令行参数传递给它。

run_training_entry函数和run_training函数代码均在nnUNet \ nnunetv2 \ run \ run_training.py文件中。

run_training函数

run_training函数在检查必要参数后,判断GPU数量,多GPU需要配置环境,单GPU不需要。

nnUNetv2_train命令有多处关于多GPU训练的代码,之后会集中一篇文章阅读。🏃🏃🏃

无论哪种情况,run_training函数都有如下操作:

1️⃣首先调用get_trainer_from_args函数,获取用于训练的nnunet_trainer变量,默认是实例化后的nnUNetTrainer类。该函数依次完成查询类、配置文件、实例化,代码结构清晰,不做粘贴:

################# run_training函数部分代码
# 实例化的nnUNetTrainer类
nnunet_trainer = get_trainer_from_args(dataset_name_or_id, configuration, fold, tr, p,use_compressed)

2️⃣之后完成一些训练前的设置:

################# run_training函数部分代码
# 是否保存网络训练后的权重
if disable_checkpointing:nnunet_trainer.disable_checkpointing = disable_checkpointingassert not (continue_training and only_run_validation), f'Cannot set --c and --val flag at the same time. Dummy.'# 加载预训练权重
maybe_load_checkpoint(nnunet_trainer, continue_training, only_run_validation, pretrained_weights)if torch.cuda.is_available():cudnn.deterministic = False	# 允许 cuDNN 选择最快的卷积算法,从而加速训练过程cudnn.benchmark = True	# 启用 cuDNN 的自动调优功能,找到最适合当前输入大小和硬件的算法,从而加速训练

3️⃣之后运行nnunet_trainer . run_training函数(重名,注意区分 ❗️❗️❗️)和nnunet_trainer . perform_actual_validation函数,完成 train 和 validate:

################# run_training函数部分代码
# 开启训练
if not only_run_validation:nnunet_trainer.run_training()# 是否使用best权重
# nnU-Net V2在训练过程中会生成三个checkpoint.pth
# 分别是checkpoint_best.pth、checkpoint_final.pth、checkpoint_latest.pth
# 由名称可以看出,分别是最佳、最终、最新训练权重
# checkpoint_final.pth会在训练结束时生成,读者如果需要在训练过程中predict,
# 可以在同文件夹下复制checkpoint_best.pth或checkpoint_latest.pth,更改名称后predict
# 上文的参数–val_best也涉及这一点。
if val_with_best:nnunet_trainer.load_checkpoint(join(nnunet_trainer.output_folder, 'checkpoint_best.pth'))
# 开始测试val数据集
nnunet_trainer.perform_actual_validation(npz)

训练代码

与预处理命令涉及的类不同,nnUNetTrainer类的各个函数代码较长且嵌套较深,因此,在阅读nnUNetTrainer类时,我们不再采用单个函数一个接一个的方式阅读代码,而是按照训练过程依次阅读,以便更好地理解其整体流程和设计思路。

根据上文,训练过程主要由nnunet_trainer变量的run_training函数(重名,注意区分 ❗️❗️❗️)完成,该变量默认是实例化的nnUNetTrainer类(nnU-Net V2文档介绍到,读者可以自定义该类)。

以下将用run_training函数指称nnunet_trainer . run_training函数,不再和上文的run_training函数区分

run_training函数代码如下:

######################## run_training函数代码
def run_training(self):### 训练开始self.on_train_start()for epoch in range(self.current_epoch, self.num_epochs):### epoch开始self.on_epoch_start()### epoch train 开始self.on_train_epoch_start()train_outputs = []### 一个epoch会train 250次(默认值,在nnUNetTrainer类的__init__函数中会讲到)for batch_id in range(self.num_iterations_per_epoch):### 250 次的一次,one steptrain_outputs.append(self.train_step(next(self.dataloader_train)))### epoch train 结束self.on_train_epoch_end(train_outputs)with torch.no_grad():### epoch val 开始self.on_validation_epoch_start()val_outputs = []### 一个epoch会val 50次(默认值,在nnUNetTrainer类的__init__函数中会讲到)for batch_id in range(self.num_val_iterations_per_epoch):### 50 次的一次,one stepval_outputs.append(self.validation_step(next(self.dataloader_val)))### epoch val 结束self.on_validation_epoch_end(val_outputs)### epoch结束self.on_epoch_end()### 训练结束self.on_train_end()

流程如下:

训练开始
self.on_train_start函数
epoch开始
self.on_epoch_start
epoch train 开始
self.on_train_epoch_start
train一次 step
是否完成 250 次训练?
epoch train 结束
self.on_train_epoch_end
epoch val 开始
self.on_validation_epoch_start
val一次 step
是否完成 50 次val?
epoch val 结束
self.on_validation_epoch_end
epoch结束
self.on_epoch_end
是否完成所有 epoch?
训练结束
self.on_train_end

整合其中部分步骤后,阅读顺序如下:

  1. 训练开始(包含dataloader):暂留坑
  2. epoch开始:暂留坑
  3. epoch train开始:暂留坑
  4. 一次train:暂留坑
  5. epoch train结束:暂留坑
  6. epoch val开始:暂留坑
  7. 一次val:暂留坑
  8. epoch val结束:暂留坑
  9. epoch结束:暂留坑
  10. 训练结束:暂留坑

训练结束

训练结束后,nnU-Net会用checkpoint_final.pth(除非用户指定使用best版,否则是final版,上文参数有说明)对val数据集测试,得出本折指标

暂留坑

至此训练结束


文章转载自:

http://Sg3HBlBz.kjgdm.cn
http://ICECCX0Y.kjgdm.cn
http://TfCYdIkE.kjgdm.cn
http://I3YUGpw4.kjgdm.cn
http://qpTbA0wA.kjgdm.cn
http://4owvQjxn.kjgdm.cn
http://NLu0nb7S.kjgdm.cn
http://m9SUTZyG.kjgdm.cn
http://5Hb5pB7d.kjgdm.cn
http://UdViDukx.kjgdm.cn
http://4wKfq1jl.kjgdm.cn
http://oIhoc4CK.kjgdm.cn
http://UV84hf3d.kjgdm.cn
http://OxSkhg0A.kjgdm.cn
http://EAeZ7enJ.kjgdm.cn
http://lIxPqKFx.kjgdm.cn
http://MbJHQnct.kjgdm.cn
http://8NbJsSX3.kjgdm.cn
http://3Vg7o3e8.kjgdm.cn
http://XNhSZBo3.kjgdm.cn
http://f7jalmSE.kjgdm.cn
http://pgmGjU81.kjgdm.cn
http://pCB2Ckvu.kjgdm.cn
http://N43M0SdL.kjgdm.cn
http://NQ9LyLPF.kjgdm.cn
http://6oKwBDVX.kjgdm.cn
http://FvtSAfaB.kjgdm.cn
http://aCCFulwK.kjgdm.cn
http://1LA8S9qa.kjgdm.cn
http://Z73zt4Pd.kjgdm.cn
http://www.dtcms.com/wzjs/733138.html

相关文章:

  • 外贸网站营销建站擅自给公司做网站有什么责任
  • 卧龙区2015网站建设口碑wordpress修改底部版权信息
  • 做网站还有意义吗微商怎么推广自己的产品
  • 吉安企业做网站电子商务网站分类
  • 手机在线制作网站怀化 优化营商环境
  • 网站建设背景介绍做网站多久学会
  • 销售型企业网站个人网站建设方案书例文
  • 重庆建个网站需要多少钱?全球广告公司排名
  • 网站推广途径选择建设一个网站平台
  • 个人网站管理系统怎样建设网站网站
  • 成品网站软件购物app排行
  • 深圳哪家网站建设wordpress优化 春哥
  • 深圳网站设计价格表为什么北京一夜封了
  • 网站二级域名怎么解析前端外包网
  • 网站备案注册三维培训学费一般多少
  • 广州网站设计哪家公司好辉煌电商seo
  • 常州网站建设招聘品牌推广包括哪些内容
  • 企业建设网站公司有哪些怎么做简易网页
  • seo建站是什么阿里云服务器的网站备案流程图
  • 查询网站是否被收录天津做网站seo的
  • 霸州市建设局网站泰安招工招聘信息
  • 智慧团建登录官网seo专业培训seo专业培训
  • 网站设计的主题小程序开发 深圳
  • 创意网站 模板重庆有哪些科技骗子公司
  • 桂电做网站的毕设容易过嘛wordpress linux 下载
  • 策划公司网站建设wordpress使用新浪图床
  • windows 网站模板公司建设官方网站需要多少钱
  • 阿里网 网站备案流程网站开发毕业设计中期汇报表
  • 如何写网站建设报告亚马逊推广
  • 公司网站模板怎么做奥迪网站建设策划书