NLTK学习

解决nltk报错:机器学习与NLP实践指南 自然语言处理(Natural Language Processing, NLP)是计算机科学与人工智能领域中研究如何通过算法处理和分析人类语言的一门技术。它能够使计算机理解人类语言的含义,并对语言数据做出智能反应。NLTK(Natural Language Toolkit)是Python编程语言中最流行的自然语言处理库之一,它提供了一系列用于符号和统计自然语言处理的库和程序。NLTK最初由Steven Bird和Edward Loper在宾夕法尼亚大学的计算机与信息科学系开发,并于2001年发布。 阅读详情

nltk: natural language toolkit 是一套基于python的自然语言处理工具集

安装

pip install nltk

在python解释器中

instal nltk
nltk.download()

可以选择下载语料库


Text

一个text里哪些词可以概述这个text的大致内容呢?

1.1搜索

concordance(“word”):显示word出现的上下文,第一次使用可能会比较慢,因为要建立随后的索引,后续索引就会非常快速

from nltk.book import *
text1.concordance('monstrous')

结果:
Displaying 11 of 11 matches:
ong the former , one was of a most monstrous size . … This came towards us ,
ON OF THE PSALMS . ” Touching that monstrous bulk of the whale or ork we have r
ll over with a heathenish array of monstrous clubs and spears . Some were thick
d as you gazed , and wondered what monstrous cannibal and savage could ever hav
that has survived the flood ; most monstrous and most mountainous ! That Himmal
they might scout at Moby Dick as a monstrous fable , or still worse and more de
th of Radney .’” CHAPTER 55 Of the Monstrous Pictures of Whales . I shall ere l
ing Scenes . In connexion with the monstrous pictures of whales , I am strongly
ere to enter upon those still more monstrous stories of them which are to be fo
ght have been rummaged out of this monstrous cabinet there is no telling . But
of Whale - Bones ; for Whales of a monstrous size are oftentimes cast up dead u

similar(‘word’)找出与word相关的单词
common_contexts([“word1”, “word2”])可以找出多个单词相似的上下文,使用逗号分开,包含在方括号中
dispersion_plot([])用离散图判断词在文本的位置即偏移量
这里写图片描述

1.2计数

len(text1)计算长度

print(len(text1))#text1的单词和标点总数 即token数
print(len(set(text1)))#set去掉重复,计数text1中去重后的单词数
print(len(text1[0]))#text1中第一个单词的长度

count(‘word’)单词word在文本中出现了几次

1.3频率

FreqDist()计数每个词出现的次数

fdist1 = FreqDist(text1)
print(fdist1)
print(fdist1.most_common(20))
key = fdist1.keys()
print(list(key)[:5])
ite = fdist1.items()
print(list(ite)[:5])

结果:

