Caret 中用于 mlpML 的激活函数
Activation function used for mlpML in Caret
我正在使用 R 中的 Caret 包,试图实现多层感知器来对卫星图像进行分类。我正在使用 method=mlpML
,我想知道正在使用哪个激活函数。
这是我的代码:
controlparameters<-trainControl(method = "repeatedcv",
number=5,
repeats = 5,
savePredictions=TRUE,
classProbs = TRUE)
mlp_grid<-expand.grid(layer1=13,
layer2=0,
layer3=0)
model< train(as.factor(Species)~.,
data = smotedata,
method='mlpML',
preProc = c('center', 'scale'),
trcontrol=controlparameters,
tuneGrid=mlp_grid,
importance=T)
我使用了单层,因为它比使用多层表现得最好。
正在查看 mlpML
, it turns out that it uses the mlp
function of the RSNNS package 的插入符号源代码。
根据RSNNS mlp
documentation,它的默认参数是:
mlp(x, ...)
## Default S3 method:
mlp(x, y, size = c(5), maxit = 100,
initFunc = "Randomize_Weights", initFuncParams = c(-0.3, 0.3),
learnFunc = "Std_Backpropagation", learnFuncParams = c(0.2, 0),
updateFunc = "Topological_Order", updateFuncParams = c(0),
hiddenActFunc = "Act_Logistic", shufflePatterns = TRUE,
linOut = FALSE, outputActFunc = if (linOut) "Act_Identity" else
"Act_Logistic", inputsTest = NULL, targetsTest = NULL,
pruneFunc = NULL, pruneFuncParams = NULL, ...)
从中可以看出 hiddenActFunc = "Act_Logistic"
,即隐藏层的激活函数,是逻辑函数。
我正在使用 R 中的 Caret 包,试图实现多层感知器来对卫星图像进行分类。我正在使用 method=mlpML
,我想知道正在使用哪个激活函数。
这是我的代码:
controlparameters<-trainControl(method = "repeatedcv",
number=5,
repeats = 5,
savePredictions=TRUE,
classProbs = TRUE)
mlp_grid<-expand.grid(layer1=13,
layer2=0,
layer3=0)
model< train(as.factor(Species)~.,
data = smotedata,
method='mlpML',
preProc = c('center', 'scale'),
trcontrol=controlparameters,
tuneGrid=mlp_grid,
importance=T)
我使用了单层,因为它比使用多层表现得最好。
正在查看 mlpML
, it turns out that it uses the mlp
function of the RSNNS package 的插入符号源代码。
根据RSNNS mlp
documentation,它的默认参数是:
mlp(x, ...)
## Default S3 method:
mlp(x, y, size = c(5), maxit = 100,
initFunc = "Randomize_Weights", initFuncParams = c(-0.3, 0.3),
learnFunc = "Std_Backpropagation", learnFuncParams = c(0.2, 0),
updateFunc = "Topological_Order", updateFuncParams = c(0),
hiddenActFunc = "Act_Logistic", shufflePatterns = TRUE,
linOut = FALSE, outputActFunc = if (linOut) "Act_Identity" else
"Act_Logistic", inputsTest = NULL, targetsTest = NULL,
pruneFunc = NULL, pruneFuncParams = NULL, ...)
从中可以看出 hiddenActFunc = "Act_Logistic"
,即隐藏层的激活函数,是逻辑函数。