ਮਸ਼ੀਨ ਸਿੱਖਿਆ - ਬਹੁਪੱਖੀ ਰੀਗ੍ਰੇਸ਼ਨ

ਬਹੁਵਾਕਿਆਮੀ ਰਿਗ੍ਰੀਸ਼ਨ (Multiple Regression)

ਬਹੁਵਾਕਿਆਮੀ ਰਿਗ੍ਰੀਸ਼ਨ ਲਾਈਨਰੀ ਰਿਗ੍ਰੀਸ਼ਨ ਜਿਹੀ ਹੈ ਪਰ ਕਈ ਸੁਤੰਤਰ ਮੁੱਲਾਂ ਵਾਲੀ ਹੈ, ਮਤਲਬ ਅਸੀਂ ਦੋ ਜਾਂ ਕਈ ਵਾਕਿਆਮੀਆਂ ਦੇ ਅਧਾਰ 'ਤੇ ਇੱਕ ਮੁੱਲ ਪ੍ਰਵਾਨਗੀ ਦਿੰਦੇ ਹਾਂ।

ਹੇਠਾਂ ਦਾ ਡਾਟਾ ਸੈੱਟ ਦੇਖੋ ਵਿੱਚ ਕੁਝ ਆਟੋਮੋਬਾਈਲ ਦੇ ਸੂਚਨਾ ਹਨ।

Car Model Volume Weight CO2
Toyota Aygo 1000 790 99
Mitsubishi Space Star 1200 1160 95
Skoda Citigo 1000 929 95
Fiat 500 900 865 90
Mini Cooper 1500 1140 105
VW Up! 1000 929 105
Skoda Fabia 1400 1109 90
Mercedes A-Class 1500 1365 92
Ford Fiesta 1500 1112 98
Audi A1 1600 1150 99
Hyundai I20 1100 980 99
Suzuki Swift 1300 990 101
Ford Fiesta 1000 1112 99
Honda Civic 1600 1252 94
Hundai I30 1600 1326 97
Opel Astra 1600 1330 97
BMW 1 1600 1365 99
Mazda 3 2200 1280 104
Skoda Rapid 1600 1119 104
Ford Focus 2000 1328 105
Ford Mondeo 1600 1584 94
Opel Insignia 2000 1428 99
Mercedes C-Class 2100 1365 99
Skoda Octavia 1600 1415 99
Volvo S60 2000 1415 99
Mercedes CLA 1500 1465 102
Audi A4 2000 1490 104
Audi A6 2000 1725 114
Volvo V70 1600 1523 109
BMW 5 2000 1705 114
Mercedes E-Class 2100 1605 115
Volvo XC70 2000 1746 117
Ford B-Max 1600 1235 104
BMW 2 1600 1390 108
Opel Zafira 1600 1405 109
Mercedes SLK 2500 1395 120

آپ انجین کی پیمائش کی بڑائی کے مطابق گاڑی کا سی او2 کا اخراج پیش بینی کرسکتے ہیں، لیکن کثیر متغیر ریگر کے ذریعے، ہم مزید متغیر، مثلاً گاڑی کا وزن، کا استعمال کرسکتے ہیں تاکہ پیش بینی بہتر ہو سکے۔

عملکردار

پینا، ہم پینا ماڈیول کو درآمد کرسکتے ہیں:

import pandas

عملکردار

Pandas ماڈیول ہمیں csv فائل کو پڑھنا اور DataFrame آؤٹ پوائنٹ فراہم کرنا دیتا ہے۔یہ فائل صرف ٹیسٹ مقصد کیلئے استعمال کی جاتی ہے، آپ اس سے ڈاؤن لوڈ کرسکتے ہیں:

df = pandas.read_csv("cars.csv")

cars.csv

پس، مستقل قیمت کو لکھئے اور اس کو 'X' میں نامزد کریئے

X = df[['Weight', 'Volume']]
y = df['CO2']

متعلقہ قیمت کو نا 'ی' میں رکھیئےتذکرہ: معمولاً مستقل قیمت کی فہرست کو بڑی حروف سے نامزد کریںX ، متعلقہ قیمت کی فہرست کو چھوٹی حروف سے نامزد کریںی

،

from sklearn import linear_model

ہم sklearn ماڈیول کی کچھ طریقوں کا استعمال کریں گے، لہذا ہم اس ماڈیول کو درآمد کرنا چاہیئے: sklearn ماڈیول میں، ہم استعمال کریں گے: LinearRegression()

اس آؤٹ پوائنٹ کا ایک نام کا متعلقہ طریقہ کار فٹ() کوئی طریقہ کار، جو مستقل اور متعلقہ قیمت کا پارامتر کا نمائش کرتا ہے، اور اس تعلقات کا اعداد و شمار فراہم کرتا ہے:

regr = linear_model.LinearRegression()
regr.fit(X, y)

اب، ہم ایک ریگر آؤٹ پوائنٹ پر رہے ہیں، جو کاوزن اور پیمائش کا سی او2 کی قیمت پیش بینی کرسکتا ہے:

# 2300 کلوگرام وزن اور 1300 سی سی ایم پیمائش والی گاڑی کا سی او2 کا اخراج پیش بینی کرنا:
predictedCO2 = ریگر.پریڈکت([[2300, 1300]])

ਉਦਾਹਰਣ

کاملیت کا مثال دیکھئے:

import pandas
from sklearn import linear_model
df = pandas.read_csv("cars.csv")
X = df[['Weight', 'Volume']]
y = df['CO2']
regr = linear_model.LinearRegression()
regr.fit(X, y)
# 2300 کلوگرام وزن اور 1300 سی سی ایم پیمائش والی گاڑی کا سی او2 کا اخراج پیش بینی کرنا:
predictedCO2 = ریگر.پریڈکت([[2300, 1300]])
print(predictedCO2)

ਨਤੀਜਾ:

[107.2087328]

ਇੰਸਟੈਂਸ ਚਲਾਓ

ہم پیش بینی کرتے ہیں کہ 1.3 لیٹر موٹر کا وزن 2300 کلوگرام کا موٹر کا گاڑی، فی کلومیٹر 107 گرام سی او2 بھر جائے گا。

کوئفیکٹر

کوئفیکٹر، ناشناختی متغیر کا تعلق کا ایک عامل کی توصیف کرتا ہے۔

مثلاً اگر x متغیر، تو 2x یہ x دوگنا ہے۔x ناشناختی متغیر، نمبر 2 کوئفیکٹر ہے。

اس صورت میں، ہم وزن کا سی او2 کا کoefficient اور پیمائش کا سی او2 کا کoefficient طلب کرسکتے ہیں۔ جو جواب ملتا ہوا، وہ اس کا مطلب یہ ہے کہ اگر ہم کسی ایک مستقل قیمت کو اضافہ یا کم کرتے ہیں تو کیا ہوگا。

ਉਦਾਹਰਣ

بنیادی ریگر کوئف کی قیمت پرنٹ کرنا:

import pandas
from sklearn import linear_model
df = pandas.read_csv("cars.csv")
X = df[['Weight', 'Volume']]
y = df['CO2']
regr = linear_model.LinearRegression()
regr.fit(X, y)
پرینٹ(ریگر کوئف_)

ਨਤੀਜਾ:

[0.00755095 0.00780526]

ਇੰਸਟੈਂਸ ਚਲਾਓ

نتائج کی تفسیر

نتائج کا آرایه وزن اور پیمائش کی کoefficient کی قیمت کا نمائش کرتا ہے。

وزن: 0.00755095
پیمائش: 0.00780526

یہ اعداد کا مطلب یہ ہے کہ اگر وزن 1 گرام بڑھ جائے تو سی او2 کا اخراج 0.00755095 گرام میں بڑھ جائے گا。

اگر موٹر کی انداز (پیمائش) 1 سی سی ایم بڑھ جائے، تو سی او2 کا اخراج 0.00780526 گرام میں بڑھ جائے گا。

ਮੈਂ ਮੰਨਦਾ ਹਾਂ ਕਿ ਇਹ ਇੱਕ ਸਹੀ ਅਨੁਮਾਨ ਹੈ, ਪਰ ਅਜਿਹਾ ਪ੍ਰਯੋਗ ਕਰਨਾ ਵੀ ਕਰੋ!

ਅਸੀਂ ਭਵਿੱਖਬਾਣੀ ਕੀਤੀ ਹੈ ਕਿ 1300ccm ਇੰਜਣ ਵਾਲੀ ਅਤੇ 2300 ਕਿਲੋਗ੍ਰਾਮ ਵਜਨ ਵਾਲੀ ਕਾਰ ਦੀ ਕਾਰਬਨ ਡਾਈਆਕਸਾਈਡ ਪ੍ਰਦਾਨ ਲਗਭਗ 107 ਗ੍ਰਾਮ ਹੋਵੇਗੀ。

ਅਗਰ ਮੈਨੂੰ 1000g ਦਾ ਵਜਨ ਵਧਾਓ ਤਾਂ ਕੀ ਹੋਵੇਗਾ?

ਉਦਾਹਰਣ

ਪਹਿਲਾਂ ਦੇ ਉਦਾਹਰਣ ਨੂੰ ਦੁਹਰਾਓ, ਲੇਕਿਨ ਕਾਰ ਦੀ ਵਜਨ ਨੂੰ 2300 ਤੋਂ 3300 ਬਦਲ ਦੇਓ:

import pandas
from sklearn import linear_model
df = pandas.read_csv("cars.csv")
X = df[['Weight', 'Volume']]
y = df['CO2']
regr = linear_model.LinearRegression()
regr.fit(X, y)
predictedCO2 = regr.predict([[3300, 1300]])
print(predictedCO2)

ਨਤੀਜਾ:

[114.75968007]

ਇੰਸਟੈਂਸ ਚਲਾਓ

ਅਸੀਂ ਭਵਿੱਖਬਾਣੀ ਕੀਤੀ ਹੈ ਕਿ 1.3 ਲੀਟਰ ਇੰਜਣ ਵਾਲੀ ਅਤੇ 3.3 ਟਨ ਵਜਨ ਵਾਲੀ ਕਾਰ ਹਰੇਕ ਕਿਲੋਮੀਟਰ ਚਲਣ ਤੋਂ ਲਗਭਗ 115 ਗ੍ਰਾਮ ਕਾਰਬਨ ਡਾਈਆਕਸਾਈਡ ਪ੍ਰਦਾਨ ਕਰੇਗੀ。

ਇਹ ਸੰਕੇਤ ਦਿੰਦਾ ਹੈ ਕਿ 0.00755095 ਦਾ ਕੋਈਫੀਸੈਂਟ ਸਹੀ ਹੈ:

107.2087328 + (1000 * 0.00755095) = 114.75968