米兰官方网页版-米兰MiLan(中国)







  • 咨询热线(xiàn):021-80392549

    米兰官方网页版-米兰MiLan(中国) QQ在线 米兰官方网页版-米兰MiLan(中国) 企业微信
    米兰官方网页版-米兰MiLan(中国)
    米兰官方网页版-米兰MiLan(中国) 资讯 > AI挖(wā)掘(jué)技(jì)术 > 正文(wén)

    自然(rán)语言(yán)处(chù)理入(rù)门教程

    2020/05/253511

    自然语言处理(lǐ)入门(mén)教程

    自然语言处理(NLP)是计算机科学领域和人工智能领域中的(de)一个分支,它与计算机(jī)和人类之间使用自(zì)然语言进行互动(dòng)密切(qiē)相关。NLP的(de)最终目标是使计(jì)算机能够像(xiàng)人类一样理解语言。它是虚拟助手、语音识别、情感分(fèn)析、自动文本摘要、机器翻译等的驱动(dòng)力。在这篇文章中,你(nǐ)将学习到自然语言处理(lǐ)的基础知识,深入了解到它的一些技术,了解到NLP如何从深度学习的最新进展。

    1.简介

    自然语言处理(NLP)是计算机(jī)科学、语言学和(hé)机(jī)器学习的交叉(chā)点,它关注计算机与人类(lèi)之间(jiān)使用自然语言中的沟通交(jiāo)流。总之,NLP致力于(yú)让计算机能(néng)够理解和(hé)生成(chéng)人类语言。NLP技术应用于多个领域,比如天猫精灵和Siri这样的(de)语音助手,还(hái)有机器翻译和文本(běn)过滤等。机器学习是受(shòu)NLP影响(xiǎng)最深远的领(lǐng)域之一,尤为突出的(de)是深度学习技术(shù)。该领域(yù)分为以下三(sān)个部分:

    1.语音识别:将口语翻译成文本。

    2.自然(rán)语(yǔ)言理解:计算机理解人类的能(néng)力。

    3.自然语言生成:计算机(jī)生成自(zì)然语言(yán)。

    2.为什么NLP很难

    人类语言有其(qí)特(tè)殊性(xìng)。人类(lèi)语言专门用于传(chuán)达讲话者(zhě)和写作(zuò)者的意思,即使(shǐ)小孩子能够很快学会,它依然是一个复杂的系统。它的另一个显著之处在于它(tā)完全与符号有关。Chris Manning(斯坦(tǎn)福教(jiāo)授(shòu))表(biǎo)示,它是(shì)一个(gè)离散的、象征性的、绝对的信号系(xì)统,这意(yì)味(wèi)着人们可(kě)以通(tōng)过使用不同的方式传达相同的(de)含义,比如演说(shuō),手势,信号等(děng)。人类大(dà)脑对这些符号(hào)的编码(mǎ)是(shì)持续的激活模式(shì),在这(zhè)个模式中,符(fú)号通过(guò)声音和视觉的连续信号实现传输。

    由于其(qí)复(fù)杂性,理解(jiě)人类(lèi)语言被认为是一项艰巨的任务。例如,在(zài)句子中排列单(dān)词(cí)有无数种不同的方法。此外,一(yī)个单词(cí)可以有多种含义,并且正确(què)解释句子(zǐ)需要(yào)恰(qià)当的(de)语境信息。每(měi)种语言或多或少都(dōu)是独特且含糊的。比如:“The Pope’s baby steps on gays”,这(zhè)句话显然(rán)有两种(zhǒng)截然(rán)不同的解释,这(zhè)是反(fǎn)映(yìng)NLP中的(de)困难之处的一个很好(hǎo)的例(lì)子。

    随(suí)着计算机对语言的理(lǐ)解愈(yù)渐完美,将会产生可以处理互联网(wǎng)上全部信息(xī)的人工智能(AI),继而(ér)产(chǎn)生强人工智(zhì)能(AGI)。

    3.句法和语义分(fèn)析

    句法分析和语义分析是理(lǐ)解自然语(yǔ)言的两种主要方法。语言是一组意(yì)义的语句(jù),但是什么使(shǐ)语句有意义呢?实际(jì)上,你可以将有(yǒu)效性(xìng)分为(wéi)两(liǎng)类:句(jù)法和语义。术语“句法(fǎ)”是指文(wén)本的语(yǔ)法结构,而术语“语义(yì)”是指(zhǐ)由它表达的含义。但是,句(jù)法上正(zhèng)确的语句不必在语义上正确。只需看看下面的例子。语句(jù)“cow kow supremely”在语法上是有效的(主语-动词-副词),但没有任何意义。

    句法分析:

    自然语言(yán)处理入门教程

    句(jù)法分析,也称为(wéi)语(yǔ)法(fǎ)分析或(huò)解(jiě)析,是(shì)通(tōng)过遵循正式(shì)语法(fǎ)规(guī)则来分析(xī)自然语言(yán)的过程。语法规则适用于单词和词组,而不是(shì)单(dān)个(gè)单(dān)词(cí)。语法分析主(zhǔ)要为文本分配语义(yì)结构。

    语义分(fèn)析:

    我们理解(jiě)他人的语言是一种无意识(shí)的过程,依(yī)赖于直觉(jiào)和对语言本身的认识。因此,我们理解语(yǔ)言的(de)方式很(hěn)大程度上取决于(yú)意义和语境(jìng)。计算机(jī)却不能依赖上述方法(fǎ),需要采(cǎi)用不同(tóng)的途(tú)径。 “语义”这个词是一个语言术语(yǔ),意思(sī)与(yǔ)意义(yì)或逻辑(jí)相近。

    因此,语义分析是理(lǐ)解单词、符号和语句结构的含义和解释的过程,这使计算(suàn)机能(néng)够(gòu)以(yǐ)人类的方式理解(jiě)部分涉(shè)及意义和语境的(de)自然语言。为什么说只能部(bù)分理解呢?是因为语(yǔ)义分(fèn)析是NLP中最棘手的部分(fèn)之一,仍未完全解决。例(lì)如,语音识别技术已非常成熟,并且工作近乎完美,但仍(réng)然缺(quē)乏在自然语言理解(jiě)(例如(rú)语义(yì))中的熟练程度。手机(jī)基本上可以(yǐ)理解我(wǒ)们所说的内容(róng),但通常无(wú)法用它(tā)做任何事情,因(yīn)为它不了解其(qí)背后意(yì)义。

    4.理解文本的技巧

    下面我们将讨论多(duō)种用于自然语(yǔ)言(yán)处理(lǐ)的(de)现行技术(shù)。

    什么是解析?首先,让我们看(kàn)一下词(cí)典释义(yì):

    解析(xī)—“将句子分解为其组成部分,并阐述各部(bù)分的句法角(jiǎo)色(sè)。”

    实际上解释(shì)的已经非常到位,但它可以更全面一些(xiē)。解(jiě)析是指计算机对句子的形式分析,其(qí)结果是(shì)一个解析树,这个(gè)解析(xī)树可以可视化地显示句(jù)子成分之间的句法关系(xì),用于进一步处理和理(lǐ)解。

    在下面(miàn)你(nǐ)可(kě)以看到句子“The thief robbed the apartment”的解析(xī)树,以及(jí)由它传达(dá)的三(sān)种不(bú)同信息类型的描述(shù)。

    自然语言处理入(rù)门教程

    我先看单个单词正(zhèng)上方的字母,它(tā)们用于显示每个单词的词性(xìng)(名词-N,动词-V和限定词-DT)。我(wǒ)们再看解析树中更高(gāo)的层级,一些单(dān)词进行层次分(fèn)组(zǔ)组成短语。例如,“the thief”是一个名词短语(NP),“robbed the apartment”是一个动词短语(VP),这些短语一起形成一(yī)个句子(S),在(zài)树中标(biāo)记在更高的层级。

    这些短语以名(míng)词为主(zhǔ)体,包含一个或多个单词,可能还包含描述性词语、动词或副词,简言之,就(jiù)是把把名词和与其相关的单词组合在一起。

    从解析(xī)树中还能(néng)看出,单词的表述(shù)结构(gòu)影响其在(zài)句中的语法(fǎ)关(guān)系。例(lì)如,在此结构中,“thief”是“robbed”的主语(yǔ)。

    结合结构来看,动词(cí)“robbed”,上方标有“V”,更上一级标(biāo)有“VP”;主语(yǔ)“thief”,上方(fāng)标有N和“NP”,通(tōng)过(guò)“S”联系在一起。这就像主语—动(dòng)词关系的模(mó)板,同样还有许多其(qí)他类型的关系。

    词干提取:

    词(cí)干提取是一种来自形态学(xué)和(hé)信息检索的技术,在NLP中用于预处(chù)理(lǐ)和效率提升。但是(shì),我们首先看一(yī)下(xià)词典中的释义:词干 — “起(qǐ)源于或(huò)由其引起。”

    基本上,“词干提取”是将单词(cí)进行缩减得到词干的过程(chéng),而(ér)“词干”的实际意义是是在删除单词的所有的前缀后缀(zhuì)之后保留的一部分。例如,“touched”,它的词干是(shì)“touch”,同时“touch”也是“touching”等词的词干。

    为什么需要(yào)词干(gàn)?因(yīn)为我们(men)会遇到不同的(de)词汇变(biàn)形,而实际上(shàng)它(tā)们具有相同(tóng)的词干和意义。举例来说:

    # I was taking a ride in the car

    # I was riding in the car.

    这两个句子意思是一致的(de),ride和riding的(de)用(yòng)法也是(shì)相同的。

    词汇表中所有的单(dān)词(cí)有不同的注(zhù)释,其中还(hái)包括大量实际意(yì)义相同(tóng)的(de)单(dān)词,要存(cún)储它们,需要一个庞大数据库,但是通过词干提取(qǔ),仅关(guān)注单词的词(cí)干,可以很(hěn)好地解决这个问题(tí)。现行的通用算法(fǎ)之(zhī)一(yī)是1979年的“Porter Stemming Algorithm”(波特(tè)词干算法),非常使(shǐ)用便(biàn)捷。

    文字(zì)分割:

    NLP中的文本分割是将(jiāng)文本转换为有意(yì)义的单元的(de)过程,可以是单(dān)词(cí)、句子、也可以是不同(tóng)的主题或潜在的(de)意图等(děng)。在文本分割(gē)中,文本根据不同语种被分(fèn)割为成份单词,由(yóu)于人类(lèi)语言的复杂性,通常比较难。举个(gè)例(lì)子,在英语(yǔ)中利用空(kōng)格(gé)来分隔单词,相对(duì)高效实用,但是也有像“ice box”这类词语(yǔ)的例外,ice和box这两个(gè)由空格隔开的词(cí)合并一(yī)起使用才有(yǒu)原本(běn)含义的,所以人们有时把它写作“ice-box”,那么就(jiù)给文字分割带来了难(nán)题。

    命名(míng)实体识别(bié):

    命名(míng)实(shí)体(tǐ)识别(NER)用于确定文本中哪(nǎ)些词条(tiáo)属(shǔ)于命名实体,这些词(cí)条可(kě)以被定位(wèi)并归入预定(dìng)义的类别,类别的范围包括人名,组织(zhī),地(dì)点,还有货(huò)币价值和百分比。

    看(kàn)下面的例子:

    NER之前:Martin bought 300 shares of SAP in 2016.

    NER之后:[Martin]Person bought 300 shares of [SAP]Organization in [2016]Time.

    关系抽(chōu)取:

    关系提取采用(yòng)“命名实体识别(NER)”的命名实体,并识别它们(men)之间的(de)语义关(guān)系。这可(kě)能意味着它能够(gòu)发现文本(běn)中词语之间(jiān)的关联(lián)性,例如谁与谁(shuí)结婚,某(mǒu)人在哪(nǎ)个公(gōng)司工作等(děng)。这个(gè)问题也可以(yǐ)转换(huàn)为分(fèn)类问题,然后为每种关系类型(xíng)训(xùn)练机器学习模型。

    情(qíng)感分析:

    通过情(qíng)感分析(xī),我们想要确定(dìng)例如说话者或作者关于文档(dàng),互动或事件的(de)态(tài)度(例如情绪)。因此,需要理解文本(běn)以预测潜(qián)在意图是一种自然语言处理问题。情绪(xù)主(zhǔ)要分为积极(jí),消极和中性两类。通过使用情感分析,我(wǒ)们希望根据(jù)他撰(zhuàn)写(xiě)的(de)关于产(chǎn)品的(de)评论来(lái)预测客户对产品的(de)看法(fǎ)和态度。因此,情感分析广泛应(yīng)用于评论,调(diào)查(chá),文档等等

    如果(guǒ)你对使用Python中的某(mǒu)些技术感兴趣,可以查看我创建的(de)Python的自(zì)然语言工具包(NLTK)的Jupyter Notebook。你还可以查看我(wǒ)的博客(kè)文(wén)章,了解如何使(shǐ)用(yòng)Keras构建(jiàn)神经网(wǎng)络,我将训练神经网(wǎng)络进行情感分(fèn)析。

    5.深度(dù)学习和NLP

    深度学习和自然语言的核心是(shì)“词(cí)义(yì)”,在(zài)这里,单词用一个实数向量来(lái)表示。因(yīn)此,通过向量来(lái)代(dài)表单词单词,我们(men)可以将单词置于高维(wéi)度(dù)的空间中,由(yóu)向(xiàng)量表(biǎo)示的单词起到(dào)语义空间的作用。这仅仅意(yì)味着在该高维向量(liàng)空间中,形(xíng)近意近的(de)单词(cí)倾向于聚集在(zài)一起。下图中,可以(yǐ)看到单词含义的直观展示(shì):

    自(zì)然语言处(chù)理入门教程

    在此空间中,如果想要知道(dào)某一组聚集成类的单词的含义,可以通过使用主成分分析法(PCA),也可以使(shǐ)用(yòng)降维法。但这些方法太简单并且会(huì)遗漏了(le)周边的大量信息,因而产生误(wù)差(chà)。在(zài)研究的初始阶段,这(zhè)些方法很(hěn)好用,(如数据科学中的逻辑或线性回归)但并不是(shì)前沿技术。

    我们还可以将单词的一部分当作向量,这些向量可以(yǐ)代表单(dān)词的含义。想象一下“undesirability”这个词。使(shǐ)用“形态(tài)学方法(fǎ)”,它涉及一个词所具有的不(bú)同部分,我们认为(wéi)它由词素(sù)(单词部分)构成(chéng):“Un + desire + able + ity”。每个语素(sù)都有自己的向量(liàng)。这(zhè)允许我们构建一(yī)个神经网络(luò),它可以构(gòu)成(chéng)一(yī)个更大(dà)的单位的意义,而(ér)更大的(de)单位又(yòu)由所有这些语素(sù)组成(chéng)。

    深度学习还可以通过(guò)创建(jiàn)句法分(fèn)析(xī)器(qì)来(lái)理解句子的结构,谷歌正在使用这样的依赖(lài)解析技术,在他们(men)的“McParseface”和“SyntaxNet”(两种语言解析器(qì)),不过更加宏大,更加复杂。

    通(tōng)过分析句子结构,我们开(kāi)始理解(jiě)句子的意义,可以从单(dān)词(cí)的含义开始(shǐ),也可以从整个短语和句子开始,无论(lùn)单词的意义(yì)、短语还是句子,都用向量来(lái)表示。如果想知道句子之间的关系,我(wǒ)们可以创建神经(jīng)网络来帮助分析。

    深度学(xué)习也适用于情感分析。请看这个电影评论(lùn):“这部电影不(bú)在(zài)乎是不(bú)是巧妙,也不在乎幽默(mò)与(yǔ)否”。传统的(de)机(jī)器学(xué)习算(suàn)法会认为这是一(yī)个积极的评(píng)论(lùn),因为“聪明”和“幽默”是积(jī)极的词汇(huì),但是神经网(wǎng)络能(néng)够识别出(chū)它的真正含(hán)义。

    另外,深度学习算(suàn)法实现的机器翻译(yì)中(zhōng),它从句子开始翻译,并生(shēng)成一个向量,然后用(yòng)另外一种语(yǔ)言生成所需要的(de)信息。

    总而言(yán)之,NLP与深度学习相结合,就是表示单词、短(duǎn)语(yǔ)的(de)向量,以及它(tā)们的含义。

    关键词: AI挖掘技术




    AI人工(gōng)智(zhì)能网声(shēng)明:

    凡资讯来(lái)源注(zhù)明(míng)为(wéi)其他媒(méi)体来源的(de)信息,均为转(zhuǎn)载自其他媒体(tǐ),并不代表(biǎo)本网站赞同(tóng)其观点,也不代表(biǎo)本网站(zhàn)对其真实性负责(zé)。您若对(duì)该文(wén)章内(nèi)容有任何疑问(wèn)或质疑,请立即与网站(www.fartooclub.huaibei.xinxiang.zz.pingliang.ww38.viennacitytours.com)联系,本网站将迅速给您回应(yīng)并做处(chù)理(lǐ)。


    联系电话:021-31666777   新闻、技(jì)术(shù)文章投稿QQ:3267146135   投稿邮箱:syy@gongboshi.com

    工博士人工智能网
    米兰官方网页版-米兰MiLan(中国)
    扫描(miáo)二(èr)维码关注微信
    扫(sǎo)码(mǎ)反馈

    扫一扫(sǎo),反馈当(dāng)前页(yè)面

    咨询反馈
    扫码关注

    微信公众号

    返回顶部

    米兰官方网页版-米兰MiLan(中国)

    米兰官方网页版-米兰MiLan(中国)