「·文本分析」12多项式朴素贝叶斯算法对新闻分类
2020-02-02 本文已影响0人
林拂晓
1.fetch_newsgroups模块
sklearn.datasets.fetch_20newsgroups(data_home=None, subset=’train’, categories=None, shuffle=True, random_state=42, remove=(), download_if_missing=True)
(1)fetch_20newsgroups()方法作为新闻抓取器,用来导入新闻数据;
(2)参数:
①data_home : 默认为None,为数据集指定一个下载和缓存的文件夹。如果没有,所有scikit-learn数据都会存储在“~/scikit_learn_data”文件夹中。

②subset : 属性值有三种:train(训练集)、test(测试集)、all(前两者兼有),选择要加载的数据集。
③categories : None 或 字符串或unicode的集合。如果为None(默认),加载所有类别。如果不为None,则只加载类别名列表中的类别(其他类别被忽略)。
④remove : 可以是(' header ', ' footers ', ' quotes ')的任何子集。每一种文本都将从新闻组的帖子中被检测到和删除掉,以防止分类器在元数据上过度拟合。‘headers’删除的是新闻组标题,‘footers’删除的是帖子末尾类似于签名的部分,而 ‘quotes’ 删除的是似乎被其他帖子引用了的行。而需要注意的是:“header”遵循一个精确的标准;而其他的过滤器并不总是正确的。
2.多项式朴素贝叶斯文本分析



【注】precision,recall,f1-score,support作为模型评估的四个指标,后期会对四个指标进行详细解释。