在 R 中为 keras 调用 fit() 时出现奇怪的错误
Posted
技术标签:
【中文标题】在 R 中为 keras 调用 fit() 时出现奇怪的错误【英文标题】:Strange error when calling fit() in R for keras 【发布时间】:2021-10-23 16:39:21 【问题描述】:我正在尝试使用 Keras 在 R 中实现 Bi LSTM。问题在于检测不同推文严重性的文本分类。我正在使用我在网上找到的一些代码,这是我的模型:
model <- keras_model_sequential() %>%
layer_embedding(input_dim = max_features, output_dim = 32, input_length = max.length) %>%
layer_lstm(units = 32, return_sequences = TRUE) %>%
layer_lstm(units = 32, return_sequences = TRUE) %>%
bidirectional(layer_lstm(units = 32)) %>%
layer_dense(units = 1, activation = 'softmax')
summary(model)
然后我尝试训练模型:
model %>%
compile(loss = 'categorical_crossentropy',
optimizer = 'adam',
metrics = c('accuracy'))
history2 <- model %>%
fit(x.train,
train.Labels,
epochs = 20,
batch_size = 32,
validation_split = 0.2,
verbose = 2,
class_weight = list("0" = 1, "1" = 22.9, "2" = 38.4, "3" = 33.4, "4" = 83.3, "5" = 382.2, "6" = 4280.4))
plot(history)
每次我尝试运行 fit() 时,都会遇到这个错误:
py_call_impl(callable, dots$args, dots$keywords) 中的错误:ValueError:在用户代码中:C:\Users\farah\AppData\Local\R-MINI~1\envs\R-RETI~1\lib \site-packages\keras\engine\training.py:853 train_function * return step_function(self, iterator) C:\Users\farah\AppData\Local\R-MINI~1\envs\R-RETI~1\lib\站点包\keras\engine\training.py:842 step_function ** 输出 = model.distribute_strategy.run(run_step, args=(data,)) C:\Users\farah\AppData\Local\R-MINI~1\ envs\R-RETI~1\lib\site-packages\tensorflow\python\distribute\distribute_lib.py:1286 运行返回 self._extended.call_for_each_replica(fn, args=args, kwargs=kwargs) C:\Users\farah\ AppData\Local\R-MINI~1\envs\R-RETI~1\lib\site-packages\tensorflow\python\distribute\distribute_lib.py:2849 call_for_each_replica return self._call_for_each_replica(fn, args, kwargs) C:\ Users\farah\AppData\Local\R-MINI~1\envs\R-RETI~1\lib\site-packages\tensorflow\python\distribute\distribute_lib.py:3632 _call_for_each_replica 返回 fn(*args, **kwargs)
我不完全确定这意味着什么,如果有任何帮助,我将不胜感激!
如果您确实需要任何其他信息,请告诉我!
【问题讨论】:
【参考方案1】:错误消息指示“ValueError”异常,但不清楚值错误是什么,因为仅显示堆栈跟踪。 有时运行它会提供额外的信息:
for(x in reticulate::py_last_error()) cat(x, "\n")
【讨论】:
以上是关于在 R 中为 keras 调用 fit() 时出现奇怪的错误的主要内容,如果未能解决你的问题,请参考以下文章
使用 Keras fit_generator 和 datagen.flow 时出现内存错误
ARM Cortex-M7 长分支在编译时出现错误“relocation truncated to fit: R_ARM_PREL31”
用于多输入模型的 R Keras predict_prob 不起作用。我可以成功地训练模型,但是在评分时出现错误
尝试使用 Spark IDF.fit() 时出现 NULL 指针异常
在键盘事件中使用 CancellationToken 调用 Task.Delay 时出现 TaskCanceledException