影响逻辑斯蒂回归性能的因素

我们考察步长、迭代次数、是否包含默认类别、二元或多元、损失函数比率,归一化等因素。并与最大熵分类器进行对比。


1. 是否包含默认类别,就是说在进行K元分类时,是否包含第K+1个默认类别。

    包含默认类别的输出h(x) = exp (W*X) / {1.0 + sum_exp (W*X)},对于iClassIndex <= K;h(x) = 1.0 / {1.0 + sum_exp (W*X)},对于iClassIndex == K+1。

    不包含默认类别的输出h(x) = exp (W*X) / {1.0 + sum_exp (W*X)},对于iClassIndex <= K-1;h(x) = 1.0 / {1.0 + sum_exp (W*X)},对于iClassIndex == K。

    性能对比:多元分类    包含 92.78%    不包含 92.46%

                      二元分类    包含 100%       不包含 98.91%


2. 多元分类下步长的影响。迭代次数固定为100

    0.003    89.34%

    0.01      92.46%

    0.03      92.46%

    0.1        89.67%


3. 多元分类下迭代次数的影响。步长固定为0.01

    50次      89.34%

    100次    89.34%

    150次    89.34%


4. 用多元分类器对二元问题进行分类。

    二元分类(不包含默认类别) 98.92%    多元分类(包含默认类别) 100%    多元分类(不包含默认类别) 98.91%


5. 与MALLET的最大熵分类器进行多元分类的对比。

    最大熵 91.15%    逻辑斯底回归 92.78%


6. 损失函数比率的计算公式为dImproveRatio = (dPreCost - dCost) / dPreCost,初始化dPreCost=100, dCost=0。固定步长为0.01,最大迭代次数为100次。

    dImproveRatio = 0.01      89.67%    迭代停止在25次

    dImproveRatio = 0.003    91.31%    迭代停止在69次

    dImproveRatio = 0.001    92.78%    迭代停止在100次


7. 归一化的影响。dValue = (dValue - dMin) / (dMax - dMin)

    对于没有归一化的数据集:   归一化 80%    没有归一化 58%

    对于已经归一化的数据再次归一化:    归一化(步长0.01) 88%    归一化(步长0.1) 91%    没有归一化 92%


你可能感兴趣的:(机器学习)