Scikit-learn မော်ဒယ်မှ ဆုတ်ယုတ်မှုကိန်းဂဏန်းများကို မည်သို့ထုတ်ယူနည်း
Python တွင် scikit-learn ဖြင့်တည်ဆောက်ထားသော regression model တစ်ခုမှ regression coefficients ကိုထုတ်ယူရန် အောက်ပါအခြေခံ syntax ကိုသုံးနိုင်သည်။
p.d. DataFrame ( zip ( X.columns , model.coef_ ))
အောက်ဖော်ပြပါ ဥပမာသည် ဤ syntax ကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။
ဥပမာ- Scikit-Learn မော်ဒယ်မှ ဆုတ်ယုတ်မှုကိန်းဂဏန်းများကို ထုတ်ယူပါ။
ကျွန်ုပ်တို့တွင် လေ့လာခဲ့သည့် နာရီများ၊ ကြိုတင်ပြင်ဆင်သည့် စာမေးပွဲအရေအတွက်နှင့် အတန်းတစ်ခန်းတွင် ကျောင်းသား ၁၁ ဦးမှ ရရှိသော နောက်ဆုံးစာမေးပွဲအဆင့်အကြောင်း အချက်အလက်များပါရှိသော အောက်ပါပန်ဒါ DataFrame ရှိသည်ဆိုပါစို့။
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' hours ': [1, 2, 2, 4, 2, 1, 5, 4, 2, 4, 4],
' exams ': [1, 3, 3, 5, 2, 2, 1, 1, 0, 3, 4],
' score ': [76, 78, 85, 88, 72, 69, 94, 94, 88, 92, 90]})
#view DataFrame
print (df)
hours exam score
0 1 1 76
1 2 3 78
2 2 3 85
3 4 5 88
4 2 2 72
5 1 2 69
6 5 1 94
7 4 1 94
8 2 0 88
9 4 3 92
10 4 4 90
ကျွန်ုပ်တို့သည် နာရီများ နှင့် စာမေးပွဲများကို ကြိုတင်ခန့်မှန်းကိန်းရှင်များနှင့် တုံ့ပြန်မှုကိန်းရှင်အဖြစ် ရမှတ်များအဖြစ် နာရီများနှင့် စာမေးပွဲများကို အသုံးပြု၍ အများအပြားမျဉ်းကြောင်းဆုတ်ယုတ်မှုပုံစံကို အံဝင်ခွင်ကျဖြစ်စေရန်အတွက် အောက်ပါကုဒ်ကို အသုံးပြုနိုင်ပါသည်။
from sklearn. linear_model import LinearRegression
#initiate linear regression model
model = LinearRegression()
#define predictor and response variables
x, y = df[[' hours ', ' exams ']], df. score
#fit regression model
model. fit (x,y)
ထို့နောက် နာရီ များနှင့် စာမေးပွဲများ၏ ဆုတ်ယုတ်မှုကိန်းများကို ထုတ်ယူရန် အောက်ပါ syntax ကို အသုံးပြုနိုင်ပါသည်။
#print regression coefficients
p.d. DataFrame ( zip ( X.columns , model.coef_ ))
0 1
0 hours 5.794521
1 exams -1.157647
ရလဒ်မှ၊ မော်ဒယ်ရှိ ကြိုတင်ခန့်မှန်းကိန်းရှင်နှစ်ခုအတွက် ဆုတ်ယုတ်မှုကိန်းများကို ကျွန်ုပ်တို့မြင်နိုင်သည်-
- နာရီ များအတွက် ဖော်ကိန်း : 5.794521
- စာမေးပွဲအတွက် ကိန်းဂဏန်း : -1.157647
ကျွန်ုပ်တို့အလိုရှိပါက၊ ကျွန်ုပ်တို့သည် အောက်ဖော်ပြပါ အထားအသိုကို အသုံးပြု၍ ဆုတ်ယုတ်မှုပုံစံမှ မူရင်းတန်ဖိုးကို ထုတ်ယူနိုင်သည်-
#print intercept value
print (model. intercept_ )
70.48282057040197
ဤတန်ဖိုးများတစ်ခုစီကို အသုံးပြု၍ တပ်ဆင်ထားသော ဆုတ်ယုတ်မှုပုံစံအတွက် ညီမျှခြင်းကို ကျွန်ုပ်တို့ရေးနိုင်သည်-
ရမှတ် = 70.483 + 5.795 (နာရီ) – 1.158 (စာမေးပွဲများ)
ထို့နောက် ကျောင်းသားတစ်ဦး၏ နောက်ဆုံးစာမေးပွဲအဆင့်ကို ခန့်မှန်းရန် ဤညီမျှခြင်းကို အသုံးပြုပြီး စာသင်ကြားနေသည့် နာရီအရေအတွက်နှင့် ဖြေဆိုခဲ့သော လေ့ကျင့်ရေးစာမေးပွဲအရေအတွက်တို့အပေါ် အခြေခံသည်။
ဥပမာအားဖြင့်၊ ၃ နာရီစာလေ့လာပြီး ကြိုတင်ပြင်ဆင်စာမေးပွဲ ၂ ကြိမ်ဖြေဆိုသော ကျောင်းသားသည် နောက်ဆုံးအဆင့် 85.55 ရရှိသင့်သည်-
- ရမှတ် = 70.483 + 5.795 (နာရီ) – 1.158 (စာမေးပွဲများ)
- ရမှတ် = 70.483 + 5.795(3) – 1.158(2)
- ရမှတ် = 85.55
ဆက်စပ်- Regression Coefficients ကို ဘယ်လိုအဓိပ္ပာယ်ဖွင့်မလဲ။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ပါ သင်ခန်းစာများသည် Python တွင် အခြားသော ဘုံလုပ်ဆောင်ချက်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
Python တွင် ရိုးရှင်းသော linear regression လုပ်နည်း
Python တွင် မျဉ်းကြောင်း ဆုတ်ယုတ်မှု အများအပြား လုပ်ဆောင်နည်း
Python ရှိ regression မော်ဒယ်များ၏ AIC တွက်ချက်နည်း