【NLTK系列01】:nltk库介绍

一、说明

        NLTK是个啥?它是个复杂的应用库,可以实现基本预料库操作,比如,、将文章分词成独立token,等操作。从词统计、标记化、词干提取、词性标记,停用词收集,包括语义索引和依赖关系解析等。

二、NLTK是个啥?

        NLTK是构建Python程序以处理人类语言数据的领先平台。 它为50多个语料库和词汇提供了易于使用的界面 资源,如WordNet, 以及一套用于分类、标记化、词干提取、标记、解析和语义推理的文本处理库, 用于工业级 NLP 库的包装器, 以及一个活跃的讨论论坛。

        得益于介绍编程基础知识以及计算语言学主题的实践指南,以及全面的 API 文档, NLTK 适用于语言学家、工程师、学生、教育工作者、研究人员和行业用户。 NLTK可用于Windows,Mac OS X和Linux。最重要的是,NLTK是一个免费的,开源的,社区驱动的项目。

        NLTK被称为“使用Python进行计算语言学教学和工作的绝佳工具”。 和“一个使用自然语言的惊人图书馆”。

      使用Python进行自然语言处理提供了实用的 语言处理编程简介。 由NLTK的创建者撰写,它指导读者了解基础知识 编写Python程序,使用语料库,对文本进行分类,分析语言结构, 等等。 本书的在线版本已针对Python 3和NLTK 3进行了更新。 (原始的Python 2版本仍然在 https://www.nltk.org/book_1ed 提供。

三、您可以使用NLTK执行的一些简单操作

        标记和标记一些文本:

>>> import nltk
>>> sentence = """At eight o'clock on Thursday morning
... Arthur didn't feel very good."""
>>> tokens = nltk.word_tokenize(sentence)
>>> tokens
['At', 'eight', "o'clock", 'on', 'Thursday', 'morning',
'Arthur', 'did', "n't", 'feel', 'very', 'good', '.']
>>> tagged = nltk.pos_tag(tokens)
>>> tagged[0:6]
[('At', 'IN'), ('eight', 'CD'), ("o'clock", 'JJ'), ('on', 'IN'),
('Thursday', 'NNP'), ('morning', 'NN')]

        标识命名实体:

>>> entities = nltk.chunk.ne_chunk(tagged)
>>> entities
Tree('S', [('At', 'IN'), ('eight', 'CD'), ("o'clock", 'JJ'),
           ('on', 'IN'), ('Thursday', 'NNP'), ('morning', 'NN'),
       Tree('PERSON', [('Arthur', 'NNP')]),
           ('did', 'VBD'), ("n't", 'RB'), ('feel', 'VB'),
           ('very', 'RB'), ('good', 'JJ'), ('.', '.')])

        显示解析树:

>>> from nltk.corpus import treebank
>>> t = treebank.parsed_sents('wsj_0001.mrg')[0]
>>> t.draw()

_images/树.gif

 如果您发表使用NLTK的作品,请引用NLTK书籍 遵循:Bird,Steven,Edward Loper和Ewan Klein(2009),使用Python进行自然语言处理。奥莱利媒体公司

参考文章:

NLTK :: Natural Language Toolkit

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/129246.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hive窗口函数回顾

1.语法 1.1 基于行的窗口函数 Hive的窗口函数分为两种类型,一种是基于行的窗口函数,即将某个字段的多行限定为一个范围,对范围内的字段值进行计算,最后将形成的字段拼接在该表上。 注意:在进行窗口函数计算之前&#…

web:[护网杯 2018]easy_tornado

题目 点进页面显示如下 点进去查看 有个render,结合题目名,可能是ssti 同时注意到url,无论点进哪个文件,url的格式都为file?filename/xxx&filehashxxx 所以结合hints.txt中的提示,filehash就是md5加密得到的&…

PL/SQL拉链表

练习:-- 拉链表练习: 维度表源表 ID M_NAME REST UP_DATE 1 车贷 0.01 2022/12/1 2 房贷 0.03 2022/12/1 3 经营贷 0.015 2022/12/1 维度表拉链表 ID M_NAME REST BEGIN_DATE END_DATE 1 车贷 …

平凡工作也能创造奇迹:学习公文的写作逻辑和技巧

引言 如何把平凡的工作写出光环 📜 很多初入职场的人在撰写个人先进事迹材料时面临的最大问题是:他们认为自己做的工作都是琐碎且普通的,没有任何惊天动地的成就或值得称赞的成绩。因此,他们感到非常困惑,不知道该如何…

elasticSearch7.9数据占用磁盘存储空间情况

最近,在VMware Workstation虚拟机上安装了es7.9,单节点的es,不是集群,然后建了一个索引(包含3个分片和一个副本),插入了500万条数据,占据磁盘空间17G。如下图: 索引的字…

Django的模版使用(Django-03)

一 模版的使用 模板引擎是一种可以让开发者把服务端数据填充到html网页中完成渲染效果的技术。它实现了 把前端代码和服务端代码分离 的作用,让项目中的业务逻辑代码和数据表现代码分离,让前端开发者和服务端开发者可以更好的完成协同开发。 静态网页&…

如何使用 ChatGPT 创建强大的讲故事广告

shadow: 使用AI技术来辅助创作故事越来越流行,从事营销相关工作的人员需要不断适应和学习新的技术和工具,以应对行业的变化和挑战。 如何使用ChatGPT创建讲故事的广告: A. 确定品牌故事和信息传递B. 确定目标受众C. 开发概念D. 使…

HarmonyOS/OpenHarmony原生应用-ArkTS万能卡片组件Stack

堆叠容器,子组件按照顺序依次入栈,后一个子组件覆盖前一个子组件。该组件从API Version 7开始支持。可以包含子组件。 一、接口 Stack(value?: { alignContent?: Alignment }) 从API version 9开始,该接口支持在ArkTS卡片中使用。 二、…

c++视觉---中值滤波处理

中值滤波(Median Filter)是一种常用的非线性平滑滤波方法,用于去除图像中的噪声。它不像线性滤波(如均值滤波或高斯滤波)那样使用权重来计算平均值或加权平均值,而是选择滤波窗口内的像素值中的中间值作为输…

真香!Jenkins 主从模式解决问题So Easy~

01.Jenkins 能干什么 Jenkins 是一个开源软件项目,是基于 Java 开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。 中文官网:https://jenkins.io/zh/ 0…

香港Web3.0生态现状

目前香港Web3.0生态正在快速发展。香港政府和金融机构正在积极推动Web3.0生态的建设,以推动数字经济和智慧城市的发展。香港政府已经发布了有关虚拟资产发展的政策宣言,鼓励和监管并重,加大力度推动虚拟资产产业向前发展。同时,香…

如何开始学习量子机器学习

一、关于量子计算 这是我关于量子机器学习(QML)的第二篇文章,这是第一篇,关于为什么你应该开始学习QML。 开始研究量子机器学习很困难,因为我不知道我需要了解多少量子力学和计算知识。我在101年上大学时上了量子力学2…