Dimensionality reduction techniques simplify complex datasets by reducing the number of variables. They preserve essential information for feature extraction, data compression, and noise reduction to improve computational efficiency and visualize high-dimensional data; examples include Principal Component Analysis (PCA), Independent Component Analysis (ICA), and Latent Dirichlet Allocation (LDA). * Neural networks, inspired by the processing of the human brain, allow machines to process complex data and learn autonomously. They are used across multiple domains, including image processing, natural language processing (NLP), and unsupervised learning. Neural networks can be categorized into various groups:
* Feed-forward neural networks [12] are the simplest type of artificial neural network, such as Perceptrons, where information moves in one direction without looping back. Convolutional Neural Networks (CNNs) [13] automatically and adaptively learn spatial hierarchies in data. They are used for image processing, computer vision, and object detection. Recurrent Neural Networks (RNNs) [14] retain information from previous inputs, allowing them to model dependencies in sequences. They are specialized for processing sequential data and used for tasks such as time series forecasting and natural language processing (NLP). Autoencoders [15] aim to encode input data into a lower-dimensional space and then reconstruct the output to be as close to the original input as possible. They are unsupervised learning algorithms and used for dimensionality reduction, data compression, and anomaly detection. Attention-based algorithms [16] are widely used in natural language processing (NLP) and sequence modeling and enable AI models to focus on specific parts of the input data. Transformers, as a subclass of these, are especially efficient in handling long sequences for machine translation and text summarization. Generative Adversarial Networks (GANs) [17] consist of two networks, a generator and a discriminator, that compete with each other to improve the quality of the generated data. They are used for image and video generation and data augmentation. * Reinforcement Learning Algorithms [18] aim to optimize decision-making processes by maximizing cumulative rewards over time. They enable machines to learn through interaction with their environment. They are used in robotics, gaming, and autonomous systems. Among these, we can list Markov Decision Processes (MDPs), which provide a mathematical framework for modeling sequential decision making in complex environments; Q-learning, which allows AI agents to learn the value of an action in a particular state using rewards and penalties, without needing a model of the environment; Deep Q-Networks (DQNs), which combine Q-learning with deep learning to enable AI systems to make decisions in high-dimensional state spaces, such as video games and robotics; and Monte Carlo Tree Search (MCTS), which is a heuristic search algorithm used to determine optimal decisions by exploring possible actions and simulating outcomes in AI applications in computer games. * Algorithms for computer vision [19] utilize a diverse range of techniques aimed at tasks such as feature extraction, edge detection, object detection, image segmentation, and artificial image or video generation to perceive and interpret visual information. Among these, we can list feature extraction algorithms used for simplifying and representing data to make them manageable for analysis; edge detection algorithms, which identify the boundaries within images for object recognition; object detection algorithms, which identify and locate objects within images or videos, such as region-based CNNs and You Only Look Once (YOLO) models; and image segmentation, which involves partitioning an image into segments for easier analysis, such as U-Net, SegNet, and DeepLab. * Algorithms for natural language processing (NLP) [20] generate new visual content.