当前位置: 首页 > news >正文

重庆网站建设工作室智博常州网站建设

重庆网站建设工作室,智博常州网站建设,网络营销推广方案3篇,dedecms医院网站wap模板(橙色)文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、实验内容0. 理论介绍a. 认知神经学中的注意力b. 注意力机制#xff1a; 1. 注意力权重矩阵可视化#xff08;矩阵热图#xff09;2. 掩码Softmax 操作a. 导入必要的库b. masked_softmaxc. 实验结果 ​ … 文章目录 一、实验介绍二、实验环境1. 配置虚拟环境2. 库版本介绍 三、实验内容0. 理论介绍a. 认知神经学中的注意力b. 注意力机制 1. 注意力权重矩阵可视化矩阵热图2. 掩码Softmax 操作a. 导入必要的库b. masked_softmaxc. 实验结果 ​ 一、实验介绍 注意力机制作为一种模拟人脑信息处理的关键工具在深度学习领域中得到了广泛应用。本系列实验旨在通过理论分析和代码演示深入了解注意力机制的原理、类型及其在模型中的实际应用。 本文将介绍将介绍带有掩码的 softmax 操作 二、实验环境 本系列实验使用了PyTorch深度学习框架相关操作如下 1. 配置虚拟环境 conda create -n DL python3.7 conda activate DLpip install torch1.8.1cu102 torchvision0.9.1cu102 torchaudio0.8.1 -f https://download.pytorch.org/whl/torch_stable.htmlconda install matplotlibconda install scikit-learn2. 库版本介绍 软件包本实验版本目前最新版matplotlib3.5.33.8.0numpy1.21.61.26.0python3.7.16scikit-learn0.22.11.3.0torch1.8.1cu1022.0.1torchaudio0.8.12.0.2torchvision0.9.1cu1020.15.2 三、实验内容 0. 理论介绍 a. 认知神经学中的注意力 人脑每个时刻接收的外界输入信息非常多包括来源于视 觉、听觉、触觉的各种各样的信息。单就视觉来说眼睛每秒钟都会发送千万比特的信息给视觉神经系统。人脑通过注意力来解决信息超载问题注意力分为两种主要类型 聚焦式注意力Focus Attention 这是一种自上而下的有意识的注意力通常与任务相关。在这种情况下个体有目的地选择关注某些信息而忽略其他信息。在深度学习中注意力机制可以使模型有选择地聚焦于输入的特定部分以便更有效地进行任务例如机器翻译、文本摘要等。 基于显著性的注意力Saliency-Based Attention 这是一种自下而上的无意识的注意力通常由外界刺激驱动而不需要主动干预。在这种情况下注意力被自动吸引到与周围环境不同的刺激信息上。在深度学习中这种注意力机制可以用于识别图像中的显著物体或文本中的重要关键词。 在深度学习领域注意力机制已被广泛应用尤其是在自然语言处理任务中如机器翻译、文本摘要、问答系统等。通过引入注意力机制模型可以更灵活地处理不同位置的信息提高对长序列的处理能力并在处理输入时动态调整关注的重点。 b. 注意力机制 注意力机制Attention Mechanism 作为资源分配方案注意力机制允许有限的计算资源集中处理更重要的信息以应对信息超载的问题。在神经网络中它可以被看作一种机制通过选择性地聚焦于输入中的某些部分提高了神经网络的效率。 基于显著性的注意力机制的近似 在神经网络模型中最大汇聚Max Pooling和门控Gating机制可以被近似地看作是自下而上的基于显著性的注意力机制这些机制允许网络自动关注输入中与周围环境不同的信息。 聚焦式注意力的应用 自上而下的聚焦式注意力是一种有效的信息选择方式。在任务中只选择与任务相关的信息而忽略不相关的部分。例如在阅读理解任务中只有与问题相关的文章片段被选择用于后续的处理减轻了神经网络的计算负担。 注意力的计算过程注意力机制的计算分为两步。首先在所有输入信息上计算注意力分布然后根据这个分布计算输入信息的加权平均。这个计算依赖于一个查询向量Query Vector通过一个打分函数来计算每个输入向量和查询向量之间的相关性。 注意力分布Attention Distribution注意力分布表示在给定查询向量和输入信息的情况下选择每个输入向量的概率分布。Softmax 函数被用于将分数转化为概率分布其中每个分数由一个打分函数计算得到。 打分函数Scoring Function打分函数衡量查询向量与输入向量之间的相关性。文中介绍了几种常用的打分函数包括加性模型、点积模型、缩放点积模型和双线性模型。这些模型通过可学习的参数来调整注意力的计算。 加性模型 s ( x , q ) v T tanh ⁡ ( W x U q ) \mathbf{s}(\mathbf{x}, \mathbf{q}) \mathbf{v}^T \tanh(\mathbf{W}\mathbf{x} \mathbf{U}\mathbf{q}) s(x,q)vTtanh(WxUq) 点积模型 s ( x , q ) x T q \mathbf{s}(\mathbf{x}, \mathbf{q}) \mathbf{x}^T \mathbf{q} s(x,q)xTq 缩放点积模型 s ( x , q ) x T q D \mathbf{s}(\mathbf{x}, \mathbf{q}) \frac{\mathbf{x}^T \mathbf{q}}{\sqrt{D}} s(x,q)D ​xTq​ 缩小方差增大softmax梯度 双线性模型 s ( x , q ) x T W q \mathbf{s}(\mathbf{x}, \mathbf{q}) \mathbf{x}^T \mathbf{W} \mathbf{q} s(x,q)xTWq 非对称性 软性注意力机制 定义软性注意力机制通过一个“软性”的信息选择机制对输入信息进行汇总允许模型以概率形式对输入的不同部分进行关注而不是强制性地选择一个部分。 加权平均软性注意力机制中的加权平均表示在给定任务相关的查询向量时每个输入向量受关注的程度通过注意力分布实现。 Softmax 操作注意力分布通常通过 Softmax 操作计算确保它们成为一个概率分布。 1. 注意力权重矩阵可视化矩阵热图 【深度学习实验】注意力机制一注意力权重矩阵可视化矩阵热图heatmap 2. 掩码Softmax 操作 掩码Softmax操作的用处在于在处理序列数据时对于某些位置的输入可能需要进行忽略或者特殊处理。通过使用掩码张量可以将这些无效或特殊位置的权重设为负无穷大从而在进行Softmax操作时使得这些位置的输出为0。   这种操作通常在序列模型中使用例如自然语言处理中的文本分类任务。在文本分类任务中输入是一个句子或一个段落长度可能不一致。为了保持输入的统一性需要进行填充操作使得所有输入的长度相同。然而在经过填充操作后一些位置可能对应于填充字符这些位置的权重应该被忽略。通过使用掩码Softmax操作可以确保填充位置的输出为0从而在计算损失函数时不会对填充位置产生影响。 a. 导入必要的库 import torch from torch import nn import torch.nn.functional as F from d2l import torch as d2lb. masked_softmax 带有掩码的 softmax 操作主要用于处理变长序列其中填充的元素不应该对 softmax 操作的结果产生影响。 def masked_softmax(X, valid_lens):通过在最后一个轴上掩蔽元素来执行softmax操作# X:3D张量valid_lens:1D或2D张量if valid_lens is None:return nn.functional.softmax(X, dim-1)else:shape X.shapeif valid_lens.dim() 1:valid_lens torch.repeat_interleave(valid_lens, shape[1])else:valid_lens valid_lens.reshape(-1)# 最后一轴上被掩蔽的元素使用一个非常大的负值替换从而其softmax输出为0X d2l.sequence_mask(X.reshape(-1, shape[-1]), valid_lens, value-1e6)return nn.functional.softmax(X.reshape(shape), dim-1) 参数解释 X: 一个三维张量表示输入的 logits。 valid_lens: 一个一维或二维张量表示每个序列的有效长度。如果是一维张量它会被重复到匹配 X 的第二维。 函数流程 如果 valid_lens 是 None则直接应用标准的 softmax 操作返回 nn.functional.softmax(X, dim-1)。 如果 valid_lens 不是 None则进行以下步骤 获取 X 的形状 shape。 如果 valid_lens 是一维张量将其重复到匹配 X 的第二维以便与 X 进行逐元素运算。 将 X 重塑为一个二维张量形状为 (-1, shape[-1])这样可以在最后一个轴上进行逐元素操作。 使用 d2l.sequence_mask 函数将有效长度外的元素替换为一个很大的负数-1e6。这样这些元素在经过 softmax 后的输出会趋近于零。 将处理后的张量重新塑形为原始形状然后应用 softmax 操作。最终输出是带有掩码的 softmax 操作结果。 c. 实验结果 masked_softmax(torch.rand(3, 8, 5), torch.tensor([2, 2, 2]))随机生成了一个形状为 (3, 8, 5) 的 3D 张量其中有效长度全为 2。 masked_softmax(torch.rand(3, 8, 5), torch.tensor([1, 2, 3]))使用二维张量为矩阵样本中的每一行指定有效长度 masked_softmax(torch.rand(2, 2, 5), torch.tensor([[1, 3], [2, 4]])) 对于形状为 (2, 2, 5) 的 3D 张量 第一个二维矩阵的第一个序列的有效长度为 1第二个序列的有效长度为 3。第二个二维矩阵的第一个序列的有效长度为 2第二个序列的有效长度为 4。
http://www.sadfv.cn/news/114223/

