官术网_书友最值得收藏!

How to do it...

  1. 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)
  1. 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"
  1. 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
  1. 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)
  1. 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)
主站蜘蛛池模板: 桂东县| 永德县| 永川市| 韶关市| 夏河县| 鄄城县| 赫章县| 留坝县| 满城县| 永年县| 微博| 淮安市| 新密市| 恭城| 新绛县| 林西县| 乌海市| 湟源县| 东平县| 方正县| 海淀区| 蓝山县| 正蓝旗| 辛集市| 比如县| 监利县| 宁河县| 大洼县| 陈巴尔虎旗| 海宁市| 宜兰县| 连平县| 若羌县| 光山县| 肥乡县| 古交市| 淳化县| 朝阳市| 辉县市| 东兴市| 固安县|