[(‘,’, 18713), (‘the’, 13721), (‘.’, 6862), (‘of’, 6536), (‘and’, 6024), (‘a’, 4569), (‘to’, 4542), (‘;’, 4072), (‘in’, 3916), (‘that’, 2982), (“’”, 2684), (‘-‘, 2552), (‘his’, 2459), (‘it’, 2209), (‘I’, 2124), (’s’, 1739), (‘is’, 1695), (‘he’, 1661), (‘with’, 1659), (‘was’, 1632)]
[‘[‘, ‘Moby’, ‘Dick’, ‘by’, ‘Herman’]
[(‘[‘, 3), (‘Moby’, 84), (‘Dick’, 84), (‘by’, 1137), (‘Herman’, 1)]

显示单词的累计频率图:

fdist1.plot(20,cumulative = True)

这里写图片描述

1.4细粒度选词
v = set(text1)
long_words=[w for w in v if len(w)>7]
sorted(long_words)

通常太短的单词不具有代表性,所以选择长度长一些的单词;但是过长的单词很可能是罕见词,所以最好挑选长度够长而且出现频率够大的词

v = set(text1)
fdq = FreqDist(text1)
print(sorted(w for w in v if len(w)>7 and fdq[w]>7))
1.5搭配和双连词

red wine是一个搭配,而the wine就不是
为了找到搭配先用bigrams()找到一组组的单词对儿

print(list(bigrams(['more','is','said','than','done'])))

结果为:
[(‘more’, ‘is’), (‘is’, ‘said’), (‘said’, ‘than’), (‘than’, ‘done’)]
找到频率较高的这样的双连词就可以认为是搭配,词语搭配出现的频率可能比我们期待的单独的单词频率要高,collections()函数就是找搭配的

print(text4.collocations())

结果为:
United States; fellow citizens; four years; years ago; Federal
Government; General Government; American people; Vice President; Old
World; Almighty God; Fellow citizens; Chief Magistrate; Chief Justice;
God bless; every citizen; Indian tribes; public debt; one another;
foreign nations; political parties

1.6 NLTK频率分布中定义的函数

这里写图片描述


Python中字符串的一些常用函数,可能作为筛选条件
这里写图片描述

相关推荐

ICM42670-P嵌入式开发实战:从寄存器配置到姿态解算全解析

本文全面解析ICM42670-P高性能6轴MEMS运动传感器的嵌入式开发实战,涵盖寄存器配置、数据采集滤波、低功耗优化及姿态解算算法。通过详细代码示例和应用案例,帮助开发者快速掌握从硬件对接到姿态跟踪系统的完整开发流程,适用于可穿戴设备和智能家居等低功耗应用场景。

gold的博客 1066

Python自然语言处理:NLTK入门指南

自然语言处理(Natural Language Processing,NLP)是指计算机处理人类语言的领域。它是一门多学科交叉的学科,将计算机科学、人工智能、语言学等诸多学科的理论和方法融合在一起,将人类语言转化为计算机所能理解的形式,实现对人类语言的自动处理、理解和生成。NLP可以应用到很多方面,比如语音识别、机器翻译、情感分析、智能客服等等。NLTK是Natural Language Toolkit的缩写,是Python自然语言处理领域中最流行的一款工具包。

BXA 1万+

使用CLion在Window端进行linux开发

        以往不管是开发x86端linux程序还是arm端linux程序,都是使用Source Insight作为源码编辑工具的,如下图      去年底,发现CLion的2018.3更新版本,可以支持remote host开发了,大爱!     我是基于以下几点原因,将开发工具换成CLion 1. 语法高亮较明显、跳转、重构方便(我很看重这个); 2. 可以使用图形界面进行调...

alist的笔记专栏 1万+

自然语言处理库——NLTK

NLTK(www.nltk.org)是在处理预料库、分类文本、分析语言结构等多项操作中最长遇到的包。其收集的大量公开数据集、模型上提供了全面、易用的接口,涵盖了分词、词性标注(Part-Of-Speech tag, POS-tag)、命名实体识别(Named Entity Recognition, NER)、句法分析(Syntactic Parse)等各项 NLP 领域的功能。 ...

满腹的小不甘 7926

COMSOL仿真避坑指南:列管反应器模拟中多孔介质与化学反应设置的5个常见错误

本文详细解析了COMSOL仿真中列管反应器模拟的5个常见错误,包括多孔介质模型选择、化学反应接口配置、对流扩散方程处理、薄层热阻设置及网格独立性验证。特别针对多孔介质与化学反应设置的误区,提供了实用的判断标准和修正方法,帮助工程师避免计算偏差,提升仿真精度。

weixin_29597551的博客 321

NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()

Please use torch.nn.Module.to_empty() instead of torch.nn.Module.to()输出(llama) (base) [root@localhost home]# nvidia-smi Unable to determine the device handle for GPU0000:09:00.0: Unknown Error。这是典型的“孤儿进程”,但它还是。(僵尸进程),占用 GPU 资源。如果进程仍然不消失,并且。,这意味着它的父进程是。

m0_61636632的博客 2096

【小沐学NLP】Python使用NLTK库的入门教程

NLTK - 自然语言工具包 - 是一套开源Python。支持自然研究和开发的模块、数据集和教程 语言处理。NLTK 需要 Python 版本 3.7、3.8、3.9、3.10 或 3.11。NLTK是一个高效的Python构建的平台,用来处理人类自然语言数据。它提供了易于使用的接口,通过这些接口可以访问超过50个语料库和词汇资源(如WordNet),还有一套用于分类、标记化、词干标记、解析和语义推理的文本处理库,以及工业级NLP库的封装器和一个活跃的讨论论坛。

爱看书的小沐 1万+

Arduino蜂鸣器播放《Astronomia》:从乐谱到代码的嵌入式音乐实现

在嵌入式系统开发中,通过编程控制硬件执行特定任务是核心基础。其原理在于利用微控制器生成精确的时序和频率信号,驱动执行器(如蜂鸣器、电机)完成预定动作。这项技术的价值在于实现了软件逻辑与物理世界的直接交互,是物联网设备、智能硬件开发的基石。常见的应用场景包括电子玩具的音效生成、报警器设计以及交互式艺术装置。本文以热门歌曲《Astronomia》的播放为例,具体展示了如何运用Arduino的`tone()`函数和数组数据结构,将抽象的乐谱转化为可执行的频率与延时控制代码,完整呈现了从**核心硬件解析**到**软

weixin_29796279的博客 347

NLTK 基础知识总结

什么事实NLTK NLTK,全称Natural Language Toolkit,自然语言处理工具包,是NLP研究领域常用的一个Python库,由宾夕法尼亚大学的Steven Bird和Edward Loper在Python的基础上开发的一个模块,至今已有超过十万行的代码。这是一个开源项目,包含数据集、Python模块、教程等; 怎样安装 详情可以参见我的另一篇博客NLP的开发环境搭建,通...

村雨遥 2万+

SAR ADC和sigma delta ADC的区别

0、ADC基本概念 ADC,即analog to digital converter,模拟到数字的转换器,简称模数转换器。 为什么需要ADC?因为现实的世界中,电信号是连续的,例如心电信号,或者声音信号,这些连续的信号被称为“模拟信号”。 图1:心电信号 图2:声音信号 然而这种连续的信号是无法被计算机处理的,计算机只认识0和1组成的“数字信号“。ADC就充当了这样一个桥梁,将“模拟信号”转换为计算机能识别的“数字信号”。举个例子,当前的心电电压为1.2V(实际没有这么高),ADC可能会得

长河柱天的博客 2万+

从询价到回款:一篇讲透 SAP SD 销售与分销的实战入门指南

摘要: SAP SD(Sales and Distribution)模块是SAP ERP中管理销售与分销的核心组件,贯穿从订单到回款(Order-to-Cash)的全流程。其核心价值在于将销售业务结构化,通过主数据(客户、物料、定价)和交易单据(订单、交货、发票)实现流程可审计、可自动化。SD模块与物流(MM)、生产(PP)、财务(FI)深度集成,涵盖定价策略、信用控制、发运管理、国际贸易等复杂场景。关键设计包括条件技术(Condition Technique)实现灵活定价,单据流(Document Flo

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 258

NLTK库安装教程(详细版)

nltk库 安装教程

weixin_51327281的博客 5万+

HTML流光爱心(完整代码)

HTML语言实现红蓝色流光爱心效果的完整代码。

AIGC 1万+

NLTK学习笔记——开篇

本人试过阅读书籍并在书上做笔记,奈何脑容量不足,书上的笔记也是杂乱无章,发现读过之处就好像没读。于是决定开始写NLTK系列的读书笔记。 本学习笔记主要用于个人备忘之用,会有诸多内容摘自其他网页或文章,本人会尽量写明出处,如有雷同,还请谅解。 本系列的NLTK学习笔记会尽量根据官方文档所标注的12个模块来记录,顺序不完全按照图示顺序,会根据自身的学习情况来定。

cangqiong112758的博客 553

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

python的nltk能做啥_Python NLTK学习2(FreqDist对象)

Python NLTK学习2(FreqDist对象)发表于:2016年12月20日阅读:20007除特别注明外,本站所有文章均为小杰Code原创本系列博客为学习《用Python进行自然语言处理》一书的学习笔记。频率分布打开Python解释器,输入如下代码:import nltkfrom nltk.book import *fdist1 = FreqDist(text1)我们使用Text的实...

weixin_39830323的博客 584

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

NLTK与深度学习的自然语言处理实战:利用NLTK和深度学习构建自定义语言模型

课程摘要 本课程深入讲解NLTK库在语言模型构建中的应用,重点涵盖以下内容: 语言模型基础:介绍统计模型和神经网络模型的差异 文本预处理技术:包括文本清洗、分词和停用词处理 自定义语言模型构建:详细讲解使用PyTorch构建LSTM模型的过程 模型训练方法:涉及数据准备、模型参数设置和训练流程 课程通过代码示例演示了从文本预处理到模型训练的全过程,特别关注如何利用NLTK与深度学习框架结合构建高效的语言模型。

WSSWWWSSW的博客 952

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

NLTK学习笔记——Classify模块(2)

注:本文为实战过程作铺垫,因为参考原文是英文的,每看一遍都要琢磨一遍单词和语法,因此总结一下原文的过程,以备忘之用。本文主要介绍原文中利用NLTK进行twitter语句分类的过程,在下一节就记录本人的实战过程。 参考:http://www.cnblogs.com/wentingtu/archive/2012/04/07/2436583.html 首先与NLTK的例子(即通过name判断gend

cangqiong112758的博客 2865

python的nltk能做啥_Python NLTK学习4(条件频率分布)

Python NLTK学习4(条件频率分布)发表于:2016年12月26日阅读:10703除特别注明外,本站所有文章均为小杰Code原创本系列博客为学习《用Python进行自然语言处理》一书的学习笔记。前文复习前面的博客中我们学习了一些语料库,我们知道布朗语料库是一个按照文体分类的语料库。我们还学习频率分布对象FreqDist。我们指定单词列表变量mylist,FreqDist(mylis...

weixin_39717692的博客 202

(1 NLTK学习笔记

NLTK学习笔记 (1 NLTK学习笔记 1 布朗语料库 导入: Import nltk From nltk.corpus import brown 调用语料库中所有的类别: Print(brown.categories()) 在所有的类别中挑选出某几种类别: Genres=[‘’] Whwords=[‘’] 使用for循环来进行迭代并优化代码行数: for I in range(0,len...

chujiu0的博客 225

Python NLTK的学习(一)

学习目标:搞定nltk 学习内容: 第一章 1.1-1.5 学习时间: 1.2020/10/16 学习产出: >>> from nltk.book import * *** Introductory Examples for the NLTK Book *** Loading text1, ..., text9 and sent1, ..., sent9 Type the name of the text or sentence to view it. Type: 'text

qq_44418077的博客 1911

收纳一些学习nltk过程中遇到的问题

收纳一些学习nltk过程中遇到的问题 python3使用nltk.download()时出错的解决办法 / 离线安装nltk_data

makesomethings的博客 201

NLTK学习总结

2.6 词形还原 lemmatization 词形还原操作会利用上下文语境和词性来确定相关单词的变化形式,并运用不同的标准化规则,根据词性来获取相关的词根(也叫lemma)。 # 词形还原 lemmatization print(nltk.stem.WordNetLemmatizer().lemmatize("ate")) # eat WordNetLemmatizer 使用了wordn...

yegan9112的博客 1090

nltk学习

先pip安装 pip install nltk 然后下载相关语料库: import nltk nltk.download() 检查语料库是否下载完成: from nltk.book import * 句子 -> 从句 -> 短语 -> 单词 词:一门独立语言中的最小单位。 词素:具有独特意义的最小语言单位,但它不是独立的,一个单词可以由...

szuhuanggang的博客 221

nltk学习之统计词频和分词nltk.word_tokenize nltk.FreqDist

分词 (1)可以使用split()函数 import nltk import numpy as np import re from nltk.corpus import stopwords #1 分词1 text = "Sentiment analysis is a challenging subject in machine learning.\ People express thei...

机器学习初学者必看,关注我,一起了解机器学习 3369

nltk入门学习记录

NLP(自然语言处理)就是开发能理解人类语言的应用程序和服务。 NLP库,现有许多开源的自然语言处理(NLP)库: Natural language toolkit(NLTK) Apache OpenNLP Stanford NLP suite Gate NLP library 自然语言工具包(NLTK)是最受欢迎的自然语言处理(NLP)库,它是用python语言编写的,背后有强大的社...

qq_43242266的博客 385

NLTK学习一

NLTK

追智的专栏 693
上一篇: Python nltk Learning to classify texts
下一篇: Leetcode 3-最长无重复子串
BeforeEasy
博客等级 码龄10年 92粉丝 207原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值