【问题标题】:Feature selection - how to go about it when you have way too many features?功能选择 - 当您有太多功能时如何进行?
【发布时间】:2021-03-26 04:29:54
【问题描述】:

假设您有 1,400 个列/数据点,用于 200k 个条目,您的目标是确定这些列中的哪些列对简单分类任务显示的信号最多。 我已经删除了具有空值阈值、低方差、坏且分类级别太多的列,我仍然有 900 多列。 如果我只包括 500 多个数字列,我可以使用套索,但如果我尝试包括分类,我会一直崩溃,处理的数据太多。 在这种情况下,您将如何进一步减少功能?我的目标不仅仅是分类本身,还在于识别能够为分类任务带来最多信息的特征。

【问题讨论】:

    标签: machine-learning classification logistic-regression feature-selection feature-engineering


    【解决方案1】:

    您可以使用数据驱动的方法,例如,最简单的方法是在 逻辑回归 上使用 L1 正则化(用于您的简单分类任务)和查看权重,您选择不为零或接近零的权重。

    基本上,模型权重的 L1 范数强制了权重向量的稀疏性,这样做,唯一幸存的权重是与“重要”相对应的权重" 特征。

    在任何情况下,在使用这种技术之前都要小心并规范化数据,还要小心分类和标量特征......

    您也可以使用神经网络,然后计算梯度 w.r.t。输入以查看对决策影响更大的因素。

    或其他一些技术,例如:https://link.springer.com/chapter/10.1007/978-3-030-33778-0_24

    或者,您也可以使用随机森林模型并执行特征重要性,例如:https://scikit-learn.org/stable/auto_examples/ensemble/plot_forest_importances.html

    【讨论】:

    • 是的,当我说我可以使用套索时,这正是我正在做的事情,但是对于我来说,它仍然太多的功能无法运行具有数字和分类特征的逻辑回归。只有数字我可以做到,但我确实希望能够查看分类的。
    • @GiovannaFernandes 您还可以使用神经网络,然后计算梯度 w.r.t。输入以查看对决策影响更大的因素。或其他一些技术,例如:link.springer.com/chapter/10.1007/978-3-030-33778-0_24
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-19
    • 2015-02-24
    • 2021-04-18
    • 2016-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多