Dense Layer keras出现问 TypeError: Value passed to parameter 'shape' has DataType float32 not in list o

TypeError: Value passed to parameter ‘shape’ has DataType float32 not in list of allowed values: int32, int64

我解决了
dense keras跑程序错误
源代码

...
interNo = n_x/4
...
...
temp_h_q = Dense(interNo, activation='relu')(input

报错

TypeError: Value passed to parameter 'shape' has DataType float32 not in list of allowed values: int32, int64

解决 输入dense的必须int32 int64

interNo = n_x//4
...
temp_h_q = Dense(interNo, activation='relu')(input)

开心开心 卡了一上午

另附其他解决方法:

data = tf.cast(data, tf.float32)

// 或者
data = tf.cast(data, tf.int32)

// 还有其他的解决是
int(data)

其他的解决可能不适用于tf keras 很显然有的需要tensor

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
这个错误通常是因为你将一个不可调用的对象当作函数来调用。在这种情况下,你可能正在使用KerasRegressor对象而不是其方法。 要解决这个题,你需要确保正确使用KerasRegressor对象的方法。例如,如果你想对KerasRegressor对象进行预测,你应该使用`predict()`方法而不是直接调用对象本身。 下面是一个示例,展示了如何使用KerasRegressor对象进行预测: ```python from sklearn.model_selection import train_test_split from sklearn.datasets import make_regression from sklearn.preprocessing import StandardScaler from sklearn.pipeline import Pipeline from keras.models import Sequential from keras.layers import Dense from keras.wrappers.scikit_learn import KerasRegressor # 创建一个简单的回归模型 def create_model(): model = Sequential() model.add(Dense(10, input_dim=1, activation='relu')) model.add(Dense(1)) model.compile(loss='mean_squared_error', optimizer='adam') return model # 生成一些示例数据 X, y = make_regression(n_samples=100, n_features=1, noise=0.1) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2) # 创建KerasRegressor对象 regressor = KerasRegressor(build_fn=create_model, epochs=10, batch_size=10) # 训练模型 regressor.fit(X_train, y_train) # 使用模型进行预测 predictions = regressor.predict(X_test) print(predictions) ``` 在上述代码中,我们创建了一个简单的回归模型,并使用KerasRegressor将其包装起来。然后,我们使用fit()方法来训练模型,并使用predict()方法进行预测。最后,我们将预测结果打印出来。 请确保你正确调用了KerasRegressor对象的方法,并根据你的实际需求进行相应的调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南方五宿放眼观_犹如潇湘黛未施

有帮到请鼓励,是我坚持的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值