NewsCategory

所属分类:聚类算法
开发工具:Python
文件大小:23KB
下载次数:0
上传日期:2022-05-02 07:31:27
上 传 者sh-1993
说明:  Chinese news classification based on TextCNN 基于TextCNN的中文新闻分类
(Chinese news classification based on TextCNN)

文件列表:
LICENSE (35149, 2022-05-02)
SavedModel (0, 2022-05-02)
data (0, 2022-05-02)
excel (0, 2022-05-02)
logs (0, 2022-05-02)
obj (0, 2022-05-02)
src (0, 2022-05-02)
src\Module.py (2736, 2022-05-02)
src\config.py (932, 2022-05-02)
src\forecast.py (1742, 2022-05-02)
src\loaddataset.py (1845, 2022-05-02)
src\objprocess.py (265, 2022-05-02)
src\run.py (1145, 2022-05-02)
src\test.py (198, 2022-05-02)
src\train.py (5008, 2022-05-02)
src\webtest.py (826, 2022-05-02)

# NewsCategory Chinese news classification based on TextCNN 基于TextCNN的中文新闻分类 数据结构大作业 # # 操作演示 # 4.1 命令及其含义 输入python run.py <指令>可以进行程序的功能调用,其中—help可以调出帮助界面(Figure 1)。 ![image](https://user-images.githubusercontent.com/41435573/1661***221-f9fa2337-5bb6-4900-a5dd-f4e70fb59d1c.png) -t或—task,任务,代表所要程序进行的任务,可以输入的范围在{train, test, webtest}之中。train表示进行模型训练,test表示进行测试,webtest表示使用带web GUI界面的测试工具。 -g或—gpu,使用GPU,代表程序在训练train或者测试test任务中是否使用GPU,输入范围在{0, 1}之中,1代表使用GPU,0代表不使用。 -e或—epoch,epoch数,代表训练轮数。 使用示范: python run.py -t train -g 1 -e 32 #进行训练,使用GPU,epoch为32 python run.py -t test -g 1 #进行测试,使用GPU python run.py -t webtest #进行测试,使用web GUI界面(默认使用GPU) # 4.2 文件用途解释 ![image](https://user-images.githubusercontent.com/41435573/1661***335-0596fbd9-fca9-4011-9bf4-cee2c2118f0f.png) data文件夹用于存放数据集,预训练词向量,停用词。 logs文件夹用于存储tensorboard的日志文件,用于程序开发的时候实现参数一定程度上的可视化。 obj文件夹用于存储加载完数据之后所生成的字典文件,用于将训练时生成的词表字典、标签字典在测试时使用。 SavedModel文件夹用于存储训练时生成的模型,每epoch保存一次。 src文件夹存放源码数据。 ![image](https://user-images.githubusercontent.com/41435573/1661***599-622c4aa1-f876-48ee-bd12-081ffd8061ac.png) 其中: config.py——配置文件,存储项目大部分的配置参数 forecast.py——预测类,集成了分类预测功能 loaddataset——加载数据,将数据集的数据从硬盘中加载到程序 Module.py——模型 objprocess——对象操作,保存对象到硬盘或从硬盘读取对象 run.py——导航页,项目主程序 test.py——测试 webtest——web GUI界面测试 train.py——训练 # 4.3 训练模型 # 4.3.1 使用默认配置训练 进入src目录,python run.py命令直接运行,若要设定运行模式,可见4.1命令及其含义 。 ![image](https://user-images.githubusercontent.com/41435573/1661***681-d741f134-30b8-4d7e-ace5-3889ce01f9d7.png) # 4.3.2 自定义训练 1. 停用词 设置位置:src/loaddataset.py 于jiebatokensize函数可以设置加载的停用词文件 ![image](https://user-images.githubusercontent.com/41435573/1661***730-030d7dcc-023f-4e89-9f79-24b46f405cb0.png) 2. 数据集 设置位置:src/loaddataset.py 于load函数中,可以设置加载的数据集(训练集、验证集、测试集) ![image](https://user-images.githubusercontent.com/41435573/1661***776-edeef919-8975-4b67-94de-939ed6b41681.png) 训练集的格式须为tsv,且是<标签> <新闻内容>顺序。 ![image](https://user-images.githubusercontent.com/41435573/1661***796-822b1428-d060-41db-a819-199b93ea359e.png) 3. 模型设置 设置位置:src/config.py 类初始化函数中带默认值的是可调参数,不带默认值的是利用训练过程中生成的数据进行赋值(Figure 8)。 模型中人为可调的参数及其含义: dropoutp——dropout层在训练中神经元失活的概率 filterlength——卷积层卷积核大小,[3 4 5]表示有3种不同大小的卷积核,大小分别是3*embedding_dimension、4*embedding_dimension、5*embedding_dimension filternumber——同一种卷积核的数量 learningrate——学习速率 ![image](https://user-images.githubusercontent.com/41435573/1661***818-508e21dc-12ce-44a5-8b40-269dafdba70f.png) # 4.4 测试 1. 使用命令行测试 进入src目录,python run.py -t test命令直接运行,若要设定运行模式,可见4.1命令及其含义 。在输入框输入所要进行测试的新闻内容便可以得到分类结果。 ![image](https://user-images.githubusercontent.com/41435573/1661***842-d2acc731-d247-46***-bb4f-8b5f63c59ed5.png) 2. 使用web GUI界面测试 进入src目录,python run.py -t webtest命令直接运行。 ![image](https://user-images.githubusercontent.com/41435573/1661***869-4aa15ea9-c3e9-48da-a4f1-ba341c94e4c1.png) 进入提示的局域网地址后,在文本框里面输入要进行预测的新闻,点击确认即可得到预测结果。 ![image](https://user-images.githubusercontent.com/41435573/1661***888-41a9534f-a5b5-4d6d-96ee-011b87bf949a.png)

近期下载者

相关文件


收藏者