首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Tensorflow / Keras LSTM错误"Function call stack: distributed_function“

Tensorflow / Keras LSTM错误"Function call stack: distributed_function“
EN

Stack Overflow用户
提问于 2020-08-03 17:37:56
回答 1查看 532关注 0票数 1

我使用堆叠的LSTM进行多类分类,其中我有5个“字符串”标签。以下是代码的一小段:

代码语言:javascript
复制
# define parameters
#epochs, batch_size = 20, 46

epochs, batch_size = 5, 40
# define model
model = Sequential()
model.add(LSTM(128,input_shape=(X_train.shape[1],X_train.shape[2]),return_sequences=True))
model.add(LSTM(100, activation='relu',return_sequences=True))
model.add(LSTM(64, activation='relu'))
model.add(Dense(5, activation='softmax'))
model.compile(loss='sparse_categorical_crossentropy',
              optimizer='adam',
              metrics=['accuracy'])
#-------------------------------------------------------------------
history = model.fit(X_train, Y_train, 
                    epochs=epochs, 
                    batch_size=batch_size, 
                    verbose=1)

我得到了这个错误:

代码语言:javascript
复制
UnimplementedError:  Cast string to float is not supported
     [[node metrics/accuracy/Cast (defined at C:\Users\"emitted"LSTM.py:152) ]] [Op:__inference_distributed_function_4954348]

Function call stack:
distributed_function

我不知道如何解决这个错误!有没有人知道原因是什么?如何调试这个错误?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-03 17:48:39

您似乎正在尝试将字符串数据直接输入到网络中。因此出现了错误Cast string to float is not supported。如果您正在处理分类数据,则应首先将其转换为数值数据。根据您使用的分类数据的类型,应该应用不同的技术。对于文本,可以考虑阅读官方Tensorflow guide on embedding。或者,如果您的数据由单个令牌组成,如ToyotaBMWFord,请查看category_encoders

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

https://stackoverflow.com/questions/63227027

复制
相关文章

相似问题

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