रैखिक क्लासिफायरियर के लिए, बड़े गुणांक अधिक महत्वपूर्ण विशेषताओं का संकेत देते हैं?


15

मैं एक सॉफ्टवेयर इंजीनियर हूँ जो मशीन लर्निंग पर काम कर रहा है। मेरी समझ से, लीनियर रिग्रेशन (जैसे ओएलएस) और लीनियर क्लासिफिकेशन (जैसे लॉजिस्टिक रिग्रेशन और एसवीएम) प्रशिक्षित गुणांकों के बीच एक आंतरिक उत्पाद के आधार पर एक भविष्यवाणी करते हैं और फीचर वैरिएबल x :wएक्स

y^=(wएक्स)=(Σमैंwमैंएक्समैं)

मेरा प्रश्न है: मॉडल प्रशिक्षित होने के बाद (यानी, गुणांक बाद गणना की गई है), क्या यह मामला है कि गुणांक फीचर चर के लिए बड़ा होगा जो मॉडल के लिए और अधिक सटीक भविष्यवाणी करने के लिए अधिक महत्वपूर्ण हैं?wमैं

दूसरे शब्दों में, मैं पूछ रहा हूँ कि क्या गुणांकों के सापेक्ष परिमाण के लिए इस्तेमाल किया जा सकता सुविधा चयन सिर्फ गुणांक मूल्य द्वारा चर आदेश देने और उसके बाद उच्चतम गुणांक के साथ सुविधाओं का चयन करके? यदि यह दृष्टिकोण मान्य है, तो इसे फ़ीचर चयन (आवरण और फ़िल्टर विधियों के साथ, आदि) के लिए क्यों नहीं बताया गया है।

मेरे द्वारा यह पूछने का कारण यह है क्योंकि मैं एल 1 बनाम एल 2 नियमितीकरण पर चर्चा के दौरान आया था । एक धुंधला है जो कहता है:

अंतर्निहित सुविधा चयन को अक्सर एल 1-मानक की एक उपयोगी संपत्ति के रूप में उल्लेख किया जाता है, जो एल 2-मानक नहीं करता है। यह वास्तव में एल 1-मानदंड का एक परिणाम है, जो विरल गुणांक पैदा करता है (नीचे समझाया गया है)। मान लीजिए कि मॉडल में 100 गुणांक हैं, लेकिन उनमें से केवल 10 में गैर-शून्य गुणांक हैं, यह प्रभावी रूप से कह रहा है कि "अन्य 90 भविष्यवक्ता लक्ष्य मानों की भविष्यवाणी करने में बेकार हैं"।

लाइनों के बीच में पढ़ने से, मुझे लगता है कि यदि कोई गुणांक 0 के करीब है, तो उस गुणांक के साथ फीचर चर में थोड़ा पूर्वानुमानित शक्ति होनी चाहिए।

संपादित करें : मैं अपने संख्यात्मक चर के लिए z- स्केलिंग भी लागू कर रहा हूं।


1
ध्यान दें कि कोड अंतर्निहित LASSO (L1-standard) और रिज रिग्रेशन (L2-norm) विश्लेषण को पूर्व-विश्लेषण के पूर्ववर्ती वेरिएबल को मापना चाहिए, भले ही कोड फिर गुणांक को मूल चर में बदल दे। जो लोग पूर्व-पैमाने का उपयोग करते हैं, वे @josliber से उत्तर में बताई गई समस्याओं के साथ समाप्त नहीं होते हैं चाहे वे OLS, LASSO या रिज कर रहे हों।
एड्म

3
मुझे लगता है कि कुछ ध्यान देने योग्य बात है, जब आप इस बात पर विचार करते हैं कि वाक्यांश द्वारा व्यक्त करने की कोशिश कर रहे हैं "तो उस गुणांक के साथ फीचर चर में थोड़ी भविष्यवाणी की शक्ति होनी चाहिए", क्या आप वास्तव में इसका मतलब निकाल सकते हैं? हालांकि मुझे यह अनुभव हुआ है कि एक बहुभिन्नरूपी मॉडल में एक व्यक्तिगत चर की "भविष्य कहनेवाला शक्ति" की अवधारणा आम तौर पर वैचारिक नींव पर सहमत नहीं हुई है।
मैथ्यू ड्र्यू

