tf-idf模型评估结果的问题

问题描述 投票:0回答:0
#Build machine learning model
# 1- Multinomunal Naive Bayes for Bigram&Trigram:
mnb_tf_bigram=MultinomialNB()
mnb_tf_bigram.fit(tfidf_train_2, y_train)
mnb_tf_trigram=MultinomialNB()
mnb_tf_trigram.fit(tfidf_train_3,y_train)

#passive aggressive classifire for Bigram&Trigram:
pass_tf_bigram=PassiveAggressiveClassifier()
pass_tf_bigram.fit(tfidf_train_2,y_train)
pass_tf_trigram=PassiveAggressiveClassifier()
pass_tf_trigram.fit(tfidf_train_3,y_train)

pred_mnb3= mnb_tf_trigram.predict(tfidf_test_3)     
pred_pass2 = pass_tf_bigram.predict(tfidf_test_2)
pred_pass3= pass_tf_trigram.predict(tfidf_test_3)

models = {
    'Multinominal Naive Bayes-Trigram' : pred_mnb3,
    'Passive Aggressive-Bigram' : pred_pass2,
    'passive Aggressive-Trigram' : pred_pass3
}

models= pd.DataFrame(models)
for column in models:
        acc= accuracy_score(y_test,models[column])
        prec= precision_score(y_test,models[column])
        rec= recall_score (y_test,models[column])
        f1= f1_score (y_test,models[column])
        roc= roc_auc_score (y_test,models[column])
        results = pd.DataFrame ([[column, acc,prec,rec,f1,roc]], 
                                columns = ['Model','Accuracy', 'Precision','Sensitivity', 'F1-score','ROC'])
        model_results = model_results.append(results, ignore_index = True)

model_results

enter image description here

你好,我试图评估两个模型,分别安装在三元组和二元组 TFIDF 上,这两个模型是多项式和被动攻击性的,我的结果与参考形式不同我不知道问题出在哪里,尽管使用的数据集是相同的,参考结果的准确度约为 0.7,而我的准确度约为 0.5!?每次重新运行是否会影响值(我没有这样做,只是好奇的问题)?我是这方面的初学者,我需要帮助

evaluation tf-idf
© www.soinside.com 2019 - 2024. All rights reserved.