Metadata-Version: 2.4
Name: neonet
Version: 0.1.1
Summary: Neonet is a deep learning tool for building simple to medium sized neural networks, it supports multiple configurations and arguments for training
Author: Olewuenyi Emmanuel
License-Expression: MIT
Project-URL: Homepage, https://github.com/ocedev112
Project-URL: Repository, https://github.com/ocedev112/Neural_Network_from_scratch_numpy
Keywords: neural network,deep learning,numpy,machine learning
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=2.4.6
Requires-Dist: pydantic>=2.13.4
Requires-Dist: joblib>=1.5.3
Requires-Dist: typing_extensions>=4.15.0
Provides-Extra: dev
Requires-Dist: pytest>=7.4; extra == "dev"
Requires-Dist: pytest-cov>=4.1; extra == "dev"
Requires-Dist: ruff>=0.4; extra == "dev"
Requires-Dist: mypy>=1.8; extra == "dev"
Requires-Dist: scikit-learn>=1.9.0; extra == "dev"
Requires-Dist: scipy>=1.17.1; extra == "dev"
Requires-Dist: narwhals>=2.22.1; extra == "dev"
Dynamic: license-file

# Neonet
Neonet is a lightweight deep learning library for building 
small to medium scale neural networks, with small to medium sized datasets
.it supports multiple training configurations, mutiple optimization methods, regularization techniques,
and different acttivation functions

## Installation
```python
pip install neonet
```

## Getting started
```python
from neonet.nn import NeuralNetwork, TrainArg
```

## Creating a neural network

```python
nn = NeuralNetwork(4, [(16, "LeakyReLU"), (8, "LeakyReLU"), (3, "Softmax")])
```

## Training arguments
- batch_size
- learning_rate
- optimizer
- regularizer
- alpha
- lasso
- b1 coefficient
- b2 coefficient
- epochs
- use_decay


```python
training_args = TrainArg( 
batch_size=16, 
learning_rate=0.001, 
optimizer="adams_loss", 
loss="MSE", epochs=500, 
logging_steps=100, 
use_decay=True )
```

to train:
```python
nn.train(X_train, y_train, training_args=training_args, eval_dataset=[X_test, y_test], check_loss=True)
```
## Features
	-	Dense neural network architecture
	-	Multiple activation functions
	-	Mini-batch training
	-	Learning rate decay
	-	Model evaluation during training
	-	Configurable optimizers and regularizers

