我的云主机是阿里云的学生机器 学校有个项目需要演示,我就向把训练好的模型,PB 文件上传到阿里云上 但结果发现每次读 PB 文件的时候报 memory error 后来我又试了试分块读取 报错 不知道大神们有没有什么好的解决方法 除了给阿里云主机升级。。。。。穷学生没钱
graph = tf.Graph() with graph.as_default(): with tf.gfile.FastGFile('face.pb', 'rb') as f: graph_def = tf.GraphDef() graph_def.ParseFromString(f.read())
1
larryli1995 OP 话说 tensorflow 移植到手机上应该也是这种方法把 手机内存不会溢出么
|
2
metorm 2018-04-25 14:48:34 +08:00 via Android
两个地方编译的时候用了不同版本的 proto buff ?
|
3
larryli1995 OP @metorm 这我还真不知道 我都是 PIP 直接装的 这个要怎么看啊?
|
4
metorm 2018-04-25 16:02:17 +08:00 via Android
Python 版本也一样吗?没用过 pb 文件迁移模型。
|
5
larryli1995 OP @metorm 一样的
|
6
poorguy 2018-04-25 17:08:01 +08:00
试试 yield ?大概这样
```python def read_file(fpath): BLOCK_SIZE = 1024 with open(fpath, 'rb') as f: while True: block = f.read(BLOCK_SIZE) if block: yield block else: return ``` |
7
afpro 2018-04-25 17:12:26 +08:00
graph_def.ParseFromString(f.read())
说清楚 是 f.read() 还是 graph_def.ParseFromString()出的问题? |
8
larryli1995 OP @afpro f.read()
|
9
larryli1995 OP @poorguy 我试啦 不行 如果用块读的话 graph_def.ParseFromString ()报错
|
10
poorguy 2018-04-26 11:40:23 +08:00
@larryli1995 那把报错贴出来啊朋友
|
11
afpro 2018-04-26 12:16:54 +08:00
@larryli1995 mmap 试试看?
|
12
larryli1995 OP @poorguy memory error 兄弟你不审题的么
|
13
Arnie97 2018-04-27 02:12:03 +08:00 via Android
swap ?
|