背景
变量误差模型定义为:
考虑自变量测量误差的回归模型。相比之下,标准回归模型假设这些回归量已经被精确测量,或者没有错误地观察到;因此,这些模型仅考虑因变量或响应中的错误。
无论数据是实验数据还是计算数据(例如通过基于物理的模拟),自变量的不确定性都很常见。这在加工、结构和性能测量中存在不确定性的材料科学中尤为重要。此外,这种不确定性不一定对所有参数都是恒定的(温度传感器可能在温度范围的限制下具有更高的不确定性,材料结构的各个方面可能已由单独的仪器确定,性能测量是从多个来源中挖掘的数据, ETC。)。另见不确定性量化。我确信这也适用于其他学科(例如物理学、化学、生物学、工程学)。
现有方法
我不是在寻找什么
- 线性回归模型(例如正交回归/总最小二乘OrthogonalLineFit[]、linortfitn()、odr()、odregress())。
- 仅响应不确定性回归模型
- 使用 NonlinearModelFit[] 与指定的响应不确定向量进行非线性参数拟合
- 使用 fitrgp() 具有指定标量响应不确定性的非参数拟合。这允许指定“平滑长度”向量,每个预测变量一个,但不能指定预测变量的不确定性
我在找什么
一种迎合多维、非参数回归的方法,在预测变量和响应中传播测量不确定性(即不确定性传播,而不仅仅是加权点),最好是与之配套的软件(Mathematica、MATLAB、Python、R、Stan 等.)。多维是指预测变量(即响应是标量的)。
理想情况下,这将是可以解释的并且可以通过以下方式执行的内容:
mdl = some_function(X, Xsd, y, ysd)
ypred, ysd2, cov = mdl(X2, Xsd2)
输入
- 矩阵/预测变量数组 ( )
X
- 矩阵/预测不确定性数组()
Xsd
- 响应值向量 ( )
y
- 响应不确定性向量 ( )
ysd
- 新预测变量的矩阵/数组 ( )
X2
- (可选)新预测不确定性矩阵/数组()
Xsd2
输出
- 新响应向量 ( )
ypred
- 新响应不确定性向量 ( )
ysd2
- (可选)预测变量协方差矩阵()
cov
更新
- 这似乎是通过 BoTorch 支持的,这是一个基于 Python 的包(参见教程),稍后将在 Meta 的自适应实验平台中公开。最终可能会尝试这个并将其充实为答案。如果其他人想尝试并提供 MWE,这也是受欢迎的。