陳凌云 姚寬達 王 茜 方 安 李 剛
(1中國醫學科學院/北京協和醫學院醫學信息研究所 北京100020 2中國農業銀行 北京100005)
自2022年11月,ChatGPT迅速成為現象級焦點,引發市場廣泛關注,掀起新一輪人工智能浪潮。推出僅兩個多月,ChatGPT全球用戶已突破1億,成為歷史上用戶增長速度最快的應用程序。
ChatGPT是一種基于語言模型的人工智能系統,由開放人工智能(OpenAI)公司開發,是GPT系列模型的一部分,旨在進行對話式交互。ChatGPT經過大規模預訓練,可以理解和生成自然語言文本,能夠與用戶對話,并根據上下文生成連貫的回復。可被用于提供智能客服、虛擬助手、在線聊天等場景,為用戶提供實時的問題解答和交流服務。ChatGPT在自然語言處理領域具有廣泛的應用前景,可以幫助人們更方便地與計算機交流和獲取信息。
ChatGPT引入基于人類反饋的強化學習模型,并使用高質量大數據,特別是其訓練流程與理論模型在學術界引起極大關注[1],在需要算法與技術、組織與檢索、人機智能交互[2]與協同支持的醫學領域產生了范式轉換、方法創新的巨大影響[3]。其預訓練監督、自動評估以及強化學習近端策略優化(proximal policy optimization,PPO)模型3個層次技術創新,在醫學信息研究應用方面具有重要意義,能夠在醫療大數據臨床文本處理和知識發現、醫學文獻知識提取、優化醫學問診、改善醫患交流和溝通,以及在醫院管理和科研中提供決策支持和數據分析。
自2018年GPT被OpenAI[4]公司開發以來,經歷神經網絡、深度學習,以及Transformer模型等多種模型迭代累積,逐步完善與成熟[5],見圖1。

圖1 GPT迭代對比
GPT-1是GPT系列第1個版本,使用12個Transformer編碼器,采用自回歸語言模型,創新性地將語境信息編碼為隱藏向量,在此基礎上生成任務[6]。GPT-2是GPT系列的第2個版本,于2019年發布,具有更多參數和更多層網絡結構,使用48個Transformer編碼器和1.5億個參數,進一步使用無監督預訓練方法,自動學習語言規律和特征,獲得更強的語言泛化生成能力[7]。GPT-3是GPT系列第3個版本,于2020年發布,使用1 750億個參數,采取零樣本和多樣本學習方法,甚至在沒有樣本的情況下生成解決方案,具有較強對話交互能力,并在對話中實現邏輯推斷,獲得生成連貫和富有邏輯性的語言能力[8]。
2022年ChatGPT繼續基于Transformer模型架構,在微軟Azure AI超級計算基礎設施上訓練,吸收GPT-1、GPT-2、GPT-3模型經驗,參數由億級迭代至千億級,使用人類反饋的強化學習模型,應用強化學習PPO模型,成功實現多問題提示、動態交互的大規模預訓練語言能力[9]。
GPT模型系列從GPT-1到ChatGPT,其算法區別體現在:GPT-1采用單向Transformer模型,利用自回歸方式預訓練和生成。GPT-2引入更大模型規模和參數量,采用更多層Transformer模型,提升生成能力和語言表達連貫性。GPT-3進一步增加模型的規模和參數量,引入零樣本和小樣本學習概念,展現更強的通用性和泛化能力。ChatGPT是基于GPT-3.5架構訓練的版本,具備更強的語言理解和生成能力,但具體算法細節并未公開。應用方面區別體現在:GPT-1主要應用于生成文本、回答問題和完成填空題等自然語言處理任務。GPT-2在生成任務方面取得顯著進展,可用于生成新聞、故事、代碼和對話等任務。GPT-3具備較強的通用性和泛化能力,可適應多個自然語言處理任務,包括翻譯、問答、摘要生成、對話交互等。ChatGPT作為語言模型,可被應用于回答問題、生成文本、提供建議等任務,但其基于已有數據進行訓練。
近期,OpenAI公司公布GPT-4模型[9],繼續優化大規模預訓練模型,支持圖文混合輸入,實現更準確、更真實的機器翻譯、自然語言輸出等能力,表現出專業和學術方面與人類基本相同的能力。
ChatGPT采用多種模式疊加的方法。其中,對比預訓練是指預訓練多個模型,并將其結果對比和融合。通過對比預訓練,ChatGPT能夠獲得更全面和多樣化的語言表達能力。ChatGPT還進行多種微調,包括人工加工數據微調、指令微調和代碼數據微調。這些微調過程可以提高ChatGPT在特定領域或任務中的性能表現,使其更適用于醫學信息應用等特定場景。人工加工數據微調是指利用人工標注或編輯的數據微調,以增強ChatGPT在特定領域的理解和表達能力。指令微調是通過針對特定任務或指令的訓練樣本微調,使ChatGPT能夠更好地理解和遵循給定的指令。代碼數據微調是指使用編程代碼相關的數據微調,使ChatGPT能夠更好地理解和生成與編程相關的內容。
ChatGPT 由GPT-3.5模型提供支持,采用“人類反饋強化學習”訓練方式,包括人類提問機器回答、機器提問人類回答,不斷迭代和反饋,模型逐漸具有生成答案和相應的評判能力,見圖2[10]。為下一階段醫學研究提供思路和方法。ChatGPT創新主要體現在以下3方面。

