2017-06-15 32 views
0

當我運行以下R腳本時,我獲得有關keras模型及其添加圖層的摘要信息,但未確認模型已編譯。如何檢查編譯步驟是否已完成?檢查R包keras是否已編譯模型

library(keras) 

model <- keras_model_sequential() 

model %>% 
    layer_dense(units = 64, activation = 'relu', input_shape = c(20)) %>% 
    layer_dropout(rate = 0.5) %>% 
    layer_dense(units = 64, activation = 'relu') %>% 
    layer_dropout(rate = 0.5) %>% 
    layer_dense(units = 10, activation = 'softmax') %>% 
    compile(
    loss = 'categorical_crossentropy', 
    optimizer = optimizer_sgd(lr = 0.01, decay = 1e-6, 
    momentum = 0.9, nesterov = TRUE), 
    metrics = c('accuracy')  
    ) 

summary(model) 

回答

2

檢查建立的標誌?

library(keras) 
model <- keras_model_sequential() 

model$built # False 

model %>% 
    layer_dense(units = 64, activation = 'relu', input_shape = c(20)) %>% 
    layer_dropout(rate = 0.5) %>% 
    layer_dense(units = 64, activation = 'relu') %>% 
    layer_dropout(rate = 0.5) %>% 
    layer_activation(activation = 'relu') %>% 
    layer_dense(units = 10) %>% 
    layer_activation(activation = 'softmax') 

model$built # False 

model %>% 
    compile(
    loss = 'categorical_crossentropy', 
    optimizer = optimizer_sgd(lr = 0.01, decay = 1e-6, 
          momentum = 0.9, nesterov = TRUE), 
    metrics = c('accuracy')  
) 

model$built # True