开源项目推荐:calibration-framework
calibration-framework 是一个开源项目,旨在为神经网络的不确定性估计进行测量和校正。该项目主要使用 Python 3 编程语言开发。
项目基础介绍
该项目是由 EFS-OpenSource 维护的一个 Python 3 库,用于衡量和减轻神经网络不确定性估计的误差。在现代神经网络中,模型往往对预测结果过于自信,这在安全性至关重要的应用中可能导致问题。calibration-framework 提供了多种校正方法,以确保模型的置信度估计与观察到的准确度相匹配。
核心功能
- 置信度校正:包括多种置信度校正方法,如分箱、缩放、正则化等,用于校正分类任务的置信度估计。
- 回归校正:为回归任务提供校正方法,包括非参数和参数化的校正方法,如等距回归、方差缩放、高斯过程等。
- 校正指标:提供了一系列校正指标,如预期校正误差(ECE)、最大校正误差(MCE)、平均校正误差(ACE)等,用于评估校正效果。
最近更新的功能
- 新增回归校正方法:在最新版本中,项目引入了新的回归校正方法,包括等距回归(Isotonic Regression)、方差缩放(Variance Scaling)、高斯过程 Beta(GP-Beta)、高斯过程正态(GP-Normal)和高斯过程柯西(GP-Cauchy)等。
- 改进校正指标:对 netcal.metrics 包进行了重构,以区分置信度校正和回归不确定性校正。新增了多种回归校正指标,如负对数似然(NLL)、预测区间覆盖率(PICP)、Pinball 损失等。
- 可视化增强:增加了新的可靠性图,用于可视化回归校正特性,包括可靠性回归图和 QCE 图。
- 库更新和优化:使用了 tikzplotlib 库,以便将 matplotlib 图形对象直接转换为 Tikz-Code,便于在 LaTeX 文档中使用。
calibration-framework 项目不断更新,为研究人员和开发者提供了强大的工具,以改进神经网络的不确定性估计。