插补多维数据的首选和有效方法是什么?
我担心的事情:
- 性能和构造记忆,单次/批处理评估
- 处理尺寸从1到6
- 线性或高阶
- 获得梯度的能力(如果不是线性的)
- 常规与分散网格
- 用作插值函数,例如查找根或最小化
- 外推能力
是否有有效的开源实现?
我对scipy.interpolate和来自scikit-learn的kriging感到幸运。
我没有尝试样条曲线,切比雪夫多项式等。
到目前为止,我在该主题上发现了以下内容:
插补多维数据的首选和有效方法是什么?
我担心的事情:
是否有有效的开源实现?
我对scipy.interpolate和来自scikit-learn的kriging感到幸运。
我没有尝试样条曲线,切比雪夫多项式等。
到目前为止,我在该主题上发现了以下内容:
Answers:
对于我的问题的第一部分,我发现这个非常有用的比较对于使用python库的不同线性插值方法的性能而言:
以下是到目前为止收集的方法列表。
标准插值,结构化网格:
http://docs.scipy.org/doc/scipy/reference/generation/scipy.interpolate.RegularGridInterpolator.html
https://github.com/rncarpio/linterp/
非结构化(分散)网格:
http://docs.scipy.org/doc/scipy/reference/generation/scipy.interpolate.griddata.html
http://docs.scipy.org/doc/scipy/reference/generation/scipy.interpolate.Rbf.html
2个包含插值的大型项目:
https://github.com/sloriot/cgal-bindings(CGAL的一部分,许可的GPL / LGPL)
https://www.earthsystemcog.org/projects/esmp/(伊利诺伊大学-NCSA许可证〜= MIT + BSD-3)
稀疏网格:
https://github.com/EconForge/Smolyak
https://github.com/EconForge/dolo/tree/master/dolo/numeric/interpolation
http://people.sc.fsu.edu/~jburkardt/py_src/sparse_grid/sparse_grid.html
https://aerodynamics.lr.tudelft.nl/~rdwight/work_sparse.html
https://pypi.python.org/pypi/puq
克里格(高斯过程):
http://scikit-learn.org/stable/modules/generation/sklearn.gaussian_process.GaussianProcess.html
https://github.com/SheffieldML/GPy
https://software.sandia.gov/svn/surfpack/trunk/
http://openmdao.org/dev_docs/_modules/openmdao/lib/surrogatemodels/kriging_surrogate.html
通用GPL许可:
https://github.com/rncarpio/delaunay_linterp
自适应随机建模和非侵入式逼近工具包-是用于高维积分和插值以及参数校准的强大库。
塔斯马尼亚语的Python绑定:
https://github.com/rncarpio/py_tsg
https://github.com/sloriot/cgal-bindings(CGAL的一部分,许可的GPL / LGPL)