Corpus语料库与DB数据库

World Knowledge世界常识库:OALD牛津高阶/Synonyms/Phrases/…, 新华字典/成语词典/辞海, 行业词典,大英百科,Wikipedia,…

全局信息: Corpus语料库、行业通用数据库(例如Springer/Google Scholar/Academia/…学术数据库)/领域库、用户自定义库;

语义信息:输入句子的历史记录,有许多条句子记录;

句子信息:当前动态输入句子;

本句上下文信息:提取 当前输入词 的 词向量 时用到的长度设为 N 的滑动窗口长度范围的字符序列信息

自动断句:用户输入的每个字符/词,取前文N-Gram长度,计算出是断句词的概率:

例如 :“。”(句号),“?”(问号),[正式,结束],[好了,吗],…,

而这些是可以通过历史交互数据,与Corpus/DB进行统计学习训练得到的(每个词是断句词的统计概率).

Attention、 Self-Attention 与 Multi-Head Attention:

Attention = f(Q, (K, V))

Attention 的 (K, V)是预训练时,

使用 Corpus语料库 或 World Knowledge世界常识库 统计训练得到。

Vocabulary是静态的,维度是定长的,Vocabulary尽可能收集到完整的样本空间。

Attention是词向量 与 Vocabulary 的每一个词计算Similarity相似度

Self-Attention 的 K, V 是预测时,使用 当前输入句子,以及输入句子的历史记录,动态训练的;

Vocabulary是动态的,维度变长的,Vocabulary尽可能收集到当前会话或全部会话的 输入句子历史记录

有一个处理Tips:

正像用 定长的滑动窗口 将 变长的动态输入句子 进行采样。

可将变长的Vocabulary维度,通过padding组织成定长的维度。

Self-Attention是当前输入句子的每一个词,与当前输入句子(Self)的每一个词计算Similarity

Multi-Head Attention:

Multi-Head Attention 原理是:

使用 H 组不同的 Attention Parameter注意力参数(Wq, Wk, Wv),

配置 H 组相同的 Attention Operator注意力算子结构f(Q, (K, V)),

并行提取并综合这 H 组不同感受野范围的注意力信息

不同的 Attention Parameter提取不同范围的全连接注意力,

并行计算,并综合这 H 组不同的局部感受野的Attention,最终组成一个总体Attention。

这样一来,当前输入的每一个单词,与 当前输入句子 和 历史输入句子 的 每一个单词 都会有一个Attention权重,

这也是 Self-Attention 名字的来源,即 Attention 的计算用的是 Source 和 Source 本身(即|TermSeq|• |TermSeq|),

通俗讲,就是 Q、K、V 都来源于输入 X 本身的词序列(Term Sequence)。

因此,无论当前输入句子字符序列多长,都可以很好的提取句子信息,

而且是并行多种提取: 句子特征(本句),语义信息(跨多句),…

这很好的解决了 RNN 序列长距离依赖的问题。

而且对于一个句子而言,每个单词的计算是可以并行处理的

不同的 Attention Parameter提取不同范围的全连接注意力, 可以类比:

N-Gram: 使用多组不同的 N,配置 N 组相同的N-Gram Vectorizer; 并行提取并综合。

例如使用N=[1,2,3,4,5,6,7,8], 配置8组相同的N-Gram Vectorizer,

并行提取滑动窗口长度为1~8的共现词向量;并综合之。

综合这8组不同长度的滑动窗口提取到的信息,作为总体的注意力信息。

CNN: 使用 K 组不同得 Convolution Step卷积步长, 配置 K 组相同的CNN Operator; 并行卷积并综合。

例如使用 Step=[2,3,5,7,11,13,17,19], 配置8组相同的CNN Model,并行8组CNN卷积并综合。

