Степанов Аполлон Владимирович : другие произведения.

Установка Rapache

Самиздат: [Регистрация] [Найти] [Рейтинги] [Обсуждения] [Новинки] [Обзоры] [Помощь|Техвопросы]
Ссылки:


 Ваша оценка:

  Для реального использования R как части REST API, когда можно получить данные в режиме реального времени, я использовал RApache.
  
  Толком никто не объясняет нормально установку, поэтому я решил написать инструкцию. Возможно я что-то забыл упомянуть, а может и нет)
  
  http://rapache.net/ - сайт Rapache
  
  http://rapache.net/manual.html#Installation - ссылка на инструкцию по установке
  
  Я устанавливал на ubuntu
  
  Сначала мы ставим R:
  $ sudo apt update
  $ sudo apt -y install r-base
  
  Затем мы ставим apache. Инструкций в принципе в интернете на эту тему море, останавливаться не буду.
  
  Дальше ставим rapache.
  sudo add-apt-repository ppa:opencpu/rapache
  sudo apt-get update
  sudo apt-get install libapache2-mod-r-base
  
  Дальше ставим apxs модуль для апача:
  sudo apt-get install apache2-dev
  
  Затем идем в репозиторий rapache, выкачиваем и распаковываем исходники:
  https://github.com/jeffreyhorner/rapache
  
  Заходим в rapache-master\libapreq2, устанавливаем библиотеку:
  ./configure
  make
  make install
  
  Возвращаемся в rapache-master, устанавливаем его:
  ./configure \
   --with-R=/usr/bin/R \
   --with-apache2-apxs=/usr/bin/apxs2 \
  
  Я вроде бы уставливал вот так, копировать это всё в одну строку.
  
  Дальше:
  make
  make install
  
  Затем подключаем настраиваем apache:
  Идем в /etc/apache2/conf-enabled
  Создаем файл R.conf
  
  В него записываем:
  LoadModule R_module /usr/lib/apache2/modules/mod_R.so
  
  
   SetHandler r-script
   RHandler brew::brew
  
  
  
  SetHandler r-info
  
  
  
  ROutputErrors
  SetHandler r-script
  RHandler sys.source
  
  
  REvalOnStartup "library(brew)"
  
  Перезапускаем apache:
  sudo service apache2 reload
  
  Статус apache проверить:
  sudo service apache2 status
  
  У меня в процессе настройки апача были проблемы, я поднимал сервис на VPS, который приобрел у поставщика услуг.
  В файле apache2.conf добавил: ServerName ip адрес сервера
  И обновил iptables с помощью:
  sudo iptables -F
  sudo iptables -X
  
  Дальше:
  Все библиотеки, которые используются R должны быть установлены.
  
  Для этого выполняем:
  sudo -i R
  
  Когда у вас откроется консоль R выполняем:
  install.packages('brew')
  
  Вы у себя устанавливаете этой командой все библиотеки, которые вы используете в ваших скриптах.
  
  Теперь по поводу файлов, которые вы запускаете.
  
  По умолчанию каталог сайта: /var/www/html
  В R.conf для скриптов указан каталог: /var/www/html/brew/
  Вы при необходимости укажите свой.
  
  В это каталог вы кладёте НЕ ФАЙЛЫ .R, а указываете тип .html!!!!
  
  Здесь я привожу пример своего файла predict6.html:
  
  
  
  <%
  
  library("neuralnet")
  library(rjson)
  
  # 1. creating the initial data, plotting
  data <- data.frame (
   input = c(1, 2, 3, 4, 5, 6, 7, 8, 9),
   output = c(1, 4, 9, 16, 25, 36, 49, 64, 81)
  )
  #plot(data$output ~ data$input, main="Distribution of the pension relative to the salary", xlab="Salary", ylab="Pension")
  
  #Train the neural network
  #Going to have 10 hidden layers
  #Threshold is a numeric value specifying the threshold for the partial
  #derivatives of the error function as stopping criteria.
  net.sqr <- neuralnet(output~input,data, hidden=10, threshold=0.01)
  print(net.sqr)
  
  #Plot the neural network
  #plot(net.sqr)
  
  #Test the neural network on some training data
  testdata <- as.data.frame(3) #Generate some squared numbers
  net.results <- compute(net.sqr, testdata) #Run them through the neural network
  
  #Lets see what properties net.sqr has
  ls(net.results)
  
  #Lets see the results
  print(net.results$net.result)
  
  #Lets display a better version of the results
  cleanoutput <- cbind(testdata,testdata*testdata,
   as.data.frame(net.results$net.result))
  colnames(cleanoutput) <- c("Input","Expected Output","Neural Net Output")
  print(cleanoutput)
  %>
  
  
  <%
  cat(toJSON(net.results$net.result))
  %>
  
  
  
  
  Возможно я делал что-то еще, что помнил, написал.
  
 Ваша оценка:

Связаться с программистом сайта.

Новые книги авторов СИ, вышедшие из печати:
О.Болдырева "Крадуш. Чужие души" М.Николаев "Вторжение на Землю"

Как попасть в этoт список

Кожевенное мастерство | Сайт "Художники" | Доска об'явлений "Книги"