pydeepflow


Namepydeepflow JSON
Version 0.1.9 PyPI version JSON
download
home_pagehttps://github.com/ravin-d-27/PyDeepFlow
SummaryA deep learning package optimized for performing Deep Learning Tasks, easy to learn and integrate into projects
upload_time2024-10-11 06:25:09
maintainerNone
docs_urlNone
authorRavin D
requires_python>=3.6
licenseMIT
keywords deep-learning artificial-intelligence neural-networks tensorflow pytorch
VCS
bugtrack_url
requirements numpy pandas scikit-learn jupyter tqdm colorama
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
---

# **PyDeepFlow**

<p align="center">
  <img src="assets/Logo.webp" alt="PyDeepFlow Logo" width="300px">
</p>

## **Author**

**Author Name**: Ravin D  
**GitHub**: [ravin-d-27](https://github.com/ravin-d-27)  
**Email**: ravin.d3107@outlook.com
<br><br>
The author is passionate about deep learning and is dedicated to creating tools that make neural networks more accessible to everyone.

## Contributors

Thanks to these amazing people for contributing to this project:

<a href="https://github.com/ravin-d-27/PyDeepFlow/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=ravin-d-27/PyDeepFlow" />
</a>


## **What is Pydeepflow?**

`pydeepflow` is a Python library designed for building and training deep learning models with an emphasis on ease of use and flexibility. It abstracts many of the complexities found in traditional deep learning libraries while still offering powerful functionality. 

### **Key Features of Pydeepflow:**

- **Simplicity**: Designed for ease of use, making it accessible to beginners.
- **Configurability**: Users can easily modify network architectures, loss functions, and optimizers.
- **Flexibility**: Can seamlessly switch between CPU and GPU for training.

## **Why is Pydeepflow Better than TensorFlow and PyTorch?**

While TensorFlow and PyTorch are widely used and powerful frameworks, `pydeepflow` offers specific advantages for certain use cases:

1. **User-Friendly API**: `pydeepflow` is designed to be intuitive, allowing users to create and train neural networks without delving into complex configurations.
  
2. **Rapid Prototyping**: It enables quick testing of ideas with minimal boilerplate code, which is particularly beneficial for educational purposes and research.

3. **Lightweight**: The library has a smaller footprint compared to TensorFlow and PyTorch, making it faster to install and easier to use in lightweight environments.

4. **Focused Learning**: It provides a straightforward approach to understanding deep learning concepts without getting bogged down by the extensive features available in larger libraries.

## **Dependencies**

The project requires the following Python libraries:

- `numpy`: For numerical operations and handling arrays.
- `pandas`: For data manipulation and loading datasets.
- `scikit-learn`: For splitting data and preprocessing.
- `tqdm`: For progress bars in training.
- `jupyter`: (Optional) For working with Jupyter notebooks.
- `pydeepflow`: The core library used to implement the Multi-Layer ANN.

You can find the full list in `requirements.txt`.

## **How to Install and Use Pydeepflow from PyPI**

### **Installation**

You can install `pydeepflow` directly from PyPI using pip. Open your command line and run:

```bash
pip install pydeepflow
```

### **Using Pydeepflow**

After installing, you can start using `pydeepflow` to create and train neural networks. Below is a brief example:

```python
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from pydeepflow.model import Multi_Layer_ANN

# Load Iris dataset
url = "https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data"
df = pd.read_csv(url, header=None, names=["sepal_length", "sepal_width", "petal_length", "petal_width", "species"])

# Data preprocessing
df['species'] = df['species'].astype('category').cat.codes
X = df.iloc[:, :-1].values
y = np.eye(len(np.unique(y)))[y]

# Split data into training and testing sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Standardization
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)

# Train ANN
ann = Multi_Layer_ANN(X_train, y_train, hidden_layers=[5, 5], activations=['relu', 'relu'], loss='categorical_crossentropy')
ann.fit(epochs=1000, learning_rate=0.01)

# Evaluate
y_pred = ann.predict(X_test)
accuracy = np.mean(np.argmax(y_pred, axis=1) == np.argmax(y_test, axis=1))
print(f"Test Accuracy: {accuracy * 100:.2f}%")
```

## **Contributing to Pydeepflow on GitHub**

Contributions are welcome! If you would like to contribute to `pydeepflow`, follow these steps:

1. **Fork the Repository**: Click the "Fork" button at the top right of the repository page.
  
2. **Clone Your Fork**: Use git to clone your forked repository:
   ```bash
   git clone https://github.com/ravin-d-27/PyDeepFlow.git
   cd pydeepflow
   ```

3. **Create a Branch**: Create a new branch for your feature or bug fix:
   ```bash
   git checkout -b my-feature-branch
   ```

4. **Make Your Changes**: Implement your changes and commit them:
   ```bash
   git commit -m "Add some feature"
   ```

5. **Push to Your Fork**:
   ```bash
   git push origin my-feature-branch
   ```

6. **Submit a Pull Request**: Go to the original repository and submit a pull request.

## **References**

- **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/)
  