Attention、Self-Attention 与 Multi-Head Attention的更多相关文章

  1. multi lstm attention 坑一个

    multi lstm attention时序之间,inputs维度是1024,加上attention之后维度是2018,输出1024,时序之间下次再转成2048的inputs 但是如果使用multi ...

  2. 用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践

    https://zhuanlan.zhihu.com/p/25928551 近来在同时做一个应用深度学习解决淘宝商品的类目预测问题的项目,恰好硕士毕业时论文题目便是文本分类问题,趁此机会总结下文本分类 ...

  3. [转] 用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践

    转自知乎上看到的一篇很棒的文章:用深度学习(CNN RNN Attention)解决大规模文本分类问题 - 综述和实践 近来在同时做一个应用深度学习解决淘宝商品的类目预测问题的项目,恰好硕士毕业时论文 ...

  4. (转)注意力机制(Attention Mechanism)在自然语言处理中的应用

    注意力机制(Attention Mechanism)在自然语言处理中的应用 本文转自:http://www.cnblogs.com/robert-dlut/p/5952032.html  近年来,深度 ...

  5. 注意力机制(Attention Mechanism)在自然语言处理中的应用

    注意力机制(Attention Mechanism)在自然语言处理中的应用 近年来,深度学习的研究越来越深入,在各个领域也都获得了不少突破性的进展.基于注意力(attention)机制的神经网络成为了 ...

  6. 论文笔记之: Recurrent Models of Visual Attention

    Recurrent Models of Visual Attention Google DeepMind 模拟人类看东西的方式,我们并非将目光放在整张图像上,尽管有时候会从总体上对目标进行把握,但是也 ...

  7. Multimodal —— 看图说话(Image Caption)任务的论文笔记(三)引入视觉哨兵的自适应attention机制

    在此前的两篇博客中所介绍的两个论文,分别介绍了encoder-decoder框架以及引入attention之后在Image Caption任务上的应用. 这篇博客所介绍的文章所考虑的是生成captio ...

  8. 深度学习之seq2seq模型以及Attention机制

    RNN,LSTM,seq2seq等模型广泛用于自然语言处理以及回归预测,本期详解seq2seq模型以及attention机制的原理以及在回归预测方向的运用. 1. seq2seq模型介绍 seq2se ...

  9. 深度学习之注意力机制(Attention Mechanism)和Seq2Seq

    这篇文章整理有关注意力机制(Attention Mechanism )的知识,主要涉及以下几点内容: 1.注意力机制是为了解决什么问题而提出来的? 2.软性注意力机制的数学原理: 3.软性注意力机制. ...

  10. 【论文速读】Pan He_ICCV2017_Single Shot Text Detector With Regional Attention

    Pan He_ICCV2017_Single Shot Text Detector With Regional Attention 作者和代码 caffe代码 关键词 文字检测.多方向.SSD.$$x ...

随机推荐

  1. CSharp_base

    C# 基础篇 枚举(enum) 枚举是一个被命名的整形常量的集合 用于表示: 状态 类型 申明枚举:创建一个自定义的枚举类型 申明枚举变量:使用申明的自定义的枚举类型,来创建一个枚举变量 语法 //语 ...

  2. Cline技术分析:prompt如何驱动大模型对本地文件实现自主变更

    prompt如何驱动大模型对本地文件实现自主变更 在AI技术快速发展的今天,编程方式正在经历一场革命性的变革.从传统的"人写代码"到"AI辅助编程",再到&qu ...

  3. Nacos源码—6.Nacos升级gRPC分析一

    大纲 1.Nacos 2.x版本的一些变化 2.客户端升级gRPC发起服务注册 3.服务端进行服务注册时的处理 4.客户端服务发现和服务端处理服务订阅的源码分析 1.Nacos 2.x版本的一些变化 ...

  4. P11071 「QMSOI R1」 Distorted Fate题解

    题意: 给定一个序列,给定两种操作: 将一个区间异或上一个给定的值. 给定 \(l,r\) 求 \[{\large (\sum_{i=l}^r\bigcup_{j=l}^i A_j) \bmod 2^ ...

  5. 开源我的一款自用AI阅读器,引流Web前端、Rust、Tauri、AI应用开发

    前沿 - 为什么要做这个开源软件 作为一个典型的前端开发者,去年在为公司调研Rust前端工具链.LLM应用开发技术体系的时候,对这类技术领域产生了浓厚的兴趣,也是出于早期曾经是一名Android移动应 ...

  6. 【拥抱鸿蒙】基于 Cocos Creator 的 HarmonyOS 自动构建

    概述 随着 Cocos Creator 新版本的发布,开发者们迎来了一个令人振奋的消息:Cocos Creator 现已支持发布到 HarmonyOS 平台.这为游戏开发者和应用开发者开辟了新的天地, ...

  7. Java 压缩成zip文件

    综述 在< 把多个文件打包压缩成tar.gz文件并解压的Java实现>中介绍了如何把文件压缩车gz文件,这里介绍如何把文件压缩成zip文件.支持如下方式的压缩: 压缩单个文件 压缩文件夹下 ...

  8. 20250528 - Usual 攻击事件: 价差兑换与请君入瓮

    背景信息 项目背景 VaultRouter 合约有用特权身份,可以通过 Usd0PP 合约将 USD0++ 以 1:1 的比例兑换成 USD0,随后通过 UniV3 将 USD0 swap 成 sUS ...

  9. Tomcat基础学习

    Tomcat简介 Tomcat是一个轻量级的web服务器,也称为web容器,servlet容器.(web服务器可以封装http协议,简化开发.还可以将web项目部署到服务器上,对外提供网上浏览.) T ...

  10. git add 报错The file will have its original line endings in your working directory

    执行如下命令,添加代码到本地仓库 git add . 出现警告信息:The file will have its original line endings in your working direc ...