python - 尝试使用训练数据时出现奇怪的错误
问题描述
尝试运行以下代码时(我已将数据替换为 1,2,3... 数字以使问题可重现)
x_train = np.array([[1,2,3,4,5,6,7,8,9,10]]*1000).astype("float32")
y_train = np.asarray([1.0]*1000).astype("float32")
model = tf.keras.models.Sequential([
tf.keras.layers.Input(shape=(10,)),
tf.keras.layers.Dense(128,activation='relu'),
tf.keras.layers.Dense(128,activation='relu'),
tf.keras.layers.Dense(1, activation='softmax')
])
model.compile(
loss=tf.keras.losses.MeanSquaredError,
optimizer=tf.keras.optimizers.Adam(0.001),
metrics=['mae'],
)
model.fit(x=x_train,y=y_train,epochs=5)
我TypeError: Expected float32 passed to parameter 'y' of op 'Equal', got 'auto' of type 'str' instead. Error: Expected float32, got 'auto' of type 'str' instead.
从最后一行被抛出。
错误消息有点毫无意义,因为没有字符串,所以我的问题是:
- 这是怎么回事?
- 如何克服这个和 fit
x_train
,y_train
在模型的代码中指定?
解决方案
不要忘记实例化您的损失:)
tf.keras.losses.MeanSquaredError() # put parentheses
推荐阅读
- python - Pandas 数据框 - 在组内排序和移位
- docker - 重新加载 Docker 容器运行进程时,Supervisor 失败
- c++ - 将枚举类重新定义为 Main 中的枚举是否存在问题?
- javascript - 遍历嵌套对象并将子键作为单独的数组返回
- apache-spark - Pyspark 中的案例陈述问题
- python - 为不包括 0 的对生成生成器
- javascript - 无法在 javascript 中强制刷新画布
- function - 使用“request.security”函数绘制的 MultiTimeFrame 问题
- api - Rapid Api- Skyscanner Flight Search 出现 403(禁止)错误
- python - Python Websocket 模块继续启动不会被杀死导致内存问题的进程