首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >它为什么这么说:"TypeError:__call__()缺少一个必需的位置参数:‘输入’“

问它为什么这么说:"TypeError:__call__()缺少一个必需的位置参数:‘输入’“
EN

Stack Overflow用户
提问于 2020-02-25 12:30:23
回答 1查看 1.7K关注 0票数 0

我正在尝试做一个自定义的vgg样的模型,具有辍学和swish激活功能。我完全不明白这里有什么问题。我是初学者,所以我可能完全错了。不过,我不这么认为,因为我是以教程和指南为例。

在这里,代码:

代码语言:javascript
复制
from keras.models import Sequential
from keras.layers import Dense, Conv2D, MaxPooling2D, Dropout
from keras.layers import Flatten, Activation
from keras.applications.vgg16 import VGG16
from keras.models import Model
from keras import backend as K

def swish(x):
    return K.sigmoid(x) * x

custom_vgg = Sequential()
img_width = 224
img_height = 224
vgg_model = VGG16(include_top=False, weights='imagenet',input_shape=(img_width, img_height, 3))
print(vgg_model.get_config())
#vgg_model.save_weights('models/vgg_weights.h5')
for layer in vgg_model.layers:
    if layer.__class__.__name__=='MaxPooling2D':
        layer.trainable = False
        custom_vgg.add(layer(activation = swish))
        custom_vgg.add(Dropout(0.4))
    else :
        custom_vgg.add(layer)
custom_vgg.add(Flatten())
custom_vgg.add(Dense(1024,activation=swish))
custom_vgg.add(Dense(1024,activation=swish))
custom_vgg.add(Dense(128, activation = "softmax"))

custom_vgg.compile(optimizer = "adam", loss = "categorical_crossentropy", metrics = ["accuracy"])

custom_vgg.summary() 

控制台这样说:

代码语言:javascript
复制
Traceback (most recent call last):
  File "/Users/shavkatsultanov/Documents/SCHUETZ/tensor_flow/vgg_swish.py", line 20, in <module>
    custom_vgg.add(layer(activation = swish))
TypeError: __call__() missing 1 required positional argument: 'inputs'

我想知道,因为我尝试了类似的东西,对层进行迭代并添加到另一个模型中,它已经成功了。同样,当它在第20行时,它不应该期望任何‘输入’或其他什么?

如果有人能帮忙的话,那就太好了,谢谢!

编辑:我想知道if语句的内容,询问关于class_name的事情,如果这可能是错误的吗?真希望有人能解决这个问题

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-25 12:53:48

custom_vgg.add(层(激活= swish))

您正在调用一个layer对象(这不是创建层,而是调用从现有模型获得的层)。显然keras层是可调用的,layer(...)是一组内部逻辑的包装器(这是.我认为不是一个很好的API )。

不管怎样只要..。不要打电话给图层。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60394722

复制
相关文章

相似问题

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