微軟論文意外「走光」,OpenAI參數全洩密! GPT-4o僅200B,o1 300B

新智元【新智元導讀】穿越重重迷霧,OpenAI模型參數終被揭開!一份來自微軟華盛頓大學醫療論文,意外曝光了GPT-4、GPT-4o、o1系列模型參數。讓所有人震驚不已的是,GPT-4o mini僅8B。

誰能想到,微軟在一篇醫學領域的論文裡,竟然把OpenAI模型的參數全「曝光」了!

  • GPT-4參數約1.76兆
  • GPT-4o參數約2000億
  • GPT-4o mini參數約80億
  • o1-preview參數約3000億
  • o1-mini參數約1000億
  • Claude 3.5 Sonnet參數約1750億

研究者:參數均為估算值

讓所有人難以置信的是,GPT-4o系列的參數如此少,mini版甚至只有8B。


有網友猜測,4o mini是一個大約有40B參數的MoE模型,其中活化參數為8B。

因為,他發現4o mini明顯比8B模型學到了更多的知識,同時間運行速度很快。

另外,由於GPT-4o是MoE架構,所以OpenAI可能在mini版本上使用了相同的架構。


另有網友驚訝地表示,Claude 3.5 Sonnet參數竟等同於GPT-3 davinci。


這篇來自微軟、華盛頓大學團隊的論文中,發布了一個具有里程碑意義的評估基準——MEDEC1,專為臨床筆記醫療錯誤檢測和糾正而設計。


論文網址:https://arxiv.org/abs/2412.19260

這項基準涵蓋了五種類型的錯誤,包括診斷、管理、治療、藥物治療和致病因子。

MEDEC的資料來源,收集了來自3家美國醫院系統的488篇臨床筆記,總計3,848篇臨床文本。

值得一提的是,這些數據先前從未被任何LLM接觸過,能夠確保評估真實性可靠性。目前,該資料集已被用於MEDIQA-CORR共享任務,以評估17個參與系統的表現。


在得到資料集MEDEC後,研究團隊對目前最先進的模型,包括o1-preview、GPT-4、Claude 3.5 Sonnet、Gemini 2.0 Flash等,在醫療錯誤檢測和糾正任務中進行了全面測試。

同時,他們也邀請了兩位專業醫師進行相同的錯誤檢測任務,最終將AI與人類醫師結果進行PK。

結果發現,最新LLM在醫療錯誤檢測和糾正方面表現不俗,但與人類醫生相比,AI還是有著明顯的差距。

這也從側面印證了,MEDEC是一個具有充分挑戰性的評估基準。



論文講了什麼?

來自美國醫療機構的一項調查研究顯示,每5位閱讀臨床筆記的患者中,就有一位報告發現了錯誤。

其中40%的患者認為這些錯誤是嚴重的,最常見的錯誤類別與目前或過去的診斷有關。


同時,如今越來越多的醫學文件任務(例如,臨床筆記產生)都是由LLM去完成。

然而,將LLM用於醫學文件任務的主要挑戰之一,容易產生「幻覺」,輸出一些虛構內容或錯誤訊息,直接影響了臨床決策。

畢竟,醫療無小事,一字之差可能關乎生死。

為了降低這些風險,並確保LLM在醫學內容產生中的安全性,嚴格的驗證方法至關重要。這種驗證需要相關的基準來評估是否可以透過驗證模型實現完全自動化。

在驗證過程中,一個關鍵任務是,檢測和糾正臨床文本中的醫學錯誤。

站在人類醫生的角度來考慮,識別和糾正這些錯誤不僅需要醫學專業知識和領域背景,有時還需要豐富的經驗。

而此前,大多數關於(常識性)錯誤檢測的研究都集中在通用領域。

為此,微軟華盛頓大學團隊引入了全新資料集——MEDEC,並對不同的領先的LLM(例如,Claude 3.5 Sonnet、o1-preview和Gemini 2.0 Flash)進行了實驗。

作者稱,「據我們所知,這是首個公開可用的臨床筆記中自動錯誤檢測和糾正的基準和研究」。


MEDEC資料集

MEDEC資料集一共包含了3,848篇來自不同醫學專業領域的臨床文本的新資料集,標註任務由8位醫學標註員完成。

如前所述,該資料集涵蓋了五種類型的錯誤,具體包括:

  • 診斷(Diagnosis):提供的診斷不準確
  • 管理(Management):提供的管理下一步不準確
  • 藥物治療(Pharmacotherapy):建議的藥物治療不準確
  • 治療(Treatment):建議的治療方案不準確
  • 致病因子(Causal Organism):指出的致病生物或致病病原體不準確

(註:這些錯誤類型是在分析醫學委員會考試中最常見的問題類型後選定的。)

上圖1展示了,MEDEC資料集中的範例。每篇臨床文本要么是正確的,要么包含一個透過以下兩種方法之一創建的錯誤:方法#1(MS)和方法#2(UW)。


