Skip to content
Related Articles

Related Articles

Improve Article

Creating a simple machine learning model

  • Last Updated : 13 Jun, 2018

Create a Linear Regression Model in Python using a randomly created data set.

Linear Regression Model
Linear regression geeks for geeks

Attention reader! Don’t stop learning now. Get hold of all the important Machine Learning Concepts with the Machine Learning Foundation Course at a student-friendly price and become industry ready.

Generating the Training Set

# python library to generate random numbers
from random import randint
# the limit within which random numbers are generated
# to create exactly 100 data items
# list that contains input and corresponding output
TRAIN_INPUT = list()
# loop to create 100 data  items with three columns each
for i in range(TRAIN_SET_COUNT):
    a = randint(0, TRAIN_SET_LIMIT)
    b = randint(0, TRAIN_SET_LIMIT)
    c = randint(0, TRAIN_SET_LIMIT)
# creating the output for each data item
    op = a + (2 * b) + (3 * c)
    TRAIN_INPUT.append([a, b, c])
# adding each output to output list

Machine Learning Model – Linear Regression

The Model can be created in two steps:-
1. Training the model with Training Data
2. Testing the model with Test Data

Training the Model
The data that was created using the above code is used to train the model

# Sk-Learn contains the linear regression model
from sklearn.linear_model import LinearRegression
# Initialize the linear regression model
predictor = LinearRegression(n_jobs =-1)
# Fill the Model with the Data = TRAIN_INPUT, y = TRAIN_OUTPUT)

Testing the Data
The testing is done Manually. Testing can be done using some random data and testing if the model gives the correct result for the input data.

# Random Test data
X_TEST = [[ 10, 20, 30 ]]
# Predict the result of X_TEST which holds testing data
outcome = predictor.predict(X = X_TEST)
# Predict the coefficients
coefficients = predictor.coef_
# Print the result obtained for the test data
print('Outcome : {}\nCoefficients : {}'.format(outcome, coefficients))

The Outcome of the above provided test-data should be, 10 + 20*2 + 30*3 = 140.

Outcome : [ 140.]
Coefficients : [ 1. 2. 3.]

My Personal Notes arrow_drop_up
Recommended Articles
Page :