下拉神器是一款专业的下拉词平台,提供各种下拉功能:百度下拉丶360搜索下拉丶必应搜索下拉丶哔哩哔哩下拉丶抖音下拉等等,里面还有批量做词教程技术,可以一次性做10-50个词,省心高效!批量做词,批量出词,可以实现霸屏效果!
有的客户想删除下拉,但是百度不受理,就可以使用批量做词霸屏技术,实现把那些负面信息顶下去,顶掉的效果=删除效果!欢迎您前来使用!新手不懂使用,请多看2遍视频教程哦!下拉神器100%有效果的!
给大家看一个下拉神器介绍的视频,看完后,点击下面的按钮进入”下拉神器“
欢迎使用下拉神器,下拉行业老品牌,如果下拉神器都不好使,整个行业其他平台一样不好使,但是大家一定要多学习多看教程,先学会做词出词的技巧!
下一篇文章内容预览:
从中文文本中提取关键词的三种方法
文本关键词提取是高度凝练文本信息的有效手段,通过3-5个词语精准概括文本主题,帮助读者快速了解文本信息。目前文本关键词提取主要有四种方法:基于TF-IDF的关键词提取、基于的关键词提取、基于词聚类的关键词提取、基于多种算法的关键词提取。在学习使用前三种算法进行关键词提取的过程中,笔者发现网上有很多利用TF-IDF和方法进行关键词提取的例子,代码和步骤也比较简单。但是当使用词聚类方法时,网上资料对流程和步骤表达得不是很清楚。因此本文利用TF-IDF方法、方法和词聚类方法实现专利文本的关键词提取(也适用于其他类型文本),通过理论与实践相结合,一步步理解、学习和实现中文文本关键词提取。
1 概述
一篇文档的关键词相当于最能表达文档主旨的N个词,也就是对于这篇文档来说最重要的词。因此,文本关键词的提取问题可以转化为单词重要性排序问题,选取排名前N个词作为文本关键词。目前主流的文本关键词提取方法主要有以下两类:
(1)基于统计的关键词提取方法
该方法根据词频等统计信息计算文档中词语的权重,通过按权重值排序提取关键词。TF-IDF就属于此类型的方法。TF-IDF方法通过计算单个文本词频(Term,TF)和逆文本频率指标( Text ,IDF)来计算词语权重;该方法是基于通过词语共现窗口构建共现网络,计算词语得分的思想。该类方法简单易用,适用性强,但是没有考虑词序问题。
(2)基于机器学习的关键词提取方法
这类方法包括SVM、朴素贝叶斯等监督学习方法,也有K-聚类、层次聚类等非监督学习方法。在这类方法中,模型的好坏取决于特征提取,而深度学习是提取特征的有效方式。由李飞飞引入的词向量模型是自然语言领域具有代表性的学习工具,在训练语言模型的过程中,它将词典映射到更加抽象的向量空间,每个单词用一个高维向量表示,向量空间中两点之间的距离对应两个单词之间的相似度。
基于以上研究,本文分别采用TF-IDF方法、方法以及词聚类方法,并以语言为开发工具,实现了文本关键词的提取。
2 开发环境准备 2.1 环境
从官方网站下载对应你电脑的版本,我使用的是7.13版本。
2.2 第三方模块
本实验代码的实现采用了几个知名的第三方模块,主要模块如下:
(1)
使用最广泛的中文分词组件。下载地址:
(2)
主题模型、文档索引、大语料相似度索引库,主要用于自然语言处理(NLP)和信息检索(IR)。下载地址:
此模块是本示例中维基百科中文语料处理和中文词向量模型构建所必需的。
(3)
基于工具包,用于高效处理大型数据集和执行数据分析任务的库。
下载地址:
(4)
用于存储和操作大型矩阵的工具包。
下载地址:
(5)-
机器学习工具包。模块参考名称为,安装前需要两个库。
官网地址:
本例子主要用到了该模块中的(k-聚类算法)和PCA(pac降维算法)。
(6)
是一个用于绘制二维图形的图形框架。
下载地址:
3 数据准备 3.1 样本语料
本文以汽车行业10个专利作为样本数据集,见文件“data/.csv”。文件包含三个字段,依次为:ID、()、()。和都参与关键词提取。大家可以根据自己的样本数据调整数据读取代码。
3.2 停用词词典
本文采用中国科学院计算技术研究所中文自然语言处理开放平台发布的中文停用词表,收录停用词1208个。下载地址:
另外,由于本例样本为专利文本,词汇专业性较强,需要手动添加。您可以直接在上述停用词列表中添加,每个停用词一行,见文件“data/.txt”。本例中,笔者在文件开头手动添加了六个停用词“ 、、free from、used for、the 、”,以作示范。您可以根据实际情况删除或添加停用词。
4 基于TF-IDF的文本关键词提取方法4.1 TF-IDF算法思想
词频(TF)是指给定单词在当前文件中出现的频率,由于同一个单词在长文件中出现的频率可能比在短文件中更高,因此需要根据文件长度对给定单词进行归一化,即用给定单词出现的次数除以当前文件中的总单词数。
逆文档频率(IDF)是衡量单词总体重要性的一个指标。也就是说,如果一个单词只在少数文档中出现,说明它能较好地代表该文档的中心思想,它的权重就会较大;如果一个单词在大量文档中出现,说明它代表什么还不明确,它的权重就应该较小。
TF-IDF的主要思想是,如果一个词在一篇文章中出现的频率高,而在其它文章中出现的频率低,就认为这个词更能代表当前文章的含义。也就是说,一个词的重要性和它在文档中出现的次数成正比,和它在语料库中的文档中出现的频率成反比。
计算公式如下:
4.2 TF-IDF文本关键词提取方法流程
从上文可以看出,TF-IDF对文本中所有候选关键词进行加权处理,并根据权重对关键词进行排序。设Dn为测试语料库规模,该算法的关键词提取步骤如下:
(1)对给定的文本D进行分词、词性标注、去停用词等数据预处理操作。本次分词采用分词,保留词性为'n','nz','v','vd','vn','l','a','d'的词,最终得到n个候选关键词,即D=[t1,t2,…,tn];
(2)计算单词ti在文本D中出现的频率;
(3)计算单词ti在整个语料库中的IDF=log(Dn/(Dt+1)),其中Dt为单词ti在语料库中出现的文档数量;
(4)计算词ti的TF-IDF = TF*IDF,重复(2)至(4),得到所有候选关键词的TF-IDF值;
(5) 将候选关键词计算结果进行倒序排列,取出前N个词作为文本关键词。
4.3 代码实现
第三方工具包提供了算法相关的函数,本文主要用到..text下的和函数,其中函数用于构建语料库中的词频矩阵,函数用于计算词语的权重。
注意:()函数有一个参数,默认值为True,若设置为True,则IDF计算公式为idf=log(Dn /Dt ) + 1。
基于TF-IDF方法进行文本关键词提取的代码执行步骤如下:
(1)读取样本源文件.csv;
(2)获取每行记录的标题和摘要字段,并将两个字段连接起来;
(3)加载自定义停用词表.txt,对拼接后的文本进行数据预处理操作,包括分词,筛选出符合词性的词,去除停用词,并拼接成以空格分隔的文本;
(4)遍历文本记录,将预处理后的文本放入文档集中;
(5)利用()函数得到词频矩阵,其中a[j][i]表示第i篇文档中第j个词的词频;
(6)利用()函数计算每个词的tf-idf权重;
(7)获取词袋模型中的关键词以及对应的tf-idf矩阵;
(8)遍历tf-idf矩阵,打印每个文档的词汇表和对应权重;
(9)对于每篇文档,按照词语权重值降序排列,选取排名前N个词语作为文本关键词,写入数据框;
(10)将最终结果写入.csv文件。
最终运行结果如下图所示。
5.1 算法思想
算法是基于算法的,所以在介绍算法之前,你必须了解算法。
该算法是谷歌创始人拉里·佩奇和谢尔盖·布林在 1998 年斯坦福大学读研究生时发明的,是一种根据网页之间的超链接来计算网页重要性的技术。该算法借鉴了学术界判断学术论文重要性的方法,即查看论文的引用次数。基于上述思想,该算法的核心思想是,网页的重要性由两部分组成:
①如果一个网页被大量其他网页链接,说明这个网页比较重要,即链接网页数量;
②如果一个网页被一个排名靠前的网页链接,说明这个网页比较重要,也就是被链接网页的权重。
一般来说,网页价值(PR)的计算公式如下:
其中,PR(Pi)为第i个网页的重要性排序,即PR值;ɑ为阻尼系数,一般设置为0.85;N为网页总数;Mpi为所有有出站链接指向第i个网页的网页***;L(Pj)为第j个网页的出站链接数。
最初假设所有网页的排名都是1/N,按照上面的公式计算每个网页的PR值,当迭代趋于稳定时,停止迭代,得到最终结果,一般来说只需要10次左右的迭代就可以基本收敛。
5.2 算法思想
该算法是2004年由和在研究自动摘要抽取过程中提出的,之后算法不断改进。该算法将文本拆分成单词作为网络节点,形成词汇网络图模型,将单词之间的相似度视为推荐或投票关系,从而计算出每个单词的重要性。
基于的文本关键词提取是利用局部词汇关系,也就是共现窗口,对候选关键词进行排序。该方法的步骤如下:
(1)对给定的文本D进行分词、词性标注、去停用词等数据预处理操作。本次分词采用分词,保留词性为'n','nz','v','vd','vn','l','a','d'的词,最终得到n个候选关键词,即D=[t1,t2,…,tn];
(2)构造候选关键词图G=(V,E),其中V为候选关键词组成的节点集,利用共现关系在任意两个节点之间构造一条边。两个节点之间只有对应的词语在长度为K的窗口**现时才存在边,其中K表示窗口大小,即最多有K个共现词语。
(3)根据公式迭代计算各个节点的权重,直至收敛;
(4)将节点权重倒序排列,取出前N个词作为文本关键词。
注:库中含有..函数可直接实现该算法,本文使用该函数进行实验。
5.3 代码实现
基于该方法实现文本关键词提取的代码执行步骤如下:
(1)读取样本源文件.csv;
(2)获取每行记录的标题和摘要字段,并将两个字段连接起来;
(3)加载自定义停用词列表.txt;
(4)遍历文本记录,使用..函数筛选出指定词性和前N个文本关键词,将结果存储在数据框中;
(5)将最终结果写入.csv文件。
最终运行结果如下图所示。
6 基于词语聚类的文本关键词提取方法6.1 词向量表示
众所周知,机器学习模型的输入必须是数值数据,文本不能直接作为模型的输入,需要先转换成数学形式。词语聚类方法是一种机器学习方法,需要将候选关键词进行向量化,因此必须先构建词向量模型,提取候选关键词的词向量。
它是由当时在职的张建锋等人于2013年发布的一个词向量训练工具,一经发布便在自然语言处理领域得到了广泛的应用。这个工具通过浅层神经网络模型自动学习语料库中词语的出现情况,并将词语嵌入到一个高维空间中,通常为100-500维。在新的高维空间中,将词语表示为词向量。相比于传统的文本表示方法,生成的词向量表示对高维空间中词语间的语义关系有更好的表示,即语义相近的词语在高维空间中距离更近;同时,使用词向量避免了词语表示的“维数灾难”问题。
在实际操作中,特征词向量的提取是基于训练好的词向量模型的。词向量模型的训练需要大量的语料才能取得好的效果。Wiki中文语料库是公认的大型中文语料库,本文拟从Wiki中文语料库生成的词向量中提取该语料库的特征词向量。关于Wiki中文语料库的模型训练,在之前的一篇文章《利用Wiki中文语料库的模型构建》( )中有详细介绍,这里不再赘述。即本文从文章最后得到的文件“wiki.zh.text.”中提取候选关键词的词向量,作为聚类模型的输入。
另外,我在阅读资料的时候发现,有些非常专业或者生僻的词汇可能并没有收录在 Wiki 中文语料中,为了提高语料质量,可以加入实验所需的样本语料一起训练,我觉得这是一个非常可行的办法,本例为了简单起见没有采用此方法,大家可以参考此方法,根据自己的实际情况进行调整。
6.2 K聚类算法
聚类算法的目的是发现数据中数据对象之间的关系,对数据进行分组,使得组内的相似性尽可能大,组间的相似性尽可能小。
K-是一种常见的基于原型的聚类技术,本文选取该算法作为词聚类方法。算法思想为:先随机选取K个点作为初始质心,K为用户指定的聚类数,通过计算每个点到各个质心的距离,将每个点分配到最近的质心,形成K个聚类,然后根据分配给该聚类的点重新计算每个聚类的质心,重复分配和更新质心的操作,直到聚类不再发生变化或达到最大迭代次数。
6.3 词聚类文本关键词提取方法流程
词聚类文本关键词提取方法的主要思想是对词向量表示的文本词通过K算法对文章中的词进行聚类,选取聚类中心作为文章的一个主要关键词,计算其他词与聚类中心的距离,即相似度,选取距离聚类中心最近的topN个词作为文本关键词,利用生成的向量就可以计算出这些词之间的相似度。
设测试语料的大小为Dn,利用该方法提取文本关键词的步骤如下:
(1)在Wiki中文语料上训练模型,参考我的文章《利用Wiki中文语料建立模型》(),得到词向量文件“wiki.zh.text。”;
(2)对给定的文本D进行分词、词性标注、去重、去停用词等数据预处理操作。本次分词采用分词,保留词性为'n','nz','v','vd','vn','l','a','d'的单词,最终得到n个候选关键词,即D=[t1,t2,…,tn];
(3)遍历候选关键词,从词向量文件中提取候选关键词的词向量表示,即WV=[v1,v2,…,vm];
(4)对候选关键词进行K聚类,得到各类别的聚类中心;
(5)计算各组单词与聚类中心的距离(欧氏距离),并按照聚类大小进行升序排序;
(6)计算候选关键词,取排名前N的词作为文本关键词。
在步骤(4)中,需要手动给定聚类个数关键词提取工具,本文的测试语料为汽车行业的专利文本,因此只需要一个聚类即可,大家可以根据自己的数据情况进行调整。在步骤(5)中,计算每个单词与聚类中心的距离,常用方法有欧氏距离、曼哈顿距离等关键词提取工具,本文采用欧氏距离,计算公式如下:
6.4 代码实现
第三方工具包提供了K-聚类算法的相关函数,本文使用..()函数执行K-算法,使用..PCA()函数对数据进行降维以便绘制图形。
基于词语聚类方法的文本关键词提取代码执行步骤如下:
(1)读取样本源文件.csv;
(2)获取每行记录的标题和摘要字段,并将两个字段连接起来;
(3)加载自定义停用词列表.txt,对拼接后的文本进行数据预处理操作,包括分词、筛选出符合词性的词、去重复、去除停用词等,形成列表存储;
(4)读取词向量模型文件‘wiki.zh.text.’,从中提取所有候选关键词的词向量表征,并存储在文件中;
(5)读取文本的词向量表征文件,利用()函数获取聚类结果和聚类中心的向量表征;
(6)利用欧氏距离计算方法,计算每个词与聚类中心的距离;
(7)将得到的距离按升序排列,选取前N个词作为文本关键词,写入数据框;
(8)将最终结果写入.csv文件。
最终运行结果如下图所示。
7 结论
本文总结了三种常用的文本关键词提取方法:TF-IDF、词向量聚类,并给出了详细的原理、流程和代码描述。由于本文所用的测试语料比较特殊,数量较少,因此没有做相应的结果分析。根据观察,得到的十个文本关键词都包含了文本的主要信息。其中TF-IDF和方法的结果较好,词向量聚类方法效果不佳,这与文献[8]中的结论一致。文献[8]中提到,将词向量聚类方法直接应用于单篇文档时,选择聚类中心作为文本的关键词是不准确的,因此距离最近的N个词不一定就是关键词,因此该方法得到的结果不佳;而该方法是基于图模型的排序算法百度的下拉框词要如何刷【64xl.com做下拉框网站】下拉框搜索词,在单篇文档关键词提取中效果比较稳定。因此更多的论文对该方法进行了改进,以提高关键词提取的准确率。
另外,本文实验的目的主要是为了说明三种方法的思路和流程,实验过程中的一些细节还可以改进。比如,模型训练的原语料可以加入相应的专业文本语料;标题文本往往包含文档的重要信息,可以对标题文本包含的词语赋予一定的初始权重;测试数据集可以收集多个类别的长文本,聚类算法()函数中相应的参数要设置为类别数;根据文档的分词结果,去除所有包含某个词语且频率超过指定阈值的文档;等等。大家可以根据自己的实际情况优化参数和调整细节,也可以参考论文资料。欢迎大家给我留言或者私信讨论,一起学习。
至此,三种中文文本关键词提取方法就介绍完了,测试数据、代码及运行结果已上传至我的仓库,项目文件为,data文件夹内有停用词列表.txt和测试集.csv,文件夹中有三种方法的实验结果及每篇文档对应的词向量文件(vecs)。文章中如有不准确之处,欢迎大家批评指正!
参考:
[1]
[2]
[3]
[4]
[5] 余珊珊,苏金典,**飞.基于改进的自动摘要提取方法[J].计算机科学,2016,43(6):240-247.
[6]
[7]
[8]夏天.基于词向量聚类加权的关键词抽取[J].现代图书情报技术,2017,1(2):28-34.
[9]吴俊.数学之美(第二版).
TAG:百度刷下拉框