1.数据
比如有一条数据【x=“Simultaneous Tropical Storms are Very Rare”】.则把该句子的大写字母全部表示成小写,构建char字符集的词汇表如下(这里词汇表长度为70(69+1,即其他的不在词汇表的表示为0)):
数据可以表示为x=70X1014 (高X宽,即70个特征,每个特征的长度为1014),该矩阵初始为0,反向依次遍历【x=“simultaneous tropical storms are very rare”】,即首先遇到长度1014向量的第一个字符“e”,则查找"e"在词汇表中的位置为index,在矩阵index行中把第0列置1;然后遇到长度1014向量的第2个字符“r”,则查找"r"在词汇表中的位置为index,在矩阵index行中把第1列置1;…重复以上遍历,则可以表示一条数据最终为x=70X1014的矩阵。(1014是一个固定参数,根据问题而定)
2.网络结构
分为9层,输入为x=70*1014;输出为4个类别。(如果类别之间不平衡,则处理方式是,对于较少的类别,提高其类别权重。比如类别A:B:C:D=1:2:3:4,则weight(A)=(1+2+3+4)/1=10;weight(B)=(1+2+3+4)/2=5)
参考
1.代码
2.《Character-level convolutional networks for text classification》