The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
neuralnetwork fits multilayer perceptrons for tabular
data in R. It accepts formulas, data frames, matrices, and vectors;
handles regression and classification; and includes tuning,
cross-validation, metrics, feature importance, and model save/load
helpers. It is meant for users who need more than nnet’s
single-hidden-layer interface or neuralnet’s manual
training style, but do not want to bring in a full deep-learning
stack.
install.packages("neuralnetwork")To install the local source tarball:
install.packages("neuralnetwork_0.1.1.tar.gz", repos = NULL, type = "source")library(neuralnetwork)
fit <- nn_fit(
Species ~ .,
data = iris,
hidden = "auto",
optimizer = "auto",
epochs = 20,
validation_split = 0.2,
seed = 1,
verbose = FALSE
)
fit
predict(fit, iris[1:5, ], type = "class")
round(predict(fit, iris[1:5, ], type = "prob"), 3)
ev <- nn_evaluate(fit, iris)
evThe printed model reports the architecture, optimizer, loss, backend,
training length, final training score, and validation score when
available. nn_evaluate() returns the metrics as a named
vector and prints a compact confusion matrix for classification.
For regression, put a numeric response on the left side of the formula. Training can scale the target internally; predictions are returned on the original response scale.
fit_reg <- nn_fit(
mpg ~ wt + hp + disp,
data = mtcars,
hidden = c(8, 4),
optimizer = "adam",
epochs = 40,
batch_size = 8,
learning_rate = 0.01,
validation_split = 0.2,
seed = 2,
verbose = FALSE
)
predict(fit_reg, mtcars[1:5, ])
nn_evaluate(fit_reg, mtcars)For regression problems with outliers, use Huber loss:
fit_huber <- nn_fit(
mpg ~ wt + hp + disp,
data = mtcars,
hidden = c(8, 4),
optimizer = "adam",
loss = "huber",
huber_delta = 1,
epochs = 40,
batch_size = 8,
learning_rate = 0.01,
seed = 3,
verbose = FALSE
)Reasonable first choices:
hidden = "auto" for a small architecture chosen from
the task and input width.optimizer = "auto" for L-BFGS on small deterministic
problems and Adam when using stochastic features such as dropout or
callbacks.epochs is the optimizer iteration
limit and printed training length is reported as function
evaluations.validation_split = 0.2 for validation loss, early
stopping, or validation-based tuning.metric = "balanced_accuracy" for imbalanced
classification, metric = "f1" when the positive class is
the focus, and metric = "mae" or
metric = "rmse" for regression.loss = "huber" for regression data where outliers may
dominate squared error.tuned <- nn_tune(
Species ~ .,
data = iris,
grid = list(
hidden = list(4, c(6, 3)),
learning_rate = c(0.01, 0.003)
),
metric = "balanced_accuracy",
epochs = 8,
validation_split = 0.2,
seed = 4,
verbose = FALSE
)
tuned
tuned$best_modelFor exploratory grids, error_action = "continue" keeps
candidate failures in the results table while ranking the usable
fits.
cv <- nn_cv(
Species ~ .,
data = iris,
k = 3,
metric = "f1",
hidden = 4,
epochs = 5,
seed = 5,
verbose = FALSE
)
cvimp <- nn_permutation_importance(
fit_reg,
mtcars,
metric = "mae",
n_repeats = 3,
seed = 6
)
imp| Need | Use |
|---|---|
| Fit a model | nn_fit() |
| Predict classes, probabilities, or numeric responses | predict() |
| Evaluate metrics | nn_evaluate() |
| Tune a grid | nn_tune() |
| Cross-validate | nn_cv() |
| Estimate feature importance | nn_permutation_importance() |
| Save and load | nn_save(), nn_load() |
Use nnet / neuralnet style helpers |
nn_multinom(), nn_compute(),
nn_generalized_weights() |
hidden = 0 for no
hidden layer.predict(), print(),
plot(), summary(), and
coef().stats::optim().nnet and
neuralnet tasks: nn_multinom(),
nn_class_ind(), nn_which_is_max(),
nn_compute(), nn_generalized_weights(),
nn_gwplot(), nn_hessian(), and
nn_confint().Run vignette("neuralnetwork") for the longer worked
example.
Reference help inside R: ?neuralnetwork,
?neuralnetwork-metrics,
?neuralnetwork-callbacks, and
?neuralnetwork-objects.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.