首页 > 其他 > 详细

tensorboard的梯度与权重histogram图学习

时间:2021-05-27 15:13:03      阅读:90      评论:0      收藏:0      [点我收藏+]

1.作图

https://www.cnblogs.com/zpc1001/p/13322902.html

    # 每一个epoch,记录各层权重、梯度
    for name, param in net.named_parameters():  # 返回网络的
        writer.add_histogram(name + _grad, param.grad, epoch)
        writer.add_histogram(name + _data, param, epoch)

2.理解

https://blog.csdn.net/u010099080/article/details/77426577

首先是DISTRIBUTIONS,可以查一下从上到下共有八条线,有深有浅,分别表示[maximum, 93%, 84%, 69%, 50%, 31%, 16%, 7%, minimum],是分位数

DISTRIBUTIONS是多分位数折线图 的堆叠。

技术分享图片

下面HISTOGRAMS 可以说是 频数分布直方图 的堆叠。

横轴表示权重值,纵轴表示训练步数。颜色越深表示时间越早,越浅表示时间越晚(越接近训练结束)。除此之外,HISTOGRAMS 还有个 Histogram mode,有两个选项:OVERLAY 和 OFFSET。选择 OVERLAY 时横轴为权重值,纵轴为频数,每一条折线为训练步数。颜色深浅与上面同理。默认为 OFFSET 模式:

技术分享图片

https://blog.csdn.net/qq_33345917/article/details/85008083

更清晰的一个图

技术分享图片

 

 x轴为数值,y轴为循环的次数,z轴为个数。

那么针对一条线纵轴y=100上的类似三角形来说,表示在训练到这个epochy的情况下,梯度值大约为150-200之间的范围,z轴为个数,说明梯度都集中在这个范围内。

真实的分布直方图应该是一条直线,符合正态分布。

tensorboard的梯度与权重histogram图学习

原文:https://www.cnblogs.com/BlueBlueSea/p/14817395.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!