如果分类变量可以采用的值的数量很大,我们如何使用一个热编码?
在我的情况下,它是56个值。因此,按照通常的方法,我必须在训练数据集中添加56列(56个二进制特征),这将极大地增加复杂性,从而增加训练时间。
那么我们如何处理这类案件?
答案 0 :(得分:0)
使用紧凑编码。虽然单热编码通常可以享受非常小的时间惩罚,但这会占用时间空间。
如果您的数据格式支持,那么最容易理解的想法是56个布尔值的向量。具有最直接映射的那个是使用64位整数,每个位是布尔值。这就是我们如何在硬件设计中实现单热矢量。大多数4G语言(以及成熟的3G语言)包括用于位操作的快速例程。您将需要获取,设置,清除和查找位。
这会让你感动吗?