# 弗拉基米爾·萬普尼克：統計學習

> 統計學習理論奠基人回顧支援向量機與VC理論的來路，並探討機器學習的本質。

- 原標題：Vladimir Vapnik: Statistical Learning
- 期數：特別節目
- 釋出日期：2018-11-16
- 嘉賓 / 主題：弗拉基米爾·萬普尼克
- 網頁版：https://lex.qiaomu.ai/tw/ep/vladimir-vapnik/
- 官方頁面：https://lexfridman.com/vladimir-vapnik/
- 精讀字數：約 7273 字（閱讀約 16 分鐘）

> 本文為 lex.qiaomu.ai 基於原始訪談的 AI 改寫中文精讀，非官方翻譯；引用請註明出處並連結網頁版。

2018 年秋天，萬普尼克（Vladimir Vapnik）在 Lex Fridman 的播客裡留了一道題。

MNIST 手寫數字識別，深度學習用六萬個訓練樣本，把準確率做到 99.5%。萬普尼克說，你能不能只用六百分之一的樣本，做到同樣的事？

條件是把不變性放進去。

這道題他放在演講的最後一頁，講完就下臺了。到今天，接的人也不多。

萬普尼克是統計學習理論的主要建立者。VC 維裡的那兩個字母，V 和 C，其中一個就是他。支援向量機（SVM）、支援向量聚類，也都是他和團隊做出來的。1936 年生於蘇聯，在莫斯科控制科學研究所工作多年，後來去了美國，在 AT&T 實驗室、Facebook 研究部門待過，現在是哥倫比亞大學教授。論文被引用超過十七萬次。

這場對話裡，他幾乎把當下最熱的東西挨個批了一遍，但批得很講道理。

## 上帝擲不擲骰子，取決於你站在哪一邊

Lex 用愛因斯坦那句“上帝不擲骰子”開場，問他：你一輩子用統計的眼光看世界，那上帝到底擲不擲骰子？

萬普尼克的回答很平：“你有一些不知道的事實。因為有些可能很重要的因素你不知道，看起來就像上帝在擲骰子。”

然後他把話題拐到了哲學裡的兩個位置：工具主義（instrumentalism）和實在主義（realism）。工具主義造的是能用來預測的規則，實在主義想搞清楚你描述的那個東西到底是什麼。

他舉了個例子。你寫下一組力學定律，這組定律是什麼？是上帝定下的、處處成立的法則，還是一個能讓你算出物體下一刻位置的公式？你相信前者，你就是實在主義者；你只在乎後者，你就是工具主義者。

> 如果你相信這是上帝的法則，那它處處都成立。這意味著你在追求真正理解。如果你只想預測，那你看到的世界就完全是另一個樣子。（萬普尼克）

這個區分聽著抽象，其實是整場對話的地基。後面他批評深度學習、批評理論電腦科學、批評人工智慧這個詞本身，用的都是這把尺子。

## 機器學習的目標，被寫錯了

萬普尼克說，現在所有人做機器學習，目標函式都寫成分類準確率。這是工具主義的選擇。

> 從工具主義的角度看，兩條路都能走通，大家也都這麼幹，因為機器學習的目標就是預測。這沒錯，它是一個預測工具。但機器學習的真目標，是學出條件機率。（萬普尼克）

他接著說得很直接：我不需要知道某個具體情況下機率是多少，我只要一條規則，一條能做預測的規則。可要理解，就必須有條件機率。

這話聽著像文字遊戲，實際上是在劃一條線。一條規則只告訴你答案，條件機率告訴你這個世界在這一點上長什麼樣。前者能刷榜，後者能遷移。

這個區別在工程上非常具體。一個只學了決策邊界的模型，換一批資料分佈就崩；一個學到了條件機率結構的模型，換環境還能撐住。過去十年，工業界反覆在這件事上吃虧，吃了又忘，忘了再吃。

## 數學是上帝的語言，但人得先閉嘴

Lex 提到維格納（Eugene Wigner）1960 年那篇《數學在自然科學中不合理的有效性》。萬普尼克說，他信這個說法。

> 數學家去找那些神奇的結構，他們知道關於現實的某些東西。做自然科學的人盯著一個方程，想從中理解現實。同樣的邏輯，如果你非常小心地看那些定義條件機率的方程，你能從中理解到的現實，比從自己的幻想裡得到的多得多。（萬普尼克）

他還說了一句挺重的話：**人類的直覺很貧乏，很原始，看不見那些簡單的情形。**

那人類最好的東西是什麼？他的答案是公理。“人類最好的創造是公理，剩下的是技術活，看公理把你帶到哪裡去。”

Lex 追問，愛因斯坦發現狹義相對論的時候，想象力難道沒起作用？萬普尼克的回答不太留情面：那些像“特徵”一樣的想象，深度學習那種方式的想象，跟問題本身沒關係。你從方程出發一步步推，推出來的簡單理論遠遠超出任何人能想象的東西。想象只是解釋，解釋只是幻想。

他舉了自己工作裡的一個例子。一步步解方程，做著做著冒出來一項，想了半天才明白，它描述的是觀察點的位置，也就是你把大量資訊丟掉的那個位置。人不看觀察點的組成，人只看殘差。這個想法簡單，可從方程裡推出來，比拍腦袋想到要可靠得多。

## 顯微鏡下的國王與王后

列文虎克（Antonie van Leeuwenhoek）第一次用顯微鏡看血液。他看到了紅細胞，然後寫報告寄到倫敦的皇家學會，說這是國王和王后的軍隊在打仗。

> 他看對了，但他給的解讀是錯的。（萬普尼克）

這段話的分量在於後半句。萬普尼克說，人腦也可能是這樣。我們觀察到的現象是真的，我們給它的解釋可能是自己編的。而且編得越生動，別人越容易信。

把這個故事套到今天的 AI 討論上，你會發現它每天都在重演。有人看到模型能做某件事，就編一套“它在推理”“它在理解”的故事；有人看到模型做錯了，就編一套“它缺少世界模型”的故事。觀察是清晰的，解釋是編的。區別只在於，列文虎克至少把顯微鏡借給了別人看。

## “像蝴蝶一樣彈”到底傳遞了什麼資訊

萬普尼克提到一句老話：跟一位好老師學一天，勝過自己苦學一千天。他問，從數學上看，一位好老師到底做了什麼？

> 沒幾個人知道答案。這就是智慧。可是從歷史上、從大規模機器學習的實踐裡，我們知道老師能做的事很多。（萬普尼克）

他的猜想是，老師提供的是謂詞（predicate）和不變數（invariant）。老師知道現實長什麼樣，能把現實的形態描述出來。一旦你手裡有了不變數，需要的觀測數量可以降一百倍。

Lex 舉了個例子：鋼琴老師跟學生說，“像蝴蝶一樣彈”。這句話裡到底裝了什麼資訊？語言本身好像根本沒包含這些東西。

萬普尼克的回答是，他相信那是一個謂詞，只是他還不知道它具體是什麼。“這正是智慧和機器學習該乾的事，剩下的都是數學技術。”

Lex 說他彈了很多年吉他，這句話確實有東西在傳遞。萬普尼克順著說下去：最近發現，學習有兩種收斂機制。一種是以前大家一直在用的，另一種是強收斂，它可以吃謂詞。你說出“像蝴蝶一樣”，學生的彈法立刻就變了。資訊是即時生效的。

他還有一句話很值得記下來：**每一個謂詞都是為了讓可容許集變小而發明的。**

## 會游泳的鴨子和不會下棋的鴨子

“如果它看起來像鴨子，遊起來像鴨子，叫起來像鴨子，那它大概是隻鴨子。”

萬普尼克說這句話精確得嚇人。三個謂詞：看起來像鴨子、遊起來像鴨子、叫起來像鴨子。每一個都是合法謂詞。

他也完全可以說“跳起來像鴨子”。這個謂詞一樣合法，一樣語法正確，可它一點用都沒有，因為鴨子、鳥、動物之間在跳躍這件事上沒什麼區別，它不提供任何資訊。

那麼問題來了：怎麼判斷一個謂詞有沒有用？

> 到目前為止，現有的機器根本不用謂詞。你給工業界幾十億條資料，他們大概也只用三個謂詞。（萬普尼克）

機制是這樣的。你手上有海量候選函式，訓練資料告訴你“鴨子應該長這樣”，於是你砍掉所有不長這樣的函式，集合小了一圈。第二個謂詞進來，再砍掉一批。幾輪下來，剩下的函式不多了，從裡面挑表現最好的那個。

這就是謂詞在數學上的全部功能：**縮小可容許函式集（admissible set of functions）。**

這件事解釋了為什麼人不需要那麼多例子。你只見過幾只鴨子，就能認出鴨子，因為別人早就把“遊起來像鴨子”“叫起來像鴨子”這兩個謂詞塞給你了，你只需要很少的樣本去完成最後的挑選。

## 學習問題裡最難的一半，被教科書劃掉了

到這裡，VC 維該出場了。

Lex 請他向外行解釋 VC 維。萬普尼克說，你可以把它想成從一個可容許函式集裡挑出函式的能力。這個集合可以很大，大到包含所有連續函式，那它就廢了，你根本沒有那麼多樣本去挑。它也可以很小，小到裡面的函式彼此差別不大。他說他更願意把這個性質叫“多樣性”（diversity），而不是“容量”。

> 目標是把一個 VC 維小、又包含好函式的可容許集造出來，然後用很少的觀測把那個函式挑出來。這就是學習的任務。（萬普尼克）

接下來是整場對話裡最鋒利的一句。

> 經典統計學習理論裡，可容許函式集是給定的。每本教科書都這麼寫。可造出這個集合，恰恰是整個問題裡最難的那部分，它被排除在討論之外了。（萬普尼克）

這句話值得停下來想一會兒。一百年來，統計學習理論在給定的函式集裡把誤差界算得漂亮至極，可工程上真正決定成敗的那一步，是怎麼設計這個集合。所有做特徵工程、做架構設計、做歸納偏置的人，乾的都是這一步，而這一步在理論裡是空的。

具體怎麼造？靠不變數。你算出函式在訓練資料上的平均值，再算出它在模型上的期望，兩者應該相等。這種約束不針對某一個函式，它要求集合裡所有函式都滿足。這就是他說的強收斂機制。傳統統計學習用的是另一套東西，一致大數定律（uniform law of large numbers）。他特意強調，這兩者差別巨大。

差別在資訊量上。一個樣本能提供超過一 bit 的資訊，因為你說“這是 2”，等於砍掉了一半候選函式。而一個謂詞能砍掉的遠不止一半。從形式上看，“看起來像鴨子”這句話攜帶的位元數，大到無法從樣本里統計出來。

## 他對深度學習的評價很不客氣

萬普尼克講了個丘吉爾的例子。丘吉爾寫二戰史，開頭描述舊時代的規矩：戰爭結束，各位君王聚在一起，他們幾乎全是親戚，坐下來商量怎麼建立和平，最後能達成協議。一戰不一樣，普通公眾上了臺，貪婪壓過一切，所有人都看得出來這不是和平，和平只能維持二十年，因為坐在談判桌前的不是專業人士。

他說，華盛頓的數學家看問題看得很深。而電腦科學家大多不懂數學。

> 他們發明了一堆 bla bla bla 的解釋，比如深度學習。為什麼它有效？他們不知道。做深度學習的人不懂數學，也不懂神經元。它就是一堆函式。你願意的話，叫它分段線性函式，那就在分段線性函式的類裡做。可他們發明了一些詞，然後用這些解釋去論證優勢，而這些解釋大多是錯的。最後他們去搬大腦，而沒有人知道大腦裡到底在發生什麼。（萬普尼克）

他提到一個叫“代表性”（representativity）的結果，說學習問題的最優解落在淺層網路裡，不在深層網路裡。這個說法在圈內爭議很大，但它是從定理裡出來的，不是從情緒裡出來的。

Lex 試著往回拉：你不覺得這件事本身很美嗎？它居然真的跑通了。

萬普尼克說，你說的美是解釋的美。他補了一句很清醒的話：深度學習好用這件事本身沒錯，問題在於它用的訓練資料是幾十億條。人類不需要這麼多。

## AlphaGo 不是一個難題

Lex 問的是 AlphaGo。用神經網路估計棋盤價值、估計落子機率，贏下人類最強棋手，這件事不讓你驚訝嗎？

萬普尼克說，“你的解釋是估計質量。是的。”然後補了一句：“這不是一個很難的問題。”

Lex 說，那我們只是經驗上發現它不難。萬普尼克說：“對，我沒法反駁你。”

這段對話很短，但他其實是在說一個方法論上的事。圍棋被人類當成智力的高峰，很大程度上是因為人類自己在棋盤上投入了幾千年，訓練出了一套精巧的直覺。機器繞過了這套直覺，用的是另一種東西。機器贏棋這件事證明不了它有多聰明，只說明人類給圍棋加了不少神秘感，而機器沒買這個賬。

