999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于深度哈希的文本表示學習①

2022-06-29 07:49:44郝文寧
計算機系統應用 2022年6期
關鍵詞:語義深度文本

鄒 傲, 郝文寧, 田 媛

(陸軍工程大學 指揮控制工程學院, 南京 210007)

文本數據是信息時代最常見的數據載體形式之一,廣泛存在于各種網頁、書籍、報紙、期刊當中, 對文本數據的挖掘利用一直是學界多年來廣泛關注的研究方向. 不同于一般的數值型數據, 采用機器學習的方法對文本數據進行處理首先需要將文本轉換為計算機可處理的表示形式, 如向量(vector)或張量(tensor), 一個好的表示形式需要盡可能地將原始數據中的語義特征保存在該表示所構成的高維向量空間中. 為不斷提高機器學習系統的準確率, 需要一種算法能夠自動地從輸入樣本中學習出有效的特征, 這種學習方式被稱作表示學習(representation learning).

文本表示學習的意義在于將非結構化的文本數據轉換成計算機可處理的結構化文本數據. 對文本數據的表示學習可追溯到獨熱編碼(one-hot code)為代表的詞袋模型(bag-of-words, BoW), 這種表示方法被稱作局部表示(local representation), 對語義特征的保留較低, 即使再引入詞頻-逆文本頻率(term frequencyinverse document frequency, TF-IDF)等權重因子后仍然只能保留有限的語義特征. 2003 年Bengio 等人的研究[1]中采用了全連接網絡訓練一個語言模型, 這是將深度學習應用于文本數據的首次嘗試, 在十幾年的發展中, 基于深度學習的文本處理方法不斷發展, 并在自然語言處理(natural language processing, NLP)中的各項子任務中都取得了較好效果. 在文本數據的表示學習方面, 基于深度學習的表示方法經歷了從單詞的分布式表示(distributed representation)到基于大規模預訓練語言模型(pre-trained language model, PLM)的單詞上下文表示(contextual representation), 使得模型的表示學習能力取得了顯著提升, 并推動在此基礎上的各種算法在一系列下游任務中不斷取得性能突破.

機器學習算法的性能在很大程度上依賴于數據表示的方法, 一個好的表示學習算法能夠直接影響整個算法的表現, 有關表示學習的研究也逐漸從機器學習中的一個處理步驟逐漸演變為一個獨立的研究方向.

在文本表示學習領域, 隨著最新發布的預訓練模型的參數數量呈指數增長, 基于大規模預訓練深度模型的訓練和使用成本對普通研究者來說越來越難以承受: 一方面, PLM 本身的訓練需要大量語料和較大規模的算力資源作支撐; 另一方面, 即使可以通過現成的PLM 獲得較高質量的文本表示, 由于PLM 的模型規模不斷擴大, 通過PLM 獲得的單詞實向量表示的維度已經達到了1 03的數量級, 依然有較高的算力門檻.

本文的主要工作在于提出了一種基于大規模預訓練語言模型和深度哈希的文本表示學習方法, 以期算法所學習到的語義表示既能夠包含較高質量的語義信息, 且在此基礎上大幅減少其存儲開銷以及在下游任務中的計算開銷. 通過充分的實驗驗證, 本文方法所學習到的文本表示在短文本檢索、語義相似度匹配以及文本釋義等任務中均取得了較好的性能表現, 并相較于以往方法獲得了效率上的提升.

1 相關研究

本文提出的新的文本表示學習方法涉及深度語義挖掘和深度哈希的相關研究. 本部分將對文本語義挖掘和深度哈希的內容做簡要介紹.