- **pydeepflow Documentation**: [pydeepflow Documentation](https://pypi.org/project/pydeepflow/)

- **Deep Learning Resources**: For more about deep learning, consider the following:
  - Goodfellow, Ian, et al. *Deep Learning*. MIT Press, 2016.
  - Chollet, François. *Deep Learning with Python*. Manning Publications, 2017.

---



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ravin-d-27/PyDeepFlow",
    "name": "pydeepflow",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "deep-learning artificial-intelligence neural-networks tensorflow pytorch",
    "author": "Ravin D",
    "author_email": "ravin.d3107@outlook.com",
    "download_url": "https://files.pythonhosted.org/packages/b0/49/ac69fffc7731ff7c11769f16f15810fa6c03466c8b38c377a4c0bcaa9612/pydeepflow-0.1.9.tar.gz",
    "platform": null,
    "description": "\n---\n\n# **PyDeepFlow**\n\n<p align=\"center\">\n  <img src=\"assets/Logo.webp\" alt=\"PyDeepFlow Logo\" width=\"300px\">\n</p>\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<br><br>\nThe author is passionate about deep learning and is dedicated to creating tools that make neural networks more accessible to everyone.\n\n## Contributors\n\nThanks to these amazing people for contributing to this project:\n\n<a href=\"https://github.com/ravin-d-27/PyDeepFlow/graphs/contributors\">\n  <img src=\"https://contrib.rocks/image?repo=ravin-d-27/PyDeepFlow\" />\n</a>\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. It abstracts many of the complexities found in traditional deep learning libraries while still offering powerful functionality. \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\n\n# Load Iris dataset\nurl = \"https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data\"\ndf = pd.read_csv(url, header=None, names=[\"sepal_length\", \"sepal_width\", \"petal_length\", \"petal_width\", \"species\"])\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\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\u00e7ois. *Deep Learning with Python*. Manning Publications, 2017.\n\n---\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A deep learning package optimized for performing Deep Learning Tasks, easy to learn and integrate into projects",
    "version": "0.1.9",
    "project_urls": {
        "Bug Tracker": "https://github.com/ravin-d-27/PyDeepFlow/issues",
        "Documentation": "https://github.com/ravin-d-27/PyDeepFlow/wiki",
        "Homepage": "https://github.com/ravin-d-27/PyDeepFlow",
        "Source Code": "https://github.com/ravin-d-27/PyDeepFlow"
    },
    "split_keywords": [
        "deep-learning",
        "artificial-intelligence",
        "neural-networks",
        "tensorflow",
        "pytorch"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a7277b4aba2ff348c17ddc1713880db2dc62acccd87b3fa5576dc30d533cd249",
                "md5": "d1aa5a21233ce3d6407ac2d82cb49cf7",
                "sha256": "4d1fe1dbef422488e48f893df506b1a92b36b585f6773dac91554b797b830179"
            },
            "downloads": -1,
            "filename": "pydeepflow-0.1.9-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d1aa5a21233ce3d6407ac2d82cb49cf7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 17194,
            "upload_time": "2024-10-11T06:25:07",
            "upload_time_iso_8601": "2024-10-11T06:25:07.229235Z",
            "url": "https://files.pythonhosted.org/packages/a7/27/7b4aba2ff348c17ddc1713880db2dc62acccd87b3fa5576dc30d533cd249/pydeepflow-0.1.9-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b049ac69fffc7731ff7c11769f16f15810fa6c03466c8b38c377a4c0bcaa9612",
                "md5": "956e31e77c90a59eaeb0d1aecd9ea0dd",
                "sha256": "a50b79110ed37a0acb1ccc312b203ef369652f7becd01b45e1a578b3c74964a1"
            },
            "downloads": -1,
            "filename": "pydeepflow-0.1.9.tar.gz",
            "has_sig": false,
            "md5_digest": "956e31e77c90a59eaeb0d1aecd9ea0dd",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 17266,
            "upload_time": "2024-10-11T06:25:09",
            "upload_time_iso_8601": "2024-10-11T06:25:09.442088Z",
            "url": "https://files.pythonhosted.org/packages/b0/49/ac69fffc7731ff7c11769f16f15810fa6c03466c8b38c377a4c0bcaa9612/pydeepflow-0.1.9.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-11 06:25:09",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ravin-d-27",
    "github_project": "PyDeepFlow",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "numpy",
            "specs": [
                [
                    "==",
                    "1.23.5"
                ]
            ]
        },
        {
            "name": "pandas",
            "specs": [
                [
                    "==",
                    "1.5.3"
                ]
            ]
        },
        {
            "name": "scikit-learn",
            "specs": [
                [
                    "==",
                    "1.2.0"
                ]
            ]
        },
        {
            "name": "jupyter",
            "specs": [
                [
                    "==",
                    "1.0.0"
                ]
            ]
        },
        {
            "name": "tqdm",
            "specs": [
                [
                    "==",
                    "4.64.1"
                ]
            ]
        },
        {
            "name": "colorama",
            "specs": [
                [
                    "==",
                    "0.4.6"
                ]
            ]
        }
    ],
    "lcname": "pydeepflow"
}
        
Elapsed time: 0.35552s