我收到ValueError:“ lstm__input”没有提供数据。在执行lime :: explain
时需要输入['lstm__input']中每个键的数据我有最新的石灰版本,并查看了与我的问题有关的所有主题。我有LSTM回归网络,在训练它和预测值方面没有任何问题。 同样,使用石灰预测值也没有任何问题:
class(model)
%keras.engine.sequential.Sequential
model_type.keras.engine.sequential.Sequential <- function(x, ...) {
"regression"}
predict_model.keras.engine.sequential.Sequential <- function (x, newdata, type, ...) {
pred <- predict(object = x, x = newdata)
data.frame (pred) }
predict_model(x = model, newdata = (testX_Matrix), type = 'raw')
explainer <- lime::lime (
x = trainX,
model = model,
bin_continuous = FALSE)
到目前为止,一切正常。当我尝试运行下一行时:
explanation <- lime::explain (
testX,
explainer = explainer,
n_features = 4)
我收到一个错误:
Error in py_call_impl(callable, dots$args, dots$keywords) :
ValueError: No data provided for "lstm_8_input". Need data for each key in: ['lstm_8_input']
Detailed traceback:
File "C:\Soft\anaconda\envs\R-TENS~1\lib\site-packages\keras\engine\training.py", line 1147, in predict
x, _, _ = self._standardize_user_data(x)
File "C:\Soft\anaconda\envs\R-TENS~1\lib\site-packages\keras\engine\training.py", line 749, in _standardize_user_data
exception_prefix='input')
File "C:\Soft\anaconda\envs\R-TENS~1\lib\site-packages\keras\engine\training_utils.py", line 77, in standardize_input_data
'for each key in: ' + str(names))
我猜主要问题是由于我的NN只需要3-dim矩阵(与我在predict_model
中使用的矩阵相同),但是石灰不适用于对象'array','double','numeric'类的,所以我不能使用它。
有没有人遇到过这样的问题?我该如何解决?