{"id":26999831,"url":"https://github.com/n1k1f0rm/ml-predicts","last_synced_at":"2026-04-21T16:41:05.203Z","repository":{"id":284715155,"uuid":"954944836","full_name":"N1k1f0rM/ml-predicts","owner":"N1k1f0rM","description":"Place where you can find in transparent way how ML algos works","archived":false,"fork":false,"pushed_at":"2025-04-03T15:02:56.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-14T09:05:45.194Z","etag":null,"topics":["machine-learning","ml","numpy","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/N1k1f0rM.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-25T21:28:29.000Z","updated_at":"2025-04-03T15:03:00.000Z","dependencies_parsed_at":"2025-06-14T09:05:47.792Z","dependency_job_id":null,"html_url":"https://github.com/N1k1f0rM/ml-predicts","commit_stats":null,"previous_names":["n1k1f0rm/ml-predicts"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/N1k1f0rM/ml-predicts","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N1k1f0rM%2Fml-predicts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N1k1f0rM%2Fml-predicts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N1k1f0rM%2Fml-predicts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N1k1f0rM%2Fml-predicts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/N1k1f0rM","download_url":"https://codeload.github.com/N1k1f0rM/ml-predicts/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/N1k1f0rM%2Fml-predicts/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259790455,"owners_count":22911547,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["machine-learning","ml","numpy","python"],"created_at":"2025-04-04T03:17:57.163Z","updated_at":"2026-04-21T16:41:05.114Z","avatar_url":"https://github.com/N1k1f0rM.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ML-From-Scratch 🧠⚙️\r\n\r\n**Чистый Python фреймворк для машинного обучения**  \r\nПлатформа с модульной архитектурой, реализующая алгоритмы \"с нуля\".  \r\nВдохновлено scikit-learn, но под капотом — только стандартная библиотека Python, Pandas и NumPy.\r\n\r\n![Project Status: Active](https://img.shields.io/badge/status-active-brightgreen.svg)\r\n![Python](https://img.shields.io/badge/python-3.11%2B-blue)\r\n![NumPy](https://img.shields.io/badge/numpy-%23013243.svg?logo=numpy\u0026logoColor=white)\r\n![Pandas](https://img.shields.io/badge/pandas-%23150458.svg?logo=pandas\u0026logoColor=white)\r\n\r\n---\r\n\r\n## 🧻 Что уже реализовано?\r\n\r\n### 🔨 **Ядро системы (core/)**\r\nБазовые абстракции для единого API:\r\n- `BaseClassifier`: Интерфейс для всех классификаторов\r\n- `BaseRegressor`: Шаблон для регрессионных моделей\r\n- `BaseOptimizer`: Контракт методов оптимизации\r\n- `BaseMetric`: Абстракция для метрик качества\r\n- `BaseTransformer`: Каркас для преобразователей данных\r\n\r\nМодели:\r\n- `Linear Regression`\r\n- `Logistic Regression`\r\n\r\n## 🏎️ Что в процессе\r\n\r\n### 📈 **Метрики (metrics/)**\r\n**Классификация:**\r\n- Accuracy (доля верных предсказаний)\r\n- Precision, Recall, F1-Score\r\n- Confusion Matrix (визуализация через ASCII-таблицы)\r\n\r\n**Регрессия:**\r\n- MSE (Mean Squared Error)\r\n- RMSE (Root Mean Squared Error)\r\n- RMSLE (Root Mean Squared Log Error)\r\n- MAE (Mean Absolute Error)\r\n- MAPE (Mean Absolute Percentage Error)\r\n- SMAPE ()\r\n- WAPE (Weightned Absolute Percentage Error)\r\n- R² Score (Determination)\r\n\r\n### 🧠 **Модели (models/)**\r\n**Линейные алгоритмы:**\r\n- Линейная регрессия\r\n- Линейная регрессия + L1 + L2 + ElasticNet\r\n- Логистическая регрессия\r\n\r\n**Деревья:**\r\n- Дерево решений (CART-алгоритм)\r\n  - Критерии разделения: Энтропия, Джини\r\n  - Ограничение глубины и минимального числа образцов\r\n- Случайный лес (бэггинг над деревьями)\r\n\r\n**SVM:**\r\n- Линейный SVM (реализация через SGD)\r\n- Ядровой трюк (полиномиальное/RBF ядро)\r\n\r\n**Ансамбли:**\r\n- AdaBoost (адаптивное бустирование)\r\n\r\n### ⚙️ **Оптимизаторы (optimizers/)**\r\n- GD (просто градиентный спуск)\r\n- SGD (стохастический градиентный спуск)\r\n- Momentum GD\r\n- Nesterov GD\r\n- AdaGrad\r\n- Adam (адаптивная оценка моментов)\r\n- RMSprop (экспоненциальное затухание)\r\n\r\n---\r\n\r\n## 🛠️ Примеры кода\r\n\r\n**Обучение модели:**\r\n```python\r\nfrom models.linear import RidgeRegression\r\nfrom optimizers import SGD\r\n\r\nmodel = RidgeRegression(\r\n    optimizer=SGD()\r\n)\r\nmodel.fit(X_train, y_train)\r\n```\r\n\r\n## 🔍 Детали реализаций\r\n\r\n### 🧪 Тестирование\r\n- Юнит-тесты для всех компонентов (pytest)\r\n- Сравнение с эталонными реализациями (sklearn)\r\n- Проверка численной стабильности (edge-cases)\r\n\r\n---\r\n\r\n## 📌 Что планируется в будущем?\r\n- Препроцессинг (Нормализация, кодирование признаков итд)\r\n- Кластеризация (Kmeans, DBSCAN, HDBSCAN, Aglomerative, Spectral)\r\n- PCA: снижение размерности\r\n- Gradient Boosting\r\n- Blending, Stacking\r\n- Визуализация (t-sne, mds, isomap)\r\n\r\n---\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn1k1f0rm%2Fml-predicts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fn1k1f0rm%2Fml-predicts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fn1k1f0rm%2Fml-predicts/lists"}