首先在数据增强的基础上引入半监督学习:
文本数据增强的方法,无论一个样本经过同义词替换,还是回译,还是随机交换词语的位置生成多个样本,其实人还是能判断出这几个样本来源同一个句子,从这个角度出发,数据增强带来的效果有限,想想假如训练集只有100条样本,无论你怎么做增强,本质上,样本的来源其实就是那100条,这样模型训练出来的效果也有限。这时候,就体现出半监督学习的重要性,如何把海量的无标注数据纳入进模型训练。
思想很简单,对于标注好的样本一样用交叉熵作为损失函数,对于没标注的样本,则用Consistency Loss。
一致性损失的思想就是增强后的样本与原来的样本语义相同,这是模型输出的概率就应该保持一致,而海量的无标签数据进行数据增强处理后则会得到所有输入空间受到一定扰动的大量样本数据,这些数据与有标签数据进行联合训练将大大增强模型的鲁棒性。
其次便是softmax归一化的介绍:
归一化的好处:
1.一定程度提高模型精度
在机器学习或者深度学习中,大多模型的loss计算,需要假定数据的所有特征都是零均值并且具有同一阶方差的。这样在计算loss时,才能将所有特征属性统一处理。
比如,在KNN中,我们需要计算样本之间的欧式距离,如果样本两个属性的量纲差距过大,则大量纲的属性在距离计算中就占据了主导地位。而现实中,可能恰恰相反。所以,加入归一化,将数据的特征属性scale到统一量纲,可以一定程度解决这个问题。
2.提升收敛速度
对于使用梯度下降优化的模型,每次迭代会找到梯度最大的方向迭代更新模型参数。但是,如果模型的特征属性量纲不一,那么我们寻求最优解的特征空间,就可以看做是一个椭圆形的,其中大量冈的属性对应的参数有较长的轴。在更新过程中,可能会出现更新过程不是一直朝向极小点更新的,而是呈现‘Z’字型。使用了归一化对齐量纲之后,更新过程就变成了在近似圆形空间,不断向圆心(极值点)迭代的过程:
最后半监督学习的大部分论文中,除了Consistency思想,其实还是一种思路是最小化熵即锐化预测,拿一个样本进行举例,如"用摄影记录当红女星杨幂成长之路"这一无标签样本,【体育,娱乐,金融,政治】四分类,把样本输入模型,模型其实不是直接输出概率,而是不同的数值,如【0.50, 1.05, -0.56, 0.01】,把这些数据经过Sofrmax才得到概率分布【0.27, 0.47, 0.09, 0.17】,这时候同上面的思想一样,我们把样本进行数据增强后输入模型,让输出的概率去拟合【0.27, 0.47, 0.09, 0.17】这一概率分布,但在这里我们有个不同的处理,在原样本的Softmax过程中,我们引入Sharpening Predictions,Softmax( l(X) / τ )计算,其中l(X)表示结果逻辑分布概率,即上面的【0.50, 1.05, -0.56, 0.01】,τ 表示温度。τ 越小,分布越Sharper。如τ =0.6,【0.50, 1.05, -0.56, 0.01】每个元素都除以τ,变为【0.83, 1.75, -0.93, 0.02】,再经过Softmax,得到分类概率为【0.24, 0.61, 0.04, 0.11】,可以看到τ 取小于1的数,Softmax输出的概率分布更"Sharpening",即为更陡峭,熵也越低(思考一下,概率分布陡峭了,不确定自然也少了,熵也自然少了)。



