Machine learning 在多变量高斯分布中,应如何处理其中一个特征的零标准差

Machine learning 在多变量高斯分布中,应如何处理其中一个特征的零标准差,machine-learning,k-means,data-analysis,data-science,unsupervised-learning,Machine Learning,K Means,Data Analysis,Data Science,Unsupervised Learning,我用多元高斯分布来分析异常。 这就是训练集的外观 19-04-16 05:30:31 1 0 0 377816 305172 5567044 0 0 0 14 62 75 0 0 100 0 0 <Date> <time> <--------------------------- ------- Features ---------------------------> 计算si

我用多元高斯分布来分析异常。 这就是训练集的外观

19-04-16    05:30:31    1   0   0   377816  305172  5567044 0   0   0   14  62  75  0   0   100 0   0
<Date>      <time>     <--------------------------- -------   Features --------------------------->
计算sigma2为

sigma2 = ((1/m) * (sum((X - mu') .^ 2)))'
使用标准高斯公式计算每个数据集中单个特征的概率,如下所示:

对于一个特定的特征,如果所有的值都为零,那么平均值(mu)也为零。随后sigma2也将为零。 因此,当我通过高斯分布计算概率时,我会得到一个“零设备”问题


然而,在测试集中,这个特征值可能会波动,我想把它作为一个异常。如何处理呢?我不想忽略这样一个特性。

因此,每当有一个常数变量时,问题就会出现。但是用正态分布来近似它是毫无意义的。关于这类变量的全部信息只包含在一个值中——这是为什么会出现这种0除现象的直觉


如果您知道在训练集中未观察到变量的这些波动,您可以简单地将此类变量的方差设置为不小于某个值。您可以应用函数
max(方差(X),eps)
而不是经典的方差定义。然后-您将确保不会发生0除法。

感谢您的输入。我会尝试更新结果。然后呢?我的回答对你有帮助吗?再次感谢你的建议。很抱歉,我没有及时回复。是的,它确实有效。我从您的建议中了解到的是(请确认),我们正在尝试将一个小的“方差”纳入该特征(如果平均值/标准差为零,我可能会添加该方差),因此与该值(eps)的最小偏差可以称为异常。EPS(根据定义)是“机器”浮点系统中两个相邻数字之间的间距。我认为这应该可以奏效。:-)
sigma2 = ((1/m) * (sum((X - mu') .^ 2)))'