近年來, 文本語義挖掘的研究經歷了3 個階段: 神經網絡語言模型、詞向量(詞嵌入) 和預訓練語言模型. 文獻[1]的研究中采用一個由全連接神經網絡組成的模型進行語言模型任務的訓練, 并將詞向量矩陣作為模型訓練的副成果, 這種詞向量表示相較于傳統基于統計的向量空間模型維度更低, 且能夠在高維空間中保留更多的語義信息. 詞向量技術是將文本表示學習直接作為模型的訓練目標, Mikolov 等人所提出的Word2Vec 模型是最早關于詞向量的研究[2–4]. 該模型采用連續詞袋模型(continuous bag-of-words, CBOW)和跳字模型訓練作為詞向量的訓練任務. 之后也出現了許多對詞向量進行改進的研究[5–7], 也有后續工作將詞向量的方法用于更高文本單位的表示學習[8]. 預訓練語言模型的出現是文本表示學習的最新成果, 但其意義又超越了單純的表示學習并成為NLP 領域的第三范式[9], 與深度學習早期的基于單詞嵌入的方法相比,它能夠更充分地挖掘文本中包含的語義信息[4,5,7]. 預訓練語言模型不僅在各種任務的公開數據集(如GLUE[10]、SQuAD[11]和RACE[12])上取得了顯著的結果, 而且在工業上也有許多成熟的落地應用.

根據模型結構和訓練方式, 預訓練語言模型可分為3 種: 以BERT[13]和RoBERTa[14]為代表的自編碼語言模型(autoencoding language model), 以GPT[15]和XLNet[7]為代表的自回歸語言模型(autoregressive language model), 以及以BART[16]和UniLM[17]為代表的端到端模型(sequence-to-sequence language model).

預訓練語言模型強大的語義表示能力主要來源于其內部的Transformer[18]結構. 具體而言, Transformer Encoder 的內部作用主要是多頭注意機制[19], 以及殘差連接結構[20], 一系列研究表明, 該結構能夠比卷積神經網絡捕獲更多語義信息, 并且相較于循環神經網絡具有更快的訓練速度, 并能夠較好地解決以往方法對輸入樣本的長距離依賴不足的問題, 使其成為目前NLP領域中使用最廣泛的特征提取器.

在過去的幾年中, 哈希已經成為解決大規模機器學習問題的一種較常用的方法[21–27]. 概括地來講, 這種方法一般采用人工設計或系統自動學習的哈希函數將數據從高維的分布式表示映射到漢明空間(Hamming space)的二進制表示, 基于二進制碼的表示方法在具體下游任務的訓練和使用中能夠顯著降低數據存儲成本和通信開銷. 緊湊的二進制碼能夠將數據壓縮到更小的存儲空間中, 并依然能夠保留足夠的特征信息用于各種下游任務. 具體來說, 哈希學習的目標在于學習數據樣本的漢明空間表示, 使得哈希碼能夠盡可能地保持數據樣本在原始語義空間中的最近鄰關系, 從而維持其相似性. 因此, 每個數據樣本將由一個緊湊的二進制碼編碼, 并且原始特征空間中相似的兩個點應能夠映射到漢明空間中相似的兩個點.

深度哈希已經在大規模圖像檢索任務中得到了廣泛的應用. 這種基于哈希的檢索方法的基本思想是構造一系列哈希函數, 根據這一組哈希函數將每個文本對象映射到一個二進制的特征向量. 將高維實數特征向量編碼為低維緊致的二進制碼可以顯著加快語義相似度的計算并能節省內存中的存儲空間. 現有的基于哈希的方法分為兩大類: 獨立于數據(data-independent)的和依賴于數據(data-dependent)的. 第一種方法通常使用隨機的映射函數將樣本映射到特征空間, 然后再得到二進制碼, 代表方法是局部敏感哈希(LSH)[28]及其擴展方法歐式局部敏感哈希(E2LSH)[29]等. 第二種方法是數據驅動(data-driven)的, 使用統計學習方法學習哈希函數, 將樣本映射為二進制代碼. 其代表方法是譜哈希(spectral hash)[30]等.

自2014 年以來, 在圖像檢索領域出現了一系列將深度神經網絡與哈希函數相結合的方法[31–34], 被稱為深度哈希. 深度哈希學習的方法同樣是數據驅動的, 相較于傳統機器學習方法所采用的若干個隨機的哈希函數, 該方法在訓練過程中能夠通過深度神經網絡自動地學習生成哈希函數, 并進而獲得每個輸入樣本的唯一哈希表示.

2 基于深度哈希的文本表示學習

