This repo contains the implementation of various Machine Learning classifiers to solve the task of Digital Modulation Classification. data_feature-engineering.ipynb does feature engineering on raw data- dataset taken from https://www.deepsig.io/datasets; contains 8 classes of digital modulation- '8PSK', 'BPSK', 'CPFSK', 'GFSK', 'PAM4', 'QAM16', 'QAM64', 'QPSK'.
Dependencies- Python v3.6.3, NumPy v1.14.0, TensorFlow v1.4.0, scikit-learn v0.19.1, matplotlib v2.1.0, xgboost v0.6
K Nearest Neighbors, Support Vector Classifiers, Decision Trees, Decision Tree Ensembles and Extreme Gradient Boosting were implemented using scikit-learn.
Deep Neural Networks (DNNs)- fully connected and Convolutional Neural Networks (CNNs) were implemented using TensorFlow.