成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你理解的控制LLM幻覺的方法可能是錯的

發布于 2025-5-14 00:30
瀏覽
0收藏

那什么是粗暴的控制LLM的幻覺的方法呢?

正常你們大家學到的應該是

temperature=0

top_k=1

top_p=0.1類似這種的但是這種是不是能解決幻覺呢?很顯然在做的各位試過,應該是沒什么效果的。為什么呢?

正常來講,我們不是把生成next token的概率放到最大的那個token上了嗎?

今天先回憶個概念LLM是靠什么來決定next_token生成的,

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區

就是Logit,就是softmax你的前向計算的最后一層(這么表達不精確,但是你可以認為就算最后一層了)

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區

過了output之后呢?要和詞表做一個矩陣乘,得到一個logit,但是這個不能直接用,需要給softmax轉換為對應詞的概率,就是我剛才的公式

(不理解transformer架構的兄弟可以參考我以前的博文,草履蟲也能學懂得Transformer系列

??https://mp.weixin.qq.com/s/Qi9-SqTGk5yHkF0WQ1CdYQ?token=1866303267&lang=en_US??

如果志在玩大模型,至少目前Transformer還是繞不開的基礎)

1- 為什么temperature要設置低

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區

溫度采樣是一種基本技術,可控制 token 選擇的隨機性。它的工作原理是在應用 softmax 函數之前縮放 logits(未歸一化的預測分數)。

其中:P(xi)是選擇 token ii的概率,Z i是選擇token ii的 logit,T就是溫度參數了

較低的溫度(T < 1)使分布更加尖銳,傾向于高概率 token。較高的溫度(T > 1)會使分布變平,增加選擇較低概率 token 的機會。

2- TOP P 和K 呢?

這就不仔細講了,TOP是核采樣,就是排序計算累加概率,知道累加概率超過p剩下的就不要了,然后歸一化,從里面選出來TOPK 不用說了把,選K個歸一化。

一般的理解認為,如果把上述的設置都設置為最嚴格的,比如設置topK=0,TOP_P=1, 先把這兩個參數廢掉,然后temperature=0.0 就應該是絕對無幻覺的答案了,如文章開頭說的,事實上是不行的,下面講一下為什么?因為LLM還有兩個比較關鍵的概念,當然你也可以說這倆概念是人為加上的,引入這些概念的就是entropix采樣:

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區


第一個注意力熵entropy:

理解語言模型中的熵

在語言模型的上下文中,熵衡量模型預測中的不確定性或隨機性。它量化了概率分布在可能的下一個 token 上的分散程度。

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區

其中 pi是第 i 個 token 的概率。

較高的熵值表示模型對下一個 token 不確定,概率分布在許多選項上。相反,較低的熵表示模型更有信心,概率集中在較少的 token 上。

注意力熵方差 (Varentropy)

熵方差(Varentropy),或熵的方差,衡量了在單個位置上,不同可能的 token 之間的信息內容(驚奇度)變化有多大。它提供了對模型不確定性和其對給定上下文的預測多樣性的洞察。

熵方差的計算涉及以下步驟:

步驟 1:計算概率和對數概率

使用 softmax 計算當前位置上每個可能的 token 的概率,并計算它們的對數概率。

步驟 2:計算熵

計算當前位置概率分布的熵。

步驟 3:計算熵方差

對于每個可能的 token,計算其信息內容(負對數概率)與平均信息內容(熵)之間的平方差。用它們的概率加權這些差異并將它們加總。

熵方差在識別模型正在考慮驚奇度水平非常不同的 token 的情況時特別有用。高熵方差可能表明上下文復雜或模糊,模型的預測更加多樣化或不確定。

在采樣決策中的意義

熵和熵方差的組合在 Entropix 的采樣策略中起著至關重要的作用。以下是它們如何影響決策過程:

  1. 低熵,低熵方差:表示高置信度和一致性。Entropix 在這些情況下可能會使用貪婪采樣。
  2. 高熵,低熵方差:表明一致的不確定性。這可能會觸發插入澄清(clarification insertion)或增加探索。
  3. 低熵,高熵方差:表示不同程度的置信度。Entropix 可能會采用探索采樣來調查不同的可能性。
  4. 高熵,高熵方差:代表高度不確定性和不一致性。這種情況通常會導致使用調整參數的高不確定性采樣。

