{"id":29901750,"url":"https://github.com/ravin-d-27/pydeepflow","last_synced_at":"2025-10-08T17:20:58.441Z","repository":{"id":257809408,"uuid":"860338477","full_name":"ravin-d-27/PyDeepFlow","owner":"ravin-d-27","description":"This is my own Deep Learning Package, optimized for performing Deep Learning Tasks and easy to learn and integrate into projects. ","archived":false,"fork":false,"pushed_at":"2025-06-17T07:49:07.000Z","size":416,"stargazers_count":20,"open_issues_count":4,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-24T15:54:17.202Z","etag":null,"topics":["deep-learning","hacktoberfest","hacktoberfest-accepted","hacktoberfest2024","machine-learning","neural-networks","python"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/pydeepflow/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ravin-d-27.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":"2024-09-20T08:51:03.000Z","updated_at":"2025-06-18T10:14:24.000Z","dependencies_parsed_at":null,"dependency_job_id":"72786bae-8ef3-4faf-9b93-519264f74fe1","html_url":"https://github.com/ravin-d-27/PyDeepFlow","commit_stats":null,"previous_names":["ravin-d-27/pydeepflow"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/ravin-d-27/PyDeepFlow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravin-d-27%2FPyDeepFlow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravin-d-27%2FPyDeepFlow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravin-d-27%2FPyDeepFlow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravin-d-27%2FPyDeepFlow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ravin-d-27","download_url":"https://codeload.github.com/ravin-d-27/PyDeepFlow/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ravin-d-27%2FPyDeepFlow/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268248837,"owners_count":24219558,"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","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["deep-learning","hacktoberfest","hacktoberfest-accepted","hacktoberfest2024","machine-learning","neural-networks","python"],"created_at":"2025-08-01T15:13:00.039Z","updated_at":"2025-10-08T17:20:58.420Z","avatar_url":"https://github.com/ravin-d-27.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **PyDeepFlow**\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/81f3e52a-ad5a-47b5-a7e1-bdc9ee2de508\" alt=\"logo\" width=\"300\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ravin-d-27/PyDeepFlow/stargazers\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/stars/ravin-d-27/PyDeepFlow?style=social\" alt=\"GitHub stars\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/License-Open%20Source%20with%20Attribution-blue.svg\" alt=\"License\"/\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://python.org\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/Python-3.6%2B-blue.svg\" alt=\"Python\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n## **What is PyDeepFlow?**\n\n`pydeepflow` is a Python library designed for building and training deep learning models with an emphasis on **ease of use** and **flexibility**.  \nIt abstracts many of the complexities found in traditional deep learning libraries while still offering **powerful functionality**.\n\n---\n\n## **Hacktoberfest 2025 with PyDeepFlow 💙**\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/HF2025-EmailHeader.png\" alt=\"Hacktoberfest\" width=\"80%\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Support open source software by participating in  \n  \u003ca href=\"https://hacktoberfest.com\"\u003e\u003cb\u003eHacktoberfest\u003c/b\u003e\u003c/a\u003e 🎉  \n  and get goodies and digital badges! 💙\n\u003c/p\u003e\n\n---\n\n## **Contributors**\n\nThanks to these amazing people for contributing to this project:\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/ravin-d-27/PyDeepFlow/graphs/contributors\"\u003e\n    \u003cimg src=\"https://contrib.rocks/image?repo=ravin-d-27/PyDeepFlow\" alt=\"Contributors\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\n\n### **Key Features of Pydeepflow:**\n\n- **Simplicity**: Designed for ease of use, making it accessible to beginners.\n- **Configurability**: Users can easily modify network architectures, loss functions, and optimizers.\n- **Flexibility**: Can seamlessly switch between CPU and GPU for training.\n\n## **Why is Pydeepflow Better than TensorFlow and PyTorch?**\n\nWhile TensorFlow and PyTorch are widely used and powerful frameworks, `pydeepflow` offers specific advantages for certain use cases:\n\n1. **User-Friendly API**: `pydeepflow` is designed to be intuitive, allowing users to create and train neural networks without delving into complex configurations.\n  \n2. **Rapid Prototyping**: It enables quick testing of ideas with minimal boilerplate code, which is particularly beneficial for educational purposes and research.\n\n3. **Lightweight**: The library has a smaller footprint compared to TensorFlow and PyTorch, making it faster to install and easier to use in lightweight environments.\n\n4. **Focused Learning**: It provides a straightforward approach to understanding deep learning concepts without getting bogged down by the extensive features available in larger libraries.\n\n## **Dependencies**\n\nThe project requires the following Python libraries:\n\n- `numpy`: For numerical operations and handling arrays.\n- `pandas`: For data manipulation and loading datasets.\n- `scikit-learn`: For splitting data and preprocessing.\n- `tqdm`: For progress bars in training.\n- `jupyter`: (Optional) For working with Jupyter notebooks.\n- `pydeepflow`: The core library used to implement the Multi-Layer ANN.\n\nYou can find the full list in `requirements.txt`.\n\n## **How to Install and Use Pydeepflow from PyPI**\n\n### **Installation**\n\nYou can install `pydeepflow` directly from PyPI using pip. Open your command line and run:\n\n```bash\npip install pydeepflow\n```\n\n### **Using Pydeepflow**\n\nAfter installing, you can start using `pydeepflow` to create and train neural networks. Below is a brief example:\n\n```python\nimport pandas as pd\nimport numpy as np\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.preprocessing import StandardScaler\nfrom pydeepflow.model import Multi_Layer_ANN\nfrom pydeeepflow.datasets import load_iris\n\n# Load Iris dataset\ndf = load_iris(as_frame=True)\n\n# Data preprocessing\ndf['species'] = df['species'].astype('category').cat.codes\nX = df.iloc[:, :-1].values\ny = np.eye(len(np.unique(y)))[y]\n\n# Split data into training and testing sets\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)\n\n# Standardization\nscaler = StandardScaler()\nX_train = scaler.fit_transform(X_train)\nX_test = scaler.transform(X_test)\n\n# Train ANN\nann = Multi_Layer_ANN(X_train, y_train, hidden_layers=[5, 5], activations=['relu', 'relu'], loss='categorical_crossentropy')\nann.fit(epochs=1000, learning_rate=0.01)\n\n# Evaluate\ny_pred = ann.predict(X_test)\naccuracy = np.mean(np.argmax(y_pred, axis=1) == np.argmax(y_test, axis=1))\nprint(f\"Test Accuracy: {accuracy * 100:.2f}%\")\n```\n\nPyDeepFlow now also supports regression tasks. Here is how you can train a model and evaluate it with the new regression metrics:\n\n# Create a simple regression dataset\nX = np.linspace(-10, 10, 100).reshape(-1, 1)\ny = (0.5 * X**2 + 2 * X + 5 + np.random.randn(100, 1) * 5).reshape(-1, 1)\n\n# Split and scale data (similar to classification example)\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)\nscaler_x = StandardScaler().fit(X_train)\nX_train = scaler_x.transform(X_train)\nX_test = scaler_x.transform(X_test)\nscaler_y = StandardScaler().fit(y_train)\ny_train = scaler_y.transform(y_train)\ny_test = scaler_y.transform(y_test)\n\n# Train ANN for regression\nann_regression = Multi_Layer_ANN(X_train, y_train, hidden_layers=[10, 10], activations=['relu', 'relu'], loss='mean_squared_error')\nann_regression.fit(epochs=500, learning_rate=0.01)\n\n# Evaluate the model using new regression metrics\nprint(\"Regression Model Evaluation:\")\nregression_results = ann_regression.evaluate(\n    X_test,\n    y_test,\n    metrics=['mean_absolute_error', 'mean_squared_error', 'r2_score']\n)\nprint(regression_results)\n\n\n## **Contributing to Pydeepflow on GitHub**\n\nContributions are welcome! If you would like to contribute to `pydeepflow`, follow these steps:\n\n1. **Fork the Repository**: Click the \"Fork\" button at the top right of the repository page.\n  \n2. **Clone Your Fork**: Use git to clone your forked repository:\n   ```bash\n   git clone https://github.com/ravin-d-27/PyDeepFlow.git\n   cd pydeepflow\n   ```\n\n3. **Create a Branch**: Create a new branch for your feature or bug fix:\n   ```bash\n   git checkout -b my-feature-branch\n   ```\n\n4. **Make Your Changes**: Implement your changes and commit them:\n   ```bash\n   git commit -m \"Add some feature\"\n   ```\n\n5. **Push to Your Fork**:\n   ```bash\n   git push origin my-feature-branch\n   ```\n\n6. **Submit a Pull Request**: Go to the original repository and submit a pull request.\n\n## **References**\n\n- **Iris Dataset**: The dataset used in this project can be found at the UCI Machine Learning Repository: [Iris Dataset](https://archive.ics.uci.edu/ml/machine-learning-databases/iris/)\n  \n- **pydeepflow Documentation**: [pydeepflow Documentation](https://pypi.org/project/pydeepflow/)\n\n- **Deep Learning Resources**: For more about deep learning, consider the following:\n  - Goodfellow, Ian, et al. *Deep Learning*. MIT Press, 2016.\n  - Chollet, François. *Deep Learning with Python*. Manning Publications, 2017.\n\n## **Author**\n\n**Author Name**: Ravin D  \n**GitHub**: [ravin-d-27](https://github.com/ravin-d-27)  \n**Email**: ravin.d3107@outlook.com\n\u003cbr\u003e\u003cbr\u003e\nThe author is passionate about deep learning and is dedicated to creating tools that make neural networks more accessible to everyone.\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fravin-d-27%2Fpydeepflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fravin-d-27%2Fpydeepflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fravin-d-27%2Fpydeepflow/lists"}