Closed Larry-Zheng closed 4 years ago
就是yaml里 参数项都是啥意思 可填的值又有哪些
抱歉才看到issue,之前偷懒了没写在自述文件里,我在这里列一个清单吧:
数据相关
dataset
:字符串型,指定数据集名称,目前可选值有AC_Szada
, AC_Tiszadob
, Lebedev
, OSCD
。crop_size
:整型,指定输入裁块大小(如果当前数据集采用了Crop
变换的话),不能超过输入图像大小。num_workers
:整型,指定PyTorch的DataLoader在prefetch数据时所开启的进程数(0为单进程)。repeats
:整型,指定数据集重复的次数。具体来说,在每一个epoch,将完整遍历数据集repeats
遍。对于小数据集这个功能很有用。另外由于本作采用的是加载数据时“动态”数据增强的方式,在使用数据增强时可以适当提高repeats
。优化器相关
optimizer
:字符串型,指定优化器名称,目前可选值有ADAM
,SGD
(不区分大小写)。lr
:浮点型,指定初始学习率。lr_mode
:字符串型,指定学习率衰减方式,目前可选有const
, step
, 和poly
。const
模式下学习率固定不变,step
模式下每step
步衰减一半,poly
模式下多项式衰减。weight_decay
:浮点型,指定L2正则系数。step
:整型,指定学习率衰减步长,仅在lr_mode
为step
时生效。训练相关
batch_size
:整型,指定mini-batch的大小。num_epochs
:整型,指定训练的epoch总数。load_optim
:开关型,指定加载模型的同时是否加载优化器,仅在指定了合法的checkpoint时有效。save_optim
:开关型,指定是否在checkpoint中存储优化器状态。resume
:字符串型,指定checkpoint位置。anew
:开关型,指定“重新训练”的语义,与resume
配合使用,等价于仅使用checkpoint中的权重参数对模型进行初始化,然后从头训练。这在加载预训练模型时很有用。track_intvl
:整型,指定存储checkpoint的间隔。device
:整型,指定使用的设备,取值需能够转换为torch.device
。metrics
:字符串型,指定validation阶段所用的评价指标,可以同时指定多个指标,用+
分隔。如果该项不为空,则将使用指定的第一个指标作为评价model_best.pth
的标准;如果未指定任何评价指标,则根据loss大小进行评判。目前可选值有Precision
,Recall
,Accuracy
,F1Score
。实验相关
exp_dir
:字符串型,指定存放实验结果的文件夹所在位置。out_dir
:字符串型,指定存放输出图像的子文件夹名,为每次结果指定一个独立的文件夹可以使管理更加方便。若此项值不为空,则即使save_on
不为True
,也将存图。tag
:字符串型,见README.md
。suffix
:字符串型,见README.md
。exp_config
:字符串型,指定实验配置yaml
文件位置。save_on
:开关型,指定是否存储输出图像。log_off
:开关型,指定是否关闭日志记录。suffix_off
:开关型,指定输出图像名称中是否带有自定义后缀。损失函数相关
criterion
:字符串型,指定损失函数的名称,目前可选值有L1
,MSE
,CE
,NLL
。weights
:列表型,对加权二元交叉熵等损失函数的权重。模型相关
model
:字符串型,指定模型名称,目前可选值有SIAMUNET_CONC
,SIAMUNET_DIFF
和EF
(不区分大小写)。num_feats_in
:整型,构建模型所需的必要参数之一,一般是指输入通道数,具体取值需要视模型和数据集而定。以上。所有参数均存在默认值。关于三层配置机制可以查阅README.md
。
收到 谢谢兄嘚~
------------------ 原始邮件 ------------------ 发件人: "Lin Manhui"<notifications@github.com>; 发送时间: 2020年7月22日(星期三) 中午12:06 收件人: "Bobholamovic/FCN-CD-PyTorch"<FCN-CD-PyTorch@noreply.github.com>; 抄送: "bittersweet"<519334736@qq.com>; "Author"<author@noreply.github.com>; 主题: Re: [Bobholamovic/FCN-CD-PyTorch] 关于训练参数的问题 (#6)
抱歉才看到issue,之前偷懒了没写在自述文件里,我在这里列一个清单吧:
数据相关
dataset:字符串型,指定数据集名称,目前可选值有AC_Szada, AC_Tiszadob, Lebedev, OSCD。
crop_size:整型,指定输入裁块大小(如果当前数据集采用了Crop变换的话),不能超过输入图像大小。
num_workers:整型,指定PyTorch的DataLoader在prefetch数据时所开启的进程数(0为单进程)。
repeats:整型,指定数据集重复的次数。具体来说,在每一个epoch,将完整遍历数据集repeats遍。对于小数据集这个功能很有用。另外由于本作采用的是加载数据时“动态”数据增强的方式,在使用数据增强时可以适当提高repeats。
优化器相关
optimizer:字符串型,指定优化器名称,目前可选值有ADAM,SGD(不区分大小写)。
lr:浮点型,指定初始学习率。
lr_mode:字符串型,指定学习率衰减方式,目前可选有const, step, 和poly。const模式下学习率固定不变,step模式下每step步衰减一半,poly模式下多项式衰减。
weight_decay:浮点型,指定L2正则系数。
step:整型,指定学习率衰减步长,仅在lr_mode为step时生效。
训练相关
batch_size:整型,指定mini-batch的大小。
num_epochs:整型,指定训练的epoch总数。
load_optim:开关型,指定加载模型的同时是否加载优化器,仅在指定了合法的checkpoint时有效。
save_optim:开关型,指定是否在checkpoint中存储优化器状态。
resume:字符串型,指定checkpoint位置。
anew:开关型,指定“重新训练”的语义,与resume配合使用,等价于仅使用checkpoint中的权重参数对模型进行初始化,然后从头训练。这在加载预训练模型时很有用。
trace_freq:整型,指定存储checkpoint的间隔。
device:整型,指定使用的设备,取值需能够转换为torch.device。
metrics:字符串型,指定validation阶段所用的评价指标,可以同时指定多个指标,用+分隔。如果该项不为空,则将使用指定的第一个指标作为评价model_best.pth的标准;如果未指定任何评价指标,则根据loss大小进行评判。目前可选值有Precision,Recall,Accuracy,F1Score。
实验相关
exp_dir:字符串型,指定存放实验结果的文件夹所在位置。
out_dir:字符串型,指定存放输出图像的位置。若此项值不为空,则将自动设置save_on为True。
tag:字符串型,见README.md。
suffix:字符串型,见README.md。
exp_config:字符串型,指定实验配置yaml文件位置。
save_on:开关型,指定是否存储输出图像。
log_off:开关型,指定是否关闭日志记录。
suffix_off:开关型,指定输出图像名称中是否带有自定义后缀。
损失函数相关
criterion:字符串型,指定损失函数的名称,目前可选值有L1,MSE,CE,NLL。
weights:列表型,对加权二元交叉熵等损失函数的权重。
模型相关
model:字符串型,指定模型名称,目前可选值有SIAMUNET_CONC,SIAMUNET_DIFF和EF(不区分大小写)。
num_feats_in:整型,构建模型所需的必要参数之一,一般是指输入通道数,具体取值需要视模型和数据集而定。
以上。所有参数均存在默认值。关于三层配置机制可以查阅README.md。
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.
兄嘚 呃 可以发一个关于训练的参数说明吗 有些参数我倒是懂 有些诸如 repeats 啥的就不太明白了 😂