为了账号安全,请及时绑定邮箱和手机立即绑定

AttributeError:“模型”对象没有属性“名称”

AttributeError:“模型”对象没有属性“名称”

慕田峪9158850 2021-04-02 14:43:36
我是新手,当我遇到此错误时Keras,我正尝试使用构建text-classification CNN模型Python 3.6:AttributeError: 'Model' object has no attribute 'name'这是我编写的代码:print("\nCreating Model...")x1 = Input(shape=(seq_len1, 100), name='x1')x2 = Input(shape=(seq_len2, 100), name='x2')x1 = Reshape((seq_len1, embedding_dim, 1))(x1)x2 = Reshape((seq_len2, embedding_dim, 1))(x2)conv_0 = Conv2D(num_filters, kernel_size=(filter_sizes[0], 1), padding='valid', kernel_initializer='normal', activation='relu')conv_1 = Conv2D(num_filters, kernel_size=(filter_sizes[1], 1), padding='valid', kernel_initializer='normal', activation='relu')conv_2 = Conv2D(num_filters, kernel_size=(filter_sizes[2], 1), padding='valid', kernel_initializer='normal', activation='relu')maxpool = MaxPool2D(pool_size=(2, 1), strides=(1,1), padding='valid')output1 = conv_0(x1)output1 = maxpool(output1)output1 = conv_1(output1)output1 = maxpool(output1)output1 = conv_2(output1)output1 = maxpool(output1)..# Same for output2.concatenated_tensor = Concatenate(axis=1)([output1, output2])flatten = Flatten()(concatenated_tensor)#dropout = Dropout(drop)(flatten)output = Dense(units=1024, activation='relu')(flatten)output = Dense(units=1024, activation='relu')(output)output = Dense(units=1, activation='softmax')(output)# this creates a model that includesmodel = Model(inputs=[x1, x2], outputs=[output])在最后一行遇到错误。请帮我解决这个问题编辑 :Traceback (most recent call last):  File "model.py", line 91, in <module>    model = Model(inputs=[x1, x2], outputs=[out])  File "/../../anaconda3/lib/python3.6/site-packages/keras/legacy/interfaces.py", line 91, in wrapper    return func(*args, **kwargs)  File "/../../anaconda3/lib/python3.6/site-packages/keras/engine/network.py", line 91, in __init__    self._init_graph_network(*args, **kwargs)  File "/../../anaconda3/lib/python3.6/site-packages/keras/engine/network.py", line 183, in _init_graph_network    'The tensor that caused the issue was: ' +AttributeError: 'Model' object has no attribute 'name'
查看完整描述

2 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

x1和x2指向输入的“重塑”层,而不是输入层本身。


查看完整回答
反对 回复 2021-04-27
?
aluckdog

TA贡献1847条经验 获得超7个赞

当我使用自定义的“ swish”激活功能时,同样的错误对我弹出。我可以使用此代码解决相同的问题


class Swish(Activation):

    def __init__(self, activation, **kwargs):

        super(Swish, self).__init__(activation, **kwargs)

        self.__name__ = 'swish'

def swish(x,beta=1):

    return (x*sigmoid(x*beta))

get_custom_objects().update({'swish': Swish(swish)})


查看完整回答
反对 回复 2021-04-27
  • 2 回答
  • 0 关注
  • 293 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信