首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模型可视化错误:未定义'file‘

模型可视化错误:未定义'file‘
EN

Stack Overflow用户
提问于 2016-09-19 16:42:16
回答 1查看 5.9K关注 0票数 2

我正在尝试使用Keras visualization module

代码语言:javascript
复制
# Begin a model
model = Sequential()  
model.add(Convolution2D(4,1,5,input_shape=(1,1,49),init='uniform',weights=None,border_mode='valid') )   
model.add(Activation('tanh')) 
model.add(MaxPooling2D(pool_size=(1, 2)))
model.add(Flatten())  
model.add(Dense(600,init='normal'))
model.add(Activation('tanh'))   
model.add(Dense(2, init='normal'))  
model.add(Activation('softmax'))  
model.summary()
sgd = SGD(lr=list_lr[i], decay=0.0, momentum=0.1, nesterov=False)
model.compile(loss='categorical_crossentropy', metrics=['accuracy'],optimizer=sgd)

# using visualization
from keras.utils.visualize_util import plot
plot(model, to_file='/home/wj/DL/model.png')

model.fit(X_train,train_label, batch_size=list_batch[j], nb_epoch=list_epoch[k],shuffle=False,verbose=2,validation_split=0.2)

我得到以下错误:

代码语言:javascript
复制
Traceback (most recent call last):
File "6.2.4.cnn.py", line 85, in  <module>
    plot(model, to_file='/home/wj/DL/model.png')
File "/usr/local/lib/python3.4/dist-packages/keras/utils/visualize_util.py", line 67, in plot    dot.write_png(to_file)
File "/usr/local/lib/python3.4/dist-packages/pydot.py", line 1809, in    <lambda>
    lambda path, f=frmt, prog=self.prog : self.write(path, format=f, prog=prog))
File "/usr/local/lib/python3.4/dist-packages/pydot.py",    line 1895, in write    dot_fd = file(path, "w+b")
    NameError: name 'file' is not defined

我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2017-01-26 16:41:37

以你的模型为例。

导入并定义您的模型。

代码语言:javascript
复制
from keras.models import Sequential
from keras.layers import Dense, Activation, Convolution2D, MaxPooling2D,Flatten

model = Sequential()  
model.add(Convolution2D(4,1,5,input_shape=(1,1,49),init='uniform',weights=None,border_mode='valid') )   
model.add(Activation('tanh')) 
model.add(MaxPooling2D(pool_size=(1, 2)))
model.add(Flatten())  
model.add(Dense(600,init='normal'))
model.add(Activation('tanh'))   
model.add(Dense(2, init='normal'))  
model.add(Activation('softmax'))  

在绘制模型之前,请确保已经安装库: install pydot,

代码语言:javascript
复制
pip install git+https://github.com/nlhepler/pydot.git

以及graphviz,

代码语言:javascript
复制
sudo apt-get install graphviz

然后,导入所需的库并调用lib。打印你的模型。

代码语言:javascript
复制
from IPython.display import Image, display, SVG
from keras.utils.visualize_util import model_to_dot

# Show the model in ipython notebook
figure = SVG(model_to_dot(model, show_shapes=True).create(prog='dot', format='svg'))
display(figure)

# Save the model as png file
from keras.utils.visualize_util import plot
plot(model, to_file='model.png', show_shapes=True)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39568834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档