偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Qwen和DeepSeek為何都選YaRN?

人工智能
YaRN 可以直接和修改注意力機(jī)制的庫兼容,比如 Flash attention,因此不會(huì)有額外的實(shí)現(xiàn)成本和推理成本。Flash 在目前的主流底層框架實(shí)現(xiàn)基本是標(biāo)配了,所以這一點(diǎn)很重要。

這篇文章,我們還是從面試官的視角出發(fā),一起來分析一下,如果你在面試現(xiàn)場(chǎng)被問到這個(gè)題目,應(yīng)該如何回答?

1.面試官心理分析

首先還是分析一下面試官的心理,面試官問這個(gè)問題,主要是想考察三點(diǎn):

  • 第一,你知不知道長度外推這個(gè)概念?很多同學(xué)可能聽都沒聽過這個(gè)概念,那這個(gè)問題當(dāng)然也就無從答起了。
  • 第二,deepseek 采用了哪種長度外推方案?面試官希望你能講清楚這個(gè)外推算法的底層細(xì)節(jié)。
  • 第三,這種方案相比之前的方法,它好在哪里?這就更進(jìn)一層了,需要你通過自己的理解總結(jié)概括一下。

好,那接下來我們就沿著面試官的心理預(yù)期,來分析一下這道題目!

2.面試題解析

首先回答第一層,什么是長度外推?

顧名思義,長度外推,就是不需要用長序列數(shù)據(jù)進(jìn)行額外的訓(xùn)練,只用短序列語料對(duì)模型進(jìn)行訓(xùn)練,就可以得到一個(gè)能夠處理和預(yù)測(cè)長序列的模型,也就是我們所說的“Train Short,Test Long”。

那么如何判斷一個(gè)模型能否用于長序列呢?最基本的指標(biāo),就是模型的長序列 Loss 或者 PPL 不會(huì)爆炸。

更加符合實(shí)踐的評(píng)測(cè),則是輸入足夠長的 Context,讓模型去預(yù)測(cè)答案,然后跟真實(shí)答案做對(duì)比,計(jì)算 BLEU、ROUGE,LongBench 這幾個(gè)指標(biāo)。

然后回答第二層,deepseek 采用了一種叫 YaRN 的長度外推算法。

具體來說,YaRN 是基于 NTK-aware 方法的進(jìn)一步拓展,通過結(jié)合溫度縮放和 NTK-by-parts 插值,來提升長文本外推能力。

即 YaRN = NTK-aware + NTK-by-parts + Dynamic NTK。

然后我們看一下,這個(gè)算法是怎么做的。我們首先回顧一下 ROPE 的公式:

圖片圖片

從公式中可以看到,m-n 是相對(duì)位置的距離,θi 是旋轉(zhuǎn)的頻率。

那怎么理解這個(gè)公式呢?

我們知道,對(duì)于三角函數(shù),不同取值本質(zhì)上就等于在一個(gè)單位圓上的點(diǎn)。

如果 m-n 逐漸變大,也就是相對(duì)距離越來越遠(yuǎn),則相當(dāng)于在圓上旋轉(zhuǎn),如果 θ 越大,則代表在圓上旋轉(zhuǎn)越快。theta 對(duì)應(yīng)頻率,根據(jù)頻率和周期的關(guān)系,頻率越大,周期越小。

我們來看這張圖,左右分別代表一個(gè)大的 θ 和一個(gè)小的 θ 的旋轉(zhuǎn)情況。大 θ 旋轉(zhuǎn)超過一周了,小 θ 才旋轉(zhuǎn)一個(gè)半圓。

圖片圖片

然后我們來看一下 YaRN 的核心思想,假設(shè)訓(xùn)練的長度是 L,那 m-n 的取值范圍是 [0,L-1]。

θ 越大,則轉(zhuǎn)速越快,也就是 m-n 從 0 到 L-1 的期間,已經(jīng)轉(zhuǎn)了很多圈,也就是說圓上的每一個(gè)點(diǎn)幾乎都被訓(xùn)練過,這類 theta 不存在長度外推的問題。也就是對(duì)于高頻信息,不動(dòng)。