在 Transformer 模型中,注意力通常以多頭注意力(multi-head attention)的形式實現。這意味著注意力機制并行應用多次,允許模型同時關注輸入的各個不同方面。

Transformer 模型中的每個注意力頭計算一組注意力分數,確定在生成每個輸出 token 時,要將多少注意力放在輸入的不同部分。

注意力熵用于量化注意力在不同 token 上的不確定性或分散程度。

較高的注意力熵表示模型的注意力分散在許多 token 上,而較低的熵表示模型專注于少數特定的 token。

而如果分散在許多token上,也就是所謂的熵分散,代表模型此時根本不知道哪個token更合適

這個時候你比如temperature=0.0,你是選擇了一個所謂概率最高的,但是你其實也限制了模型探索的能力,這也是幻覺可能產生的開始

注意力一致性 (Agreement)

注意力一致性衡量不同注意力頭之間的注意力模式的一致程度。它通過將每個頭的注意力分布與平均注意力分布進行比較來計算

較低的一致性表明不同的頭正在關注輸入的各個不同方面,這可能表明上下文復雜或模糊。

這是第二個引入幻覺的可能性,因為上下文的理解不確認

我們今天介紹的Entropix 使用這些基于注意力的指標來指導其采樣決策。例如:

  • 較高的注意力熵可能導致采樣中增加探索。
  • 較低的注意力一致性可能導致溫度或 top-k 參數的調整。

所以大家基本就能看明白了,如果模型不確認哪個token最優,那就增加一些探索的可能性,比如對上下文模糊,那就動態調整模型的配置參數

交互強度 (Interaction Strength)

交互強度定義為 Transformer 模型中所有層、頭和位置的注意力分數的絕對值的平均值。在數學上,它可以表示為:

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區

L代表層數,H是注意力頭,N是序列長度,Alhji就是第l層第h頭種從位置i到位置j的注意力分數

較高的交互強度值表示序列中 token 之間存在更強的關系

交互強度在 Entropix 的自適應采樣過程中起著至關重要的作用。它影響采樣策略的幾個關鍵方面:

  1. 溫度調整:較高的交互強度可能導致溫度升高,當 token 之間連接緊密時,促進更多樣化的輸出。
  2. Top-k 參數:交互強度用于動態調整 top-k 參數,從而根據 token 關系的強度允許更多或更少的候選 token。
  3. 探索與利用:在交互強度較高的場景中,采樣策略可能會傾向于更具探索性的行為,以捕獲 token 之間復雜的聯系。

說白了,我token之間交互強度高,證明我們之間的注意力更高,需要輸出更多元化,人話說就是更多探索路徑,來捕捉復雜的注意力

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區


下面是entropix的完整采樣過程:

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區


如上圖所示

數據流和決策過程

Entropix 系統在文本生成過程中遵循特定的流程:

步驟 1:Token 生成

語言模型處理輸入 token 并生成 logits 和注意力分數。

步驟 2:指標計算

指標計算器基于模型輸出計算熵、熵方差、注意力熵、注意力一致性和交互強度。

步驟 3:策略選擇

自適應采樣器分析計算出的指標,并選擇最合適的采樣策略。

步驟 4:參數調整

根據選擇的策略和指標,動態調整采樣參數(溫度、top-k、top-p、min-p)。

步驟 5:Token 采樣

應用選擇的采樣策略來選擇下一個 token。

步驟 6:迭代

從步驟 1 開始重復該過程,并加入新生成的 token。

采樣策略

Entropix 采樣方法的核心是其策略選擇邏輯。該系統持續評估模型的輸出指標,并為每個 token 生成步驟選擇最合適的采樣方法。

你理解的控制LLM幻覺的方法可能是錯的-AI.x社區


自適應采樣

當 logits 的熵和熵方差沒有落入極端類別時(與觸發專門采樣技術的場景不同),自適應采樣策略就會啟動。它旨在平衡探索和利用,適應當前的上下文和模型狀態。

自適應采樣過程

步驟 1:計算指標

首先,模型的 logits 和注意力分數中計算各種指標:

  • Logits 熵和熵方差
  • 注意力熵和熵方差
  • 注意力一致性
  • 交互強度

步驟 2:調整采樣參數

基于這些指標,動態調整采樣參數:

  • 溫度
  • Top-p(核采樣閾值)
  • Top-k
  • 最小概率閾值 (min_p)