在自然語言處理中, 文本的表示學習是非常重要一個步驟, 為了提高機器學習系統在下游任務的準確率, 首先需要將輸入樣本轉換為有效的特征, 或更一般性地稱為表示(representation). 圍繞表示學習的是兩個核心問題: 一是“什么是一個好的表示”; 二是“如何學習到好的表示”.

在傳統機器學習時代, 文本的表示學習更多地被看作是一種特征獲取的步驟, 即通過設計特定的特征工程手段獲得每個輸入文本樣本的表示, 然后再將該表示作為后續解決特定下游任務模型的輸入特征. 這種文本表示學習與模型在特定任務上訓練被割裂成兩部分的狀況一直延續到深度學習的詞向量時代. 無論是詞向量Word2Vec[2–4]、GloVe[5]還是語句向量或是文檔向量等類似的方法[8], 都是先根據特定任務專門訓練出特定文本粒度單元的分布式表示, 再將其應用于具體任務的優化過程, 由于這些表示并不會在訓練中得到更新, 因此也被稱作靜態表示(static representation).這類方法通過設計準則或訓練任務依靠這些準則或任務來從輸入樣本中選取有效的特征, 而特征的學習和最終預測模型的學習是分開進行的, 因此即使學習到的特征質量很高也不一定可以提升最終模型的性能.在本文中, 文本的表示學習與下游任務的優化目標被當作一個整體在訓練中同時進行. 實驗證明, 良好的特征表示可以捕捉輸入樣本的本質結構, 完成輸入文本語義空間到高維向量空間的映射, 并在映射的向量空間中反映輸入之間的語義關系.

在本文的工作中, 我們從自然語言處理領域的3 個子任務: 短文本檢索、文本相似性度量和文本釋義分別探索基于深度哈希的文本表示學習. 初步實驗也驗證了深度哈希方法在文本深度表示中的可行性和有效性.

基于深度哈希的文本表示學習的基本結構如圖1所示, 其核心思想是使用預訓練語言模型作為模型的主干, 并利用其參數來初始化所提出的模型. 然后, 根據特定下游任務的特點, 在模型末尾添加與任務高度相關的哈希學習層和結果輸出層, 從而構建完整的深度哈希模型. 具體來講, 圖1 的模型可以接受單一或者成對語句這兩種輸入方式. 對于單一語句的輸入, 模型首先使用一個堆疊的Transformer Encoder 結構對其進行處理, 對于該步驟的輸出, 池化層提供了3 種池化方式以供選擇: “[CLS]”池化、最大值池化以及均值池化.若輸入為成對語句, 則使用一個孿生堆疊Transformer Encoder 結構對兩個語句分別編碼并輸出. 在池化層之后, 模型由一個全連接層、一個哈希學習層和一個面向具體下游任務訓練的輸出層組成, 全連接層的目的是進一步擴大模型的表示空間, 哈希學習層由一個閾值函數組成, 作用是實現從實向量空間到漢明空間的轉換. 面向下游任務的輸出層將根據具體的訓練任務,如短文本檢索、語義相似度匹配等進行不同優化函數的選擇(均方差或二值交叉熵), 計算結果將用于整個模型的參數更新.

圖1 基于深度哈希的文本表示學習模型總體結構

在對特定下游任務進行微調的過程中, 根據模型輸出和真實數據標簽計算的優化目標可以同時學習和優化模型參數、哈希函數和每個輸入的深度哈希表示.我們期望通過這種學習方法獲取一種高效的文本表示方法, 以便將其應用于各種下游任務, 并期望達到或接近當前最先進水平(state-of-the-art, SOTA)的性能, 盡管其在準確率等指標上的表現可能達不到最優水平,但它在特征表示的空間成本和模型預測的時間成本方面具有較大的優勢, 這也是選擇深度哈希技術的主要原因.

在這項工作中, 使用了Huggingface 提供的開源預訓練語言模型庫Transformers[35]. 該語料庫中的所有模型都經過大規模語料庫的訓練, 具有豐富的語義先驗知識. 以實驗中使用的一個模型RoBERTa base 為例,該模型使用16 GB 的英語語料庫進行10 萬次迭代訓練. 實驗中使用的其他預訓練模型也使用類似級別的數據和訓練進行預訓練.

