您當前的位置:首頁 > 舞蹈

用於文字生成任務的無須任何增強資料的資料增強方法

作者:由 世界很大然並卵 發表于 舞蹈時間:2021-07-06

論文標題:Data Augmentation for Text Generation Without Any Augmented Data

論文來源:ACL2021

論文連結:

https://

arxiv。org/pdf/2105。1365

0。pdf

Abstract

資料增強是一種提高許多神經文字生成模型表現的有效方式。然而,現在許多資料增強方法都需要去定義或者選擇合適的資料對映函式以將原始的樣本對映為增強的樣本。在本文的工作中,作者推匯出一個目標來解決文字生成任務上的資料增強問題,而無需使用由特定對映函式構建的增強資料。作者提出的目標可以有效地被最佳化,並應用於具有收斂率保證的文字生成任務上的損失函式。在兩個文字生成任務上的五個資料集上的實驗證明了作者方法的有效性。

Introduction

資料增強是一種創造額外樣本的有效技術,透過擾動樣本但並不改變它們的標籤。對於文字分類任務來說,有許多中資料擾動的方式以構建增強樣本,包括擾動輸入樣本、輸出樣本、或者兩者一起等等。文字分類任務可以看作是文字生成任務的特例,本文主要探討的是文字生成任務。

之前關於資料增強技術的研究大多停留在如何設計合適的增強技術以創造增強樣本。例如,不同的替換操作,使用預訓練掩蓋模型,又或者透過回譯(back-translation)的方式。但是對於一些生成任務而言,通常的增強技術並不能提供穩定的提升,而且這種方式需要面向任務設計特定的增強樣例,對映函式也需要實現定義好。因此作者思考是否能夠跳過選擇對映函式這一步驟,而進行有效的資料增強。

作者想要不使用增強的樣本來進行資料增強。作者從傳統的資料增強目標開始,它是與原始樣本和增強樣本相關的損失函式的加權組合。作者發現,如果在句子表示之間應用簡單的歐幾里德損失函式,則可以透過不依賴於增強資料對映函式的變數,重新引數化增強樣本的損失部分。基於這一觀察,作者建議直接定義引數化變數的分佈,然後優化了對這個分佈的增強損失部分的期望,以近似使用各種對映函式增強資料計算得到的原始增強損失部分。作者關於變數分佈做了很多不同的假設,並發現建議的目標可以被計算而且使用簡單的梯度計算就能被有效的最佳化。如果使用SGD作為最佳化方法,那麼收斂速度可以為

O(1/\sqrt{T})

;作者的目標可以與文字生成任務中流行的損失函式相結合,包括詞移距離和交叉熵損失。

作者提出的方法利用所提出的目標並透過 SGD 對其進行最佳化,有兩個優點。首先,它提供了通用文字生成模型中各種資料擾動型別的統一公式,這有助於理解資料增強的工作機制。其次,這種方法的最佳化簡單而有效。在訓練期間不引入任何新樣本,我們可以避免對增強樣本進行額外的計算工作,通常總大小遠大於原始資料大小。因此,我們的方法保持了較高的訓練效率。

大量實驗驗證了作者方法的有效性。作者主要使用基於 LSTM 的網路結構,並在兩個文字生成任務上進行實驗——神經機器翻譯和單輪對話響應生成。五個資料集的結果表明,所提出的方法可以近似甚至超越流行的資料增強方法,例如掩碼語言模型和反向翻譯。

Background

首先給定輸入樣本

D=\{(x,y)\}

,其中

x,y

都是文字序列。我們要訓練一個模型學習一個對映函式

f_{x,y}

給定輸入

x

獲得輸出

y

;對於資料增強,主要有三種形式:

透過一個對映函式

\phi_{\hat{x}}

擾動輸入文字

\hat{x}

透過一個對映函式

\phi_{\hat{y}}

擾動輸出文字

\hat{y}

透過對映函式擾動

(\hat{x},\hat{y})

文字對

