1

我正在使用 Liblinear 来训练分类问题的模型。我注意到改变训练数据中样本的顺序会导致不同的模型。为了测试这一点,我创建了两个不同的 liblinear 问题,它们以不同的顺序包含相同的数据。

Problem 1:
x:
[FeatureNode(idx=1, value=1.0), FeatureNode(idx=2, value=1.0), FeatureNode(idx=5, value=1.0)]
[FeatureNode(idx=1, value=1.0), FeatureNode(idx=2, value=1.0), FeatureNode(idx=3, value=1.0), FeatureNode(idx=5, value=1.0)]
y:
[1.0, 0.0]
Generated model:
[0.0, 0.0, -1.0, 0.0, 0.0]

Problem2:
x:
[FeatureNode(idx=1, value=1.0), FeatureNode(idx=2, value=1.0), FeatureNode(idx=3, value=1.0), FeatureNode(idx=5, value=1.0)]
[FeatureNode(idx=1, value=1.0), FeatureNode(idx=2, value=1.0), FeatureNode(idx=5, value=1.0)]
y:
[0.0, 1.0]
Generated model:
[0.04166666666666674, 0.04166666666666674, 0.875, 0.0, 0.04166666666666674]

这是什么原因?这可以避免吗?

4

0 回答 0