【自然语言处理】3.1NLTK工具集

这篇具有很好参考价值的文章主要介绍了【自然语言处理】3.1NLTK工具集。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

3.1 NLTK工具集

介绍

  • NLTK为自然语言处理集
  • 多语料库(Corpora)
  • 词典资源(Lexicon),如WordNet
  • 基本自然语言处理工具集
    • 标记解析(Tokenization)
    • 词干提取(Stemming)
    • 词性标注(POS Tagging)
    • 句法分析(Syntactic Parsing)
  • 安装(command+R), pip install nltk

3.1.1 常见语料库和词典资源

  • 下载
    • nltk.download() 方法
    import nltk
    nltk.download() 
     ```
    
    1. 停用词
    • 因为语义不重要(如冠词),可以加快处理速度,所以减少规模,这些词语称为stopwords
       from nltk.corpus import stopwards
       stopwards.words()
      
    1. 常见语料库
    • 文本数据集(图片,聊天记录等)
      • 未标注语料库(raw text/生语料库/生文本)
        • 使用下载方法如上所示,直接访问原始文本文件(目录为下载的时候选择的存储目录)
        • 调用NLTK提供的功能
          import nltk
          
        nltk.download(‘gutenberg’)
        from nltk.corpus import gutenberg
        gutenberg.raw(“austen-emma.txt”)
      • 人工标注语料库(Annotated corpus)```
        • 关于某项任务的结果(eg:句子记性语料库(sentence_polarity)包含了褒贬中性词,而且已经预处理过)
        • sentence_polarity使用方法
          • sentence_polarity.categories返回的是褒贬类信息,neg和pos
          • sentence_polarity.words(categories=‘pos’)选择语料库全部单词列表
        		[(sentence, category) for category in sentence_polarity.categories()
        		    for sentence in sentence_polarity.sents(categories=category)]
        		    # 返回的是一个大列表,每个元素为一个句子的单词列表和对应褒贬构成元组
        
    1. 常用词典
      1. WordNet
      • 英语词义词典,Thesaurus定义了同义词集合(Synset),同义词集合有相同意义的词义组成。Gloss(剪短的释义),不同用一次集合之间具有一定关系
        • 使用图示
           from nltk.corpus import wordnet
           nltk.download('wordnet')
           syns = wordnet.synsets("bank")
           # 返回的bank的全部十八个词义的synset同义词集合
           print(syns[0].name)
           # 返回的是bank的第一个词义的名称,其中n代表名词
           syns[0].definition()
           # 返回bank的第二个词义的定义,即为银行的定义,返回的是英语解释
           syns[0].examples() 
           # 返回的是bank的第一个使用实例
           syns[0].hypernyms()
           # 返回的是bank第一次词义的同义词集合
           dog = wordnet.synset('dog.n.01')
           cat = wordnet.synset('cat.n.01')
           dog.wup_similarity(cat)
          # 计算两个同义词之间的Wu-Palmer的相似度
          
    • synset返回全部词义,definition返回定义,examples返回使用例子,hypernyms返回第一个词义的同义词集合,wup_similarity返回Wu-Palmer相似度
    1. SentiWordNet
    • 是基于WordNet的标注词语的情感倾向词典,每个词语标注了褒义贬义中性。
    • 使用图示
		from nltk.corpus import sentiwordnet
		sentiwordnet.senti_synset('good.a.01')
		# 词good在形容词adjective下的第一语义,返回的是Poscore和Negscore

3.1.2 常见自然语言处理工具集

    1. 分词
    • 需要将较长句子切分为干句子(简单规则分句),但存在例外情况比如(Mr.)
    • sent_tokenize图示
    from nltk.tokenize import sent_tokenize
    text = gutenberg.raw("austen-emma.txt")
    sentence = sent_tokenize(text)
    # 对Emma小说进行全文分句
    print(sentence[100])
    # 显示其中一个分句
    
    1. 标记标注
    • 一个橘子是有若干标记(Token)按照顺序构成的,而且标记可以是一个词语/标点符号(自然语言处理最基本输入单元),而且将橘子分隔为标记的过程叫做标记解析(Tokenization),工作之一是讲标点符号和前面的单词拆分
    • word_tokenize图示
    from nltk.tokenize import word_tokenize
    word_tokenize(sentence[100])
    
    1. 词性标注
    • NLTK提供词性标注器(POS Tagger),NN为名词,VBP为动词,使用Penn Treebank(宾州树库)标注标准。而而且有词性标记含义的查询功能
    • pos_tag使用方法图示
    from nltk import pos_tag
    pos_tag(word_tokenize("They sat by the fire."))
    
    • 词性标注含义查询图示
    nltk.help.upenn_tagset('NN')
    nltk.help.upenn_tagset('VBP')
    nltk.help.upenn_tagset() # 返回所有词性的标注集以及各种词性的示例
    
    1. 其他工具
    • 命名实体识别
    • 组快分析(Chunking)
    • 句法分析

