calculatedcontent/weightwatcher 是一个 Python 诊断工具,在不访问训练数据或测试数据的情况下分析神经网络。它的目标是从权重统计出发预测模型的测试准确度并找出过拟合迹象,最近一次发布是 0.7.3.5。
它分析已预训练或正在训练中的 pyTorch 与 Keras 模型的 Conv2D 和 Dense 层,读取权重谱并比较不同模型之间的测试准确率。它提供用于观察过拟合或过度参数化迹象的功能,同时也会检测模型压缩或微调过程中可能出现的问题,以及过拟合与学习不足的迹象。README 说明该方法基于重尾自正则化理论(Theory of Heavy-Tailed Self-Regularization,HT-SR)。许可证为 Apache-2.0,仓库创建于 2018 年 11 月 28 日,star 数为 1778。
不过,给定材料并未整理 0.7.3.5 版本的变更内容。准确率预测是按照 README 所述方式得出的估计值,而不是用测试数据实测的结果,README 列出的分析目标层也仅限于 Conv2D 和 Dense。对于其他结构的模型,预测有多准、与实际性能相差多少,材料都没有说明。谨慎来看,它更接近一款在不访问训练数据的前提下巡检模型状态的工具。