naywinaung blog,statistics Data transform in regression

Data transform in regression

Regression မှာ Data Transform ဘာကြောင့် လုပ်သင့်သလဲ၊ ဘယ်လိုလုပ်မလဲ

Regression analysis မှာ assumption တွေဖြစ်တဲ့ linearity, homoscedasticity, normality of residuals စတဲ့ အချက်တွေကို ပိုကောင်းစေဖို့အတွက် data တွေ ကို transform လုပ်ကြရပါတယ်။ များသောအားဖြင့် data အမျိုးအစားတွေကို ကြည့်ပြီး နည်းလမ်း ၁၁ ခုနဲ့ transform လုပ်ကြပါတယ်။ အများစု က linear regression မှာ အသုံးဝင်ပါတယ်။ တချို့ ကို generalized linear models မှာလည်း သုံးလို့ ရပါတယ်။

1. Log Transformation (log(x) ဒါမှမဟုတ် log(y)) 
   အသုံးအများဆုံး တစ်ခုဖြစ်ပါတယ်။ Data က right-skewed (ညာဘက် အရမ်း ဆန့်ထွက်နေရင်)၊ ဒါမှမဟုတ် multiplicative relationship ရှိရင် (ဥပမာ ဝင်ငွေ နဲ့ သုံးစွဲမှု) သုံးလေ့ရှိပါတယ်။ ရလဒ်က ပိုပြီး linear ဖြစ်လာပြီး variance တည်ငြိမ်လာပါတယ်။ ဥပမာ အိမ်ဈေး ခန့်မှန်းရင် price ကို log ယူလိုက်ရင် အဆင်ပြေလေ့ရှိပါတယ်။ Zero ဒါမှမဟုတ် negative values ပါနေရင်
အသုံးမပြုသင့်ပါ။

2. Square Root Transformation (√x ဒါမှမဟုတ် √y) 
   Count data လို အပေါင်း တန်ဖိုး တွေ မှာ variance က mean နဲ့ အချိုးကျ တိုးနေရင် (Poisson-like) သုံးပါတယ်။ Log ထက် အနည်းငယ် သက်သာ ပြီး zero ပါရင်လည်း အဆင်ပြေပါတယ်။ ဥပမာ ရောဂါ ကို စစ်ဆေး အရေအတွက် မျိုးပေါ့။ Skewness အရမ်း ပြင်းရင် (log က ပိုကောင်း) မသုံးသင့်ပါ။

3. Square / Power Transformation (x² ဒါမှမဟုတ် x³) 
   ဆက်နွယ်မှု က curved ဖြစ်နေရင် (ဥပမာ diminishing returns) သုံးပါတယ်။ Polynomial regression မှာ အဓိက အသုံးပြုကြပါတယ်။ ညာဘက် ဆန့်ထွက်နေတဲ့ data ကို ပိုပြီး ညီမျှ လာအောင် လုပ်ပေးနိုင်ပါတယ်။ Overfitting မဖြစ်အောင် degree နည်းနည်း ပဲ သုံးရပါမယ်။

4. Reciprocal Transformation (1/x ဒါမှမဟုတ် 1/y) 
   ဆက်နွယ်မှု က hyperbolic ပုံစံ ဖြစ်နေရင် (တစ်ခု တိုးလာရင် တစ်ခု အရမ်း လျော့ကျသွားတာ) သုံးပါတယ်။ ဥပမာ အလုပ်သမား အရေအတွက် နဲ့ ထုတ်လုပ်မှု ကြား ဆက်နွယ်မှု မျိုး။ Variance ကြီးတဲ့ data မှာ လည်း အဆင်ပြေပါတယ်။Zero ပါနေရင် (division by zero) မသုံးသင့်ပါ။

5. Box-Cox Transformation 
   အကောင်းဆုံး power ကို အလိုအလျောက် ရှာပေးတဲ့ နည်း (λ တန်ဖိုး ရှာ)ဖြစ်ပါတယ်။ y^λ လို ပုံစံမျိုးပါ။ Positive data တွေမှာ အရမ်း အသုံးဝင်ပါတယ်။ Normality နဲ့ homoscedasticity ကို တပြိုင်နက် ပြင်ပေးနိုင်ပါတယ်။ (λ=0 ဆို log ဖြစ်သွားပါတယ်။)။ Negative values ပါနေရင် မသုံးသင့်ပါ။

6. Yeo-Johnson Transformation
   Box-Cox ရဲ့ အဆင့်မြှင့် ဗားရှင်းတစ်ခုဖြစ်ပါတယ်။ Negative values ပါရင်တောင် သုံးလို့ ရပါတယ်။ ခေတ်မီ ဆော့ဖ်ဝဲတွေ မှာ ပါဝင်ပါတယ်။

7. Normalization / Standardization (z-score ဒါမှမဟုတ် min-max scaling) 
   regression မှာ အရေးကြီးတယ်။ အထူးသဖြင့် regularized models (Ridge, Lasso) ဒါမှမဟုတ် gradient descent သုံးတဲ့ အခါ လိုအပ်ပါတယ်။ တန်ဖိုး အတိုင်းအတာ မတူတဲ့ feature တွေ ကို တူညီအောင် လုပ်ပေးနိုင်ပါတယ်။

8. Polynomial Features (x → x, x², x³ စသဖြင့် ဖန်တီးခြင်း) 
   Non-linear relationship ကို linear model နဲ့ ဖမ်းချင်ရင် သုံးပါတယ်။ ဥပမာ quadratic regression မှာ x² ထည့်တာမျိုး။ ဒါက feature engineering တစ်မျိုးပါပဲ။

