rm(list=ls())
x_files <- list.files(path="C:/Users/gerhard/Documents/msc-thesis-data/", pattern="x*.rdata", full.names=T, recursive=F)
y_files <- list.files(path="C:/Users/gerhard/Documents/msc-thesis-data/", pattern="y*.rdata", full.names=T, recursive=F)
for(i in x_files){
load(i)
}
for(i in y_files){
load(i)
}
require(abind)
x <- abind(x_265309,x_265332,x_265334,x_265335,x_265336,x_265338,x_265339,x_265342,x_265343,x_265344,x_265377,x_265378,x_265381,x_265383,x_265385,x_265388,x_265419,x_265420,x_265425,x_265426,x_265499,along=1)
rm(x_265309,x_265332,x_265334,x_265335,x_265336,x_265338,x_265339,x_265342,x_265343,x_265344,x_265377,x_265378,x_265381,x_265383,x_265385,x_265388,x_265419,x_265420,x_265425,x_265426,x_265499)
y <- c(y_265309,y_265332,y_265334,y_265335,y_265336,y_265338,y_265339,y_265342,y_265343,y_265344,y_265377,y_265378,y_265381,y_265383,y_265385,y_265388,y_265419,y_265420,y_265425,y_265426,y_265499)
rm(y_265309,y_265332,y_265334,y_265335,y_265336,y_265338,y_265339,y_265342,y_265343,y_265344,y_265377,y_265378,y_265381,y_265383,y_265385,y_265388,y_265419,y_265420,y_265425,y_265426,y_265499)
rm(x_files,y_files,i)
dim(x) <- c(dim(x)[1],dim(x)[3],dim(x)[2])
dim(x)
## [1] 1207180 24 17
require(keras)
y <- to_categorical(y)
train_ind <- sample(1:nrow(y),size = round(nrow(y)*.75))
test_ind <- 1:nrow(y)
test_ind <- test_ind[-train_ind]
x_train <- x[train_ind,,]
x_test <- x[test_ind,,]
y_train <- y[train_ind,]
y_test <- y[test_ind,]
rm(x,y,train_ind,test_ind)
dim(x_train) <- c(dim(x_train),1)
dim(x_test) <- c(dim(x_test),1)
rm(model1)
model1 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(4,4),input_shape = c(17,24,1),
activation = "relu",data_format = "channels_last") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3)) %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model1 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9,nesterov = T,decay = 1e-6),
metrics="acc"
)
history <- model1 %>%
fit(x_train,
y_train,
batch_size=1,
verbose=2,
epochs=10,
validation_split=0.2)

rm( model2)
model2 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "relu",data_format = "channels_last") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="relu") %>%
# layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="relu") %>%
layer_conv_2d(filters=128,kernel_size = c(2,2),activation="relu") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(512,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model2 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(),
metrics="acc"
)
history <- model2 %>%
fit(x_train,
y_train,
batch_size=10000,
verbose=2,
epochs=10,
validation_split=0.2)

rm( model3)
model3 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "relu",data_format = "channels_last",padding = "same") #%>%
summary(model3)
model3 <- model3 %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="relu",padding="same") %>%
layer_max_pooling_2d(c(2,2)) #
summary(model3)
model3 <- model3 %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="relu",padding="same") %>%
layer_max_pooling_2d(c(2,2)) #%>%
summary(model3)
model3 <- model3 %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="relu",padding = "same") %>%
layer_max_pooling_2d(c(2,2))
summary(model3)
model3 <- model3 %>%
layer_flatten() %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model3 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(),
metrics="acc"
)
history <- model3 %>%
fit(x_train,
y_train,
batch_size=100000,
verbose=2,
epochs=10,
validation_split=0.2)

rm( model3)
model4 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="tanh",padding = "same") %>%
layer_max_pooling_2d(c(2,2))%>%
layer_flatten() %>%
layer_dense(512,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model4 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.95),
metrics="acc"
)
history <- model4 %>%
fit(x_train,
y_train,
batch_size=1000,
verbose=2,
epochs=20,
validation_split=0.2)

rm( model5)
model5 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="tanh",padding = "same") %>%
layer_max_pooling_2d(c(2,2))%>%
layer_flatten() %>%
layer_dense(512,activation = "tanh") %>%
layer_dense(512,activation = "tanh") %>%
layer_dense(512,activation = "tanh") %>%
layer_dense(512,activation = "tanh") %>%
layer_dense(512,activation = "tanh") %>%
layer_dense(512,activation = "tanh") %>%
layer_dense(512,activation = "tanh") %>%
layer_dense(512,activation = "hard_sigmoid") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model5 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.95),
metrics="acc"
)
history <- model5 %>%
fit(x_train,
y_train,
batch_size=500,
verbose=2,
epochs=50,
validation_split=0.2)

rm( model5)
model6 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="tanh",padding = "same") %>%
layer_max_pooling_2d(c(2,2))%>%
layer_flatten() %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model6 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.95,lr=0.009),
metrics="acc"
)
history <- model6 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=20,
validation_split=0.2)

rm( model6)
model7 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=128,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=256,kernel_size = c(3,3),activation="tanh",padding = "same") %>%
layer_max_pooling_2d(c(2,2))%>%
layer_flatten() %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model7 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.99),
metrics="acc"
)
history <- model7 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=20,
validation_split=0.2)

