我正在构建一个单层感知器,它具有相当长的特征向量(30-200k),全部标准化。
假设我有 30k 个特征,这些特征在预测一个类时有些用处,但随后又添加了 100 个非常好的预测特征。预测的准确性只上升了微不足道的数量。但是,如果我手动增加 100 个优秀特征的权重(比如增加 5 倍),准确率会提高几个百分点。
我的印象是,训练过程的性质应该自然地赋予更好的特征更高的权重。然而,似乎最好的功能正在被更差的功能“淹没”。
我尝试用大量的迭代来运行它,但这并没有帮助。
如何以相当简单的方式使算法适应更好的权重特征?此外,一种相当快速的方式;如果我的功能更少,那么运行算法很容易,一次只留下一个,但对于 30k 来说这并不可行。