圖2 ChatGPT訓練流程
微調預訓練模型是ChatGPT第1層級創新。ChatGPT預訓練模型初始層主要負責提取原始文本中特征,輸出層和附近層級負責生成語言任務,并在模型輸出層添加具體分類器,將生成的響應與真實響應比較和計算打分,調整模型參數,適應特定對話目標。同時,ChatGPT不斷微調學習率和正則化方法,初始階段學習率較大,后續階段逐漸減小,以幫助模型更好地適應對話任務;正則化則分別采用dropout、L1、L2等方法,避免模型過度擬合訓練數據,提高泛化能力,降低模型復雜度[11]。
生成自動獎勵模型、采用自動評估機制是ChatGPT第2層級重要創新。首先,ChatGPT模型對輸出結果進行人工標注排序,舍棄常用的直接打分方法,提升模型的普適性和準確性。其次,獎勵模型對排序結果兩兩組合,計算差值,遍歷所有排序靠前與排序靠后結果的差值,對數處理計算整體值,生成獎勵模型。獎勵模型的損失函數:

(1)
其中rθ(x,y)是獎勵模型對提問信息x和輸出信息y的標量輸出,θ為參數,yw是yw和yl輸出信息對的排序靠前的項,D是比較數據集[12]。
最后,ChatGPT采用梯度下降法最小化損失函數,學習優化策略,生成獎勵模型。據此,采用此自動獎勵函數打分,ChatGPT有效改進預訓練模型,即當原始模型輸出的結果在打分模型中獲得較低分值,或者輸出結果偏離人類認知時,模型將受到懲罰,被要求重新學習。通過不斷循環,初始模型逐漸被迭代升級,逐漸掌握人類偏好,成為人類滿意的模型。
3)現場物資的精準控制和物資采購的精準預測。在工程項目中標之后,借助信息化手段及時建立本工程項目數據管理平臺,將項目的總體進度計劃錄入到該工程項目數據管理平臺中。在工程項目實施中,將物資庫存狀況,記載物資入場、損耗、退庫等詳細內容實時錄入倉庫管理子系統,快捷地統計現場物資狀況并反饋到工程項目數據管理平臺中。工程管理子系統實時追蹤工程項目的進度過程,報告剩余未完成工程和已批復變更;預算管理子系統依據實時更新的物資信息精準預測物資需求。
應用強化學習PPO模型是ChatGPT第3層級關鍵創新。基于上述獎勵模型,ChatGPT獲取預訓練模型輸出結果的分值后,返回強化學習PPO模型,進一步優化微調GPT模型參數。在此階段,強化學習PPO模型為ChatGPT的發展起到極大推動作用。強化學習PPO模型目標函數:

(2)

