深度学习随笔(1)

os.path.join(root, sDir, '*.png'))
路径拼接,自动补充"/"

root 所指的是当前正在遍历的这个文件夹的本身的地址

dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)

files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)

for root, dirs, files in os.walk():
	pass

glob.glob(pathname)
返回所有匹配的文件路径列表。

os.path.split(path)
安装路径、文件名 分割

是按照比例把图像最小的一个边长放缩到32,另一边按照相同比例放缩。

transforms.Resize(32),

NLLLoss 损失函数,使用于多分类问题,输入值需要,log_sigmod函数激活

Poisson NLLLoss 损失函数,适用于目标值符合泊松分布的数据

zero_grad() 功能,梯度清零
由于pytorch 不会自动清零梯度,所以在每一次更新前会进行此操作

state_dict() 功能:获取模型当前的参数,以一个有序字典方式返回
key 是各层的参数名,value 是参数

writer.add_scalar(os.path.join("data", "scalar_systemtime"), s1[0], n_iter)

分别是 图的标题,y值,x值

add_scalars(main_tag, tag_scalar_dict, global_step=None, walltime=None)

功能:常用于多个曲线的对比,在一张表中记录多个曲线的变化
1.main_tag 是该图的title
2.tag_scalar_dict:key为变量tag,value 是变量的值
3.global_step 是曲线x轴的坐标
4.walltime,是event文件的文件名设置时间

 add_histogram(tag, values, global_step=None, bins='tensorflow', walltime=None) 

功能:绘制直方图,多分位数折线图,常用于检测权值及梯度的分布变化情况

1.tag是该图的title
2.values 用于绘制直方图的值
3.global_step 次数

for name, layer in net.named_parameters():
writer.add_histogram(name + '_grad', layer.grad.cpu().data.numpy(), epoch)
writer.add_histogram(name + '_data', layer.cpu().data.numpy(), epoch)


vutils.make_grid(tensor, normalize=True, scale_each=True, nrow=c_int) 

功能:make_grid的作用是将若干幅图像拼成一幅图像。
1.nrow一行显示几张图
2.tensor 是需要可视化的数据
3.normalize 是否进行归一化值(0,1)
4.scale_each是每张图片是否单独进行归一化

add_image(tag, img_tensor, global_step=None, walltime=None)

功能:绘制图片,可用于检查模型的输入,监测 feature map 的变化,或是观察 weight。

1.tag是该图的title
2.img_tensor 需要可视化的图片数据,【C,H,W】
3.global_step 次数

add_graph(model, input_to_model=None, verbose=False, **kwargs)

1.model 模型实例
2.input_to_model 模型的输入数据,可以生成一个随机数,符合shape即可

CNN 理解神经网络中卷积(大小,通道数,深度)
对于卷积核(或称为卷积过滤器)的大小,一个卷积核的通道数与它进行卷积的输入必须是相同。
[3,3,16,32]的含义是指:卷积核的尺寸是3316,宽为3,高为3,通道数为16(对应被卷积的张量的通道数),共有32个卷积核

卷积的过程是:对于单个卷积核,有16个通道,每个通道的分量分别与对应的被卷积张量的对应通道卷积,得到16个通道的卷积结果,然后这16个通道的卷积结果按元素叠加,生成一个通道的卷积结果,然后该卷积结果再经过激活函数,得到最终的卷积结果。(至此,一个16通道的张量,经过一个16通道的卷积核后,得到了一个单通道的张量)

查看模型网络各层名称及对应参数是否可被训练

for name, param in net.named_parameters():
    print(name, param.requires_grad)
posted @ 2021-04-30 10:45  一地斜阳  阅读(100)  评论(0)    收藏  举报