How and when to use polynomial regression in ML in python

This recipe explains how and when to use polynomial regression in ML in python

Recipe Objective

Polynomial Regression is a form of linear regression in which the relationship between the independent variable x and dependent variable y is modeled as an nth degree polynomial.

So this recipe is a short example on How and when to use polynomial regression. Let's get started.

Learn to Implement Customer Churn Prediction Using Machine Learning in Python

Step 1 - Import the library

from sklearn import datasets from sklearn.model_selection import train_test_split from sklearn.datasets import load_boston from sklearn.linear_model import LinearRegression from sklearn.preprocessing import PolynomialFeatures

Let's pause and look at these imports. We have exported train_test_split which helps in randomly breaking the datset in two parts. Here sklearn.dataset is used to import one classification based model dataset. Also, we have exported LinearRegression and PolynomialFeatures to build the model.

Step 2 - Setup the Data

X,y=load_boston(return_X_y=True) poly = PolynomialFeatures(degree = 2) X = poly.fit_transform(X) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25)

Here, we have used load_boston function to import our dataset in two list form (X and y) and therefore kept return_X_y to be True. Thereby, we have introduced polnomial features in our dataset for degree upto 2. Further with have broken down the dataset into 2 parts, train and test with ratio 3:4.

Now our dataset is ready.

Step 3 - Building the model

model = LinearRegression()

We have simply built a regressor model with LinearRegression (our data already has polnomial features and linear regreession simply means predicting coefficient) with default values.

Step 4 - Fit the model and predict for test set

model.fit(X_train, y_train) expected_y = y_test predicted_y = model.predict(X_test)

Here we have simply fit used fit function to fit our model on X_train and y_train. Now, we are predicting the values of X_test using our built model.

Step 5 - Printing the results

print(model.score(X_train,y_train)) print(model.score(X_test,y_test))

Here we have calculating accuracy score of our trained set and also, on the unknown dataset (X_test and y_test)

Step 6 - Lets look at our dataset now

Once we run the above code snippet, we will see:

0.9371457121192392
0.7328994385490928

The model has low accuracy score on unknown datset and hence might not be that efficient.

What Users are saying..

profile image

Abhinav Agarwal

Graduate Student at Northwestern University
linkedin profile url

I come from Northwestern University, which is ranked 9th in the US. Although the high-quality academics at school taught me all the basics I needed, obtaining practical experience was a challenge.... Read More

Relevant Projects

NLP Project for Beginners on Text Processing and Classification
This Project Explains the Basic Text Preprocessing and How to Build a Classification Model in Python

Build a Customer Churn Prediction Model using Decision Trees
Develop a customer churn prediction model using decision tree machine learning algorithms and data science on streaming service data.

Build Regression Models in Python for House Price Prediction
In this Machine Learning Regression project, you will build and evaluate various regression models in Python for house price prediction.

Customer Market Basket Analysis using Apriori and Fpgrowth algorithms
In this data science project, you will learn how to perform market basket analysis with the application of Apriori and FP growth algorithms based on the concept of association rule learning.

PyCaret Project to Build and Deploy an ML App using Streamlit
In this PyCaret Project, you will build a customer segmentation model with PyCaret and deploy the machine learning application using Streamlit.

Skip Gram Model Python Implementation for Word Embeddings
Skip-Gram Model word2vec Example -Learn how to implement the skip gram algorithm in NLP for word embeddings on a set of documents.

AWS MLOps Project to Deploy Multiple Linear Regression Model
Build and Deploy a Multiple Linear Regression Model in Python on AWS

Learn Hyperparameter Tuning for Neural Networks with PyTorch
In this Deep Learning Project, you will learn how to optimally tune the hyperparameters (learning rate, epochs, dropout, early stopping) of a neural network model in PyTorch to improve model performance.

Build a Logistic Regression Model in Python from Scratch
Regression project to implement logistic regression in python from scratch on streaming app data.

Learn to Build Generative Models Using PyTorch Autoencoders
In this deep learning project, you will learn how to build a Generative Model using Autoencoders in PyTorch