再定義

l(f_{x,y}(x),y)

表示模型的損失函式,那麼通常的資料增強的損失函式可表示如下:

用於文字生成任務的無須任何增強資料的資料增強方法

其中

w_{\hat{x}}

是每個增強樣本的重要性權重;

\phi_{\hat{x}}

表示由

\hat{x}

構建的增強資料對映函式;

F

為包含所有可行的對映函式的函式空間。

Approach

作者先假設損失函式是最簡單的歐氏距離(二範數):

用於文字生成任務的無須任何增強資料的資料增強方法

其中

u,v

分別為兩個句子的句子表示。其他形式的損失函式將在下一節中被討論。

Proposed Objective

用於文字生成任務的無須任何增強資料的資料增強方法

f_{x,y}(x),f_{x,y}(\hat{x}),y

看做是歐式空間的三個頂點。對於一個數據對映函式

\phi_{\hat{x}}

和一個樣本

(x,y)

,我們可以在以

f_{x,y}(x)

為極點,

(f_{x,y)}(x),y)

為極軸的極座標系下重寫

l(f_{x,y}(\hat{x}),y)

用於文字生成任務的無須任何增強資料的資料增強方法

其中

\theta

f_{x,y}(\hat{x})

的弧度。從上式我們可以看出,新的增強損失取決於原始的樣本損失

l(f_{x,y}(x),y)

、極徑r以及極角

\theta

;其中極徑為資料擾動距離

l(f_{x,y}(x),f_{x,y}(\hat{x}))

;因此·我們可以將每種增強的資料對映函式對映為

(r,\theta)\in P

,其中

P

(r,\theta)

的聯合分佈。來自不同增強資料對映函式的增強損失部分的加權求和可以看作是透過從它們的聯合分佈 P 中取樣不同的 (r,θ) 來對重寫損失的期望的經驗估計,儘管沒有觀察到相應的真實分佈P。

透過上面的分析,我們已經不需要再進行特殊的對映函式以及權重的設計了,我們所要做的僅僅是設計一個關於

(r,\theta)

的分佈

P

;並最佳化重寫損失的期望。因此作者建議最佳化下面的目標以模擬資料增強的影響:

用於文字生成任務的無須任何增強資料的資料增強方法

其中

\Phi(e;r,\theta)

是在給定

(r,\theta)

之後的關於e的函式:

用於文字生成任務的無須任何增強資料的資料增強方法

Optimization

作者假定

(r,\theta)

是相互獨立的兩個變數:

用於文字生成任務的無須任何增強資料的資料增強方法

並在下面先假設其均服從均勻分佈。回想一下,適當的資料對映函式會增加接近原始樣本的樣本。因此,理想的情況是擾亂樣本,使其輸出表示均勻地圍繞原始樣本的輸出表示。具有小擾動半徑上限的均勻分佈可以模擬這種理想情況。

Corollary 1

假定:

用於文字生成任務的無須任何增強資料的資料增強方法

那麼

E_{(r,\theta)\in P}[\Phi(l(f_{x,y}(x),y))]

的上界為:

用於文字生成任務的無須任何增強資料的資料增強方法

(證明過程在附錄,比較複雜)

有了上述的結果,我們就可以透過最小化匯出上界以最佳化目標,我們計算梯度如下:

用於文字生成任務的無須任何增強資料的資料增強方法

其中

\Theta

包含所有的神經模型的引數。這和之前的求梯度的方法主要區別在於第二項,即多加了原本的損失函式作為影響因素,這也意味著原本透過資料增強的方法做到的提升,這裡透過新的計算公式也可以做到。這也就證明了所假設的均勻分佈的有效性以及合理性。

Corollary 2

假設:

用於文字生成任務的無須任何增強資料的資料增強方法

r服從指數分佈即意味著,當距離函式很小的時候,r很大,也就會給予更高的機率,這樣是符合我們的預期的。

那麼

E_{(r,\theta)\in P}[\Phi(l(f_{x,y}(x),y))]

