在这里,我尝试使用 DNN(深度神经网络)构建一个分类器,其输入是许多投资组合。从本质上讲,每个投资组合都包含几只股票,这些股票由那里的内码标记,例如“1430”或“5560”等。由于内码是离散数字,我更喜欢使用on-hot编码来表示每个文件夹。然而,不同的内码多达数千种,这意味着热码的维度也可能如此之大。我想知道这个维度是否对于真正的训练来说太大了,有什么办法可以解决或缓解这个问题,比如之后使用 PCA。
维度大到几千的情况下使用one-hot编码是否有效
数据挖掘
机器学习
神经网络
编码
2021-09-15 13:23:51
1个回答
在应用于自然语言处理的神经网络中,通常每个可能的词(或子词)都作为单独的标记处理,通常词汇表(支持的标记集)约为 32K。这些令牌通常是一次性编码的。因此,具有数千个分量的 one-hot 编码向量不存在固有问题。但是,训练数据的数量和种类应支持模型的维度,以免过度拟合。请注意,在 NLP 中,这些热编码用作模型的预期输出,在其上与模型的输出(softmax)一起计算最大似然(分类交叉熵)。
根据您使用此投资组合信息的方式,另一种选择是拥有一个嵌入层,它将离散值嵌入到连续的表示空间中(其维度是模型的超参数)。如果将此信息用作模型的输入,这将是可能的。在这些情况下,您输入一个整数,用于索引嵌入的向量表。
其它你可能感兴趣的问题