ml_grid.model_classes.NeuralNetworkKerasClassifier
Keras Neural Network Classifier Wrapper.
This module provides a scikit-learn compatible wrapper for a Keras Sequential neural network for binary classification.
Classes
Initializes the NeuralNetworkClassifier. |
Module Contents
- class ml_grid.model_classes.NeuralNetworkKerasClassifier.NeuralNetworkClassifier(hidden_layer_sizes: tuple[int, Ellipsis] = (64, 64), dropout_rate: float = 0.3, learning_rate: float = 0.001, activation_func: str = 'relu', epochs: int = 10, batch_size: int = 32, early_stopping_patience: int = 3, random_state: int | None = None)[source]
Bases:
sklearn.base.BaseEstimator,sklearn.base.ClassifierMixinInitializes the NeuralNetworkClassifier.
- Parameters:
hidden_layer_sizes (tuple[int, ...]) – The number of units per hidden layer.
dropout_rate (float) – Dropout rate for the dropout layers.
learning_rate (float) – Learning rate for the Adam optimizer.
activation_func (str) – Activation function for the hidden layers.
epochs (int) – Number of epochs to train the model.
batch_size (int) – Number of samples per gradient update.
early_stopping_patience (int) – Number of epochs with no improvement on validation loss after which training will be stopped.
random_state (Optional[int]) – Seed for reproducibility. Defaults to None.
- classes_: numpy.ndarray | None = None[source]
- build_model(input_dim: int) tensorflow.keras.models.Sequential[source]
Builds and compiles the Keras Sequential model.
- Parameters:
input_dim (int) – The number of input features.
- Returns:
The compiled Keras model.
- Return type:
Sequential
- fit(X: numpy.ndarray, y: numpy.ndarray, **kwargs) NeuralNetworkClassifier[source]
Fits the neural network model to the training data.
- Parameters:
X (np.ndarray) – The training input samples.
y (np.ndarray) – The target values.
- Returns:
The fitted estimator.
- Return type:
- predict(X: numpy.ndarray) numpy.ndarray[source]
Predicts class labels for samples in X.
- Parameters:
X (np.ndarray) – The input samples to predict.
- Returns:
The predicted class labels (0 or 1).
- Return type:
np.ndarray
- predict_proba(X: numpy.ndarray) numpy.ndarray[source]
Predicts class probabilities for samples in X.
- Parameters:
X (np.ndarray) – The input samples.
- Returns:
The class probabilities of the input samples.
- Return type:
np.ndarray
- score(X: numpy.ndarray, y: numpy.ndarray) float[source]
Returns the mean accuracy on the given test data and labels.
- Parameters:
X (np.ndarray) – Test samples.
y (np.ndarray) – True labels for X.
- Returns:
Mean accuracy of self.predict(X) wrt. y.
- Return type: