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)
相关推荐
小糖学代码6 小时前
LLM系列:1.python入门:3.布尔型对象
linux·开发语言·python
Data_agent7 小时前
1688获得1688店铺详情API,python请求示例
开发语言·爬虫·python
周杰伦fans8 小时前
pycharm之gitignore设置
开发语言·python·pycharm
weixin_462446238 小时前
【原创实践】python 获取节假日列表 并保存为excel
数据库·python·excel
计算机毕设匠心工作室8 小时前
【python大数据毕设实战】全球大学排名数据可视化分析系统、Hadoop、计算机毕业设计、包括数据爬取、数据分析、数据可视化、机器学习、实战教学
后端·python·mysql
别叫我->学废了->lol在线等8 小时前
演示 hasattr 和 ** 解包操作符
开发语言·前端·python
free-elcmacom9 小时前
机器学习入门<6>BP神经网络揭秘:从自行车摔跤到吃一堑长一智的AI智慧
人工智能·python·深度学习·神经网络·机器学习
Hi202402179 小时前
如何录制浏览器播放的音频?虚拟音频线与Python采集步骤
python·音视频
programer_339 小时前
本地手动创建一个MCP(windows环境)
windows·python·ai·mcp·cherry studio
电饭叔11 小时前
不含Luhn算法《python语言程序设计》2018版--第8章14题利用字符串输入作为一个信用卡号之二(识别卡号有效)
java·python·算法