gpt4 book ai didi

python - 任意数序列的回归测试

转载 作者:太空狗 更新时间:2023-10-29 17:50:59 26 4
gpt4 key购买 nike

我正在尝试提出一种回归测试数字序列的方法。

我的测试系统会为每个系统版本生成大量数字(例如高度、宽度、深度等)。这些数字以未知的方式因版本而异。给定一系列“好”版本和一个"new"版本,我想找到最不正常的序列。

例子:

“好”版本:

version    width   height   depth
1 123 43 302
2 122 44 304
3 120 46 300
4 124 45 301

"new"版本:

   5        121      60      305

在这种情况下,我显然想找到高度序列,因为值 60 比宽度或深度更突出。

我当前的方法计算每个良好案例序列的均值和标准差,对于新版本的数字,它计算该数字属于该序列的概率(基于已知的均值和标准差)。这有效……有点。

我的序列中的数字不一定围绕平均值呈高斯分布,但通常相当恒定,只有有时会产生一个异常值,该值似乎也相当恒定,例如。 G。 10, 10, 10, 10, 10, 5, 10, 10, 10, 5, 10, 10, 10。在这种情况下,仅基于均值和标准差,值 10 不会 100% 出现在序列,并且值 5 不太可能。

我考虑过使用直方图方法,但在那里犹豫是否要先在这里提问。直方图的问题是我需要为每个序列存储相当多的信息(而不是仅仅存储均值和标准差)。

我考虑的下一个方面是,我很确定这种任务并不新鲜,而且可能已经有适合我情况的解决方案;但我在研究中发现的不多。

我找到了一个像 PyBrain 这样的库,乍一看它似乎可以处理数字序列,然后显然会尝试使用模拟神经网络来分析这些序列。我不确定这是否适合我(而且似乎我必须为每个数字序列存储大量数据,就像一个完整的神经网络)。

所以我的问题是:

是否有一种技术、算法或科学学科可以帮助我分析数字序列以发现异常(在最后一个值中)?最好在每个序列只存储少量数据时 ;-)

对于具体的实现,我更喜欢 Python,但也欢迎提供其他语言的提示。

最佳答案

您可以使用称为高斯过程 (GP) 的回归技术来学习曲线,然后将高斯过程应用于序列中的下一个示例。

由于 GP 不仅会为您提供目标的估计值,还会提供您可以根据确定异常值的置信度设定阈值的置信度。

要实现这一点,存在各种工具箱(scikits.learn、shogun 等),但最简单的可能是 GPy。下面的笔记本很好地描述了一个一维回归的例子,你可以调整它来让你的任务继续进行:

http://nbviewer.jupyter.org/github/SheffieldML/notebook/blob/master/GPy/basic_gp.ipynb

关于python - 任意数序列的回归测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42302062/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com