One-Hot编码
一、组件说明
One-Hot编码是一种将离散特征转换成连续特征的方法。它将一个有m个取值的离散特征转换为m个0/1特征,每个特征表示原离散特征是否等于该取值。
例如,假设原始数据集有一个表示“颜色”的特征,包含三个不同的取值:红色、绿色和蓝色。使用One-Hot编码将该特征转换为三个0/1特征,分别表示该特征是否等于红色、绿色和蓝色。即如果原始样本的颜色是红色,则转化后的特征为[1,0,0],如果是绿色,则为[0, 1, 0],如果是蓝色,则为[0, 0, 1]。
One-Hot编码可以避免离散特征中的数值大小对模型的影响,使得模型更加具有稳定性和可解释性。注意:One-Hot编码会增加数据集的维度,导致稀疏性问题和计算复杂度的增加,因此在实际应用中需要根据数据集大小和模型的性能需求进行权衡和选择。
组件截图
二、参数说明
参数名称 | 参数说明 |
选择编码字段 | 选择需要进行One-Hot的字段。只可选择String类特征,可多选。 |
特征剪枝方式 | DataTrust One-Hot组件支持剪枝,即将需要处理的数据列,按照频率或者比例,取头部的值进行OneHot,去除长尾数据,从而达到大幅度降维的目的。剪枝方式可以选择以下两种:
tips: 也可以选择【不剪枝】 |
保留次数大于阈值的特征 | 【按特征次数保留】专有。选择统计个数大于阈值的特征值保留,正整数值。 |
保留比例大于阈值的特征,百分比 | 【按特征频率保留】专有。按照特征值在本列中的比例来确定过滤,保留大于阈值比例的特征值,阈值范围(0, 100]。 |
三、有配置文件可读
在上游有配置文件可以选择的时候,可以使用配置文件进行【One-Hot编码】。填充的字段、方式、映射方式和配置文件相同,无需再次设置参数。举例:在训练过程中,训练数据的【One-Hot编码】为按阈值过滤,过滤阈值为100,映射关系为“红色”-> [0,0,1],“蓝色”->[0,1,0]。希望用训练数据的缩放比例来填充至预测数据中,此时可以将训练时使用的配置文件,通过【读配置文件】接入到【One-Hot】的输入桩中,以此来保证训练数据和预测数据的一致性,映射关系依然保持不变,为“红色”-> [0,0,1],“蓝色”->[0,1,0],过滤阈值也为100。连接关系如下图所示: