python QTreeWidgetItem下面有几个子tree_python-nlp ch1笔记:nlp的基础应用、高级应用、python优势、nltk环境搭建...

本帖是对(印度)Jalaj Thanaki作品《python自然语言处理》的翻译、缩减及改编~

nlp的基础应用

NLP是AI的子分支,其相关概念可以用于以下专家系统中:
语音识别系统
问答系统
机器翻译
文本摘要
情感分析
基于模板的聊天机器人
文本分类
主题分割

nlp的高级应用

·理解自然语言指令并通过自然语言同人类交互的类人机器人。

·构建一个通用机器翻译系统是NLP领域的长期目标之一。因为你可以轻松地构建两个特定语种之间的机器翻译系统,但这个系统并不能用来翻译这两个语种之外的其他语言。在深度学习的帮助下,我们可以构建一个通用的机器翻译系统,谷歌最近声称已经非常接近这一目标了。

·为指定文档生成逻辑标题的NLP系统是高级应用之一。在深度学习的帮助下,我们可以为文档生成标题和摘要。

·为某个主题图像生成文本是一种高级NLP应用。

·为人类生成个性化文本并忽略手写错误的高级机器人也是我们努力的目标之一。图1展现了更多的NLP应用。

635a0de5d915c9abe608a807e23ecc78.png
图1--NLP领域相关的更多深层应用

NLP和Python相结合的优势

下面的几个因素决定了 Python是构建自然语言处理专家系统的最佳选择之一·。使用Python为基于NLP的专家系统开发原型相当快速和便捷。

·有大量的开源NLP库可供 Python程序员使用。

·社区支持非常强力。

·易于使用,对初学者而言不复杂。

·快速开发:测试和评估都很简单。

·许多新框架,如 Apache Spark、 Apache Flink、 TensorFlow等,都提供 Python接口·相比其他编程范式,使用 Python构建的基于NLP的系统的最优化更为简单。

nltk环境搭建

建议本书的所有读者都从 GitHub 上获取NLPython项目的分支,项目地址是https://github.com/jalajthanaki/NLPython

本书使用 Linux(Ubuntu)作为操作系统。如果对 Linux不太熟悉,最好试着习惯使用它,因为大部分的高级框架,如 Apache Hadoop、 Apache Spark、 Apache Flink、 Google TensorFlow等,都需要 Linux系统环境。

GitHub项目中包含了如何安装 Linux,以及本书将要用到的基础 Linux命令的教学。如果你对Git不太了解,同样可以在项目中找到基础的 github 操作命令,链接是https://github.com/jalajthanaki/NLPython/tree/master/ch1/documentation

本章所需环境的安装指南见地址https://github.com/jalajthanaki/NLPython/tree/master/ch1/documentation

GitHub项目包含了安装指南、代码和wiki页面等。如果读者有任何问题,可以把它们发在 Gitter小组上。Gitter小组的网址是https://gitter.im/NLPython/Lobby

安装nltk的步骤如下

①其实最简单的安装方法就是直接在Google colab输入:

import nltk
nltk.download("popular")

②而书上提供的方法是针对Ubuntu的:

Installation and setup NLTK enviroment on Linux Ubuntu 14.04 (recommended way)

import sys
sys.version
sys.version_info 2_Pythonsys.version_info(major=2, minor=7, micro=6, releaselevel='final', serial=0)Installation of pyhton on Ubuntu 14.04Ubuntu system has pyhton 2.7.X inbuilt no need to download and install it To confirm whether python has been properly install or not do following steps.Step 1: Open system terminal
Step 2: 
$ python -V
Python 2.7.6Install pip and setup tools On Linux ubuntu 14.04What is pip?
pip is a package management system used to install and manage software packages written in PythonOpen your system's terminal and execute following commands$ sudo apt-get install -y python-pip
$ sudo pip install -U pip
$ sudo pip install setuptools==33.1.1Confirm pip has been installed successfully.$ pip -V
pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)Next step is to install nltk package and download nltk dataInstallation steps for NLTK on terminal execute following command
$ sudo pip install nltk
$ pythonAfter this now you are inside the python shell and check your nltk package install properly or not$ python
Python 2.7.6 (default, Oct 26 2016, 20:30:19) 
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>import nltk
>>>nltk.download()Choose the path where you wnat to download nltk data and click "Download" option.Download process may take long time.
you can refer the diagram 1.4 given in chapter no 1OR If you don't want to go inside python shell you can open your system's terminal and execute the following command
Command : sudo python -m nltk.downloader -d PATH_OF_NLTK_DATA all
Actual command : sudo python -m nltk.downloader -d /usr/local/share/nltk_data all

