Using Keras in R - Masa-Ochi/r-samples GitHub Wiki
Setup
Required libraries
- ggplot2
install.packages('ggplot2')
- tidyr
install.packages('tidyr')
- dplyr
install.packages('dplyr')
- keras
install.packages('keras')
Install keras module
library(keras)
library(reticulate)
library(tensorflow)
install_keras(method = "conda", conda = "auto", tensorflow = "default")
Sample codes
Preparation
# データを読み込んでデーターフレームに入れる。
dataset = dataset_boston_housing()
c(c(x_train, y_train), c(x_test, y_test)) %<-% dataset
# トレーニングデータを正規化する
x_train = scale(x_train, center = TRUE, scale = TRUE)
center_train = attr(x_train, "scaled:center")
scale_train = attr(x_train, "scaled:scale")
x_test = scale(x_test, center = center_train, scale = scale_train)
Build model
# モデルの立ち上げ
model = keras_model_sequential()
# %>% を使ってレイヤーの設定を行う。以下中間層を2つ使った例
base = c(ncol(x_train))
model %>%
layer_dense(units = base, activation = "tanh", input_shape = base, name = "firstLayer") %>%
layer_dense(units = ncol(x_train), activation = "tanh", name = "secondLayer") %>%
layer_dense(units = 1, activation = "linear", name = "predictions")
# Optimizerと損失関数の指定
model %>% compile(optimizer = optimizer_nadam(), loss = 'mse')
# トレーニングの実行
historyTrain = model %>% fit(x_train, y_train, epochs = 250, batch_size = 5, verbose = 0)
# 損失関数のグラフ
plot(historyTrain)
pred = predict(model, x_test)
result_mse = data.frame(correct_value = y_test, MSE = pred)
References