亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

面臨 ValueError:目標是多類但平均 = 二進制

面臨 ValueError:目標是多類但平均 = 二進制

慕標琳琳 2021-06-03 09:05:15
我是 Python 和機器學習的新手。根據我的要求,我正在嘗試對我的數據集使用樸素貝葉斯算法。我能夠找出準確度,但試圖找出相同的精確度和召回率。但是,它拋出以下錯誤:   "choose another average setting." % y_type)ValueError: Target is multiclass but average='binary'. Please choose another average setting.任何人都可以建議我如何進行。我嘗試在精度和召回分數中使用平均 ='micro'。它沒有任何錯誤,但它在準確性、精確度和召回方面給出了相同的分數。我的數據集:train_data.csv:review,labelColors & clarity is superb,positiveSadly the picture is not nearly as clear or bright as my 40 inch Samsung,negative測試數據.csv:review,labelThe picture is clear and beautiful,positivePicture is not clear,negative
查看完整描述

1 回答

?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

您需要添加'average'參數。根據文檔

平均值:字符串,[無,'二進制'(默認),'微','宏','樣本','加權']

多類/多標簽目標需要此參數。如果None,則返回每個班級的分數。否則,這將確定對數據執行的平均類型:

做這個:

print("Precision Score : ",precision_score(y_test, y_pred, 

                                           pos_label='positive'

                                           average='micro'))

print("Recall Score : ",recall_score(y_test, y_pred, 

                                           pos_label='positive'

                                           average='micro'))

替換'micro'為上述任何一個選項,除了'binary'. 此外,在多類設置中,無需提供 ,'pos_label'因為它無論如何都會被忽略。


更新評論:


是的,它們可以相等。它在用戶指南中給出:


請注意,對于包含所有標簽的多類設置中的“微”平均將產生相同的精度、召回率和 F,而“加權”平均可能會產生不在精度和召回率之間的 F 分數。


查看完整回答
反對 回復 2021-06-15
  • 1 回答
  • 0 關注
  • 514 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號