当前位置:  开发笔记 > 编程语言 > 正文

是否有可能在角膜板中可视化keras嵌入?

如何解决《是否有可能在角膜板中可视化keras嵌入?》经验,为你挑选了2个好方法。

keras能够使用keras.callbacks.TensorBoard以张量板可编码格式导出其中一些训练数据

但是,它不支持在tensorboard中嵌入可视化.

有没有解决的办法?



1> Ophir Yoktan..:

找到了解决方案:

import os

import keras
import tensorflow

ROOT_DIR = '/tmp/tfboard'

os.makedirs(ROOT_DIR, exist_ok=True)


OUTPUT_MODEL_FILE_NAME = os.path.join(ROOT_DIR,'tf.ckpt')

# get the keras model
model = get_model()
# get the tensor name from the embedding layer
tensor_name = next(filter(lambda x: x.name == 'embedding', model.layers)).W.name

# the vocabulary
metadata_file_name = os.path.join(ROOT_DIR,tensor_name)

embedding_df = get_embedding()
embedding_df.to_csv(metadata_file_name, header=False, columns=[])

saver = tensorflow.train.Saver()
saver.save(keras.backend.get_session(), OUTPUT_MODEL_FILE_NAME)

summary_writer = tensorflow.train.SummaryWriter(ROOT_DIR)

config = tensorflow.contrib.tensorboard.plugins.projector.ProjectorConfig()
embedding = config.embeddings.add()
embedding.tensor_name = tensor_name
embedding.metadata_path = metadata_file_name
tensorflow.contrib.tensorboard.plugins.projector.visualize_embeddings(summary_writer, config)


你能解释一下如何构建embedding_df吗?
在这个答案中缺少信息.你能解释一下```get_model()```和```get_embedding()```来自哪里?

2> Dmitry Ziol..:

有此功能的pull请求 - https://github.com/fchollet/keras/pull/5247回调扩展为特定嵌入层创建可视化.

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有