首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用sklearn获得相同的精度和召回值(K)

使用sklearn获得相同的精度和召回值(K)
EN

Stack Overflow用户
提问于 2017-08-11 15:54:47
回答 1查看 3.9K关注 0票数 2

更新的问题:我这样做了,但是我在精度和回忆方面都得到了相同的结果,这是因为我使用的是average ='binary'

但是,当我使用average='macro'时,我会得到以下错误消息:

测试自定义评审messageC:\Python27\lib\site-packages\sklearn\metrics\classification.py:976: DeprecationWarning:从0.18版本开始,当使用平均精度/召回/F-得分时,二进制输入将不会被专门处理。请使用average=‘二进制’只报告正面的类性能。 “积极的课堂表现。”,DeprecationWarning)

以下是我更新的代码:

代码语言:javascript
运行
复制
path = 'opinions.tsv'
data = pd.read_table(path,header=None,skiprows=1,names=['Sentiment','Review'])
X = data.Review
y = data.Sentiment
#Using CountVectorizer to convert text into tokens/features
vect = CountVectorizer(stop_words='english', ngram_range = (1,1), max_df = .80, min_df = 4)
X_train, X_test, y_train, y_test = train_test_split(X,y,random_state=1, test_size= 0.2)
#Using training data to transform text into counts of features for each message
vect.fit(X_train)
X_train_dtm = vect.transform(X_train) 
X_test_dtm = vect.transform(X_test)




#Accuracy using KNN Model
KNN = KNeighborsClassifier(n_neighbors = 3)
KNN.fit(X_train_dtm, y_train)
y_pred = KNN.predict(X_test_dtm)
print('\nK Nearest Neighbors (NN = 3)')



#Naive Bayes Analysis
tokens_words = vect.get_feature_names()
print '\nAnalysis'
print'Accuracy Score: %f %%'% (metrics.accuracy_score(y_test,y_pred)*100)
print "Precision Score: %f%%" %  precision_score(y_test,y_pred, average='binary')
print "Recall Score: %f%%" %  recall_score(y_test,y_pred, average='binary')

通过使用上面的代码,我获得了相同的精度和召回值。

谢谢你回答我的问题,非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-11 16:32:07

要计算精密度召回度量,您应该从sklearn.metrics导入相应的方法。

如文档中所述,它们的参数是由真标签和预测标签组成的一维数组:

代码语言:javascript
运行
复制
from sklearn.metrics import precision_score
from sklearn.metrics import recall_score

y_true = [0, 1, 2, 0, 1, 2]
y_pred = [0, 2, 1, 0, 0, 1]

print('Calculating the metrics...')

recision_score(y_true, y_pred, average='macro')
>>> 0.22

recall_score(y_true, y_pred, average='macro')
>>> 0.33
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45639240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档