睡一晚就能預測 130 種未來疾病?史丹佛「睡眠基礎模型」登上 Nature Medicine
史丹佛大學團隊打造 SleepFM,用 58.5 萬小時睡眠資料訓練出首個大規模多模態睡眠基礎模型,從一晚的睡眠檢查就能預測死亡、失智症、心臟衰竭等 130 種疾病風險,研究成果發表於 Nature Medicine。


本文整理自史丹佛大學團隊 2026 年 1 月發表於 Nature Medicine 的研究論文。
基礎模型的下一個戰場:你的睡眠
基礎模型(Foundation Model)的概念,這兩年幾乎已經和大型語言模型畫上等號。GPT 讀文字,DALL-E 看圖像,Gemini 處理影片。但如果告訴你,同樣的技術思路已經被用來「讀懂」人類的睡眠,而且讀出來的資訊足以預測你未來會不會得心臟病、失智症、甚至癌症,這聽起來是不是有點科幻?
這不是假設。2026 年 1 月,史丹佛大學的 James Zou(生物醫學資料科學教授)和 Emmanuel Mignot(精神與行為科學教授)團隊在 Nature Medicine 發表了一項研究,展示了名為 SleepFM 的多模態睡眠基礎模型。它用超過 58.5 萬小時、來自約 6.5 萬人的多導睡眠圖(Polysomnography, PSG)資料進行訓練,資料量是過去同類研究的 5 到 25 倍。結果顯示,這個模型僅憑一個晚上的睡眠記錄,就能以統計顯著的準確度預測 130 種未來疾病的風險。
這裡需要先解釋一下「多導睡眠圖」是什麼。PSG 是目前評估睡眠的金標準檢查,你可能在睡眠中心做過——頭上貼著腦波感測器、胸口接著心電圖、鼻子夾著呼吸感測器、腿上裝著肌電圖。這些設備會同時記錄腦部活動(EEG)、心臟電訊號(ECG)、肌肉活動(EMG)和呼吸訊號,大約持續一整晚 8 小時。問題在於,過去這些豐富的多模態生理訊號大多只被用來判斷幾件事:你的睡眠分期正不正常、有沒有睡眠呼吸中止症。絕大部分的資訊都被浪費了。SleepFM 的核心突破,正是用自監督學習的方式,讓模型自己從這些海量未標註的生理訊號中學到「睡眠的語言」——而這個思路,直接借鑑了大型語言模型的成功經驗。
當 AI 學會「閱讀」睡眠:從語言模型到生理訊號模型
要理解 SleepFM 為什麼有趣,得先看它和大型語言模型之間那個精妙的類比。GPT 的訓練邏輯是:把大量未標註的文字丟給模型,讓它透過預測下一個 token 來學習語言的結構和語義。訓練完成後,模型就掌握了一種通用的「語言理解能力」,可以被微調來做翻譯、摘要、問答等各種下游任務。SleepFM 做的事情本質上一模一樣,只是它讀的不是文字,而是腦波、心電圖、肌電圖和呼吸波形。
具體來說,SleepFM 把一整晚的 PSG 記錄切成一段一段 5 秒鐘的片段,每一段就是一個「token」。就像語言模型把一篇文章拆成一個一個詞彙來處理一樣,SleepFM 把 8 小時的睡眠拆成大約 5,760 個生理訊號片段。每個片段經過一維卷積網路壓縮成 128 維的嵌入向量,然後用 Transformer 架構來捕捉這些片段之間的時間依賴關係。換句話說,模型在學習的是「生理訊號的文法」——某種腦波模式之後通常會接著什麼樣的心跳節律,深睡期的呼吸模式和 REM 睡眠期有什麼不同,這些跨模態的協作模式構成了一套複雜的「生理語言」。
但 SleepFM 和語言模型有一個關鍵差異:它的預訓練目標不是「預測下一個 token」,而是用對比學習來對齊不同模態的訊號。這裡用的是一種叫做「留一法對比學習」(Leave-One-Out Contrastive Learning, LOO-CL)的新方法。概念上很直覺:對於同一個 5 分鐘時間窗口內的四種模態訊號,模型要學會讓它們在潛在空間中彼此靠近,同時推開來自不同時間窗口的訊號。LOO-CL 的巧妙之處在於,每次會拿掉一種模態,讓剩下三種模態的平均嵌入來對齊被拿掉的那一種。這有點像是告訴模型:「如果你同時聽到這個人的心跳、呼吸和肌肉活動,你能猜出他的腦波長什麼樣子嗎?」透過這種跨模態預測的訓練,模型學會了不同生理系統之間的深層關聯。
這個設計還解決了一個實際問題:不同醫院、不同時期的 PSG 設備差異極大。有的機器記錄 10 個腦波通道,有的只記錄 3 個;有的有完整的呼吸感測,有的只有部分。傳統的深度學習模型需要固定的輸入格式,遇到通道不一致的資料就得放棄。研究團隊為此設計了「通道無關」(channel-agnostic)的架構,用注意力機制的池化層把同一模態內不管多少個通道的資訊整合成固定維度的輸出。這也是為什麼 SleepFM 能夠吃下五個不同來源、設備配置各異的資料集,而過去的睡眠 AI 研究通常只用 2,500 到 15,000 筆記錄。
讓人印象深刻的是,整個模型只有約 440 萬個參數,預訓練在一張 NVIDIA A100 GPU 上只花了約 15 小時。和動輒數十億參數、訓練數月的語言模型相比,這幾乎是微不足道的。但這恰好說明了一件事:基礎模型的威力不在於參數量本身,而在於「大規模自監督預訓練 + 輕量微調」這個範式。在特定的垂直領域,你不需要追求 GPT 的規模,只要方法論對了,440 萬參數就能從睡眠中讀出未來的疾病風險。
130 種疾病:從一晚睡眠看見未來的健康風險
模型訓練完成後,研究團隊做了一件過去睡眠研究從未做過的事:把 PSG 資料和電子病歷串接起來,系統性地檢驗睡眠訊號對 1,041 種疾病的預測能力。這個設計的靈感來自基因體學的「全表型關聯研究」(PheWAS),但把基因型換成了睡眠表型。過去的睡眠研究總是聚焦在特定疾病——比如睡眠呼吸中止和心血管疾病的關聯、失眠和憂鬱症的關聯——而 SleepFM 第一次用同一個模型,一口氣掃描了超過一千種疾病的關聯。
為了避免模型只是在抓取睡眠當下就已經存在的疾病訊號,研究設計了嚴格的排除條件:只有在睡眠檢查 7 天之後才首次出現的疾病診斷碼,才被算作陽性案例。換句話說,模型要預測的是「未來」的疾病,不是「現在」的。疾病預測的時間範圍設定為 6 年——也就是說,模型在判斷的是你做完睡眠檢查後的 6 年內,會不會發生某種疾病。
結果相當驚人。在保留的測試集(5,019 名受試者)上,有 130 種疾病的 C-Index 達到 0.75 以上,且通過了嚴格的多重比較校正(Bonferroni 校正 P < 0.01)。C-Index 是衡量風險排序準確度的指標,1 代表完美預測、0.5 代表隨機猜測。幾個關鍵疾病的表現特別值得注意:全因死亡率達到 0.84,意味著模型在 84% 的成對比較中能正確判斷誰的風險比較高。失智症達到 0.85,心肌梗塞 0.81,心臟衰竭 0.80,慢性腎臟病 0.79,中風和心房顫動都是 0.78。對於神經退化性疾病,表現更為突出——阿茲海默症的 C-Index 高達 0.91,帕金森氏症 0.89。
這些數字放在臨床預測模型的脈絡下是什麼水準?過去用海馬迴 MRI 影像預測失智症的研究報告 C-Index 約 0.86,用功能性 MRI 預測失智症的 AUROC 約 0.82。SleepFM 用的不是昂貴的腦部影像,只是一晚的睡眠記錄,就達到了可比擬甚至更好的準確度。當然,這裡需要謹慎:不同研究的受試者群體和疾病定義不完全相同,直接比較數字有其侷限。但至少可以說,睡眠作為一種疾病預測的生物標記,其潛力被嚴重低估了。
更有趣的是,模型展現出不同訊號模態對不同疾病類別的「專業分工」。腦波訊號對預測精神和神經疾病最強,這符合直覺——阿茲海默症和帕金森氏症都有已知的睡眠腦波異常特徵,比如慢波活動減少、紡錘波異常、REM 睡眠行為障礙。呼吸訊號對代謝和呼吸疾病預測最準,心電訊號對循環系統疾病最有資訊量。但把所有模態結合在一起時,整體表現最好。這反映了一個深刻的醫學洞見:睡眠不是某個器官的獨立活動,而是全身系統的綜合表現。你的腦、心、肺在睡眠時的協作模式,編碼了大量遠超「睡得好不好」的健康資訊。
遷移到從未見過的資料集:基礎模型的真正價值
基礎模型的價值,不只在於它在原始資料集上的表現,更在於遷移能力——也就是說,拿到一個從未見過的新場景,不需要重新大規模訓練,只要輕量微調就能用。這正是 GPT 改變 NLP 領域的核心原因,也是 SleepFM 需要證明的關鍵能力。
研究團隊特別保留了「睡眠心臟健康研究」(Sleep Heart Health Study, SHHS)這個多中心資料集——完全沒有用在預訓練階段——來測試遷移學習能力。SHHS 收錄了 6,441 名 40 歲以上成人的資料,收集的醫院、設備和操作流程都和訓練資料不同。研究團隊只用了 3,291 筆記錄做微調,然後在 2,000 筆記錄上測試。結果仍然穩健:中風的 C-Index 為 0.81、充血性心臟衰竭 0.83、心血管疾病死亡 0.86,全部通過統計顯著性檢驗。這證明了 SleepFM 學到的不是某個特定醫院或設備的「怪癖」,而是具有普遍性的生理特徵。
另一個重要的驗證是時間泛化。研究團隊把 2020 年以後的史丹佛病人資料作為獨立測試集,而所有的訓練和預訓練都是用 2020 年以前的資料完成的。即使跨越了時間分布的變化——包括 COVID-19 疫情對就醫模式和患者結構的影響——模型對死亡(C-Index 0.83)、心臟衰竭(0.80)、失智症(0.83)的預測依然穩定。臨床 AI 模型最常被批評的問題之一,就是在訓練資料上表現很好、到了真實世界就崩潰。SleepFM 在時間和地點兩個維度上都展現了合理的穩健性,雖然不是完美的,但已經比大多數臨床預測模型要好。
和基線模型的比較同樣有說服力。「人口學基線」只用年齡、性別、BMI 和種族做預測,本身就有不錯的表現——畢竟很多疾病和年齡高度相關。但 SleepFM 在 14 個重點疾病中的 12 個,AUROC 都超過人口學基線至少 5 個百分點。更關鍵的是和「端到端 PSG 模型」的比較:這個基線模型使用完全相同的架構和參數量,也吃同樣的 PSG 資料和人口學特徵,唯一的差別是沒有經過自監督預訓練就直接從頭訓練。SleepFM 在幾乎所有疾病類別上都顯著勝出。這直接證明了:不是模型架構的功勞,也不是資料量的功勞,而是「預訓練」這個步驟本身帶來的表徵品質提升。
資料效率的表現也值得一提。在 SHHS 資料集上,SleepFM 用 10% 的微調資料(約 330 筆記錄),在多數疾病上就能打敗用 50% 資料訓練的基線模型。這對臨床應用的意義重大。在醫學領域,有專家標註的資料永遠是稀缺資源,如果一個模型只需要少量標註就能達到好的表現,它的實用門檻就大幅降低了。
我的觀察:當身體變成「語料庫」
這篇研究的直接侷限,作者自己講得很清楚:資料來自就醫做睡眠檢查的患者,存在選擇偏差——會去做 PSG 的人通常已經有睡眠問題或其他醫療需求,這不能代表一般人群。模型對某些疾病的預測力可能部分來自這種偏差,而非純粹的生理訊號。此外,PSG 需要在睡眠中心過夜,設備複雜,不是一個可以大規模普及的篩檢工具。
但我認為更值得關注的是這篇研究所暗示的方向。當我們說 ChatGPT「理解語言」的時候,它其實不知道什麼叫做語言——它只是從大量的文字序列中學到了統計規律。SleepFM 做的事情本質上相同:它不「理解」生理學,但它從 58.5 萬小時的生理訊號序列中,學到了足以預測未來疾病的統計規律。這暗示了一個深刻的可能性——人體的生理訊號,和人類的自然語言一樣,可能存在著某種可以被大規模統計學習捕捉的「語法」。
如果這個類比成立,那接下來的發展就非常值得期待。PSG 是醫院等級的設備,但 Apple Watch、Oura Ring、Whoop 這些穿戴裝置已經能記錄心率、血氧、呼吸頻率和加速度。雖然訊號品質和 PSG 有落差,但資料量可以大上千倍——你每天晚上都在「做檢查」,而且是在真實的居家環境中,不是在睡眠中心那個被電線纏滿的不自然狀態。如果 SleepFM 的方法論能被遷移到消費級穿戴裝置的資料上,你的手錶每天早上可能不只告訴你「昨晚睡了 7 小時 23 分」,而是告訴你「你的心血管風險指數連續三週在上升,建議就醫檢查」。論文作者在結論中也明確提到了這個方向。
往更大的圖景看,SleepFM 證明的是一件比睡眠醫學本身更重要的事:「大規模自監督預訓練 + 輕量微調」這個改變了 NLP 和電腦視覺的範式,可以被有效地移植到臨床生理訊號上。睡眠只是第一個突破口。連續心電圖、穿戴式腦波、連續血糖監測——這些持續產生的生理時間序列資料,每一種都有可能產生自己的「基礎模型」。想像一下,如果你的手錶、血糖貼片和腦波耳機的資料,全部被整合進一個多模態生理基礎模型,那等於你身上隨時在運行一個 AI 醫生,不間斷地監測你的健康趨勢。
我們每個人每天花三分之一的時間在睡覺,而這三分之一的時間裡,身體其實一直在「說話」——用腦波、心跳、呼吸和肌肉活動編織出一套複雜的生理敘事。過去我們聽不懂,只能讓睡眠技師花好幾個小時人工判讀分期。現在 AI 不只聽懂了這些訊號,還從中讀出了連專家都沒想到要去找的疾病線索。這大概是「基礎模型」這個概念最讓人興奮的地方:當你把 GPT 的思路用在一個全新的領域,你往往會發現那個領域裡藏著遠比預期更多的資訊。