model8 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(256,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model8 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model8 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=20,
validation_split=0.2)

model9 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(256,activation = "tanh") %>%
layer_dense(128,activation = "elu") %>%
layer_dense(128,activation = "elu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model9 %>%
compile(
loss="categorical_crossentropy",
optimizer_adadelta(),
#optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model9 %>%
fit(x_train,
y_train,
batch_size=16,
verbose=2,
epochs=100,
validation_split=0.2)

model10 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(256,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model10 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model10 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=100,
validation_split=0.2)

model11 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(512,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(2,activation = "softmax")
model11 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model11 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=50,
validation_split=0.2)

model12 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(512,activation = "relu",regularizer_l2()) %>%
layer_dense(512,activation = "relu",regularizer_l2()) %>%
layer_dense(512,activation = "relu",regularizer_l2()) %>%
layer_dense(512,activation = "relu",regularizer_l2()) %>%
layer_dense(512,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(2,activation = "softmax")
model12 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.99,lr=0.001,nesterov = T),
metrics="acc"
)
history <- model12 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=20,
validation_split=0.2)

model13 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(512,activation = "tanh",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(256,activation = "relu",regularizer_l2()) %>%
layer_dense(2,activation = "softmax")
model13 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model13 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=20,
validation_split=0.2)

model14 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(1024,activation = "relu") %>%
layer_dense(512,activation = "relu") %>%
layer_dense(256,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model14 %>%
compile(
loss="categorical_crossentropy",
optimizer_nadam(),
metrics="acc"
)
history <- model14 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=50,
validation_split=0.2)

model15 <- keras_model_sequential() %>%
layer_conv_2d(filters = 32,kernel_size = c(3,3),input_shape = c(17,24,1),
activation = "tanh",data_format = "channels_last",padding = "same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_conv_2d(filters=64,kernel_size = c(3,3),activation="tanh",padding="same") %>%
layer_max_pooling_2d(c(2,2)) %>%
layer_flatten() %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(64,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model15 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model15 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=50,
validation_split=0.2)

dim(x_train) <- dim(x_train)[1:3]
dim(x_test) <- dim(x_test)[1:3]
model16 <- keras_model_sequential() %>%
layer_lstm(units = 128,return_sequences = T,go_backwards = F,input_shape = c(24,17))
summary(model16)
model16 <- model16 %>%
layer_lstm(units = 128,return_sequences = F,go_backwards = T)
summary(model16)
model16 <- model16 %>%
layer_dense(256,activation = "relu") %>%
layer_dense(128,activation = "relu") %>%
layer_dense(2,activation = "softmax")
model16 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.99),
metrics="acc"
)
history <- model16 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=50,
validation_split=0.2)

dim(x_train) <- dim(x_train)[1:3]
dim(x_test) <- dim(x_test)[1:3]
model17 <- keras_model_sequential() %>%
layer_lstm(units = 128,return_sequences = F,go_backwards = F,input_shape = c(24,17)) %>%
# layer_conv_2d(filters = 32,kernel_size = c(3,3)) %>%
# layer_max_pooling_2d(c(2,2)) %>%
# layer_flatten()
layer_dense(128,activation = "tanh") %>%
layer_dense(128,activation = "tanh") %>%
layer_dense(2,activation = "softmax")
model17 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model17 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=50,
validation_split=0.2)

dim(x_train) <- dim(x_train)[1:3]
dim(x_test) <- dim(x_test)[1:3]
model18 <- keras_model_sequential() %>%
layer_lstm(units = 128,return_sequences = T,go_backwards = F,input_shape = c(24,17)) %>%
layer_lstm(units = 128, return_sequences = F,go_backwards = T) %>%
# layer_conv_2d(filters = 32,kernel_size = c(3,3)) %>%
# layer_max_pooling_2d(c(2,2)) %>%
# layer_flatten()
layer_dense(128,activation = "tanh") %>%
layer_dense(128,activation = "tanh") %>%
layer_dense(2,activation = "softmax")
model18 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model18 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=50,
validation_split=0.2)

dim(x_train) <- dim(x_train)[1:3]
dim(x_test) <- dim(x_test)[1:3]
model19 <- keras_model_sequential() %>%
layer_lstm(units = 256,return_sequences = T,go_backwards = F,input_shape = c(24,17)) %>%
layer_lstm(units = 256, return_sequences = T,go_backwards = T) %>%
layer_lstm(units = 128,return_sequences = T,go_backwards = F) %>%
layer_lstm(units = 128, return_sequences = F,go_backwards = T) %>%
# layer_conv_2d(filters = 32,kernel_size = c(3,3)) %>%
# layer_max_pooling_2d(c(2,2)) %>%
# layer_flatten()
layer_dense(200,activation = "tanh") %>%
layer_dense(200,activation = "tanh") %>%
layer_dense(2,activation = "softmax")
model19 %>%
compile(
loss="categorical_crossentropy",
optimizer_sgd(momentum = 0.9),
metrics="acc"
)
history <- model19 %>%
fit(x_train,
y_train,
batch_size=32,
verbose=2,
epochs=50,
validation_split=0.2)