自然语言处理
Natural Language Understanding 俗称人机对话。人工智能的分支学科。研究用电子计算机模拟人的语言交际过程,使计算机能理解和运用人类社会的自然语言如汉语、英语等,实现人机之间的自然语言通信,以代替人的部分脑力劳动,包括查询资料、解答问题、摘录文献、汇编资料以及一切有关自然语言信息的加工处理。这在当前新技术革命的浪潮中占有十分重要的地位。研制第 5代计算机的主要目标之一,就是要使计算机具有理解和运用自然语言的功能。
自然语言理解是一门新兴的边缘学科,内容涉及语言学、心理学、逻辑学、声学、数学和计算机科学,而以语言学为基础。自然语言理解的研究,综合应用了现代语音学、音系学语法学、语义学、语用学的知识,同时也向现代语言学提出了一系列的问题和要求。本学科需要解决的中心问题是:语言究竟是怎样组织起来传输信息的?人又是怎样从一连串的语言符号中获取信息的?
自然语言理解从 20世纪 60年代初开始研究,由于 N.乔姆斯基在语言学理论上的突破和此后各家理论的发展,以及计算机功能的不断提高,目前已经取得了一定的成果,分为语音理解和书面理解两个方面。
语音理解用口语语音输入,使计算机”听懂”语音信号,用文字或语音合成输出应答。方法是先在计算机里贮存某些单词的声学模式,用它来匹配输入的语音信号,称为语音识别。这只是一个初步的基础,还不能达到语音理解的目的。因为单凭声学模式无法辨认人和人之间、同一个人先后发音之间的语音差别,也无法辩认连续语流中的语音变化;必须综合应用语言学知识,以切分音节和单词,分析句法和语义,才能理解内容,获取信息。60年代至70年代初期,研究工作一直停留在单词的语音识别上,进展不大。直到70年代中期才有所突破,建立了一些实验系统,能够理解连续语音的内容,但是还限于少数简单的语句(见自然语言语音理解系统)。
书面理解用文字输入,使计算机”看懂”文字符号,也用文字输出应答。这方面的进展较快,70年代初期取得突破,中期以后又有所发展。目前已能在一定的词汇、句型和主题范围内查询资料,解答问题,阅读故事,解释语句等,有的系统已付诸应用。由于绝大多数语种使用的是拼音文字,计算机识别拼音字母已无问题,而输入又是按单词分别拼写,因此书面理解一般没有切分音节和单词的问题,只需直接分析词汇、句法和语义。但是汉语用的是汉字,无论是用汉字编码输入还是将来计算机能直接认识汉字,都要首先解决切分单词的问题,因为输入就是一连串汉字,词和词之间没有空隔。书面理解的基本方法是:在计算机里贮存一定的词汇、句法规则、语义规则、推理规则和主题知识。语句输入后,计算机自左至右逐词扫描,根据词典辨认每个单词的词义和用法;根据句法规则确定短语和句子的组合;根据语义规则和推理规则获取输入句的含义;查询知识库,根据主题知识和语句生成规则组织应答输出。目前已建成的书面理解系统应用了各种不同的语法理论和分析方法,如生成语法、系统语法、格语法、语义语法等等,都取得了一定的成效。目前存在的问题有两个方面:一方面,迄今为止的语法都限于分析一个孤立的句子,上下文关系和谈话环境对本句的约束和影响还缺乏系统的研究,因此分析歧义、词语省略、代词所指、同一句话在不同场合或由不同的人说出来所具有的不同含义等问题,尚无明确规律可循,需要加强语用学的研究才能逐步解决。另一方面,人理解一个句子不是单凭语法,还运用了大量的有关知识,包括生活知识和专门知识,这些知识无法全部贮存在计算机里。因此一个书面理解系统只能建立在有限的词汇、句型和特定的主题范围内;计算机的贮存量和运转速度大大提高之后,才有可能适当扩大范围.
常用的NLP工具与资源:
相关理解与记录:
- NLTK读书笔记: 前言
- NLTK读书笔记: Python进行语言处理
- NLTK读书笔记: 语料库
- NLTK读书笔记: 文本处理
- NLTK读书笔记: 结构化程序设计
- NLTK读书笔记: 分类与标注
- NLTK读书笔记: 文本分类(一)
- NLTK读书笔记: 文本分类(二)
- NLTK读书笔记: 文本分类(三)
- NLTK读书笔记: 文本分类(四)
- NLTK读书笔记: 文本分类(五)
- NLTK读书笔记: 文本分类(六)
- NLTK读书笔记: 信息提取(一)
- NLTK读书笔记: 信息提取(二)
- NLTK读书笔记: 信息提取(三)
- NLTK读书笔记: 信息提取(四)
- NLTK读书笔记: 信息提取(五)
- NLTK读书笔记: 信息提取(六)
一些著名的博客
自然语言处理真实项目实战:http://www.cnblogs.com/TextEditor/p/7451657.html
Tensorflow搞一个聊天机器人:https://www.cnblogs.com/LittleHann/p/6426610.html
聊天机器人视频教程:https://www.bilibili.com/video/av30929420?from=search&seid=2381188040940179094
深度学习在命名实体识别(NER)中的应用:http://www.52nlp.cn/category/nlp
github model
- Chatterbot:https://chatterbot.readthedocs.io/en/stable/quickstart.html
- chatbot-deeplearning-retrieval:https://github.com/chatbot-tube/my-chatbot-deeplearning-retrieval
- Neural-Dialogue-Generation-in-Tensorflow:https://github.com/liuyuemaicha/Adversarial-Learning-for-Neural-Dialogue-Generation-in-Tensorflow
- DeepQA:https://github.com/Conchylicultor/DeepQA
- hed-dlg-truncated:https://github.com/julianser/hed-dlg-truncated
七月在线面试题库:https://www.julyedu.com/question/index
刷题leetcode:https://leetcode.com/
知识图谱:https://zhuanlan.zhihu.com/p/71128505
命名实体识别:https://zhuanlan.zhihu.com/p/88544122
docker安装部署neo4j: https://www.cnblogs.com/caoyusang/p/13610408.html
各类QA问答系统的总结与技术实现: https://blog.csdn.net/u012892939/article/details/79476756
开源有斯坦福的 deepdive,中文开放知识图谱(简称http://OpenKG.CN)中收录了不少优质开源工具和数据集,详细地址:http://openkg.cn/tool
五个场景告诉你知识图谱如何应用? : https://www.sohu.com/a/115099216_473462
这是一份通俗易懂的知识图谱技术与应用指南: https://www.jiqizhixin.com/articles/2018-06-20-4
阿里云自然语言处理:https://ai.aliyun.com/nlp/nlpautoml?spm=5176.11907134.1249450.1.6cbf4705ieSCxm
https://ai.aliyun.com/nlp?spm=5176.11065253.J_8058803260.258.41d65d64fzf80a
智言:https://www.webot.ai/index.html
蓝凌:https://blue.landray.com.cn/
自动文本摘要任务背景调研:https://blog.csdn.net/weikai_w/article/details/103679836

浙公网安备 33010602011771号