独热编码(One-Hot Encoding)
- 原理:每个类别用一个长度为词汇表大小的向量表示,只有对应索引位置为1,其余为0。
- 示例:词汇表
{猫, 狗, 鸟}→猫: [1,0,0],狗: [0,1,0],鸟: [0,0,1]。 - 优点:简单直观,适合类别少的情况。
- 缺点:高维稀疏,无法表达语义关系。
整数编码(Integer Encoding)
- 原理:为每个类别分配一个唯一的整数。
- 示例:
猫: 1,狗: 2,鸟: 3。 - 优点:紧凑,节省空间。
- 缺点:整数间无语义关系,可能引入错误的大小比较假设。
词嵌入(Word Embeddings)
位置编码(Positional Encoding)
- 原理:在Transformer中,为序列中的每个位置生成一个向量,与词嵌入相加以保留顺序信息。
- 常用方法:正弦/余弦函数编码位置(原始Transformer)。
- 示例:位置
pos的编码向量第i维: [ PE{(pos, 2i)} = \sin(pos / 10000^{2i/d{\text{model}}}) ] [ PE{(pos, 2i+1)} = \cos(pos / 10000^{2i/d{\text{model}}}) ] - 优点:能够处理变长序列,泛化性强。
基于神经网络的序列编码
预训练语言模型的编码
- BERT:双向Transformer编码器,生成上下文相关的词向量。
- GPT:单向Transformer解码器,生成下文相关的词向量。
- 优点:动态编码,适应不同语境。
应用场景
- 文本分类:词嵌入 + CNN/RNN/Transformer。
- 机器翻译:Transformer编码器-解码器。
- 时间序列预测:RNN/LSTM + 位置编码。
- 语音识别:声学特征 + CNN/RNN。
选择建议
如需进一步了解特定方法或实现细节,可提供具体需求。

版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。