首先解释one-hot编码:one-hot编码通常用于分类,例如k个类别,用one-hot编码需要k个数,取值为0或1,以表明当前的sample属于哪个类别,在k个数中,通常只有一个1,其余都是0。huffman编码是一种通用的编码方式,可以用于数据压缩。训练模型时,通常用one-hot编码。
欢迎大家指正。
在计算机数据处理中,霍夫曼编码使用变长编码表对源符号(如文件中的一个字母)进行编码,其中变长编码表是通过一种评估来源符号出现机率的方法得到的,出现机率高的字母使用较短的编码,反之出现机率低的则使用较长的编码,这便使编码之后的字符串的平均长度、期望值降低,从而达到无损压缩数据的目的。
设某个huffman编码加权和为sigma(ai*pi),若存在更优的非h编码,不妨设其中与h编码中权重pi的位置ai与pj的位置aj调换位置(pi>pj),则有pi*ajpj*ai>pi*aipj*aj,整理得(pi-pj)*aj>(pi-pj)*ai,即aj>ai,与h编码矛盾,因此不存在更优的编码。