Select Language

AI社区

公开数据集

THUCTC 中文文本分类数据集

THUCTC 中文文本分类数据集

1.1G
2622 浏览
4 喜欢
8 次下载
0 条讨论
OCR/Text Detection Classification

THUCTC(THU Chinese Text Classification)是由清华大学自然语言处理实验室推出的中文文本分类工具包,能够自动高效地实现用户自......

数据结构 ? 1.1G

    Data Structure ?

    * 以上分析是由系统提取分析形成的结果,具体实际数据为准。

    README.md

    THUCTC(THU Chinese Text Classification)是由清华大学自然语言处理实验室推出的中文文本分类工具包,能够自动高效地实现用户自定义的文本分类语料的训练、评测、分类功能。文本分类通常包括特征选取、特征降维、分类模型学习三个步骤。如何选取合适的文本特征并进行降维,是中文文本分类的挑战性问题。我组根据多年在中文文本分类的研究经验,在THUCTC中选取二字串bigram作为特征单元,特征降维方法为Chi-square,权重计算方法为tfidf,分类模型使用的是LibSVM或LibLinear。THUCTC对于开放领域的长文本具有良好的普适性,不依赖于任何中文分词工具的性能,具有准确率高、测试速度快的优点。

    使用方法

    我们提供了两种方式运行工具包:

    1. 使用java开发工具,例如eclipse,将包括lib\THUCTC_java_v1.jar在内的lib文件夹下的包导入自己的工程中,仿照Demo.java程序调用函数即可。

    2. 使用根目录下的THUCTC_java_v1_run.jar运行工具包。

      使用命令 java -jar THUCTC_java_v1_run.jar + 程序参数

    运行参数

    [-c CATEGORY_LIST_FILE_PATH] 从文件中读入类别信息。该文件中每行包含且仅包含一个类别名称。
    [-train TRAIN_PATH] 进行训练,并设置训练语料文件夹路径。该文件夹下每个子文件夹的名称都对应一个类别名称,内含属于该类别的训练语料。若不设置,则不进行训练。
    [-test eval_PATH] 进行评测,并设置评测语料文件夹路径。该文件夹下每个子文件夹的名称都对应一个类别名称,内含属于该类别的评测语料。若不设置,则不进行评测。也可以使用-eval。
    [-classify FILE_PATH] 对一个文件进行分类。
    [-n topN] 设置返回候选分类数,按得分大小排序。默认为1,即只返回最可能的分类。
    [-svm libsvm or liblinear] 选择使用libsvm还是liblinear进行训练和测试,默认使用liblinear。
    [-l LOAD_MODEL_PATH] 设置读取模型路径。
    [-s SAVE_MODEL_PATH] 设置保存模型路径。
    [-f FEATURE_SIZE] 设置保留特征数目,默认为5000。
    [-d1 RATIO] 设置训练集占总文件数比例,默认为0.8。
    [-d2 RATIO] 设置测试集占总文件数比例,默认为0.2。
    [-e ENCODING] 设置训练及测试文件编码,默认为UTF-8。
    [-filter SUFFIX] 设置文件后缀过滤。例如设置“-filter .txt”,则训练和测试时仅考虑文件名后缀为.txt的文件

    样例程序

    我们随工具包提供了一个调用THUCTC的样例代码Demo.java,其中实现了三种功能:

    1. 对文本进行训练并测试(runTrainAndTest);

    2. 读取已经训练好的模型,对文件进行分类(runLoadModelAndUse);

    3. 按照自己的想法添加训练文件,训练模型(AddFilesManuallyAndTrain);

    BasicTextClassifier类接口说明

    BasicTextClassifier 是系统的入口类,提供多种设置接口供使用者调用。利用此入口类可以从文件中读入别信息、设置训练语料路径、设置训练参数以及模型保存路径等。

    其中常用的类成员函数包括:
    public void Init(String[] args)
    功能:输入运行参数,初始化系统。
    public void runAsBigramChineseTextClassifier()
    功能:根据参数,运行系统。
    public boolean loadCategoryListFromFile(String filePath)
    功能:从文件中获取分类列表,等同于参数-c filePath
    public boolean loadCategoryListFromFolder(String folder)
    功能:从文件夹中获取分类列表
    public void addTrainingText(String category, String filename)
    功能:给定类别,添加训练文本
    public void addfiles(String filename)
    功能:根据训练文件所在的文件夹名称,自动判别类别并加入训练,等同于参数-train filename
    public ClassifyResult[] classifyFile(String filepath, int topN)
    功能:对一个文件进行分类,返回前 topN 个分类结果。如果输入的 filepath 是文件夹,则只会在 Console 中打印每个子文件的分类结果,返回值是空数组,等同于参数-classify filepath -n topN
    public ClassifyResult[] classifyText(String text, int topN)
    功能:对一个文本进行分类,返回前 topN 个分类结果
    public void testfiles(String filename)
    功能:对文件进行自动分类测试,等同于参数-test filename
    public double getPrecision()
    功能:获得测试准确率

    中文文本分类数据集THUCNews

    THUCNews是根据新浪新闻RSS订阅频道2005~2011年间的历史数据筛选过滤生成,包含74万篇新闻文档(2.19 GB),均为UTF-8纯文本格式。我们在原始新浪新闻分类体系的基础上,重新整合划分出14个候选分类类别:财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏、娱乐。使用THUCTC工具包在此数据集上进行评测,准确率可以达到88.6%。

    测试结果

    文本分类的性能评价有多种指标,其中主流的文本分类评价指标包括准确率、召回率、F-measure、微平均与宏平均等。其中,微平均指所有样本的测试结果的算数平均值,宏平均指所有类别的测试结果的算数平均值。我们的测试也主要对这些指标进行测试。

    我们选取上节介绍的数据集进行测试,测试时使用以下参数组合(-d1 -d2),(-f):

    • -d1 0.7 -d2 0.3 -f 5000 微平均为最优

      类别正确率召回率F-measure
      体育0.9790.9900.985
      娱乐0.9460.9580.952
      家居0.8640.8320.848
      彩票0.8130.7570.779
      房产0.9730.9720.973
      教育0.9110.8790.895
      时尚0.7460.8740.805
      时政0.7800.9010.836
      星座0.8160.5160.632
      游戏0.9220.5940.707
      社会0.8360.8200.828
      科技0.8500.9210.884
      股票0.8950.8330.863
      财经0.7720.6850.726
      宏平均0.8610.8230.842
      微平均0.884

    • -d1 0.8 -d2 0.2 -f 20000 宏平均为最优

      类别正确率召回率F-measure
      体育0.9790.9860.983
      娱乐0.9360.9660.951
      家居0.8710.8830.877
      彩票0.9670.8620.911
      房产0.9570.9530.955
      教育0.8870.8500.868
      时尚0.8680.8810.875
      时政0.7640.8680.813
      星座0.9740.6180.756
      游戏0.9220.5360.678
      社会0.7960.8020.799
      科技0.8450.8820.863
      股票0.8580.8540.856
      财经0.7790.6560.713
      宏平均0.8860.8290.856
      微平均0.875

    相关论文

    • Jingyang Li, Maosong Sun. Scalable Term Selection for Text Categorization. Proc. of the 2007 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning (EMNLP-CoNLL), Prague, Czech Republic, 2007, pp. 774-782.

    • Jingyang Li, Maosong Sun, Xian Zhang. A Comparison and Semi-Quantitative Analysis of Words and Character-Bigrams as Features in Chinese Text Categorization. Proc. of the 2006 Joint Conference of the International Committee on Computational Linguistics and the Association for Computational Linguistics (COLING-ACL 2006), Sydney, Australia, 2006, pp. 545-552.

    作者

    Maosong Sun(孙茂松,导师),Jingyang Li(李景阳,博士生),Zhipeng Guo(郭志芃,本科生),Yu Zhao(赵宇,博士生),Yabin Zheng(郑亚斌,博士生),Xiance Si(司宪策,博士生),Zhiyuan Liu(刘知远,助理教授).

    使用者如有任何问题、建议和意见,欢迎发邮件至 thunlp@gmail.com 。

    ×

    帕依提提提温馨提示

    该数据集正在整理中,为您准备了其他渠道,请您使用

    注:部分数据正在处理中,未能直接提供下载,还请大家理解和支持。
    暂无相关内容。
    暂无相关内容。
    • 分享你的想法
    去分享你的想法~~

    全部内容

      欢迎交流分享
      开始分享您的观点和意见,和大家一起交流分享.
    所需积分:10 去赚积分?
    • 2622浏览
    • 8下载
    • 4点赞
    • 收藏
    • 分享