python - 无法将 1.0 转换为 dtype int32 的 EagerTensor
问题描述
我正在尝试使用keras制作cnn并在cnn的密集层之后使用SVM作为分类器。所以我试图在密集层之后获得输出。
model = Sequential()
model.add(Conv1D(filters=64, kernel_size=(5), input_shape=(12,800), strides=2, padding='valid', activation='relu'))
model.add(AveragePooling1D(pool_size=2,strides=2,padding='same'))
model.add(Flatten())
model.add(Dense(7 ,activation='softmax'))
model.compile(optimizer='adam',loss='mean_squared_error',metrics=['accuracy'])
model.summary()
我在密集层之后获取输出的代码
inp = model.input # input placeholder
outputs = [layer.output for layer in model.layers] # all layer outputs
functor = k.function([inp, k.learning_phase()], outputs ) # evaluation function
# Testing
test = np.random.random(input_shape)[np.newaxis,...]
layer_outs = functor([test, 1.])
但我收到此错误 TypeError: Cannot convert 1.0 to EagerTensor of dtype int32
解决方案
推荐阅读
- azure - 请验证 QnAMaker 服务中的 Azure 搜索资源是否已启动并正在运行
- c# - 具有类型约束的 C# 重载解决方案没有选择我期望的方法
- javascript - 子函数递归调用方法
- java - 有没有办法将关键侦听器添加到 Jtable 中的特定列?
- reactjs - 如何将 GridList 子组件添加为组件
- bash - 将 exec /bin/bash 添加到脚本以使其行为与 /bin/bash 完全一样?
- r - R函数来确定另一个应用程序是否正在运行
- python - 当我尝试在 pyqt5 中运行语音识别时,程序崩溃了
- javascript - 如何从输入值中查询包含文本字符串的所有文档?
- android - 删除字符时过滤器不更新列表