提问人:Hack-R 提问时间:6/18/2017 更新时间:5/8/2022 访问量:32344
R keras 包错误:找不到 Python 模块 tensorflow.contrib.keras.python.keras
R keras package Error: Python module tensorflow.contrib.keras.python.keras was not found
问:
我已经在 R 中使用了 GitHub,并在 Python 中安装了 TensorFlow。keras
devtools
但是,当我运行示例Keras命令时,例如:
model <- keras_model_sequential()
我得到以下内容:
错误:Python 模块 tensorflow.contrib.keras.python.keras 不是 发现。
Detected Python configuration: python: C:\Python35\python.exe libpython: C:/Python35/python35.dll pythonhome: C:\Python35 version: 3.5.0 (v3.5.0:374f501f4567, Sep 13 2015, 02:27:37) [MSC v.1900 64 bit (AMD64)] Architecture: 64bit numpy: C:\Python35\lib\site-packages\numpy numpy_version: 1.13.0 tensorflow: C:\Python35\lib\site-packages\tensorflow python versions found: C:\Python35\python.exe C:\Python27\\python.exe C:\Python35\\python.exe C:\Python36\\python.exe
答:
我遇到了类似的问题。 通过将 tensorflow 模块从 1.0.1 更新到 1.2.1 解决了该问题
评论
我也有类似的问题。重新启动 rstudio,加载 keras 和 tensorflow 库,然后键入 .这为我解决了它。use_condaenv("r-tensorflow")
评论
install_keras()
首先,您可以从此处安装 R tensorflow 包。
然后,您可以使用install_tensorflow函数安装最新的 tensorflow 版本,如本答案所示。
之后,只需安装并更新 R-keras 库。它现在应该使用最新版本的 TensorFlow,这可能会解决您的问题。此外,请确保安装与您的 Python 版本匹配的 tensorflow 版本。
我在 Mac 上安装 conda 时遇到了类似的问题(因此使用 ,它创建了一个名为 下的虚拟环境。然后,当我尝试像您一样实例化模型时,我收到错误“错误:找不到 Python 模块 tensorflow.python.keras”。install_keras(method = 'conda', conda = '/opt/anaconda3/bin/conda')
r-reticulate
~/.conda/envs
对我来说,加载执行后解决的问题是什么,然后一切正常。library(keras)
use_condaenv("r-reticulate", required = TRUE)
在 Windows 中,我尝试了上述所有给定的解决方案,但没有奏效。 当我在 spyder 和 R 中使用 env 创建环境时,它对我有用
conda create -n keras-tf tensorflow keras
在 Windows 中
library(keras)
library(tensorflow)
use_condaenv("keras-tf", required = T)
在 Python 中
import tensorflow as tf
我遇到了类似的问题,以下步骤有助于克服这个问题。
- 从 rstudio github 安装 TensorFlow 和 Keras。
devtools::install_github("rstudio/tensorflow")
devtools::install_github("rstudio/keras")
- 执行以下命令
tensorflow::install_tensorflow()
tensorflow::tf_config()
评论
library("keras")
有时你的环境和系统没有任何问题,只是你配置 Tensorflow 和 Keras 的方式导致了这些错误。
以下是我修复我的方法:
{install.packages("tensorflow")
install.packages("keras")
tensorflow::tf_config()
mytf <- tf$compat$v1}
配置结果显示以下输出:
2021-12-09 11:43:39.007746: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found
2021-12-09 11:43:39.007931: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.
TensorFlow v2.6.2 ()
Python v3.7 (C:/Users/myName/AppData/Local/r-miniconda/envs/r-reticulate/python.exe)
然后输入:
install_keras()
之后,您可以测试:
mnist <- keras::dataset_mnist() ; mnist
这将为您提供如下输出:
$train
$train$x
, , 1
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15] [,16]
[1,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[2,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[3,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[4,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[5,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[6,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[7,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[8,] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
....
$train$y
[1] 5 0 4 1 9 2 1 3 1 4 3 5 3 6 1 7 2 8 6 9 4 0 9 1 1 2 4 3 2 7 3 8 6 9 0 5 6 0 7 6 1 8 7 9 3
[46] 9 8 5 9 3 3 0 7 4 9 8 0 9 4 1 4 4 6 0 4 5 6 1 0 0 1 7 1 6 3 0 2 1 1 7 9 0 2 6 7 8 3 9 0 4
[91] 6 7 4 6 8 0 7 8 3 1 5 7 1 7 1 1 6 3 0 2 9 3 1 1 0 4 9 2 0 0 2 0 2 7 1 8 6 4 1 6 3 4 5 9 1
[136] 3 3 8 5 4 7 7 4 2 8 5 8 6 7 3 4 6 1 9 9 6 0 3 7 2 8 2 9 4 4 6 4 9 7 0 9 2 9 5 1 5 9 1 2 3
[181] 2 3 5 9 1 7 6 2 8 2 2 5 0 7 4 9 7 8 3 2 1 1 8 3 6 1 0 3 1 0 0 1 7 2 7 3 0 4 6 5 2 6 4 7 1
[226] 8 9 9 3 0 7 1 0 2 0 3 5 4 6 5 8 6 3 7 5 8 0 9 1 0 3 1 2 2 3 3 6 4 7 5 0 6 2 7 9 8 5 9 2 1
[271] 1 4 4 5 6 4 1 2 5 3 9 3 9 0 5 9 6 5 7 4 1 3 4 0 4 8 0 4 3 6 8 7 6 0 9 7 5 7 2 1 1 6 8 9 4
[316] 1 5 2 2 9 0 3 9 6 7 2 0 3 5 4 3 6 5 8 9 5 4 7 4 2 7 3 4 8 9 1 9 2 8 7 9 1 8 7 4 1 3 1 1 0
[361] 2 3 9 4 9 2 1 6 8 4 7 7 4 4 9 2 5 7 2 4 4 2 1 9 7 2 8 7 6 9 2 2 3 8 1 6 5 1 1 0 2 6 4 5 8
[406] 3 1 5 1 9 2 7 4 4 4 8 1 5 8 9 5 6 7 9 9 3 7 0 9 0 6 6 2 3 9 0 7 5 4 8 0 9 4 1 2 8 7 1 2 6
[451] 1 0 3 0 1 1 8 2 0 3 9 4 0 5 0 6 1 7 7 8 1 9 2 0 5 1 2 2 7 3 5 4 9 7 1 8 3 9 6 0 3 1 1 2 6
[496] 3 5 7 6 8 3 9 5 8 5 7 6 1 1 3 1 7 5 5 5 2 5 8 7 0 9 7 7 5 0 9 0 0 8 9 2 4 8 1 6 1 6 5 1 8
[541] 3 4 0 5 5 8 3 6 2 3 9 2 1 1 5 2 1 3 2 8 7 3 7 2 4 6 9 7 2 4 2 8 1 1 3 8 4 0 6 5 9 3 0 9 2
[586] 4 7 1 2 9 4 2 6 1 8 9 0 6 6 7 9 9 8 0 1 4 4 6 7 1 5 7 0 3 5 8 4 7 1 2 5 9 5 6 7 5 9 8 8 3
[631] 6 9 7 0 7 5 7 1 1 0 7 9 2 3 7 3 2 4 1 6 2 7 5 5 7 4 0 2 6 3 6 4 0 4 2 6 0 0 0 0 3 1 6 2 2
[676] 3 1 4 1 5 4 6 4 7 2 8 7 9 2 0 5 1 4 2 8 3 2 4 1 5 4 6 0 7 9 8 4 9 8 0 1 1 0 2 2 3 2 4 4 5
[721] 8 6 5 7 7 8 8 9 7 4 7 3 2 0 8 6 8 6 1 6 8 9 4 0 9 0 4 1 5 4 7 5 3 7 4 9 8 5 8 6 3 8 6 9 9
....
[ reached getOption("max.print") -- omitted 9000 entries ]
上一个:为什么模板只能在头文件中实现?
评论