他自己也承認，這套判斷沒法拿到實證。所以他把話收在了一個可操作的地方：深度學習能做的事，用一百倍更少的樣本也能做，只要你有好的不變數。這是可以驗證的，那就去驗證。

## 智慧也許不全在顱骨裡面

Lex 提到了圖靈。圖靈在 50 年代那篇論文裡，其實完全清楚模仿遊戲不等於思考。他心裡明白得很，可他故意把問題換成了模仿問題。換完之後，這問題就有了可操作性。

萬普尼克說，他不確定智慧只在我們內部。他舉了一個觀察：非歐幾何在 19 世紀被好幾個人幾乎同時搞出來，羅巴切夫斯基、鮑耶、高斯，前後差了十年左右。類似的事在科學史上反覆出現，總有一個十年左右的視窗，不同地方的人獨立做出同一個東西。

> 所以也許我們把智慧當成只存在於內部的模型是錯的。這是我們的解釋。也許它跟某種世界層面的智慧有連線，我不知道。（萬普尼克）

Lex 順著說，你像是在插線，往一個大網路裡貢獻節點。萬普尼克說：“對，就是這樣。”

這段話聽起來玄，但放在他整場的立場裡其實很一致。他一直在說：我們的解釋可能是錯的，可能是我們自己編的故事。把智慧框在顱骨裡，也是一種解釋。

## 最壞情況和最好情況能描述，中間不行

Lex 問他對 P 與 NP 和計算複雜度的看法。萬普尼克說這問題有意思，然後講了另一件事。

1990 年前後，一批蘇聯學者到了美國。他說這些人既不懂統計，也不懂這個領域的歷史。當時蘇聯已經出了兩本專著，美國人不知道，等於重新學了一遍。有人告訴他，這批人會從最壞情況入手，會搞出一團混亂。

“但至今也沒有。因為更合邏輯的做法是：你只能做你的數學允許你做的事，前提是這件事有清晰的理解和清晰的描述。複雜度理論就是沿著這條線引入的。”

接著是那句關鍵的話：**最壞情況和最好情況都能寫成一般的形式，中間那一段不行。**

> 你沒法描述中間的情形，因為它不夠一般。你只能描述邊界，邊界很清楚，可以建模。可你不可能為每一個新情況建一個模型。（萬普尼克）

Lex 用了個挺妙的類比：這就像用一個人一輩子幹過最壞的事和最好的事來評價他，中間那些全不算。萬普尼克沒完全接受這個類比。在他看來，中間那些同樣重要，只是沒法一般化地描述。你能描述的是極端，極端有結構，中間沒有。

這話對做工程的人其實很有用。你評估一個系統，最壞延遲和最好效能都能測、都能算、都能寫進 SLA。可真實世界的表現落在中間，而那一段你只能用統計去看，統計又需要大量樣本，樣本又貴。整個迴圈就卡在這裡。

## 二十年前，沒人信

90 年代中期，萬普尼克和團隊提出支援向量機。他記得很清楚：“當時除了一個人，沒人相信。”

二十年後，它成了時尚。核方法、SVM，到處都是。

Lex 問，你做這件事的時候，有沒有一種“這東西是對的”的感覺？萬普尼克說，有。“我們立刻就認出來，它會一直留下來。”

然後他說，這次的不變性理論，感覺一模一樣。

> 因為我有證明，不存在另外的機制。你能做的只是一些表面上的改進。可把不變性和統計學習放在一起，你還能把“智慧是什麼”給形式化出來，並且把它和技術部分分開。（萬普尼克）

這是他整場最自信的一句話，也是最需要被檢驗的一句話。一個理論家說出“我證明了不存在另外的機制”，通常意味著他把某種框架的邊界畫得很死。歷史上這類斷言有對有錯，所以真正值得看的，是他給出的那條可驗證的挑戰：MNIST，六百分之一的樣本，把不變性放進去。

## 他做研究時最快樂的時刻

Lex 問，回頭看，作為研究者最快樂的時刻是什麼？他特意限定了一句：別談對社會的衝擊，只說那天你心裡有多爽。

萬普尼克說，每次你搞明白一點東西的時候。然後他說了一段很樸素的話。

