Feature engineering or feature extraction or feature discovery is the process of extracting features from raw data. Due to deep learning networks, such as convolutional neural networks, that are able to learn it by itself, domain-specific- based feature engineering has become obsolete for vision and speech processing. Feature engineering is used so that models better grasp to the dataset. Feature engineering involves data manipulation by addition, deletion, combination, mutation of the data so that the ML model can provide better performance and greater accuracy.