資料創建方法#1(MS)

在此方法中,作者利用了MedQA集合中的醫學委員會考試題目。

4位具有醫學背景的標註員參考這些考試中的醫學敘述和多項選擇題,在核對原始問題和答案後,將錯誤答案注入場景文本中,並排除包含錯誤或資訊模糊的問答對。

醫學標註員遵循以下準則:

  • 使用醫學敘述多項選擇題,將錯誤答案注入場景文字中,並建立​​兩個版本,分別將錯誤注入文字的中間或結尾。
  • 使用醫學敘述多項選擇題,將正確答案注入場景文字中,以產生正確版本,如圖2所示(包含正確答案的生成文字)。
  • 手動檢查自動生成的文字是否忠實於原始場景及其包含的答案。

最終,研究人員從兩個不同的場景(錯誤注入文字中間或末尾)中,隨機為每篇筆記選擇一個正確版本和一個錯誤版本,建立了最終資料集。


資料創建方法#2(UW)

這裡,作者使用了華盛頓大學(UW)三家醫院系統(Harborview Medical Center、UW Medical Center 和Seattle Cancer Care Alliance)從2009年-2021年間的真實臨床筆記資料庫。

研究人員從中17,453筆診斷支持記錄中,隨機選取了488條,這些記錄總結了患者的病情並提供了治療依據。

4名醫學生組成的團隊手動向其中244筆記錄中引入了錯誤。

在初始階段,每筆記錄都標註了若干候選實體,這些實體由QuickUMLS 4識別為統一醫學語言系統(UMLS)的概念。

標註員可以從這些候選實體中選擇一個簡潔的醫學實體,或建立一個新的文字片段(span)。隨後,該片段被標記為五種錯誤類型之一。

接著,標註員用類似但不同的概念替換該片段,錯誤版本由標註員自行設計或透過基於SNOMED和LLM的方法產生。這種方法向標註員建議替代概念,但不依賴輸入文字。醫學標註員手動確定最終注入文本中的概念或錯誤。

在此過程中,每個錯誤片段必須與臨床筆記中的至少兩個其他部分相矛盾,同時標註員需為每個引入的錯誤提供合理的解釋。

作者使用了Philter5工具對注入錯誤後的臨床筆記進行自動去識別化處理。

隨後,每筆筆記由2名標註員獨立審查以確保去識別化的準確性。對於任何分歧,由第3名標註員進行裁定。

下表1展示了訓練集、驗證集和測試集的劃分情況。其中,MS訓練集包含2,189篇臨床文本,MS驗證集包含574篇臨床文本,UW驗證集包含160篇臨床文本。

MEDEC測試集由MS集合的597篇臨床文本和UW資料集的328篇臨床文本組成。測試集中,51.3%的筆記包含錯誤,而48.7%的筆記是正確的。


下圖3展示了資料集中錯誤類型的分佈(診斷、管理、治療、藥物治療和致病因子)。


醫療錯誤偵測與糾正方法

為了評估模型在醫療錯誤檢測與修正任務中的表現,作者將過程分為三個子任務:

  • 子任務A:預測錯誤標誌(0:如果文字沒有錯誤;1:如果文字包含錯誤)
  • 子任務B:提取包含錯誤的句子,用於已標記錯誤的文字(-1:如果文字沒有錯誤;句子ID:如果文字包含錯誤)
  • 子任務C:為包含錯誤的標記文字產生修正後的句子(NA:如果文字沒有錯誤;產生的句子/修正內容:如果文字有錯誤)

為了進行比較,他們基於LLM建立了解決方案,使用了兩種不同的提示詞來產生所需的輸出,以評估模型在這三個子任務中的表現:


  • 提示詞#1:

以下是關於一名患者的醫療敘述。你是一名熟練的醫生,正在審查這些臨床文本。文字要么是正確的,要么包含一個錯誤。文本中每行是一句話。每行以句子ID開頭,後面跟著一個垂直線符號,然後是需要檢查的句子。檢查文字中的每一句話。如果文字正確,則傳回以下輸出:CORRECT。如果文字中存在與治療、管理、病因或診斷相關的醫療錯誤,則傳回包含錯誤的句子ID,後面接著一個空格,然後是修正後的句子。發現並修正錯誤需要用到醫學知識與推理能力。


  • 提示詞#2:與第一個提示詞類似,但包含一個從訓練集中隨機選取的輸入和輸出範例:

以下是一個範例。

0 一名35歲的女性向她的醫生訴說手部疼痛和僵硬。 1 她說,疼痛始於6週前,在她克服了一次輕微的上呼吸道感染幾天后開始。 (……) 9 雙手的雙側X光顯示左手第五掌指關節周圍輕微的關節周圍骨質減少。 10 給予甲胺蝶呤。

在這個例子中,錯誤出現在句子編號10:「給予甲胺蝶呤」。修正為:「給予潑尼松」。輸出為:10 1 Prednisone is given。範例結束。

