Scipy / Numpy / scikits - calculation of accuracy / restoration indicators based on two arrays

  • I approach the logistic regression model and train the model based on a set of training materials using the following
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) 
  • I have a cross-validation dataset that contains labels associated with the input matrix and can be accessed as

resume [:, - 1]

  • I run my dataset to check cross-references against a trained model that returns me a list of 0s and 1s based on the prediction

cv_predict = model.predict (cv [:, 0: -1])

Question

I want to calculate accuracy and score based on active letters and predicted tags. Is there a standard method for this using numpy / scipy / scikits?

thanks

+6
source share
1 answer

Yes, see the documentation: http://scikit-learn.org/stable/modules/classes.html#classification-metrics

You should also look at sklearn.metrics.classification_report utility:

 >>> 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 
+21
source

Source: https://habr.com/ru/post/907367/


All Articles