feature engineering and selection building machine learning systems and pipelines take significant effortwhich is evident from the knowledge you gained in the previous in the first we presented some high-level architecture for building machine learning pipelines the path from data to insights and information is not an easy and direct one it is tough and also iterative in nature involving data scientists and analysts to reiterate through several steps multiple times to get to the perfect model and derive correct insights the limitation of machine learning algorithms is the fact that they can only understand numerical values as inputs this is becauseat the heart of any algorithmwe usually have multiple mathematical equationsconstraintsoptimizations and computations hence it is almost impossible for us to feed raw data into any algorithm and expect results this is where features and attributes are extremely helpful in building models on top of our data building machine intelligence is multi-layered process having multiple facets in this bookso farwe have already explored how you can retrieveprocesswrangleand visualize data exploratory data analysis and visualizations are the first step toward understanding your data better understanding your data involves understanding the complete scope encompassing your data including the domainconstraintscaveatsquality and available attributes from you might remember that data is comprised of multiple fieldsattributesor variables each attribute by itself is an inherent feature of the data you can then derive further features from these inherent features and this itself forms major part of feature engineering feature selection is another important task that comes hand in hand with feature engineeringwhere the data scientist is tasked with selecting the best possible subset of features and attributes that would help in building the right model an important point to remember here is that feature engineering and selection is not one-time process which should be carried out in an ad hoc manner the nature of building machine learning systems is iterative (following the crisp-dm principleand hence extracting and engineering features from the dataset is not one-time task you may need to extract new features and try out multiple selections each time you build model to get the best and optimal model for your problem data processing and feature engineering is often described to be the toughest task or step in building any machine learning system by data scientists with the need of both domain knowledge as well as mathematical transformationsfeature engineering is often said to be both an art as well as science the obvious complexities involve dealing with diverse types of data and variables besides thiseach machine learning problem or task needs specific features and there is no one solution fits all in the case of feature engineering this makes feature engineering all the more difficult and complex hence we follow proper structured approach in this covering the following three major areas in the feature engineering workflow they are mentioned as follows feature extraction and engineering feature scaling feature selection (cdipanjan sarkarraghav bali and tushar sharma sarkar et al practical machine learning with python