基于預訓練模型的下游任務應用分為基于特征和微調兩種方法. 基于特征是指使用語言模型的中間結果作為特征提取, 直接引入特定的下游任務作為輸入;微調是根據特定的下游任務修改模型的輸出層, 添加少量與任務相關的參數, 然后在新的下游任務中重新訓練整個模型的方法. 在實驗中, 我們首先嘗試將基于特征的方法應用于下游任務, 使用最后一刻[CLS]標簽輸出的向量表示作為輸入文本的向量表示(我們還使用每個維度上輸出層的最大池和平均池的方法來獲得相應的表示), 然后, 通過設置閾值, 實數字段的向量表示被轉換為散列碼.

下游任務有多種形式的特定輸入. 在短文本檢索、文本語義相似度度量和釋義任務中, 輸入可以分為單個文本和文本對. 對于兩種不同的輸入, 分別采用單網絡和雙網絡的模型結構. 建議的模型如圖1 所示.以單一輸入為例, 假設輸入文本樣本為S=(s(1),s(2),···,s(|S|)), 首先通過輸入端的詞向量映射矩陣和位置向量映射矩陣將其轉化成初始分布式表示X=(x(1),x(2),···,x(len)),len是模型的超參數, 設置輸入樣本的序列長度,若輸入長度超過或小于len, 則通過截斷或填充的方式將其長度限定在len. 其中每個xi(1 ≤i≤len)計算如下:

最終多頭自注意力層的輸出將是所有注意力頭的拼接再經過一個線性轉換層的結果:

最大值池化即對輸出的文本表示矩陣Z∈Rlen×dmdl按列依次選取最大值, 即對輸出的表示空間的每一維都在輸出值中選取最大值:

至此, 我們可以獲得每個輸入的文本樣本S在經過預訓練語言模型后的初步表示z. 在哈希層,z將與下游任務特定訓練目標的優化過程中實現從實向量空間到漢明空間的映射, 具體細節將在下一節中對各個任務進行分別實現時闡明.

3 實驗設計與結果分析

實驗選取了NLP 領域的短文本檢索、語義相似度匹配以及文本釋義3 個子任務進行實驗, 并在所有的這些任務上都分別進行了中文語料數據集和英文語料數據集的實驗, 從而證明本文所提出的方法具有較強的普適性.

3.1 短文本檢索

在本任務中采用MRPC[36]數據集和GLUE[9]中的STS-B 數據集作為實驗的英文數據源. 這兩個數據集屬于自然語言理解領域, 屬于文本相似性任務, 不能直接用于本實驗. 因此, 我們需要對數據集進行預處理以適應這個實驗. MRPC 數據集本身是一個句子級的相似性匹配問題, 其中輸入是一個句子對, 輸出是一個標簽, 用來標記兩個輸入句子是否相似. 對該數據集進行修改的方法如下: 在訓練集和驗證集中, 分別集成判斷為“1” (即相似)的句子對和判斷為“0” (不相似)的句子對. 類似地, 在STS-B 數據集中被判斷為“5” (相似)和“0” (不相似)的句子對可以分別被集成. 經過上述預處理, 共獲得5173 條數據. 在實驗中, 我們按照80%、10%和10%的比例將數據集分為訓練集、驗證集和測試集. 在實驗中, 深度哈希模型采用了圖1 中設計的架構, 模型在短文本檢索任務中的結構如圖2 所示. 在進行訓練后, 對于任意短文本的輸入, 模型能夠輸出其對應的唯一哈希表示. 將查詢文本的哈希碼與全部帶檢索文本的哈希碼進行漢明距離的比較, 選取與其漢明距離最近的K個文本組成top-K 被檢索文本集并輸出.

圖2 基于深度哈希表示的短文本檢索流程

