transformer注意力权重系数绘图

参考绘制tsne图,首先将模型中的注意力权重导出,因为我的模型中L=2,所以导出两层

python 复制代码
# plot_weight
weight_model_layer0 = Model(inputs=model.inputs, outputs=model.get_layer('transformer_0').output)
weight_output_layer0 = weight_model_layer0.predict(X_test)
np.save('weight_output_layer0', weight_output_layer0[1])

weight_model_layer1 = Model(inputs=model.inputs, outputs=model.get_layer('transformer_1').output)
weight_output_layer1 = weight_model_layer1.predict(X_test)
np.save('weight_output_layer1', weight_output_layer1[1])

然后,搜到一些使用seaborn绘制热力图的代码,其中我查的比较多的问题是

1、如何修改colorbar字体的大小

2、如何修改xy轴labelsize

3、如何给子图添加标题

就是cbar=False,再重新绘制一个colorbar

参考python使用seaborn画热力图中设置colorbar图例刻度字体大小_seaborn 设置colorbar刻度-CSDN博客

python 复制代码
# 绘制热力图
hm1 = sns.heatmap(attention_per_head_0[0:40, 0:40], cbar=False, cbar_kws={'shrink': 0.8}, square=True, xticklabels='auto', yticklabels='auto')
# 修改xy轴labelsize
hm1.tick_params(labelsize=8)
# 设置标题
hm1.set_title('layer1_head_{}'.format(4), size=12)
# 显示colorbar
cb = hm1.figure.colorbar(hm1.collections[0])  
# 修改colorbar的labelsize
cb.ax.tick_params(labelsize=8)
相关推荐
XZ-07000120 分钟前
week8-代码解析2
python
小虎牙^O^24 分钟前
棋盘格隐写:基于奇偶相位的双图隐藏与还原
图像处理·python·安全
薛定猫AI31 分钟前
【技术干货】基于本地优先架构的开源AI智能体Octopus系统设计与实战解析
python·机器学习·ai·大模型·技术实战
程序猿乐锅1 小时前
【从0-1学习Python | 第四篇】Python 字符串和元组
java·开发语言·笔记·后端·python·学习
Rebecca_aLi1 小时前
码匠教育:从手工表格到脚本自动化,Python 改造工作流的思路
运维·python·自动化
开开心心就好1 小时前
A3的PDF怎么切成A4?拖一下分割线就行
服务器·开发语言·python·算法·pdf·ocr·tornado
小黄人软件1 小时前
python 模块(Module)与包(Package)的区别,python xxx.py、python -m xxx 和 import xxx 三者的区别
开发语言·python
砚底藏山河1 小时前
量化新手误区:因子计算与行情数据的工程化解耦
java·数据库·python·金融
高洁012 小时前
世界模型环境预测与内在表征基础原理
人工智能·深度学习·机器学习·transformer·tornado
lzqrzpt2 小时前
LED驱动电源选型核心参数解析与工程适配准则
python·单片机·嵌入式硬件