{"id":25870807,"url":"https://github.com/sroman0/web-inf","last_synced_at":"2025-03-02T06:33:15.227Z","repository":{"id":247558973,"uuid":"805714234","full_name":"sroman0/Web-Inf","owner":"sroman0","description":"Neural Network for Multi-Class Classification is a project developed during the \"Web and Information Retrieval\" course at Università degli Studi del Sannio. This repository provides an implementation of a neural network with a softmax output layer, designed for multi-class classification tasks.","archived":false,"fork":false,"pushed_at":"2025-02-19T19:45:06.000Z","size":61,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-19T20:32:38.648Z","etag":null,"topics":["classification","data-preprocessing","data-science","deep-learning","educational-project","jupyter-notebook","machine-learning","model-evaluation","multi-class-classification","neural-network","python","tensorflow","web-information-retrieval"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sroman0.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}},"created_at":"2024-05-25T08:58:11.000Z","updated_at":"2025-02-19T19:46:59.000Z","dependencies_parsed_at":"2025-02-19T20:36:49.697Z","dependency_job_id":null,"html_url":"https://github.com/sroman0/Web-Inf","commit_stats":null,"previous_names":["sroman0/web-inf"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sroman0%2FWeb-Inf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sroman0%2FWeb-Inf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sroman0%2FWeb-Inf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sroman0%2FWeb-Inf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sroman0","download_url":"https://codeload.github.com/sroman0/Web-Inf/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241470357,"owners_count":19968039,"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":["classification","data-preprocessing","data-science","deep-learning","educational-project","jupyter-notebook","machine-learning","model-evaluation","multi-class-classification","neural-network","python","tensorflow","web-information-retrieval"],"created_at":"2025-03-02T06:32:33.196Z","updated_at":"2025-03-02T06:33:15.213Z","avatar_url":"https://github.com/sroman0.png","language":"Jupyter Notebook","readme":"# Neural Network for Multi-Class Classification\n\nThis repository contains the implementation of a neural network designed for multi-class classification, developed as part of the \"Web and Information Retrieval\" course at the Università degli Studi del Sannio.\n\n## Table of Contents\n\n- [Project Overview](#project-overview)\n- [Repository Structure](#repository-structure)\n- [Requirements](#requirements)\n- [Usage](#usage)\n  - [1. Clone the Repository](#1-clone-the-repository)\n  - [2. Run the Jupyter Notebook (Optional)](#2-run-the-jupyter-notebook-optional)\n  - [3. Execute the Main Script](#3-execute-the-main-script)\n- [Model Architecture](#model-architecture)\n- [Results](#results)\n- [License](#license)\n- [Acknowledgments](#acknowledgments)\n\n## Project Overview\n\nThe project focuses on building a neural network with a softmax activation function in the final layer, enabling it to handle multi-class classification tasks effectively. The implementation includes data preprocessing, model training, evaluation, and visualization of results.\n\n## Repository Structure\n\n```\nWeb-Inf/\n├── main.py                  # Main script for model training and evaluation\n├── tesina_finale_softmax.ipynb  # Detailed notebook explaining the project workflow\n├── resources/              # Directory containing datasets and additional resources\n├── results/                # Directory to store training results and figures\n├── .gitignore              # Files and folders to be ignored by git\n├── LICENSE                 # Project license information\n└── README.md               # Project documentation\n```\n\n## Requirements\n\nTo run the code in this repository, ensure you have the following dependencies installed:\n\n- Python 3.x\n- TensorFlow\n- NumPy\n- Pandas\n- scikit-learn\n- Matplotlib\n- Jupyter Notebook (optional, for exploring the notebook)\n\nYou can install the required packages using pip:\n\n```bash\npip install tensorflow numpy pandas scikit-learn matplotlib jupyter\n```\n\n## Usage\n\n### 1. Clone the Repository\n\n```bash\ngit clone https://github.com/sroman0/Web-Inf.git\ncd Web-Inf\n```\n\n### 2. Run the Jupyter Notebook (Optional)\n\nTo explore the project workflow in an interactive environment:\n\n```bash\njupyter notebook tesina_finale_softmax.ipynb\n```\n\n### 3. Execute the Main Script\n\nTo train and evaluate the model, run:\n\n```bash\npython main.py\n```\n\nEnsure that the dataset is correctly referenced within the script and that the `resources/` directory contains the necessary data files.\n\n## Model Architecture\n\nThe implemented neural network consists of:\n\n1. **Input Layer**: Processes preprocessed feature vectors.\n2. **Hidden Layers**: Multiple dense layers with ReLU activation functions to capture complex patterns.\n3. **Output Layer**: Softmax activation function for multi-class classification.\n\nThe network is optimized using the Adam optimizer and uses categorical cross-entropy as the loss function. Model performance is tracked using accuracy metrics.\n\n## Results\n\n- **Accuracy \u0026 Loss Plots**: Training history is visualized to assess model convergence.\n- **Confusion Matrix**: Provides insights into class-wise prediction accuracy.\n- **Evaluation Metrics**: Detailed performance metrics, including precision, recall, and F1-score.\n- All generated results and plots are saved in the `results/` directory.\n\n## License\n\nThis project is licensed under the **GNU General Public License v3.0**.  \nSee the [LICENSE](https://github.com/sroman0/Web-Inf/blob/main/LICENSE) file for more details.\n\n## Acknowledgments\n\nThis project was developed as part of the *\"Web and Information Retrieval\"* course at **Università degli Studi del Sannio**. Special thanks to the course instructors and fellow students for their valuable guidance and support.\n\n---\n\nFor questions or further information, please contact the repository maintainer or refer to the course materials provided by the university.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsroman0%2Fweb-inf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsroman0%2Fweb-inf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsroman0%2Fweb-inf/lists"}