9. Differencing (time series အတွက် အဓိက သုံးပါတယ်) 
   Trend ဒါမှမဟုတ် seasonality ရှိရင် y_t – y_{t-1} လို လုပ်နိုင်ပါတယ်။ Stationarity ရအောင် လုပ်ပေးပါတယ်။ Time series regression မှာ အသုံးများပါတယ်။

10. Arcsin / Arcsine Transformation (asin(√p)) 
    Proportion ဒါမှမဟုတ် percentage data (0 နဲ့ 1 ကြား) မှာ သုံးပါတယ်။ အထူးသဖြင့် binomial data ရဲ့ variance ကို stabilize လုပ်ပေးနိုင်ပါတယ်။ ဇီဝဗေဒ နဲ့ ဆေးပညာ data မှာ အသုံးပြုတာ များပါတယ်။

11. Logit Transformation (log(p/(1-p))) 
    Logistic regression မှာ အဓိက အသုံးပြုပါတယ်။ Probability ကို log-odds အဖြစ် ပြောင်းပေးပါတယ်။ Binary outcome အတွက် လိုအပ်တဲ့ အဆင့် တစ်ခု ဖြစ်ပါတယ်။ တချို့ က generalized linear model ရဲ့ link function အဖြစ် သတ်မှတ်ပါတယ်။

ဒီ ၁၁ နည်း က အသုံးအများဆုံး နဲ့ အရေးပါဆုံး တွေပဲ ဖြစ်ပါတယ်။ တကယ်လုပ်တဲ့ အခါ ဘယ်ဟာ အကောင်းဆုံး ဆိုတာ residual plot ကြည့်ပြီး ဆုံးဖြတ်ရပါတယ် ။ linearity ရှိလား၊ homoscedasticity ရှိလား၊ normality ရှိလား စစ်ရပါမယ်။ တချို့ အချိန်တွေမှာ Box-Cox ဒါမှမဟုတ် Yeo-Johnson လို automatic method တွေ သုံးရင် ပိုလွယ်ကူပါတယ်။

နပေတိုး


Discover more from naywinaung

Subscribe to get the latest posts sent to your email.

Leave a Reply

Your email address will not be published. Required fields are marked *

Related Post

ဒေတာအမျိုးအစားများဒေတာအမျိုးအစားများ

ဒစ်ဂျစ်တယ်ကမ္ဘာထဲက ဒေတာအမျိုးအစားတွေအကြောင်း မြန်မာရနံ့ လေးစွက်ပြီး ပွားကြည့်ရအောင်။ကိန်းပြည့်(integer) ဆိုတာ ဘုန်းကြီးကျောင်းက ပုတီးစေ့တွေလိုပါပဲ၊ တစ်လုံးခြင်း ရေတွက်ကြပါတယ်။ ၁၊ ၄၂၊ ၁၀၀၀ လို ကိန်းတွေပေါ့။ ကွဲအက်တာမရှိ၊ ပိုင်းဖြတ်လို့မရဘူး။ ရွှေတိဂုံဘုရားမှာ ဖယောင်းတိုင်ဘယ်နတိုင် မီးထွန်းမလဲ ရေတွက်တဲ့အခါ ဒီလိုကိန်းပြည့်တွေကို သုံးရပါတယ်။ပြီးတော့ ဒဿမကိန်း (float) ဆိုတာကတော့ ဧရာဝတီမြစ်ရေလို စီးလျက်ရှိတယ်။ ၃.၁၄ ဒါမှမဟုတ်

Cluster SamplingCluster Sampling

Cluster SamplingCluster Sampling ဆိုတာ လူအုပ်စုအကြီးကြီးကို လေ့လာချင်တဲ့အခါ သုံးတဲ့နည်းဖြစ်ပါတယ်။ ဒါပေမဲ့ လူတွေကို တစ်ယောက်ချင်းစီ မရွေးထုတ်ဘဲ အုပ်စုလိုက် ရွေးထုတ်တာကို Cluster Sampling လို့ခေါ်ပါတယ်။ အဲ့ဒီမှာ Cluster ဆိုတာက သဘာဝအလျောက် ဖြစ်နေတဲ့ အုပ်စုတွေကို ပြောတာ။ ဥပမာ… ကျောင်းတွေဆို အတန်းတွေက Cluster တွေပါပဲ။ ရွာတွေဆိုရင် အိမ်ထောင်စုတွေက

Degree of freedomDegree of freedom

degree of freedom အကြောင်း နားလည်သလောက် ကျွန်တော်လေးစားရတဲ့ ဆရာတွေက လာမေးထားတော့ နားလည်သလောက်လေး ပြန်ရေးပြတာပါ။ မှားချင်လည်း မှားနိုင်ပါတယ်။ ကျွန်တော်က လေ့လာနေဆဲပါ။ တကယ်လို့ ကျွန်တော် မှတ်ထားတာလေးတွေ မှန်နေရင်လည်း ဝမ်းသာရမှာ ဖြစ်သလို၊ မှားနေခဲ့ရင်လည်း ပြင်ဆင်ပေးခဲ့ကြပါခဗျ။ ပြန်ဖတ်ရမှာပေါ့။ ကျွန်တော်အတွက် ဘာဖြစ်ဖြစ် အကျိုးရှိပါတယ်။ စာရင်းအင်းပညာ မှာ degree of