cao
.cao.control(Rank = 1, all.knots = FALSE, criterion = "deviance", Cinit = NULL, Crow1positive = TRUE, epsilon = 1.0e-05, Etamat.colmax = 10, GradientFunction = FALSE, iKvector = 0.1, iShape = 0.1, noRRR = ~ 1, Norrr = NA, SmallNo = 5.0e-13, Use.Init.Poisson.QO = TRUE, Bestof = if (length(Cinit)) 1 else 10, maxitl = 10, imethod = 1, bf.epsilon = 1.0e-7, bf.maxit = 10, Maxit.optim = 250, optim.maxit = 20, sd.sitescores = 1.0, sd.Cinit = 0.02, suppress.warnings = TRUE, trace = TRUE, df1.nl = 2.5, df2.nl = 2.5, spar1 = 0, spar2 = 0, ...)
Rank = 1
is implemented.
FALSE
means fewer knots are chosen when the number
of distinct points is large, meaning less computational
expense. See vgam.control
for details.
Rank
(recycled if
necessary): are the elements of the first row of C
positive? For example, if Rank
is 4, then specifying
Crow1positive = c(FALSE, TRUE)
will force C[1,1]
and C[1,3] to be negative, and C[1,2] and
C[1,4] to be positive.
Rank
. Controls the
amount of memory used by .Init.Poisson.QO()
. It is the
maximum number of columns allowed for the pseudo-response and
its weights. In general, the larger the value, the better the
initial value. Used only if Use.Init.Poisson.QO = TRUE
.
optim
's argument gr
is used or not, i.e., to compute gradient values. Used only if
FastAlgorithm
is TRUE
. Currently, this argument
must be set to FALSE
.qrrvglm.control
.noRRR = ~ 1
is implemented.
noRRR
.
Use of Norrr
will become an error soon.
.Machine$double.eps
and
0.0001
. Used to avoid under- or over-flow in the
IRLS algorithm.
TRUE
then the function
.Init.Poisson.QO
is used to obtain initial values
for the canonical coefficients C. If FALSE
then random numbers are used instead.
Bestof
models fitted is returned. This
argument helps guard against local solutions by (hopefully) finding
the global solution from many fits. The argument works only when
the function generates its own initial value for C, i.e.,
when C are not passed in as initial values.
The default is only a convenient minimal number and users are urged
to increase this value.
qrrvglm.control
.
optim
at each of the optim.maxit
iterations.
optim
is invoked.
Use.Init.Poisson.QO
is FALSE
.
Use.Init.Poisson.QO = FALSE
.
TRUE
is a good idea for large
data sets.
df1.nl
is
ignored if spar1
is assigned a positive value or values. Ditto
for df2.nl
.
df1.nl
and df2.nl
. A value
0 (the default) for spar1
means that df1.nl
is used.
Ditto for spar2
.
The values are on a scaled version of the latent variables.
See Green and Silverman (1994) for more information.
qrrvglm.control
.
Here, $R$ is the Rank
, $M$ is the number
of additive predictors, and $S$ is the number of responses
(species).
Thus $M=S$ for binomial and Poisson responses, and
$M=2S$ for the negative binomial and 2-parameter gamma distributions.
Allowing the smooths too much flexibility means the CAO optimization
problem becomes more difficult to solve. This is because the number
of local solutions increases as the nonlinearity of the smooths
increases. In situations of high nonlinearity, many initial values
should be used, so that Bestof
should be assigned a larger
value. In general, there should be a reasonable value of df1.nl
somewhere between 0 and about 3 for most data sets.
Yee, T. W. (2006) Constrained additive ordination. Ecology, 87, 203--213.
Green, P. J. and Silverman, B. W. (1994) Nonparametric Regression and Generalized Linear Models: A Roughness Penalty Approach, London: Chapman & Hall.
cao
.