對于傳統PPO強化學習模型,包含策略、動作空間和獎勵函數等基本要素[13]。策略指基于語言模型,接收prompt提問作為輸入,輸出一系列文本(或文本的概率分布);動作空間是詞表標記的排列組合;傳統PPO模型目標通常包括模型值和“裁剪項”,以獲得穩定輸出結果:
(3)
相比較而言,ChatGPT模型的目標函數是創新性地增加KL懲罰和預訓練梯度兩個部分,成為獎勵函數、模型值與人工值差距,以及特定場景的泛化值3個部分組成的函數,可準確獲得符合人類需求和認知的結果,最重要的是能夠主動適應泛化場景,獲得自主學習能力[14]。
目前,醫學研究主要基于規則、機器學習和深度學習方法進行研究,大都可以歸為有監督學習模型。醫學文獻、病理研究、基因研究等在無監督學習研究方面,已經取得長足進步,取得較好研究成果[15]。但結合ChatGPT訓練流程和模型創新點,基因、文獻、問診平臺建設等將能產生新的研究成果。ChatGPT賦能醫學信息應用可體現在以下兩方面。一是數據加工與語料庫構建。ChatGPT可以用于處理和加工醫學領域大規模數據,包括醫學文獻、臨床數據、病歷信息等,通過ChatGPT的語言理解和生成能力,可以實現對數據的自動化整理、分類和標注,構建更豐富、結構化的醫學語料庫。二是醫學信息或情報智能分析。通過ChatGPT的語義理解和推理能力,可以理解和解析醫學文本、病歷描述等信息,并從中提取關鍵信息、推斷相關關系和趨勢,進而輔助醫學專業人員進行信息檢索、知識發現和決策支持,提供更準確和智能化的醫學信息分析服務。ChatGPT面向醫學信息領域應用的優化方向主要涉及以下3個方面。
OpenAI公司爬蟲數據集超萬億,GPT-3模型擁有多達1 750億個參數,ChatGPT模型參數達數十億級。但是模型參數越大,擬合效果和準確性未必越好。ChatGPT創新性地應用自動獎勵模型,進一步發揮自動校準作用,準確、真實實現語言生成能力。ChatGPT自動獎勵模型也不是一成不變的,而是不斷動態生成的,其本身就是“GPT”模型,隨著ChatGPT預訓練模型的改進,打分獎勵模型也在優化改進。
醫學文獻自動化閱讀與知識提取方向的應用潛力巨大。通過應用ChatGPT等技術,可以實現文獻篩選、知識抽取與整合,疾病診斷與治療指南的自動化,探索新興研究領域,促進學術交流與合作,提高醫學研究效率和質量,為醫學領域帶來巨大的變革和進步。
在醫學研究中,無監督學習模型無法最大成效地發揮作用,原因之一是沒有自動評估機制和自動獎勵模型,不能對初始模型動態校準,更無法對模型參數迭代升級。而ChatGPT模型中的自動獎勵模型為此類研究提供了思路。
進一步看,在醫療大數據臨床文本處理與知識發現研究中,數據準備、文本挖掘、評估反饋等研究都較深入,成果也較豐富,后續可應用ChatGPT自動獎勵模型方法,研究知識發現領域相應的獎勵模型,動態評估文本處理與知識發現研究,進一步提升準確性和自動化。
在生物醫學科技文獻知識對象挖掘中,數據和信息量較大,專業術語較復雜。前期在結合專業術語和語言特征語料庫標注的基礎上,應用ChatGPT自動獎勵模型方法,訓練相應的自動獎勵模型,見圖3,既能提升對醫學文獻評估的準確性,又可以提升專業人員梳理文獻資料的效率。

圖3 訓練生物醫學科技文獻自動獎勵模型流程
現階段,人工智能的研究過程中存在3種不同研究思路。一種是基于人工神經網絡的方法,試圖從結構方面模擬人類智能。另一種是基于物理符號系統的方法,從功能方面模擬人類智能。第3種是基于感知動作系統的方法,試圖從行為方面模擬人類智能[16]。隨著數據信息量不斷增長,未來10年生成式人工智能的能力和需求可能會增長超過1 000倍,因此自動學習知識技能已成為人工智能研究的主要方向。ChatGPT采用強化學習模型,從行為方面模擬人類智能的感知動作系統,為人工智能賦予自主學習能力。進一步分析,ChatGPT獲得自主學習能力和邏輯推理能力,得益于應用強化學習PPO模型,特別是馬爾科夫鏈決策過程不斷動態調整前后語義策略,使前后策略更加一致,真實準確生成結果。
目前,國內醫學信息量呈指數級增長,但僅能通過關鍵詞和問題檢索方式訪問醫學數據庫。在龐大的數據海洋中,精確檢索所需的數據信息仍是一項相當困難的任務,缺乏針對性。為此,醫學研究可以借鑒ChatGPT強化學習PPO模型,標注人工檢索過程、停留時間等,獲得前后概率分布,并以檢索時間和對象生成檢索模型,為下一步人工檢索提供支持。基于此,指數級的醫學數據可以整合成強大而智能的知識庫,見圖4。

圖4 PPO模型處理海量醫學數據的流程
ChatGPT也可以成為輔助醫生診斷和選擇治療方法的智力支持。目前,在醫學研究中,慢性病等病因形成時間較長、較多、較復雜,前后病因的邏輯和相互影響對疾病治療都非常重要。借鑒ChatGPT中PPO強化學習模型,應用馬爾科夫鏈決策過程,動態學習前后病因影響大小、不同地域病因的影響關系,強化模型值與人工值差距研究,可以建立有成效的分析和決策系統,為慢性病等病因分析和治療提供人工智能支持。
強化學習還可以為基因研究和疾病風險評估提供幫助。目前醫學研究已經從成千上萬患者樣本中,生成數以萬計的數據集,數據集通常包括突變DNA序列、DNA甲基化、單個基因活性以及細胞通路中蛋白質相互作用信息。近幾年來的研究表明,蛋白質和基因的相互作用可以映射成一個數學網絡,即相互作用網絡圖,因此也可以借鑒ChatGPT中PPO強化學習模型,應用馬爾科夫鏈決策過程,在前期生物信息學和人工智能算法結合的基礎上,強化泛化場景研究,突出基因序列突變之外的隱性基因研究,為基因研究和疾病風險評估提供全場景的研究方法。
以往醫學問答系統存在數據缺失[17]、簡寫、拼音代替、錯別字[18]等問題,影響準確性。借鑒ChatGPT提問等模式,開發基于ChatGPT模型的醫學問答系統,系統以高度擬人化對話問答模式,帶來較好交互體驗,還可以收集整合問題集。此外,醫生結合患者病歷信息以及回答,給出患者問診、解答等建議,進一步提升問答對話系統能力和交互體驗,同時豐富“答案”集,為后續標注和自動評估機制打下基礎。
在醫院管理和衛生系統管理方面,ChatGPT可應用于醫院內部的自動化客服和咨詢系統,為患者提供在線預約、掛號、查詢檢查結果等服務,減輕人工接待壓力,提高工作效率;醫院知識庫管理和知識查詢,幫助醫護人員快速獲取醫學知識和臨床指南,支持決策和診斷過程,提升醫療質量和安全性;衛生系統公眾健康教育,通過智能問答和健康咨詢,為大眾提供個性化健康建議和預防措施,促進公眾健康管理和健康意識。這些應用可以提高服務效率、增強醫學知識的傳播和應用、促進公眾健康意識,為醫療行業的改進和發展作出積極貢獻。
借鑒GPT-N預訓練大模型應用程序接口(application programming interface,API),開放接口研究和對話框提示研究,患者輸入個人信息、健康狀況信息以及病歷信息,拓展信息采集時間寬度和靈活性,對話框提示能提升問答準確性,API接口能提升醫學數據自動化傳輸水平。同時,醫生可自主靈活選擇時間,根據患者問題,起草診斷計劃,提高治療效率。根據問題數據集和答案集,再結合脫敏臨床知識數據,可進一步提高醫學科研效率。
ChatGPT迅速成為現象級焦點,掀起新一輪人工智能浪潮,需要客觀分析其流程、模型和創新價值,并探討其在醫學研究中的應用。自動獎勵模型可以提高評估準確性和效率,強化學習PPO模型突顯研究對象的多樣性和相互影響,通過應用馬爾科夫鏈決策過程、分析前后邏輯,縮小模型值與人工值的差距,增強特定場景的泛化能力。問答系統可以提升對話能力和交互體驗,并拓寬時間范圍和數據集。綜合考慮ChatGPT的訓練流程和模型創新點,可以將其應用于醫學研究領域,從而開創出更多、更好、更有價值的研究。