python人工智能——机器学习——分类算法-朴素贝叶斯算法对新闻进行分类案例
生活随笔
收集整理的這篇文章主要介紹了
python人工智能——机器学习——分类算法-朴素贝叶斯算法对新闻进行分类案例
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
樸素貝葉斯案例流程
1、加載20類新聞數據,并進行分割
2、生成文章特征詞
3、樸素貝葉斯estimator流程進行預估
代碼
from sklearn.datasets import fetch_20newsgroups from sklearn.model_selection import train_test_split from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.naive_bayes import MultinomialNBdef naviebayes():"""樸素貝葉斯進行文本分類:return: None"""news = fetch_20newsgroups(subset='all')# 進行數據分割x_train, x_test, y_train, y_test = train_test_split(news.data, news.target, test_size=0.25)# 對數據集進行特征抽取tf = TfidfVectorizer()# 以訓練集當中的詞的列表進行每篇文章重要性統(tǒng)計x_train = tf.fit_transform(x_train)print(tf.get_feature_names())x_test = tf.transform(x_test)# 進行樸素貝葉斯算法的預測mlt = MultinomialNB(alpha=1.0)print(x_train.toarray())mlt.fit(x_train, y_train)y_predict = mlt.predict(x_test)print("預測的文章類別為:", y_predict)# 得出準確率print("準確率為:", mlt.score(x_test, y_test))print("每個類別的精確率和召回率:", classification_report(y_test, y_predict, target_names=news.target_names))return Noneif __name__=="__main__":naviebayes()P:
關于sklearn.datasets.fetch_20newsgroups的下載速度極慢的解決
https://segmentfault.com/a/1190000016498146?utm_source=tag-newest
總結
以上是生活随笔為你收集整理的python人工智能——机器学习——分类算法-朴素贝叶斯算法对新闻进行分类案例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python人工智能——机器学习——分类
- 下一篇: python人工智能——机器学习——模型