4
मुझे लगता है कि इस तरह की सोच में त्रुटि यह है कि आप शायद एक चर मॉडल का उत्पादन करने के लिए सीमित नहीं हैं । यदि आप हैं, और आप सबसे अच्छी सटीकता के साथ एक मॉडल प्रदान करना चाहते हैं, तो उन्हें यकीन है, यह एक उचित बात है। यदि आप नहीं हैं, यानी यदि आप एक बहुभिन्नरूपी मॉडल का उत्पादन करने जा रहे हैं, तो, @EdM उत्तर के रूप में, चर महत्व की अवधारणा बहुत, बहुत फिसलन है, और एक दृढ़ वैचारिक नींव का अभाव है। यह बिल्कुल स्पष्ट नहीं है कि एक अविभाज्य मॉडल में भविष्य कहनेवाला शक्ति एक बहुभिन्नरूपी सेटिंग में प्रासंगिक के रूप में देखी जानी चाहिए।
मैथ्यू डॉरी

1
@MatthewDrury: मुझे यकीन नहीं है कि आप मल्टी-फीचर्स से बड़ी डील क्यों कर रहे हैं। "सुविधा चयन" (उदाहरण के लिए रैपर विधियों) का एक पूरा क्षेत्र मौजूद है; क्या आप यह सुझाव दे रहे हैं कि इस क्षेत्र में दृढ़ वैचारिक नींव का अभाव है?
stackoverflowuser2010

1
@ stackoverflowuser2010 याह, मैं शायद यहाँ अपनी राय में एक बाहरी हूँ, लेकिन यह मेरे दृष्टिकोण का एक सटीक वर्णन होगा।
मैथ्यू डॉरी

जवाबों:


24

हर्गिज नहीं। गुणांक का परिमाण सीधे चर के लिए चुने गए तराजू पर निर्भर करता है, जो कि कुछ हद तक मनमाना मॉडलिंग निर्णय है।

इसे देखने के लिए, एक रेखीय प्रतिगमन मॉडल पर विचार करें जो एक आईरिस की पंखुड़ी की चौड़ाई का अनुमान लगाता है (सेंटीमीटर में) इसकी पंखुड़ी की लंबाई (सेंटीमीटर में):

summary(lm(Petal.Width~Petal.Length, data=iris))
# Call:
# lm(formula = Petal.Width ~ Petal.Length, data = iris)
# 
# Residuals:
#      Min       1Q   Median       3Q      Max 
# -0.56515 -0.12358 -0.01898  0.13288  0.64272 
# 
# Coefficients:
#               Estimate Std. Error t value Pr(>|t|)    
# (Intercept)  -0.363076   0.039762  -9.131  4.7e-16 ***
# Petal.Length  0.415755   0.009582  43.387  < 2e-16 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 0.2065 on 148 degrees of freedom
# Multiple R-squared:  0.9271,  Adjusted R-squared:  0.9266 
# F-statistic:  1882 on 1 and 148 DF,  p-value: < 2.2e-16

हमारा मॉडल 0.9266 के एक समायोजित आर ^ 2 मूल्य को प्राप्त करता है और पेटे.लिफ्ट चर को गुणांक मान 0.415755 प्रदान करता है।

हालांकि, सेंटीमीटर में पेटल.लिफ्ट को परिभाषित करने का विकल्प काफी मनमाना था, और हम इसके बजाय मीटर में चर को परिभाषित कर सकते थे:

iris$Petal.Length.Meters <- iris$Petal.Length / 100
summary(lm(Petal.Width~Petal.Length.Meters, data=iris))
# Call:
# lm(formula = Petal.Width ~ Petal.Length.Meters, data = iris)
# 
# Residuals:
#      Min       1Q   Median       3Q      Max 
# -0.56515 -0.12358 -0.01898  0.13288  0.64272 
# 
# Coefficients:
#                     Estimate Std. Error t value Pr(>|t|)    
# (Intercept)         -0.36308    0.03976  -9.131  4.7e-16 ***
# Petal.Length.Meters 41.57554    0.95824  43.387  < 2e-16 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 0.2065 on 148 degrees of freedom
# Multiple R-squared:  0.9271,  Adjusted R-squared:  0.9266 
# F-statistic:  1882 on 1 and 148 DF,  p-value: < 2.2e-16

