精华内容
下载资源
问答
  • 自然语言处理NLP概述

    千次阅读 2018-01-04 21:39:10
    自然语言处理NLP概述 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 自然语言处理(Natural language processing,NLP)是计算机和人类语言之间的关系纽带。更具体地说,自然语言处理是计算机对...

    自然语言处理NLP概述

    • 版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。

    自然语言处理(Natural language processing,NLP)是计算机和人类语言之间的关系纽带。更具体地说,自然语言处理是计算机对自然语言的理解、分析、操纵和/或生成。计算机程序能否将一段英文文本转换成程序员友好的数据结构来描述自然语言文本的含义?不幸的是,这种数据结构的形式是否存在并没有形成共识。在解决这些基本的人工智能问题之前,计算机科学家必须解决提取描述文本信息有限方面的简单表示的简化目标。

    概述自然语言处理

    自然语言处理(NLP)可以被定义为人类语言的自动(或半自动)处理。“NLP”这个术语有时被用于比这更窄的范围,通常不包括信息检索,有时甚至不包括机器翻译。NLP有时还与“计算语言学”相对立,NLP被认为更适用。如今,往往首选使用替代术语,如“语言技术(Language Technology)”或“语言工程(Language Engineering)”。语言(Language)经常与演讲(Speech)(比如演讲技术和语言技术)相对照。但是我将简单地提到NLP并广义地使用这个术语。NLP本质上是多学科的:它与语言学密切相关(尽管NLP公然借鉴语言理论的程度差异很大)。

    什么是自然语言处理?

    NLP是计算机以一种聪明而有用的方式分析,理解和从人类语言中获取意义的一种方式。通过利用NLP,开发者可以组织和构建知识来执行自动摘要,翻译,命名实体识别,关系提取,情感分析,语音识别和话题分割等任务。NLP用于分析文本,使机器了解人的说话方式。这种人机交互使现实世界的应用,如自动文摘,情感分析,主题提取,命名实体识别,零部件,词性标注,关系提取,词干,等等。NLP通常用于文本挖掘,机器翻译和自动问答。

    NLP技术
    图1:NLP技术

    NLP的重要性

    早期的NLP方法涉及更基于规则的方法,在这种方法中,简单的机器学习算法被告知要在文本中查找哪些单词和短语,并在这些短语出现时给出特定的响应。但深度学习是一个更灵活,直观的方法,在这个方法中,算法学会从许多例子中识别说话者的意图,就像孩子如何学习人类语言一样。

    在考虑以下两个陈述时,可以看到自然语言处理的优势:“云计算保险应该成为每个服务级别协议的一部分”和“良好的SLA确保夜间睡眠更加容易 - 即使在云端”。如果您使用国家语言处理的搜索,程序将认识到云计算是一个实体,云是云计算的缩写形式,并且SLA是服务级别协议的行业首字母缩略词。

    自然语言处理的术语

    这些分区与语言学的一些标准分支松散地相对应:

    • 形态学(Morphology):词的结构。例如,不寻常的可以被认为是由一个前缀un-,一个词干和一个词缀-ly组成。构成是构成加上屈折词缀:拼写规则意味着我们结束而不是组成。
    • 语法(Syntax):单词用于形成短语的方式。例如,它是英语语法的一部分,诸如意志之类的确定者会在名词前面出现,而且确定者对于某些单数名词是强制性的。
    • 语义(Semantics):构成语义是基于语法的意义的建构(通常表示为逻辑)。这与词汇语义(即单词的含义)形成对照。

    自然语言处理的应用

    以下是目前使用NLP的几种常用方法:

    1. Microsoft Word中的拼写检查功能是最基本和最知名的应用程序。

    2. 文本分析也称为情感分析,是NLP的一个关键用途。企业可以使用它来了解他们的客户感受到的情绪,并使用这些数据来改善他们的服务。
      通过使用电子邮件过滤器分析流经其服务器的电子邮件,电子邮件提供商可以使用朴素贝叶斯垃圾邮件过滤来计算电子邮件基于其内容的可能性。

    3. 呼叫中心代表经常听到来自客户的相同的具体投诉,问题和问题。挖掘这些数据的情绪可以产生令人难以置信的可操作的情报,可以应用于产品布局,消息传递,设计或其他一系列的用途。

    4. Google,Bing和其他搜索系统使用NLP从文本中提取条件来填充其索引并解析搜索查询。

    5. Google Translate将机器翻译技术应用于翻译单词,而且还用于理解句子的含义以改善翻译。

    6. 金融市场使用NLP,通过明文公告和提取相关信息的格式进行算法交易决策。例如,公司之间合并的消息可能会对交易决策产生重大影响,并且合并细节(例如,参与者,价格,谁获得谁)的速度可以被纳入到交易算法中,在数百万美元。

    自然语言处理的例子

    1. 使用Summarizer自动总结一个文本块,严格的主题句子,并忽略其余的。

    2. 生成关键字话题标签文档使用LDA(隐含狄利克雷分布),它从一个确定最相关的词文件。该算法是自动标记和自动标记URL微服务的核心
      基于Stanford NLP的情感分析可以用来辨别一个陈述的感觉,观点或信念,从非常消极,中立到非常积极。

    参考

    [1] Ann Copestake, “Natural Language Processing”, 2004, 8 Lectures, available online at: https://www.cl.cam.ac.uk/teaching/2002/NatLangProc/revised.pdf

    [2] Ronan Collobert and Jason Weston, “Natural Language Processing (Almost) from Scratch”, Journal of Machine Learning Research 12 (2011) pp. 2493-2537

    [3] “Top 5 Semantic Technology Trends to look for in 2017”, available online at: https://ontotext.com/top-5-semantic-technology-trends-2017/

    展开全文
  • 自然语言处理NLP)知识结构总结

    感谢原创博主,转自:https://blog.csdn.net/meihao5/article/details/79592667

           自然语言处理知识太庞大了,网上也都是一些零零散散的知识,比如单独讲某些模型,也没有来龙去脉,学习起来较为困难,于是我自己总结了一份知识体系结构,不足之处,欢迎指正。内容来源主要参考黄志洪老师的自然语言处理课程。主要参考书为宗成庆老师的《统计自然语言处理》,虽然很多内容写的不清楚,但好像中文NLP书籍就这一本全一些,如果想看好的英文资料,可以到我的GitHub上下载:  
    http://github.com/lovesoft5/ml

      下面直接开始正文:

        一、自然语言处理概述

                   1)自然语言处理:利用计算机为工具,对书面实行或者口头形式进行各种各样的处理和加工的技术,是研究人与人交际中以及人与计算机交际中的演员问题的一门学科,是人工智能的主要内容。
                  2)自然语言处理是研究语言能力和语言应用的模型,建立计算机(算法)框架来实现这样的语言模型,并完善、评测、最终用于设计各种实用系统。
                  3)研究问题(主要):
                                       信息检索
                                       机器翻译
                                       文档分类
                                       问答系统
                                       信息过滤
                                       自动文摘
                                       信息抽取
                                       文本挖掘
                                       舆情分析
                                       机器写作
                                       语音识别
               研究模式:自然语言场景问题,数学算法,算法如何应用到解决这些问题,预料训练,相关实际应用
                   自然语言的困难:
                               场景的困难:语言的多样性、多变性、歧义性
                               学习的困难:艰难的数学模型(hmm,crf,EM,深度学习等)
                               语料的困难:什么的语料?语料的作用?如何获取语料?

        二、形式语言与自动机 

                   语言:按照一定规律构成的句子或者字符串的有限或者无限的集合。

                    描述语言的三种途径:

                                                  穷举法
                                                  文法(产生式系统)描述
                                                  自动机

                   自然语言不是人为设计而是自然进化的,形式语言比如:运算符号、化学分子式、编程语言

                   形式语言理论朱啊哟研究的是内部结构模式这类语言的纯粹的语法领域,从语言学而来,作为一种理解自然语言的句法规律,在计算机科学中,形式语言通常作为定义编程和语法结构的基础

                   形式语言与自动机基础知识:

                                                     集合论
                                                     图论
                   自动机的应用:

                                                1,单词自动查错纠正

                                                2,词性消歧(什么是词性?什么的词性标注?为什么需要标注?如何标注?)

                  形式语言的缺陷:

                                          1、对于像汉语,英语这样的大型自然语言系统,难以构造精确的文法

                                          2、不符合人类学习语言的习惯

                                          3、有些句子语法正确,但在语义上却不可能,形式语言无法排出这些句子

                                          4、解决方向:基于大量语料,采用统计学手段建立模型                              

        三、语言模型

               1)语言模型(重要):通过语料计算某个句子出现的概率(概率表示),常用的有2-元模型,3-元模型
               2)语言模型应用:

                                             语音识别歧义消除例如,给定拼音串:ta shi yan yan jiu saun fa de

                                             可能的汉字串:踏实烟酒算法的   他是研究酸法的      他是研究算法的,显然,最后一句才符合。

              3)语言模型的启示:

                                  1、开启自然语言处理的统计方法

                                  2、统计方法的一般步骤:               

                                                                     收集大量语料
                                                                     对语料进行统计分析,得出知识
                                                                     针对场景建立算法模型
                                                                     解释和应用结果
              4) 语言模型性能评价,包括评价目标,评价的难点,常用指标(交叉熵,困惑度)

              5)数据平滑:

                             数据平滑的概念,为什么需要平滑

                             平滑的方法,加一法,加法平滑法,古德-图灵法,J-M法,Katz平滑法

            6)语言模型的缺陷:

                            语料来自不同的领域,而语言模型对文本类型、主题等十分敏感

                             n与相邻的n-1个词相关,假设不是很成立。


       四、概率图模型,生成模型与判别模型,贝叶斯网络,马尔科夫链与隐马尔科夫模型(HMM)

                1)概率图模型概述(什么的概率图模型,参考清华大学教材《概率图模型》)

               2)马尔科夫过程(定义,理解)

          3)隐马尔科夫过程(定义,理解)

                  HMM的三个基本问题(定义,解法,应用)

                     注:第一个问题,涉及最大似然估计法,第二个问题涉及EM算法,第三个问题涉及维特比算法,内容很多,要重点理解,(参考书李航《统计学习方法》,网上博客,笔者github)

           

        五、马尔科夫网,最大熵模型,条件随机场(CRF)

                   1)HMM的三个基本问题的参数估计与计算

                   2)什么是熵

                   3)EM算法(应用十分广泛,好好理解)
                   4)HMM的应用
                   5)层次化马尔科夫模型与马尔科夫网络

                                             提出原因,HMM存在两个问题
                   6)最大熵马尔科夫模型
                                             优点:与HMM相比,允许使用特征刻画观察序列,训练高效
                                             缺点: 存在标记偏置问题

                   7)条件随机场及其应用(概念,模型过程,与HMM关系)
                                参数估计方法(GIS算法,改进IIS算法)

                                CRF基本问题:特征选取(特征模板)、概率计算、参数训练、解码(维特比)

                                应用场景:

                                                 词性标注类问题(现在一般用RNN+CRF)
                                                 中文分词(发展过程,经典算法,了解开源工具jieba分词)
                                                 中文人名,地名识别

                   8)  CRF++

        六、命名实体 识别,词性标注,内容挖掘、语义分析与篇章分析(大量用到前面的算法)

                1)命名实体识别问题

                                         相关概率,定义

                                         相关任务类型

                                         方法(基于规程->基于大规模语料库)

                  2)未登录词的解决方法(搜索引擎,基于语料)

                  3)CRF解决命名实体识别(NER)流程总结:

                           训练阶段:确定特征模板,不同场景(人名,地名等)所使用的特征模板不同,对现有语料进行分词,在分词结                      果基础上进行词性标注(可能手工),NER对应的标注问题是基于词的,然后训练CRF模型,得到对应权值参数值

                           识别过程:将待识别文档分词,然后送入CRF模型进行识别计算(维特比算法),得到标注序列,然后根据标                            注划分出命名实体

                  4)词性标注(理解含义,意义)及其一致性检查方法(位置属性向量,词性标注序列向量,聚类或者分类算法)

                
        七、句法分析

                  1)句法分析理解以及意义

                               1、句法结构分析
                                          完全句法分析
                                                 浅层分析(这里有很多方法。。。)
                               2、 依存关系分析

                 2)句法分析方法

                                    1、基于规则的句法结构分析
                                    2、基于统计的语法结构分析
              

        八、文本分类,情感分析

                   1)文本分类,文本排重

                                      文本分类:在预定义的分类体系下,根据文本的特征,将给定的文本与一个或者多个类别相关联
                               典型应用:垃圾邮件判定,网页自动分类

                   2)文本表示,特征选取与权重计算,词向量

                              文本特征选择常用方法:

                                            1、基于本文频率的特征提取法
                                            2、信息增量法
                                            3、X2(卡方)统计量
                                            4、互信息法

                   3)分类器设计

                                    SVM,贝叶斯,决策树等
                   4)分类器性能评测

                                    1、召回率
                                    2、正确率
                                    3、F1值

                   5)主题模型(LDA)与PLSA

                                  LDA模型十分强大,基于贝叶斯改进了PLSA,可以提取出本章的主题词和关键词,建模过程复杂,难以理解。

                   6)情感分析

                             借助计算机帮助用户快速获取,整理和分析相关评论信息,对带有感情色彩的主观文本进行分析,处理和归纳例如,评论自动分析,水军识别。

                            某种意义上看,情感分析也是一种特殊的分类问题
                   7)应用案例


        九、信息检索,搜索引擎及其原理

                  1)信息检索起源于图书馆资料查询检索,引入计算机技术后,从单纯的文本查询扩展到包含图片,音视频等多媒体信息检索,检索对象由数据库扩展到互联网。

                        1、点对点检索
                        2、精确匹配模型与相关匹配模型
                        3、检索系统关键技术:标引,相关度计算
                2)常见模型:布尔模型,向量空间模型,概率模型
                3)常用技术:倒排索引,隐语义分析(LDA等)   
                4)评测指标 

        十、自动文摘与信息抽取,机器翻译,问答系统

                  1)统计机器翻译的的思路,过程,难点,以及解决

                2)问答系统

                        基本组成:问题分析,信息检索,答案抽取

                        类型:基于问题-答案, 基于自由文本

                        典型的解决思路

               3)自动文摘的意义,常用方法

               4)信息抽取模型(LDA等)
     
        十一、深度学习在自然语言中的应用  

                 1)单词表示,比如词向量的训练(wordvoc)
                 2)自动写文本
                                写新闻等
                 3)机器翻译
                 4)基于CNN、RNN的文本分类

                 5)深度学习与CRF结合用于词性标注
                           ...............

             更多深度学习内容,可参考我之前的文章。
     
       


     

    展开全文
  • 自然语言理解和自然语言处理 什么是自然语言处理? (What is natural language processing?) Natural language processing, or NLP, is a type of artificial intelligence (AI) that ... 自然语言处理(NLP)...

    自然语言理解和自然语言处理

    什么是自然语言处理? (What is natural language processing?)

    Natural language processing, or NLP, is a type of artificial intelligence (AI) that specializes in analyzing human language.

    自然语言处理(NLP)是一种 专门用于分析人类语言的 人工智能(AI)

    It does this by:

    它通过以下方式做到这一点:

    • Reading natural language, which has evolved through natural human usage and that we use to communicate with each other every day

      阅读自然语言,这种自然语言是通过人类的自然使用而发展起来的,并且我们每天都在与他们交流
    • Interpreting natural language, typically through probability-based algorithms

      解释自然语言,通常通过基于概率的算法
    • Analyzing natural language and providing an output

      分析自然语言并提供输出

    Have you ever used Apple’s Siri and wondered how it understands (most of) what you’re saying? This is an example of NLP in practice.

    您是否曾经使用过Apple的Siri,想知道它如何理解(大部分)您在说什么? 这是实践中NLP的一个示例。

    NLP is becoming an essential part of our lives, and together with machine learning and deep learning, produces results that are far superior to what could be achieved just a few years ago.

    NLP正在成为我们生活中不可或缺的一部分,并且与机器学习和深度学习一起产生的结果远远优于几年前所能达到的结果。

    In this article we’ll take a closer look at NLP, see how it’s applied and learn how it works.

    在本文中,我们将仔细研究NLP,了解其应用方式并了解其工作原理。

    自然语言处理能做什么? (What can natural language processing do?)

    NLP is used in a variety of ways today. These include:

    如今,NLP以多种方式使用。 这些包括:

    机器翻译 (Machine translation)

    When was the last time you visited a foreign country and used your smart phone for language translation? Perhaps you used Google Translate? This is an example of NLP machine translation.

    您上次访问国外是什么时候使用智能手机进行语言翻译? 也许您使用过Google翻译? 这是NLP机器翻译的示例。

    Machine translation works by using NLP to translate one language into another. Historically, simple rules-based methods have been used to do this. But today’s NLP techniques are a big improvement on the rules-based methods that have been around for years.

    机器翻译通过使用NLP将一种语言翻译成另一种语言来工作。 从历史上看,简单的基于规则的方法已用于执行此操作。 但是,如今的NLP技术是对基于规则的方法的重大改进,这种方法已经存在多年了。

    For NLP to do well at machine translation it employs deep learning techniques. This form of machine translation is sometimes called neural machine translation (NMT), since it makes use of neural networks. NMT therefore interprets language based on a statistical, trial and error approach and can deal with context and other subtleties of language.

    为了使NLP在机器翻译方面表现出色,它采用了深度学习技术。 这种形式的机器翻译有时被称为神经机器翻译(NMT),因为它利用了神经网络。 因此,NMT基于统计,反复试验的方法来解释语言,并且可以处理上下文和其他语言的细微差别。

    In addition to applications like Google Translate, NMT is also used in a range of business applications, such as:

    除了Google Translate之类的应用程序外,NMT还用于一系列业务应用程序中,例如:

    • Translating plain text, web pages or files such as Excel, Powerpoint or Word. Systran is an example of a translation services company that does this.

      翻译纯文本,网页或文件,例如Excel,Powerpoint或Word。 Systran是执行此操作的翻译服务公司的示例。

    • Translating social feeds in real-time, as offered by SDL Government, a company specializing in public sector language services.

      SDL Government (一家专门从事公共部门语言服务的公司)提供的服务,可以实时翻译社交信息。

    • Translating languages in medical situations, such as when an English-speaking doctor is treating a Spanish-speaking patient, as offered by Canopy Speak.

      Canopy Speak提供的医疗情况下(例如,当说英语的医生正在治疗说西班牙语的患者时)翻译语言。

    • Translating financial documents such as annual reports, investment commentaries and information documents, as offered by Lingua Custodia, a company specializing in financial translations.

      由专门从事财务翻译的公司Lingua Custodia提供的财务文件的翻译,例如年度报告,投资评论和信息文件。

    语音识别 (Speech recognition)

    Earlier, we mentioned Siri as an example of NLP. One particular feature of NLP used by Siri is speech recognition. Alexa and Google Assistant (“ok Google”) are other well known examples of NLP speech recognition.

    之前,我们提到Siri作为NLP的示例。 Siri使用的NLP的一项特殊功能是语音识别。 Alexa和Google Assistant(“ ok Google”)是NLP语音识别的其他知名示例。

    Speech recognition isn’t a new science and has been around for over 50 years. It’s only recently though that its ease-of-use and accuracy have improved significantly, thanks to NLP.

    语音识别并不是一门新兴的科学,已经有50多年的历史了。 直到最近,借助NLP,它的易用性和准确性有了显着提高。

    At the heart of speech recognition is the ability to identify spoken words, interpret them and convert them to text. A range of actions can then follow such as answering questions, performing instructions or writing emails.

    语音识别的核心是识别口语单词,对其进行解释并将其转换为文本的能力。 然后可以采取一系列行动,例如回答问题,执行说明或写电子邮件。

    The powerful methods of deep learning used in NLP allow today’s speech recognition applications to work better than ever before.

    NLP中使用的强大的深度学习方法使当今的语音识别应用程序比以往任何时候都可以更好地工作。

    聊天机器人 (Chatbots)

    Chatbots are software programs that simulate natural human conversation. They are used by companies to help with customer service, consumer queries and sales enquiries.

    聊天机器人是模拟自然人类对话的软件程序。 公司使用它们来帮助客户服务,消费者查询和销售查询。

    You may have interacted with a chatbot the last time you logged on to a company website and used their online help system.

    您上次登录公司网站并使用其在线帮助系统时,您可能与聊天机器人进行了交互。

    While simple chatbots use rules-based methods, today’s more capable chatbots use NLP to understand what customers are saying and how to respond.

    尽管简单的聊天机器人使用基于规则的方法,但如今功能更强大的聊天机器人使用NLP来了解客户在说什么以及如何响应。

    Well known examples of chatbots include:

    聊天机器人的知名示例包括:

    • The World Health Organization (WHO) chatbot, built on the WhatsApp platform, which shares information and answers queries about the spread of the COVID-19 virus

      建立在WhatsApp平台上的世界卫生组织(WHO) 聊天机器人 ,可共享信息并回答有关COVID-19病毒传播的查询

    • National Geographic’s Genius chatbot, that speaks like Albert Einstein and engages with users to promote the National Geographic show of the same name

      国家地理杂志的Genius 聊天机器人 ,说话方式像阿尔伯特·爱因斯坦,并与用户互动以宣传同名国家地理杂志节目

    • Kian, Korean car manufacturer Kia’s chatbot on FaceBook Messenger, that answers queries about Kia cars and helps with sales enquiries

      韩国汽车制造商起亚( Kian)在FaceBook Messenger上的聊天机器人 ,可回答有关起亚汽车的查询并帮助进行销售查询

    • Whole Foods’ chatbot that help with recipe information, cooking inspiration and product recommendations

      Whole Foods的聊天机器人 ,可提供食谱信息,烹饪灵感和产品推荐

    情绪分析 (Sentiment analysis)

    Sentiment analysis uses NLP to interpret and classify emotions contained in text data. This is used, for instance, to classify online customer feedback about products or services in terms of positive or negative experience.

    情感分析使用NLP来解释和分类文本数据中包含的情感。 例如,这可用于根据正面或负面体验对有关产品或服务的在线客户反馈进行分类。

    In its simplest form, sentiment analysis can be done by categorizing text based on designated words that convey emotion, like “love”, “hate”, “happy”, ”sad” or “angry”. This type of sentiment analysis has been around for a long time but is of limited practical use due to its simplicity.

    以最简单的形式,可以通过根据传达情感的指定单词对文本进行分类来进行情感分析,例如“爱”,“恨”,“快乐”,“悲伤”或“生气”。 这种类型的情感分析已经存在很长时间了,但是由于其简单性而在实际应用中受到限制。

    Today’s sentiment analysis uses NLP to classify text based on statistical and deep learning methods. The result is sentiment analysis that can handle complex and natural-sounding text.

    当今的情感分析使用NLP基于统计和深度学习方法对文本进行分类。 结果是可以处理复杂且听起来自然的文本的情感分析。

    There’s a huge interest in sentiment analysis nowadays from businesses worldwide. It can provide valuable insights into customer preferences, levels of satisfaction and feedback on opinions which can help with marketing campaigns and product design.

    如今,全球企业对情感分析都产生了浓厚的兴趣。 它可以提供有关客户偏爱,满意度和对意见的反馈的宝贵见解,从而有助于营销活动和产品设计。

    邮件分类 (Email classification)

    Email overload is a common challenge in the modern workplace. NLP can help to analyze and classify incoming emails so that they can be automatically forwarded to the right place.

    电子邮件超载是现代工作场所中的常见挑战。 NLP可以帮助分析和分类传入的电子邮件,以便可以将它们自动转发到正确的位置。

    In the past, simple keyword-matching techniques were used to classify emails. This had mixed success. NLP allows a far better classification approach as it can understand the context of individual sentences, paragraphs and whole sections of text.

    过去,简单的关键字匹配技术用于对电子邮件进行分类。 这取得了不同的成功。 NLP可以更好地分类,因为它可以理解单个句子,段落和整个文本的上下文。

    Given the sheer volume of emails that businesses have to deal with today, NLP-based email classification can be a great help in improving workplace productivity. Classification using NLP helps to ensure that emails don’t get forgotten in over-burdened inboxes and are properly filed for further action.

    鉴于当今企业必须处理大量电子邮件,基于NLP的电子邮件分类可以大大提高工作效率。 使用NLP进行分类有助于确保电子邮件不会在繁重的收件箱中被遗忘,并且可以正确归档以采取进一步措施。

    自然语言处理如何工作? (How does natural language processing work?)

    Now that we’ve seen what NLP can do, let’s try and understand how it works.

    既然我们已经了解了NLP可以做什么,那么让我们尝试并了解它的工作原理。

    In essence, NLP works by transforming a collection of text information into designated outputs.

    本质上,NLP通过将文本信息的集合转换为指定的输出来工作。

    If the application is machine translation, then the input text information would be documents in the source language (say, English) and the output would be the translated documents in the target language (say, French).

    如果应用程序是机器翻译,则输入文本信息将是源语言(例如英语)的文档,而输出将是目标语言(例如法语)的翻译文档。

    If the application is sentiment analysis, then the output would be a classification of the input text into sentiment categories. And so on.

    如果应用程序是情感分析,那么输出将是将输入文本分类为情感类别。 等等。

    NLP工作流程 (The NLP workflow)

    Modern NLP is a mixed discipline that draws on linguistics, computer science and machine learning. The process, or workflow, that NLP uses has three broad steps:

    现代自然语言处理是一门混合学科,利用语言学,计算机科学和机器学习技术。 NLP使用的过程或工作流包含三个主要步骤:

    Step 1 — Text pre-processing

    第1步-文本预处理

    Step 2 — Text representation

    第2步-文本表示

    Step 3 — Analysis and modeling

    第3步-分析和建模

    Each step may use a range of techniques which are constantly evolving with continued research.

    每个步骤都可以使用随着不断研究而不断发展的一系列技术。

    步骤1:文字预处理 (Step 1: Text pre-processing)

    The first step is to prepare the input text so that it can be analyzed more easily. This part of NLP is well established and draws on a range of traditional linguistic methods.

    第一步是准备输入文本,以便可以更轻松地对其进行分析。 NLP的这一部分已经很好地建立,并借鉴了一系列传统语言方法。

    Some of the key approaches used in this step are:

    此步骤中使用的一些关键方法是:

    • Tokenization, which breaks up text into useful units (tokens). This separates words using blank spaces, for instance, or separates sentences using full stops. Tokenization also recognizes words that often go together, such as “New York” or “machine learning”. As an example, the tokenization of the sentence “Customer service couldn’t be better” would result in the following tokens: “customer service”, “could”, “not”, “be” and “better”.

      令牌化 ,它将文本分解成有用的单位(令牌)。 例如,这使用空格分隔单词,或使用句号分隔句子。 令牌化还可以识别经常一起使用的单词,例如“纽约”或“机器学习”。 例如,句子“客户服务再好不过”的标记化将导致以下标记:“客户服务”,“可能”,“不是”,“成为”和“更好”。

    • Normalization transforms words to their base form using techniques like stemming and lemmatization. This is done to help reduce ‘noise’ and simplify the analysis. Stemming identifies the stems of words by removing their suffixes. The stem of the word “studies”, for instance, is “studi”. Lemmatization similarly removes suffixes, but also removes prefixes if required and results in words that are normally used in natural language. The lemma of the word “studies”, for instance, is “study”. In most applications, lemmatization is preferred to stemming as the resulting words have more meaning in natural speech.

      归一化的变换的话他们的碱形式使用像词干词形还原技术。 这样做是为了帮助减少“噪音”并简化分析。 词干通过删除词缀来识别词干。 例如,“研究”一词的词干是“研究”。 词法化同样会删除后缀,但如果需要的话也会删除前缀,并产生通常以自然语言使用的单词。 例如,“研究”一词的引理是“研究”。 在大多数应用中,词干重于词根优先,因为最终的单词在自然语音中具有更多含义。

    • Part-of-speech (POS) tagging draws on morphology, or the study of inter-relationships between words. Words (or tokens) are tagged based on their function in sentences. This is done by using established rules from text corpora to identify the purpose of words in speech, ie. verb, noun, adjective etc.

      词性(POS)标记利用词法或词间相互关系的研究。 单词(或标记)基于其在句子中的功能进行标记。 这是通过使用来自文本语料库的已建立规则来识别语音中单词的目的来完成的。 动词,名词,形容词等

    • Parsing draws on syntax, or the understanding of how words and sentences fit together. This helps to understand the structure of sentences and is done by breaking down sentences into phrases based on the rules of grammar. A phrase may contain a noun and an article, such as “my rabbit”, or a verb as in “likes to eat carrots”.

      解析使用语法,或者理解单词和句子如何组合在一起。 这有助于理解句子的结构,并且可以通过根据语法规则将句子分解为短语来完成。 短语可以包含名词和冠词,例如“我的兔子”,也可以包含动词,例如“喜欢吃胡萝卜”。

    • Semantics identifies the intended meaning of words used in sentences. Words can have more than one meaning. For example “pass” can mean (i) to physically hand over something, (ii) a decision to not take part in something, or (iii) a measure of success in an exam. A word’s meaning can be understood better by looking at the words that appear before and after it.

      语义识别句子中使用的单词的预期含义。 单词可以有多个含义。 例如,“及格”可以表示(i)实际交出某件东西,(ii)不参加某件东西的决定,或(iii)考试成功的量度。 通过查看单词之前和之后出现的单词,可以更好地理解单词的含义。

    步骤2:文字表示 (Step 2: Text representation)

    In order for text to be analyzed using a machine and deep learning methods, it needs to be converted into numbers. This is the purpose of text representation.

    为了使用机器和深度学习方法分析文本,需要将其转换为数字。 这是文本表示的目的。

    Some key methods used in this step are:

    此步骤中使用的一些关键方法是:

    词袋 (Bag of words)

    Bag of words, or BoW, is an approach that represents text by counting how many times each word in an input document occurs in comparison with a known list of reference words (vocabulary).

    单词袋或BoW是一种方法,它通过与已知参考单词列表(词汇表)相比,计算输入文档中每个单词出现的次数来表示文本。

    The result is a set of vectors that contain numbers depicting how many times each word occurs. These vectors are called ‘bags’ as they don’t include any information about the structure of the input documents.

    结果是一组向量,这些向量包含描述每个单词出现多少次的数字。 这些向量称为“袋子”,因为它们不包含有关输入文档结构的任何信息。

    To illustrate how BoW works, consider the sample sentence “the cat sat on the mat”. This contains the words “the”, “cat”, “sat”, “on” and “mat”. The frequency of occurrence of these words can be represented by a vector of the form [2, 1, 1, 1, 1]. Here, the word “the” occurs twice and the other words occur once.

    为了说明BoW的工作原理,请考虑例句“猫坐在垫子上”。 其中包含单词“ the”,“ cat”,“ sat”,“ on”和“ mat”。 这些单词的出现频率可以用[2,1,1,1,1,1]形式的向量表示。 在此,单词“ the”出现两次,而其他单词出现一次。

    When compared with a large vocabulary, the vector will expand to include several zeros. This is because all of the words in the vocabulary which aren’t contained in the sample sentence will have zero frequencies against them. The resulting vector may contain a large number of zeros and hence is referred to as a ‘sparse vector’.

    与大词汇量相比,向量将扩展为包括几个零。 这是因为词汇表中所有单词中未包含的单词对其的频率均为零。 所得向量可能包含大量零,因此被称为“稀疏向量”。

    The BoW approach is fairly straightforward and easy to understand. The resulting sparse vectors however can be very large when the vocabulary is large. This leads to computationally challenging vectors that don’t contain much information (ie. are mostly zeros).

    BoW方法相当简单易懂。 但是,当词汇量很大时,所得的稀疏向量可能会非常大。 这将导致计算上具有挑战性的向量不包含太多信息(即大部分为零)。

    Further, BoW looks at individual words, so any information about words that go together is not captured. This results in a loss of context for later analysis.

    此外,BoW会查看单个单词,因此不会捕获有关一起单词的任何信息。 这会导致上下文丢失,无法进行后续分析。

    袋n克 (Bag of n-grams)

    One way of reducing the loss of context with BoW is to create vocabularies of grouped words rather than single words. These grouped words are referred to as ‘n-grams’, where ’n’ is the grouping size. The resulting approach is called ‘bag of n-grams’ (BNG).

    减少BoW语境损失的一种方法是创建分组词而不是单个词的词汇表。 这些分组的单词称为“ n-grams”,其中“ n”是分组大小。 最终的方法称为“ n克袋”(BNG)。

    The advantage of BNG is that each n-gram captures more context than single words.

    BNG的优点是每个n-gram捕获的上下文比单个单词要多。

    In the earlier sample sentence, “sat on” and “the mat” are examples of 2-grams, and “on the mat” is an example of a 3-gram.

    在较早的例句中,“ sat on”和“ the mat”是2克的示例,而“ on the mat”是3克的示例。

    特遣部队 (TF-IDF)

    One issue with counting the number of times a word appears in documents is that certain words start to dominate the count. Words like “the”, “a” or “it”. These words tend to occur frequently but don’t contain much information.

    计算单词在文档中出现的次数的一个问题是某些单词开始占主导地位。 诸如“ the”,“ a”或“ it”之类的词。 这些字词经常出现,但包含的信息并不多。

    One way to deal with this is to treat words that appear frequently across documents differently to words that appear uniquely. The words appearing frequently tend to be low value words like “the”. The counts of these words can be penalized to help reduce their dominance.

    一种解决方法是将在文档中频繁出现的单词与唯一出现的单词区别对待。 经常出现的单词往往是诸如“ the”之类的低价值单词。 这些单词的数量可能会受到惩罚,以帮助降低其优势。

    This approach is called ‘term frequency — inverse document frequency’ or TF-IDF. Term frequency looks at the frequency of a word in a given document while the inverse document frequency looks at how rare the word is across all documents.

    这种方法称为“术语频率-反向文档频率”或TF-IDF。 术语频率查看给定文档中单词的频率,而反向文档频率查看单词在所有文档中的稀有度。

    The TF-IDF approach acts to downplay frequently occurring words and highlight more unique words that have useful information, such as “cat” or “mat”. This can lead to better results.

    TF-IDF方法可淡化经常出现的单词,并突出显示具有有用信息(例如“猫”或“垫子”)的更独特的单词。 这样可以带来更好的结果。

    词嵌入 (Word embedding)

    A more sophisticated approach to text representation involves word embedding. This maps each word to individual vectors, where the vectors tend to be ‘dense’ rather than ‘sparse’ (ie. smaller and with fewer zeros). Each word and the words surrounding it are considered in the mapping process. The resulting dense vectors allow for a better analysis and comparison between words and their context.

    文本表示的一种更复杂的方法涉及单词嵌入。 这会将每个单词映射到单独的向量,其中向量倾向于“密集”而不是“稀疏”(即较小且零位较少)。 在映射过程中会考虑每个单词及其周围的单词。 生成的密集向量可以更好地分析和比较单词及其上下文。

    Word embedding approaches use powerful machine learning and deep learning to perform the mapping. It is an evolving area which has produced some excellent results. Key algorithms in use today include Word2Vec, GloVe and FastText.

    词嵌入方法使用强大的机器学习和深度学习来执行映射。 这是一个不断发展的领域,取得了一些出色的成果。 今天使用的关键算法包括Word2Vec,GloVe和FastText。

    步骤3:分析和建模 (Step 3: Analysis and modeling)

    The final step in the NLP process is to perform calculations on the vectors generated through steps 1 and 2, to produce the desired outcomes. Here, machine learning and deep learning methods are used. Many of the same machine learning techniques from non-NLP domains, such as image recognition or fraud detection, may be used in this analysis.

    NLP过程的最后一步是对通过步骤1和2生成的向量进行计算,以产生所需的结果。 在这里,使用了机器学习和深度学习方法。 来自非NLP域的许多相同的机器学习技术,例如图像识别或欺诈检测,都可以在此分析中使用。

    Consider sentiment analysis. This can be done using either supervised or unsupervised machine learning. Supervised machine learning requires pre-labeled data while unsupervised machine learning uses pre-prepared databases of curated words (lexicons) to help with classifying sentiment.

    考虑情绪分析。 这可以使用有监督或无监督的机器学习来完成。 有监督的机器学习需要预先标记的数据,而无监督的机器学习则使用预先准备的策展词(词典)数据库来帮助对情感进行分类。

    Using machine learning, input text vectors are classified using a probabilistic approach. This is done through either a trained model (supervised machine learning) or by comparison with a suitable lexicon (unsupervised machine learning).

    使用机器学习,使用概率方法对输入文本向量进行分类。 这可以通过训练模型(有监督的机器学习)或通过与合适的词典进行比较(无监督的机器学习)来完成。

    The outcomes are sentiment classifications based on the probabilities generated through the machine learning process.

    结果是基于通过机器学习过程生成的概率的情感分类。

    结论 (Conclusion)

    NLP is developing rapidly and is having an increasing impact on society. From language translation to speech recognition, and from chatbots to identifying sentiment, NLP is providing valuable insights and making our lives more productive.

    NLP发展Swift,对社会的影响越来越大。 从语言翻译到语音识别,再到聊天机器人再到情感识别,NLP都提供了宝贵的见解,使我们的生活更加高效。

    Modern NLP works by using linguistics, computer science and machine learning. Over recent years, NLP has produced results that far surpass what we’ve seen in the past.

    现代自然语言处理通过使用语言学,计算机科学和机器学习来工作。 近年来,NLP产生的结果远远超过了过去。

    The basic workflow of NLP involves text pre-processing, text representation and analysis. A variety of techniques are in use today and more are being developed with ongoing research.

    NLP的基本工作流程涉及文本预处理,文本表示和分析。 如今,各种技术正在使用中,并且随着不断的研究,正在开发更多的技术。

    NLP promises to revolutionize many areas of industry and consumer practice. It’s already become a familiar part of our daily lives.

    NLP承诺彻底改变行业和消费者实践的许多领域。 它已经成为我们日常生活中熟悉的一部分。

    With NLP, we have a powerful way of engaging with a digital future through a medium we are inherently comfortable with — our ability to communicate through natural language.

    借助NLP,我们拥有了一种强大的方式,可以通过我们固有的媒介(即通过自然语言进行交流的能力)来参与数字未来。

    翻译自: https://towardsdatascience.com/natural-language-processing-a-simple-explanation-7e6379085a50

    自然语言理解和自然语言处理

    展开全文
  • 自然语言处理NLP国内研究方向机构导师 文|中文信息协会《中文信息处理发展报告2016》,数据简化DataSimp ...自然语言处理NLP主要涉及三种文本,自由文本、结构化文本、半结构化文本。 自然语言...

    自然语言处理NLP国内研究方向机构导师

    文|中文信息协会《中文信息处理发展报告2016》,数据简化DataSimp

    文字语言VS数字信息

    数字、文字和自然语言一样,都是信息的载体,他们之间原本有着天然的联系。语言和数学的产生都是为了交流,从文字、数字和语言的发展历史,可以了解到语言、文字和数字有着内在的联系。自然语言处理NLP主要涉及三种文本,自由文本结构化文本半结构化文本

    自然语言理解Natural Language Understanding(NLU),实现人机间自然语言通信,意味着要使计算机既能理解自然语言文本的意义,也能以自然语言文本表达给定的意图、思想等。自然语言生成NLG,是人工或机器生成语言。

    斯坦福自然语言处理NLP工具资料收集、斯坦福分词、Stanford中文实体识别,最早做自然语言处理的网址https://nlp.stanford.edu/software/segmenter.shtml。

    哈尔滨工业大学智能技术与自然语言处理研究室(IntelligentTechnology & Natural Language Processing Lab, ITNLPLab)是国内较早从事自然语言处理和语言智能技术的研究室。

    除了新兴的文本数据简化领域:秦陇纪(数据简化技术中心筹),自然语言处理NaturalLanguage Processing领域主要包括基础研究和应用研究。

    基础研究

    词法与句法分析:李正华、陈文亮、张民(苏州大学)
    语义分析:周国栋、李军辉(苏州大学)
    篇章分析:王厚峰、李素建(北京大学)
    语言认知模型:王少楠,宗成庆(中科院自动化研究所)
    语言表示与深度学习:黄萱菁、邱锡鹏(复旦大学)
    知识图谱与计算:李涓子、候磊(清华大学)

    应用研究

    文本分类与聚类:涂存超,刘知远(清华大学)
    信息抽取:孙乐、韩先培(中国科学院软件研究所)
    情感分析:黄民烈(清华大学)
    自动文摘:万小军、姚金戈(北京大学)
    信息检索:刘奕群、马少平(清华大学)
    信息推荐与过滤:王斌(中科院信工所),鲁骁(国家计算机网络应急中心)
    自动问答:赵军、刘康,何世柱(中科院自动化研究所)
    机器翻译:张家俊、宗成庆(中科院自动化研究所)
    社会媒体处理:刘挺、丁效(哈尔滨工业大学)
    语音技术:说话人识别——郑方(清华大学),王仁宇(江苏师范大学)
    语音合成——陶建华(中科院自动化研究所)
    语音识别——王东(清华大学)
    文字识别:刘成林(中科院自动化研究所)
    多模态信息处理:陈晓鸥(北京大学)
    医疗健康信息处理:陈清财、汤步洲(哈尔滨工业大学)
    少数民族语言信息处理:吾守尔•斯拉木(新疆大学)

    —  —

     

     

    https://blog.csdn.net/yH0VLDe8VG8ep9VGe/article/details/83747195

     

     

     

    展开全文
  • NLP主要范畴 NLP发展历史 ...NLP涉及知识 ...Natural Language Toolkit 自然语言...NLTK库诞生于20世纪80年代,是Python上著名的自然语言处理库,自带语料库,词性分类库; 自带分类、分词等功能,还有强大的社区...
  • 本文来自简书,本文将主要介绍什么是自然语言处理,以及NLP的生成与理解,,希望对您的学习有所帮助。-推理-自动学习&调度-机器学习-自然语言处理-计算机视觉-机器人-通用智能阶段1——机器学习:智能系统使用一系列...
  • 自然语言处理NLP)简介

    千次阅读 多人点赞 2020-05-30 00:00:29
    简单地说,自然语言处理就是用计算机来处理、理解以及运用人类语言(如中文、英文等),它属于人工智能的一个分支,是计算机科学与语言学的交叉学科,又常被称为计算语言学。由于自然语言是人类区别于其他动物的根本...
  • 自然语言处理NLP)简介1.1 基础技术1.2 NLP 核心技术1.3 NLP+(高端技术)1.4 课程涵盖的主要内容总揽2.知名NLP服务系统与开源组件简介2.1 单一服务提供商2.1.1 汉语分词系统ICTCLAS2.1.2 哈工大语言云(Language ...
  • 自然语言NLP常用的包+stanford
  • NLP(自然语言处理)技术语音编辑锁定讨论上传视频本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!自然语言处理(NLP,Natural Language Processing) 是研究人与计算机交互的语言问题的一门...
  • 什么是自然语言处理NLP 用通俗的话来讲,自然语言处理NLP的目标是让机器能够理解人类的语言,NLP就是人和机器进行交流的技术。用专业语言来讲,自然语言处理有狭义和广义之分。狭义的自然语言处理是使用计算机来完成...
  • 自然语言处理NLP知识结构

    千次阅读 2018-11-08 15:18:08
    自然语言处理NLP知识结构 文|秦陇纪,数据简化DataSimp 自然语言处理(计算机语言学、自然语言理解)涉及:字处理,词处理,语句处理,篇章处理词处理分词、词性标注、实体识别、词义消歧语句处理句法分析...
  • 自然语言处理NLP)知识结构总结

    万次阅读 多人点赞 2018-03-17 18:04:35
    自然语言处理知识太庞大了,网上也都是一些...主要参考书为宗成庆老师的《统计自然语言处理》,虽然很多内容写的不清楚,但好像中文NLP书籍就这一本全一些,如果想看好的英文资料,可以我的GitHub上下载: http://...
  • 自然语言处理NLP简介

    2021-05-09 18:46:06
    自然语言处理NLP简介NLP简介1 引言人工智能、机器学习、深度学习什么是自然语言处理?人工智能的流派2 NLP发展历史人工智能发展历史推理期知识期学习期文本的预训练可分为两个重要的时期3 NLP研究方向自然语言处理...
  • 自然语言处理 NLP概述

    2019-01-03 14:13:49
    在一般情况下,用户可能不熟悉机器语言,所以自然语言处理技术可以帮助这样的用户使用自然语言与机器交流。从建模的角度看,为了方便计算机处理,自然语言课一被定义为一组规则或符号的集合,我们组合集合...
  • 自然语言处理大体是从1950年代开始,虽然更早期也有作为。1950年,图灵发表论文“计算机器与智能”,提出现在所谓的“图灵测试”作为判断智能的条件。 1954年的乔治城实验涉及全部自动翻译超过60句俄文成为英文。...
  • 自然语言处理( Natural Language Processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学...
  • 自然语言处理(NLP)-文本处理:
  • 自然语言处理(NLP)的一般处理流程!

    千次阅读 2019-08-20 19:36:10
    文章目录1. 什么是NLP2. NLP主要研究方向3. NLP的发展4. NLP任务的一般步骤5. 我的NLP启蒙读本6. NLP、CV,选哪个? 1. 什么是NLP 自然语言处理 (Natural Language ...**为了建设和完善语言模型,自然语言处理建立计...
  • NLP汉语自然语言处理原理与实践是一本研究汉语自然语言处理方面的基础性、综合性书籍,涉及NLP的语言理论、算法和工程实践的方方面面,内容繁杂。 本书包括NLP的语言理论部分、算法部分、案例部分,涉及汉语的发展...
  • 相信大家对NLP自然语言处理的技术都不陌生,它是计算机科学领域和AI领域中的一个分支,它与计算机和人类之间使用自然语言进行交互密切相关,而NLP的最终目标是使计算机能够像人类一样理解语言。下面赵一八笔记...
  • NLP是什么 在计算机领域, NLP(Natural Language Processing),也就是人们常说的「自然语言处理」,就是研究如何让计算机读懂人类语言。这包括,既要能让计算机理解自然语言文本的意义,也能以自然语言文本来表达...
  • NLP自然语言处理

    2019-10-03 20:24:56
    自然语言理解NLU 将给定的自然语言输入映射为有用的表示。 分析语言的不同方面。 自然语言生成NLG 文字规划 - 这包括从知识库中检索相关内容。 句子规划 - 这包括选择所需的单词,形成有意义的短语,设定句子...
  • NLP自然语言处理初步的认识
  • 自然语言处理主要步骤包括: 分词(只针对中文,英文等西方字母语言已经用空格做好分词了):将文章按词组分开 词法分析:对于英文,有词头、词根、词尾的拆分,名词、动词、形容词、副词、介词的定性,多种词意的...
  • NLP汉语自然语言处理原理与实践是一本研究汉语自然语言处理方面的基础性、综合性书籍,涉及NLP的语言理论、算法和工程实践的方方面面,内容繁杂。 本书包括NLP的语言理论部分、算法部分、案例部分,涉及汉语的发展...
  • 一文读懂自然语言处理NLP(图解+学习资料)数据派THU发表于数据派THU订阅905前言自然语言处理是文本挖掘的研究领域之一,是人工智能和语言学领域的分支学科。在此领域中探讨如何处理及运用自然语言。对于自然语言...
  • 自然语言处理

    2020-05-19 10:21:27
    NLP_Natural Language Processing自然语言处理的概念自然语言处理的两大体系自然语言处理的主要任务 自然语言处理的概念 自然语言处理是人工智能和语言学的交叉学科 主要目的是:自然语言认知(让计算机能“懂”人类...
  • 这是一系列自然语言处理的介绍,本文不会涉及公式推导,主要是一些算法思想的随笔记录。 适用人群:自然语言处理初学者,转AI的开发人员。 编程语言:Python 参考书籍:《数学之美》 《统计自然语言处理》 --宗成庆 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 103,145
精华内容 41,258
关键字:

自然语言nlp涉及到