Metadata-Version: 2.4
Name: neuronnet
Version: 0.4
Summary: Библиотека для коллективного обучения нейросетей с использованием оптимизатора Adam, L2-регуляризации и мини-пакетов.
Home-page: https://github.com/yourusername/NeuronNet
Author: Umar
Author-email: umarfrost2011@gmail.com
Description-Content-Type: text/markdown
License-File: LICENCE
Requires-Dist: numpy
Dynamic: author
Dynamic: author-email
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-dist
Dynamic: summary

# NeuronNet

Лёгкая библиотека для коллективного обучения нейросетей

## Описание

NeuronNet — это простая и эффективная библиотека для коллективного обучения нейросетей. Она позволяет моделям обучаться не только независимо, но и обмениваться знаниями, что ускоряет обучение и повышает качество предсказаний. Это идеальный инструмент для тех, кто хочет исследовать и развивать новые методы обучения.

### Возможности

- **Коллективное обучение**: несколько моделей могут обмениваться знаниями, что ускоряет и улучшает процесс обучения.
- **Лёгкость в использовании**: библиотека имеет минимальные зависимости и проста в интеграции.
- **Гибкость**: поддерживает различные типы задач и легко адаптируется под нужды пользователя.
- **Динамическое изменение скорости обучения**: возможность адаптировать скорость обучения в процессе тренировки.
- **Механизм раннего завершения**: автоматическое завершение обучения, если модель перестает улучшаться.
- **Поддержка различных функций активации**: возможность выбора между ReLU, Tanh и Sigmoid.

#### Установка

Для использования библиотеки в своём проекте:

```bash
pip install neuronnet  # Если библиотека будет доступна через PyPI
```

# Или клонируйте репозиторий:

```bash
git clone https://github.com/UmarArab1/NeuronNet  
cd neuronnet
```

#### Пример использования

```python
import numpy as np
from neuronnet import CollectiveLearningModel, collective_training

# Создание случайных данных для обучения
X = np.random.randn(100, 5)  # 100 примеров, 5 признаков
y = np.random.randn(100, 1)  # 100 целевых значений

# Создание моделей для коллективного обучения
models = [CollectiveLearningModel(5, 10, 1) for _ in range(3)]

# Обучение моделей
collective_training(models, X, y, epochs=1000, learning_rate=0.01, early_stopping=True, patience=5)

# Проверка предсказаний
for i, model in enumerate(models):
    predictions, _ = model.forward(X[:10])
    print(f"Model {i+1} predictions:\n", predictions)
```

## Лицензия

Проект распространяется под лицензией MIT с дополнительными ограничениями. Подробности см. в файле LICENSE.

## Автор

Разработчик: Умар  
Контакты: [umarfrost2011@gmail.com]


Обновления:
- Добавлен оптимизатор Adam.
- Включена L2-регуляризация.
- Реализована обработка данных в мини-пакетах.
