2012-02-01 23 views
6
  • के आधार पर मैं एक रसद प्रतिगमन मॉडल फिट और का उपयोग कर मॉडल प्रशिक्षण डाटासेट के आधार पर प्रशिक्षित निम्नलिखित
import scikits as sklearn 
from sklearn.linear_model import LogisticRegression 
lr = LogisticRegression(C=0.1, penalty='l1') 
model = lr.fit(training[:,0:-1], training[:,-1) 
  • मेरे पास एक क्रॉस सत्यापन डेटासेट है जिसमें इनपुट मैट्रिक्स में जुड़े एक लेबल शामिल हैं और
के रूप में उपयोग किया जा सकता है 0

सीवी [: - 1]SciPy/Numpy/scikits - की गणना परिशुद्धता/याद स्कोर दो सरणियों

  • मैं प्रशिक्षित मॉडल जो मुझे 0s और 1s की सूची देता है भविष्यवाणी

के आधार पर के खिलाफ अपने क्रॉस सत्यापन डाटासेट चलाने cv_predict = model.predict (सीवी [:, 0: -1])

प्रश्न

मैं सटीक गणना और आकस्मिक लेबल और अनुमानित लेबल के आधार पर स्कोर को याद करना चाहता हूं। क्या numpy/scipy/scikits का उपयोग कर ऐसा करने के लिए एक मानक तरीका है?

धन्यवाद

उत्तर

21

हाँ वहाँ रहे हैं, दस्तावेज़ देखें:

>>> from sklearn.metrics import classification_report 
>>> from sklearn.linear_model import SGDClassifier 
>>> from sklearn.datasets import load_digits 

>>> digits = load_digits() 
>>> n_samples, n_features = digits.data.shape 
>>> n_split = n_samples/2 

>>> clf = SGDClassifier().fit(digits.data[:n_split], digits.target[:n_split]) 

>>> predictions = clf.predict(digits.data[n_split:]) 
>>> expected = digits.target[n_split:] 

>>> print classification_report(expected, predictions) 
      precision recall f1-score support 

      0  0.90  0.98  0.93  88 
      1  0.81  0.69  0.75  91 
      2  0.94  0.98  0.96  86 
      3  0.94  0.85  0.89  91 
      4  0.90  0.93  0.91  92 
      5  0.92  0.92  0.92  91 
      6  0.92  0.97  0.94  91 
      7  1.00  0.85  0.92  89 
      8  0.71  0.89  0.79  88 
      9  0.89  0.83  0.86  92 

avg/total  0.89  0.89  0.89  899 
+0

इस भयानक है, तो आप @ogrisel धन्यवाद: http://scikit-learn.org/stable/modules/classes.html#classification-metrics

तुम भी sklearn.metrics.classification_report उपयोगिता पर एक नजर है चाहिए – daydreamer

संबंधित मुद्दे