This repository contains a series of labs and resources for the CT221 course at ITA, focusing on neural networks.
This project explores classical neural networks through various practical labs, providing hands-on experience and insights into model building and evaluation.
- Lab1_CT221.ipynb: Introduction to neural networks, covering basic concepts, data preparation, and initial model implementation.
- Lab2_CT221.ipynb: Delves into advanced topics such as model optimization, regularization techniques, and performance evaluation, including image prediction using the MNIST dataset.
- model.png: Visualization of the neural network architecture.
- model_plot.png: Detailed plot of the model structure.
- modeloteste1.keras: Saved model file for testing and evaluation.
- requirements.txt: List of dependencies required to run the notebooks.
- sample_image.png: Example image used in the labs.
Objective: Introduce the foundational concepts of neural networks.
- Data Preparation: Cleaning and preprocessing data for model training.
- Model Implementation: Building and training a simple neural network using TensorFlow and Keras.
- Evaluation: Assessing the initial model performance using basic metrics.
- Key Learning: Understand the basic workflow of neural network training and evaluation.
Objective: Explore advanced techniques to improve neural network performance.
- Model Optimization: Implementing strategies such as learning rate scheduling and dropout.
- Regularization: Techniques like L1/L2 regularization to prevent overfitting.
- Performance Evaluation: Using advanced metrics and visualization tools to evaluate model performance comprehensively.
- Image Prediction using MNIST: Training a neural network on the MNIST dataset to predict handwritten digits, showcasing the practical application of model optimization and regularization techniques.
- Key Learning: Gain insights into improving neural network performance and apply these techniques to practical problems like image recognition.