读者提示

本书是一本实用指南。作为专业人士,我强烈建议读者复现 GitHub上的代码,并完成书中的练习,这有助于理解NLP概念。不经练习而想彻底了解NLP几乎是不可能的,我保证这些代码很有趣。接下来的章节内容如下:

NLP概念解释
相关应用
NLP概念的必要性
实现概念的可行方法(代码都在 GitHub上)
面临的挑战
克服挑战的方法
练习

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

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

相关文章

C#使用ListView更新数据出现闪烁解决办法

C#使用ListView更新数据出现闪烁解决办法 在使用vs自动控件ListView控件时候,更新里面的部分代码时候出现闪烁的情况 如图: 解决以后: 解决办法使用双缓冲:添加新类继承ListView 对其重写 1 public class DoubleBufferListView : …

Lock的tryLock(long time, TimeUnit unit)方法

概述 tryLock(long time, TimeUnit unit)方法和tryLock()方法是类似的,只不过区别在于这个方法在拿不到锁时会等待一定的时间,在时间期限之内如果还拿不到锁,就返回false。如果一开始拿到锁或者在等待期间内拿到了锁,则返回true。…

python语音识别的第三方库_python标准库+内置函数+第三方库: 7.音频处理

python标准库内置函数第三方库 欲善其事,必先利其器 这其器必是python的标准库内置函数,话说许多第三方库, 也是对标准库的使用,进行封装,使得使用起来更方便。 这些库以使用场景来分类: 7、音频处理 音频处理主要适用…

SperingBoot+vue文件上传下载预览

上传文件: 前端: 整个过程,就是在使用FormData 添加 上File(这个Blob),并且key要和后台的名字对应上在点击上传按钮开始上传之前,使用了URL.createObjectURL(File)创建blobUrl,给了…

keepalived脑裂问题查找

在自己环境做keepalivedredis实验时&#xff0c;当重启了备用redies机器后&#xff0c;发现两台redies主机都拿到了VIP [plain] view plaincopy [rootredis2 ~]# ip addr list 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopbac…

python 多线程并行 矩阵乘法_python实现简单的并行矩阵乘法

python实现简单的并行矩阵乘法python实现简单的并行矩阵乘法本文采用的矩阵乘法方式是利用一个矩阵的行和二个矩阵的列相乘时不会互相影响。假设A(m,n)表示矩阵的m行&#xff0c;n列。那么C(m,m)A(m,n) * B(n,m) &#xff1a;计算C矩阵时候分解成&#xff1a;process-1&#xf…

停止Java线程,小心interrupt()方法

转自http://www.blogjava.NET/jinfeng_wang/archive/2008/04/27/196477.html ---------------------------------------------------------------------------------------------------- 程序是很简易的。然而&#xff0c;在编程人员面前&#xff0c;多线程呈现出了一组新的难…

python输入数学表达式并求值_用Python3实现表达式求值

一、题目描述 请用 python3编写一个计算器的控制台程序&#xff0c;支持加减乘除、乘方、括号、小数点&#xff0c;运算符优先级为括号>乘方>乘除>加减&#xff0c;同级别运算按照从左向右的顺序计算。 二、输入描述 数字包括"0123456789"&#xff0c;小数点…

mac上的mysql管理工具sequel pro

https://blog.csdn.net/wan_zaiyunduan/article/details/54909389 以前用过Plsql、Navicat、Workbench&#xff0c;现在换到mac上&#xff0c;用了现在这一款管理工具&#xff0c;很好用&#xff0c;所以推荐给大家。 完整的MySQL支持 Sequel Pro是一个快速,易于使用的Mac数据库…

报错 classes 拒绝访问_3种方式“移除”快速访问;为什么移除?你懂的...

