Skip to main content

Feature Engineering is easy ..!!

Features are input to machine learning algorithm. and the row features that are provided to us are not the best, they are just whatever just has to be in data. Feature engineering have a goal to convert given features into much more predictive ones so that the can predict label more precisely. feature engineering can make simple algorithm to give good results. at a same time if you apply the best algorithm and do not perform feature engineering well you are going to get poor results.  feature engineering is a broad subject people dedicate their entire careers to feature engineering. there are some steps in feature engg that we need to follow and repeat most of the times to get job done.

steps---
1. Explore and understand data relationships
2. Transform feature 
3.Compute new features from other by applying some  maths on it
4. Visualization to check results  
5. Test with ML model
6. Repeat above steps as needed



Transforming feature---

Why transform feature ?--

1. To improve distribution property of feature 
2. To improve co-relation with label

How to transform feature--

1. apply some mathematical operation such as(log, square, squareroot, variance, exponential) on feature
2. take Difference or cumulative sum of values in feature this method apply more to features in dates      and time  format.
3.Non linear transformed features are not colinear.


Interaction terms--

Till now we have talked about transforming single feature. now consider the example of number of people traveling on a bus on different periods of times.
this can be dependent on different factors--
1. what time of day it is if its evening people rush to their home and their rush in residential areas of the city while in the morning people rush to their offices in the opposite direction of their evening route
2. what day it it if its holiday people would rush for shopping and movies etc. but the time would be different then the working day and volume of the people would different.
3. in this scenario time of a day and holiday are interactive terms.



Comments

Popular posts from this blog

Data preparation: Treating errors and outliers

Errors are outliers are the those values in dataset which are far away from mean value of that column in which they exist or we can say they are very small or large as compared to other values in that column. suppose we are observing column of price and we see value that is ten times bigger then other values then it could be error or outlier. to identify either it is error or outlier we need to apply some domain knowledge or we can say field knowledge. outliers are mainly caused by variability in measurement or experimental errors. but sometimes they could be useful and help us understand data better if we apply domain knowledge. for example we find a outlier in car price of cars data set then we check its other features and we found  that that car is luxury car then we understand it was outlier but a useful one and it was not just a error. Dealing with errors/outliers--- 1. Detect errors/outliers -- use data exploration to identify errors /outliers 2. methods to identify errors a...

Data preparation : Removing duplicates

Duplicate values not only increase size of dataset but also create bias while training model. Duplicate cases are over weighted thus create bias in training  machine learning model. suppose there is customer data and one customer showed up 100 times and others just showed up only ones this defiantly confuse the model resulting in yielding wrong predictions   Steps to remove duplicate values --- Explore data and identify duplicate values (use exploratory analysis)[to learn about exploring data check out other posts on the blog].           identify duplicates cases using ---               -Unique id:-- if we are lucky enough we have given each entity with unique id. then it it bit easy to                                              remove duplicates     .  ...