除在英文數據集上進行實驗外, 本部分還使用CLUE[37]中文數據集中的AFQMC 數據集進行了補充實驗. 從格式上來看, AFQMC 的數據形式與MRPC 數據集類似, 因此我們采用與MRPC 相同的預處理方式進行處理, 并按照該數據集原本的劃分將其分為訓練集(包含34334 個樣本)、驗證集(包含4316 個樣本)和測試集(包含3861 個樣本).

在訓練過程中, 采用成對輸入相似度比較的方式進行間接訓練, 假設一個訓練樣本包含的兩個文本輸入分別為S1和S2, 經過預訓練語言模型層所獲得的初步表示為z1和z2, 標簽為label∈{0,1}, 則優化目標可表示如下:

3.2 語義相似度匹配

在文本語義相似性匹配任務中, 我們使用GLUE中的STS-B 數據集, 該數據集是從新聞標題、視頻標題、圖像標題和自然語言推理數據中提取的句子對的集合. 每個句子對都由人工標注, 其相似度得分為0–5.任務的目標是預測輸入句子對的相似度得分. 樣本數量如下: 序列集5749、驗證集1379、測試集1377.

如第2 節所述, 文本相似性任務的輸入是語句對,利用均方誤差損失(mean square error loss, MSELoss)目標函數優化模型參數, 從而可以同時學習顯式的模型參數和隱式的哈希函數, 并進而根據隱式的哈希函數間接地獲得每個輸入樣本的哈希表示. 第一種映射函數類似于所有傳統的深度神經網絡模型, 能夠將輸入文本從語義空間映射到高維實向量空間, 具有很強的相似性保持能力; 第二個映射函數是該模型所特有的, 它可以將輸入從高維實向量空間映射到漢明空間.因此, 我們可以獲得一個自學習哈希函數和對應于每個輸入的唯一哈希代碼表示. 使用此哈希代碼, 我們可以更有效地完成文本相似性任務.

在語義相似度任務中, 訓練中的優化目標采用類似于3.1 節中的均方差損失, 哈希層的機制參照式(7)的規則計算.

3.3 文本釋義

在文本釋義任務中, 本實驗使用了GLUE 的MRPC數據集. 根據慣例, 樣本數量如下: 序列集3668、驗證集408、測試集1725. 發布該數據集的目的是鼓勵在與釋義和句子同義詞及推理相關的領域進行研究, 并幫助建立一個關于正確構建訓練和評估用釋義語料庫的論述.

同樣地, 除英文數據集外, 本部分也采用了中文數據集AFQMC 進行補充實驗, AFQMC 是與MRPC 相同的子任務, 在數據格式完全一樣, 只不過數據集全部采用中文語料.

盡管文本語義相似性任務和文本相似性任務都涉及到文本語義相似性, 但文本短語的輸出是一個二元結果, 即“是” (用1 表示)或“非” (用0 表示). 因此, 在任務的微調中, 我們不使用mselo, 而是使用二進制交叉項的目標函數來優化模型參數, 隱式地研究了hash 函數和相應的輸入hash 碼. 類似地, 與短文本檢索和文本相似性一樣, 模型輸出的哈希碼之間的漢明距離也用于測試集中, 以獲得模型的最終判斷輸出.

3.4 實驗結果與分析

如上所述, 我們希望在每個下游任務中使用哈希代碼來提高模型的效率. 根據前3 部分描述的方法, 我們對3 個任務的數據集進行了實驗. 實驗中使用的超參數設置如表1 所示.

表1 實驗中采用的主要超參數

具體的實驗結果如表2 所示. 從表中可以看出, 本文在短文本檢索、語義相似度匹配以及文本釋義3 種子任務的5 個數據集上進行了充分實驗, 其中短文本檢索選取top-5 結果的準確率作為評測指標, 語義相似度匹配選取相似度得分作為評測指標, 文本釋義任務選取準確率作為評測指標. 除這些指標以外, 本文還對不同種類方法在預測階段的時間進行了比較. 實驗結果表明, 首先, 盡管微調方法需要對下游任務數據集進行額外的訓練, 但它在性能上比基于特征的方法要好得多. 重要的是, 與動態上下文詞嵌入方法相比, 文本表示學習的深度哈希方法在準確性和其他指標上有大約3%–5%的性能損失, 但空間成本和時間成本大大降低, 直接提升了模型在下游任務預測階段的處理效率.這在涉及大規模語義表示學習(如文本檢索)的任務中尤其重要.

