精华内容
下载资源
问答
  • 自然语言关键词提取

    2021-01-07 04:50:52
    关键词提取就是从文本里面把跟这篇文章意义最相关的一些词语抽取出来,在文献检索、自动文摘、文本聚类/分类等方面有着重要的应用。 关键词提取算法一般分为有监督和无监督两类 有监督的关键词提取方法主要是通过...
  • Java语言中static关键词应用解析
  • Java语言中static关键词应用解析.pdf
  • 最近在做自然语言处理,当句子中有多个关键字时,就无法简单的通过关键字进行分类,需要筛选出句子的核心关键字,基于这个思想,自己开发了一个打分器,得分多高的关键词,即为该句的核心关键词   该打分器主要是...

    最近在做自然语言处理,当句子中有多个关键字时,就无法简单的通过关键字进行分类,需要筛选出句子的核心关键字,基于这个思想,自己开发了一个打分器,得分多高的关键词,即为该句的核心关键词

     

    该打分器主要是为自然句子中的关键字进行打分,通过分数的高低选举出关键字的重要度

    下面通过简单的例子说明,如句子: 电脑异响,怀疑是硬盘有问题,查为风扇的故障,更换风扇后正常.

    其中筛选出和电脑相关的词汇设置为关键字:硬盘,风扇 再筛选出来加分词:故障 减分词:正常

    然后通过公式score = d/(distance+1) * weight 其中d为调节因子,distance为关键字到加(减)分词的距离,weight代表加(减)分词的权重 经计算该句子关键词的得分分别为:风扇3.5 硬盘1.0 因此我们得知,该句子核心是:风扇的故障

     

    应用场景:对汽车,电脑。。。之类的生产制造售后维修文本信息进行归类,丰富知识库,通过大数据分析还可挖掘出各部件的问题及易坏程度等等

     

    其中有几个需要INPUT的词库:

    关键词词库,存放组成该物体的零部件词汇,以电脑为例,关键词词库应有:cpu 硬盘 显示器 风扇 ...

    加分词库,可以描述该部件非正常的词汇如,异响,有问题,不亮,反应慢 ...

    减分词库,描述该部件正常的词汇,正常,无异常,无问题 ...

     

    打分器源码: https://github.com/rockZjy/KeywordScore

    最近才开始用githup,不足之处请指导

    展开全文
  • 蒙古文历史文献图像关键词识别的视觉语言模型
  • 零基础Python人工智能自然语言处理文本挖掘关键词提取:零基础入门学习自然语言处理,自然语言处理基本流程,文本挖掘基本处理流程,anaconda对Python项目多包多环境多版本管理,关键词提取算法TF-IDF/TextRank算法...
  • Go语言有25个关键词。它们只能在语法允许的场合使用,不能被用户自定义的变量或者函数名覆盖。它们如下所示。 break default func interface select case defer go map struct chan else goto package switch...
  • 自然语言处理系列篇——关键词智能提取:https://zhuanlan.zhihu.com/p/25889937

    自然语言处理系列篇——关键词智能提取:https://zhuanlan.zhihu.com/p/25889937

    展开全文
  • 关键词提取概述 关键词是能够表达文档中心内容的词语,一段话中通常有一个或者多个关键词关键词提取常用于信息检索、系统汇集以供读者检阅。关键词提取是文本挖掘领域的一个分支,是文本检索、文档比较、摘要生成...

    关键词提取概述

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

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

    1. 无监督关键词提取方法
      不需要人工标注的语料,利用某些方法发现文本中比较重要的词作为关键词,进行关键词提取。该方法的思想是先抽取出候选词,然后对各个候选词进行打分,然后输出分值最高的 个候选词作为关键词。

      • 不同的打分策略对应不同的算法,例如 TF-IDF,TextRank,LDA 等算法。
      • 主要提取方法分为三类:
        • 基于统计特征的关键词提取(TF,TF-IDF),思想是利用文档中词语的统计信息抽取文档的关键词
        • 基于词图模型的关键词提取(PageRank,TextRank),思想:首先要构建文档的语言网络图,然后对语言进行网络图分析,在这个图上寻找具有重要作用的词或者短语,这些短语就是文档的关键词。
        • 基于主题模型的关键词提取(LDA),思想:利用主题模型中关于主题分布的性质进行关键词提取
    2. 有监督关键词提取方法
      将关键词抽取过程视为二分类问题,先提取出候选词,然后对于每个候选词划定标签,要么是关键词,要么不是关键词,然后训练关键词抽取分类器。当新来一篇文档时,提取出所有的候选词,然后利用训练好的关键词提取分类器,对各个候选词进行分类,最终将标签为关键词的候选词作为关键词。

    两种方法对比:

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

    关键词提取常用工具包

    jieba

    立志做最好的 Python 中文分词组件(但显然还差很远,关键词提取自带词典很弱、不支持短语提取)。Github 仓库 https://github.com/fxsjy/jieba

    1. jieba 提取关键词
    sentence="教你如何用 jieba 提取关键词"
    import jieba.analyse
    jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=())
    

    allowPOS:仅包括指定词性的词,默认值为空,即不筛选。

    关键词提取所使用逆向文件频率(idf)文本语料库可以切换成自定义语料库的路径(只支持本地路径),比如:

    # idf_path="https://raw.githubusercontent.com/fxsjy/jieba/master/extra_dict/idf.txt.big"
    idf_path="dict/idf.big"
    jieba.analyse.set_idf_path(idf_path)
    jieba.analyse.extract_tags(content, topK=10)
    

    关键词提取所使用停用词(Stop Words 也可以切换成自定义语料库的路径(只支持本地路径),比如:

    # idf_path="https://raw.githubusercontent.com/fxsjy/jieba/master/extra_dict/idf.txt.big"
    stop_words="dict/stop_words.txt"
    jieba.analyse.set_stop_words(stop_words)
    jieba.analyse.extract_tags(content, topK=10)
    

    通过参数 withWeight=1(默认为0)可以将关键词权重值一并返回。

    jieba.analyse.extract_tags(content, topK=10, withWeight=1)
    
    • 基于 textrank 算法的关键词提取
      jieba.analyse.textrank(sentence, topK=20, withWeight=False, allowPOS=('ns', 'n', 'vn', 'v')) 直接使用,接口相同,注意默认过滤词性。注:textrank 会过滤掉中英混合中的英文单词,比如 “你Python用得怎么样,我们这边开发主流语言是Python”。
    1. 体验
    • 使用关键词提取功能最好自备停用词词典,自带词典效果一般,很好日常口语都没有被过滤掉。
    • 不支持短语提取,如何需要提取短语,比如 “关键词提取”,可以考虑使用 jionlp 。

    Textrank4zh

    TextRank 算法可以用来从文本中提取关键词和摘要(重要的句子)。TextRank4ZH 是针对中文文本的 TextRank 算法的 Python 实现。官方 Github 仓库 https://github.com/letiantian/TextRank4ZH。安装依赖于 jieba

    1. 用法:
    # pip install textrank4zh  安装 textrank4zh 
    from textrank4zh import TextRank4Keyword, TextRank4Sentence
    text = "韩国首都首尔是亚洲许多气温接近或超过历史最低温度的地区之一。手指和脚趾都冻麻了。人们煮上了火锅,勇敢地面对各种因素——有时是在新冠病毒疫情不断升级的地方——将幽默作为一种应对机制。"
    tr = TextRank4Keyword()
    tr.analyze(text=text, lower=True, window=2)
    for item in tr4w.get_keywords(20, word_min_len=1): # 提取关键词
        print(item.word, item.weight)
    # 前 3 个词是:病毒、接近、最低温度    
    for phrase in tr.get_keyphrases(keywords_num=20, min_occur_num= 2): # 提取关键短语
        print(phrase)
    
    tr4s = TextRank4Sentence()
    tr4s.analyze(text=text, lower=True, source = 'all_filters')
    
    for item in tr4s.get_key_sentences(num=3):
        print(item.index, item.weight, item.sentence)  # 提取摘要,index 是语句在文本中位置,weight 是权重    
    
    1. 使用体验
    • 短语提取比较鸡肋,几乎提取不到有用信息,这也是诸多中文自然语言处理包共有的缺陷。

    SnowNLP

    一个可以方便的处理中文文本内容的 Python 写的类库,受到了 TextBlob 的启发而写的。Pypi 库介绍 https://pypi.org/project/snownlp/

    1. 安装
    pip3 install snownlp
    
    1. 用法
    from snownlp import SnowNLP
    sentence = "结婚的和尚未结婚的都对新政充满意外,沿海南方向逃跑"
    nlp = SnowNLP(sentence)
    
    s_token = nlp.words # 分词
    print(s_token)
    # ['结婚', '的', '和', '尚未', '结婚', '的', '都', '对', '新', '政', '充满', '意外', ',', '沿海', '南方', '向', '逃跑']
    
    nlp.keywords(5)
    # ['南方', '逃跑', '沿海', '尚未', '结婚']
    
    • 分词错误:“新政”,“海南” 是正确的词语
    • 关键词错误,这个依赖于分词

    snownlp 还支持 .tags 词性标注,sentiments 情感分析, pinyin 中文拼音, sentences 句子分割, summary 摘要抽取等功能。

    1. 难点
      一些对中文分词比较挑战性的句子 https://blog.csdn.net/smartfox80/article/details/52352623,可以用来测试一个类库的对交集型歧义语句的分词能力。

    TextBlob (英文分析)

    官方文档 https://textblob.readthedocs.io/en/dev/

    参考

    展开全文
  • 学习目标    • 了解自然语言处理基本知识    • 掌握循环神经网络...• 关键词是代表文章重要内容的一组词,现实中大量文本不包含关键词,因此自动提取关键词技术能使人们便捷地浏览

    学习目标
       • 了解自然语言处理基本知识
       • 掌握循环神经网络算法
       • 掌握自然语言处理关键技术
       • 了解自然语言处理的应用

    关键词提取
       定义
          • 关键词是代表文章重要内容的一组词,现实中大量文本不包含关键词,因此自动提取关键词技术能使人们便捷地浏览和获取信息,对文本聚类、分类、自动摘要等起重要的作用。
          • 关键词提取算法一般也可以分为有监督无监督两类。
             • 有监督:主要是通过分类的方式进行,通过构建一个较为丰富和完善的词表,然后通过判断每个文档与词表中每个词的匹配程度,以类似打标签的方式,达到提取关键词的效果。
             • 无监督不需要人工生成、维护的词表,也不需要人工标准语料辅助进行训练。例如,TF-IDF算法、TextRank算法、主题模型算法(LSA、LSI、LDA)。
       TF - IDF算法
          • 词频-逆文档频率算法(Term Frequency-Inverse Document Frequency,TF-IDF ):是一种基于统计的计算方法,常用于评估在一个文档集中一个词对某份文档的重要程度。
          • 例如:
              世界献血日,学校团体、献血服务志愿者等可到血液中心参观检验加工过程,我们会对检验结果进行公示,同时血液的价格也将进行公示。
                • 其中,“献血”、“血液”、“进行”、“公示”等词出现的频次均为2,如果从TF算法的角度,他们对于这篇文档的重要性是一样的。但是实际上明显“血液”、“献血”对这篇文档来说更关键
          • TF算法:是统计一个词在一篇文档中出现的频次。其基本思想是,一个词在文档中出现的次数越多,则其对文档的表达能力也就越强
                 在这里插入图片描述
          • IDF算法:是统计一个词在文档集中的多少个文档中出现。其基本思想是,如果一个词在越少的文档中出现,则其对文档的区分能力也就越强
                 在这里插入图片描述
          • 其中,|D|为文档集中总文档数,|D_i |为文档集中出现词i的文档数量。
          • TF-IDF算法:tf×idf(i,j)=〖tf〗_ij×〖idf〗_i=n_ij/(∑_k▒n_kj )×log⁡((|D|)/(1+|D_i |))
       TextRank算法
          • TextRank算法的基本思想来源于Google的PageRank算法。PageRank算法是Google创始人拉里.佩奇和谢尔盖.布林于1997年构建早期的的搜索系统原型时提出的链接分析算法,该算法是用来评价搜索系统覆盖网页重要性的一种方法。其基本思想有两条:
             • 链接数量。一个网页被越多的其他网页链接,说明这个网页越重要。
             • 链接质量。一个网页被一个越高权值的网页链接,也能表明这个网页越重要。
    在这里插入图片描述
                • TextRank与其他算法的区别:可以脱离语料库的背景,仅对单篇文档进行分析就可以提取该文档的关键词。
                   • TF-IDF中需要统计每个词在语料库中的多少个文档有出现过,也就是逆文档频率
                   • 主题模型则要通过对大规模文档的学习,来发现文档的隐含主题。
                   • TextRank算法最早用于文档的自动摘要,基于句子维度的分析,利用TextRank对每个句子进行打分,挑选出分数最高的n个句子作为文档的关键句,以达到自动摘要的效果。
          • In(V_i)为V_i的入链集合,Out(V_j )为V_j的出链集合,|Out(V_j )|是出链的数量,因此V_i自身的得分为:
                    在这里插入图片描述
          • 为了避免孤立网页得分为0,因此加入一个阻尼系数d,如下:
                    在这里插入图片描述
          • PageRank是有向无权图,TextRank进行关键词提取时则是有权图,考虑在同一个窗口内词的共现。因此,TextRank的完整表达式为:
                    在这里插入图片描述
          • 当TextRank算法应用到关键词抽取任务时,与在自动摘要任务中应用相比,主要有两点不同
             • 词与词之间的关联没有权重
             • 每个词不是与文档中所有的词都有链接
             • 由于第一点不同,此时TextRank中的分数就退化为与PageRank一致;对于第二点不同,链接关系可以通过窗口来界定。
       LSA/LSI/LDA算法
          • 主题模型认为在词与文档之间没有直接的联系,它们应当还有一个维度将它们串联起来,这个维度称为主题。每个文档都应该对应着一个或者多个主题,而每个主题都会有对应的词分布,通过主题就可以得到每个文档的词分布。
    在这里插入图片描述
             • 一般来说,TF-IDF算法和TextRank算法就能满足大部分关键词提取的任务。但是在某些场景基于文档本身的关键词提取还不是非常足够,有些关键词并不一定会显示的出现在文档中,如一篇讲动物生存环境的科普文,通篇介绍了狮子老虎鳄鱼等各种动物的情况,但是文中并没有显示的出现动物二字,在这种情况下,前面的两种算法就不适用了,这时候就需要用到主题模型
             • 前面两种模型是直接根据词与文档的关系,对关键词进行抽取。这两种方法仅用到了文本中的统计信息,对文本中丰富的信息无法充分地进行利用,尤其是其中的语义信息,对文本关键词的抽取显然是一种非常有用的信息。
          • LSA\LSI算法
             • LSA(Latent Semantic Analysis,潜在语义分析)和LSI(Latent Semantic Index,潜在语义索引)都是对文档的潜在语义进行分析,但是潜在语义索引在分析,还会利用分析的结果建立相关的索引,二者通常被认为是同一种算法。其步骤为:
                • 使用BOW模型将每个文档表示为向量
                • 将所有文档词向量拼接起来构成词-文档矩阵(m×n)
                • 对词-文档矩阵进行SVD操作([m×r].[r×r].[r×n])。
                • 根据SVD的结果,每个词和文档都可以表示为r个主题构成的空间中的一个点,通过计算每个词和文档的相似度,可以得到每个文档中对每个词的相似度结果,取相似度最高的一个词即为文档的关键词。
             • 相较于传统SVM模型(Space Vector Model,空间向量模型)对语义信息利用的缺乏,LSA通过SVD将词、文档映射到一个低维的语义空间,挖掘出词、文档的浅层语义信息,从而对此、文档进行更本质地表达。
                • 优点:可以映射到低维空间,并在有限利用文本语义信息的同时,大大降低计算的代价,提高分析质量。
                • 缺点:(1)SVD的计算复杂度非常高,特征空间维度较大的,计算效率十分低下。(2)LSA得到的分布信息是基于已有数据集的,当一个新的文档进入到已有的特征空间时,需要对整个空间重新训练,以得到加入文档后对应的分布信息。(3)对词的频率分布不敏感、物理解释性薄弱。
          • LDA算法
             • LDA算法假设文档中主题的先验分布和主题中词的先验分布都服从狄利克雷分布。然后通过对已有数据集的统计,就可以得到每篇文档中主题的多项式分布和每个主题对应词的多项式分布。训练过程一般如下:
                • 随机初始化,对语料中每篇文档中的每个词w,随机地赋予一个topic编号z。
                • 重新扫描语料库,对每个词w按照吉布斯采样公式重新采样它的topic,在语料中进行更新。
                • 重复以上语料库的重新采样过程直到吉布斯采样收敛
                • 统计语料库topic-word共现频率矩阵,该矩阵就是LDA的模型。
                • 经过以上的步骤,就得到一个训练好的LDA模型,接下来就可以按照一定的方式针对新文档的topic进行预估,具体步骤如下:
                   • 随机初始化,对当前文档中的每个词w,随机地赋予一个topic编号z。
                   • 重新扫描当前文档,按照吉布斯采样公式,重新采样它的topic。
                   • 重复以上过程直到吉布斯采样收敛
                   • 统计文档中的topic分布即为预估结果

    展开全文
  • 汉英跨语言检索系统中关键词提取方法的研究,陈文君,於文雪,本文设计与实现了基于语句的汉英跨语言检索系统的关键词提取模块,关键词提取模块包括中文关键词提取和翻译转换两部分,此模块为��
  • 网络游戏-自然语言文本关键词关联网络构建系统.zip
  • 网站关键词提取工具易语言源码例程程序结合易语言编码转换支持库和正则表达式支持库,调用API函数提取网站关键词
  • 程序结合易语言扩展界面支持库,实现百度关键词搜索查询。易语言例程还使用到易语言互联网支持库,易语言多线程支持库,超文本浏览框支持库,应用接口支持库,正则表达式支持库。
  • 基于 TF-IDF 算法的关键词抽取 import jieba.analyse jieba.analyse.extract_tags(sentence, topK=20, withWeight=False, allowPOS=()) sentence 为待提取的文本 topK 为返回几个 TF/IDF 权重最大的关键词,...
  • scrapy基础博客:Python之...(1) 打开关键词搜索页面,找到含有关键词如自然语言处理有效链接标签; (2) 依据链接位置,反推链接所在的html层次,获取该层次的内容,实例的层次为div class="result...
  • 为了解决在自然语言人机交互中,自然语言的多样性和歧义性造成的自然语言解析难题,设计出一种基于自然语言关键词的人机交互方法,使得非专业人士也能通过浅显易懂的自然语言协调移动机器人的运动。这种方法的大致...
  • 作者:黄天元,复旦大学博士在读,目前研究涉及文本挖掘、社交网络分析和机器学习等。希望与大家分享学习经验,推广并加深R语言在业界的应用。邮箱:huang.tian-yuan...
  • 一、什么是关键词提取 ​ 关键词提取就是从文本里面把跟内容意义最相关的一些词语抽取出来。这个可以追溯到文献检索初期,关键词是为了文献标引工作,从报告、论文中选取出来用以表示全文主题内容信息的单词或术语...
  • 主要记录一些不容易记但经常用到的汇编语言关键词和重要指令。 循环 loop 执行循环 loope和loopne就是比loop多了一个测试ZF标志位的东西 loope是只有在CX不等于0和ZF=1的情况下才执行循环 loopne是是只有在CX...
  • 1 简介关键词抽取就是从文本里面把跟这篇文档意义最相关的一些词抽取出来。这个可以追溯到文献检索初期,当时还不支持全文搜索的时候,关键词就可以作为搜索这篇论文的词语。因此,目前依然可以在论文中看到关键词这...
  • 2021百度批量关键词网址采集工具E用语言源码下载
  • 本文和大家介绍一个使用超级简单,但是功能特别强大的自然语言关键词提取库,可以根据输入的自然语言提取出里面的信息。例如我在一句话里面说了哪些数值变量或者说了手机号码等 先看看下图的一个效果,下图是尝试...
  • 多种语言的热门关键词搜索 [Details coming soon]
  • PCQQ源码 关键词监控自动回复关键字监控理论是可以一直增加,目前只能好友直接聊天回复,不支持群。源码可以改成咨询客服,弄个菜单或者帮助关键字,然后回复指定内容和关键字文本。
  • 有源码及数据集,资源描述:基于TextRank、TF-IDF、LSI、LDA模型的关键词提取,实验数据为人民网的新闻,计算不同模型提取出的关键字的相似度
  • 这个可以追溯到文献检索初期,关键词是为了文献标引工作,从报告、论文中选取出来用以表示全文主题内容信息的单词或术语,在现在的报告和论文中,我们依然可以看到关键词这一项。因此,关键词在文献检索、自动文摘、...
  • 作者:黄天元,复旦大学博士在读,目前研究涉及文本挖掘、社交网络分析和机器学习等。希望与大家分享学习经验,推广并加深R语言在业界的应用。邮箱:huang.tian-yuan...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 140,629
精华内容 56,251
关键字:

关键词语言