【发布时间】:2017-11-21 17:57:47
【问题描述】:
我使用高斯过程进行预测。现在让我们假设我已经预测了大小为 1900 X 1 的 x 中的值存储。现在我想检查它的分布是否遵循高斯分布。我需要这个来比较其他方法预测值(如 NN、KNN)的分布函数,以判断哪一个遵循平滑高斯或正态分布函数
我该怎么做?如果我能以数字数据的形式得到一些结果,那就更好了。代码编写如下,m = mean(ypred); % mean of r
s = std(ypred); % stdev of r
pd = makedist('Normal','mu',m,'sigma',s); % make probability distribution with mu = m and sigma = s
[h,p] = kstest(ypred,'CDF',pd); % calculate probability that it is a normal distribution
ypred 值是从 matlab 的fitrgp 获得的输出。附上ypred 值的示例here
【问题讨论】:
-
我不明白,如果您的预测基于高斯过程:那么根据定义,这些数据是正态分布的?没有?
-
是的,但是我正在与其他方法进行比较,例如 NN、KNN 和想知道其中哪一种遵循平滑高斯或正态分布函数
-
我做了,但我正在寻找数值结果。 QQ图都是关于图形结果的。
-
确实如此。然后
kstest就是你要找的东西——但是需要一些知识才能把它做好。但坦率地说,在这种情况下,图形分析与数字分析一样有效。 -
但是你不能说:“是的,那些数据是正态分布的”或“不,那些数据不是正态分布的”。泊松分布可以类似于正态分布。但是您可以使用“Kolmogorov-Smirnov 检验”来检验服从正态分布的概率。
标签: matlab gaussian normal-distribution