大模型面試題:目前大模型中的位置編碼有哪些?

我整理了很多的算法題,詳情見參考鏈接1

在大模型中,位置編碼主要分為兩大派:絕對位置編碼和相對位置編碼。主流的幾種膾炙人口的位置編碼如下所示:

  • 正弦編碼
    正弦曲線(Sinusoidal)位置編碼:這是Transformer原始論文中提出的位置編碼方式。它通過正弦和余弦函數(shù)的組合為每個位置創(chuàng)建編碼,波長呈幾何級數(shù)排列,使得每個位置的編碼都是獨特的,并且能夠捕獲位置之間的相對關(guān)系。公式如下:
    PE_{(pos,2i)} = \sin(pos/10000^{2i/d_{\text{model}}}), PE_{(pos,2i+1)} = \cos(pos/10000^{2i/d_{\text{model}}})
    其中,pos表示位置,d_{\text{model}}代表embedding的維度,2i,2i+1代表的是embedding不同位置的索引。

    優(yōu)點:實現(xiàn)簡單,效率高,易用性好,有一定的理論支撐
    缺點:絕對位置編碼帶來的靈活性差;外推性較差,難以對超出預(yù)訓(xùn)練長度的文本進(jìn)行很好的外推或者說性能下降;難以表示有效的相對位置間的關(guān)系,也即難以表示前后方向,只能表示距離。

  • 旋轉(zhuǎn)位置編碼
    旋轉(zhuǎn)位置編碼(RoPE):這是一種相對位置編碼,通過旋轉(zhuǎn)向量的方式來編碼位置信息。RoPE在特定任務(wù)中表現(xiàn)出獨特的優(yōu)勢,尤其是在處理具有對稱性或周期性特征的數(shù)據(jù)時。 < f_q(x_m,m),f_k(x_n,n)>=g(x_m,x_n,m-n)

優(yōu)點:能保證相對位置關(guān)系;良好的外推性;可以和線性注意力機制兼容.  
缺點:實現(xiàn)上稍微復(fù)制;外推到超長序列也存在性能下降問題  

可以參考 https://zhuanlan.zhihu.com/p/647109286 進(jìn)行學(xué)習(xí),十分鐘就精通了
  • ALiBi
    相對位置編碼(ALiBi):這是一種微調(diào)Attention結(jié)構(gòu)的方法,使其能夠分辨不同位置的Token。相對位置編碼適用于長文本處理和需要捕捉長距離依賴的任務(wù),如機器翻譯和問答系統(tǒng)ALibi并沒有顯示的在網(wǎng)絡(luò)種加入編碼,唯一的修改是在qk點積之后,加入了一個靜態(tài)的不可學(xué)習(xí)的bias:
    sfotmax(q_i K^T+m*[-(i-1),...,-2,-1,0])
    m是一個head-specific的超參(multihead),對于n個head而言,步長一般為 2^{-8/n}

    image

    優(yōu)點:實現(xiàn)簡單,減少了模型embedding參數(shù),效率高,具有良好外推性,
    缺點:外推到超長序列也存在性能下降問題

本文由mdnice多平臺發(fā)布

參考

[1] https://www.zhihu.com/pin/1838617306013503488

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容