Projects

Mlx-cluster (Open Source)

A Python library for generating and calculating random graphs efficiently on Apple GPU using mlx-graphs and mlx.

  • Utilized Metal kernels with Python for efficiently calculating random walks and biased random walks, achieving 1.2x performance compared to regular PyTorch kernels on macOS
  • Used Nanobind, Poetry, and Python Packaging Index (PyPI) for publishing the package

Technologies: Python, MLX, Metal, Nanobind, Poetry

View on GitHub

Malware Detection from Opcode Sequences (Master’s Thesis)

Created a malware detection algorithm that can detect malware by disassembling opcode sequences.

  • Utilized BERT and XLNet architectures and various ensemble methods to improve accuracy from 95% to 97%
  • Novel approach using NLP techniques for cybersecurity applications

Technologies: Python, PyTorch, BERT, XLNet, Transformers

View on Springer View complete thesis

Elliptic bitcoin node classification

Utilized graph machine learning algorithms to classify illicit nodes in bitcoin transactions

  • Utilized GraphSage, GNN, GCN to classify illicit nodes
  • Utilized GNN explainer to verify which nodes contribute for majority of illicit nodes transaction
  • Contributed to make this dataset available in mlx-graphs

View on Github

Contributing to mlx-graphs

Contributed to mlx-graphs library ranging from datasets to graph transformations

  • Added elliptic bitcoin dataset to mlx-graphs
  • Added Node2Vec and other graph transformation algorithm
  • Added heterogeneous graphs like DBLP
  • Added mlx_cluster to assist with random walk algorithms

Technologies: mlx

View documentation