文本信息檢索(IR)系統側重于檢索能夠滿足用戶信息需求的文本文檔,通常以文本查詢的形式表示。多年來,這種固有的模糊描述已經形式化,并以文檔、信息需求和用戶的特定性質為特征。形式化的核心在于文檔相對于查詢的相關性概念,以及如何估計它們的相關性。多年來,已經提出了許多不同的排序模型來估計文檔響應查詢的相關性。這些模型依賴于查詢和文檔提供的信息,這些信息被用來派生“相關性信號”。多年來開發了許多排名模型,從布爾模型到概率和統計語言模型。這些“單詞包”模型利用文檔中查詢詞的存在或出現次數來推斷它們與查詢的相關性,并利用手工制作的函數來組合這些出現的查詢,比如BM25。隨著Web和社交平臺的興起,越來越多的與文檔相關的信息來源被識別出來。機器學習方法已被證明能有效地處理這種豐富的關聯信號,并將其應用于根據相關度估計對文檔進行排序,從而產生了許多學習-排序(LTR)模型。關聯信號是LTR模型的輸入特征,通常是手工設計的,這是一個耗時的過程。由于神經網絡在許多計算機視覺和自然語言處理任務上的突破,它們代表了當前最先進的方法來對文檔和查詢相關度進行排序**。神經信息檢索主要是利用深度神經網絡檢索能夠滿足用戶信息需求的文本文檔。在神經IR中,神經網絡通常以兩種不同的方式使用:學習結合相關信號的排序函數以產生文檔排序,以及學習文檔和查詢的抽象表示以捕獲它們的相關性信息**。在接下來的文章中,我們將介紹神經IR的最新方法。由于該領域的研究正在迅速發展,我們不會涵蓋神經IR的每一個方面,而是對該領域的主要思想和現有系統提供原則性的介紹。如果可以,我們會提供相關和更詳細的調查鏈接。
下面是關于這部分內容的快速概述。第1節提供了在IR中采用的不同文本表示的簡短描述,從經典的一熱編碼到學習-排序特征到單詞嵌入。第2節介紹了用于計算查詢和文檔對的聯合表示以進行相關性排名的主要神經體系結構。第3節關注專門為學習查詢和文檔文本的抽象復雜表示而定制的神經體系結構。第4節概述了神經IR系統中采用的部署方案,以及支持精確和近似最近鄰搜索的最常見的密集檢索索引。第5節討論了學習稀疏檢索中的當前方法,處理了對文檔的低維表示的學習,這些文檔可以存儲在倒索引或類似的數據結構中。最后,第6節作結束語。
信息檢索的核心是從大規模資源中識別出相關信息,并以排序列表的形式返回,以響應用戶的信息需求。近年來,隨著深度學習的興起,這一領域得到了極大的發展,神經信息檢索(NeuIR)成為一個熱門話題,尤其是預訓練方法范式(PTMs)。預訓練模型具有復雜的預訓練目標和龐大的模型規模,可以從海量文本數據中學習通用語言表示,這有利于IR的排序任務。由于已經有大量的工作致力于PTMs在IR中的應用,我們認為現在是總結現狀,學習現有方法,并獲得一些對未來發展的見解的時候了。本文綜述了信息檢索系統中檢索分量、重排序分量和其他分量的PTMs應用情況。此外,我們還介紹了專門為IR設計的PTMs,并總結了可用的數據集和基準排行榜。此外,我們討論了一些開放的挑戰和展望了一些有前途的方向,希望為未來的研究激發更多關于這些主題的工作。
導論
信息檢索(IR)是許多實際應用中的一項基本任務,例如數字圖書館、Web搜索、問題回答系統等等。信息檢索的核心是從大量的信息收集中識別出與用戶信息需求相關的信息資源(如查詢或問題)。由于可能有各種相關資源,返回的結果通常是根據文檔與信息需求的相關性程度排列的文檔列表。這種排序特性使其不同于其他任務,研究人員已經投入了大量的精力來開發各種IR排序模型。
在過去的幾十年中,人們提出并研究了許多不同的排序模型,包括向量空間模型(Salton et al., 1975),概率模型(Robertson and Jones, 1976b),以及學習排序(LTR)模型(Li, 2011)。這些方法已經成功地應用于許多不同的IR應用中,例如谷歌這樣的網絡搜索引擎,今日頭條這樣的新聞推薦系統,Quora這樣的社區問答平臺等等。近年來,各種各樣的神經排序模型被提出,促使了一個名為NeuIR(即神經信息檢索)的熱門話題。與以往依賴手工構造特征和統計方法的非神經模型不同,神經排序模型可以自動從數據中學習低維連續向量(即潛在表示)作為排序特征,從而避免了復雜的特征工程。盡管神經模型在IR中取得了成功,但一個主要的性能瓶頸在于大規模、高質量和標記的數據集的可用性,因為深度神經模型通常有大量的參數需要學習。
近年來,預訓練方法(PTMs)帶來了一場風暴,并推動了自然語言處理(NLP)的范式轉變(Qiu et al., 2020)。其思想是首先通過自監督訓練目標在大規模語料庫中對模型進行預訓練,然后對預訓練模型進行微調,以實現最先進的性能。正如最近的工作所證明的那樣(Peters等人,2018b;Howard和Ruder, 2018),這些預先訓練的模型能夠捕獲相當數量的詞匯知識和事實知識,這對下游任務是有益的,可以避免從頭學習這些知識。此外,隨著計算能力的增加和Transformer架構的出現(Vaswani et al., 2017),我們可以進一步將預訓練模型的參數規模從百萬級提升到十億級(例如BERT (Devlin et al., 2018)和GPT-3 (Brown et al., 2020b)),甚至萬億級(例如,SwitchTransformers (Fedus et al ., 2021))。這兩個特性都是在IR中對模型進行排序所需要的特性。目前,預訓練的模型在具有自監督建模目標的大型文本語料庫上進行預訓練,能夠更好地理解查詢和文檔語義背后的意圖。另一方面,具有深度堆疊變換器的大規模預訓練模型具有足夠的建模能力來學習查詢和文檔之間的復雜關聯模式。由于這些潛在的好處,加上預期在IR中使用PTMs也可以取得類似的成功,我們已經見證了在IR中利用PTMs 的研究興趣的爆炸性增長(Croft et al., 2009; Manning et al., 2005)。注意,在這個綜述中,我們關注的是文本檢索中的PTMs,這是IR的核心。對基于內容的圖像檢索(Dubey, 2020)或多模態檢索中PTMs感興趣的讀者可以參考(Fei et al., 2021)。
到目前為止,已有大量的研究致力于PTMs在IR中的應用。在學術上,研究者對PTMs在IR中的應用進行了各種創新和創新。例如,早期的嘗試試圖將從預訓練模型中學習到的知識直接遷移到排序模型中,并取得了一些顯著的成果(Nogueira and Cho, 2019; Dai and Callan, 2019b)。更近期的工作提出通過改變模型架構來推廣現有的預訓練模型(MacAvaney et al., 2020; Khattab and Zaharia, 2020; Gao and Callan, 2021a)或考慮新的預訓練目標(Chang et al., 2019; Ma et al., 2021b; Ma et al., 2021c),較好地滿足IR的要求。與此同時,在行業中,谷歌2019年10月的博客文章和Bing 2019年11月的博客文章都表明,預訓練的排序模型(例如,基于BERT的模型)可以更好地理解查詢意圖,并在實際的搜索系統中提供更有用的結果。此外,看看今天的排行榜,我們可以看到,大多數排名靠前的方法都是基于PTMs構建的,只要看看這些提交的名稱。考慮到在IR中關于PTMs的研究越來越多,我們認為現在是時候調查現狀,學習現有方法,并為未來的發展獲得一些見解。
本次綜述的結構安排如下。我們將首先在第2節提供IR的系統概述。在此之后,我們在第3至5節中分別回顧了應用于檢索組件、重新排序組件和其他組件的PTMs的工作。第六部分,我們介紹了為IR量身定做的新型PTMs的設計工作。我們還在第7部分總結了可用的大型數據集和流行的基準排行榜。最后,我們在第8節對本文進行了總結,并提出了一些未來研究的方向。
這本書通過探索計算機科學理論和機器學習雙方可以相互傳授的內容,將理論和機器學習聯系起來。它強調了對靈活、易于操作的模型的需求,這些模型更好地捕捉使機器學習變得容易的東西,而不是讓機器學習變得困難的東西。
理論計算機科學家將被介紹到機器學習的重要模型和該領域的主要問題。機器學習研究人員將以一種可訪問的格式介紹前沿研究,并熟悉現代算法工具包,包括矩法、張量分解和凸規劃松弛。
超越最壞情況分析的處理方法是建立對實踐中使用的方法的嚴格理解,并促進發現令人興奮的、解決長期存在的重要問題的新方法。
在這本書中,我們將涵蓋以下主題:
(a)非負矩陣分解
(b)主題建模
(c)張量分解
(d)稀疏恢復
(e)稀疏編碼
(f)學習混合模型
(g)矩陣補全
圖是連接數據網絡結構的一種常用表示形式。圖數據可以在廣泛的應用領域中找到,如社會系統、生態系統、生物網絡、知識圖譜和信息系統。隨著人工智能技術的不斷滲透發展,圖學習(即對圖進行機器學習)越來越受到研究者和實踐者的關注。圖學習對許多任務都非常有效,如分類,鏈接預測和匹配。圖學習方法通常是利用機器學習算法提取圖的相關特征。在這個綜述中,我們提出了一個關于圖學習最全面的概述。特別關注四類現有的圖學習方法,包括圖信號處理、矩陣分解、隨機游走和深度學習。分別回顧了這些類別下的主要模型和算法。我們研究了諸如文本、圖像、科學、知識圖譜和組合優化等領域的圖學習應用。此外,我們還討論了該領域幾個有前景的研究方向。
真實的智能系統通常依賴于機器學習算法處理各種類型的數據。盡管圖數據無處不在,但由于其固有的復雜性,給機器學習帶來了前所未有的挑戰。與文本、音頻和圖像不同,圖數據嵌入在一個不規則的領域,使得現有機器學習算法的一些基本操作不適用。許多圖學習模型和算法已經被開發出來解決這些挑戰。本文系統地綜述了目前最先進的圖學習方法及其潛在的應用。這篇論文有多種用途。首先,它作為不同領域(如社會計算、信息檢索、計算機視覺、生物信息學、經濟學和電子商務)的研究人員和從業者提供圖學習的快速參考。其次,它提供了對該領域的開放研究領域的見解。第三,它的目的是激發新的研究思路和更多的興趣在圖學習。
圖,又稱網絡,可以從現實世界中豐富的實體之間的各種關系中提取。一些常見的圖表已經被廣泛用于表達不同的關系,如社會網絡、生物網絡、專利網絡、交通網絡、引文網絡和通信網絡[1]-[3]。圖通常由兩個集合定義,即頂點集和邊集。頂點表示圖形中的實體,而邊表示這些實體之間的關系。由于圖學習在數據挖掘、知識發現等領域的廣泛應用,引起了人們的廣泛關注。由于圖利用了頂點[4],[5]之間的本質和相關關系,在捕獲復雜關系方面,圖學習方法變得越來越流行。例如,在微博網絡中,通過檢測信息級聯,可以跟蹤謠言的傳播軌跡。在生物網絡中,通過推測蛋白質的相互作用可以發現治療疑難疾病的新方法。在交通網絡中,通過分析不同時間戳[6]的共現現象,可以預測人類的移動模式。對這些網絡的有效分析很大程度上取決于網絡的表示方式。
一般來說,圖學習是指對圖進行機器學習。圖學習方法將圖的特征映射到嵌入空間中具有相同維數的特征向量。圖學習模型或算法直接將圖數據轉換為圖學習體系結構的輸出,而不將圖投影到低維空間。由于深度學習技術可以將圖數據編碼并表示為向量,所以大多數圖學習方法都是基于或從深度學習技術推廣而來的。圖學習的輸出向量在連續空間中。圖學習的目標是提取圖的期望特征。因此,圖的表示可以很容易地用于下游任務,如節點分類和鏈接預測,而無需顯式的嵌入過程。因此,圖學習是一種更強大、更有意義的圖分析技術。
在這篇綜述論文中,我們試圖以全面的方式檢驗圖機器學習方法。如圖1所示,我們關注現有以下四類方法:基于圖信號處理(GSP)的方法、基于矩陣分解的方法、基于隨機游走的方法和基于深度學習的方法。大致來說,GSP處理圖的采樣和恢復,并從數據中學習拓撲結構。矩陣分解可分為圖拉普拉斯矩陣分解和頂點接近矩陣分解。基于隨機游動的方法包括基于結構的隨機游動、基于結構和節點信息的隨機游動、異構網絡中的隨機游動和時變網絡中的隨機游動。基于深度學習的方法包括圖卷積網絡、圖注意力網絡、圖自編碼器、圖生成網絡和圖時空網絡。基本上,這些方法/技術的模型架構是不同的。本文對目前最先進的圖學習技術進行了廣泛的回顧。
傳統上,研究人員采用鄰接矩陣來表示一個圖,它只能捕捉相鄰兩個頂點之間的關系。然而,許多復雜和不規則的結構不能被這種簡單的表示捕獲。當我們分析大規模網絡時,傳統的方法在計算上是昂貴的,并且很難在現實應用中實現。因此,有效地表示這些網絡是解決[4]的首要問題。近年來提出的網絡表示學習(NRL)可以學習低維表示[7]-[9]的網絡頂點潛在特征。當新的表示被學習后,可以使用以前的機器學習方法來分析圖數據,并發現數據中隱藏的關系。
當復雜網絡被嵌入到一個潛在的、低維的空間中時,結構信息和頂點屬性可以被保留[4]。因此,網絡的頂點可以用低維向量表示。在以往的機器學習方法中,這些向量可以看作是輸入的特征。圖學習方法為新的表示空間中的圖分析鋪平了道路,許多圖分析任務,如鏈接預測、推薦和分類,都可以有效地解決[10],[11]。網絡的圖形化表現方式揭示了社會生活的各個方面,如交流模式、社區結構和信息擴散[12],[13]。根據頂點、邊和子圖的屬性,可以將圖學習任務分為基于頂點、基于邊和基于子圖三類。圖中頂點之間的關系可以用于分類、風險識別、聚類和社區檢測[14]。通過判斷圖中兩個頂點之間的邊的存在,我們可以進行推薦和知識推理。基于子圖[15]的分類,該圖可用于聚合物分類、三維可視化分類等。對于GSP,設計合適的圖形采樣方法以保持原始圖形的特征,從而有效地恢復原始圖形[16]具有重要意義。在存在不完整數據[17]的情況下,可以使用圖恢復方法構造原始圖。然后利用圖學習從圖數據中學習拓撲結構。綜上所述,利用圖學習可以解決傳統的圖分析方法[18]難以解決的以下挑戰。
在過去的二十年里,機器學習已經成為信息技術的支柱之一,并因此成為我們生活中相當核心(盡管通常是隱藏的)的一部分。隨著可用數據量的不斷增加,我們有充分的理由相信,智能數據分析將變得更加普遍,成為技術進步的必要因素。本章的目的是為讀者提供一個廣泛的應用的概述,這些應用的核心是一個機器學習問題,并給這一大堆問題帶來一定程度的秩序。在那之后,我們將討論一些來自統計和概率論的基本工具,因為它們構成了許多機器學習問題必須被表述成易于解決的語言。最后,我們將概述一套相當基本但有效的算法來解決一個重要的問題,即分類。更復雜的工具,更普遍的問題的討論和詳細的分析將在本書后面的部分。
由沃德(Brian Ward)著,姜南、袁志鵬譯的《精通Linux(第2版)》講解了Linux操作系統的工作機制以及運行Linux系統所需的常用工具和命令。根據系統啟動的大體順序,本書更深入地介紹從設備管理到網絡配置的各個部分,最后演示了系統各部分的運行方式,并介紹了一些基本技巧和開發人員常用的工具。
Linux不像其他操作,會對用戶隱藏很多重要的東西。相反,Linux會讓用戶掌控一切。而要掌控一切,就必須理解這個操作系統的工作機制,包括如何啟動、如何連網,以及Linux內核如何工作。本書是暢銷書的新版本,作者擁有多年的實踐經驗,內容通俗易懂。通過這本書,讀者可以迅速從Linux新手變成老鳥,把作者豐富的經驗裝進自己的知識庫。
<章節目錄>
第1章概述 第2章基礎命令和目錄結構 第3章設備管理 第4章硬盤和文件系統 第5章Linux內核的啟動 第6章用戶空間的啟動 第7章系統配置:日志、系統時間、批處理任務和用戶 第8章進程與資源利用詳解 第9章網絡與配置 第10章網絡應用與服務 第11章shell腳本 第12章在網絡上傳輸文件 第13章用戶環境 第14章Linux桌面概覽 第15章開發工具 第16章從C代碼編譯出軟件 第17章在基礎上搭建
自然語言處理(NLP)為解決人工智能方面的問題提供了無限的機會,使Amazon Alexa和谷歌翻譯等產品成為可能。如果您是NLP和深度學習的新手,那么本實用指南將向您展示如何使用PyTorch(一個基于python的深度學習庫)應用這些方法。
作者Delip Rao和Brian McMahon為您提供了關于NLP和深度學習算法的堅實基礎,并演示了如何使用PyTorch構建應用程序,其中包含針對您所面臨問題的文本的豐富表示。每一章包括幾個代碼示例和插圖。
//www.oreilly.com/library/view/natural-language-processing/9781491978221/
摘要
基于神經網絡的生成式模型的最新進展重新燃起了計算機系統能夠與人類無縫對話并能夠理解自然語言的希望。神經結構被用于生成文本摘錄,在滿足不同用戶需求的多種上下文和任務中取得了不同程度的成功。值得注意的是,在大規模數據集上訓練的高容量深度學習模型顯示出無與倫比的能力,即使在缺乏明確的監督信號的情況下,也能在數據中學習模式,這為生成現實和連貫的文本提供了大量新的可能性。雖然自然語言生成領域正在迅速發展,但仍有許多開放的挑戰需要解決。在這篇綜述中,我們正式地定義和分類自然語言生成的問題。我們回顧了這些通用公式的實例化的特定應用程序任務,在這些任務中生成自然語言是非常重要的。接下來,我們涵蓋了用于生成不同文本的方法和神經存檔的全面的總結。然而,這些生成式模型產生的文本質量并沒有一個標準的評價方法,這是該領域發展的一個嚴重瓶頸。為此,我們還回顧了當前評估自然語言生成系統的方法。我們希望這篇綜述將提供一個公式,方法,和神經自然語言生成的評估信息概述。
介紹
最近在深層生成式模型和表征學習方面的成功導致了自然語言生成(NLG)方面的重大進展,其動機是越來越需要理解和派生語言的意義。文本生成的研究領域是自然語言處理的基礎,其目標是生成真實可信的文本內容,與人類書寫的文本沒有區別 (Turing, 1950)。從廣義上講,在給定語境下,預測連續詞在句法和語義上的正確順序需要兩個步驟:首先從給定語料庫中估計句子的分布情況,然后從已學習得到的語料中抽取新穎和真實的句子。理想情況下,生成的句子保留了真實世界句子的語義和句法屬性,并且不同于用于估計模型的訓練示例(Zhang et al., 2017b)。語言生成是一項內在復雜的任務,需要大量的語法、語義、形態、音韻、語用等多層次的語言學和領域知識。此外,文本生成是為了實現一個交流目標(Reiter, 2019),例如在決策過程中提供支持、總結內容、在語言之間進行翻譯、與人交談、使特定文本更容易理解,以及娛樂用戶或鼓勵他們改變行為。因此,生成的文本應該根據內容和使用的術語的適當性,以及出于公平和透明度的原因(Mayfield et al., 2019),針對特定受眾量身定制(Paris, 2015)。長期以來,自然語言生成模型都是基于規則的,或者依賴于在稀疏的高維特征上訓練淺層模型。隨著最近神經網絡的復蘇,基于密集向量表示訓練的文本生成神經網絡模型已經建立了無與倫比的先前表現,重新點燃了機器能夠理解語言并與人類無縫對話的希望。事實上,生成有意義和連貫的文本是許多自然語言處理任務的關鍵。然而,由于文本數據的離散性,設計能夠生成連貫文本并建立長期依賴關系模型的神經網絡一直是自然語言生成的挑戰。除此之外,神經網絡模型理解語言和基礎文本概念的能力,除了從數據中提取淺層的模式,仍然是有限的。最后,自然語言生成模型的評價是一個同樣活躍和具有挑戰性的研究領域,對推動該領域的發展具有重要意義。
這本教科書通過提供實用的建議,使用直接的例子,并提供相關應用的引人入勝的討論,以一種容易理解的方式介紹了基本的機器學習概念。主要的主題包括貝葉斯分類器,最近鄰分類器,線性和多項式分類器,決策樹,神經網絡,和支持向量機。后面的章節展示了如何通過“推進”的方式結合這些簡單的工具,如何在更復雜的領域中利用它們,以及如何處理各種高級的實際問題。有一章專門介紹流行的遺傳算法。
這個修訂的版本包含關于工業中機器學習的實用應用的關鍵主題的三個全新的章節。這些章節研究了多標簽域,無監督學習和它在深度學習中的使用,以及歸納邏輯編程的邏輯方法。許多章節已經被擴展,并且材料的呈現已經被增強。這本書包含了許多新的練習,許多解決的例子,深入的實驗,和獨立工作的計算機作業。
//link.springer.com/book/10.1007/978-3-319-63913-0#about