spark-ml normalizer丢失了元数据


尼拉。
2024-12-15 02:55:25 (2月前)


我正在使用PySpark中具有分类特征的数据集,这些数据集是索引的并且是单热编码的。在拟合管道之后,我使用了提取编码的特征

元数据
</跨度>
功能列的功能。当我在我的管道中包含一个规范化器时,我失去了

元数据
</跨度>
我的分类特征。见下面的例子:

train.show()
+ —– + — + —- + —- +
|承认| GRE | GPA |排名|
+ —– + — + —- + —- +
| 0.0锟

2 条回复
  1. 0# 蜡笔小辛 | 2019-08-31 10-32



    在我看来,使用它没有多大意义

    Normalizer

    首先是单热编码数据。在Spark中,OHE对两种类型的模型很有用:




    • 多项朴素贝叶斯。


    • 线性模型。



    在第一种情况下,归一化将使特征完全无用(多项模型只能充分利用二元特征)。在第二种情况下,它将使模型的解释几乎不可能。



    即使您忽略上述规范化数据也不能再被解释为二进制特征,因此丢弃元数据似乎是一种有效的行为。



    相关

    为什么StandardScaler不将元数据附加到输出列?


登录 后才能参与评论