The primary objective of this project is to conduct comprehensive theoretical research into the world of ML and convolution. We aim to explore and elucidate the intricate mathematical concepts and principles that form the backbone of ML algorithms and CNNs. By exploiting the use of CNN, the aim of the project was to define a Variational Auto Encoder able to generate images taken by the CelebA dataset
-
Linear Algebra and Matrix Operations: Investigate the role of linear algebra in ML, with a focus on matrix operations like convolution, transpose convolution, and matrix factorization. Explore how these operations enable feature extraction and transformation in ML models.
-
Convolution in Depth: Dive deep into the theory of convolution, both one-dimensional and two-dimensional, and its applications in signal processing and image analysis. Explore the convolution theorem, convolution properties, and their relevance to CNNs.
-
Neural Network Architectures: Analyze the theoretical frameworks behind various neural network architectures, including feedforward networks, recurrent networks, and convolutional networks. Understand how different architectures leverage convolution for specific tasks.
-
Optimization and Learning Algorithms: Study the mathematical foundations of optimization algorithms like gradient descent and stochastic gradient descent. Explore how these algorithms are used to train ML models, including CNNs.
-
Theoretical Boundaries and Challenges: Investigate the theoretical limits and challenges in ML, such as overfitting, bias-variance trade-off, and the curse of dimensionality. Understand the role of convolution in mitigating these challenges.
-
Theoretical Aspect regarding VAEs and their limitaions, as well as the use and validation of generative models.
- The use of any torch.nn.Module is not permitted and shall be implemented
- Convolutional and deconvolutional operations shall be implemented as matrix operations
After an extensive research, the final model constructed was a linear VAEs and ,due to limitations, the dataset has been changed to MNIST. A more detailed conclusion can be found on the documentation.