nnet
位于 nnet
包(package)。 说明
拟合single-hidden-layer神经网络,可能具有skip-layer连接。
用法
nnet(x, ...)
## S3 method for class 'formula'
nnet(formula, data, weights, ...,
subset, na.action, contrasts = NULL)
## Default S3 method:
nnet(x, y, weights, size, Wts, mask,
linout = FALSE, entropy = FALSE, softmax = FALSE,
censored = FALSE, skip = FALSE, rang = 0.7, decay = 0,
maxit = 100, Hess = FALSE, trace = TRUE, MaxNWts = 1000,
abstol = 1.0e-4, reltol = 1.0e-8, ...)
参数
formula |
|
x |
例如, |
y |
例如,目标值的矩阵或 DataFrame 。 |
weights |
每个示例的(案例)权重 - 如果缺失,则默认为 1。 |
size |
隐藏层中的单元数。如果有 skip-layer 单位,则可以为零。 |
data |
优先采用 |
subset |
指定训练样本中使用的案例的索引向量。 (注意:如果给出,则必须命名该参数。) |
na.action |
指定在找到 |
contrasts |
用于模型公式中作为变量出现的部分或全部因子的对比列表。 |
Wts |
初始参数向量。如果缺少随机选择。 |
mask |
指示应优化哪些参数的逻辑向量(默认全部)。 |
linout |
线性输出单元的开关。默认物流输出单位。 |
entropy |
熵(=最大条件似然)拟合的开关。默认采用最小二乘法。 |
softmax |
用于 softmax(对数线性模型)和最大条件似然拟合的开关。 |
censored |
|
skip |
切换以添加从输入到输出的 skip-layer 连接。 |
rang |
[- |
decay |
权重衰减参数。默认 0。 |
maxit |
最大迭代次数。默认 100。 |
Hess |
如果为 true,则找到的最佳权重集的拟合度量的 Hessian 矩阵将作为组件 |
trace |
用于跟踪优化的开关。默认 |
MaxNWts |
最大允许重量数。代码中没有内在限制,但增加 |
abstol |
如果拟合标准低于 |
reltol |
如果优化器无法将拟合标准降低至少 |
... |
传递给其他方法或从其他方法传递的参数。 |
细节
如果formula
中的响应是一个因子,则构建适当的分类网络;如果级别数为 2,则该模型具有一个输出和熵拟合,并且输出数等于类数,并且对于更多级别,具有 Softmax 输出级。如果响应不是一个因子,则将其原封不动地传递给 nnet.default
。
优化是通过 optim
的 BFGS 方法完成的。
值
类 "nnet"
或 "nnet.formula"
的对象。主要是内部结构,但有组件
wts |
找到的最佳权重集 |
value |
拟合标准的值加上权重衰减项。 |
fitted.values |
训练数据的拟合值。 |
residuals |
训练数据的残差。 |
convergence |
如果达到最大迭代次数,则 |
例子
# use half the iris data
ir <- rbind(iris3[,,1],iris3[,,2],iris3[,,3])
targets <- class.ind( c(rep("s", 50), rep("c", 50), rep("v", 50)) )
samp <- c(sample(1:50,25), sample(51:100,25), sample(101:150,25))
ir1 <- nnet(ir[samp,], targets[samp,], size = 2, rang = 0.1,
decay = 5e-4, maxit = 200)
test.cl <- function(true, pred) {
true <- max.col(true)
cres <- max.col(pred)
table(true, cres)
}
test.cl(targets[-samp,], predict(ir1, ir[-samp,]))
# or
ird <- data.frame(rbind(iris3[,,1], iris3[,,2], iris3[,,3]),
species = factor(c(rep("s",50), rep("c", 50), rep("v", 50))))
ir.nn2 <- nnet(species ~ ., data = ird, subset = samp, size = 2, rang = 0.1,
decay = 5e-4, maxit = 200)
table(ird$species[-samp], predict(ir.nn2, ird[-samp,], type = "class"))
参考
Ripley, B. D. (1996) Pattern Recognition and Neural Networks. Cambridge.
Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth edition. Springer.
也可以看看
相关用法
- R nnetHess 评估神经网络的 Hessian 矩阵
- R which.is.max 求向量中的最大位置
- R predict.nnet 通过训练有素的神经网络预测新示例
- R class.ind 从因子生成类别指标矩阵
- R multinom 拟合多项对数线性模型
- R Pixel X 射线像素强度随时间的变化
- R corARMA ARMA(p,q) 相关结构
- R getGroupsFormula 提取分组公式
- R corRatio 有理二次相关结构
- R logLik.glsStruct glsStruct 对象的对数似然
- R intervals.lmList lmList 系数的置信区间
- R corLin 线性相关结构
- R plot.augPred 绘制 augPred 对象
- R print.varFunc 打印 varFunc 对象
- R recalc 重新计算压缩线性模型对象
- R Variogram.corSpher 计算 corSpher 对象的半变异函数
- R getGroups.lme 提取 lme 对象组
- R nlmeStruct 非线性混合效应结构
- R predict.nlme 来自 nlme 对象的预测
- R corSymm 一般相关结构
- R qqnorm.gls gls 对象残差的正态图
- R pdCompSymm 具有复合对称结构的正定矩阵
- R [.pdMat 下标 pdMat 对象
- R pdConstruct.pdBlocked 构造 pdBlocked 对象
- R gapply 按组应用函数
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Fit Neural Networks。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。