Skip to main content

A simple machine learning library for educational and experimantal purposes.

Project description

🧠 Neurogenesis

Python Version: 3.11.9
Status: ⚠️ Pre-Alpha (Under Active Development)

Neurogenesis is a lightweight, educational machine learning library built from scratch in Python. Its primary aim is to focus on simplicity to aid in learning and to provide a platform for experimentation of unique ideas without having to face complex production-grade codebases of popular libraries which are highly optimized for performance.

🚧 Disclaimer:
Neurogenesis is currently in its early development stages. Expect incomplete features, bugs, and minimal optimization. Restructuring, refactoring, and formal documentation are planned for future releases.


✅ Algorithms Implemented (v0.0.1)

  • K-Nearest Neighbors (KNN)
  • Linear Regression
  • Logistic Regression
  • Naive Bayes
  • Support Vector Machine (SVM) – Binary Classification
  • Decision Tree
  • Random Forest

📌 Planned for v1.0.0

  • KNN
  • Linear Regression
  • Logistic Regression
  • Naive Bayes
  • SVM
  • Decision Tree
  • Random Forest
  • K-Means Clustering
  • AdaBoost
  • Artificial Neural Networks (ANN)
  • Convolutional Neural Networks (CNN)

🚀 Installation

Install Neurogenesis via pip:

pip install neurogenesis

⚙️ How to use

Here's a basic example using the RandomForest classifier:

import numpy as np
from sklearn import datasets
from sklearn.model_selection import train_test_split
from neurogenesis.models import RandomForest

data = datasets.load_breast_cancer()
X = data.data
y = data.target

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

clf = RandomForest(n_trees=3)
clf.fit(X_train, y_train)
y_pred = clf.predict(X_test)
acc = accuracy(y_test, y_pred)

print("Accuracy:", np.sum(y_true == y_pred) / len(y_true))

🧪 Make sure your data (X_train, y_train, X_test, y_test) is preprocessed and in the correct format (e.g., NumPy arrays).

📄 License

This project is licensed under the GNU General Public License v3.0.
You may redistribute, modify, and/or use the code under the terms of this license.

Please see the full license text online:
🔗 https://www.gnu.org/licenses/gpl-3.0.en.html

⚠️ Note: Any derivative works must also be licensed under GPLv3 or a compatible license.

🙋‍♂️ Contributing

Contributions, bug reports, and feature requests are welcome!
If you'd like to improve the library, fix a bug, or suggest a new algorithm, feel free to open an issue or submit a pull request.

📧 mzainkhalidofficial@gmail.com
🔗 GitHub Issues

Thanks to the open-source community for continuous inspiration and learning!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neurogenesis-0.0.1.tar.gz (20.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neurogenesis-0.0.1-py3-none-any.whl (22.3 kB view details)

Uploaded Python 3

File details

Details for the file neurogenesis-0.0.1.tar.gz.

File metadata

  • Download URL: neurogenesis-0.0.1.tar.gz
  • Upload date:
  • Size: 20.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for neurogenesis-0.0.1.tar.gz
Algorithm Hash digest
SHA256 b659b381cd0a35ddabb5725940c066df84641ad14f01d2cd409d4f86e369611a
MD5 efa231ebd9acac0dc69b1380aec72d75
BLAKE2b-256 673be500719eaaa152c74885edded34fd506fe99881e438d94d169d5c2439f4c

See more details on using hashes here.

File details

Details for the file neurogenesis-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: neurogenesis-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 22.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for neurogenesis-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 19c6f8308df5fe30644ca55a19867d9a30503b343ae6e417fa8cf35ea95f933f
MD5 623ba0d993c0ba87557dd897d734dcd2
BLAKE2b-256 8b6ddb130f49a585d3ee1eb49cd8a1804a3ea97aac4f9db2d71a61e2d4e59007

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page