> 大部分時間我都是錯的。你得一遍又一遍地回去，對自己誠實。別急著解釋，別搞出一堆 bla bla bla，試著弄清楚這件事跟 ground truth 到底有沒有關係。（萬普尼克）

Lex 問，那你允許自己為“可能發現點什麼”而興奮嗎？他說允許，但必須反覆檢查。跟 ground truth 有關的興奮是暫時的，你得再驗證一次。

關於詩和音樂，他說 ground truth 到處都能看到。哲學家有時候說得很深，有時候完全跑題。音樂裡也有 ground truth，是結構。古典的、清晰的、簡單的結構。你看著它，跟看一組公理展開成一個理論時的感覺是一樣的。

這段大概是整場最不像技術討論的部分，但它其實解釋了萬普尼克為什麼一直對“解釋”這麼警惕。他見過真正的結構長什麼樣，所以對仿製品格外敏感。

## 他留下的兩個開放問題

第一個問題：為什麼一位老師比另一位老師好？

這件事跟教育學沒關係。他把這件事拆得很細：老師說的話裡，有些是在重複課本上的內容，有些是隨口的評論，有些是他自己對這門學問的哲學。到底哪一部分起了作用？如果一位老師只會說“像鴨子一樣跳”，他提供的資訊量是零。如果他說“像鴨子一樣遊”，資訊量可能很大。判斷這兩者的差別，就是判斷謂詞的好壞。而判斷謂詞的好壞，就是智慧本身。

> 人們甚至還沒開始理解智慧。要理解智慧，第一件事是理解老師到底做了什麼。（萬普尼克）

第二個問題，就是開頭那道題。他自己給了思路：給數字加上對稱性的謂詞，水平對稱、垂直對稱、對角對稱，還可以有別的東西，比如整幅圖的明暗程度。這些謂詞一層層往上加，可容許集一層層縮小，需要的樣本數量就一層層下降。

Lex 反問了一個很實在的問題：要區分 2 和 3，我好像得先有十幾年的童年。跟小孩玩、上學、被父母吼、走路、跳、看鴨子，然後才能生成正確的謂詞。

萬普尼克說了一句很硬的話：“我很確定，你必須知道一些比數字更多的東西。”

> 也許是幾種描述語言，也就是數字的組成元素。我在說對稱性，說幾何性質，說一些抽象的東西。我還不知道那是什麼。這就是智慧問題。（萬普尼克）

所以他把整個領域切成了兩半。一半是統計的，只要你把謂詞交給我，我就能用很少的樣本把活幹完，這部分已經準備好了。另一半是造謂詞的，沒有人知道怎麼做，甚至沒有人正式把它當成一個問題提出來。

過去十年，整個行業把資源幾乎全壓在前一半上。後一半被叫做“特徵工程”，然後被大規模預訓練和 Scaling Law 糊過去了。萬普尼克在 2018 年說這件事的時候，語氣是有點孤獨的。

## 可以立刻用起來的幾件事

- 模型效果不好時，先別急著加資料。問一句：這個問題裡有什麼不變數？對稱性、守恆量、單調性、某種等價關係，任何能砍掉一半候選假設的東西，都比十萬條新樣本值錢。
- 把自己的任務寫清楚：你要的是規則，還是條件機率？要規則就去做分類器，要理解就去建模分佈。這兩個答案指向完全不同的技術路線，混著做是最常見的失敗來源。
- 用一個具體的標準檢驗你的特徵：這個特徵能不能讓候選假設集顯著變小？如果不能，它就是在說“跳起來像鴨子”，語法正確，資訊量為零。
- 每寫一段對模型行為的解釋，回頭檢查一次：這是觀察，還是故事？列文虎克看見了紅細胞，這件事是真的；國王和王后打仗，那是他編的。
- 評估系統時，最壞情況和最好情況都能量化，中間那段不能。別拿邊界上的漂亮數字去承諾平均表現，那一段只能靠統計，統計需要樣本，樣本要花錢。
- 遇到一個熱門概念，做一次翻譯練習：把所有解釋性的詞去掉，剩下的數學是什麼？如果剩下的是“分段線性函式”，那就用分段線性函式的語言去討論它。
- 找一件你長期做錯的事，像萬普尼克說的那樣，一遍又一遍地回去。對自己誠實的意思是：不給自己編一個聽起來合理的解釋就收工。