實驗與結果

語言模型

研究人員對幾種近期的語言模型進行了實驗:

  1. Phi-3-7B:具有70億參數的小語言模型(SLM)。
  2. Claude 3.5 Sonnet(2024-10-22):Claude 3.5系列的最新模型(≈1750億參數),在多個編碼、視覺和推理任務中展現出了SOTA的表現。
  3. Gemini 2.0 Flash:最新/最先進的Gemini模型。其他Google模型(如專為醫療設計的Med-PaLM,5,400億參數)尚未公開。
  4. ChatGPT(≈1750億參數)和GPT-4(≈1.76兆參數),是「高智慧」模型。
  5. GPT-4o(≈2000億參數),提供“GPT-4級別的智能但速度更快”,以及專注於特定任務的小模型GPT-4o-mini (gpt-4o-2024-05-13)(≈ 80億參數)。
  6. 最新的o1-mini(o1-mini-2024-09-12)(≈1000億參數)和o1-preview(o1-preview-2024-09-12)(≈3000億參數),具備「全新AI能力」 ,可處理複雜推理任務。

值得注意的是,大多數模型的參數量為估算值,主要用來幫助理解模型表現。少數模型(如Phi-3和Claude)需要進行少量自動後處理來修正格式問題。


結果

下表2展示了,由醫療醫生手動標註的結果以及使用上述兩個提示詞的多個最新LLM的結果。

在錯誤標誌(error flag)檢測方面,Claude 3.5 Sonnet以70.16%的準確率優於其他方法,在錯誤句子檢測中更是達到了65.62%的準確率。

o1-mini在錯誤標誌偵測中,拿下了第二高的準確率69.08%。

在錯誤糾正方面,o1-preview以0.698的綜合評分(Aggregate Score)獲得了最佳表現,遠超第二名GPT-4 [P#2] 的0.639。

下表3展示了,在每個資料集(MEDEC-MS和MEDEC-UW)上的錯誤偵測準確率和錯誤修正評分。其中,MS子集對Claude 3.5 Sonnet和醫生#2來說更具挑戰性,而UW子集對o1-preview和醫生#1來說更具挑戰性。

結果表明,與醫生的評分相比,最新的LLM在錯誤檢測和糾正方面表現良好,但在這些任務中仍然不如人類醫生。

這可能是因為,這類錯誤偵測和修正任務在網路和醫學教科書中相對罕見,也就是,LLM在預訓練中遇到相關數據的可能性較低。

這一點可以從o1-preview的結果中看出,該模型在基於公開臨床文本構建的MS子集上的錯誤和句子檢測中分別取得了73%和69%的準確率,而在私有的UW集合上僅取得了58%和48%的準確率。

另一個因素是,任務需要分析和修正現有的非LLM產生的文本,這可能比從0開始起草新答案的難度更高。


下表4展示的則是,每種錯誤類型(診斷、管理、治療、藥物治療和病因微生物)的錯誤檢測召回率和錯誤糾正評分。

可以看到,o1-preview在錯誤標誌和句子檢測中,召回率顯著高於Claude 3.5 Sonnet和兩位醫生。但在結合準確率結果(見表2)之後發現,醫師在準確率上表現較佳。

這些結果表明,模型在精確度方面存在顯著問題,與醫生相比,AI在許多情況下都過度預測了錯誤的存在(即產生了幻覺)。


另外,結果也顯示,分類效能與錯誤修正生成效能之間存在排名差異。

例如,在所有模型中,Claude 3.5 Sonnet在錯誤標誌和句子偵測的準確率上排名第一,但在修正生成分數中排名最後(見表2)。

此外,o1-preview在所有LLM中的錯誤檢測準確率排名第四,但在糾正生成中排名第一且遙遙領先。同樣的模式也可以在兩位醫療醫師之間觀察到。

上述現象,可以透過糾正生成任務的難度來解釋,同時也可能反映了目前SOTA的文本生成評估指標在捕捉醫學文本中的同義詞和相似性方面的局限性。

表5展示了參考文本、醫生標註以及由Claude 3.5 Sonnet和GPT模型自動產生的糾正範例。

例如,第二個例子的參考修正顯示患者被診斷為Bruton無丙種球蛋白血症,而LLM提供的正確答案提到了X-連鎖無丙種球蛋白血症(該罕見遺傳疾病的同義詞)。

此外,一些LLM(如Claude)提供了更長的答案/糾正,並附上了更多解釋。類似的現像也出現在醫生的標註中,其中醫生#1提供的修正比醫生#2更長,而兩位醫生在某些示例/案例中存在不同意見,這反映了由不同醫生/專家撰寫的臨床筆記在風格和內容上的差異。

關於醫療錯誤檢測和糾正的相關研究下一步,還需要在提示詞中引入更多範例並進行範例優化。(新智元)