Windows 10 在文件资源管理器中引入了"快速访问"这个功能&#xff0c;每当打开文件资源管理器窗口时&#xff0c;您都会看到常用文件夹和最近访问的文件的列表&#xff0c;这个功能虽然方便了日常使用&#xff0c;可能会提高工作效率&#xff0c;但是如果是公司的电脑…

java set是重复_java算法题,set内出现重复元素

题目将数字 1…9 填入一个33 的九宫格中&#xff0c;使得格子中每一横行和的值全部相等&#xff0c;每一竖列和的值全部相等。请你计算有多少种填数字的方案。这个是计蒜客上面的一个模拟题&#xff0c;我采用暴力。public class _3 {/** 将数字 1…9 填入一个33 的九宫格中&am…

Lock的lockInterruptibly()

概述 lockInterruptibly()方法比较特殊&#xff0c;当通过这个方法去获取锁时&#xff0c;如果其他线程正在等待获取锁&#xff0c;则这个线程能够响应中断&#xff0c;即中断线程的等待状态。也就使说&#xff0c;当两个线程同时通过lock.lockInterruptibly()想获取某个锁时&…

python中把输出结果写到一个文件中_Python3.6笔记之将程序运行结果输出到文件的方法...

Python3.6笔记之将程序运行结果输出到文件的方法 更新时间&#xff1a;2018年04月22日 14:27:32 投稿&#xff1a;jingxian 下面小编就为大家分享一篇Python3.6笔记之将程序运行结果输出到文件的方法&#xff0c;具有很好的参考价值&#xff0c;希望对大家有所帮助。一起跟随小…

hangfire.mysql.core_abp 使用 hangfire结合mysql

abp 官方使用的hangfire 默认使用的是sqlserver的存储mysql须要引入支持mysql的类库sql我这边使用的是Hangfire.MySql.Core数据库直接用nuget安装便可app首先按照官方文档要求&#xff0c;改几个地方sqlserver分别是 Startup 文件下serverservices.AddHangfire(config >{con…

python 图标题上移_Python-Matplotlib将图形标题移动到y轴

我目前在python中使用matplotlib来绘制一些数据,但是我希望图表的标题位于Y轴上,因为没有足够的空间来存储一个图形的标题和另一个图形的x轴标签.我知道我可以将hspace设置为更大的数字但是,我不想这样做,因为我计划将几个图表堆叠在一起,如果我调整hspace,那么图表将是真的简短…

solr的基础使用

查询运算符 例如&#xff1a;http://localhost:8984/solr/mycore/select?q*:* : 指定字段查指定值&#xff0c;如返回所有值q*:* ? 匹配单个字符&#xff0c; 例如: qtitle:??拳 可以匹配标题为“形意拳”的文档 * 匹配零个或多个字符, 例如: qtitle:*形意拳 或者 qtitl…

同步关键词lock

概述 1、API在JDK的java.util.concurrent.locks下。 2、不是Java关键字&#xff0c;是接口。 3、ReentrantLock是JDK唯一实现了Lock接口的类。 public interface Lock {//获取锁void lock();//可以响应中断的锁void lockInterruptibly() throws InterruptedException;//尝试…

Java bitset转string_将java BitSet保存到DB

默认情况下,JPA使用Java序列化来保存未知Serializable类型的属性(以便将序列化表示存储为byte []).通常它不是您想要的,因为可以有更有效的方式来表示您的数据.例如,BitSet可以有效地表示为数字(如果它的大小有界),或者byte [],或其他东西(遗憾的是,BitSet不提供进行这些转换的…

python读取raw图片文件_在python下读取并展示raw格式的图片实例

raw文件可能有些人没有&#xff0c;因此&#xff0c;先用一张图片创建一个raw格式的文件&#xff08;其实可以是其他类型的格式文件&#xff09; import numpy as np import cv2 img cv2.imread(cat.jpg) # 这里需要我们在当前目录下放一张名为cat.jpg的文件 img.tofile(cat.r…

python怎么网络通信_深入Python中的网络通信

TCP/IP计算机与网络设备两情侣要谈恋爱&#xff0c;相互通信&#xff0c;那么双方就必须有规则。基于相同的方法&#xff0c;不同的硬件、操作系统之间的通信&#xff0c;都需要一种规则。而我们就把这种规则称为协议(protocol)。TCP/IP 是互联网相关各类协议族的总称。TCP/IP是…