资源简介
NLP小白入门——超全中文文本分类系统(train set & test set + stop word*4 + word2vec + TF-IDF + Naive Bayes)
代码片段和文件信息
# -*- coding: utf-8 -*-
import os
import jieba
import pickle
from sklearn import metrics
from sklearn.datasets.base import Bunch
from sklearn.feature_extraction.text import TfidfVectorizer TfidfTransformer
from sklearn.naive_bayes import MultinomialNB
from numpy import *
import io
class NLP_C:
def __init__(self):
self.corpus_path_train = “data/train/“
self.seg_path_train = “data/train_seg/“
self.wordbag_path_train = “data/train_word_bag/train_set.dat“
self.corpus_path_test = “data/test/“
self.seg_path_test = “data/test_seg/“
self.wordbag_path_test = “data/test_word_bag/test_set.dat“
self.stopword_path = “data/SiChuanDaXue.txt“
# self.stopword_path = “data/train_word_bag/hlt_stop_words.txt“
self.space_path_train = “data/train_word_bag/tfidfspace.dat“
self.space_path_test = “data/test_word_bag/testspace.dat“
def savefile(self savepath content):
# fp = open(savepath ‘w‘ encoding=‘gb2312‘ errors=‘ignore‘)
fp = io.open(savepath ‘w‘ encoding=‘gb2312‘ errors=‘ignore‘)
fp.write(content)
fp.close()
def readfile(self path):
# fp = open(path ‘r‘ encoding=‘gb2312‘ errors=‘ignore‘)
fp = io.open(path ‘r‘ encoding=‘gb2312‘ errors=‘ignore‘)
content = fp.read()
fp.close()
return content
def splitwords(self corpus_path seg_path):
catelist = os.listdir(corpus_path) # 获取corpus_path下的所有子目录
# 获取每个目录下所有的文件
for mydir in catelist:
class_path = corpus_path + mydir + “/“ # 拼出分类子目录的路径
seg_dir = seg_path + mydir + “/“ # 拼出分词后语料分类目录
if not os.path.exists(seg_dir): # 是否存在目录,如果没有创建
os.makedirs(seg_dir)
file_list = os.listdir(class_path) # 获取class_path下的所有文件
for file_path in file_list: # 遍历类别目录下文件
fullname = class_path + file_path # 拼出文件名全路径
content = self.readfile(fullname).strip() # 读取文件内容
content = content.replace(“\r\n“ ““) # 删除换行和多余的空格
content_seg = jieba.cut(content.strip()) # 为文件内容分词
self.savefile(seg_dir + file_path “ “.join(content_seg)) # 将处理后的文件保存到分词后语料目录
# Bunch类提供一种keyvalue的对象形式
# target_name:所有分类集名称列表
# label:每个文件的分类标签列表
# filenames:文件路径
# contents:分词后文件词向量形式
def word2vec(self seg_path wordbag_path):
bunch = Bunch(target_name=[] label=[] filenames=[] contents=[])
catelist = os.listdir(seg_path) # 获取seg_path下的所有子目录
bunch.target_name.extend(catelist)
# 获取每个目录下所有的文件
for mydir in catelist:
class_path = seg_path + mydir + “/“ # 拼出分类子目录的路径
file_list = os.listdir(class_path) # 获取class_path下的所有文件
for file_path in file_list: # 遍历类别目录下文件
fullname = class_path + file_path # 拼出文件名全路径
bunch.label.append(mydir)
bunch.filenames.append(fullname
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8738 2018-04-08 21:02 NLP_Test.py
目录 0 2018-04-08 20:56 data\
文件 3398 2018-02-12 07:53 data\ChineseStop.txt
文件 3823 2018-02-12 07:53 data\HaGongDa.txt
文件 5389 2018-02-12 07:53 data\SiChuanDaXue.txt
目录 0 2018-04-08 16:18 data\TanCorpMinTest\
目录 0 2018-04-08 16:18 data\TanCorpMinTest\人才\
文件 3320 2018-02-12 07:53 data\TanCorpMinTest\人才\103.txt
文件 4155 2018-02-12 07:53 data\TanCorpMinTest\人才\116.txt
文件 1712 2018-02-12 07:53 data\TanCorpMinTest\人才\129.txt
文件 1619 2018-02-12 07:53 data\TanCorpMinTest\人才\141.txt
文件 1583 2018-02-12 07:53 data\TanCorpMinTest\人才\154.txt
文件 8161 2018-02-12 07:53 data\TanCorpMinTest\人才\167.txt
文件 1394 2018-02-12 07:53 data\TanCorpMinTest\人才\18.txt
文件 1610 2018-02-12 07:53 data\TanCorpMinTest\人才\192.txt
文件 3382 2018-02-12 07:53 data\TanCorpMinTest\人才\204.txt
文件 3071 2018-02-12 07:53 data\TanCorpMinTest\人才\217.txt
文件 2260 2018-02-12 07:53 data\TanCorpMinTest\人才\23.txt
文件 2024 2018-02-12 07:53 data\TanCorpMinTest\人才\242.txt
文件 4243 2018-02-12 07:53 data\TanCorpMinTest\人才\255.txt
文件 2240 2018-02-12 07:53 data\TanCorpMinTest\人才\268.txt
文件 4484 2018-02-12 07:53 data\TanCorpMinTest\人才\280.txt
文件 3504 2018-02-12 07:53 data\TanCorpMinTest\人才\293.txt
文件 5240 2018-02-12 07:53 data\TanCorpMinTest\人才\305.txt
文件 1071 2018-02-12 07:53 data\TanCorpMinTest\人才\318.txt
文件 4464 2018-02-12 07:53 data\TanCorpMinTest\人才\330.txt
文件 16049 2018-02-12 07:53 data\TanCorpMinTest\人才\343.txt
文件 4722 2018-02-12 07:53 data\TanCorpMinTest\人才\356.txt
文件 6241 2018-02-12 07:53 data\TanCorpMinTest\人才\369.txt
文件 3281 2018-02-12 07:53 data\TanCorpMinTest\人才\381.txt
文件 2814 2018-02-12 07:53 data\TanCorpMinTest\人才\394.txt
............此处省略5751个文件信息
相关资源
- 山东大学数据科学实验三----NLP自然语
- Speech and Language Processing第三版
- 统计自然语言处理第二版 宗成庆 完整
- 《NLP汉语自然语言处理原理与实践》
- 多语自然语言处理 从原理到实践_扫描
- 自然语言处理 宗成庆老师的全套p
- 自然语言处理综论 中文 第2版 英文第
- 自然语言处理综论.Daniel.第二版.pdf
- 统计自然语言处理基础中文版+英文版
- 中文信息处理丛书:统计自然语言处理
- 国科大自然语言处理考试真题.pdf
- 统计自然语言处理
- Chinese Treebank 8.0
- 百万级词库--经过验证
- yelp13.rar
- 2017年Dan Jurafsky and James H. Martin经典力
- [高清]统计自然语言处理第二版宗庆成
- 大数据智能:互联网时代的机器学习
- 计算机自然语言处理_王晓龙,关毅
- 统计自然语言处理(第二版)宗成庆
- dataSet_word2vec训练词向量
- 《统计自然语言处理》 宗成庆第二版
- 国科大自然语言处理历年考题.zip
- 统计自然语言处理基础(中文版)高
- 统计自然语言处理第二版宗成庆
- 《文本上的算法深入浅出自然语言处
- 自然语言处理期末试卷2016年.docx
- 中国古诗词语料
- NLP汉语自然语言处理原理与实践.pdf
- 基于深度学习的自然语言处理 中文
评论
共有 条评论