步驟 3:生成多個樣本

使用調整后的參數生成多個候選 token。樣本數量是可配置的,默認為 12。(現在不是流行帶搜索的中間過程嗎,你可以理解為帶搜索的token生成)。

步驟 4:樣本評分

每個樣本都根據兩個因素評分:

  1. 來自模型 logits 的對數概率
  2. 從計算出的指標導出的置信度分數

步驟 5:選擇最佳樣本

得分最高的樣本被選為最終輸出 token。

生成多個樣本后,每個樣本都使用對數概率和置信度分數的組合進行評分:

def score_sample(sample):
    log_prob = jnp.sum(jax.nn.log_softmax(logits) * jax.nn.one_hot(sample, logits.shape[-1]))
    confidence_score = (
        (1 - metrics["logits_entropy"]) * 0.1 +
        (1 - metrics["attn_entropy"]) * 0.2 +
        (1 - metrics["logits_varentropy"]) * 0.3 +
        (1 - metrics["attn_varentropy"]) * 0.4 +
        metrics["agreement"] * 0.5 +
        metrics["interaction_strength"] * 0.6
    )
    return log_prob + confidence_score

此評分函數平衡了 token 的可能性(log_prob)和從各種指標導出的置信度度量。置信度分數中每個組件的權重可以根據經驗結果進行調整。

現在回到最開始我們說的集中情況來分析:

1-如果熵和熵方差都非常低時,模型對其預測非常有信心。在這種情況下,使用貪婪采樣,說白了模型知道它在干什么,它對自己的答案也足夠確認,那就選擇概率最高的,就是標準的logit。

2- 如果熵高,但是熵方差低,證明模型是不確定的,但是其不確定性是一致的,所以需要澄清,這個澄清就是以特殊token的形式。

如果插入了澄清token,那么下一個token就會動態調整temperature,用更高的溫度拿到更大的多樣性,來進行采樣,找到最合理的token!

其實某種程度上有點像李飛飛的S1的wait token。

3- 另外如果,模型熵很低,證明它很確認,但是熵的方差高,就證明它本身就看到了很多不同的可能性,那采樣的temperature就直接升高(基于交互強度指標)就可以了,top k當然也順手就給升了。

4- 如果熵和熵方差都高,記憶是又不確定,又看到了好多的可能性,那就直接下猛藥,但是其實和3的請款一樣,也是升temperature,但是是基于熵方差的強度來調整temperature,而不是注意力一致性,另外此時因為熵升高,所以要降低top-p的參數來讓它收斂。


你理解的控制LLM幻覺的方法可能是錯的-AI.x社區

這就是entropix的思路,通過動態的采樣參數和澄清token來實現fitting化的采樣保證模型的輸出更合理化,更少幻覺,其實entropix的思路在OAI的o系列是有引入類似的概念的。

比如你們使用o系列api就會發現一個申請的問題,temperature和top p k都不允許設置

原因就是來自于這,所以大家理解了為什么temperature=0.0和有沒有幻覺并沒有本質聯系的原因了嗎?

本文轉載自????熵減AI????,作者:周博洋

收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 91精品国产色综合久久 | 日韩最新网址 | 国产精品免费一区二区 | 成年人在线观看视频 | 午夜影院操 | 成人h视频在线 | 天堂在线中文 | 婷婷色成人| 爱爱爱av | 欧美国产精品 | 一区视频 | 久久久国产一区二区三区四区小说 | 国产日产久久高清欧美一区 | 天天天操操操 | 国产乱码精品一区二区三区五月婷 | 成人免费黄色片 | 国产日韩免费视频 | 免费高潮视频95在线观看网站 | 成人毛片视频免费 | 一区二区三区视频在线观看 | 成人不卡在线 | 超碰婷婷 | 老外黄色一级片 | 99久久国产精 | 婷婷色综合 | 欧美久久精品一级c片 | 久久精品二区 | www.成人在线视频 | 亚洲国产日韩欧美 | 国产精品免费一区二区三区四区 | 欧美在线视频一区二区 | 国产福利在线视频 | 精品一区二区三区四区 | 日本免费小视频 | 日日夜夜免费精品 | 91精品国产91久久久久久最新 | 国产一区精品在线 | 成人亚洲精品久久久久软件 | 成人在线免费视频 | 天天操天天射天天舔 | 亚洲一区二区电影在线观看 |