competiton-imcs

Sampler:

sampler的作用是按照指定的顺序向batch里面读入数据,自定义的sampler可以根据我们的需要返回索引,DataLoader会根据我们返回的索引值提取数据,生成batch

· collate_fn:pytorch规定每一个batch中样本的点数必须相同,所以重写collate_fn方法,将每个batch中样本下采样到相同的数目,这里的函数的下采很简单,就是单纯的取得batch中的最小样本点数,将其他样本中的点shuffle(打乱顺序)之后取前最小个点数。

np.percentile

在python中计算一个多维数组的任意百分比分位数,此处的百分位是从小到大排列,只需用np.percentile即可……

nn.Linear是用于设置网络中的全连接层的

main.py

·类ModelArguments中包含的是关于模型的属性,如model_name,config_name,tokenizer_name等

sys.argv是获取运行python文件的时候命令行参数

imcs_dac.py

·Label Smoothing(标签平滑),常常被用在分类网络中来作为防止过拟合的一种手段,整体方案简单易用,在小数据集上可以取得非常好的效果。 

模型优化之Label Smoothing - 知乎 (zhihu.com)

·关于optimizer.param_groups
“param_groups” 是 Pytorch 中优化器 Optimizer 的一个属性,它是一个列表,其中的每个元素都是一个字典,表示优化的参数组。每个字典都包含了一组参数的各种信息,如当前的学习率、动量等。这个属性可以用来获取优化器中当前管理的参数组的信息,也可以用来修改优化器的参数设置。
param_groups中的一些参数介绍:
[‘param’,‘lr’,‘momentum’,‘dampening’,‘weight_decay’,‘nesterov’]
params(iterable)—待优化参数w、b 或者定义了参数组的dict
lr(float,可选)—学习率
momentum(float,可选,默认0)—动量因子
weight_decay(float,可选,默认0)—权重衰减
dampening (float, 可选) – 动量的抑制因子(默认:0)
nesterov (bool, 可选) – 使用Nesterov动量(默认:False)

· 

·sys.stdout.write()只能输出一个字符串str,而print()可以输出多个值,数据类型多样。

·在深度学习中,logits就是最终的全连接层的输出。通常神经网络中都是先有logits,而后通过sigmoid函数或者softmax函数得到概率 p 的。

train.py

·ModelCheckpoint详解

                ModelCheckpoint(filepath, 
								monitor='val_loss', 
								verbose=0, 
								save_best_only=False, 
								save_weights_only=False, 
								mode='auto', 
								period=1)

作用
该回调函数将在每个epoch后保存模型到filepath

参数
filename:字符串,保存模型的路径,filepath可以是格式化的字符串,里面的占位符将会被epoch值和传入on_epoch_end的logs关键字所填入。
例如:
filepath = “weights_{epoch:03d}-{val_loss:.4f}.h5”
则会生成对应epoch和验证集loss的多个文件。

monitor:需要监视的值,通常为:val_acc 或 val_loss 或 acc 或 loss

verbose:信息展示模式,0或1。为1表示输出epoch模型保存信息,默认为0表示不输出该信息,信息形如:
Epoch 00001: val_acc improved from -inf to 0.49240, saving model to /xxx/checkpoint/model_001-0.3902.h5

save_best_only:当设置为True时,将只保存在验证集上性能最好的模型

mode:‘auto’,‘min’,‘max’之一,在save_best_only=True时决定性能最佳模型的评判准则,例如,当监测值为val_acc时,模式应为max,当检测值为val_loss时,模式应为min。在auto模式下,评价准则由被监测值的名字自动推断。

save_weights_only:若设置为True,则只保存模型权重,否则将保存整个模型(包括模型结构,配置信息等)

period:CheckPoint之间的间隔的epoch数
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值