注意力机制、self attention、target attention、双层attention

2024-04-28 03:52

本文主要是介绍注意力机制、self attention、target attention、双层attention,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于注意力机制要解决2个问题,一是怎么做在哪个层面上做,二是注意力系数如何得到,由谁产出。注意力机制应用广泛的本质原因是求和的普遍存在,只要是有求和的地方加权和就有用武之地。DIN/DIEN把注意力机制用在用户行为序列建模是为了得到更好的用户特征表示,注意力机制还可以出现在其他很多环节起到各种作用。

在推荐模型用到的各种特征里,用户特征大于物料特征,行为特征大于画像特征。

从做法上引入注意力机制方法可以分为如下几种:

  1. 加权和:这是最简单最常见的,只要原先结构中存在向量求和都可以变为加权和,比如AFM
  2. 按元素/特征/模块乘:虽然把注意力系数乘上去了,但不做求和这种做法可以认为体现了重要性的差异,比如LHUC、SeNet的思路
  3. 以QKV形式做特征抽象表达,特指Transformer里的做法
    1. target attention:Q从target item中取,KV从行为序列中抽取,参考Din,只刻画了target item与候选物品的交叉,忽略了行为序列内部各元素之间的依赖关系
    2. self attention:从行为序列中抽取QKV,从行为序列中提取用户兴趣向量,表征用户交互历史的迁移和相关性
    3. 双层attention建模序列关系:先self attention,后target attention,从行为序列中提取出来的用户兴趣向量,既能反映候选物料与历史记忆之间的相关性,又能反映不同历史记忆之间的依赖性。

从作用上就丰富多彩了,总结如下几种:

  1. 凸显用户兴趣峰,比如DIN、DIEN
  2. 特征进一步细化/抽象的工具,比如SeNet、AutoInt
  3. 对模块进行分化(作为分化模块的工具),注意力机制下常见操作是根据输入不同生成不同的权重,来决定后面模块中突出的是谁,抑制的是谁。反过来说只要注意力系数的分布是一成不变的,后续模块也会对输入陈升特殊的倾向。某种输入产生了大注意力系数那对应位置模块相当于更多承担了这种输入预测,比如MMOE

这篇关于注意力机制、self attention、target attention、双层attention的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/942271

相关文章

Redis客户端连接机制的实现方案

《Redis客户端连接机制的实现方案》本文主要介绍了Redis客户端连接机制的实现方案,包括事件驱动模型、非阻塞I/O处理、连接池应用及配置优化,具有一定的参考价值,感兴趣的可以了解一下... 目录1. Redis连接模型概述2. 连接建立过程详解2.1 连php接初始化流程2.2 关键配置参数3. 最大连

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、

Go语言并发之通知退出机制的实现

《Go语言并发之通知退出机制的实现》本文主要介绍了Go语言并发之通知退出机制的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1、通知退出机制1.1 进程/main函数退出1.2 通过channel退出1.3 通过cont

Spring Boot 中的默认异常处理机制及执行流程

《SpringBoot中的默认异常处理机制及执行流程》SpringBoot内置BasicErrorController,自动处理异常并生成HTML/JSON响应,支持自定义错误路径、配置及扩展,如... 目录Spring Boot 异常处理机制详解默认错误页面功能自动异常转换机制错误属性配置选项默认错误处理

Java中的xxl-job调度器线程池工作机制

《Java中的xxl-job调度器线程池工作机制》xxl-job通过快慢线程池分离短时与长时任务,动态降级超时任务至慢池,结合异步触发和资源隔离机制,提升高频调度的性能与稳定性,支撑高并发场景下的可靠... 目录⚙️ 一、调度器线程池的核心设计 二、线程池的工作流程 三、线程池配置参数与优化 四、总结:线程

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

Spring事务传播机制最佳实践

《Spring事务传播机制最佳实践》Spring的事务传播机制为我们提供了优雅的解决方案,本文将带您深入理解这一机制,掌握不同场景下的最佳实践,感兴趣的朋友一起看看吧... 目录1. 什么是事务传播行为2. Spring支持的七种事务传播行为2.1 REQUIRED(默认)2.2 SUPPORTS2

MySQL中的锁机制详解之全局锁,表级锁,行级锁

《MySQL中的锁机制详解之全局锁,表级锁,行级锁》MySQL锁机制通过全局、表级、行级锁控制并发,保障数据一致性与隔离性,全局锁适用于全库备份,表级锁适合读多写少场景,行级锁(InnoDB)实现高并... 目录一、锁机制基础:从并发问题到锁分类1.1 并发访问的三大问题1.2 锁的核心作用1.3 锁粒度分

Redis的持久化之RDB和AOF机制详解

《Redis的持久化之RDB和AOF机制详解》:本文主要介绍Redis的持久化之RDB和AOF机制,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述RDB(Redis Database)核心原理触发方式手动触发自动触发AOF(Append-Only File)核