博鱼体育(中国)官方网站-登录入口





  • 咨询热线:021-80392549

    博鱼体育(中国)官方网站-登录入口 QQ在线 博鱼体育(中国)官方网站-登录入口 企业微信
    博鱼体育(中国)官方网站-登录入口
    博鱼体育(中国)官方网站-登录入口 资讯 > AI挖(wā)掘技术 > 正文

    ”关于初入(rù)NPL领(lǐng)域的一些小建议“

    2020/05/263866

    ”关于初入NPL领域的(de)一些小建议“


    1.了解 NLP 的最(zuì)基本知(zhī)识:Jurafsky 和 Martin 的(de) Speech and Language Processing 是领域内(nèi)的(de)经(jīng)典教材,里面包(bāo)含了 NLP 的基础知识(shí)、语言学(xué)扫(sǎo)盲知识、基本任务以及(jí)解(jiě)决思路。阅读此书会接(jiē)触到很(hěn)多 NLP 的最基本任务(wù)和知识(shí),比如 tagging, 各种 parsing,coreference, semantic role labeling 等(děng)等等等。这对于全局地了解 NLP 领域有着极其重要的(de)意义。书里面的知识(shí)并不需要烂熟于心,但是刷上一两(liǎng)遍,起码对于 NLP 任务有(yǒu)基本认识,下次遇到了知(zhī)道去哪(nǎ)里找还是非(fēi)常有意义的。另(lìng)外(wài) Chris Manning 的(de) introduction to information retrieval 也(yě)是一本可以(yǐ)扫(sǎo)一(yī)下盲(máng)的(de)书(shū),当然我认为依然不(bú)需要记住(zhù)所有细节,但轮廓需要了解。IR 里(lǐ)面的(de)很多基本算法跟 NLP 有不少(shǎo)的(de)重合。说说我自己(jǐ)曾经走过的弯(wān)路。Stanford NLP 的(de) qualification 考试的一部分(fèn)就是选一些 jurafsky 和 manning 书里面(miàn)的一些 chapter 来读,然(rán)后(hòu)老师来问相关问题。开始(shǐ)我一直对里面的东西懒得看,所(suǒ)以 qualification 考试一拖再拖。但博(bó)士(shì)最后一年没办法拖的时候,才(cái)发现如果(guǒ)早知道这些东西,博士早年可以少走(zǒu)很(hěn)多弯路。

    为什么(me)了解 NLP 基础(chǔ)知识的(de)重要,我给大家举几个例子。

    最近跟(gēn)同学一(yī)起做语言模型 language modeling 相关的(de)事(shì)情,很多同学用 LSTM 或者 transformers 做 language model 随手就能实(shí)现(xiàn),但是实现一个 bigram 或(huò)者 trigram 的 language model(LM)却(què)因为里(lǐ)面的 OOV 的(de)平(píng)滑问题卡了大半(bàn)天(熟(shú)悉的(de)同学可能知道(dào),需要拉普(pǔ)拉斯平滑或(huò)者更 sophisticated 的 Kneser-Ney 平滑)。为什么 bigram 或者 trigram 的 LM 很(hěn)重要呢?去做一个(gè)语言模型的问题,实现(xiàn)深度(dù)模型之前,第一步其实就要去(qù)写一个 bigram 或者 trigram 的 LM。为什么呢?因为这些 N-gram 模型实现(xiàn)简单,并且 robust。通(tōng)过(guò)这样简单的实现,可以告(gào)诉你这个数(shù)据集的 LM 模型的下限。这样(yàng)我们心里(lǐ)会有数,神(shén)经网(wǎng)络模型至少不应该比(bǐ)这个模型差的。神经(jīng)网络模型因为其超参数、梯(tī)度(dù)爆炸等问题(tí),有时候我们不太容(róng)易决定是真的(de)模型不行、参数没调好还是代码有 bug。那么通过 N-gram LM 的给(gěi)出的(de)下限(xiàn),我们就可以直(zhí)观地知道神经网络是有(yǒu) bug 还是(shì)没调好参(cān)数。

    第二(èr)个(gè)例子就(jiù)是涉及发文章了,不知道有(yǒu)没(méi)有同学想过,BERT 里(lǐ)面(miàn)训练 LM 的随机替换为(wéi)什么就使结果变好,随机替(tì)换是什么鬼(guǐ),怎么(me)结果就好了(le)。其实在 BERT 之前,斯坦福的吴恩达组的(de) Ziang Xie 的 Data Noising as Smoothing in Neural Network Language Models ICLR2017(https://arxiv.org/pdf/1703.02573.pdf)就首次提出了此方(fāng)法,而且给(gěi)出了(le)理论解释。这种 random 替换其实本质上属于 language modeling 里(lǐ)面基于 interpolation 的平滑(huá)方式(shì),而基于(yú) interpolation 的 LM 平滑(huá),就躺在 jurafsky 那本书的第(dì) 3.4.3 节。

    2.了解早年经(jīng)典的(de) NLP 模型(xíng)以及(jí)论文:相比简单(dān)粗暴的神经网络模型,早(zǎo)年的(de) NLP 算法确实比(bǐ)较繁琐(suǒ)复杂,但里(lǐ)面确实有很多早年学者在硬件条(tiáo)件艰苦情况下的智慧(huì)结晶。熟悉了这些模型,可以在现在(zài)神(shén)经网(wǎng)络里面融会贯通。去年在人民大学做 seminar。Seminar 有大概(gài) 30-40 位同学参(cān)加(jiā)。Seminar 中,我问了一个问题,有谁知道机(jī)器翻译中的 IBM 模(mó)型大概是(shì)干嘛的(de),举(jǔ)手的(de)同学大(dà)概有五(wǔ)分之一(yī)。我再问(wèn),谁能来手写(或(huò)者大概手写)一下 IBM model1,一个人都没有(yǒu)。仅仅从(cóng)基于 IBM 模型(xíng)的 Hierarchical Phrase-based MT, 近几年就有很多(duō)篇引用量很(hěn)高的文章(zhāng)是(shì)基(jī)于里面的思想的。例子数不胜(shèng)数:

    chris dyer 组(zǔ)的(de) Incorporating structural alignment biases into an attentional neural translation model (NAACL16) 提(tí)出用双向 attention 做(zuò) neural 机器(qì)翻(fān)译的约束项,意思是如果在英语翻译法(fǎ)语生成的(de) target 中的(de)一个法语词 attend 到了一个 source 中的英语词(cí),那么反过来,法语翻译(yì)英文(wén) target 中(zhōng)相同这个(gè)英语词应该也 attend 到 source 中的这个英语词。其实这(zhè)个思想就是完完全全相似(sì) Percy Liang 曾(céng)经的(de)成名作之一,早在 NAACL06 年 Alignment by Agreement,大(dà)家通(tōng)过题目的意思就可以猜到文章(zhāng)的内容,正向翻译与反向翻译(yì)中的 对齐 (alignment) 要(yào) 一(yī)致 (agree)。如今做 neural MT 的同学,有多少同学读过 Percy 的这篇大作呢(ne)(大家知道 Percy 最多的应该是(shì) Squad 吧)。

    处理对话系统的无聊回(huí)复,用 p(target|source) 做 reranking 现(xiàn)在(zài)应该已经是标配。再比如 Rico Sennrich 的(de)成名作之一将 Monolingual data 跟 seq2seq 模型结合。其实这连(lián)个思想在 phrase-base MT 里面(miàn)早(zǎo)就被广发的使用(yòng)。Neural 之(zhī)前的 MT,需要对(duì)一(yī)个(gè)大的 N-best list 用 MERT 做(zuò) reranking,反向概率 p(target|source) 以及语言模(mó)型概率(lǜ) p(target) 是(shì) reranking 中 feature 的标配。

    Harvard NLP 组(zǔ), Sam Wiseman 和 Alex 发表的 EMNLP16 best paper runner-up, Sequence-to-Sequence Learning as Beam-Search Optimization, 基本上(shàng)传承(chéng)了 Daume III and Daniel Marcu 2005 年的 LaSO 模型,将其(qí)思(sī)想 adapt 到 neural 里(lǐ)面。

    如果再准(zhǔn)本溯(sù)源,诞生于 neural MT 的(de) attention,不就是 IBM 模型的(de)神经网(wǎng)络版本嘛。

    3.了(le)解机器学习的基本模(mó)型:神经网络的简(jiǎn)单暴力并且有效(xiào)。但是从科研的角度讲,熟悉基本的机器(qì)学习算法是必(bì)修课。比如吴(wú)恩达的(de) machine learning 就是必(bì)要之(zhī)选。记得前段时(shí)间我面试一个(gè)小伙子(zǐ),一(yī)看就是很聪(cōng)明的同学,而且很短的(de)时(shí)间(jiān)就有一篇 NAACL 在投。我就问小伙(huǒ)子,EM 算法是什么,小伙子说没(méi)有听(tīng)说过 EM,而且自己的科(kē)研也用不到 EM。我认为这其实是(shì)一个挺大的误区(qū)。当(dāng)我想起我自(zì)己,曾经(jīng)就吃过很(hěn)多类似的(de)亏(kuī)。因(yīn)为早期数学基础偏(piān)弱,也没有决(jué)心恶补一下数学,所以早年(nián)每(měi)次看(kàn)到跟 variational inference 相(xiàng)关的算法就头大,这(zhè)种偏(piān)科持续了(le)很久(jiǔ),限制了科研的广度(dù)。相比粗暴的神经(jīng)网(wǎng)络,CRF 等模型(xíng)的(de) inference 确实相对复杂(当年我自己也看(kàn)了很多(duō)次才(cái)彻(chè)底搞明(míng)白)。但搞懂(dǒng)这些,是一个 NLP researcher 的基本素养(yǎng)。Pattern Recognition and Machine Learning 那本书,尤其是某(mǒu)些小节确实(shí)比较难(nán)(又暴露了数(shù)学基础差的事实),即(jí)便是只(zhī)是为(wéi)了过一遍,也需要很强的耐力才能看完,更不用说完全看懂了。我自己(jǐ)也曾经半途而废很多次(cì),如今依然有很多章节是不太懂的(de)。但是其(qí)中的(de)很多基础 chapter,我认为还是很值得一读的。其实(shí)可以组成(chéng)那种两三个人(rén)的学习小组(zǔ),不(bú)需要有太雄伟的(de)目标,用个(gè)一(yī)年哪怕两(liǎng)年的时间,把几个(gè)重(chóng)要的(de) chapter 过一(yī)遍。

    NLP 相对是应用(yòng)科学,并不是特别的(de)数学。但是我们天天用(yòng)的算法的基本数(shù)学逻辑我认为还是需要搞懂,比如 dropout, 比如(rú)天天用到的优化(huà) (SGD, momentum, adaboost, adagrad),比(bǐ)如各种(zhǒng) batch, layer normalization。这样其实可以省去(qù)很(hěn)多浪费的时间(jiān),磨刀不(bú)误砍柴工。这些年来,在帮同学调 bug 的过程中,我至少遇见(jiàn)过 3-5 个同学 training 的时候(hòu)开 dropout, test 的时候没有(yǒu)对每个 cell 用 (1-dropout) 去 scale(大家不要笑,这是真的)。然后画(huà)出 dropout 曲线就是 dropout 值越大,结果越(yuè)差。在讨(tǎo)论的(de)时候,同学(xué)一脸茫然并且不清楚 test 时候需要 scale。其实本质就(jiù)是并不了(le)解 dropout 背后的数学(xué)原理。

    4.多看 NLP 其(qí)他子(zǐ)领域的论文:NLP 有很(hěn)多子领域,MT,信息抽取,parsing,tagging,情感(gǎn)分析,MRC 等等。多多熟悉(xī)其他子领域的进展是必要的(de)。其实不同子领(lǐng)域所运用的模型不会(huì)相差太(tài)大。但(dàn)是最开始看不(bú)熟悉领域的问题可能会有一点难,原因是对问题的 formalization 不是很了解。这可能就需要多(duō)花一些时间,多找懂的同学去问。其实(shí)了解不同问(wèn)题的(de) formalization 也(yě)是对领域知(zhī)识最好的扩充。

    5.了解 CV 和 data mining 领域的(de)基本(běn)重大进展(zhǎn):当熟悉了上面所说(shuō)的点(diǎn)之后(当然可能至少也需要一年的时间(jiān))。熟悉 CV 领(lǐng)域的基(jī)本任务、基本算(suàn)法我认(rèn)为对于打开科研视野很(hěn)重(chóng)要。但是不可否(fǒu)认,因(yīn)为(wéi)领(lǐng)域(yù)不用,写作风格、术语表达相差很大,又因为缺乏背景知识(文章中会省略(luè)一些基础知识,默认大家都懂。但(dàn)是跨领域的人可能不懂),第一次想读懂跨领域的(de)文章其实(shí)并(bìng)不容易。我就出现过竟然在讨论班上(shàng)直接把 faster-RCNN 讲错了的情(qíng)况,以为自己看懂了,然后就(jiù)讲错了(至(zhì)今昱先天(tiān)天还在因为这(zhè)个事情调侃我)。不过(guò)重要的是(shì),NLP 领域里面一些重要的文(wén)章其实或多或少借鉴了 CV 里面的思想,当然也同样出现 CV 借鉴 NLP 的情况。NLP 神经网络可视化、可解(jiě)释性的研究,时间(jiān)上(shàng)还是落后于 CV 里(lǐ)面对(duì) CNN 的可视(shì)化。所以很多(duō)工(gōng)作大量借鉴了(le) CV 里面的类似工作。NLP 运用 GAN 其实也是借(jiè)鉴 CV 的。其实两(liǎng)个(gè)领(lǐng)域很(hěn)多是很相通的。比如,如果不(bú)考虑 question query, vision 里(lǐ)面 detection 中的 region proposal(在一个(gè)大的图片背景(jǐng)下找一个(gè)特定区域), 大家想是不是跟 MRC 里面的 span extraction(在一大(dà)堆(duī)文字里面找一(yī)个 span)有异曲同(tóng)工之妙(miào)。更不(bú)用说 image caption generation 与 sequence-to-sequence 模型了,本质上(shàng)几乎没什(shí)么太大的区别(bié)。强化(huà)学习在生成领(lǐng)域 generation,发(fā)完了 MT(Ranzato et al., ICLR2016) 再发 image caption generation, 再(zài)回到 summarization. Actor-critic 模型也是类似的(de),还是很多做 generation diversity 的文(wén)章。因为跨领域不(bú)好懂,所以第(dì)一次推荐看 tutorial, 如果(guǒ)有 sudo code 的 tutorial 那就更好了。另外看(kàn)看(kàn)扫盲课的(de)视(shì)频,比如 Stanford CS231n 也是个(gè)好办法。另外(wài),一个(gè) NLP 组里(lǐ)面有一(yī)个(gè)很懂 CV 的人也很重要(拜谢昱先),and vise versa。graph embedding 近两年崛起于(yú) data mining 领域。目测会在(或(huò)者已经在(zài))NLP 的不少任务(wù)得到广泛应用。想(xiǎng)到(dào)几年前,deep walk 借鉴了 word2vec, 开始在(zài) data mining 领域发迹,然后似乎又要(yào)轮转回(huí) NLP 了(le)。

    关键词: AI挖掘技术




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

    凡资讯来(lái)源(yuán)注明为其他媒体(tǐ)来源的(de)信息(xī),均为转载自其他媒体,并不代表(biǎo)本网(wǎng)站(zhàn)赞同其观点,也不代表本网站对其真实性负责。您(nín)若(ruò)对该文章(zhāng)内容有任何疑问或(huò)质疑,请(qǐng)立即与(yǔ)网站(www.anqing.liaocheng.jixi.ww38.viennacitytours.com)联系,本网站将迅(xùn)速(sù)给(gěi)您回应并(bìng)做处理。


    联系电(diàn)话:021-31666777   新闻、技术文(wén)章投稿QQ:3267146135   投稿邮(yóu)箱:syy@gongboshi.com

    工博士人工智能(néng)网
    博鱼体育(中国)官方网站-登录入口
    扫描二维码关(guān)注微信
    扫码反馈(kuì)

    扫一扫,反馈当前页(yè)面

    咨询反馈
    扫码关(guān)注

    微(wēi)信公众号

    返回(huí)顶部

    博鱼体育(中国)官方网站-登录入口

    博鱼体育(中国)官方网站-登录入口