GAT里面的sofamax函数的实现:

news2024/11/27 12:57:16

1.sofamx 公式:

2. GAT里的sofamax函数的实现:

 1.

因为指数在x轴正轴爆炸式地快速增长,如果zi比较大,exp⁡(zi)也会非常大,得到的数值可能会溢出。溢出又分为下溢出(Underflow)和上溢出(Overflow)。计算机用一定长度的二进制表示数值,数值又被称为浮点数。当数值过小的时候,被四舍五入为0,这就是下溢出;当数值过大,超出了最大界限,就是上溢出。

一个简单的办法是,先求得输入向量的最大值,然后所有向量都减去这个最大值:

2.问题是:一组数直接求softmax,和这组数取出最大值后,每个数逐个减去最大值然后求softmax的结果是一样吗? 

3. 

#下面就是GATConv中softmax的实现,就是这种防止计算上溢的实现方式

N = maybe_num_nodes(index, num_nodes)
src_max = scatter(src, index, dim, dim_size=N, reduce='max')
src_max = src_max.index_select(dim, index)
out = (src - src_max).exp()
out_sum = scatter(out, index, dim, dim_size=N, reduce='sum')
out_sum = out_sum.index_select(dim, index)

 参考:

三分钟读懂Softmax函数 - 知乎 (zhihu.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1218940.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

当攻防演练已成常态,企业应该相信西医还是老中医?

在面对疾病时,很多人常常会犹豫不决,不知道应该选择中医还是西医进行治疗。与疾病斗争的过程也是一场“战斗”,需要选择合适的“武器”和策略。有些人认为西医疗效快,能够迅速缓解症状;而另一些人则认为中医治疗更根本…

llvm源码windows编译

1.克隆llvm源码: git clone --config core.autocrlf=false https://github.com/llvm/llvm-project.git 2.创建build文件夹并生成makefile 生成前置条件: cmake ,ninja,python3要先安装 cmake -S llvm -B build -G Ninja -DCMAKE_BUILD_TYPE=Release 生成成功 3.编译 进…

如何用AB测试完善产品激励体系

更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 用户激励体系,也称用户激励机制,是为了让用户持续使用产品,而设计的一套对应规则。在用户激励体系建立过程中,产品可…

linux、windows 查看java等进程占用资源情况

linux查看进程占用资源情况: top -o %MEM -b -n 1 | grep java | awk {print "PID: "$1" \t 虚拟内存: "$5" \t 物理内存: "$6" \t 共享内存: "$7" \t CPU使用率: "$9"% \t 内存使用率: "$10"%&…

护眼台灯选购注意事项?考公专用护眼台灯推荐

随着科技的发展和进步,台灯的外观也不在和以往一般笨重,而是变得越来越美观,而且也更方便了,功能也越来越多元化了。台灯作为现在我们日常学习、阅读、办公必备的一盏照明灯具,其光源的舒适度是非常重要的。那么挑选台…

新生儿早产:原因、科普和注意事项

引言: 新生儿早产是指婴儿在孕期不满37周就出生的情况,这对于新生儿的健康和发育可能产生一定的影响。了解新生儿早产的原因以及如何正确应对是非常关键的。本文将科普新生儿早产的原因,提供相关信息,并为父母和监护人提供注意事…

JAVAEE初阶 计算机如何工作

计算机的工作 一.冯诺依曼体系二.CPU基本工作流程1.逻辑门1.1电子开关1.2门电路 2.算术逻辑单元2.1 进制的理解2.2 算术单元2.3逻辑单元 3.寄存器和内存4.控制单元5.指令 一.冯诺依曼体系 二.CPU基本工作流程 1.逻辑门 1.1电子开关 1.2门电路 1.非门 2.与门 3.或门 4.异或…

SQL server从安装到入门(一)

文章目录 彻底安装怎么安装?Polybase要求安装orcale jre 7更新 51或更高版本?安装完怎么配置?没有SSMS? 熟悉一下SMSS! 根据本人实际安装和初步使用SQL server的过程中,经历的一些关键性的步骤和精品文章。…

基于springboot实现电子招投标系统【项目源码】

基于springboot实现电子招投标系统演示 SpringBoot框架 SpringBoot是一个全新开源的轻量级框架。基于Spring4.0设计,其不仅继承了Spring框架原来有的优秀特性,而且还通过简化配置文件来进一步简化了Spring应用的整个搭建以及开发过程。另外在原本的Spri…

基于STC12C5A60S2系列1T 8051单片机的SPI总线器件数模芯片TLC5615实现数模转换应用

基于STC12C5A60S2系列1T 8051单片的SPI总线器件数模芯片TLC5615实现数模转换应用 STC12C5A60S2系列1T 8051单片机管脚图STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式及配置STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式介绍SPI总线器件数模芯片TLC5615介绍通过按…

Shopee买家号有什么作用?如何才能拥有大量的虾皮买家号?

对于卖家而言,用shopee买家号进行测评有以下几点好处: 1、随时随地可以给自己店铺下单、评价、点星 2、成本很低:都是自己准备一些资料进行注册的,因此成本也是比较可控的。 3、自己管理更加安全可控:每个账号都是独…

【AI视野·今日NLP 自然语言处理论文速览 第六十二期】Wed, 25 Oct 2023

AI视野今日CS.NLP 自然语言处理论文速览 Wed, 25 Oct 2023 (showing first 100 of 112 entries) Totally 100 papers 👉上期速览✈更多精彩请移步主页 Daily Computation and Language Papers MuSR: Testing the Limits of Chain-of-thought with Multistep Soft R…

APP广告变现痛点,开发者如何解决?

app广告变现对开发者来说,最大的担心是植入广告会影响自身的用户体验,以及该去哪里找到优质的广告主?如何在技术上实现广告植入的正确姿势,从而达成用户、流量、收益三者之间的动态平衡? https://www.shenshiads.com …

软文与硬广的区别是什么,小红书软文营销心得!

随着互联网愈加深入我们生活的方方面面,我们的生活也逐渐适应了互联网的存在,一些传统的阅读方式已经逐渐被我们所忽略,取而代之的则是一种新型产品——软文。今天,就来为大家分享一下软文与硬广的区别是什么,小红书软…

几款开源视频编辑软件的比较

软件特点OpenShot跨平台、免费开源、易于上手、功能丰富Shotcut跨平台、免费开源、支持多种格式、性能强大kdenlive跨平台、开源、功能强大、支持多种滤镜Avidemux跨平台、免费开源、小巧简洁、功能实用 OpenShot 是一款免费开源的视频编辑软件,支持 Windows、macO…

6块钱改变世界,网易和拼多多踏入同一条河流?

年底将至,各种颁奖盛典星光熠熠。如果要给今年深蹲反弹中的互联网大厂颁奖,2023表现最突出的可能是师出同门的兄弟网易和拼多多。 从市场表现来看,两家企业录得今年互联网中概股最高涨幅,被称为“中概股之光”:2023年…

《如何定义一个Java泛型类》

《如何定义一个Java泛型类》 1、标题2、正文3、代码①传一个参数的泛型类②传两个参数的泛型类③有界限的泛型④ 定义一个泛型方法⑤ 泛型界定⑥ 使用通配符定义一个泛型方法 1、标题 深入理解Java泛型:自定义泛型类的实现方法 2、正文 在Java编程中,泛型…

openldap-sasl身份认证镜像

背景 在这篇文章中,AD域信息同步至openLDAP我们使用了SASL将身份验证从OpenLDAP委托给AD”这种方案,本文主要来构建此方案的docker镜像。 sasl官网:Cyrus SASL bitnami/openldap镜像地址:containers/Dockerfile bitnami/openl…

ConnectTimeout 和 ConnectionError 的差异

随着网络请求库的不断发展和更新,开发者们在使用不同版本的requests库时,可能会遇到一些差异和问题。 首先,让我们看看问题的具体背景。用户在使用requests库的get方法时,遇到了以下情况: python import requests re…

恭喜顺利结项 | 开源之夏 2023openGauss项目结项结果公示

祝贺! 激动人心的时刻终于到来!开源之夏 2023 活动结项审核结果正式出炉。此次,openGauss深度参与活动,发布12个openGauss相关项目,10个项目进入开发周期,最终有8个项目成功结项。恭喜所有成功结项的同学&…