- 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)
推薦閱讀
- Maven Build Customization
- AWS Serverless架構(gòu):使用AWS從傳統(tǒng)部署方式向Serverless架構(gòu)遷移
- Vue.js快速入門與深入實戰(zhàn)
- Learning Linux Binary Analysis
- C語言從入門到精通(第4版)
- 從Excel到Python:用Python輕松處理Excel數(shù)據(jù)(第2版)
- Learning R for Geospatial Analysis
- C語言程序設(shè)計
- C#程序設(shè)計教程(第3版)
- Java零基礎(chǔ)實戰(zhàn)
- Three.js權(quán)威指南:在網(wǎng)頁上創(chuàng)建3D圖形和動畫的方法與實踐(原書第4版)
- Roslyn Cookbook
- 少年小魚的魔法之旅:神奇的Python
- JavaScript Security
- OpenCV輕松入門:面向Python