對(duì)于小的那些 θ,也就是 m-n 從 0 到 L-1 的期間,可能轉(zhuǎn)了還沒有一圈,圓上還存在很多空白。

那這種情況,如果測(cè)試長度 M 大于 L,則很有可能就超出了訓(xùn)練過的那一段圓弧,從而造成長度外推失敗。

YaRN 的做法也很直接,直接把此時(shí)的 θ 壓回到訓(xùn)練過的那一段圓弧范圍內(nèi),這樣就減少了實(shí)際預(yù)測(cè)時(shí)跑到空白的地方。也就是 θ 會(huì)乘一個(gè)縮放因子 L/M。

我們可以設(shè)一個(gè)圈數(shù)的閾值 τ,如果圈數(shù)超過 τ 的,就認(rèn)為已經(jīng)充分訓(xùn)練了,可以不加改動(dòng);

圈數(shù)少于 1 的,θ 改為 θ*L/M,也就是要把超出弧范圍的重新縮放到弧內(nèi),至于二者之間的部分,就在兩者之間線性插值過渡。

也就是論文這個(gè)公式所表達(dá)的含義:

圖片圖片

YaRN 的第二個(gè)點(diǎn)是解決線性內(nèi)插導(dǎo)致的 self-attention 點(diǎn)積的值增大的問題。

由于線性內(nèi)插會(huì)改變旋轉(zhuǎn)向量轉(zhuǎn)動(dòng)的幅度,也就是隔得更近了。原來距離較遠(yuǎn)的 q,k 點(diǎn)積由于旋轉(zhuǎn)幅度變小,他們的點(diǎn)積結(jié)果會(huì)增大,進(jìn)而導(dǎo)致 Softmax 操作過于“銳化”,使得注意力分布集中于少數(shù)位置,削弱了模型對(duì)全局上下文的關(guān)注能力。

Yarn 在 NTK-by-parts 基礎(chǔ)上,引入了注意力溫度因子,來調(diào)整注意力分布。

我們看公式:

圖片圖片

3.總結(jié)

最后總結(jié)一下,這個(gè)算法有哪些優(yōu)勢(shì)呢?

首先,YaRN 可以直接和修改注意力機(jī)制的庫兼容,比如 Flash attention,因此不會(huì)有額外的實(shí)現(xiàn)成本和推理成本。Flash 在目前的主流底層框架實(shí)現(xiàn)基本是標(biāo)配了,所以這一點(diǎn)很重要。

第二個(gè)是效果拔群,YaRN 這個(gè)算法目前在各種大模型和和不同架構(gòu)上對(duì)比實(shí)驗(yàn)表明,是一個(gè)非常強(qiáng)的 SOTA。

所以目前主流的大模型,如 LLaMA 的改進(jìn)系列,Qwen2.5 和 DeepSeek,都選擇了用 YaRN 來做長度外推。

責(zé)任編輯:武曉燕 來源: 丁師兄大模型
相關(guān)推薦

2013-08-27 13:46:17

喬布斯蓋茨微軟

2025-02-24 08:10:00

2018-07-31 12:04:00

顯示器

2025-02-14 09:50:00

DeepSeekAI

2010-08-25 10:35:31

微軟

2010-08-26 17:24:47

2013-07-30 17:26:11

科技公司科技巨頭IT公司

2025-02-08 09:30:00

2009-09-23 18:15:15

wifi通信

2025-05-06 00:35:33

2017-11-29 12:06:07

2025-02-27 08:00:00

DeepSeek大模型人工智能

2011-05-07 09:38:03

打印機(jī)耗材正品

2025-04-01 08:10:00

JavaScripteval()函數(shù)代碼

2018-09-26 17:16:28

VR游戲體驗(yàn)虛擬現(xiàn)實(shí)

2025-02-08 11:31:17

DeepseekR1模型

2011-05-23 16:12:39

私有云

2025-02-10 11:11:47

2017-05-17 10:29:31

電子

2021-07-06 09:41:42

微軟Windows 11Windows
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)