Welcome to my Deep Learning and TensorFlow repository! This repository is a culmination of my learning journey in deep learning and TensorFlow, organized into three major sections: TensorFlow Basics, Car Price Prediction, and Malaria Diagnosis. Through this journey, I have explored foundational concepts, hands-on projects, and advanced techniques in deep learning. Below is a detailed breakdown of the contents.
This section covers the foundational concepts of TensorFlow, focusing on tensor operations and essential functionalities.
- Basics: Understanding tensors and their properties.
- Initialization: Techniques for initializing tensors.
- Indexing: Manipulating tensor elements using indexing and slicing.
- Math Operations: Performing arithmetic operations on tensors.
- Linear Algebra Operations: Matrix operations and their applications in TensorFlow.
- Common TensorFlow Functions: Frequently used functions and their applications.
- Ragged Tensors: Working with tensors of irregular shapes.
- Sparse Tensors: Representing and manipulating sparse data.
- String Tensors: Handling string data in TensorFlow.
- Variables: Creating and updating variables in TensorFlow.
In this project, I explored linear regression to predict car prices. The process includes:
- Data Preparation: Cleaning and organizing the dataset for analysis.
- Linear Regression Model: Building a regression model to predict car prices.
- Error Sanctioning: Identifying and managing model errors.
- Training and Optimization: Enhancing model accuracy through optimization techniques.
- Performance Measurement: Evaluating model performance using appropriate metrics.
- Validation and Testing: Testing the model on unseen data to ensure reliability.
- Corrective Measures: Addressing underfitting or overfitting issues to improve model performance.
This section demonstrates a comprehensive deep learning pipeline to diagnose malaria using Convolutional Neural Networks (CNNs). It includes the following subsections:
- Data Prepration
- Data Loading: Importing the malaria dataset.
- Data Visualization: Exploring the dataset visually to understand patterns.
- Data Preprocessing
- Data Partitioning: Splitting data into training, validation, and testing sets.
- Data Augmentation: Enhancing the dataset with transformations.
- Mixup Data Augmentation: Implementing the Mixup technique.
- CutMix Data Augmentation: Applying CutMix for enhanced model generalization.
- Albumentations: Leveraging advanced augmentation techniques.
- Model Creation
- Sequential API:
- Techniques like Dropout, Regularization, and Augmentation.
- Functional API:
- Building flexible models with callable layers.
- Model Subclassing:
- Creating custom layers and architectures.
- Callbacks:
- Tools like CSVLogger, EarlyStopping, LearningRateScheduler, ModelCheckpoint, and Tensorboard for monitoring and improving training.
- Tensorboard Integration:
- Data Logging, Visualizing Model Graphs, Hyperparameter Tuning, Profiling, and Visualizations.
- Sequential API:
- Modern Convolutional Neural Networks:
- Implementing architectures such as AlexNet, VGGNet, ResNet, MobileNet, and EfficientNet.
- Coding ResNet from Scratch.
- Training CNN
- Custom Loss Functions and Metrics:
- Custom implementations for loss and metrics with and without parameters.
- Defining custom classes for advanced use cases.
- Visualizations:
- Visualizing training metrics and results.
- Custom Loss Functions and Metrics:
- Model Evaluation and Testing
- ROC and Confusion Matrix:
- Assessing model performance on test data.
- ROC and Confusion Matrix:
- Saving and Loading Models
- Efficient model persistence techniques.