欢迎,计算机科学与信息计算爱好者!

NLP

scott 9个月前 (01-08) 48次浏览 0个评论 扫描二维码
文章目录[隐藏]

自然语言处理language processing NLP
自然语言处理(英语: natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。
链接维基百科

自然语言处理是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言,特别是如何编程计算机以成功处理大量的自然语言数据。
[描述来源:维基百科URL:https://en.wikipedia.org/wiki/Naturallanguage_processing%5D

NLP的基本任务包括正则表达式、分词、词法分析、语音识别、文本分类、信息检索、问答系统——如对一些问题进行回答或与用户进行交互——机器翻译等。常用的模型则有马科夫模型、朴素贝叶斯、循环神经网络等。
我们把处理口语和书面语(统称为”语言“)的计算机技术称为语音和语言处理,简称自然语言处理,这是一个范围很广泛的定义,这个定义包括了从人人皆知的诸如词数计算、自动换行等简单技术,直到诸如在web上的自动问答、实时的口语自动翻译等高级技术。

自然语言处理的这些应用与其他应用系统的区别是,自然语言处理要使用语言知识。例如,UNIX的wc程序可以用来计算文本文件中的字节数、词数或行数。当我们用它来计算字节数和行数时,wc只用于进行一般的数据处理。但是,当我们用它来计算一个文件中词的数目时,就需要关于”什么是一个词”的语言知识,这样,这个wc也就成为了一个自然语言处理系统。
[描述来源:Jurafsky, D.; Martin, J. H. (2005).自然语言处理综论.冯志伟,孙乐译.电子工业出版社. ]

发展历史

描述

自然语言处理(NLP)大体是从上世纪50年代开始,1950年,图灵发表论文“Computing Machinery and Intelligence”,提出著名的“图灵测试”作为判断智能的条件。1948年Shannon把离散马尔科夫过程的概率模型应用于描述语言的自动机。
Chomsky吸取了他的思想,首先把有限状态自动机作为一种工具来刻画语言的语法,并且把有限状态语言定义为由有限状态语法生成的语言。这些早起的研究工作产生了形式语言理论(formal language theory)这样的研究领域,采用代数和集合论把形式语言定义为符号的序列。
这一时期的研究都相当基础,1954年的Georgetown的实验试图将超过60句俄文全部自动翻译成为英文,其研究人员声称三到五年之内即可解决机器翻译的问题。不过这项工作的实际进展远低于预期,1966年的ALPAC报告发现研究未达预期目标,机器翻译的研究经费遭到大幅削减。一直到1980年代末期,统计机器翻译系统被发展出来,机器翻译的研究才得以更上一层楼。
1960年代发展特别成功的NLP系统包括Winograd提出的SHRDLU——一个词汇设限、运作于受限如“积木世界”的一种自然语言系统,以及1964-1966年Joseph
Weizenbaum模拟“个人中心治疗”而设计的ELIZA——几乎未运用人类思想和感情的讯息,有时候却能呈现令人讶异地类似人之间的互动。但当“病人”提出的问题超出ELIZA极小的知识范围之时,可能会得到空泛的回答。例如问题是“我的头痛”,回答是“为什么说你头痛?”这一时期研究者大多着重研究推理和逻辑问题,这些简单的系统把模式匹配和关键词搜索与简单试探的方法结合起来,进行推理和自动问答,它们都只能在某一个领域内使用。但也有一些统计学者和电子学的专业研究人员试图使用统计算法来解决这些问题。比如Bledsoe和Browning于1959年建立了用于文本识别的贝叶斯系统来计算字母系列的似然度,Mosteller和Wallace于1964年用贝叶斯方法来解决在The Federalist文章中的原作者的分布问题。这一期间还出现了第一个联机语料库:Brown美国英语语料库。
一直到1980年代,多数自然语言处理系统是以一套复杂、人工订定的规则为基础的,颇有专家系统(expert system)的味道。不过从1980年代末期开始,语言处理引进了机器学习的算法,NLP产生革新。其成因主要有两个:运算能力稳定增加(参见摩尔定律);以及Chomskyan语言学理论渐渐丧失主导(例如转换-生成文法-transformational
grammar)。该理论的架构不倾向于语料库——机器学习处理语言所用方法的基础。有些最早期使用的机器学习算法,例如决策树,是硬性的、“if-then”规则组成的系统,类似当时既有的人工订定的规则。不过词性标记将隐马尔可夫模型(HMM)引入NLP,并且研究日益聚焦于软性的、以概率做决定的统计模型,其基础是将输入资料里每一个特性赋予代表其分量的数值。这种模型通常足以处理非预期的输入数据,尤其是输入有错误时,并且在整合到包含多个子任务的较大系统时,结果比较可靠。
近来的研究更加聚焦于非监督式学习和半监督学习的算法。这种算法,能够从没有人工注解理想答案的资料里学习。大体而言,这种学习比监督学习困难,并且在同量的数据下,通常产生的结果较不准确。不过没有注解的数据量极巨,弥补了较不准确的缺点。
近年来, 随着深度学习的快速发展,用于自然语言处理的模型也大幅演化,2013年Tomas Mikolov及其团队提出了word2vec,为一群用来产生词向量的相关模型,在业界产生了巨大的影响。2016年Jozefowicz等学者在当前模型在语料库、词汇量以及复杂的⻓期语言结构方面进行了扩展,他们在十亿字基准上对诸如字符卷积神经网络( character Convolutional Neural Networks )或⻓期短期记忆( Long-Short Term
Memory)等技术进行了详尽的研究。

主要事件

1948
Shannon把离散马尔科夫过程 的概率模型应用于描述语言的自 动机
Shannon, C. E. (1948).A Mathematical Theory of Communication.Bell system technical journal.

1956
Chomsky首先把有限状态自动 机作为一种工具来刻画语言的语 法,并且把有限状态语言定义为由有限状态语法生成的语言
Chomsky, N. (1956). Three models for the description of language.IRE Transactions on Information Theory.2(3): 113-124.

1959
Bledsoe和Browning建立了用 于文本识别的贝叶斯系统来计算 字母系列的似然度pp225-232.
Bledsoe, W. W.; Browning, I. (1959).Pattern recognition and reading by machine.IRE-AIEE-ACM ’59.

1964
Mosteller和Wallace用贝叶斯 方法来解决在The Federalist 文章中的原作者的分布问题
Mosteller, F.; Wallace, D. (1964).Inference and Disputed Authorship: The Federalist. Springer.

1966
Joseph Weizenbaum模拟“个 人中心治疗”而提出了ELIZA
Weizenbaum, J. (1966). ELIZA—a computer program for the study of natural language communication between man and machine. Communications of the ACM. 9: 36–45.

1972
Winograd提出SHRDLU
Winograd, T. (1972).Procedures as a Representation for Data in a Computer Program for Understanding Natural Language.Cognitive Psychology.3(1).1-191.

1976
Jelinek提出了用统计模型进行自动实时的语音识别,他及IBM实验室的其他学者也是将HMM引入自然语言处理的作者
Jelinek, F. (1976). Continuous speech recognition by statistical methods.Proceedings of the IEEE.64(4): 532-556.

2013
Tomas Mikolov及其团队提出 了word2vec
Mikolov, T. et al. Efficient Estimation of Word Representations in Vector Space.arXiv: 1301.3781.

2016
Jozefowicz等学者在当前模型 在语料库、词汇量以及复杂的⻓ 期语言结构方面进行了扩展
Jozefowicz, R.; Vinyals, O.; Schuster, M.; Shazeer, N. and Wu, Y. (2016). Exploring
the Limits of Language Modeling.arXiv:1602.02410.

发展分析

瓶颈

目前分词的技术仍然是一个难点,特别是对于汉语这样缺乏明显词汇边界的语言,如何正确划分不同词语十分重要;词义消岐是NLP的另一个难点,由于在某些情况下语境复杂,会给模型的训练带来困难;另外就是由于语言的模糊性,缺乏能够解释语言形成的原理,也给我们模拟语言造成困难;最后,能够通用于多种语言的模型的数量仍然十分不足。

未来发展方向

目前NLP领域仍需要大量研究,十分有潜力的方向有:
1. 独立于任务的NLP数据增强
2. 用于NLP的Few-shot learning
3. 用于NLP的迁移学习
4. 多任务学习
5. 跨语言学习
6. 独立于任务的架构提升

开发工具7

Standford NLP
NLTK
Apache OpenNLP
fastText
MALLET
AllenNLP
fnlp

数据集8
Legal Case Reports Data Set
查看详情
Amazon question/answer data
查看详情
1-billion-word-language-modeling-benchmark
查看详情
HowNet
查看详情
Movie Review Data
查看详情
Aligned Hansards of the 36th Parliament of Canada
查看详情
LibriSpeech ASR corpus
查看详情
TIPSTER Text Summarization Evaluation Conference Corpus
查看详情

教程期刊6
Transactions of ACL
Journal of Artificial Intelligence Research
ACM Transactions on Asian Language Information Processing
IEEE Journal of Pattern Analysis and Machine Intelligence
COLING (International Conference on Computational Linguistics)
ACM Transactions on Speech and Language Processing

活动及会议3
EMNLP (Conference on Empirical Methods in Natural Language Processing)
CoNLL Conference on Natural Language Learning
IJCNLP (International Joint Conference on Natural Language Processing)

上游技术

图灵测试 Turing test

下游技术

实体分辨 entity resolution
段落重新排序 passage re-ranking
查询格式良好性 query well-formedness
参与者干预比较结果提取 participant intervention comparison
Timex 规范化 Timex normalization
文本压缩 text compression
时间信息提取 TIE (temporal information extraction)
主观性分析 subjective analysis
(文本)情感分析 sentiment analysis
语义文本相似性 semantic textual similarity
语义角色标记 semantic role labelling
语义等价 semantic equivalence
讽刺检测 sarcasm detection
词性标记 POS tagging (part-of-speech tagging)
复述检测 paraphrase identification
嵌套提及识别 nested mention recognition
命名实体识别 name entity recognition
多模态隐喻识别 multimodal metaphor recognition
词法规范化 lexical normalization
语言模型 language model
语言习得 language acquisition
上位词发现 hypernym discovery
语法错误纠正 grammatical error correction
对话状态追踪 dialogue state tracking
自动摘要 text summarization
跨语言Bitext挖掘 cross-lingual bitext mining
对话回应选择 conversational response selection
对话系统 dialogue system
选区解析 constituency parsing
常识推断 commonsense inference
抽象语义表示 AMR parsing (abstract meaning representation)
言语知觉 speech perception
语言模型 language model
语法分析器 parsing / syntax analysis
关系提取 relation extraction
词嵌入 word embedding
缓存语言模型 cache language model
文本分割 text segmentation
清单问答 list question answering
ccg Supertagging
语音分割 speech segmentation
Reading Comprehension
潜在语义分析 LSA (latent semantic analysis)
语言识别 LI (language identification)
词义消歧 WSD (word sense disambiguation)
语音识别 speech recognition
聊天机器人 chatbot
协方差矩阵 covariance matrix
Text Summarization
垃圾信息(邮件)检测 spam detection
Question Answering
Chunking
词袋模型 BOW model
文本简化 text simplification
贝叶斯模型 Bayes model
文本分类 text classification
字符串内核 string kernel
定义问答 definition question answering
词干提取 stemming
基于规则的机器翻译 RBMT (rule-based machine translation)
Glyce
文件分类 text classification
主题模型 topic models
Machine Translation
Speaker Diarization
Stance Detection
自然语言理解 NLU (natural language understanding)
基于Transformer的双向编码器表征 BERT (bidirectional encoder representation from transformers)
信息检索 IR (information retrieval)
信息抽取 IE (information extraction)
Word Sense Disambiguation
Sql-To-Text
自然语言生成 NLG natural language generation
Relation Classification
语料库 corpus
自动模板(生成) automatic template generation
Speech Synthesis
Dependency Parsing
Grammatical Error Correction
隐含狄利克雷分布 LDA (latent Dirichlet allocation)
问答系统 QA (question answering)
Text Generation
自动语言识别 automatic language identification
条件独立性 conditional independence
条件随机场 CRF (conditional random field)
Knowledge Base
Question Answering
机器阅读(理解) machine reading/reading comprehension
本体学习 entity learning
语义哈希 semantic hashing
Concept mining
概率潜在语义分析 pLSA (probabilistic latent semantic indexing)
Speech Recognition
隐马尔可夫模型 HMM (hidden Markov model)
语音处理 speech processing
文本挖掘 text mining
答案提取 answer extraction
Entity Linking
⻓短期记忆网络 LSTM (long short-term memory)
Coreference Resolution
Text Classification
Relation Extraction
XGBoost
Natural Language Inference
Semantic Parsing
word2vec
统计自然语言处理 SNLP (statistical natural language processing)
命名实体识别 NER (named entity recognition)
n元模型 n-gram model
Skip-gram
最大后验概率 MAP (maximum A posteriori)
波特词干器 Porter stemming
词性标注 POS tagging/word classes
双向⻓短时记忆网络 bi-LSTM (bi-directional LSTM)
机器翻译 machine translation
语义分析 semantic parsing


CSIT FUN , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:NLP
喜欢 (0)
[985016145@qq.com]
分享 (0)
scott
关于作者:
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址