精华内容
下载资源
问答
  • 关键词什么意思

    千次阅读 2018-11-09 08:17:14
    关键词什么意思? 用户只有通过关键词搜索,才能找到满足自己需求的结果。关键词优化的好与坏,关系到seoer最关注的排名的好与坏,关系到需求覆盖范围的大与小。因此,从seo角度来讲,关键词是一个特别重要的概念...

    关键词是什么意思

    用户只有通过关键词搜索,才能找到满足自己需求的结果。关键词优化的好与坏,关系到seoer最关注的排名的好与坏,关系到需求覆盖范围的大与小。因此,从seo角度来讲,关键词是一个特别重要的概念。另外一方面,关键词是一个比较基础的概念。笔者认为,较基础的seo知识越发重要。本文从多个角度阐述关键词是什么意思。

    一:什么是关键词?

    从百科的定义来看,关键词是英文“keywords”的翻译结果,其是图书馆学中的词汇,指的是用户在搜索引擎中键入的,表达用户个体需求的词汇。从百度的定义来看,它的意思是用户获取信息的一种精简的词汇。实际上,这两个定义所表达的意思是一样的,只是在表述上不同罢了。假设你在使用百度,你想通过某个关键词获取信息,那么你键入的词汇都可以叫做关键词。

    这里需要注意的是:关键词是用户需求的一个载体,是用户当前需求的一个精简词汇。这也较好理解,因为用户一般情况下不会通过输入大段文字寻找结果,只会通过能体现核心思想的词汇寻找结果或者答案。

    二:关键词和搜索引擎的关系。

    我们做seo,一方面要将关键词,图片,多媒体等内容组成的网页给用户看,另外一方面,也要给搜索引擎看。只有搜索引擎看到了,并对当前网页建立索引,才有可能呈现给用户。因此,必然要清楚关键词与搜索引擎的关系。

    先看看搜索引擎的工作原理,具体可概括为爬行和抓取—》建立索引—》搜索词处理—》排序。搜索引擎蜘蛛无时无刻不在爬行和抓取新鲜网页内容,在此之后,会对有价值的网页内容建立索引,当用户在搜索引擎中输入关键词后,会通过分词等技术了解用户的真实搜索意图,并在结果中以排序的方式为用户提供列表型的结果。

    如果我们了解搜索引擎工作原理,我们就会知晓关键词的重要性。现目前的技术条件下,搜索引擎只能识别文字内容,而文字内容又是由单个的关键词汇组成的。关键词是搜索引擎能工作的前提,多个关键词组成的内容是满足用户需求的必要条件。

    三:关键词分类。

    不同的维度下,关键词有不同的种类。严格意义来区分,我们把关键词分为词根,词干,以及词叶。

    根据树形法则对关键词分类,把关键词想象成大树:

    假设词根是seo,那么词干就是seo是什么,seo教程,seo培训等,词叶就是seo是什么意思,哪家seo培训好等长尾词。

    有必要指出的是,表面来看,词根,词干,词叶的搜索量应该是从大到小的,但从实际来看,长尾词带来的流量会远大于词根的流量,也就是我们俗称的二八理论。词根的搜索量是大,但词根的数量有限;长尾词的搜索量很小,但不用的细分长尾关键词代表了海量的用户需求,这些需求汇集一起,其搜索量总和就会大于词根的流量。

    四:网站如何布局关键词。

    关于怎么把关键词布局到网页中,百度搜索引擎优化指南已经有明确说明,在此赘述:

    首页:网站名称 – 产品A_产品B。

    栏目页:栏目名称 – 网站名称。

    内容页:内容标题_栏目名称_网站名称。

    这是百度关于关键词布局的官方说法,实际来看,各类型网站关键词布局不尽相同,在此,我们提供一个确切有效的布局原则:相关性。

    你在布局网站关键词的时候,要注意当前主题的相关性,围绕当前主题进行关键词建设,切不可偏离主题。将合适的关键词,布局到合适网页的合适位置,就可以达到这个目标。

    点评:

    以上,系统讲解了什么是关键词。关键词是seo的基础知识之一,也是最重要的概念。深入理解这一概念,将对于你深化seo技术产生重大影响。关键词排名是seo的重要工作内容。无论你的seo理论如何丰富,但不经过实践,网站关键词不能达到预期排名,那么你所学到的seo技术,理论都是苍白的。

    展开全文
  • 从百度百科上我们可以知道关键词指...属性关键字是什么意思? 品牌关键字是什么意思? 品牌关键词是一个企业、网站或个人在互联网的一个标志,是明确带有企业品牌名称的相关关键词,是独一无二的,大家常见的品牌关键词

    从百度百科上我们可以知道关键词指的是用户在搜索引擎中输入的单词,以表达他们的个人需求。从维基百科的定义来看,它意味着用户获取信息的简化词汇。事实上,这两个定义表达了相同的含义,假设你在使用百度,你想通过一个关键词获得信息,那么你输入的所有词都可以称为关键词。
    图片

    关键字可以分为那几个类型?
    属性关键字
    促销关键字
    品牌关键字
    评鉴关键字
    属性关键字是什么意思?

    品牌关键字是什么意思?
    品牌关键词是一个企业、网站或个人在互联网的一个标志,是明确带有企业品牌名称的相关关键词,是独一无二的,大家常见的品牌关键词类型有淘宝、京东、天猫、支付宝等等,即一提到你的品牌关键词,很多时候用户就可以知道你是做什么的。就像谈起淘宝,支付宝,大家都知道是马云的,都知道是运营什么的。

    评鉴关键字是什么意思?

    促销关键字是什么意思?
    淘宝促销关键词有很多,都是能吸引眼球的词,比如新品上市、火爆热卖、店主推荐、限时打折、满就送、节日特惠、特价、包邮、满就减、积分大放送和会员有礼等等,只要能够让人一眼就知道重点的,并且有优惠的词都可以作为促销关键词。

    图片

    图片

    如果我们了解搜索引擎的工作原理,知道什么是关键词的话,我们就会知道关键字的重要性。在现在的技术情况下,百度等搜索引擎就只能够对文字进行识别,而文字都是由单一的关键字词汇组成。关键字是搜索引擎工作的前提条件,是满足用户需求的必要条件。

    什么是关键词查找量?关键词查找量查询战略分享
    一、什么是关键词查找量?

    一般来讲,咱们把关键词查找量简称为关键词指数,它代表一个特定的关键词,在一个时期内,被查找的次数,一般状况,当咱们议论关键词查找量的时分,都是指关键词日均查找量。

    二、怎么查询百度关键词查找量?

    百度关键词查找量的查询,能够经过两种方法:

    1)、使用百度官方东西:百度指数,进行查询。

    2)、使用第三方站长东西:主要是关键词发掘东西,站长之家,爱站都能够。

    三、那么,怎么评价一个关键词热度?

    在SEO优化准备作业阶段,咱们一般需求批量收拾职业关键词库,一起依照关键词热度对这些词进行挑选与排序,然后挑选适宜的关键词,那么,判别一个关键词热度,一般包含如下目标:

    1)、关键词查找量

    2)、关键词被查找引擎录入的内容页面数量

    3)、关键词的竞赛度,它是否为抢手关键词

    4)、关键词的价值,假如该关键词与你的职业没有任何相关的,那么关键词查找量再高,它的关键词热度也都是零分,几乎没有任何含义。

    四、挑选关键词热度,对优化有什么影响?

    挑选关键词热度,有利于咱们在初期建站的时分,一般咱们会挑选热度适中,查找量相对较大,简单快速排名的长尾关键词。

    在SEO作业,seo专家需求长于发现这类的关键词,假如你长时间从事SEO作业,就会发现它为你供给了极大的便利。

    如何分析和评价关键词的热度
    正确的关键词战略,会使得SEO人员,在网站优化过程中,节省大量时间,所以正确的衡量一个关键词热度就变得非常重要,那么在这之前,我们需要理解的一个词就是关键词搜索量。

    一,关键词搜索量的意义

    通常来说,我们把关键词搜索量简称为关键词指数,它代表一个特定的关键词,在一定时期内,被搜索的次数,普通情况下,当我们议论关键词搜索量的时分,都是指关键词日均搜索量。

    二,查询百度关键词搜索量的方式

    1.使用百度官方工具:百度指数。

    2.使用第三方站长工具:主要是关键词发掘工具,站长之家,爱站等。

    三,关键词热度评价的标准

    在SEO优化准备阶段,我们通常需要批量整理行业关键词库,同时按照关键词热度对这些词进行挑选与排序,从而选择合适的关键词,那么,辨别一个关键词热度,通常包括以下标准:

    1.关键词搜索量

    2.关键词被搜索引擎收录的内容页面数量

    3.关键词的竞争度,它是否为抢手关键词

    4.关键词的价值,假如该关键词与你的行业没有任何相关的,那么关键词搜索量再高,它的关键词热度也都是零分,简直没有任何意义。

    四,挑选关键词热度对SEO优化的影响

    挑选关键词热度,有利于我们的建站,通常我们会选择热度适中,搜索量相对较大,容易快速排名的长尾关键词。

    在SEO工作,SEO专家需要擅长发现这类关键词,假如你长期从事SEO工作,就会发现它为你提供了极大的便利。

    seo关键词优化考核什么东西
    一、内容网页页面的关键字排名考核内容

    二、原創内容获得网站优化外部链接的总数

    三、seo关键词优化产生的总流量质量标准

    四、网络媒介知名度

    五、查询竞争者有关指标值

    六、总流量转换指标值

    七、预期效果转换率

    在做seo关键词优化的时候,你必须有个潜在性的总体目标,例如:获得是多少申请注册客户,吸引住是多少粉絲关心,预估的网址Pv多少钱,人们必须关心一部分容,查询内容运营在重要环节的主要表现,从全面提高内容策略的实际效果

    词库

    关键词库是什么意思?

    键词库就是一个网站所包含的所有关键词,包括目标关键词和长尾关键词。

    当网站获得权重1以上的时候就会关键词库就会有关键词,而关键词库里面的关键词都必须有百度指数,否则无法纳入关键词库。
    所以在关键词库里看到的关键词,首先是每天有一定搜索指数的词,并且是网站里面的词被百度收录了,一般排名在前五十名内就是词库的关键词。

    如何建立关键词库
    建立关键词词库主要靠平时的积累,挖掘出关键词,在网站上做好分布,关键词挖掘的方法:

    通过百度推广助手挖掘次关键词及长尾词通过站长工具的关键词挖掘工具百度下拉搜索框和百度相关搜索

    挖掘关键词的方法和工具都有很多,小伙伴也可以自己重组一些词来建立新的搜索词,有时候根据用户的输入习惯,错别字也可以成为搜索词。

    网站关键词词库怎么做

    所谓的关键词库指的是一个网站的搜索关键词在搜索引擎中从首页第1位到50位的排名,通常SEO关键词词库的做法有以下几点:

    1、利用各种关键词挖掘工具把主词、长尾词、建立表格分类好,目前常用的关键词挖掘工具有:站长工具、5118、爱站网、词库网、百度关键词规划师、百度下拉、搜索相关关键词等等。

    2、根据网站实际情况,把指数大的写在首页,一般3到5个,然后把分类好的词自然分布于栏目页、内页等等。

    3、词库的建立是通过后期不断优化把站内各关键词从100名之外优化到首页排名一至五十名以内就开始查询得到词库了。

    关键词库的关键词怎么增加?
    关键词库的增加方法有很多种,我们可以通过关键词去搜索,从而在搜索框里面寻找长尾关键词,也可以在网页的下方找到类似关键词,把这些关键词加到关键字库里面,这样的话,你在推广的时候又有了更多的选择,另外我们还可以通过其他的网站去寻找一些类似的关键词,或者不同的说法,关键词的变体等等,把有价值的长尾关键词讲道,关键的词库里面这样,你的推广效果会更加的好,在推广成本上也会降低很多。

    原文:小鸽子seo

    展开全文
  • 提取关键词

    2018-07-16 17:23:11
    关键词是一篇文档中表达的主要话题,处理文档或句子时,提取关键词是最重要的工作之一,这在NLP中也是一个十分有用的task。 常见的关键词提取方法有:TF-IDF关键词提取方法、Topic-model关键词提取方法和RAKE关键词...

    关键词是一篇文档中表达的主要话题,处理文档或句子时,提取关键词是最重要的工作之一,这在NLP中也是一个十分有用的task。

    常见的关键词提取方法有:TF-IDF关键词提取方法、Topic-model关键词提取方法和RAKE关键词提取。

    TF-IDF:

    使用TF-IDF提取关键词的方法十分好理解,TF衡量了一个词在文档中出现的频率,一个文档中多次出现的词总是有一定的特殊意义,但是并不是所有多次出现的词就都是有意义的,如果一个词在所有的文档中都多次出现,那么这个词就没有什么价值了。

    TF-IDF就很好地衡量了这些因素:TF= (词在文档中出现的次数)/ (文章总词数),IDF= log(语料库中文档综述/(包含该词的文档数+1))

    TF-IDF= TF* IDF

    TF-IDF值越大,则这个词成为一个关键词的概率就越大。

    Topic-model:

    使用主题模型提取关键词的关键思想是认为文章是由主题组成的,而文章中的词是以一定概率从主题中选取的,即文章与词之间存在一个主题集合。不同的主题下,词出现的概率分布是不同的。

    根据LDA主题模型的学习可以获取文档的主题词集合。

    RAKE关键词提取:

    RAKE(Rapid Automatic Keyword Extraction)算法的原作者是Alyona Medelyan,RAKE的更新版本就是她完成的,muai indexer也是她的杰作,她的GitHub上有很多关键字提取的项目。

    有一篇介绍RAKE算法的文章,链接是:http://python.jobbole.com/82230/

    RAKE提取的关键词并不是单一的单词,有可能是一个短语。

    每个短语的得分有组成短语的词累加得到,而词的得分与词的度与词频有关:score = degree / freq

    其中,当与一个词共现的词越多,则该词的度就越大。

    原始的RAKE的GitHub地址: https://github.com/zelandiya/RAKE-tutorial

    我自己也创建了一个使用RAKE提取英文句子关键词的项目,可以作为一个RAKE的使用示例,大家可以从我的GitHub上获取,地址为:https://github.com/mpk001/RAKE-keywordsExtraction

    展开全文
  • NLP关键词提取方法总结及实现

    万次阅读 多人点赞 2019-07-23 21:09:41
    一、关键词提取概述 二、TF-IDF关键词提取算法及实现 三、TextRank关键词提取算法实现 四、LDA主题模型关键词提取算法及实现 五、Word2Vec词聚类的关键词提取算法及实现 六、信息增益关键词提取算法及实现 七...

    目录

    一、关键词提取概述

    二、TF-IDF关键词提取算法及实现

    三、TextRank关键词提取算法实现

    四、LDA主题模型关键词提取算法及实现

    五、Word2Vec词聚类的关键词提取算法及实现

    六、信息增益关键词提取算法及实现

    七、互信息关键词提取算法及实现

    八、卡方检验关键词提取算法及实现

    九、基于树模型的关键词提取算法及实现

    十、总结


    一、关键词提取概述

    关键词是能够表达文档中心内容的词语,常用于计算机系统标引论文内容特征、信息检索、系统汇集以供读者检阅。关键词提取是文本挖掘领域的一个分支,是文本检索、文档比较、摘要生成、文档分类和聚类等文本挖掘研究的基础性工作。

    从算法的角度来看,关键词提取算法主要有两类:无监督关键词提取方法有监督关键词提取方法

    1、无监督关键词提取方法

    不需要人工标注的语料,利用某些方法发现文本中比较重要的词作为关键词,进行关键词提取。该方法是先抽取出候选词,然后对各个候选词进行打分,然后输出topK个分值最高的候选词作为关键词。根据打分的策略不同,有不同的算法,例如TF-IDF,TextRank,LDA等算法。

    无监督关键词提取方法主要有三类:基于统计特征的关键词提取(TF,TF-IDF);基于词图模型的关键词提取(PageRank,TextRank);基于主题模型的关键词提取(LDA)

    • 基于统计特征的关键词提取算法的思想是利用文档中词语的统计信息抽取文档的关键词;
    • 基于词图模型的关键词提取首先要构建文档的语言网络图,然后对语言进行网络图分析,在这个图上寻找具有重要作用的词或者短语,这些短语就是文档的关键词;
    • 基于主题关键词提取算法主要利用的是主题模型中关于主题分布的性质进行关键词提取;

    2、有监督关键词提取方法

    将关键词抽取过程视为二分类问题,先提取出候选词,然后对于每个候选词划定标签,要么是关键词,要么不是关键词,然后训练关键词抽取分类器。当新来一篇文档时,提取出所有的候选词,然后利用训练好的关键词提取分类器,对各个候选词进行分类,最终将标签为关键词的候选词作为关键词。

    3、无监督方法和有监督方法优的缺点

    无监督方法不需要人工标注训练集合的过程,因此更加快捷,但由于无法有效综合利用多种信息 对候选关键词排序,所以效果无法与有监督方法媲美;而有监督方法可以通过训练学习调节多种信息对于判断关键词的影响程度,因此效果更优,有监督的文本关键词提取算法需要高昂的人工成本,因此现有的文本关键词提取主要采用适用性较强的无监督关键词提取。

    4、关键词提取常用工具包

    二、TF-IDF关键词提取算法及实现

    TF-IDF算法的详细介绍及实现方法总结参看博客:TF-IDF算法介绍及实现

    三、TextRank关键词提取算法实现

    TextRank算法的详细介绍及实现方法总结参看博客:TextRank算法介绍及实现

    四、LDA主题模型关键词提取算法及实现

    1、LDA(Latent Dirichlet Allocation)文档主题生成模型

    主题模型是一种统计模型用于发现文档集合中出现的抽象“主题”。主题建模是一种常用的文本挖掘工具,用于在文本体中发现隐藏的语义结构。

    LDA也称三层贝叶斯概率模型,包含词、主题和文档三层结构;利用文档中单词的共现关系来对单词按主题聚类,得到“文档-主题”和“主题-单词”2个概率分布。

    通俗理解LDA主题模型原理

    2、基于LDA主题模型的关键词提取算法实现

    from gensim import corpora, models
    import jieba.posseg as jp
    import jieba
    
    
    # 简单文本处理
    def get_text(text):
        flags = ('n', 'nr', 'ns', 'nt', 'eng', 'v', 'd')  # 词性
        stopwords = ('的', '就', '是', '用', '还', '在', '上', '作为')  # 停用词
        words_list = []
        for text in texts:
            words = [w.word for w in jp.cut(text) if w.flag in flags and w.word not in stopwords]
            words_list.append(words)
        return words_list
    
    
    # 生成LDA模型
    def LDA_model(words_list):
        # 构造词典
        # Dictionary()方法遍历所有的文本,为每个不重复的单词分配一个单独的整数ID,同时收集该单词出现次数以及相关的统计信息
        dictionary = corpora.Dictionary(words_list)
        print(dictionary)
        print('打印查看每个单词的id:')
        print(dictionary.token2id)  # 打印查看每个单词的id
    
        # 将dictionary转化为一个词袋
        # doc2bow()方法将dictionary转化为一个词袋。得到的结果corpus是一个向量的列表,向量的个数就是文档数。
        # 在每个文档向量中都包含一系列元组,元组的形式是(单词 ID,词频)
        corpus = [dictionary.doc2bow(words) for words in words_list]
        print('输出每个文档的向量:')
        print(corpus)  # 输出每个文档的向量
    
        # LDA主题模型
        # num_topics -- 必须,要生成的主题个数。
        # id2word    -- 必须,LdaModel类要求我们之前的dictionary把id都映射成为字符串。
        # passes     -- 可选,模型遍历语料库的次数。遍历的次数越多,模型越精确。但是对于非常大的语料库,遍历太多次会花费很长的时间。
        lda_model = models.ldamodel.LdaModel(corpus=corpus, num_topics=2, id2word=dictionary, passes=10)
    
        return lda_model
    
    
    if __name__ == "__main__":
        texts = ['作为千元机中为数不多拥有真全面屏的手机,OPPO K3一经推出,就簇拥不少粉丝', \
                 '很多人在冲着这块屏幕购买了OPPO K3之后,发现原来K3的过人之处不止是在屏幕上', \
                 'OPPO K3的消费者对这部手机总体还是十分满意的', \
                 '吉利博越PRO在7月3日全新吉客智能生态系统GKUI19发布会上正式亮相', \
                 '今年上海车展,长安CS75 PLUS首次亮相', \
                 '普通版车型采用的是双边共双出式排气布局;运动版本车型采用双边共四出的排气布局']
        # 获取分词后的文本列表
        words_list = get_text(texts)
        print('分词后的文本:')
        print(words_list)
    
        # 获取训练后的LDA模型
        lda_model = LDA_model(words_list)
    
        # 可以用 print_topic 和 print_topics 方法来查看主题
        # 打印所有主题,每个主题显示5个词
        topic_words = lda_model.print_topics(num_topics=2, num_words=5)
        print('打印所有主题,每个主题显示5个词:')
        print(topic_words)
    
        # 输出该主题的的词及其词的权重
        words_list = lda_model.show_topic(0, 5)
        print('输出该主题的的词及其词的权重:')
        print(words_list)
    

    运行结果:

    五、Word2Vec词聚类的关键词提取算法及实现

    1、Word2Vec词向量表示

    利用浅层神经网络模型自动学习词语在语料库中的出现情况,把词语嵌入到一个高维的空间中,通常在100-500维,在高维空间中词语被表示为词向量的形式。

    特征词向量的抽取是基于已经训练好的词向量模型。

    2、K-means聚类算法

    聚类算法旨在数据中发现数据对象之间的关系,将数据进行分组,使得组内的相似性尽可能的大,组间的相似性尽可能的小。

    算法思想是:首先随机选择K个点作为初始质心,K为用户指定的所期望的簇的个数,通过计算每个点到各个质心的距离,将每个点指派到最近的质心形成K个簇,然后根据指派到簇的点重新计算每个簇的质心,重复指派和更新质心的操作,直到簇不发生变化或达到最大的迭代次数则停止。

    3、基于Word2Vec词聚类关键词提取方法的实现过程

    主要思路是对于用词向量表示的词语,通过K-Means算法对文章中的词进行聚类,选择聚类中心作为文本的一个主要关键词,计算其他词与聚类中心的距离即相似度,选择topK个距离聚类中心最近的词作为关键词,而这个词间相似度可用Word2Vec生成的向量计算得到。

    具体步骤如下:

    • 对语料进行Word2Vec模型训练,得到词向量文件;
    • 对文本进行预处理获得N个候选关键词;
    • 遍历候选关键词,从词向量文件中提取候选关键词的词向量表示;
    • 对候选关键词进行K-Means聚类,得到各个类别的聚类中心(需要人为给定聚类的个数);
    • 计算各类别下,组内词语与聚类中心的距离(欧几里得距离或曼哈顿距离),按聚类大小进行降序排序;
    • 对候选关键词计算结果得到排名前TopK个词语作为文本关键词。
       

    :第三方工具包Scikit-learn提供了K-Means聚类算法的相关函数,本文用到了sklearn.cluster.KMeans()函数执行K-Means算法,sklearn.decomposition.PCA()函数用于数据降维以便绘制图形。

    六、信息增益关键词提取算法及实现

    信息增益算法的详细介绍及实现方法总结参看博客:信息增益算法介绍及实现

    七、互信息关键词提取算法及实现

    1、互信息(Mutual Information,MI)

    在概率论和信息论中,两个随机变量的互信息或转移信息(transinformation)是变量间相互依赖性的量度。不同于相关系数,互信息并不局限于实值随机变量,它更加一般且决定着联合分布 p(X,Y) 和分解的边缘分布的乘积 p(X)p(Y) 的相似程度。互信息是度量两个事件集合之间的相关性(mutual dependence)。

    互信息被广泛用于度量一些语言现象的相关性。在信息论中,互信息常被用来衡量两个词的相关度,也用来计算词与类别之间的相关性。

    2、互信息计算公式

     3、互信息算法实现

    from sklearn import metrics
    import numpy as np
    
    # 训练集和训练标签
    x_train = [[1, 2, 3, 4, 5],
               [5, 4, 3, 2, 1],
               [3, 3, 3, 3, 3],
               [1, 1, 1, 1, 1]]
    y_train = [0, 1, 0, 1]
    # 测试集和测试标签
    x_test = [[2, 2, 2, 2, 2], [2, 1, 1, 2, 1]]
    
    x_train = np.array(x_train)  # 转为array
    
    # 存储每个特征与标签相关性得分
    features_score_list = []
    for i in range(len(x_train[0])):
        # 计算每个特征与标签的互信息
        feature_info = metrics.mutual_info_score(y_train, x_train[:, i])
        features_score_list.append(feature_info)
    
    print(features_score_list)
    

    运行结果: 

    4、信息论中的互信息和决策树中的信息增益的关系 

    两者表达意思是一样的,都是表示得知特征 X 的信息而使得类 Y 的信息的不确定性减少的程度。

    注:

    • 标准化互信息(Normalized Mutual Information,NMI)可以用来衡量两种聚类结果的相似度。
    • 标准化互信息Sklearn实现:metrics.normalized_mutual_info_score(y_train, x_train[:, i])。
    • 点互信息(Pointwise Mutual Information,PMI)这个指标来衡量两个事物之间的相关性(比如两个词)。

    八、卡方检验关键词提取算法及实现

    1、卡方检验

    卡方是数理统计中用于检验两个变量独立性的方法,是一种确定两个分类变量之间是否存在相关性的统计方法,经典的卡方检验是检验定性自变量对定性因变量的相关性。

    2、基本思路

    • 原假设:两个变量是独立的
    • 计算实际观察值和理论值之间的偏离程度
    • 如果偏差足够小,小于设定阈值,就接受原假设;否则就否定原假设,认为两变量是相关的。

    3、计算公式

    其中,A为实际值,T为理论值。卡方检验可用于文本分类问题中的特征选择,此时不需要设定阈值,只关心找到最为相关的topK个特征。基本思想:比较理论频数和实际频数的吻合程度或者拟合优度问题。

    4、基于sklearn的卡方检验实现

    from sklearn.feature_selection import SelectKBest
    from sklearn.feature_selection import chi2
    
    # 训练集和训练标签
    x_train = [[1, 2, 3, 4, 5],
               [5, 4, 3, 2, 1],
               [3, 3, 3, 3, 3],
               [1, 1, 1, 1, 1]]
    y_train = [0, 1, 0, 1]
    # 测试集和测试标签
    x_test = [[2, 2, 2, 2, 2], [2, 1, 1, 2, 1]]
    y_test = [1, 1]
    
    # 卡方检验选择特征
    chi2_model = SelectKBest(chi2, k=3)  # 选择k个最佳特征
    # 该函数选择训练集里的k个特征,并将训练集转化所选特征
    x_train_chi2 = chi2_model.fit_transform(x_train, y_train)
    # 将测试集转化为所选特征
    x_test_chi2 = chi2_model.transform(x_test)
    
    print('各个特征的得分:', chi2_model.scores_)
    print('各个特征的p值:', chi2_model.pvalues_)  # p值越小,置信度越高,得分越高
    print('所选特征的索引:', chi2_model.get_support(True))
    print('特征提取转换后的训练集和测试集...')
    print('x_train_chi2:', x_train_chi2)
    print('x_test_chi2:', x_test_chi2)

    运行结果:

    九、基于树模型的关键词提取算法及实现

    1、树模型

    主要包括决策树和随机森林,基于树的预测模型(sklearn.tree 模块和 sklearn.ensemble 模块)能够用来计算特征的重要程度,因此能用来去除不相关的特征(结合 sklearn.feature_selection.SelectFromModel)

    sklearn.ensemble模块包含了两种基于随机决策树的平均算法:RandomForest算法Extra-Trees算法。这两种算法都采用了很流行的树设计思想:perturb-and-combine思想。这种方法会在分类器的构建时,通过引入随机化,创建一组各不一样的分类器。这种ensemble方法的预测会给出各个分类器预测的平均。

    • RandomForests 在随机森林(RF)中,该ensemble方法中的每棵树都基于一个通过可放回抽样(boostrap)得到的训练集构建。另外,在构建树的过程中,当split一个节点时,split的选择不再是对所有features的最佳选择。相反的,在features的子集中随机进行split反倒是最好的split方式。sklearn的随机森林(RF)实现通过对各分类结果预测求平均得到,而非让每个分类器进行投票(vote)。
    • Ext-Trees 在Ext-Trees中(详见ExtraTreesClassifier和 ExtraTreesRegressor),该方法中,随机性在划分时会更进一步进行计算。在随机森林中,会使用侯选feature的一个随机子集,而非查找最好的阈值,对于每个候选feature来说,阈值是抽取的,选择这种随机生成阈值的方式作为划分原则。

    2、树模型的关键词提取算法实现

    (1)部分代码实现1

    from sklearn.tree import DecisionTreeClassifier
    from sklearn.ensemble import RandomForestClassifier
    from sklearn.ensemble import ExtraTreesClassifier
    from sklearn.feature_selection import SelectFromModel
    
    # 导入SelectFromModel结合ExtraTreesClassifier计算特征重要性,并按重要性阈值选择特征。
    # 基于树模型进行模型选择
    clf_model = ExtraTreesClassifier(n_estimators=250, random_state=0)
    clf_model.fit(x_train, y_train)
    # 获取每个词的特征权重,数值越高特征越重要
    importances = clf_model.feature_importances_
    # 选择特征重要性为1.5倍均值的特征
    model = SelectFromModel(clf_model, threshold='1.5*mean', prefit=True)
    x_train_new = model.transform(x_train)  # 返回训练集所选特征
    x_test_new = model.transform(x_test)  # 返回测试集所选特征
    

    (2)部分代码实现2

    # 训练集和训练标签
    x_train, y_train
    # 候选特征词列表
    words_list
    
    # 基于树模型进行模型选择
    forest = RandomForestClassifier(n_estimators=250, random_state=0)
    forest.fit(x_train, y_train)
    importances = forest.feature_importances_  # 获取每个词的特征权重
    
    # 将词和词的权重存入字典
    feature_words_dic = {}
    for i in range(len(words_list)):
        feature_words_dic[words_list[i]] = importances[i]
    
    # 对字典按权重由大到小进行排序
    words_info_dic_sort = sorted(words_info_dic.items(), key=lambda x: x[1], reverse=True)
    
    # 将关键词和词的权重分别存入列表
    keywords_list = []  # 关键词列表
    features_list = []  # 关键权重列表
    for word in words_info_dic_sort:
        keywords_list.append(word[0])
        features_list.append(word[1])
    
    # 选取前一千个关键词和权重写入文本文件
    keywords = keywords_list[:1000]
    features = features_list[:1000]
    
    # 将含有关键字的文本写入文件
    with open('data/keywords_features.txt', 'a', encoding="utf-8") as f:
        for i in range(len(keywords)):
            f.write(keywords[i] + '\t' + features[i] + '\n')

    十、总结

    本文总结了本人在实验过程中所用到的常用关键词抽取方法,实验数据是基于公司的内部数据,但此篇总结只是方法上的讲解和实现,没有针对某一具体数据集做相应的结果分析。从实验中可以很明显看出有监督关键词抽取方法通常会显著好于无监督方法,但是有监督方法依赖一定规模的标注数据。

     

     

    参考:

    1、NLP关键词抽取常见算法

    2、gensim models.ldamodel

    3、卡方检验原理及应用

    4、特征选择 (feature_selection)

    5、随机森林算法总结及调参

    6、句子相似度计算

    展开全文
  • 关键词抽取方法

    2021-01-28 20:47:13
    关键词抽取就是通过一定的方法抽取出能表达文章的中心主题的一系列方法。 2、关键词抽取方法分类 2.1、有监督无监督抽取方法 无监督关键词提取方法主要有三类:基于统计特征的关键词提取(TF,TF-IDF);基于词图...
  • 关键词抽取

    千次阅读 2017-09-07 11:51:45
    我博士阶段的研究课题就是关键词抽取,欢迎下载阅读我的论文“基于文档主题结构的关键词抽取方法研究”。以我做关键词抽取的经验,建议如下: 1. TFIDF是很强的baseline,具有较强的普适性,如果没有太多经验的话,...
  • 笔者刚开始接触网站seo优化的时候对seo关键词优化分析并不看重,但随后改变了想法。既然一个网站的核心内容不能想当然,理所当然,网站的关键词也一样,不能随便想想就轻易确定。... 词语是强大的,不同的词语表达
  • 关键词提取综述

    千次阅读 2016-11-18 17:33:31
    关键词提取综述本文资料来自于一篇2014年的论文Automatic Keyphrase Extraction:A Survey of the State of the Art主要选取提取关键词算法的部分,不涉及评价以及数据集等。关键词提取一般有两个阶段,第一阶段是...
  • 关键词提取算法

    千次阅读 2018-08-31 00:38:16
    Table of Contents 概述 TF-IDF算法 传统算法 加权变种 TextRank算法 ...关键词是代表文章重要...现实中大量文本不包含关键词,如果我们可以准确的将所有文档都用几个简单的关键词描述出来,就能使人们便捷地浏...
  • 关键词提取技术

    千次阅读 2019-09-27 18:06:01
    第五章 关键词提取算法 中管方法分析: 1.有监督方法及语料库技术 将关键词抽取任务转化为分类问题或标注问题。 有监督机器学习的分类方法主要借助决策树、朴素贝叶斯、支持向量机、最大熵模型、隐马尔可夫模型、...
  • 选择什么样的关键词最符合网站的定位、什么样的关键词质量最高、什么样的关键词能带来转化,都需要SEOer根据网站的计划和对关键词的认识进行判断,选择对网站目标最有利的关键词。 # v. \5 {3 {* v3 K2 ? 1 w8 z...
  • 笔记:关键词提取算法

    千次阅读 2018-07-26 22:36:47
    关键词提取算法一般也能分为有监督和无监督。 1、有监督的关键词提取算法主要是通过分类的方式进行的,...另外,会有大量的信息出现,一个固定的词表有时很难将信息的内容表达出来。 2、而无监督的方法对数据要...
  • C++替代关键词(and,or,not)

    千次阅读 2019-10-22 23:03:30
    下列例子用到了C++的关键词and,not,虽然这种做法比较少用,但它可读性比||和!会好很多。
  • 圈定能高度概括你网站主题或所提供服务的一至三个关键词。如提供二手房产交易的网站可能圈定的关键词是:二手房;北京二手房;房产中介 等 找出你圈定的关键词的同义词:如网站的主题是 旅游,相应的同义词可能有 ...
  • 关键词是一篇文档中表达的主要话题,处理文档或句子时,提取关键词是最重要的工作之一,这在NLP中也是一个十分有用的task。 常见的关键词提取方法有:TF-IDF关键词提取方法、Topic-model关键词提取方法和RAKE关键词...
  • SEM 关键词的选择

    千次阅读 2015-09-24 22:46:37
    站在潜在手中的角度考虑问题,设想潜在受众会用什么样的词找寻此类产品或服务。同时根据企业不同的推广要求,策划适合的关键词。一般情况下,通用型关键词提高流量,与含有描述产品或服务的关键词能提高转化率。拓展...
  • 文章的关键词通常具有以下三个特点: 1、 可读性。关键词本身应该是有意义的词或者短语。例如,“我们约会吧”是有意义的短语,而“我们”则不是。 2、相关性。关键词必须与文章的主题相关。例如,一篇介绍巴萨在...
  • 关键词工具的看法

    2013-08-04 10:26:51
    如果它只能让汉奸在卖国条约上签字,人民大众不能用它来表达它的感情,它就不是所谓的工具了。工具只是用来达到人们所要做的某一个目的。同样的,关键词工具只是用于来挖掘关键词,最终的关键词选择还是由人来
  • tfidf进行关键词提取

    万次阅读 2019-03-29 11:03:17
    tf-idf简介 在信息提取的应用场景之中,我们往往需要一些文本中的重要...那么什么样的词算是文本中的关键词呢?一方面,这个词应该在文本中出现的次数比较多;另一方面,这个词应该不那么常见,若是这个词在很多文...
  • 关键词表达了客户的需求,帮助广告主准确定位潜在客户的需求。关键词点击率是关键词展 示的次数与关键词被点击的次数的百分比。点击率越高,客户对该关键词展示的内容越有兴趣。所以,分析关键词的点击率对判断广告...
  • 人工智能屏蔽关键词的新思路

    千次阅读 2013-04-05 22:54:43
     虽然政府设置了很多关键词,但还是有很多人使用各种手段来绕过关键词系统,用各种奇怪的句法来来表达自己要表达意思,其手段大概有以下几招:  一、打散词句,在呈连续状态的词句打散,嵌入各种符号或者与词句...
  • R文本挖掘-文章关键词提取

    千次阅读 2017-07-24 12:18:20
    关键词提取(keywords) 词频(Term Frequency) 逆文档频率(Inverse Document Frequency) IDF就是每个词的权重,它的大小与一个词的常见程度成反比。 TF-IDF(Term Frequency-Inverse Document Frequency) ...
  • 【转载】文本关键词提取算法解析

    千次阅读 2018-09-12 19:08:38
    与此同时,不管是基于文本的推荐还是基于文本的搜索,对于文本关键词的依赖也很大,关键词提取的准确程度直接关系到推荐系统或者搜索系统的最终效果。因此,关键词提取在文本挖掘领域是一个很重要的部分。 关于文本...
  • 文本分类和提取关键词算法 背景 Web应用程序变得越来越智能。 从网站上使用服务的日子已经一去不复返了,用户不得不填写一个巨大的表格。 假设您有一个适合书迷的网站。 在Web 2.0之前,像这样的网站曾经以诸如年龄...
  • NLP实战之关键词提取与主题模型

    千次阅读 2020-05-18 15:19:17
    中文自然语言处理分析 ...1.1 关键词提取 1.1.1 基于 TF-IDF 算法的关键词抽取 import jieba.analyse jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=()) sentence 为
  • 关键词抽取之TFIDF算法

    千次阅读 2019-04-28 16:23:47
    最近boss交代了一个任务,展示一个文档的关键词图,小农同学就努力学习起来,从结巴分词、Wordcloud到hanlp、echarts展示字符云。以下小农同学要总结一下学习到的关键词抽取的算法之一TF-IDF算法。 一个容易想到的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 42,053
精华内容 16,821
关键字:

关键词表达什么意思