बेशक, यह वास्तव में किसी भी तरह से फिट किए गए मॉडल को प्रभावित नहीं करता है - हमने केवल पेटल.लोमिट्री को 100x बड़ा गुणांक दिया है। पेटर्स (41.57554) की तुलना में हमने पेटल.लिफ्ट (0.415755) किया। मॉडल के अन्य सभी गुण (समायोजित आर ^ 2, टी-आँकड़े, पी-मान, आदि) समान हैं।

आम तौर पर जब नियमित रूप से रैखिक मॉडल को फिट किया जाता है, तो सबसे पहले चयनित तराजू के आधार पर कुछ चर के अनुकूल होने से बचने के लिए पहले चर (उदाहरण के लिए, 0 और इकाई विचरण का मतलब) को सामान्य किया जाएगा।

मान लिया गया सामान्यीकृत डेटा

यहां तक ​​कि अगर आपने सभी चर को सामान्य किया था, तो उच्च गुणांक वाले चर अभी भी भविष्यवाणियों में उपयोगी नहीं हो सकते हैं क्योंकि स्वतंत्र चर शायद ही कभी निर्धारित होते हैं (कम विचरण होते हैं)। एक उदाहरण के रूप में, निर्भर चर Z और स्वतंत्र चर X और Y बाइनरी मान लेने वाले डेटासेट पर विचार करें

set.seed(144)
dat <- data.frame(X=rep(c(0, 1), each=50000),
                  Y=rep(c(0, 1), c(1000, 99000)))
dat$Z <- dat$X + 2*dat$Y + rnorm(100000)

निर्माण द्वारा, Y के लिए गुणांक लगभग X के लिए गुणांक से दोगुना होता है, जब दोनों रैखिक अभिव्यक्ति के माध्यम से Z की भविष्यवाणी करने के लिए उपयोग किए जाते हैं:

summary(lm(Z~X+Y, data=dat))
# Call:
# lm(formula = Z ~ X + Y, data = dat)
# 
# Residuals:
#     Min      1Q  Median      3Q     Max 
# -4.4991 -0.6749 -0.0056  0.6723  4.7342 
# 
# Coefficients:
#              Estimate Std. Error t value Pr(>|t|)    
# (Intercept) -0.094793   0.031598   -3.00   0.0027 ** 
# X            0.999435   0.006352  157.35   <2e-16 ***
# Y            2.099410   0.031919   65.77   <2e-16 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 0.9992 on 99997 degrees of freedom
# Multiple R-squared:  0.2394,  Adjusted R-squared:  0.2394 
# F-statistic: 1.574e+04 on 2 and 99997 DF,  p-value: < 2.2e-16

फिर भी, X, Y की तुलना में Z में भिन्नता के बारे में अधिक बताता है (X के साथ Z का अनुमान लगाने वाला रैखिक प्रतिगमन मॉडल R ^ 2 मान 0.2065 है, जबकि Y के साथ Z की भविष्यवाणी करने वाले रैखिक प्रतिगमन मॉडल का R ^ 2 मान 0.0511 है):

summary(lm(Z~X, data=dat))
# Call:
# lm(formula = Z ~ X, data = dat)
# 
# Residuals:
#     Min      1Q  Median      3Q     Max 
# -5.2587 -0.6759  0.0038  0.6842  4.7342 
# 
# Coefficients:
#             Estimate Std. Error t value Pr(>|t|)    
# (Intercept) 1.962629   0.004564   430.0   <2e-16 ***
# X           1.041424   0.006455   161.3   <2e-16 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 1.021 on 99998 degrees of freedom
# Multiple R-squared:  0.2065,  Adjusted R-squared:  0.2065 
# F-statistic: 2.603e+04 on 1 and 99998 DF,  p-value: < 2.2e-16

बनाम:

summary(lm(Z~Y, data=dat))
# Call:
# lm(formula = Z ~ Y, data = dat)
# 
# Residuals:
#     Min      1Q  Median      3Q     Max 
# -5.0038 -0.7638 -0.0007  0.7610  5.2288 
# 
# Coefficients:
#             Estimate Std. Error t value Pr(>|t|)    
# (Intercept) -0.09479    0.03529  -2.686  0.00724 ** 
# Y            2.60418    0.03547  73.416  < 2e-16 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 1.116 on 99998 degrees of freedom
# Multiple R-squared:  0.05114, Adjusted R-squared:  0.05113 
# F-statistic:  5390 on 1 and 99998 DF,  p-value: < 2.2e-16

