AI輔助醫學統計分析APP
醫學統計分析的困難點在于開始階段分析的規劃和得出分析結果之后分析結果的解釋,前者之所以困難是因為分析方法繁多又有不同的使用條件,后者則是因為結果中術語較多,且各種分析方法術語又有不同,非統計專業認識難以掌握。而AI的特點就是知識豐富,正好適合處理以上兩個醫學統計中的困難點,所以如果統計分析過程中能夠使用AI進行輔助,將會是再好不過。
AI輔助統計分析的兩種形式
這里不是完全依賴AI進行統計分析,而是進行AI輔助,是因為AI本身在結果的準確性和重復性方面都有待提高和完善,還不適合統計分析這種對結果準確性要求較高的工作,結果的指標也不可控。
如果想實現AI輔助統計分析,目前的做法有兩種,一種是讓LLM大模型生成數據分析所需要的代碼,然后執行代碼,獲得統計分析的結果,典型的例子是豆包的數據分析模塊,這種方法的特點是,功能豐富,但是技術難度大;另外一種,就是這里用到的,將可以進行醫學統計分析的Python庫(pingouin)構建成API,然后通過百度千帆平臺將API服務接入到LLM模型中,通過LLM解析用戶的意圖,解釋分析的結果,但是統計分析的結果是API產生的,這種方式技術門檻低,功能沒有那么全面,適合小型的項目。
APP功能介紹和說明
目前的APP可以處理重復測量的方差分析類,普通的方差分析類和t檢驗類等三類數據分析,除了主要的分析方法,還包括分析前的正態性檢驗、方差齊性檢驗、球形檢驗和分析后的兩兩比較、power計算等分析方法,也設計了分析規劃和分析報告等兩個功能。
這里采用的是數據為基礎的分析方式,通過數據來判斷進行什么樣的檢驗,通過數據來判斷檢驗的效能等,。所有的分析都是以提供json格式的模擬數據或者真實數據開始的,提供數據之后,1. 可以要求進行特定的分析或者做出分析的規劃,其中的特定分析是通過關鍵詞來觸發的,比如在輸入框內輸入”球形檢驗“可以觸發重復測量方差分析中的球形檢驗API;2. 得到特定分析結果之后,可以要求將分析結果整理成表格或者形成分析報告,但是目前不支持一次性進行多個分析步驟(這一點還有待改進)。3. 還是有一定的不完善的地方,比如有時候沒有要求進行分析步驟規劃,卻給出了分析步驟的規劃,可能是promot撰寫不夠完善導致的。
APP訪問地址:1. 可以通過百度的鏈接訪問:「AI醫學統計」:https://appbuilder.baidu.com/s/aAI5O8cA;2. 也可以通過部署的streamlit鏈接來訪問https://ai-assistant-medical-stats.streamlit.app/,各有優缺點,前者速度更快一些,顯示功能也更佳(不同的輸出有不同的形式),后者的有點是可以集成更多模塊,部署也可以個性化,后續將部署在我自己的平臺appmatrix上(app.clinicalmodelmatrix.com, 這個平臺上目前開通免費賬號:test(密碼tset),展示了部分APP)。兩種途徑是訪問的是同一個APP,streamlit平臺僅僅是引用了百度平臺的API。
待完成的規劃
目前的APP僅具備了對連續性變量的分析,而醫學統計中還包括離散性變量分析,比如卡方檢驗等,還包括回歸分析等,需要進一步完善。可能遇到的問題是,檢驗方法多了之后,APP在檢驗方法的選擇上會不會出現混淆等,需要在實踐過程中進行探索。也歡迎大家多提寶貴意見。
總結
初步體會LLM+API構成的APP在醫學統計方面的應用,良好的感覺是LLM對統計規劃和統計結果解釋方面,算是比較專業,但是也感覺LLM不是很好控制,有些要求并不能完全按照想象中的樣子來實現。總體來說,目前的APP已經能體現AI輔助的概念,在分析步驟規劃和分析結果解釋等環節有不錯的表現,彌補一般人在統計分析知識儲備上的不足,但是還有進一步完善的空間。
LLM+API這種形式不僅僅可以用在醫學統計領域,可以算是一種新型的APP,也以用于完成其它的任務,這種形式的GUI是LLM的對話框,通過對話框來實現用戶和機器之間的交流。
本賬號專注于醫學類streamlit,shiny ,gradio等可視化以及新形式的APP的制作和部署研究,包括各種APP構建和部署咨詢,代碼的分享,歡迎聯系咨詢。