在我的rstudio中,我通过install.package()安装keras和tensorflow软件包。然后我尝试
library(keras)
library(tensorflow)
use_condaenv("pythonGPU",required=TRUE)
在pythonGPU软件包中,tensorflow已通过anaconda安装。但是当我尝试model <- keras_model_sequential()
时,出现以下错误:
Error: Python module tensorflow.keras was not found.
Detected Python configuration:
python: /opt/anaconda3/envs/pythonGPU/bin/python
libpython: /opt/anaconda3/envs/pythonGPU/lib/libpython3.6m.dylib
pythonhome: /opt/anaconda3/envs/pythonGPU:/opt/anaconda3/envs/pythonGPU
version: 3.6.10 |Anaconda, Inc.| (default, May 7 2020, 23:06:31) [GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)]
numpy: /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages/numpy
numpy_version: 1.18.1
tensorflow: /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages/tensorflow
NOTE: Python version was forced by use_python function
仅供参考:
然后我尝试库(keras)-> install_keras(method =“ conda”),但是遇到另一个错误:
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... done
# All requested packages already installed.
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Requirement already up-to-date: tensorflow==2.2.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (2.2.0)
Requirement already up-to-date: keras in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (2.3.1)
Requirement already up-to-date: tensorflow-hub in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (0.8.0)
Requirement already up-to-date: h5py in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (2.10.0)
Processing ./Library/Caches/pip/wheels/6a/da/06/8f2e6fc04fd75b22f317b3a64ed57b0e0cb3c655acb7e3d0d6/PyYAML-3.12-cp36-cp36m-macosx_10_9_x86_64.whl
Requirement already up-to-date: requests in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (2.23.0)
Requirement already up-to-date: Pillow in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (7.1.2)
Requirement already up-to-date: scipy in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (1.4.1)
Requirement already satisfied, skipping upgrade: tensorflow-estimator<2.3.0,>=2.2.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (2.2.0)
Requirement already satisfied, skipping upgrade: grpcio>=1.8.6 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (1.16.1)
Requirement already satisfied, skipping upgrade: termcolor>=1.1.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (1.1.0)
Requirement already satisfied, skipping upgrade: protobuf>=3.8.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (3.11.4)
Requirement already satisfied, skipping upgrade: wheel>=0.26; python_version >= "3" in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (0.34.2)
Requirement already satisfied, skipping upgrade: numpy<2.0,>=1.16.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (1.18.1)
Requirement already satisfied, skipping upgrade: tensorboard<2.3.0,>=2.2.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (2.2.2)
Requirement already satisfied, skipping upgrade: six>=1.12.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (1.14.0)
Requirement already satisfied, skipping upgrade: gast==0.3.3 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (0.3.3)
Requirement already satisfied, skipping upgrade: absl-py>=0.7.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (0.9.0)
Requirement already satisfied, skipping upgrade: keras-preprocessing>=1.1.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (1.1.0)
Requirement already satisfied, skipping upgrade: wrapt>=1.11.1 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (1.12.1)
Requirement already satisfied, skipping upgrade: google-pasta>=0.1.8 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (0.2.0)
Requirement already satisfied, skipping upgrade: opt-einsum>=2.3.2 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (3.1.0)
Requirement already satisfied, skipping upgrade: astunparse==1.6.3 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorflow==2.2.0) (1.6.3)
Requirement already satisfied, skipping upgrade: keras-applications>=1.0.6 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from keras) (1.0.8)
Requirement already satisfied, skipping upgrade: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from requests) (1.25.9)
Requirement already satisfied, skipping upgrade: certifi>=2017.4.17 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from requests) (2020.4.5.1)
Requirement already satisfied, skipping upgrade: chardet<4,>=3.0.2 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from requests) (3.0.4)
Requirement already satisfied, skipping upgrade: idna<3,>=2.5 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from requests) (2.9)
Requirement already satisfied, skipping upgrade: setuptools in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from protobuf>=3.8.0->tensorflow==2.2.0) (46.4.0.post20200518)
Requirement already satisfied, skipping upgrade: google-auth-oauthlib<0.5,>=0.4.1 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (0.4.1)
Requirement already satisfied, skipping upgrade: tensorboard-plugin-wit>=1.6.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (1.6.0.post3)
Requirement already satisfied, skipping upgrade: markdown>=2.6.8 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (3.1.1)
Requirement already satisfied, skipping upgrade: werkzeug>=0.11.15 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (1.0.1)
Requirement already satisfied, skipping upgrade: google-auth<2,>=1.6.3 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (1.16.0)
Requirement already satisfied, skipping upgrade: requests-oauthlib>=0.7.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (1.3.0)
Requirement already satisfied, skipping upgrade: cachetools<5.0,>=2.0.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from google-auth<2,>=1.6.3->tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (4.1.0)
Requirement already satisfied, skipping upgrade: rsa<4.1,>=3.1.4 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from google-auth<2,>=1.6.3->tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (4.0)
Requirement already satisfied, skipping upgrade: pyasn1-modules>=0.2.1 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from google-auth<2,>=1.6.3->tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (0.2.8)
Requirement already satisfied, skipping upgrade: oauthlib>=3.0.0 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (3.1.0)
Requirement already satisfied, skipping upgrade: pyasn1>=0.1.3 in /opt/anaconda3/envs/pythonGPU/lib/python3.6/site-packages (from rsa<4.1,>=3.1.4->google-auth<2,>=1.6.3->tensorboard<2.3.0,>=2.2.0->tensorflow==2.2.0) (0.4.8)
Installing collected packages: pyyaml
Attempting uninstall: pyyaml
Found existing installation: PyYAML 5.3.1
ERROR: Cannot uninstall 'PyYAML'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
Error: Error installing package(s): 'tensorflow==2.2.0', 'keras', 'tensorflow-hub', 'h5py', 'pyyaml==3.12', 'requests', 'Pillow', 'scipy'
非常感谢!
答案 0 :(得分:0)
我遇到了完全相同的问题,过去一周我一直在徘徊,我至少重新安装了每件事10次,直到几个小时前才收到此问题。我开始打字寻求帮助
library(tensorflow)
install_tensorflow(envname = "TF2R",version = "2.2.0")
library(keras)
library(reticulate)
conda_python(envname = "TF2R")
install_keras(method = "conda" ,envname = "TF2R") #, tensorflow = "gpu")
## I got the same error
... ... 安装收集的软件包:pyyaml,keras 尝试卸载:pyyaml 找到现有的安装:PyYAML 5.3.1 错误:无法卸载“ PyYAML”。这是一个distutils安装的项目,因此我们
无法准确确定属于哪个文件,这只会导致部分卸载。 错误:安装软件包时出错:“ tensorflow == 2.2.0”,“ keras”,“ tensorflow-hub”,“ h5py”,“ pyyaml == 3.12”,“ requests”,“ Pillow”,“ scipy” >
所以我所做的就是创建了两个单独的环境,一个用于易于安装的python,另一个用于R-studio。
r_version = R.Version(); print(paste0(r_version$major, '.', r_version$minor))
#"4.0.1"
至少安装此软件包(网状,tensorflow,keras)
library(reticulate)
conda_version()
conda_list()
conda_python(envname = "TF2R")
conda_install(envname = "TF2R",packages="r-reticulate")
conda_install(envname = "TF2R",packages="r-tensorflow")
conda_install(envname = "TF2R",packages="r-keras")
library(tensorflow)
library(keras)
library(reticulate)
conda_python(envname = "TF2R\")
install_keras(method = "conda" ,envname = "TF2R", tensorflow = "gpu")
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... done
Package Plan
…
…
Successfully installed Pillow-7.1.2 absl-py-0.9.0 astunparse-1.6.3 cachetools-4.1.0 chardet-3.0.4 gast-0.3.3 google-auth-1.18.0 google-auth-oauthlib-0.4.1 google-pasta-0.2.0 grpcio-1.29.0 h5py-2.10.0 idna-2.9 importlib-metadata-1.6.1 keras-2.4.2 keras-preprocessing-1.1.2 markdown-3.2.2 numpy-1.19.0 oauthlib-3.1.0 opt-einsum-3.2.1 protobuf-3.12.2 pyasn1-0.4.8 pyasn1-modules-0.2.8 pyyaml-3.12 requests-2.24.0 requests-oauthlib-1.3.0 rsa-4.6 scipy-1.4.1 six-1.15.0 tensorboard-2.2.2 tensorboard-plugin-wit-1.6.0.post3 tensorflow-gpu-2.2.0 tensorflow-gpu-estimator-2.2.0 tensorflow-hub-0.8.0 termcolor-1.1.0 urllib3-1.25.9 werkzeug-1.0.1 wrapt-1.12.1 zipp-3.1.0
Installation complete.
Restarting R session...
library(ggplot2)
library(reshape2)
library(tensorflow)
tensorflow::use_condaenv( "TF2R2")
library(reticulate)
conda_python(envname = "TF2R")
library(tfestimators)
library(keras)
k = backend() # this where the software used to break
load(file = "mnist.RData")
mnist <- data
x_train <- mnist$train$x
y_train <- mnist$train$y
x_train <- array_reshape(x_train, c(nrow(x_train), 784))
x_train <- x_train / 255
y_train <- keras::to_categorical(y_train, 10)
model <- keras_model_sequential()
model %>%
layer_dense(units = 256, activation = 'relu', input_shape = c(784)) %>%
layer_dropout(rate = 0.4) %>%
layer_dense(units = 128, activation = 'relu') %>%
layer_dropout(rate = 0.3) %>%
layer_dense(units = 10, activation = 'softmax')
summary(model)
model %>% compile(
loss = 'categorical_crossentropy',
optimizer = "rmsprop", # optimizer_rmsprop(), to solve fit issue
metrics = c('accuracy')
)
history <- fit(model,
x=x_train,y= y_train,
epochs = 10, batch_size = 128,
verbose = 2,
view_metrics = "auto",
validation_split = 0.2
)
model %>% evaluate(x_train, y_train)
#60000/60000 [==============================] - 4s 63us/sample - loss: 0.0344 - accuracy: #0.9928
#$loss
#[1] 0.03444017
#$accuracy
#[1] 0.9928