मल्टी-क्लास लॉजिस्टिक रिग्रेशन

Python में Linear Classifiers

Michael (Mike) Gelbart

Instructor, The University of British Columbia

वन-वर्सस-रेस्ट से बाइनरी क्लासिफायर जोड़ना

lr0.fit(X, y==0)

lr1.fit(X, y==1)

lr2.fit(X, y==2)
# get raw model output
lr0.decision_function(X)[0]
6.124
lr1.decision_function(X)[0]
-5.429
lr2.decision_function(X)[0]
-7.532
lr = LogisticRegression(multi_class='ovr')
lr.fit(X, y)

lr.predict(X)[0]
0
Python में Linear Classifiers

One-vs-rest:

  • हर क्लास के लिए एक बाइनरी क्लासिफायर फिट करें
  • सभी से प्रेडिक्ट करें, सबसे बड़ा आउटपुट लें
  • pro: सरल, मॉड्यूलर
  • con: सीधे एक्युरेसी ऑप्टिमाइज़ नहीं करता
  • SVMs में भी सामान्य
  • probabilities दे सकता है

"Multinomial" या "softmax":

  • सभी क्लासेज़ के लिए एक ही क्लासिफायर फिट करें
  • प्रेडिक्शन सीधे बेस्ट क्लास देता है
  • con: ज्यादा जटिल, नया कोड चाहिए
  • pro: समस्या को सीधे हल करता है
  • SVMs में संभव, पर कम आम
  • probabilities दे सकता है
Python में Linear Classifiers

मल्टी-क्लास के लिए मॉडल कोएफिशिएंट्स

lr_ovr = LogisticRegression(multi_class='ovr') 

lr_ovr.fit(X,y)

lr_ovr.coef_.shape
(3,13)
lr_ovr.intercept_.shape
(3,)
lr_mn = LogisticRegression(multi_class="multinomial")
lr_mn.fit(X,y)

lr_mn.coef_.shape
(3,13)
lr_mn.intercept_.shape
(3,)
Python में Linear Classifiers

अभ्यास करते हैं!

Python में Linear Classifiers

Preparing Video For Download...