在多任务学习中,没有明确的准则指导我们如何确定参数的共享部分。为了说明我们其实不明确知道该共享哪些参数,作者进行了一个实验,实验为2组多任务学习实验,通过共享不同层的模型参数,得到了两组任务在不同的参数共享策略下的性能对比,实验结果说明了不同任务的最佳分割比(共享层和特定任务的表示比例)是不一样的,这取决于手头的任务类型。枚举每一种可能的网络拆分是一种可能的实现,但是这种做法十分笨拙,费时,因此Cross-Stitch建立了一个新的单元,能够自动决定当前任务的最佳共享层,也就是可以使网络自动学习到需要共享的特征。
十字绣单元将来自两个任务的特征图进行线性组合,然后将得到的新的activation maps(就是特征图)作为输入送到下一层的卷积中。下面的公式就是cross-stitch单元,其中αAB和αBA就是要学习的共享权重。有了这个单元,网络就可以通过将αAB和αBA设置为0,来结束共享;通过将αAB和αBA附上更高的值来提高共享的程度。同时,由于cross-stitch单元中是线性组合,因此反向传播时进行梯度计算也是比较容易的。