相关文章:

  • 免费建站资源中国前十名别墅装修公司
  • 长沙 直播网站建设现在一般做网站都是去哪家做的
  • 商城类网站方案手机网站搭建多少钱
  • 做一个静态网站多少钱百度的广告
  • wordpress更改站点名称在线制图免费版
  • 世纪佳缘网站开发语言asp在网站开发中起什么作用
  • 易经网站开发公司网站知识介绍
  • 上传视频网站开发淘宝客优惠券网站建设加盟官网
  • 新开传奇发布网站网站建设的安全性问题
  • 安徽白云集团网站建设北京南站列车时刻表
  • 深圳网站建设公司设计公司深圳哪家网页设计好
  • 聊城网站建设服务好网站后台无法更新缓存
  • 区块链网站建设网站的点击率
  • 网站建设视频l分销商城的服务商
  • 淘宝客如何做免费的网站中天建设集团有限公司山东分公司
  • 北京网站定制开发网址建立快捷方式
  • 中山微信网站the_post wordpress
  • 化妆品网站html模板湖北网站seo策划
  • 建设网站的目标和作用域名做网站名
  • 广汉有没有做网站建设公司重庆建设工程网站
  • 中国铁路总公司建设管理部网站flask做的网站有哪些
  • 普陀网站制作冠县网站建设是什么
  • 开发大型网站的流程4399小游戏大全
  • 苏州网站建设服务公司郑州定制网站推广工具
  • 三合一网站建站口红营销策划方案
  • 漯河专业做网站公司windows优化大师有必要安装吗
  • 微信网站建设和维护报价表天津网站app建设
  • 装修平台网站排名做网站首页可以用传媒公司吗
  • 如何做淘宝客的网站wordpress 火车头发布规则
  • 关键的近义词西安官网seo哪家公司好