资源简介
有源码及数据集,资源描述:基于TextRank、TF-IDF、LSI、LDA模型的关键词提取,实验数据为人民网的新闻,计算不同模型提取出的关键字的相似度
代码片段和文件信息
# -*- coding: utf-8 -*-
import math
import jieba
import jieba.posseg as psg
from gensim import corpora models
from jieba import analyse
import functools
import os
import numpy as np
import gensim.models as g
# 停用词表加载方法
def get_stopword_list():
# 停用词表存储路径,每一行为一个词,按行读取进行加载
# 进行编码转换确保匹配准确率
stop_word_path = ‘./stopword.txt‘
stopword_list = [sw.replace(‘\n‘ ‘‘) for sw in open(stop_word_pathencoding=“utf-8“).readlines()]
return stopword_list
# 分词方法,调用结巴接口
def seg_to_list(sentence pos=False):
if not pos:
# 不进行词性标注的分词方法
seg_list = jieba.cut(sentence)
else:
# 进行词性标注的分词方法
seg_list = psg.cut(sentence)
return seg_list
# 去除干扰词
def word_filter(seg_list pos=False):
stopword_list = get_stopword_list()
filter_list = []
# 根据POS参数选择是否词性过滤
## 不进行词性过滤,则将词性都标记为n,表示全部保留
for seg in seg_list:
if not pos:
word = seg
flag = ‘n‘
else:
word = seg.word
flag = seg.flag
if not flag.startswith(‘n‘):
continue
# 过滤停用词表中的词,以及长度为<2的词
if not word in stopword_list and len(word) > 1:
filter_list.append(word)
return filter_list
# 数据加载,pos为是否词性标注的参数,corpus_path为数据集路径
def load_data(word_listpos=False):
# 调用上面方式对数据集进行处理,处理后的每条数据仅保留非干扰词
content = word_list.strip()
seg_list = seg_to_list(content pos)
filter_list = word_filter(seg_list pos)
return filter_list
# idf值统计方法
def train_idf(doc_list):
idf_dic = {}
# 总文档数
tt_count = len(doc_list)
# 每个词出现的文档数
for doc in doc_list:
for word in set(doc):
idf_dic[word] = idf_dic.get(word 0.0) + 1.0
# 按公式转换为idf值,分母加1进行平滑处理
for k v in idf_dic.items():
idf_dic[k] = math.log(tt_count / (1.0 + v))
# 对于没有在字典中的词,默认其仅在一个文档出现,得到默认idf值
default_idf = math.log(tt_count / (1.0))
return idf_dic default_idf
# 排序函数,用于topK关键词的按值排序
def cmp(e1 e2):
import numpy as np
res = np.sign(e1[1] - e2[1])
if res != 0:
return res
else:
a = e1[0] + e2[0]
b = e2[0] + e1[0]
if a > b:
return 1
elif a == b:
return 0
else:
return -1
# TF-IDF类
class TfIdf(object):
# 四个参数分别是:训练好的idf字典,处理后的待提取文本,关键词数量
def __init__(selfidf_dic default_idf word_listkeyword_num):
self.word_list = word_list
self.idf_dic self.default_idf = idf_dic default_idf
self.keyword_num = keyword_num
# 统计tf值
def get_tf_dic(selfdoc):
tf_dic = {}
for word in doc: #某个单词在一个文档中出现的次数
tf_dic[word] = tf_dic.get(word 0.0) + 1.0
for word in set(doc):
tf_dic[word]=tf_dic.get(word)/len(doc) #词频
return tf_dic
# 按公式计算tf-idf
def get_tfidf(self):
for doc in self.word_list:
tfidf_dic = {}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 11346 2019-04-25 22:10 实验一\KeywordExtract.py
文件 9482 2019-04-25 22:08 实验一\number.txt
文件 6038 2018-08-17 16:17 实验一\stopword.txt
文件 3040 2019-04-25 13:02 实验一\人民网-粤经济\30059_深圳深化商事制度改革再推4条措施.txt
文件 6445 2019-04-25 13:02 实验一\人民网-粤经济\30060_以海关为突破口广东可扩大与欧盟合作.txt
文件 2872 2019-04-25 13:02 实验一\人民网-粤经济\30061_2018粤港经济技术贸易合作交流会在香港举行.txt
文件 1917 2019-04-25 13:02 实验一\人民网-粤经济\30062_广东荔枝丰收大量上市上月鲜果价格略降.txt
文件 2420 2019-04-25 13:02 实验一\人民网-粤经济\30063_全国首套房贷平均利率继续上升.txt
文件 5940 2019-04-25 13:02 实验一\人民网-粤经济\30064_广东省年内全面供应国Ⅵ汽柴油.txt
文件 2030 2019-04-25 13:02 实验一\人民网-粤经济\30065_2018年上半年广东CPI同比涨2.0%.txt
文件 1017 2019-04-25 13:02 实验一\人民网-粤经济\30066_专利授权十强企业广东占半数.txt
文件 1672 2019-04-25 13:02 实验一\人民网-粤经济\30067_工信部就手机“黑卡”开展调查处理.txt
文件 2569 2019-04-25 13:02 实验一\人民网-粤经济\30068_全国首个重化工外商独资项目落户广东.txt
文件 2530 2019-04-25 13:02 实验一\人民网-粤经济\30069_广东实有各类市场主体已逾千万户.txt
文件 3673 2019-04-25 13:02 实验一\人民网-粤经济\30070_2018年广州城市形象国际传播年新加坡推介会召开.txt
文件 2290 2019-04-25 13:02 实验一\人民网-粤经济\30071_新加坡媒体点赞广州:融入全球创新发展网络的智慧城市.txt
文件 4040 2019-04-25 13:02 实验一\人民网-粤经济\30072_唱响中国声音!千年商都广州成全球创新投资“黄金门户”.txt
文件 3771 2019-04-25 13:02 实验一\人民网-粤经济\30073_佛山市启动治理房地产市场乱象专项行动.txt
文件 1719 2019-04-25 13:02 实验一\人民网-粤经济\30074_世界杯带旺酒店球迷房.txt
文件 3762 2019-04-25 13:02 实验一\人民网-粤经济\30075_油价迎年内最大涨幅私家车加一箱油多花十余元.txt
文件 6894 2019-04-25 13:02 实验一\人民网-粤经济\30076_个税法修正案草案已收68000条意见专项扣除或有限额.txt
文件 4417 2019-04-25 13:02 实验一\人民网-粤经济\30077_个税改革,亮点不只是起征点.txt
文件 2876 2019-04-25 13:02 实验一\人民网-粤经济\30078_去银行存钱,当心“存单变保单”.txt
文件 3412 2019-04-25 13:02 实验一\人民网-粤经济\30079_“强大消费卡”却是一场空.txt
文件 1170 2019-04-25 13:02 实验一\人民网-粤经济\30080_国家医保局推动抗癌药加快降价.txt
文件 598 2019-04-25 13:02 实验一\人民网-粤经济\30081_全国林业产业总产值突破7万亿.txt
文件 625 2019-04-25 13:02 实验一\人民网-粤经济\30082_中央财政187.6亿保护草原生态.txt
文件 3749 2019-04-25 13:02 实验一\人民网-粤经济\30083_进口药主动降价抢市场.txt
文件 2192 2019-04-25 13:02 实验一\人民网-粤经济\30084_广东农行上线“智动贷”解中小微企业资金难题.txt
文件 2881 2019-04-25 13:02 实验一\人民网-粤经济\30085_广东农行优化企业开户助力实体经济发展.txt
............此处省略537个文件信息
- 上一篇:国科大图像处理作业王伟强老师.rar
- 下一篇:松下AV HS300说明书
相关资源
- 哈工大自然语言处理课件及实验
- 微博情感分析论文7篇
- 自然语言处理、文本挖掘论文40篇 包
- 人体疾病,病症数据库
- 处理好的人民日报语料,可以直接用
- 中文情感词典
- 唐宇迪word2vec的系列代码自然语言处理
- 统计自然语言处理宗成庆
- 2016年国科大NLP自然语言处理期末考试
- 自然语言处理之文本主题判别
- 自然语言处理大作业-对联系统
- 基于深度学习的自然语言处理 英文版
- 用RNN与LSTM网络原理进行唐诗生成.ta
- 搜狗词库带词性词频
- GATE 自然语言处理
- 中文文本分类项目数据集.rar
- 自然语言处理课程设计--中文情感分类
- 汉语分词语料库
- 宗成庆版自然语言理解ppt
- 自然语言处理技术
- 哈工大同义词词林扩展版
- 中科大自然语言理解课程ppt含往年试
- 中文信息处理发展报告2016+知识图谱发
- Foundations of Statistical Natural Language Pr
- 国科大自然语言处理期末试卷(宗成
- 文本生成前沿综述
- 中文实体词典(NLP必备)
- Neural Network Methods for Natural Language Pr
- 自然语言理解课件. 宗成庆版
- 《统计机器翻译》
评论
共有 条评论