You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在R v4.3.2中运行Keras API时出现无详细信息的Error错误

R v4.3.2中Keras API无详情报错的排查方案

问题描述

在R v4.3.2中使用Keras API时,即使运行官方示例代码,也仅返回无详细信息的Error:提示。最简复现代码如下:

library(keras)
model <- keras_model_sequential()

运行后输出包含TensorFlow的oneDNN提示、废弃警告,随后直接抛出无详情的错误:

I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
WARNING:tensorflow:From C:\Users\...\Anaconda3\envs\...\lib\site-packages\keras\src\losses.py:2976: The name tf.losses.sparse_softmax_cross_entropy is deprecated. Please use tf.compat.v1.losses.sparse_softmax_cross_entropy instead.

Error:

排查与解决步骤

  • 强制显示完整错误栈
    在代码前添加以下配置,触发错误时会打印详细调用栈,定位问题根源:

    options(error = function() { traceback(); quit(save = "no") })
    library(keras)
    model <- keras_model_sequential()
    
  • 检查版本兼容性
    运行以下代码查看Keras和Python环境中TensorFlow的版本,确保二者版本匹配(例如Keras 2.15.x对应TensorFlow 2.15.x,Keras 3.x需搭配TensorFlow 2.16+):

    packageVersion("keras")
    reticulate::py_config()
    
  • 重置Reticulate Python环境
    若使用Anaconda虚拟环境,先确认环境路径正确,再指定加载对应环境后重新运行代码:

    reticulate::use_condaenv("你的虚拟环境名称", required = TRUE)
    library(keras)
    model <- keras_model_sequential()
    
  • 重装匹配版本的Keras与TensorFlow
    先卸载现有版本,再安装稳定兼容的版本组合:

    # 卸载R端Keras和Python端TensorFlow
    remove.packages("keras")
    reticulate::py_install("tensorflow", uninstall = TRUE)
    
    # 安装指定版本(以稳定的2.15版本为例)
    install.packages("keras")
    keras::install_keras(tensorflow = "2.15")
    
  • 禁用oneDNN优化
    在加载Keras前设置环境变量关闭oneDNN,尝试规避数值计算相关的潜在问题:

    Sys.setenv(TF_ENABLE_ONEDNN_OPTS = "0")
    library(keras)
    model <- keras_model_sequential()
    

内容的提问来源于stack exchange,提问作者coolhand

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 07:47:26