基于估计雅可比的不确定性包装器
UncertaintyWrapper的Python项目详细描述
不确定包装
使用@unc_wrapperdecorator包装任何可调用的python,以附加 返回值的协方差矩阵和雅可比矩阵。参见文档和 测试用法和示例。
安装
使用pip install UncertaintyWrapper安装 PyPI或下载源 分发、提取和使用python setup.py install。
使用量
示例:
from uncertainty_wrapper import unc_wraper import numpy as np @unc_wrapper def f(x): return np.exp(x) x, cov = np.array([[1.0]]), np.array([[0.1]]) f(x, __covariance__=cov)
返回:
(array([[ 2.71828183]]), # exp(1.0) array([[[ 0.73890561]]]), # (delta-f)^2 = (df/dx)^2 * (delta-x)^2 array([[[ 2.71828183]]])) # df/dx = exp(x)
历史
发行版以 geological eons, periods and epochs。
v0.4.1Paleozoic Era
- 参差不齐的协方差键数组现在可以工作了。
- 简化
v0.4Phanerozoic Era
- 修正5,ValueError如果协方差键有多个观测值
- 修正未正确缩放的协方差交叉项
v0.3.3Neoproterozoic Era
- 修正了4,ValueError,如果只有一个观察结果
v0.3.2Mesoproterozoic Era
- 修正2,不需要为多个观测值平铺标量x
- 修正3,对点积使用稀疏矩阵而不是密集矩阵
- 使用pvlib示例而不是专有的太阳能应用程序
v0.3.1Paleoproterozoic Era
- fixes 1适用于pint的@ureg.wrapps()
- 对位置参数使用索引。不要使用inspect.argspec,因为 对于包装或修饰的函数,保证相同
- 用AlgoPy 检验iv的雅可比估计
- 在入门文档中显示Jacobian错误图。
v0.3Proterozoic Eon
- 新的unc_wrapper_args()允许选择 偏导数与这些参数有关,也可以将这些参数分组 一起使用,以便在原始功能中保持未打包状态。
- 返回值被正确分组,以便它们可以在 原始功能。这些允许不确定性包装器与 Pint’s wrapper
- 协方差现在指定为参数平方的维数分数
- 更复杂的测试:IV曲线和太阳位置(需要 NREL’s solpos)
v0.2Archean Eon
- 修正jacobian中的nargs和nf阶混合
- 添加更复杂的测试
- 按nobs修复tile cov
- 将偏导数移到子函数
- 尝试线程,但速度相同,而且无论如何只能与numpy一起工作
v0.1Hadean Eon
- 向输出添加协方差
- 允许将协方差作为输入传递
- 使用基于中心有限差分法的估计雅可比