Environment
• Linux
• 2080Ti
• CUDA10.0
• Python3
• Tensorflow1.12
继多线程之后又遇到的一个玄学事件。
在代码完全不变的情况下,重复平行实验,tensorboard有时候能正常显示所有变量,有时候只显示Graph,不显示其他变量(显然这种情况是因为其他变量的数据没有成功写进summary里面去)。但是代码固定,时而writer时而写进去,时而不写进去,就太郁闷了。排查了大概半天,企图找到规律,发现这种事件的出现完全随机,无任何规律可言。(与我的if分支无关,与global变量声明无关,与pyc编译文件无关....完全随机)
继而有分析了一波,发现可能与summary的位置有关(虽然我确定放在了Session之外,没有问题)。
为了能把每个epoch的test的变量放进去,之前把summary都放在了test graph之后(虽然我觉得这个位置没关系)
后来发现,果然是这个的问题!把summary的位置调上去就好
但是这样就要舍弃测试 的score变量的显示。(因为score的summary必须在test graph后面)
后来又试图再给score单独建一个graph。
发现还是时而行时而不行,summary1 也是会影响summary0的,还是乖乖把这段删掉......
网友评论