多任务学习AITM算法简介
解决什么问题?
有一类多任务具有前后依赖关系,比如CVR依赖CTR,比如出行领域的乘客取消动作发生在司机接单之后。
那么针对这类任务,大家都知道的是ESMM,AITM实在ESMM基础上更近一步。
主要创新点是什么?
- 模型结构上,引入了AIT模块,用于提取前序任务到目标任务的信息转移
- 损失函数方面,约束了前序任务的率大于后续任务
具体展开来讲
模型结构优化
如上图所示,t任务的输入包括两部分 pt−1p_{t-1}pt−1 和 qtq_tqt,计算公式分别如下:
AIT则是一个self-attention模块,其中h为MLP,<>为点积。
我认为这里的AIT也可以调整为qtq_tqt去attention pt−1p_{t-1}pt−1,做点积作为pt−1p_{t-1}pt−1的权重,或者经过变化,类似QKV的前置变换。
损失函数优化
多任务学习的损失函数,除了每个任务本身的CE算是,这里加上了一个正则,用于约束任务t的输出概率小于任务t-1。
模型效果如何
在美团信用卡预估任务上提升还是挺明显的。
总结
创新点还是听清楚,不过总感觉PLE这样的网络,从信息共享和提取的角度,按理说能cover这个模型的效果?有实践经验的同学可以评论讨论下。
打个广告
我们团队还在招算法工程师,工作1-8年的都看,可以私聊我。