位置: 编程技术 - 正文

Python编程使用NLTK进行自然语言处理详解(python的nltk)

编辑:rootadmin

推荐整理分享Python编程使用NLTK进行自然语言处理详解(python的nltk),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python编程n!,python\n编程\t很,python\n\t,python\n编程\t很,python nltk,python\n\t,python nltk,python\n编程\t很,内容如对您有帮助,希望把文章链接给更多的朋友!

自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。自然语言工具箱(NLTK,NaturalLanguageToolkit)是一个基于Python语言的类库,它也是当前最为流行的自然语言编程与开发工具。在进行自然语言处理研究和应用时,恰当利用NLTK中提供的函数可以大幅度地提高效率。本文就将通过一些实例来向读者介绍NLTK的使用。

NLTK

NaturalLanguageToolkit,自然语言处理工具包,在NLP领域中,最常使用的一个Python库。

NLTK是一个开源的项目,包含:Python模块,数据集和教程,用于NLP的研究和开发 。NLTK由Steven Bird和Edward Loper在宾夕法尼亚大学计算机和信息科学系开发。NLTK包括图形演示和示例数据。其提供的教程解释了工具包支持的语言处理任务背后的基本概念。

开发环境:我所使用的Python版本是最新的3.5.1,NLTK版本是3.2。Python的安装不在本文的讨论范围内,我们略去不表。你可以从NLTK的官网上 Launcher会弹出下面这个界面,建议你选择安装所有的Packages,以免去日后一而再、再而三的进行安装,也为你的后续开发提供一个稳定的环境。某些包的Status显示“out of date”,你可以不必理会,它基本不影响你的使用与开发。

既然你已经安装成功,我们来小试牛刀一下。当然本文涉及的主要任务都是自然语言处理中最常用,最基础的pre-processing过程,结合机器学习的高级应用我们会在后续文章中再进行介绍。

1、SentencesSegment(分句)

Python编程使用NLTK进行自然语言处理详解(python的nltk)

也就是说我们手头有一段文本,我们希望把它分成一个一个的句子。此时可以使用NLTK中的punktsentencesegmenter。来看示例代码

由此,我们便把一段话成功分句了。

2、SentencesSegment(分词)

接下来我们要把每个句话再切割成逐个单词。最简单的方法是使用NLTK包中的WordPuncttokenizer。来看示例代码

我们的分词任务仍然完成的很好。除了WordPunct tokenizer之外,NLTK中还提供有另外三个分词方法,TreebankWordTokenizer,PunktWordTokenizer和WhitespaceTokenizer,而且他们的用法与WordPunct tokenizer也类似。然而,显然我们并不满足于此。对于比较复杂的词型,WordPunct tokenizer往往并不胜任。此时我们需要借助正则表达式的强大能力来完成分词任务,此时我所使用的函数是regexp_tokenize()。来看下面这段话

目前市面上可以参考的在Python下进行自然语言处理的书籍是由Steven Bird、Ewan Klein、Edward Loper编写的《Python 自然语言处理》。但是该书的编写时间距今已有近十年的时间,由于软件包更新等语言,在新环境下进行开发时,书中的某些代码并不能很正常的运行。最后,我们举一个书中代码out of date的例子(对上面这就话进行分词),并给出相应的解决办法。首先来看书中的一段节录

我们预期得到输出应该是这样的

但是我们实际得到的输出却是这样的(注意我们所使用的NLTK版本)

会出现这样的问题是由于nltk.internals.compile_regexp_to_noncapturing()在V3.1版本的NLTK中已经被抛弃(尽管在更早的版本中它仍然可以运行),为此我们把之前定义的pattern稍作修改

再次执行前面的语句,便会得到

以上便是我们对NLTK这个自然语言处理工具包的初步探索,日后主页君将结合机器学习中的方法再来探讨一些更为深入的应用。最后,我想说《Python 自然语言处理》仍然是当前非常值得推荐的一本讲述利用NLTK和Python进行自然语言处理技术的非常值得推荐的书籍。

总结

标签: python的nltk

本文链接地址:https://www.jiuchutong.com/biancheng/372269.html 转载请保留说明!

上一篇:高质量Python代码编写的5个优化技巧(高效的python)

下一篇:python内置函数:lambda、map、filter简单介绍(python内置函数open()的参数用来指定打开文本文件)

  • 公司处理固定资产的账务处理
  • 家具厂投入多少钱
  • 网上商城的主要功能以及购物流程
  • 房租押金不退还怎么处理
  • 发票上的收款人负法律责任吗
  • 研发费用属于哪个费用
  • 8000块电脑大概能跑多少分
  • 企业出资怎么填写
  • 汇算清缴中研发费用中其他费用可抵扣的比例是多少
  • 工程材料增值税税率2023年
  • 土地转让如何缴纳增值税
  • 房产税逾期未申报罚款多少
  • 预收款开票的税务处理
  • 返利回收期怎么计算
  • 包装材料报废后如何做会计核算?
  • 公司搞活动的话术
  • 环境保护税税率
  • 股权转让如何避免缴纳个税
  • 物业公司代收供暖费,可以开发票吗
  • 有一个公司能做多少事情
  • 哪些理财产品能赎回
  • 关于个人财产转让的规定
  • 车间设备折旧计入哪个科目
  • 建筑材料营改增之前怎么开发票
  • 凭证出现错误如何解决
  • 环卫公司增值税税率
  • 其他收益是一级科目还是二级科目
  • 其他应收款注销时处理
  • 公司组织的团建受伤算工伤吗
  • 消耗性生物资产如何结转成本
  • windows11正式版好用吗
  • 公司租用员工的车租车协议
  • 软件服务费怎么算
  • php脚本主要用于的三个领域
  • 当月费用下月付款怎么做账
  • swoole如何使用
  • 债转股税收优惠政策
  • 立陶宛广场
  • 应收账款怎么做账
  • 驱动开发函数详解
  • python快速检索
  • 报废产品需要入库吗
  • 开源 okr
  • 帝国cms文件夹介绍
  • 应收票据的核算内容
  • 开票机号可以随便填吗
  • 开普票需要公对公吗
  • 小规模城建税减半征收2020新政策
  • 公司代垫个税账务处理
  • 房产评估增值是什么意思
  • 已退货对方不开红字
  • 12月收入1月份开发票怎么报企业所得税
  • 自查时发现以前的事情
  • 企业向个人借款利息如何缴纳增值税
  • 黑白电子版照片如何变成彩色
  • 清洁服务公司账务处理
  • 什么是电子商业承兑汇票贴现
  • sql数据库压缩能提高性能吗
  • 强化系统设计
  • 手动GHOST安装系统方法教程图解
  • 为快捷方式建立快捷方式
  • linux中keepalive
  • linux配置命令
  • 如何使用shell脚本将文件中的人分组,并输出
  • unity跨脚本调用函数
  • shell脚本获取命令的输出结果
  • AndroidAnnotations 自定义控件 ant编译 找不到类
  • shell 方法调用
  • 批处理清空文本内容
  • unity读取文本文件
  • Unity 中WWW加载 AssetBundle---中文路径
  • linux shell脚本实例
  • python3.5升级
  • 使用JQuery实现简单的拼图网页
  • 四川税务局发票下载
  • 广东电子税务局手机版
  • 四川十大纳税企业
  • 国税发票如何查真伪查询
  • 税务局宣传报道
  • 新疆皮山县概况
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设