的上界為:

C_1(R).l(f_{x,y}(x),y)+\frac{C_1(R)}{2}.l^2(f_{x,y}(x),y)+C_2(R)

這樣一個推匯出的公式表面,我們只要吧

C_1(R)

設定為超引數,便可依舊使用梯度權重最佳化所建議的目標。

作者之後又證明了在使用SGD最佳化器的情況下,收斂速度可以達到

O(1/\sqrt{T})

Other Types of Augmented Data

之前討論的問題主要是對輸入進行對映資料增強,那如果是輸出進行對映,或者兩者一起改變呢?

先來看輸出擾動的情況:

用於文字生成任務的無須任何增強資料的資料增強方法

同理,在極座標系下改寫損失函式:

用於文字生成任務的無須任何增強資料的資料增強方法

這裡直接把r看做是

l(y,\hat{y})

即可轉化為之前的討論。

接下來是對於輸入輸出一起擾動的例子:

用於文字生成任務的無須任何增強資料的資料增強方法

這裡描述的就是圖c的情況,利用三角不等式有:

用於文字生成任務的無須任何增強資料的資料增強方法

l(f_{x,y}(\hat{x}),y)

l(f_{x,y}(x),\hat{y})

利用之前的極座標公式迭代得:

用於文字生成任務的無須任何增強資料的資料增強方法

由於r是標量,跟學習的引數無關,因此這個最佳化目標也跟之前的一樣。

綜上所述,下面這個最佳化目標可以應對所有的資料增強對映函式:

用於文字生成任務的無須任何增強資料的資料增強方法

Loss Function

之前的討論基於損失函式為簡單的歐式距離的平方,接下來討論其他種類的損失函式,如WMD(Word mover‘s distance)以及常見的交叉熵損失。

Word Mover’s Distance

用於文字生成任務的無須任何增強資料的資料增強方法

其中

p_{u,i}/p_{v,j}

為句子的機率分佈,

d_{i,j}

表示

u_i

u_j

的錯誤預測的懲罰,一般使用平方歐式距離

d_{i,j}={||u_i-u_j||}^2

Cross-entropy Loss

交叉熵損失是最常採用的用於生成模型的損失函式。

用於文字生成任務的無須任何增強資料的資料增強方法

作者表明交叉熵損失並不滿足之前的極座標下的公式,因此最小化這個目標也就不一定近似資料增強的目標。但是作者在實驗中還是使用了交叉熵損失作為損失函式,結果相比基準模型還是提升了效能表現,這是因為作者的方法是透過梯度加權最佳化的,因此至少它是一種有用的資料加權方法。

Experiments

為了評估上述方法能否模擬資料增強的效果,我們對兩個文字生成任務進行了實驗——神經機器翻譯和對話響應生成。我們將我們的方法與可以應用於各種文字生成任務的兩種最流行的資料增強方法(一個token級和一個句子級增強方法)進行比較。

神經機器翻譯實驗結果:

用於文字生成任務的無須任何增強資料的資料增強方法

用於文字生成任務的無須任何增強資料的資料增強方法

用於文字生成任務的無須任何增強資料的資料增強方法

對話生成應答:

用於文字生成任務的無須任何增強資料的資料增強方法

Conclusions

作者提出了在不使用任何增強資料對映函式的情況下制定資料增強的目標。作者展示了它的最佳化並提供了相應的收斂速度。討論了 L2Wasserstein 距離和交叉熵損失以及它們在我們的目標中的使用及其相應的理論保證。與之前需要將操作資料新增到訓練過程中的資料增強工作不同,作者基於梯度的方法提供了一種潛在的方法來獲得性能改進,這可能來自增強資料,而不會加重計算負擔。神經機器翻譯和會話響應生成的實驗與現有流行的資料增強方法(掩碼語言模型和反向翻譯)相比,驗證了作者的新建目標的有效性。

標簽: 增強  對映函式  資料  樣本  損失