在python中計(jì)算f-measure,Precision / Recall / F1 score

sklearn第三方庫可以幫助我們快速完成任務(wù),使用方法如下:

from sklearn.metrics import confusion_matrix
confusion_matrix(y_true, y_pred)
pred = multilayer_perceptron(x, weights, biases)
correct_prediction = tf.equal(tf.argmax(pred, 1), tf.argmax(y, 1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float"))

with tf.Session() as sess:
init = tf.initialize_all_variables()
sess.run(init)
for epoch in xrange(150):
        for i in xrange(total_batch):
                train_step.run(feed_dict = {x: train_arrays, y: train_labels})
                avg_cost += sess.run(cost, feed_dict={x: train_arrays, y: train_labels})/total_batch         
        if epoch % display_step == 0:
                print "Epoch:", '%04d' % (epoch+1), "cost=", "{:.9f}".format(avg_cost)

#metrics
y_p = tf.argmax(pred, 1)
val_accuracy, y_pred = sess.run([accuracy, y_p], feed_dict={x:test_arrays, y:test_label})

print("validation accuracy:", val_accuracy)
y_true = np.argmax(test_label,1)
print("Precision", sk.metrics.precision_score(y_true, y_pred))
print( "Recall", sk.metrics.recall_score(y_true, y_pred))
print( "f1_score", sk.metrics.f1_score(y_true, y_pred))
print( "confusion_matrix")
print( sk.metrics.confusion_matrix(y_true, y_pred))
fpr, tpr, tresholds = sk.metrics.roc_curve(y_true, y_pred)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,076評(píng)論 25 708
  • 漁夫和富翁的對(duì)話,不知道有多少人聽過這個(gè)寓言故事? 富翁勸漁夫每天努力多鋪一些魚,存下來的錢就可以讓他致富,然后就...
    Loricae閱讀 398評(píng)論 0 0
  • 我是一個(gè)平凡的人 知乎上有個(gè)帖子問:“你是在什么時(shí)候發(fā)現(xiàn)自己是個(gè)平凡人的?” 有人說,當(dāng)別人答一份試題要20分鐘而...
    飯飯的讀書筆記閱讀 391評(píng)論 0 0
  • 晶童閱讀 146評(píng)論 0 0
  • 為什么霧狀眉這么火 因?yàn)榭戳司拖胱觯?····· 網(wǎng)紅都做了霧狀眉 不得不承認(rèn),真的美! ····· 不信你看...
    李圣翔閱讀 430評(píng)論 0 0