NLP研究者必备的语言学书籍!
文 | Serena Gao@知乎
首先,做nlp不一定要很懂語言學(xué),也不一定要跟語言學(xué)扯上關(guān)系。nlp可以僅是data mining,features engineering, 也的確有很多work目前在用文本或者對話做為數(shù)據(jù)集,然后用統(tǒng)計學(xué)方法實現(xiàn)目的,比如deep learning 。在某些任務(wù)上統(tǒng)計學(xué)模型功不可沒,比如machine translation, speech recognition, question answering, etc.
許多主流大公司目前的力度都在deep learning, 學(xué)好nlp基本知識,做工程就夠了(當(dāng)然你還需要cs的background), 語言學(xué)的東西不用太深入研究。
大多數(shù)人對nlp和語言學(xué)聯(lián)系的了解,在于認(rèn)為rule-based的nlp就是基于語言學(xué)。的確rule-based是語言學(xué)里廣泛使用的,尤其是語法(syntax, syntactic structure)。現(xiàn)在machine learning的發(fā)展已經(jīng)可以將rules轉(zhuǎn)換為hidden states,人不用去操心提出大量rules來做exhaustive search。
但computational linguistics所包含的,遠(yuǎn)遠(yuǎn)大于rules。人類語言是漫長歷史進(jìn)化的高級產(chǎn)物,遠(yuǎn)不是成千上萬個rules能描述清楚的。能被nlp利用的語言學(xué),除了枚舉rules外還有很多很多。
比如定義。個人認(rèn)為,在研究任何問題前,都必須要想清楚你的問題是什么,怎么定義。許許多多nlp research都是基于語言學(xué)上的定義,像我下文會提到的semantics, grammar。可是如果沒有從沿用語言學(xué)的定義到nlp,這個0到1的過程,最早做researchers的人該如何想明白他們的research question?
做對話系統(tǒng)的同學(xué)應(yīng)該很熟悉dialogue acts. 現(xiàn)在的對話系統(tǒng)發(fā)展迅猛,很多新應(yīng)用都基于reinforcement learning, 并且取得顯著成就。尤其是某些task-oriented dialogue generator, 早就不是十多年前的rule-based system了。但任何一個系統(tǒng)在設(shè)計之初都要采用dialouge acts定義(當(dāng)然還有其他定義),來明確該系統(tǒng)的目的。不然該系統(tǒng)如何區(qū)分wh-question, yes-no question, greetings, 還有其他?(如果覺得見到“wh-”開頭,問號結(jié)尾,就是一個wh-question rule, 那我不知道該說什么好了)
明確自己的research task并且貫徹到底是好事,如果要做language modeling,基于machine learning/deep learning, 那真的不用費時間在語言學(xué)上。但覺得語言學(xué)是rule based已經(jīng)過時了被淘汰了,這個鍋語言學(xué)真的背的有點冤呀。
接下來的回答是,給真正對computational linguistics和nlp本身感興趣的,對某些語言現(xiàn)象感興趣,并打算在這條路上開始鉆研的同學(xué)的一些建議。(想忽略細(xì)節(jié)的同學(xué)請直接拉到答案最后找reference)
人大腦工作不是靠probablistic language modeling,咱們誰的腦袋里都不會聽到一個詞然后跑一遍hidden markov,畢竟也進(jìn)化了這么多年了不是。
與nlp相關(guān),跟概率論并進(jìn)的,除了傳統(tǒng)的語言學(xué),還有l(wèi)ogic呢,Lofti Zadeh老爺爺研究了一輩子的fuzzy logic,也是在探究semantics&world knowledge (再次感謝老爺爺?shù)呢暙I(xiàn),r.i.p)。
我也并不是在強調(diào)概率模型不重要,概率模型和現(xiàn)在很火的deep learning architecture像是基本功一樣,而且是很好用的工具,其他答主已經(jīng)強調(diào)很多,我就不再重復(fù)了。除了這些,還有很多知識可以深入了解。
另外,語言學(xué)自身是個很大又很寬泛,又互相交叉的學(xué)科。有很多研究是跟literatures and arts有關(guān),有的是跟cognitive science有關(guān),還有neuroscience, mathematics, education, psychology, etc。我涉獵有限,在此只能回答跟computational linguistics有關(guān)("to the best of my knowledge")。
Grammar
Grammar是我會首先推薦的方向。Grammar分為morphology&syntax. 在這里我主要指syntax.細(xì)節(jié)可以看Chomsky, Michael Colins, Jason Eisner等人的工作。現(xiàn)在大家用的最多的應(yīng)該是stanford的syntactic parsing吧。這方面的工作已經(jīng)很成熟,要處理語言基本是拿來就能用了。但是語法樹到底是什么,怎么構(gòu)建,syntatic parsing優(yōu)勢,如何處理ambiguity, 想要做computational linguistics的話,這些很有必要知道。最基本的例子是,當(dāng)用parser來處理你的句子,你起碼要能看懂這個parser output是否make sense.
Semantics
這個部分是我做最多的,感覺也是被誤解最多的。尤其推薦 “Meaning in language: An introduction to Semantics and Pragmatics.” 我并沒有看完。Semantics是個很復(fù)雜的研究,可以涉及到語法,句法,world knowledge, 但最終還是回歸semantics自身。目前nlp里很火的有distributional semantic representation (word embedding, phrase embedding, sentence embedding, etc), semantic parsing (logical form, etc), 等等等等。同一句話可以表達(dá)的意思太多了,同一個意思帶來的表達(dá)形式也太多了。一個簡單句子里包含的意思會涉及到當(dāng)下對話雙方的情景,以前或者以后會發(fā)生的事,等等。舉個個人很喜歡的例子:
2016年美國大選first presidential debate, Clinton vs Trump, 當(dāng)trump被問到:
“does the public's right to know outweigh your personal .. (taxes)”
Trump: "... I will release my tax returns -- against my lawyer's wishes -- when she releases her 33000 emails that have been deleted. As soon as she releases them, I will release. ".
最后一句話(粗體)包含的語意有:
等Hilary公開郵件記錄之后,我就公開我的稅務(wù)信息(動作和時間點);
Hilary沒公開,我也沒公開(當(dāng)下既定事實);
Hilary不愿公開,我也不愿公開(sentiment)。
She -- Clinton, I, my, -- Trump, them -- 33000 emails (co-reference).
第一層意思是直觀semantics, 能夠被目前的semantic representation捕捉到。第二層是presupposition, 代表著在說話當(dāng)下當(dāng)事人雙方默認(rèn)已經(jīng)發(fā)生的事情,是semantics研究中的難點;第三層包含了sentiment, 做情感分析的同學(xué)應(yīng)該很了解,能否被目前的classifier捕捉到我不清楚。第四層是現(xiàn)在也很火的coreference resolution, 雖然原文里沒有明確指代每個人稱代詞,但聽眾和當(dāng)事人很直接能把每個人物代入,甚至包括Trump省略的"I will release (my taxes)". 目前的co-reference resolution,e.g. stanford corenlp, 可以解決前三個代詞,但省略的部分似乎還做不到。
對Semantic要求最高也是最難的,在nlp中應(yīng)該是在natural language understanding相關(guān)應(yīng)用了。Semantics里包含了太多太多的現(xiàn)象,如果能稍微研究并且model其中一小部分,對downstream application來說都會是一個很大的boost。前段時間有個shared task,叫 "hedge detection",目的是找出文本信息中的hedges and cues。大部分人會關(guān)注這個shared task下哪個模型做的最好,個人認(rèn)為難點是在定義。有“but”,"however"出現(xiàn)語意就一定轉(zhuǎn)折了么?如果被轉(zhuǎn)折,是所在句子,還是段落還是一個小phrase呢?有dependency存在么?另一個相似shared task是negation detection. 想要理解這些問題本身和其難點所在,computational linguistics的前期知識儲備是并不可少的。
以上兩個方面應(yīng)該可以展現(xiàn)一個big picture:前者代表語言結(jié)構(gòu)是如何構(gòu)建的,后者代表meaning是如何被賦予到某種結(jié)構(gòu)里面的。
除了大框架外,小的方向取決于你的興趣和目標(biāo)所在。對話?文本?natural language understanding or natural language generation?
另外提兩個我覺得必看的,很重要的理論,是computational pragmatics范疇里的:Grice's maxims, 和Rational Speech Act(RSA). 這兩個理論其實緊密相關(guān)。前者理論關(guān)于談話雙方為了有效溝通會有意識的遵守的一些principle, (同時可見“cooperative principle”), 后者關(guān)于為了達(dá)到這種有效溝通,對話當(dāng)中存在的一種recursive process, 并且是bayesian inference. 如果你的工作跟 inference, reasoning相關(guān),請一定要閱讀。做對話系統(tǒng)的應(yīng)該已經(jīng)很熟悉了。
最后一個比較偏門的方向是我前面提到的fuzzy logic。目前還是有researcher繼承Zadeh老爺爺?shù)囊吕?#xff0c;并且用fuzzy logic做出了很多natural language generation, information extraction方面的成就。個人經(jīng)驗而言,我博士第一年(2014)一直在關(guān)注deep learning/machine learning方面,當(dāng)時覺得它們是萬能的。直到第二年夏天在忙一個project, 閱讀了Zadeh老爺爺?shù)拇罅抗ぷ?#xff0c;才感覺自己一直在以很片面的眼光看research。當(dāng)時真的做了滿滿一本筆記。
最后,如果興趣在建modeling,deep learning architecture, 語言學(xué)方面的part-of-speech也好,parsing也好,都只是你的工具;
同樣,如果興趣在computational linguistics,語言現(xiàn)象,deep learning/machine learning都是你的工具。
取決與你的任務(wù)是什么,取決于你有沒有完全dedicated的信心。畢竟巴菲特和Geff Hinton是少數(shù),大多數(shù)人都無法預(yù)測20年后火的適合什么。
感謝閱讀。希望能給在猶豫是否開始computational linguistics和nlp研究同學(xué)們一些幫助。
(任何不準(zhǔn)確的地方還請大家指正)
Reference
(大方向書籍,我要是能全部買下來就好了...并沒有全部看完,有的只是看過某一章節(jié)。Grammar和syntax知乎里面有很多問答跟這方面有關(guān),在此不重復(fù)了。)
Cruse, Alan. "Meaning in language: An introduction to semantics and pragmatics." (2011).
Karttunen, Lauri (1974) [1]. Theoretical Linguistics 1 181-94. Also in Pragmatics: A Reader, Steven Davis (ed.), pages 406-415, Oxford University Press, 1991.
Kadmon, Nirit. "Formal pragmatics semantics, pragmatics, presupposition, and focus." (2001).
Levinson, Stephen C. Pragmatics.Cambridge: Cambridge University Press, 1983, pp. 181-184.
Wardhaugh, Ronald. An introduction to sociolinguistics. John Wiley & Sons, 2010. (這本書的影響力很大,有很多跟social science的討論)
(具體其他上面提到的,每一篇我都仔細(xì)讀過的)
Monroe, Will, and Christopher Potts. "Learning in the rational speech acts model." arXiv preprint arXiv:1510.06807 (2015).(這篇是關(guān)于rsa如何被用于具體task上的)
Farkas, Richárd, et al. "The CoNLL-2010 shared task: learning to detect hedges and their scope in natural language text." Proceedings of the Fourteenth Conference on Computational Natural Language Learning---Shared Task. Association for Computational Linguistics, 2010. (上文提到的hedge and cues shared task,關(guān)于linguistics里的現(xiàn)象是如何被formulate成nlp問題的)
Morante, Roser, and Eduardo Blanco. "* SEM 2012 shared task: Resolving the scope and focus of negation." Proceedings of the First Joint Conference on Lexical and Computational Semantics-Volume 1: Proceedings of the main conference and the shared task, and Volume 2: Proceedings of the Sixth International Workshop on Semantic Evaluation. Association for Computational Linguistics, 2012. (negation 的shared task)
最后附上兩篇老爺爺對我影響最大的:
Zadeh, Lotfi Asker. "The concept of a linguistic variable and its application to approximate reasoning—I." Information sciences 8.3 (1975): 199-249.
Zadeh, Lotfi A. "The concept of a linguistic variable and its application to approximate reasoning—II." Information sciences 8.4 (1975): 301-357.( 這系列work分兩部。)
Zadeh, Lotfi A. "Toward a theory of fuzzy information granulation and its centrality in human reasoning and fuzzy logic." Fuzzy sets and systems 90.2 (1997): 111-127.
后臺回復(fù)關(guān)鍵詞【入群】
加入賣萌屋NLP/IR/Rec與求職討論群
后臺回復(fù)關(guān)鍵詞【頂會】
獲取ACL、CIKM等各大頂會論文集!
總結(jié)
以上是生活随笔為你收集整理的NLP研究者必备的语言学书籍!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 哈工大|NLP数据增强方法?我有15种
- 下一篇: step-by-step: 夕小瑶版神经