Skip to content

基于简单实现的多项式朴素贝叶斯的文本主题分类

License

Notifications You must be signed in to change notification settings

cudavailable/Naive-Bayes-Classifier-Demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Naive-Bayes-Classifier-Demo

基于一个自实现的多项式朴素贝叶斯分类器,在新闻文本数据集上训练后进行10折交叉验证评估

文件说明

  • dataset.py : 在指定的存放文本数据路径下,将按类别读取数据,用于训练和测试
  • model.py : 包含一个自实现的多项式朴素贝叶斯分类器类
  • train.py : 主要包括将输入文本数据进行训练前的处理,模型训练和10折交叉验证评估
  • logger.py : 包含一个日志类,仅用于同时向控制台和指定路径的日志文件输出实验关键记录
  • main.py : 预制超参数,启动训练函数
  • stopwords_cn.txt : 停用词文本
  • log : 包含输出日志log.txt

使用说明

  1. git clong 本仓库到本地;
  2. 下载THUCNews新闻数据集(http://thuctc.thunlp.org/)
  3. 将成功下载的数据解压后放到一个空间足够的位置,并检查解压后是否有乱码、其子文件夹是否有14类(数据集具体说明请参照前述官网的说明);
  4. 在main函数中调整参数,如:max_text_cnt代表每类新闻采用文本数,可酌情调整。但data_dir需确保是下载数据集的绝对路径;
  5. 运行main函数,可从控制台和log中观察训练评估状况。

我的配置

max_text_cnt = 500
max_features = 5000
(其他训练评估细节可参见log日志)

About

基于简单实现的多项式朴素贝叶斯的文本主题分类

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages