「數學菜雞」ChatGPT很懂人類喜好!在線生成隨機數,竟是宇宙終極答案
ChatGPT可能是一位廢話藝術家、錯誤信息的傳播者,但它不是「數學家」!
近日,一位Meta的數據科學家Colin Fraser發現,ChatGPT并不能生成真正的隨機數,而更像是「人類的隨機數」。
通過實驗,Fraser得出的結論是:「ChatGPT非常喜歡數字42和7。」
網友表示,意味著人類非常喜歡這些數字。
ChatGPT也愛「宇宙終極答案」
在他的測試中,Fraser輸入的prompt如下:
「Pick a random number between 1 and 100. Just return the number; Don't include any other text or punctuation in the response。」
通過讓ChatGPT每次生成一個介于1到100之間的隨機數字,Fraser收集了2000個不同的答案,并將其匯總成一張表。
可以看到,42這個數字出現頻率最高,高達10%。另外,含有7的數字出現頻率也是非常高。
尤其是71-79之間數字頻率更高。在這個范圍之外的數字中,7也經常作為第二位數字經常出現。
42為何意?
看過Douglas Adams轟動一時的科幻小說《銀河系漫游指南》都知道,42是「生命、宇宙以及任何事情的終極答案」。
簡單來講,42和69在網上是一個meme數字。這表明ChatGPT實際上并不是一個隨機數生成器,只是從網上收集的龐大數據集中選擇了生活中流行的數字。
另外,7頻繁地出現,恰恰反映了ChatGPT迎合了人類的喜好。
在西方文化中,7普遍被視為幸運數字,有Lucky 7的說法。就像我們對數字8迷戀一樣。
有趣的是,Fraser還發現,GPT-4似乎補償了這一點。
當要求GPT-4提供更多的數字時,它返回的隨機數在分布上過于均勻。
總之,ChatGPT基本上是通過預測給出回應,而不是真正去「思考」得出一個答案。
可見,一個被吹捧為幾乎無所不能的聊天機器人還是有點傻。
讓它為你計劃一次公路旅行,它會讓你在一個根本不存在的小鎮停下來。或者,讓它輸出一個隨機數,很有可能會根據一個流行的meme做決定。
有網友親自嘗試了一番,發現GPT-4確實喜歡42。
如果ChatGPT最終只是重復網上的陳詞濫調,那還有什么意義呢?
GPT-4,違反機器學習規則
GPT-4的誕生讓人興奮,但也讓人失望。
OpenAI不僅沒有發布關于GPT-4更多信息,甚至沒有透露模型的大小,但重點強調了它許多專業和標準化考試中表現碾壓人類。
以美國BAR律師執照統考為例,GPT3.5可以達到10%水平,GPT4可以達到90%水平。
然而,普林斯頓大學計算機科學系教授Arvind Narayanan和博士生Sayash Kapoor發文稱,
OpenAI可能已經在訓練數據上進行了測試。此外,人類的基準對聊天機器人來說毫無意義。
具體來說,OpenAI可能違反了機器學習的基本規則:不要在訓練數據上進行測試。要知道,測試數據和訓練數據是要分開的,否則會出現過擬合的問題。
拋開這個問題,還有一個更大的問題。
語言模型解決問題的方式與人類不同,因此這些結果對于一個機器人在面對專業人士面臨的現實問題時的表現意義不大。律師的工作并非整天回答律師資格考試的問題。
問題1:訓練數據污染
為了評估GPT-4的編程能力,OpenAI在俄羅斯編程比賽的網站Codeforces上進行了評估。
令人驚訝的是,Horace He在網上指出,在簡單分類中,GPT-4解決了10個2021年之前的問題,但是在最近的10個問題中沒有一個得到解決。
GPT-4的訓練數據截止時間是2021年9月。
這強烈暗示該模型能夠記憶其訓練集中的解決方案,或者至少部分記憶它們,足以填補它無法回憶起的內容。
為了給這個假設提供進一步證據,Arvind Narayanan在2021年不同時間的Codeforces比賽問題上對GPT-4進行了測試。
結果發現,GPT-4可以解決在9月5日之前的簡單分類問題,但在9月12日之后的問題中卻沒有一個解決。
事實上,我們可以明確地證明它已經記住了訓練集中的問題:當提示GPT-4一個Codeforces問題的標題時,它會包含一個鏈接,指向該問題出現的確切比賽。值得注意的是,GPT-4無法訪問互聯網,因此只有記憶是唯一的解釋。
GPT-4在訓練截止日期之前記住了Codeforce問題
對于除了編程之外的基準測試,Narayanan教授稱「我們不知道如何以清晰的方式按時間段分離問題,因此認為OpenAI很難避免數據污染。出于同樣原因,我們無法進行實驗來測試性能如何隨日期變化。」
不過,可以從另一面來入手,如果是記憶,那么GPT對問題措辭一定高度敏感。
2月,圣達菲研究所教授Melanie Mitchell舉了一個MBA考試題的例子,稍微改變一些細節的方式就足以欺騙ChatGPT(GPT-3.5),而這種方式對于一個人來講并不會受到欺騙。
類似這樣更為詳細的實驗將會很有價值。
由于OpenAI缺乏透明度,Narayanan教授也不能確定地說就是數據污染問題。但可以確定的是,OpenAI檢測污染的方法是草率的:
「我們使用子字符串匹配方法測量評估數據集和預訓練數據之間的交叉污染。評估和訓練數據都經過處理,刪除所有空格和符號,僅保留字符(包括數字)。對于每個評估示例,我們隨機選擇三個長度為50個字符的子字符串(如果示例長度小于50個字符,則使用整個示例)。如果任何一個采樣的評估子字符串是已處理的訓練示例的子字符串,則認為匹配成功。這樣就可以得到一個受污染的示例列表。我們將這些示例丟棄并重新運行以獲取未受污染的得分。」
這一方法根本經不起考驗。
如果測試問題在訓練集中存在,但名稱和數字已更改,則無法檢測到它。現在有一種更可靠的方法便可使用,比如嵌入距離。
如果OpenAI要使用嵌入距離的方法,那么相似度多少才算過于相似?這個問題沒有客觀答案。
因此,即使是在多項選擇標準化測試上表現看似簡單,也是有很多主觀成分的存在。
問題2:專業考試不是比較人類和機器人能力的有效方法
記憶就像光譜一樣,即使語言模型沒有在訓練集中見過一個確切的問題,由于訓練語料庫的巨大,它不可避免地已經見過許多非常相似的例子。
這意味著,它可以逃避更深層次的推理。因此,基準測試結果并不能為我們提供證據,表明語言模型正在獲得人類考生所需的深入推理技能。
在一些實際的任務中,淺層次的推理GPT-4可能勝任,但并非總是如此。
基準測試已經被廣泛用于大模型比較中,因將多維評估簡化為單個數字而受到許多人的批評。
不幸的是,OpenAI在GPT-4的評估中選擇如此大量使用這些測試,再加上數據污染處理措施不足,是非常讓人遺憾的。