% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/skcla_mlp.R
\name{skcla_mlp}
\alias{skcla_mlp}
\title{Multi-layer Perceptron Classifier}
\usage{
skcla_mlp(
  attribute,
  slevels,
  hidden_layer_sizes = c(100),
  activation = c("relu", "identity", "logistic", "tanh"),
  solver = c("adam", "lbfgs", "sgd"),
  alpha = 1e-04,
  batch_size = "auto",
  learning_rate_init = 0.001,
  max_iter = 200,
  early_stopping = FALSE
)
}
\arguments{
\item{attribute}{Target attribute name for model building.}

\item{slevels}{List of possible values for classification target.}

\item{hidden_layer_sizes}{Number of neurons in each hidden layer.}

\item{activation}{Activation function for hidden layers. One of
\code{"relu"}, \code{"identity"}, \code{"logistic"}, or \code{"tanh"}.}

\item{solver}{Optimizer used for training. One of \code{"adam"}, \code{"lbfgs"}, or \code{"sgd"}.}

\item{alpha}{L2 penalty (regularization term).}

\item{batch_size}{Size of minibatches for stochastic optimizers. Use \code{"auto"} or an integer.}

\item{learning_rate_init}{Initial learning rate used by stochastic solvers.}

\item{max_iter}{Maximum number of iterations.}

\item{early_stopping}{Whether to use early stopping.}
}
\value{
A \code{skcla_mlp} classifier object.
}
\description{
Implements classification using a multi-layer perceptron (MLP).
Wraps scikit-learn's \code{MLPClassifier} through \code{reticulate}.
}
\details{
Neural Network Classifier
}
\examples{
\dontrun{
data(iris)
clf <- skcla_mlp(
  attribute = "Species",
  slevels = levels(iris$Species),
  hidden_layer_sizes = c(32, 16),
  activation = "relu"
)
clf <- daltoolbox::fit(clf, iris)
pred <- predict(clf, iris)
table(pred, iris$Species)
}
}
\references{
Bishop, C. M. (1995). Neural Networks for Pattern Recognition.
}