表2 基于深度哈希的文本表示學習在3 個子任務上的實驗結果

4 結論與展望

本文探究了深度哈希技術在自然語言處理領域的一些應用場景. 其主要思想是使用深度哈希技術進行文本表示學習. 與傳統的用高維實向量嵌入文本的深度學習方法不同, 本文設計了一種特定的深度神經網絡模型. 在傳統的深度神經網絡模型的基礎上, 增加了針對不同下游任務的哈希學習層和輸出層. 最后, 可以通過訓練學習每個輸入樣本對應的唯一哈希表示. 實驗結果表明, 只要適當設計模型結構和訓練過程, 可以在盡可能少的語義信息損失的情況下, 顯著降低存儲空間開銷和計算時間開銷, 從而極大地提高相關任務的處理效率.

猜你喜歡
語義深度文本
深度理解一元一次方程
語言與語義
在808DA上文本顯示的改善
深度觀察
深度觀察
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
深度觀察
“上”與“下”語義的不對稱性及其認知闡釋
現代語文(2016年21期)2016-05-25 13:13:44
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
認知范疇模糊與語義模糊
主站蜘蛛池模板: 日本一区中文字幕最新在线| 久久婷婷五月综合色一区二区| 精品成人一区二区三区电影| 98精品全国免费观看视频| 国产精品亚洲专区一区| 欧美色伊人| 欧美日韩精品一区二区在线线 | 国产麻豆aⅴ精品无码| 日韩av电影一区二区三区四区 | 久久情精品国产品免费| 亚洲视频在线青青| 国产在线精品人成导航| 欧美第一页在线| 区国产精品搜索视频| 国产99视频精品免费观看9e| 老司国产精品视频91| 婷婷亚洲天堂| 亚洲成年网站在线观看| 2021国产乱人伦在线播放| 91久久国产综合精品女同我| 日韩一区二区三免费高清| 亚洲开心婷婷中文字幕| 无码有码中文字幕| 国产精品国产三级国产专业不| 日韩一区二区三免费高清 | 中文字幕无码电影| 亚洲精品视频免费| 亚洲欧美日韩成人高清在线一区| 久久精品亚洲中文字幕乱码| 午夜色综合| 亚洲精品成人7777在线观看| 国内毛片视频| 99精品久久精品| 欧美国产日韩另类| 丰满的少妇人妻无码区| 在线观看欧美精品二区| 欧美中文字幕在线视频| 综合社区亚洲熟妇p| 萌白酱国产一区二区| 国产成人精彩在线视频50| 国产玖玖玖精品视频| 国产成人精品一区二区| 99热这里只有精品久久免费| 欧美a在线看| 日韩精品一区二区三区视频免费看| 青草精品视频| 国产综合精品一区二区| 亚洲成人一区在线| 99re视频在线| 日韩午夜片| 小说区 亚洲 自拍 另类| 色婷婷综合在线| 久久免费成人| 手机在线免费不卡一区二| 男女男免费视频网站国产| 日韩AV手机在线观看蜜芽| 国产在线观看一区二区三区| 久久精品aⅴ无码中文字幕| 午夜视频www| 欧美激情视频一区| 在线观看国产黄色| 国产高清色视频免费看的网址| 日韩123欧美字幕| 色窝窝免费一区二区三区| 国产成人高清亚洲一区久久| a级毛片网| 欧美日韩精品一区二区视频| 强奷白丝美女在线观看| 99re热精品视频中文字幕不卡| 婷婷色婷婷| 久久男人视频| 91尤物国产尤物福利在线| 精品视频在线观看你懂的一区| 在线va视频| 国产欧美精品一区二区| 国产精品冒白浆免费视频| 狂欢视频在线观看不卡| 欧洲一区二区三区无码| 99热国产在线精品99| 国产特一级毛片| 国产精品免费p区| 免费无码又爽又黄又刺激网站|