UtsavMurarka / MXene-machine-learning

Classification of MXenes into metals and non-metals based on physical properties

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Machine Learning Based Classification of Non-functionalized MXenes into Metals and Non-metals

Introduction

This project deals with training classification models on physical properties of non-functionalized MXene molecules to classify them into metals and non-metals. The data required was obtained from aNANt database by IISc, Bangalore.

Data Visualization & Preprocessing

List of Features

Features

Distribution of individual features

Features distribution

Corelation Heatmap

corr_hmap

Feature Engineering

For each of the 5 atoms in the molecule we add the following properties to the molecule’s data:

  1. Neutron number
  2. Proton number
  3. Number of electrons
  4. Period
  5. Group number
  6. Atomic radius
  7. Electronegativity
  8. First Ionization Energy
  9. Density
  10. Melting point
  11. Boiling point
  12. Number of isotopes
  13. Number of shells
  14. Specific heat
  15. Mass Magnetic Susceptibility
  16. Molar Magnetic Susceptibility
  17. Thermal Conductivity
    So, now, in addition to the 29 features we had earlier, we now have 85 new features (17 properties x 5 atoms per molecule). Therefore, a total of 131 features.

Distribution of individual features (After adding new features)

feature_dist

Correlation Heatmap

corr_hmap_new

Class Imbalance

imb

Results

Model : Random Forest (On oversampled data)

ROC Curve

roc

ROC-AUC = 0.949

Accuracy = 93.2%

Model : Neural Network (Cost-sensitive)

ROC Curve

roc

ROC-AUC = 0.962

Accuracy = 93.67%