聊聊心理醫療領域大模型的落地思考

轉載請註明出處:https://www.cnblogs.com/zhiyong-ITNote

近來,工作偏向於心理醫療領域方面的大模型,僅從領域大模型的落地,聊聊個人的一些思考。

硬件

準備好花錢買GPU。

領域大模型

業務場景的思考

首先需要審視斟酌業務領域的特殊性與可行性,我們要做的是心理領域,而心理領域傾向於醫患對話,即詢問鏈的場景;不僅僅是一問一回答的角度,而作爲智能體(AI模型/醫生)還需要 對患者的回答進行 引導/打分,且作爲問詢對話場景,對話上下文的長度必然不會少,這也是需要考慮的問題。其次,治療時的患者,會處於不同的治療階段,就需要做不同的治療,治療的側重點就會不一樣。
總之,在實際開展的前期,對業務領域的場景與方向需要與產品不斷的打磨研究,分析出產品的方向場景及特殊性。

開源模型

摸着石頭過河——目前醫療、金融等領域已經有很多的開源模型,作爲技術儲備與預研,極其需要對已有的開源模型做一些調研。如下是我個人覺得不錯且對於我們的場景可以借鑑的醫療模型:

  1. 扁鵲 BianQue
  2. 靈心 SoulChat
  3. CareGPT
  4. MedicalGPT

對於開源模型的研究,不僅僅是跑demo,沒有什麼用處,畢竟又不能直接拿過來落地——現在很多的模型都只是丟個訓練完的模型文件上來,最關鍵的訓練數據、業務流程、訓練流程、調試代碼並沒有放上來;這類開源庫參考意義不大。
如下幾點是我比較看重的:

  1. 訓練數據及格式
  2. 微調框架(官方、開源)
  3. 業務流程
  4. 訓練流程及代碼
  5. 訓練方式
  6. 是否支持微調

業務流程

對比上述的模型,靈心模型的場景及應用和我們的業務極度貼近,但官方只是給了模型文件部署,並沒有提供相關的訓練數據也不支持微調。所幸,其業務流程還是很詳細,給我們的業務落地也提供了參考。

訓練流程及代碼

而CareGPT與MedicalGPT兩個模型給我提供了詳細的訓練流程參考:

  • 第一階段:PT(Continue PreTraining)增量預訓練,在海量領域文檔數據上二次預訓練AI模型,以適應領域數據分佈。
  • 第二階段:SFT(Supervised Fine-tuning)有監督微調,構造指令微調數據集,在預訓練模型基礎上做指令精調,以對齊指令意圖,並注入領域知識。
  • 第三階段
    • RLHF(Reinforcement Learning from Human Feedback)基於人類反饋對語言模型進行強化學習,分爲兩步:
      • RM(Reward Model)獎勵模型建模,構造人類偏好排序數據集,訓練獎勵模型,用來建模人類偏好,主要是"HHH"原則,具體是"helpful, honest, harmless"。
      • RL(Reinforcement Learning)強化學習,用獎勵模型來訓練SFT模型,生成模型使用獎勵或懲罰來更新其策略,以便生成更高質量、更符合人類偏好的文本。
    • DPO(Direct Preference Optimization) 直接偏好優化方法,DPO通過直接優化語言模型來實現對其行爲的精確控制,而無需使用複雜的強化學習,也可以有效學習到人類偏好,DPO相較於RLHF更容易實現且易於訓練,效果更好。

針對如上階段,開源模型有對應階段的腳本已實現,最好是可以一鍵執行。

訓練數據及格式

數據的質量與格式,在這些開源模型都是有的;而且對我們的業務來說,多輪對話是很常見的,因此怎麼樣讓數據更緊湊更小,但不損壞數據質量,是我們需要審視的。
扁鵲與靈心 領域模型的數據格式是我蠻滿意的,而且極度滿足我們的業務場景:

input: "病人:六歲寶寶拉大便都是一個禮拜或者10天才一次正常嗎,要去醫院檢查什麼項目\n醫生:您好\n病人:六歲寶寶拉大便都是一個禮拜或者10天才一次正常嗎,要去醫院檢查什麼項目\n醫生:寶寶之前大便什麼樣呢?多久一次呢\n病人:一般都是一個禮拜,最近這幾個月都是10多天\n醫生:大便幹嗎?\n病人:每次10多天拉的很多\n醫生:"
target: "成形還是不成形呢?孩子喫飯怎麼樣呢?"

同時,在不同的治療階段,治療的側重點也是不一樣的,指令instruction的引導與數據的場景化顯得尤爲重要。

訓練方式

訓練方式決定着,採取怎樣的訓練形式——微調訓練/多階段訓練。基於官方微調文檔的訓練還是開源微調框架的訓練,都是不一樣的。
目前來說,越來越多的領域模型是基於開源微調框架來做的微調訓練,微調框架比如LLaMA-Factory;相比較官方文檔來說,開源微調框架的流程更清晰,微調策略更多樣、訓練階段更完善、且支持的數據格式也多種。

MVP

MVP是最小可行性產品英文的首字母縮寫,是企業用最小的成本開發出可用且能表達出核心理念的產品版本,使其功能極簡但能夠幫助企業快速驗證對產品的構思。
準備好AI模型與服務器後,按上述的流程實現一個MVP,以供產品人員試用、客戶演示、進而實現項目最小閉環;最終就是走向產品迭代,不斷演進。

轉載請註明出處:https://www.cnblogs.com/zhiyong-ITNote

首發於個人公衆號

image

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章