本書(shū)用簡(jiǎn)單、通俗、易懂的語(yǔ)言對(duì)BERT相關(guān)的自然語(yǔ)言處理技術(shù)進(jìn)行描述,從原理、架構(gòu)、實(shí)現(xiàn)等多維度解讀BERT 模型,并展示不同層面的實(shí)戰(zhàn)案例,通過(guò)將理論和實(shí)踐相結(jié)合, 使讀者能夠在對(duì)模型充分理解的基礎(chǔ)上,運(yùn)用模型解決實(shí)際任務(wù)。本書(shū)適合于自然語(yǔ)言處理初學(xué)者以及語(yǔ)言類(lèi)大學(xué)的信息科學(xué)專(zhuān)業(yè)學(xué)生,不僅可作為拓展閱讀的材料,還可作為立志從事自然語(yǔ)言處理方向研究人員的入門(mén)參考書(shū)。?
1. 本書(shū)行文邏輯清晰,通俗易懂??深度學(xué)習(xí)算法包含很多繁雜的公式,為了便于讀者理解本書(shū)內(nèi)容,提高學(xué)習(xí)效率,本書(shū)重點(diǎn)不是推導(dǎo)理論,而是用通俗淺顯的語(yǔ)言把道理闡明,幫助讀者建立直覺(jué)。用通俗的語(yǔ)言對(duì)復(fù)雜模型進(jìn)行解讀,為讀者在這個(gè)領(lǐng)域的進(jìn)一步深入研究拋磚引玉。
2. 本書(shū)每一章節(jié)均附有課后習(xí)題,以便適時(shí)檢驗(yàn)讀者的學(xué)習(xí)效果,提高學(xué)習(xí)效率??為了便于讀者理解本書(shū)內(nèi)容,提高學(xué)習(xí)效率,專(zhuān)門(mén)在每一章后面附了練習(xí)題,讀者在讀完本章節(jié)內(nèi)容之后,做一下課后練習(xí)題,以檢驗(yàn)學(xué)習(xí)效果。這些課后習(xí)題答案和本書(shū)涉及的源代碼一起收錄于附贈(zèng)資源中。
3. 行文和結(jié)構(gòu)連貫??采取讀者第一視角的模式來(lái)組織行文邏輯和實(shí)現(xiàn)方案,使得行文和結(jié)構(gòu)更連貫,便于理解。4. 實(shí)際案例解析,注重實(shí)戰(zhàn)演練??以通俗易懂的文字,解釋了自然語(yǔ)言處理技術(shù)的基本原理,對(duì)常見(jiàn)算法架構(gòu)進(jìn)行介紹, 對(duì)本書(shū)的主要內(nèi)容BERT 模型進(jìn)行詳細(xì)的講解,分別從不同的難度等級(jí)展示了兩個(gè)實(shí)戰(zhàn)案例, 將理論和實(shí)踐有機(jī)地結(jié)合在一起。
5. 編程思想及經(jīng)驗(yàn)分享,提升你的編程能力??在案例講解中,融入了編程思想及經(jīng)驗(yàn)的分享。不只是學(xué)習(xí)技術(shù),重要的是在思想上能有所提升,希望讓你在學(xué)習(xí)技術(shù)的同時(shí),潛移默化中,能夠加深對(duì)一些編程思想的認(rèn)識(shí)。
■ 為什么要寫(xiě)這本書(shū)
2020 年的晚秋,當(dāng)出版社編輯聯(lián)絡(luò)到我,問(wèn)我有沒(méi)有興趣寫(xiě)一本自然語(yǔ)言處理方面的書(shū)時(shí),我欣然應(yīng)允。于是選題接洽,經(jīng)過(guò)深思熟慮之后決定選取 BERT 這個(gè)方向。
BERT 的全稱(chēng)是基于變換器的雙向編碼器表示技術(shù),它是一種基于深度學(xué)習(xí)的新型自然語(yǔ)言處理模型。BERT 提出了一種新的預(yù)訓(xùn)練目標(biāo):屏蔽字語(yǔ)言模型(MLM)與從左到右的單向語(yǔ)言模型預(yù)訓(xùn)練不同,MLM 目標(biāo)允許表征融合左右兩側(cè)的語(yǔ)義,從而預(yù)訓(xùn)練一個(gè)深度雙向 Transformer。BERT 一經(jīng)問(wèn)世,便有了不俗的表現(xiàn),在機(jī)器閱讀理解水平測(cè)試中,它在各項(xiàng)衡量指標(biāo)上超越了人類(lèi),還在 11 種不同 NLP 測(cè)試中創(chuàng)出最佳成績(jī)。BERT 為 NLP 帶來(lái)了里程碑式的改變,也是 NLP 領(lǐng)域發(fā)展過(guò)程中一大進(jìn)展。BERT 從誕生到現(xiàn)在,得到了廣泛的應(yīng)用,它在屏蔽詞預(yù)測(cè)、關(guān)鍵詞提取、下一句預(yù)測(cè)等多種自然語(yǔ)言處理任務(wù)中均有不俗的表現(xiàn),因?yàn)?BERT 代表了 NLP 新技術(shù),具有一定的先進(jìn)性,所以我選定它來(lái)作為本書(shū)的主題。
寫(xiě)這本書(shū)的初衷:用簡(jiǎn)單、通俗、易懂的語(yǔ)言對(duì) BERT 相關(guān)的自然語(yǔ)言處理技術(shù)進(jìn)行描述,從原理、架構(gòu)、實(shí)現(xiàn)等多維度解讀BERT 模型,并展示由淺到深不同層面的實(shí)戰(zhàn)案例, 通過(guò)將理論和實(shí)踐相結(jié)合,使讀者能夠在對(duì)模型充分理解的基礎(chǔ)上,運(yùn)用模型解決實(shí)際任務(wù)。
寫(xiě)這本書(shū)的第二個(gè)理由是對(duì)自己30 年工作做一個(gè)適時(shí)的總結(jié)。我是一名電子信息工程師,
在過(guò)去的 30 年工作中,分別在長(zhǎng)城計(jì)算機(jī)軟件與系統(tǒng)公司、大唐微電子、北京吾譯超群科技有限公司擔(dān)任研發(fā)工程師,曾經(jīng)參與過(guò)智能化翻譯教學(xué)系統(tǒng)等項(xiàng)目的研發(fā)工作,在自然語(yǔ)言處理等方面精耕細(xì)作,這次有機(jī)會(huì)來(lái)寫(xiě) BERT,可以對(duì)這一新技術(shù)做一個(gè)系統(tǒng)的梳理和解讀,并呈現(xiàn)給大家,并和大家分享。
如果你下定決心要去干一件事,到底需要幾個(gè)理由?一個(gè)就夠了,接下來(lái),擼起袖子加油干!
■ 本書(shū)有什么特色
1. 本書(shū)行文邏輯清晰,通俗易懂
深度學(xué)習(xí)算法包含很多繁雜的公式,為了便于讀者理解本書(shū)內(nèi)容,提高學(xué)習(xí)效率,本書(shū)重點(diǎn)不是推導(dǎo)理論,而是用通俗淺顯的語(yǔ)言把道理闡明,幫助讀者建立直覺(jué)。用通俗的語(yǔ)言對(duì)復(fù)雜模型進(jìn)行解讀,為讀者在這個(gè)領(lǐng)域的進(jìn)一步深入研究拋磚引玉。
2. 本書(shū)每一章節(jié)均附有課后習(xí)題,以便適時(shí)檢驗(yàn)讀者的學(xué)習(xí)效果,提高學(xué)習(xí)效率
為了便于讀者理解本書(shū)內(nèi)容,提高學(xué)習(xí)效率,專(zhuān)門(mén)在每一章后面附了練習(xí)題,讀者在讀完本章節(jié)內(nèi)容之后,做一下課后練習(xí)題,以檢驗(yàn)學(xué)習(xí)效果。這些課后習(xí)題答案和本書(shū)涉及的源代碼一起收錄于附贈(zèng)資源中。
3. 行文和結(jié)構(gòu)連貫
采取讀者第一視角的模式來(lái)組織行文邏輯和實(shí)現(xiàn)方案,使得行文和結(jié)構(gòu)更連貫,便于理解。
4. 實(shí)際案例解析,注重實(shí)戰(zhàn)演練
以通俗易懂的文字,解釋了自然語(yǔ)言處理技術(shù)的基本原理,對(duì)常見(jiàn)算法架構(gòu)進(jìn)行介紹, 對(duì)本書(shū)的主要內(nèi)容BERT 模型進(jìn)行詳細(xì)的講解,分別從不同的難度等級(jí)展示了兩個(gè)實(shí)戰(zhàn)案例, 將理論和實(shí)踐有機(jī)地結(jié)合在一起。
5. 編程思想及經(jīng)驗(yàn)分享,提升你的編程能力
在案例講解中,融入了編程思想及經(jīng)驗(yàn)的分享。不只是學(xué)習(xí)技術(shù),重要的是在思想上能有所提升,希望讓你在學(xué)習(xí)技術(shù)的同時(shí),潛移默化中,能夠加深對(duì)一些編程思想的認(rèn)識(shí)。
■ 本書(shū)內(nèi)容及知識(shí)體系
第一篇 自然語(yǔ)言處理基礎(chǔ)
本篇由第 1 ~ 3 章內(nèi)容組成,對(duì)自然語(yǔ)言處理技術(shù)、掌握該技術(shù)需要的預(yù)備知識(shí)和文本的表示技術(shù)進(jìn)行了解釋。
第二篇 自然語(yǔ)言處理中的深度學(xué)習(xí)算法
本篇包含第 4 ~ 5 章,第 4 章自然語(yǔ)言處理和深度學(xué)習(xí)介紹了常用的模型 ;第 5 章重點(diǎn)介紹了 BERT 模型。
第三篇 實(shí)戰(zhàn)案例
本篇包含 6 ~ 7 章,分別從由淺到深的不同層面展示了兩個(gè)實(shí)戰(zhàn)案例。第四篇 結(jié)語(yǔ)和展望 (第 8 章)
■ 數(shù)據(jù)資源內(nèi)容介紹
為了方便讀者閱讀本書(shū),本書(shū)附贈(zèng)以下資源。具體如下:
? 本書(shū)實(shí)例的源代碼;
? 本書(shū)課后習(xí)題答案;
? BERT 模型數(shù)據(jù)集。
■ 適合閱讀本書(shū)的讀者
? 自然語(yǔ)言處理初學(xué)者;
? 語(yǔ)言類(lèi)大學(xué)的信息科學(xué)專(zhuān)業(yè)的學(xué)生;
? 立志從事自然語(yǔ)言處理方向研究的學(xué)生;
? 計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的學(xué)生;
? 軟件開(kāi)發(fā)項(xiàng)目經(jīng)理。
■ 閱讀本書(shū)的建議
? 沒(méi)有自然語(yǔ)言處理基礎(chǔ)的讀者,建議從第 1 章按順序閱讀,讀完前四章之后,對(duì)自然語(yǔ)言處理的背景知識(shí)便有了一定了解。在此基礎(chǔ)上,閱讀后續(xù)章節(jié),第 5 章是本書(shū)的重點(diǎn)。有一定自然語(yǔ)言處理基礎(chǔ)的讀者,可以根據(jù)實(shí)際情況,選擇感興趣的章節(jié)進(jìn)行針對(duì)性閱讀。本書(shū)為不同的讀者準(zhǔn)備了兩個(gè)不同層面的實(shí)戰(zhàn)案例,讀者可以根據(jù)自己的實(shí)際情況和認(rèn)知程度,有選擇地閱讀。如果有志從事這一領(lǐng)域的工作或者深入研究,則應(yīng)掌握第 6 ~ 7 章的全部?jī)?nèi)容,如果條件允許,最好實(shí)際動(dòng)手實(shí)現(xiàn)文中案例。在實(shí)際演練過(guò)程中如果遇到任何問(wèn)題,可以按照書(shū)上提供的聯(lián)絡(luò)方式找作者答疑。
?
前 言 III
? 對(duì)于書(shū)中提到的拓展參考資料,建議高水平讀者進(jìn)行拓展。自然語(yǔ)言處理是一個(gè)龐大的知識(shí)體系,本書(shū)涉獵的課題只是冰山一角,想在這一領(lǐng)域深耕細(xì)作的讀者,還需大量閱讀相關(guān)資料。
? 帶著疑問(wèn)去閱讀,不僅是指你閱讀之前要明確解決的問(wèn)題(閱讀目的),而且在閱讀過(guò)程中,也要多反問(wèn)自己:這是最好的實(shí)現(xiàn)方案嗎?是否有其他更簡(jiǎn)便的實(shí)現(xiàn)方式?……通過(guò)不斷自我提問(wèn),你的思維將會(huì)不斷被打開(kāi),也能從中收獲更多。
本書(shū)是作者 30 年寶貴工作經(jīng)驗(yàn)的結(jié)晶,通過(guò)本書(shū),將自然語(yǔ)言處理這一華麗的水晶宮殿呈現(xiàn)給大家,為大家講述宮殿中一顆璀璨的明珠BERT 的前世今生,并指導(dǎo)大家如何將 BERT 這顆明珠鑲嵌成皇冠、項(xiàng)鏈,或是一枚別致的胸針(實(shí)戰(zhàn)示例),為大家在自然語(yǔ)言處理領(lǐng)域進(jìn)一步深耕細(xì)作拋磚引玉。來(lái)吧,讓我們開(kāi)始 BERT 之旅吧!
由于作者水平有限,書(shū)中難免存在一些錯(cuò)誤和疏漏,歡迎讀者發(fā)現(xiàn)問(wèn)題進(jìn)行反饋。
■ 鳴謝
本書(shū)的完成首先感謝生命,感謝給予我生命之源的父母。
其次,感謝中國(guó)鐵道出版社有限公司的編輯,沒(méi)有這些編輯慧眼識(shí)珠,就沒(méi)有此書(shū)對(duì)
BERT 這顆明珠做細(xì)致梳理的機(jī)會(huì),他們?cè)谶x題和全書(shū)架構(gòu)方面提出了許多建設(shè)性的建議, 在寫(xiě)作過(guò)程中給予了許多鼓勵(lì)和支持,此書(shū)得以按時(shí)交稿,得益于他們的大力支持,在此表示衷心的感謝。
在此書(shū)的寫(xiě)作過(guò)程中,盧苗苗老師為第4 章提供了參考資料,清華大學(xué)電子工程系汪致庸
同學(xué)為第 5 章的內(nèi)容提供了參考資料,在此表示衷心感謝。
最后,感謝熱心讀者撥冗垂閱,謝謝你們的熱心閱讀,希望讀完此書(shū)后有所收獲,再一次謝謝大家。