相同的脚本不同的结果
Posted
技术标签:
【中文标题】相同的脚本不同的结果【英文标题】:Same script different result 【发布时间】:2021-09-23 10:09:09 【问题描述】:我编写了一个代码,用于计算 Matthews 相关系数 (MCC),使用 tensorflow-addons library 解决多类情况(3 类)中的语义分割问题。 我在我的个人笔记本电脑上运行脚本,得到了一个包含三个值(每个值一个)的数组,正如我所期望的那样。 然后,我在我的大学计算机中使用相同的数据和相同的 tensorflow 版本(TF 2.4.1)运行完全相同的脚本,结果只是所有三个类别的单个值(虽然不知道它是如何计算的)。 这怎么可能?无论脚本在哪台机器上运行,如何始终获取具有三个值的数组?
这些是调用 mcc 的代码行:
mcc_tf = tfa.metrics.MatthewsCorrelationCoefficient(num_classes=3)
mcc_tf.update_state(gt_array_2, pred_array_2)
mcc = mcc_tf.result().numpy()
其中gt_array_2
和pred_array_2
是grounf 真值和预测数组。
【问题讨论】:
【参考方案1】:在尝试了不同的选项之后,以防万一将来有人遇到同样的问题,您只需将 tensorflow-addons 降级到 0.12.1 版本即可生成每个类的 MCC。
【讨论】:
以上是关于相同的脚本不同的结果的主要内容,如果未能解决你的问题,请参考以下文章
为什么我的Python脚本将Postgres表的所有行设置为相同的值?
相同的 shell 脚本在不同的 Linux 发行版上具有不同的行为