NLP

AI深度学习之自然语言处理

简介:自然语言处理。

北京时间 2019-05-13 22:30 开始学习NLP自然语言处理,贵在享受编码和实现的过程,下面将记录学习和整理的资料。

自然语言处理

中文名 外文名 缩写 适用领域
自然语言处理 Natural language processing NLP 计算机、人工智能

简介

简介摘自百度百科自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别。自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统。因而它是计算机科学的一部分。
自然语言处理(NLP)是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间的相互作用的领域。

NLP和深度学习发展概况和最新动态

  • NLP是什么?

    NLP( Natural Language Processing ) 是 自然 语言 处理 的 简称,是研究人与 计算机交互的语言问题的一门学科。机器理解并解释人类写作与说话方式的能力。近年来, 深度学习技术在自然语言处理方面的研究和应用也取得了显著的成果。

  • NLP能做什么?

    NLP技术已经无处不在如:提问和回答、知识工程、语言生成、语音识别,语音合成, 自动分词,句法分析,语法纠错,关键词提取,文本分类/聚类,文本自动摘要,信息检索 (ES,Solr),信息抽取,知识图谱,机器翻译,人机对话,机器写作,情感分析,文字识 别,阅读理解,推荐系统,高考机器人等。

NLP实现的算法通用的步骤

  • 1.论文的阅读,最新算法的研究
    • A 顶级会议论文:
    A1)机器学习顶级会议:NIPS, ICML, UAI, AISTATS; (期刊:JMLR, ML, Trends in ML, IEEE T-NN)
    A2)计算机视觉和图像识别:ICCV, CVPR, ECCV; (期刊:IEEE T-PAMI, IJCV, IEEE T-IP)
    A3)人工智能:IJCAI, AAAI; (期刊AI) ACL
    • B 搜索引擎(百度学术,谷歌学术,知乎,百度、谷歌、bing)

  • 2.算法的大概方向的评估训和确定
    • A 问题相似度评估
    • B 情景相似度评估
    • C 语言 是否可切换
    • D 确定

  • 3.练数据收集,清洗以及数据预处理
    • A 数据收集:公司数据、网络数据、公开数据集、GAN生成数据
    • B 清洗:数据采样,噪声过滤,数据生成
    • C 数据预处理:特征化和数值化后转化为可训练的数据

  • 4.算法实现,系统设计,参数调优,模型升级
    • A 算法实现:参考资料论文
    • B 系统设计:软件模块设计架构
    • C 参数调优:更改网络参数
    • D 模型升级:模型算法升级,错误样本再训练

  • 5.模型效果评估与部署
    • A 准确率
    • B 召回率
    • C 设计lib库本地调用
    • D 封装成服务

NLP常用PYTHON开发包的介绍

1.NumPy

NumPy是Python中的一个运算速度非常快的一个数学库,它非常重视数组。它允许你在Python中进行向量和矩阵计算,并且由于许多底层函数实际上是用C编写的,因此你可以体验在原生Python中永远无法体验到的速度。它包括:

  • 1.一个强大的N维数组对象Array;
  • 2.比较成熟的(广播)函数 库;
  • 3.用于整合C/C++和Fortran代码的工具包;
  • 4.实用的线性代数、 傅里叶变换和随机数生成函数。

numpy和稀疏矩阵运算包scipy配合使用 更加方便。

安装:

pip install numpy

2.NLTK

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

安装:

pip install nltk

3.Gensim

Gensim是一款开源的第三方Python工具包,它占内存低,接口简单,用于从原始的非结构化的文本中,无监督地学习到文本隐层的主题向量表达。 它可以用 来从文档中自劢提取语义主题。它包含了很多非监督学习算法如: TF/IDF,潜在语义分析(Latent Semantic Analysis,LSA)、隐含狄 利克雷分配(Latent Dirichlet Allocation,LDA),层次狄利克雷过程 ( Hierarchical Dirichlet Processes ,HDP )等。
Gensim支持Word2Vec,Doc2Vec等模型。

  • 安装:
    Gensim介绍,下载,安装及在Wing Ide中使用
    • 1)进入http://www.lfd.uci.edu/~gohlke/pythonlibs/
    • 2)下载对应的版本:如python3.6,64位Windows操作系统,应该下载numpy- 1.13.1+mkl-cp36-cp36m-win_amd64.whl,scipy-0.19.1-cp36-cp36m- win_amd64.whl和gensim-2.3.0-cp36-cp36m-win_amd64.whl包。
    • 3)安装下载包的顸序分别安装包,注意顸序丌能改变。安装命令: • 1、pip install gensim
    • 2、Pip install *.whl文件
4.Tensorflow

TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统。 TensorFlow可被用于语音识别戒图像识别等多顷机器学习和深度学习领域。 TensorFlow是一个采用数据流图(data flow graphs),用于数值计算的开源软件 库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互 联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开 计算,例如台式计算机中的一个戒多个CPU(戒GPU),服务器,移劢设备等等。 TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员 和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用 性使其也可广泛用于其他计算领域。

  • 安装:
    Pip install tensorflow
    Pip install tf-nightly-gpu/cpu
    

推荐阅读

目录