Machine Learning (ML)
PhD: Autoencoder and Diffusion Models for Plasmonic Design (Accelerated Design)
Developed an AI-powered pipeline for plasmonic NFT design, generating 2000+/h optimized structures - automating a process that traditionally requires years of expertise. Achieved 20% higher power efficiency vs expert-designed structures, with results validated through advanced electromagnetic simulations.
BS: ML Applications in Wireless Communication Networks
The project aims to detect user anomalies and inference patterns in wireless networks, with the goal of improving communication systems' data rates.
*The results of the tests were published at an international conference. The statistical method was adopted by a local startup company (GOHM) for vehicle localization and data.
Led a project developing physical layer authentication methods for wireless networks using device fingerprinting and machine learning.
Conducted tests on cellphones with LabVIEW and National Inst. devices; cleaned and prepared data using Python packages, e.g., matplotlib and pandas.
Statistical method was developed for data operations and feature extraction. Utilized Python, pandas, NumPy, and seaborn.
Classified cellphones with K-Nearest N. and implemented Support Vector M. in network device transceivers using TensorFlow, PyTorch, and scikit-learn.
Used spectrograms from Fast Fourier Transform (FFT) calculations via SciPy, NumPy, and matplotlib to input frequency, time, and amplitude data into a custom-designed CNN model, differentiating legitimate IoT sensors from attackers.
Achieved 99% accuracy on 8000 test images for identifying legitimate sensors, compared to 96% for attackers.
The statistical method was later adopted by GOHM-Embedded Intelligence for vehicle localization and data protection.
PhD: ML Applications in Magnetic Domain Pattern Images
Benefit: This is an opportunity to create domains with out-of-range parameters (which you can’t execute in micromagnetic simulation).
To extract parameters from and/or generate new images of magnetization patterns using micromagnetic simulation data, the images of simulated magnetization patterns will be input into Convolutional Neural Networks (CNNs) and Generative Adversarial Networks (GANs) for training.
*Worked on the latest technology - Heat Assisted Magnetic Recording (HAMR), the leading high-capacity drive technology.
Worked on magnetization pattern images generated using advanced storage technology (HAMR) with ML techniques.
Defined project scope and selected optimal Convolutional Neural Network (CNN) architectures for parameter extraction from magnetization images.
Cleaned, preprocessed data, and crafted a tailored CNN. Used PyTorch, pandas, and Principal Comp. Analysis for feature extraction from these images.
Developed magnetic domain images through custom GANs and tested DALL-E's adaptability for text-to-image/art generation in magnetic contexts.
PhD: Brain-computer interfaces: Decoding Motor imagery-based EEG Signals using Machine Learning
Brain-computer interfaces represent a life-changing possibility for disabled patients to regain control of their lives, for example through highly functional prosthetics or movement devices. However, everyday movements, like walking, and the increased brain activity it causes pose significant difficulty for BCI decoders.
This paper proposes a method to clean EEG data and create a decoder that is resistant to walking-induced artifacts so left and right-hand motor imagery can be classified. We first perform Artifact Subspace Reconstruction to remove major artifacts, then bandpass in the alpha and mu bands to find physiologically relevant frequencies, Common Average Reference Filter to improve spatial resolution, extract trials and samples, find the mean percent difference in power spectrum density between resting and motor imagery to best identify event-related desynchronization, perform fisher score feature selection to reduce dimensionality, and finally train and cross-validate our model offline and test online with evidence accumulation.
The paper is attached under publications.
Some of the code for this work is available at https://github.com/zkhodzhaev/ML_brain_computer_interface
EEG data before and after ASR processing. The upper subplot shows raw and the lower illustrates the filtered signal where the spike is not present.
The topological plot of the grand averaged mu power from the last 0.5s of the task trials, with and without spatial filtering.
Feature Extraction/Selection
Fischer scores measuring statistical significance for the first experimental run 1 to 4 in session one for subject 41. The y-axis shows Fischer score values ranging from 8 to 30 Hz with ∆2. The x-axis shows the number of channels from one to fifty-five. The color represents the discriminant power of the Fischer score, with higher scores indicating features that better differentiate the conditions/classes:
Feature extraction for testing the ML model
Advanced Reinforcement Learning Agent for Pong Using TensorFlow and Keras
Keras implementation of a blog post (Deep Reinforcement Learning: Pong from Pixels) that initially used Python's numpy library for neural network operations.
Training process.
Implemented the project by integrating TensorFlow and Keras, showcasing the ability to adapt and modernize legacy code with current deep learning frameworks.
Constructed a neural network model using Keras with a hidden layer of 200 neurons, demonstrating skills in neural network architecture design.
Employed Policy Gradient methods for intelligent decision-making, reflecting an understanding of advanced reinforcement learning techniques.
Implemented custom preprocessing and a tailored loss function to optimize the agent's performance, displaying proficiency in data manipulation and algorithm customization.
Demonstrated the agent's gameplay in real-time through OpenAI Gym's environment, showcasing the practical application of machine learning in a dynamic setting.
Successfully trained, saved, and reloaded the model for demonstration purposes, illustrating the project's adaptability and reproducibility.
GitHub code can be found here: https://github.com/zkhodzhaev/reinforcement_learning
During testing, the trained model was executed using pure Python in Jupyter Notebook.
Representation Learning using Multi-Layer Perceptrons (MLPs)
The study utilized multi-layer perceptrons (MLPs) for their versatility with diverse data types and relationships. MLPs with 50 and 100 nodes in hidden layers were chosen to balance complexity and efficiency, considering the feature sizes of datasets like the German Credit Dataset (27 features), Credit Defaulter Dataset (13 features), and Bail Dataset (18 features). This aimed to capture patterns effectively in datasets with 1,000 to 30,000 entries and prevent overfitting in smaller datasets. More details about datasets can be found here.
MLPs were configured with various hidden layer sizes and activation functions, including 'identity,' 'logistic,' 'tanh,' and 'real,' ranging from simple to complex structures. Hyperparameters like learning rate and batch size added complexity and affected training dynamics and generalization capabilities. The study used default settings for these parameters to minimize variability.
Dimensionality reduction techniques like PCA and t-SNE were implemented to manage high-dimensional data. PCA transformed features into principal components, preserving essential information, while t-SNE retained local data structures in reduced dimensions. PCA was iteratively applied to explore the impact of dimensionality reduction on model performance. t-SNE, limited to three components for efficiency, was used to assess its effect on MLP performance.
The study showed variations in MLP performance across datasets. For instance, an MLP with a single 100-node layer achieved an AUROC of 76.02% and an F1-score of 80.28% on the German Credit Dataset. Fairness metrics like SP and EO varied, indicating potential predictive biases. Training MLPs on data with altered sensitive attributes slightly improved fairness metrics but reduced performance, emphasizing the need for techniques balancing fairness and predictive accuracy.
Overall, the research highlighted the importance of careful model configuration and appropriate dimensionality reduction in ensuring fairness and stability in representation learning.
GitHub code can be found here: https://github.com/zkhodzhaev/representation_learning/
Here's a summary of the MLP results as compared to other methods:
* Results obtained after randomly flipping sensitive attributes to augment the data.