nnetModel: Combine Model-based Recursive Partitioning with Neural...

Description Usage Arguments Format Details Value References See Also Examples

Description

Combine Model-based Recursive Partitioning with Neural Networks.

Usage

1
2
3
4
5
6
7
8
9
nnetModel

\method{reweight}{nnetModel}(object, weights, ...)

\method{deviance}{nnet}(object, ...)

\method{estfun}{nnet}(x, ...)

predict.nnetModel(object, out = c("class", "posterior"), newdata, ...)

Arguments

object

An object of class "nnetModel" and "nnet", respectively.

weights

A vector of observation weights.

x

An object of class "nnet".

out

Should class labels or posterior probabilities be returned?

newdata

A data.frame of cases to be classified.

...

Further arguments (e.g. to nnet and nnetRep).

Format

An object of class StatModel of length 1.

Details

This page lists all ingredients to combine Neural Networks with Model-Based Recursive Partitioning (mob from package party). See the example for how to do that.

nnetModel is an object of class StatModel-class implemented in package modeltools that provides an infra-structure for an unfitted nnet model.

Moreover, methods for nnet and nnetModel objects for the generic functions reweight, deviance, estfun, and predict are provided.

Value

reweight: The re-weighted fitted "nnetModel" object.
deviance: The value of the objective function extracted from object.
estfun: The empirical estimating (or score) function, i.e. the derivatives of the objective function with respect to the parameters, evaluated at the training data.
predict: Either a vector of predicted class labels or a matrix of class posterior probabilities.

References

Zeileis, A., Hothorn, T. and Kornik, K. (2008), Model-based recursive partitioning. Journal of Computational and Graphical Statistics, 17(2) 492–514.

See Also

reweight, deviance, estfun, predict.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
library(benchData)

data <- vData(500)
x <- seq(0,1,0.05)
grid <- expand.grid(x.1 = x, x.2 = x)

fit <- mob(y ~ x.1 + x.2 | x.1 + x.2, data = data, model = nnetModel, size = 1, trace = FALSE,
control = mob_control(objfun = deviance, minsplit = 200))

## predict posterior probabilities
pred <- predict(fit, newdata = grid, out = "posterior")
post <- do.call("rbind", pred)

image(x, x, matrix(as.numeric(post[,1]), length(x)), xlab = "x.1", ylab = "x.2")
contour(x, x, matrix(as.numeric(post[,1]), length(x)), levels = 0.5, add = TRUE)
points(data$x, pch = as.character(data$y))

## predict node membership
splits <- predict(fit, newdata = grid, type = "node")
contour(x, x, matrix(splits, length(x)), levels = min(splits):max(splits), add = TRUE, lty = 2)

## training error
mean(predict(fit) != data$y)

schiffner/locClass documentation built on May 29, 2019, 3:39 p.m.