• 大小: 1.85MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-11-07
  • 语言: 其他
  • 标签: 文本分类  

资源简介

TextClassify文本分类系统适用于中文,英文文本分类。 包括各个文本的关键词输出,可以控制关键词输出个数,也可以对关键词加入黑名单和白名单。 关于TextClassify文本分类系统的改进: 改进jieba中文分词词典 改进黑名单:增加停用词 改进白名单:增加专业词 在TextProcess改进每一类text至多选FileInFolder个:理论上越多越好 deleteN的选取:可以优化 特征词的长度限定:unicode不过长,不过短 特征词词典dict_size的选取:可以优化 特征的改进 多分类结合的算法改进

资源截图

代码片段和文件信息

__author__ = ‘LiNing‘  
#coding: utf-8
import os
import sys
import time
from sys import exit
from os import listdir
from os import makedirs
from os import remove
from os.path import isdir
from os.path import exists
from os.path import join
from os.path import split
from shutil import copy
from shutil import rmtree
from sklearn import metrics
import numpy as np
import pylab as pl
import nltk
import math

from TextProcess import TextRmSame
from TextProcess import TextRename
from TextProcess import MakeStopWordsList
from TextProcess import TextProcessing
from TextProcess import MakeAllWordsList
from TextProcess import MakeFeatureWordsDict

from TextFeature import TextBool
from TextFeature import ComputeTf
from TextFeature import ComputeTfIdf
from TextFeature import ExtractTags

from TextClassify import TextClassifier
from TextClassify import TextClassifier_nltk
from TextClassify import Vote

from TextEvaluation import calculate_result

##import scipy.io as sio
##sio.savemat(‘file.mat‘ dict)
##data = sio.loadmat(‘file.mat‘)



if __name__ == ‘__main__‘:
    ##参数设定
    lag = “chs“ #chs or eng  
    Test = “False“ #True or False
    GenerateLogs = “False“ #True or False
    GenerateKeywords = “False“ #True or False
    GenerateFolders = “True“ #True or False 

    
    ##生成results.log文件
    if GenerateLogs == “True“:
#sys.stdout = open(‘results.log‘ ‘a‘) #追加模式
sys.stdout = open(‘results.log‘ ‘wb‘)    
pass
    
    starttime = time.clock() #开始时间
    print “start“
    
    
    ##训练文本预处理
    ##Wing IDE没有输入参数,所以才会出现list index out of range
    ##raw_train_container_path = sys.argv[1] #datas\\train_raw
    #train_container_path = sys.argv[1] #datas\\train 
    #test_container_path = sys.argv[2] #datas\\test or datas\\unknown 
    #训练集
    raw_train_container_path = “datas\\train_raw“
    train_container_path = “datas\\train“ 
    #中断程序条件运行
    (a b) = split(train_container_path)
    error_files_path = join(a “errorfiles“)     
    if exists(error_files_path):
rmtree(error_files_path) 
    else:
TextRmSame(raw_train_container_path train_container_path) #remove the same files
#TextRename(raw_train_container_path train_container_path) #rename the filename
pass
    #测试集
    if Test == “True“:
test_container_path = “datas\\test“
    else:
test_container_path = “datas\\unknown“
    #停用词
    stopwords_file = “stopwords.txt“
    stopwords_list = MakeStopWordsList(stopwords_file)

    
    ##文本信息提取,若生成errorfiles文件夹则需重新运TextProcessing
    ##(train_data train_filenames train_target train_target_names) = TextProcessing(train_container_path lag ‘True‘ stopwords_list) 
    (train_data train_filenames train_target train_target_names) = TextProcessing(train_container_path lag ‘True‘) 
    if Test == “True“:
##(test_data test_filenames test_target test_target_names) = TextProcessing(test_container_path lag ‘True‘ stopwords_list) 
(test_data te

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件     5420898  2014-05-12 14:08  文本分类系统\jieba_dict.txt
     文件       10701  2014-06-17 10:47  文本分类系统\Main.py
     文件        9839  2014-06-13 15:44  文本分类系统\stopwords.txt
     文件        3398  2014-06-16 16:00  文本分类系统\TextClassify.pyc
     文件         867  2014-06-16 16:00  文本分类系统\TextEvaluation.pyc
     文件        2564  2014-06-16 16:00  文本分类系统\TextFeature.pyc
     文件        6895  2014-06-17 10:24  文本分类系统\TextProcess.pyc

评论

共有 条评论