西安python零基础入门教程_Python NLP入门教程

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

使用NLTK Tokenize文本

在之前我们用拆分方法将文本分割成令牌,现在我们使用NLTK来标记化文本。

文本没有标记化之前是无法处理的,所以对文本进行标记化非常重要的.token化过程意味着将大的部件分割为小部件。

你可以将段落记号化成句子,将句子记号化成单个词,NLTK分别提供了句子分词和单词标记生成器。

假如有这样这段文本:

你好,亚当,你好吗?我希望一切都进展顺利。今天是美好的一天,见你哥们

使用句子标记生成器将文本标记化成句子:

来自nltk 。标记化导入sent_tokenize

mytext = “你好,亚当,你好吗?我希望一切都进展顺利。今天是美好的一天,见你兄弟。

打印(sent_tokenize (mytext的))

输出如下:

“”你好,亚当,你好吗?“”我希望一切进展顺利。“”今天是美好的一天,见你哥们儿。

这是你可能会想,这也太简单了,不需要使用NLTK的标记生成器都可以,直接使用正则表达式来拆分句子就行,因为每个句子都有标点和空格。

那么再来看下面的文本:

亚当先生,你好吗?我希望一切都进展顺利。今天是美好的一天,见你哥们。

这样如果使用标点符号拆分,你好会被认为是一个句子,如果使用NLTK:

来自nltk 。标记化导入sent_tokenize

mytext = “你好,亚当先生,你好吗?我希望一切都进展顺利,今天是美好的一天,见你兄弟。

打印(sent_tokenize (mytext的))

输出如下:

“”亚当先生,你好吗?“,”我希望一切都进展顺利“,”今天是美好的一天,见你兄弟。“]

这才是正确的拆分。

接下来试试单词标记生成器:

来自nltk 。标记化导入word_tokenize

mytext = “你好,亚当先生,你好吗?我希望一切都进展顺利,今天是美好的一天,见你兄弟。

打印(word_tokenize (mytext的))

输出如下:

“你好”“先生”“亚当”“如何”“是”“你”“”“”“我”“希望”“一切”“是” ''','好','','今天','是','a','好','日',',','看','你','伙计','。 “]

先生这个词也没有被分开.NLTK使用的是PUNKT模块的PunktSentenceTokenizer,它是NLTK.tokenize的一部分。而且这个标记者经过训练,可以适用于多种语言。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值