- R Deep Learning Cookbook
- Dr. PKS Prakash Achyutuni Sri Krishna Rao
- 276字
- 2021-07-02 20:49:16
How to do it...
- Load the occupancy train and test datasets in R:
# Load the occupancy data
occupancy_train <-read.csv("C:/occupation_detection/datatraining.txt",stringsAsFactors = T)
occupancy_test <- read.csv("C:/occupation_detection/datatest.txt",stringsAsFactors = T)
- The following independent (x) and dependent (y) variables will be used to model GLM:
# Define input (x) and output (y) variables
x = c("Temperature", "Humidity", "Light", "CO2", "HumidityRatio")
y = "Occupancy"
- Based on the requirement by MXNet, convert the train and test datasets to a matrix and ensure that the class of the outcome variable is numeric (instead of factor as in the case of H2O):
# convert the train data into matrix
occupancy_train.x <- data.matrix(occupancy_train[,x])
occupancy_train.y <- occupancy_train$Occupancy
# convert the test data into matrix
occupancy_test.x <- data.matrix(occupancy_test[,x])
occupancy_test.y <- occupancy_test$Occupancy
- Now, let's configure a neural network manually. First, configure a symbolic variable with a specific name. Then configure a symbolic fully connected network with five neurons in a single hidden layer followed with the softmax activation function with logit loss (or cross entropy loss). One can also create additional (fully connected) hidden layers with different activation functions.
# Configure Neural Network structure
smb.data <- mx.symbol.Variable("data")
smb.fc <- mx.symbol.FullyConnected(smb.data, num_hidden=5)
smb.soft <- mx.symbol.SoftmaxOutput(smb.fc)
- Once the neural network is configured, let's create (or train) the (Feedforward) neural network model using the mx.model.FeedForward.create function. The model is fine-tuned for parameters such as the number of iterations or epochs (100), the metric for evaluation (classification accuracy), the size of each iteration or epoch (100 observations), and the learning rate (0.01):
# Train the network
model.nn <- mx.model.FeedForward.create(symbol = smb.soft,
X = occupancy_train.x,
y = occupancy_train.y,
ctx = mx.cpu(),
num.round = 100,
eval.metric = mx.metric.accuracy,
array.batch.size = 100,
learning.rate = 0.01)
推薦閱讀
- 玩轉(zhuǎn)Scratch少兒趣味編程
- 自己動(dòng)手寫搜索引擎
- 數(shù)據(jù)結(jié)構(gòu)(Python語言描述)(第2版)
- Learning Linux Binary Analysis
- 深入理解Java7:核心技術(shù)與最佳實(shí)踐
- Spring實(shí)戰(zhàn)(第5版)
- 網(wǎng)店設(shè)計(jì)看這本就夠了
- RISC-V體系結(jié)構(gòu)編程與實(shí)踐(第2版)
- 青少年信息學(xué)競賽
- Mastering Unity 2D Game Development(Second Edition)
- Mobile Device Exploitation Cookbook
- PHP+Ajax+jQuery網(wǎng)站開發(fā)項(xiàng)目式教程
- Internet of Things with ESP8266
- Qlik Sense? Cookbook
- Python機(jī)器學(xué)習(xí)開發(fā)實(shí)戰(zhàn)