我正在通过Tensorflow博客访问create a CNN.
这是一篇很棒的文章,但它确实使用以下代码将vocab文件保存并恢复到文件系统:
vocab_processor.save(vocab)
vocab_processor = learn.preprocessing.VocabularyProcessor.restore(vocab))
我一直在扩展该示例,以使用SaveModel方法来生成save_model.pd,并且可以正常工作。下一步,我想将vocab文件另存为资产。
保存操作运行良好,我可以在/ assets目录中看到vocab文件,其大小和内容与使用原始方法相同。
我的问题是,如何从资产目录还原文件的内容以传递给VocabularyProcessor.restore方法?
我找到了一个用于处理每个资产并将其添加到资产张量字典的加载程序类的综合示例,但这为我提供了文件路径和名称,而不是数据。
for asset_any_proto in assets_any_proto:
asset_proto = meta_graph_pb2.AssetFileDef()
asset_any_proto.Unpack(asset_proto)
tensor_name = asset_proto.tensor_info.name
if import_scope:
tensor_name = "%s/%s" % (import_scope, tensor_name)
asset_tensor_dict[tensor_name] = os.path.join(
compat.as_bytes(assets_directory),
compat.as_bytes(asset_proto.filename))
我如何实现以下目标:
vocab_processor = learn.preprocessing.VocabularyProcessor.restore(RESTORED_ASSET))
Tensorflow有可能吗?