मल्टी कोलिनियरिटी का मामला

एक तीसरा मामला जहां बड़े गुणांक मान हो सकते हैं धोखा दे सकता है चर के बीच महत्वपूर्ण बहु-कोलीनियरिटी के मामले में। एक उदाहरण के रूप में, एक डेटासेट पर विचार करें जहां एक्स और वाई अत्यधिक सहसंबद्ध हैं लेकिन डब्ल्यू अन्य दो से अत्यधिक सहसंबद्ध नहीं है; हम Z की भविष्यवाणी करने की कोशिश कर रहे हैं:

set.seed(144)
dat <- data.frame(W=rnorm(100000),
                  X=rnorm(100000))
dat$Y <- dat$X + rnorm(100000, 0, 0.001)
dat$Z <- 2*dat$W+10*dat$X-11*dat$Y + rnorm(100000)
cor(dat)
#              W             X             Y          Z
# W 1.000000e+00  5.191809e-05  5.200434e-05  0.8161636
# X 5.191809e-05  1.000000e+00  9.999995e-01 -0.4079183
# Y 5.200434e-05  9.999995e-01  1.000000e+00 -0.4079246
# Z 8.161636e-01 -4.079183e-01 -4.079246e-01  1.0000000

इन चर का बहुत अधिक मतलब (0) और भिन्नता (~ 1) है, और रैखिक प्रतिगमन एक्स (लगभग 15) और Y (मोटे तौर पर -16) की तुलना में डब्ल्यू के लिए बहुत अधिक गुणांक मान (पूर्ण मूल्य में) प्रदान करता है। लगभग 2):

summary(lm(Z~W+X+Y, data=dat))
# Call:
# lm(formula = Z ~ W + X + Y, data = dat)
# 
# Residuals:
#     Min      1Q  Median      3Q     Max 
# -4.1886 -0.6760  0.0026  0.6679  4.2232 
# 
# Coefficients:
#               Estimate Std. Error t value Pr(>|t|)    
# (Intercept)  1.831e-04  3.170e-03   0.058    0.954    
# W            2.001e+00  3.172e-03 630.811  < 2e-16 ***
# X            1.509e+01  3.177e+00   4.748 2.05e-06 ***
# Y           -1.609e+01  3.177e+00  -5.063 4.13e-07 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 1.002 on 99996 degrees of freedom
# Multiple R-squared:  0.8326,  Adjusted R-squared:  0.8326 
# F-statistic: 1.658e+05 on 3 and 99996 DF,  p-value: < 2.2e-16

फिर भी, मॉडल डब्ल्यू में तीन चर के बीच सबसे महत्वपूर्ण है: यदि आप डब्ल्यू को पूर्ण मॉडल से हटाते हैं, तो आर ^ 2 0.833 से 0.166 तक गिरता है, जबकि यदि आप एक्स या वाई आर 2 छोड़ते हैं तो लगभग अपरिवर्तित है।


1
(+1) मुझे लगता है कि यह एक अच्छा उत्तर है, और इस बिंदु को बनाया जाना चाहिए। दूसरी ओर, मेरा मानना ​​है कि जब चर को मानकीकृत किया गया है तब भी बहुत कुछ कहना है (और इसलिए, इकाई-कम), इसलिए कुछ और उत्तरों के लिए जगह है।
मैथ्यू ड्र्यू

जवाब के लिए धन्यवाद। जब आपका लेखन लंबा है, तो यह पूरी तरह से नहीं है क्योंकि आप छोटे सिंथेटिक डेटा से निष्कर्ष निकाल रहे हैं। इसके अलावा, आर ^ 2 रैखिक प्रतिगमन के लिए विशिष्ट है। मेरा मानना ​​है कि वर्गीकरण समस्याओं के लिए अधिक उपयुक्त त्रुटि मीट्रिक RMSE, या सटीकता / F1 है।
stackoverflowuser2010

1
लेकिन अगर आप अंतिम उदाहरण में डेटा को
मापते हैं

11

