python利用TensorBoard对词向量可视化
学习b站https://www.bilibili.com/video/BV17y4y1m737?p=50的课程时,按照步骤写出现了点问题,然后稍微调整了下就实现了它视频中的效果。先看效果:实现步骤:1.python代码:def word_embedding():import torchimport pandas as pdfrom torch.utils.tensorboard import Su
·
学习b站https://www.bilibili.com/video/BV17y4y1m737?p=50的课程时,按照步骤写出现了点问题,然后稍微调整了下就实现了它视频中的效果。
先看效果:
实现步骤:
1.python代码:
def word_embedding():
import torch
import pandas as pd
from torch.utils.tensorboard import SummaryWriter
import tensorflow as tf
import tensorboard as tb
tf.io.gfile = tb.compat.tensorflow_stub.io.gfile
writer = SummaryWriter()
# 随机初始化一个100×5的矩阵,认为它是我们已经得到的词嵌入矩阵
# 代表99个词汇,每个词汇被表示成50维的向量
embedded = torch.randn(99, 50)
# 导入事先准备好的99个中文词汇文件,形成meta列表原始词汇
meta = pd.read_csv("data/vocab100.csv")
list_meta = meta.values
meta_list = []
for meta_str in list_meta:
meta_list.append(meta_str[0])
writer.add_embedding(embedded, metadata=meta_list)
writer.close()
vocab100百度网盘链接:链接: https://pan.baidu.com/s/1LOhOgR8bpAaMNa9EttdOEg 提取码: cvgm
这段代码的意思就是给了99个词和这99个词对应的向量(这里每个词是50维,向量是随机生成的,反正后面可以替换成你的词和向量啦),用SummaryWriter的add_embedding方法用准备好的数据生成一系列文件(具体我也不懂==)
2.运行代码,你会看到你的py文件的同级目录下出现runs文件
3.cd到你的py文件目录下,输入tensorboard --logdir runs --host 0.0.0.0
4.打开浏览器,输入网址http://127.0.0.1:6006
完成上述步骤你就可以看到文章开头的效果啦。
更多推荐
所有评论(0)