Pen*_*hao 9 python deep-learning keras tensorflow
我正在尝试使用Keras重现实体嵌入模型.这是github链接并使用kaggle分支.有一个python文件,models.py并使用该Merge层.
from keras.layers.core import Dense, Dropout, Activation, Merge, Reshape
......
self.model.add(Merge(models, mode='concat'))
这段代码应该适用于旧版本的Keras,但是使用使用tensorflow 1.0.0作为后端(python 2.7)的Keras 2.0.0,会有错误的信息:
Using TensorFlow backend.
Traceback (most recent call last):
File "/Users/pengjuzhao/Udacity/MLND/entity-embedding-rossmann/test_model.py", line 2, in <module>
from models import NN_with_EntityEmbedding
File "/Users/pengjuzhao/Udacity/MLND/entity-embedding-rossmann/models.py", line 8, in <module>
from keras.layers.core import Dense, Dropout, Activation, Merge, Reshape
ImportError: cannot import name Merge
[Finished in 1.8s with exit code 1]
[shell_cmd: python -u "/Users/pengjuzhao/Udacity/MLND/entity-embedding-rossmann/test_model.py"]
[dir: /Users/pengjuzhao/Udacity/MLND/entity-embedding-rossmann]
[path: /usr/bin:/bin:/usr/sbin:/sbin]
有没有人知道如何self.model.add(Merge(models, mode='concat'))使用Keras 2.0.0 达到相同的目标()或如何使用合并/合并图层?先感谢您.
Par*_*kar 14
我认为你是从错误的位置导入的.你应该做:
from keras.layers import Merge
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息以及如何使用它们,请参阅此Github帖子merge/Merge.
从同一个Github帖子中,下面两段代码是等价的.
Keras 1.2.2代码:
from keras.engine import merge
m = merge([init, x], mode='sum')
Run Code Online (Sandbox Code Playgroud)
等效的Keras 2.0.2代码:
from keras.layers import add
m = add([init, x])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16334 次 |
| 最近记录: |