可解釋性

線性探針(linear probe)

假設你懷疑模型暗中在追蹤某樣東西——比方說,一句話是不是過去式——即使你從未要求它這麼做。你要怎麼查核它的內部活動裡坐著哪些資訊?線性探針是最簡單的測試:你拿模型的激活,在它們之上訓練一個極小、極簡單的分類器去預測那個性質。如果那個簡單分類器成功了,那麼這項資訊就一定是以容易讀取的形式存在於激活之中。

「線性」這一點正是重點所在,也是它的紀律。探針只被允許畫一條直直的分界線(技術上說,是讀取激活空間中的一個方向),因此它無法自己做什麼聰明的運算。這讓功勞歸於正確的對象:如果僅僅一個線性讀取就能從某一層的激活中以高準確率還原「這段文字有沒有毒性?」,那麼模型早已把那個概念以乾淨、可線性取用的方式運算並儲存好了。你凍結模型,在有標籤的例子上蒐集它的激活,擬合探針,再衡量它預測標籤的好壞。

探針是一種廉價、流行的「往模型內部看一眼」的方法,也是諸如「偵測模型是否其實知道某個它沒說出口的答案」這類安全構想的基礎元件。但有兩點誠實的提醒。第一,探針顯示的是相關性——資訊存在且可讀——而不是模型真的用它來決定輸出;要證明後者,你需要像激活修補這樣的因果測試。第二,一個強大的探針可能找到模型根本不依賴的結構,甚至抓住的是你資料中的模式而非模型中的模式,這正是通往解釋幻覺的一條經典途徑。

研究者在一個下棋盤遊戲的模型的激活上訓練了一個極小的線性探針,竟然能讀出當前的棋盤狀態,儘管這個模型一直以來只被訓練去預測下一步——這證明它在內部建立了一個棋盤的模型。

線性探針問的是:這項資訊是否存在於激活之中、而且可被線性讀取?

探針證明的是資訊可被解碼,而不是模型有在使用它。要知道它在因果上是否真的承重,就對那個方向進行干預,看看行為是否改變。

又稱
probeprobing classifier探針線性探針