"फ़ीचर महत्व" एक बहुत ही फिसलनपूर्ण अवधारणा है जब सभी भविष्यवाणियों को एक सामान्य पैमाने पर समायोजित किया गया है (जो अपने आप में कई व्यावहारिक अनुप्रयोगों में एक गैर-तुच्छ समस्या है, जिसमें श्रेणीबद्ध चर या तिरछा वितरण शामिल है)। इसलिए यदि आप @josliber द्वारा उत्तर में बताई गई स्केलिंग समस्याओं या @dsaxton द्वारा उठाए गए कम-भविष्यवक्ता-विचरण समस्या से बचते हैं, तो भी आपके पास अतिरिक्त समस्याएं हैं।

उदाहरण के लिए, सुविधा महत्व का एक अधिक उपयोगी उपाय इसके गुणांक की अनुमानित त्रुटि के गुणांक का अनुपात हो सकता है। एक बड़ी अनुमानित त्रुटि के साथ एक उच्च गुणांक आवश्यक रूप से भविष्यवाणियों में सहायक नहीं होगा। इसलिए पूर्व परिमाण में भी गुणांक परिमाण, "महत्व" के लिए एक अच्छा मार्गदर्शक नहीं है।

फिर भी, एक भविष्यवक्ता महत्वपूर्ण हो सकता है, भले ही उसके गुणांक में त्रुटि के लिए परिमाण का अनुपात कम हो (यानी, यह "सांख्यिकीय रूप से महत्वपूर्ण" नहीं है)। रैखिक मॉडल एक साथ कई भविष्यवक्ता चर लेने की क्षमता प्रदान करते हैं, इसलिए एक मॉडल में "गैर-महत्वपूर्ण" भविष्यवक्ता सहित भविष्यवाणियों के संयुक्त संग्रह द्वारा प्रदान किए गए समग्र प्रदर्शन में सुधार कर सकते हैं।

इसके अलावा, "महत्वपूर्ण" भविष्यवक्ता चर का चयन करने के प्रयास विशेष डेटा नमूने पर अत्यधिक निर्भर करते हैं और अक्सर आगे के नमूनों के लिए अच्छी तरह से विस्तार नहीं करते हैं, खासकर अगर चर संबंधित हैं। आप एक ही डेटा सेट के कई बूटस्ट्रैप नमूनों पर फीचर चयन को दोहराकर अपने लिए इसे देख सकते हैं। फ्रैंक हरेल, इस उत्तर में बताते हैं कि कैसे rmsआर को अपने पैकेज का उपयोग रैंकिंग के लिए महत्व की सुविधा के लिए किया जाता है, और इस उत्तर में नोट किया जाता है कि रैंक के लिए विश्वास अंतराल प्राप्त करने के लिए बूटस्ट्रैप का उपयोग कैसे करें। बूटस्ट्रैपिंग उन लोगों के लिए सावधानी के रूप में काम कर सकता है, जो "फीचर महत्व" में बहुत अधिक महत्व रखते हैं।

@Amoeba द्वारा बताया गया लगभग 3 साल पहले का यह प्रश्न , कई प्रतिगमन मॉडल में विशेषता के महत्व के साथ कठिनाइयों के बारे में व्यापक विवरण में आता है।


अनुमानित त्रुटि का अनुपात। क्या इसे "मानकीकृत गुणांक" के रूप में जाना जाता है?
हैलोवर्ल्ड

@StudentT एक " मानकीकृत गुणांक " एक प्रतिगमन गुणांक है जब स्वतंत्र और आश्रित चर सभी को इकाई विचरण के लिए बढ़ाया गया है। इसमें गुणांक में अनुमानित त्रुटि के बारे में कोई जानकारी शामिल नहीं है। मैं जिस अनुपात का वर्णन करता हूं वह मेरे लिंक के पहले हिस्से में चर-महत्व के माप के रूप में हार्ले द्वारा इस्तेमाल किए गए वाल्ड स्टैटिस्टिक्स का वर्गमूल है।
EdM

6

बस पिछले उत्तर को जोड़ने के लिए, गुणांक स्वयं भी यह पकड़ने में विफल रहता है कि एक भविष्यवक्ता कितनी परिवर्तनशीलता प्रदर्शित करता है, जिसका एक बड़ा प्रभाव है कि यह भविष्यवाणियां करने में कितना उपयोगी है। सरल मॉडल पर विचार करें

(Yमैं)=α+βएक्समैं

एक्समैं(पी)पी0β

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.