文章来源地址https://www.toymoban.com/news/detail-500432.html

到了这里,关于【自然语言处理】3.1NLTK工具集的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 入门NLTK:Python自然语言处理库初级教程

    NLTK(Natural Language Toolkit)是一个Python库,用于实现自然语言处理(NLP)的许多任务。NLTK包括一些有用的工具和资源,如文本语料库、词性标注器、语法分析器等。在这篇初级教程中,我们将了解NLTK的基础功能。 在开始使用NLTK之前,我们需要确保已经正确安装了它。可以使

    2024年02月14日
    浏览(32)
  • 自然语言处理入门:使用Python和NLTK进行文本预处理

    文章标题:自然语言处理入门:使用Python和NLTK进行文本预处理 简介 自然语言处理(NLP)是人工智能领域的一个重要分支,它致力于使计算机能够理解、分析和生成人类语言。本文将介绍如何使用Python编程语言和NLTK(Natural Language Toolkit)库进行文本预处理,为后续的文本分析

    2024年02月19日
    浏览(37)
  • 自然语言处理库NLTK的初步环境配置和使用例子

    NLTK的基本介绍见此, 了解自然语言处理_bcbobo21cn的博客-CSDN博客 先安装python;然后用pip命令安装nltk;   然后进入python,下载nltk的数据包;输入下图语句,弹出一个框,   一般选择 all,然后下载;下载完一部分后,失败,   看下有没有一些功能可用;输入下图2个语句,根

    2024年02月11日
    浏览(42)
  • HuggingFace开源的自然语言处理AI工具平台

    HuggingFace是一个开源的自然语言处理AI工具平台,它为NLP的开发者和研究者提供了一个简单、快速、高效、可靠的解决方案,让NLP变得更加简单、快速、高效、可靠。 Hugging Face平台主要包括以下几个部分: Transformers:一个提供了数千种预训练好的NLP模型(如BERT、GPT-3等)以及

    2024年02月12日
    浏览(28)
  • LangChain:快速构建自然语言处理应用程序的工具

    ❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈 (封面图由文心一格生成) LangChain 是一个用于构建端到端语言模型应用的

    2023年04月09日
    浏览(28)
  • 自然语言处理NLP:一文了解NLP自然语言处理技术,NLP在生活中的应用,图导加深了解,NLP语料库,NLP开源工具

    目录 1.自然语言处理NLP 1.1 NLP中英对照(双份) 1.2 相关文章  2.NLP语料库

    2024年02月09日
    浏览(46)
  • 【自然语言处理】【大模型】赋予大模型使用工具的能力:Toolformer与ART

    赋予大模型使用工具的能力:Toolformer与ART ​ 本文介绍两种赋予大模型使用外部工具能力的方法:Toolformer和ART。 Toolformer论文地址:https://arxiv.org/pdf/2302.04761.pdf ART论文地址:https://arxiv.org/pdf/2303.09014.pdf 相关博客 【自然语言处理】【长文本处理】RMT:能处理长度超过一百万

    2024年02月05日
    浏览(27)
  • 自然语言处理NLP:LTP、SnowNLP、HanLP 常用NLP工具和库对比

    常见NLP任务 Word Segmentation 分词 – Tokenization Stem extraction 词干提取 - Stemming Lexical reduction 词形还原 – Lemmatization Part of Speech Tagging 词性标注 – Parts of Speech Named entity recognition 命名主体识别 -NER Chunking 分块 -Chunking 语音识别 :也称为语音转文本,用于将语音数据以可靠的方式转

    2024年02月07日
    浏览(31)
  • 【自然语言处理】自然语言处理 --- NLP入门指南

    NLP的全称是 Natuarl Language Processing ,中文意思是自然语言处理,是人工智能领域的一个重要方向 自然语言处理(NLP)的一个最伟大的方面是跨越多个领域的计算研究,从人工智能到计算语言学的多个计算研究领域都在研究计算机与人类语言之间的相互作用。它主要关注计算机

    2024年02月03日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包