Hands-on practice on machine learning
Tags: machinelearning, regression, scikitlearn, python
Published: 2020-10-27 08:51:40

# Practical machine learning.
## Part 0.Prerequisite 
  Basic knowledge about this is helpful

1. Python
2. NumPy
3. Pandas
4. Matplotlib
5. Scikit-learn

## Part 1.Data Preprocessing
Data preprocessing is an important step in the data mining process.
- Import the library.
- Get the data.
- Check for missing or null data.
- Convert categorical data into numbers.
- Split into train and test.
- Feature scaling.

For data preprocessing use this [Jupyter notebook](https://vivek2509.github.io/World_of_ML/jupyter/data%20preprocessing/2020/10/20/Data_preprocessing.html)

## Part 2.Supervised Learning
Supervised learning is the learning of the model with an input variable and an output variable and algorithm map the input to the output.

Supervised learning classified into two categories of algorithms:
- Classification: A classification problem is when the output variable is a category, such as "disease" or "No disease".
- Regression: A regression problem is when the output variable is a real value, such as "Price".

1. Classification
There is a wide variety of classification applications from Healthcare to Marketing. 
Learn how to implement the following classification models:
 - [Logistic Regression](https://vivek2509.github.io/World_of_ML/jupyter/classification/2020/10/21/logistic_regression.html)
 - [K-Nearest Neighbours(K-NN)](https://vivek2509.github.io/World_of_ML/jupyter/classification/2020/10/22/k_nearest_neighbors.html)
 - [Support Vector Machine(SVM)](https://vivek2509.github.io/World_of_ML/jupyter/classification/2020/10/23/Supprt_Vector_Machine.html)
 - [Kernel SVM](https://vivek2509.github.io/World_of_ML/jupyter/classification/2020/10/24/kernel_svm.html)
 - [Naive Bayes](https://vivek2509.github.io/World_of_ML/jupyter/classification/2020/10/25/Naive-Bayes.html)
 - [Decision Tree](https://vivek2509.github.io/World_of_ML/jupyter/classification/2020/10/26/Decision_tree_classification.html)
 - [Random Forest](https://vivek2509.github.io/World_of_ML/jupyter/classification/2020/10/27/Random_forest_classification.html)

2. Regression
The regression technique varies from Linear Regression to Random Forest.
 - [Simple Linear Regression](https://vivek2509.github.io/World_of_ML/jupyter/regression/2020/10/21/simple_linear_regression.html)
 - [Multiple Linear Regression](https://vivek2509.github.io/World_of_ML/jupyter/regression/2020/10/22/multiple_linear_regression.html)
 - [Polynomial Regression](https://vivek2509.github.io/World_of_ML/jupyter/regression/2020/10/23/polynomial_regression.html)
 - [Support Vector for Regression](https://vivek2509.github.io/World_of_ML/jupyter/regression/2020/10/24/Support-Vector-Regression-(SVR).html)
 - [Decision Tree](https://vivek2509.github.io/World_of_ML/jupyter/regression/2020/10/26/Decision_tree_regression.html)
 - [Random Forest](https://vivek2509.github.io/World_of_ML/jupyter/regression/2020/10/27/Random_forest_regression.html)

## Part 3.Unsupervised Learning
Unsupervised learning is where only the input data is present and no corresponding output variable is there.

Unsupervised learning has two categories of algorithms:
- Clustering: A clustering problem is where you want to discover the inherent groupings in the data, such as grouping customers by purchasing behavior.
- Association: An association rule learning problem is where you want to discover rules that describe a large portion of your data,  such as people that buy X also tend to buy Y

3.1 Clustering
Clustering is similar to classification, but the basis is different. In clustering, you don't know what you are looking for, and you are trying to identify some segments or clusters in your data.

Learn how to implement the following Machine learning Clustering models:
 - [K-mean Clustering](https://vivek2509.github.io/World_of_ML)
 - [Hierarchical Clustering](https://vivek2509.github.io/World_of_ML)
<br>
<br>

> The main problem is how to use the right estimator for our problems?
    You can use the [**Scikit-learn**](https://scikit-learn.org/stable/tutorial/machine_learning_map/index.html) map for your problem.

> **To make the world a better place,  use data wisely.
> -Vivek2509** 


## *Happy coding and have a great time learning how to make machines smarter.*