Как установить тензор потока-вероятности в ядре kaggle для языка R - PullRequest
1 голос
/ 09 апреля 2019

Мне нужно установить tensorflow-probability в ядре kaggle для языка R.

Я попытался использовать следующий код,

library(tensorflow)
install_tensorflow(extra_packages = "tensorflow-probability")

, который, кажется, устанавливает только тензор потока, как при попыткечтобы загрузить пакет greta, который зависит от тензорного вероятности, я получаю следующую ошибку:

Error: 

greta requires TensorFlow (>=1.10.0) and Tensorflow Probability (>=0.5.0), but TensorFlow Probability isn't installed. Use:

install_tensorflow(extra_packages = "tensorflow-probability") 
to install the latest version.

Также попытался установить его с помощью опции пользовательских пакетов, которая показывает, что она установлена, но Грета упоминает, что онане установлен.

1 Ответ

1 голос
/ 16 апреля 2019

Основная проблема заключается в том, что предустановленная виртуальная среда r-tensorflow не находится в расположении по умолчанию, что не позволяет методу install_tensorflow() ее редактировать. Чтобы решить эту проблему, сначала нужно установить переменную среды WORKON_HOME, которую Reticulate использует для определения корня сред virtualenv. Я смог получить правильную установку по следующим направлениям:

# set virtualenv root to where 'r-tensorflow' env is located
Sys.setenv(WORKON_HOME="/root/.virtualenvs")

# install greta
install.packages("greta")

# install tfp
tensorflow::install_tensorflow(envname="r-tensorflow", extra_packages=c("tensorflow-probability==0.3.0"))

# check that TFP is installed in the env
dir("/root/.virtualenvs/r-tensorflow/lib/python2.7/site-packages")
## ...
## [56] "tensorflow"                            
## [57] "tensorflow_probability"                
## [58] "tensorflow_probability-0.3.0.dist-info"
## [59] "tensorflow-1.10.0.dist-info"
## ...

В соответствии с этим, я сделал общедоступным ядром Kaggle , которое запускает стандартный пример Греты.

Приведенный выше код приводит к установке Greta v0.3.0, TF 1.10.0 и TFP 0.3.0, что является правильным соответствием версии. Я также смог установить последние версии, используя

# set virtualenv root to where 'r-tensorflow' env is located
Sys.setenv(WORKON_HOME="/root/.virtualenvs")

# install latest greta
devtools::install_github("greta-dev/greta")

# install tfp
tensorflow::install_tensorflow(envname="r-tensorflow", version="1.13.1", extra_packages=c("tensorflow-probability==0.6.0"))

, который также получает library(greta) для запуска без жалоб. Однако во время выборки произошел сбой с жалобой на повреждение пакета assertthat. Обратите внимание, что assertthat обновляется как часть установки Greta с GitHub, поэтому я в конечном итоге использовал версию CRAN.

Надеюсь, что в будущем Kaggle просто включит TFP, и вам не придется иметь дело с этим беспорядком.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...