关于可视化建模—特征工程—特征生成—one-hot编码,想请教两个问题

  1. 其他保留特征和附加列有什么区别?它使用场景是什么? 从文档给的案例来看f3是作为其他保留特征,将整列映射为0,保存在映射模型表中, 在编码后的表是原样输出_reserve__f3_0,与原始列f3只是列名不同,想问下一般什么场景下需要做这样的操作
  2. 在用one-hot组件去做预测的时候,预测的特征是不是要和训练onehot时候的特征包含的类别相同吗?比如 训练是特征f0有4种取值,映射为1,2,3,4,那么预测的f0也需要4种?如果有第5种,是映射为5吗?

展开
收起
游客3oewgrzrf6o5c 2022-07-10 22:27:58 428 分享 版权
阿里云 AI 助理回答

其他保留特征附加列的区别及使用场景:

  • 其他保留特征:这部分是指在进行one-hot编码时,用户希望直接保留下来的原始特征。这些特征不会被转换为one-hot形式,而是以DOUBLE类型的形式输出至结果表的KV字段中。通常,选择作为保留特征的字段是对模型预测有直接意义且不需要进行离散化处理的连续型数据。例如,在案例中,f3 (DOUBLE)被设置为保留特征,意味着它在编码后的输出表中将原样输出(如reserve__f3_0),保持其数值不变,适用于那些对模型预测有直接影响且不应被离散化的连续变量。

  • 附加列:附加列允许用户在输出表中增加额外的列,这些列可以是任何不参与one-hot编码但希望随结果一同输出的信息。这为用户提供了一种便捷方式来携带或整合额外元数据到最终的数据集中,而无需修改原有数据或编码逻辑。例如,你可能想要添加一列样本ID,以便于后续分析或结果追踪。

关于One-Hot编码的使用场景和限制:

在使用one-hot组件进行预测时,预测数据集中的特征确实需要与训练时的特征类别保持一致。这意味着如果训练阶段某个特征f0识别出了4种不同的取值,并映射为了1, 2, 3, 4,那么在预测阶段,输入到该模型的特征f0也应仅包含这4种已知取值。如果出现了第5种未见过的新类别,按照标准的one-hot编码逻辑,理论上该新类别不会自动映射为“5”,因为one-hot编码是在训练阶段根据训练数据确定每个类别的编码方式。对于新出现的类别,如果没有特别配置,系统通常无法直接处理,这可能会导致预测过程出错或该样本被排除。解决这一问题的方法可能包括: - 在模型部署前,通过数据预处理确保预测数据集与训练数据集的特征空间一致。 - 对模型进行定期更新,纳入新出现的类别。 - 使用更灵活的编码方法,如词袋模型、标签编码加上后续的嵌入层等,这些方法能够更好地处理未见过的类别。

综上所述,保留特征用于保护特定连续型特征不受编码影响,而附加列则提供了一个扩展输出表内容的机制。在实际应用one-hot编码时,确保预测数据与训练数据的特征结构相匹配至关重要。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答

人工智能平台 PAI(Platform for AI,原机器学习平台PAI)是面向开发者和企业的机器学习/深度学习工程平台,提供包含数据标注、模型构建、模型训练、模型部署、推理优化在内的AI开发全链路服务,内置140+种优化算法,具备丰富的行业场景插件,为用户提供低门槛、高性能的云原生AI工程化能力。

收录在圈子:
还有其他疑问?
咨询AI助理