看板 medstudent 關於我們 聯絡資訊
借題發揮一下XD 也順便簡介一下AI在醫療臨床可以的應用(純個人經驗) 也希望臥虎藏龍的板上可以提供建議或是討論(OwO) 小弟廢廢病理科R1 手上跟AI有關的主題有3-4個 也參與系統開發和優化 在邊做邊學中 使用語言主要是R 因為R的作圖和視覺化功能強大 再加上向量分析運算的效率可以跟C媲美 也是我最熟悉的語言XD 但是因為某些AI model建立或是為了底層運算提速 在某些地方程式碼會改成python或C 使用的backend是tensorflow 或是直接用keras完成 端看model需要 自己的參考書目如下: http://imgur.com/a/69zaalu ================================================================== 目前處理過的資料大至可以分成兩類 圖像和文字 1.圖像分析 在圖像分析中可以再細分成兩個領域 圖像處理和AI模型 a.圖像處理指單純透過色塊的filter 透明度調整 對比調整 顏色深淺調整等等像是photoshop圖片處理的功能 將圖片有意義的部分萃取出 甚至是分類 b.AI模型大部份指的是CNN的模型 有training和validation 當然還包括其他像是SVM, K-means clustering等等的分析或分類 畢竟machine learining不是只有deep learning的神經網絡而已 小弟目前做過或是正在做的主題有的主題有 a.acid fast stain找出TB的位置 (single object detection) 此主題已接近完成 剩下只是模組持續的優化和好的介面系統而已 利用初步影像處理把紅色物體挑出 再利用自己設計的CNN model 把是TB的部分identify出來 b.H&E染色中 辨認出tumor的位置 並且計算mitosis在tumor中的比例 (combine U-net and single object detection) 此部分目前以GIST還有其他soft tissue tumor為處理大宗 正在case蒐集還有自己胸口碎大石一個一個標記腫瘤位置 細胞核位置 還有mitosis的地方 XDD 因為特徵相對明顯 所以可以在初步標完一部分之後 就可以先train一個比較廢的model 讓他做screen和pre-label 我再去調整結果 再丟回去train 效率會快很多 XDD c.Synaptophycin-Ki67 double stain分析出tumor cell實際染上ki的比例 (pure image processing) 此主題也接近完成 以NET或NEC的處理為大宗 利用單純的圖像處理 用紅色filter把double stain中tumor的位置標出 再透過藍色和褐色的filter把細胞核的位置標出 (配合大小來篩選出真正的細胞核) 最後計算tumor中實際有染上Ki67的比例 此部分之後有會朝向AI分析方式轉變 因為有些細胞核或是Ki67染色在pure image processing會出現問題 AI model是可以隨著資料量增加而慢慢進步的 所以會開始像b.一樣慢慢自己annotation再丟進去training d.腎臟biopsy中 辨認出絲球和動脈的位置以及之後的分析 (combine U-net and multiclass classification) 目前在設計annotation system 讓我或是其他使用者可以在玻片viewer中標記出絲球和動脈 之後訓練方式類似b. 只不過分類上改成multiclass classification的輸出 2.文字分析 小弟文字分析參予的不多 目前只有兩個小專題在自己玩而已XD a.cytology報告和surgical報告的匹配程度 (text classification, word embeded-LSTM-1DCNN model) 病人來醫院健檢有許多項目是cytology的 如果有問題之後可能會再開刀 所以會有另一個surgical的報告 此處主要是蒐集病人的cytology報告和surgical最終結果 判斷cytology當下是unrelated, under diagnosis, overdiagnosis 或是 match 例如cytology HSIL而surgical下來是LSIL 就是overdiagnosis 或是cytology carcinoma而surgical開下來是adenocarcinoma就是 match 如果cytology cervix HSIL而surgical是口腔 severe displasia 就是 unrelated 採用bidirectional LSTM和 1DCNN 嵌合的自設model完成 目前accuracy大概在95% 還在調整model看會不會有更好的performace中 b.乳癌文字報告轉變成格式化的form (named entity recognition, word embeded-LSTM-(1DCNN)-CRS model) 乳癌文字報告中 透過NLP方式 把有臨床意義的內容結取出來 例如:ER,PR,Her2強弱 百分比; cancer histology type; size; margin condition; leagth near margin; tumor-infiltrating lymphocytes (TIL) 比例等等 把各種文字報告經過NLP處理之後 一個一個標註其位置.... <--- 目前進度XD 例如哪個字是ER強度 哪幾個字是tumor大小 哪個字是tumor和margin的距離 然後用自建的model來嘗試看哪種model performance最佳 ================================================================= 關於病理圖像處理的心得 病理玻片動不動一張3-5GB.... 若完整打開解壓縮變成可運算的向量矩陣約會變成150GB-250GB (="=) 儲存格式各廠商又都不一樣..... 所以在處理上需要用到許多的open source 或是直接逼廠商交出SDK = =+ (喔不是 是跟業界好友交流交流....) 在底層操作會用到幾個概念 1.如何節取一張超大圖片的其中一個小區域 而不把整張圖片打開 -利用廠商的SDK -採用C的libtiff package -採用R的raster package, rbioformats package(最近在修正java integrade bug) -採用python的 openslide package 2.如何在系統上做記憶體分配和運算加速 -利用多核心處理 盡可能平均的把運算分給每個CPU 或GPU -把程式碼慢慢改成C <---痛苦根源.... -必要時可以出借部分RAM當成GPU記憶體 或是固態硬碟當成RAM (會減速 但在記憶體不足時也只能這樣Orz) 3.降低不必要的運算次數 能向量化運算的盡量使用向量化運算 (R運算特色) 另外 玻片viewer其實就像是我們使用google map那種感覺 分不同層可以zoom in和zoom out 設計上需要把不同層之間的座標位置好好對應(projection設好)之後 viewer再依據使用者看到的位置打開相對應的層數和座標的圖片 https://imgur.com/DUd4VUo 也要讓使用者能圈出自己有興趣的地方 https://imgur.com/TYVaJuV 結論:需要有一個server機台來處理以上零零總總運算 然後其他電腦連過去使用看片 https://imgur.com/nN45ZxX ================================================================= 總歸來說 AI可以很好的輔助臨床判讀 以設計找TB為例 雖然AI可以很有效率的把覺得非常像TB的位置標示出來 (一張3~5GB玻片平均約13-15分鐘) https://imgur.com/kMOKOFh https://imgur.com/qP6lfDN 可以省去醫師慢慢找的時間 但是 實際在玻片上會有很多東西跟TB非常像也是紅色 例如 汙染的渣渣 碎掉的紅血球 掃片時沒擦乾淨玻片表面的灰塵偏光 染色液有結晶 等等 也都有可能變成紅色條狀 (O~O) 所以也不太可能完全依靠AI來發報告 但是 他可以把有可能的部分detect出來 讓醫師來判斷 也因為標記出來了 實際拿玻片找也很快 這步驟其實省去很多時間 XD 不過最重要的是 for fun!!! 在設計還有訓練的過程中都非常有趣!!! 學了很多東西XDDDD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 211.76.246.52 ※ 文章網址: https://www.ptt.cc/bbs/medstudent/M.1559199115.A.CBE.html
asdfg012345 : Julia不好嗎QQ 05/30 15:14
Assisi : 這些可以一個人在 R1 弄ㄛ 好厲害ㄚ 05/30 15:15
Tosca : 病理科R1就是閒 反觀內外科R1被操到要死不活 05/30 15:22
martinlin77 : 樓主去UCSF啦,不要留在國內 05/30 15:26
loserfatotak: 把檢體弄成播片的作業不是超費工的嗎?會閒? 05/30 15:28
holyhelm : 你的R1過的好充實R 05/30 15:29
inconspicous: 住院醫師最忙的一群好嗎,有些人不懂愛嘴 05/30 16:05
aneshsiao : 快推,別人才不會說我看不懂 05/30 16:42
jugularnotch: 同時作這麼多專題好強!是說敝院的影像報告也已經紅 05/30 16:59
jugularnotch: 字把tumor跟atypical等等關鍵字標出來了,似乎還是 05/30 16:59
jugularnotch: 圖像AI比較有研究意義一些 05/30 16:59
jugularnotch: 我同學也在作影像方面的AI論文,不過卡在python轉C 05/30 17:00
jugularnotch: ... 05/30 17:01
flycatchertw: 這篇,要推! 05/30 17:19
herculus6502: 這水好深啊…推個 05/30 17:20
vfgce : 1F,Julia太新,套件較少,用的人少,沒有比較好... 05/30 17:38
giveUstars : 好厲害 05/30 18:51
xious325 : 朝聖 05/30 20:18
scott112 : 雖然看不懂 但是推一個 05/30 20:34
clsiesta : 同學給推,研究底 非常深厚的神人! 05/30 20:40
ck030561 : 好屌 05/30 21:06
codaine : 好強,推 05/30 21:28
xadery1010 : 同學推,從以前就又強又認真! 05/30 22:02
hans0406 : https://www.youtube.com/user/hsuantien 05/30 22:09
howard790606: 雲象科技在做病理AI分析,可以跟他們合作 05/30 22:20
dannyliou3 : 林口長庚痛失英才 05/30 22:23
hchs11403 : 朝聖天才工程醫師 05/30 23:18
twodoors1175: 豪猛r 05/30 23:23
kevinlee075 : 真是神人啊,樓主確定不考慮去矽谷的醫院? 05/31 00:31
abby2007 : 報告長官,我什麼都看不懂(掩面 05/31 00:49
a156712 : 想問可以用GAN生成一堆false image來練習判讀嗎XD 05/31 00:58
pasin : 真神人 05/31 01:30
mvb : 勸原po去念個PhD 然後去矽谷的儀器醫療診斷公司發展 05/31 01:34
soredia : 不推一下人家以為我看不懂 05/31 01:40
jerryXDXDXD : 林口長庚痛失英才 05/31 01:42
jerryXDXDXD : 在酸的某樓可以滾嗎 05/31 01:42
WINONIA : AI研究接段很有趣,不過最後會不會走到大公司壟斷.. 05/31 07:03
tccl : 推一個林長痛失英才 啊哈哈哈哈 05/31 09:13
Rogozov : 好猛 05/31 10:09
Stunts : 屌欸 05/31 12:41
enamelcord : 有神必須推!完全看不懂(炸) 05/31 15:27
changmada : 抱歉都看不懂 05/31 17:28
martinlin77 : 雲象葉董就是樓主同行啊...... 05/31 19:22
jai166 : 猛喔 一個檔案這麼大要讀很久吧 05/31 23:16
paulloxa : 比較好奇的兩個問題,pgy, intern 比較少run到病理 06/01 06:27
paulloxa : 病理科的journal現在對AI相關文章的接受度如何?再 06/01 06:27
paulloxa : 醫院有提供gpu之類的運算資源嗎?還是都是自己出錢X 06/01 06:27
whs2009 : 其實我並沒有非常注意這塊的journal是不是很熱門XD 06/01 07:34
whs2009 : 至於電腦資源 是我老師自己出錢的 真的非常感謝他 06/01 07:34
whs2009 : 無論是windows或是linux的多核心系統 gpu 高階固 06/01 07:34
whs2009 : 態硬碟 大容量ram等等 06/01 07:34
whs2009 : 回應a15672 有試過用GAN 但是training時就像教科書 06/01 07:52
whs2009 : 說的 notoriously slow..... XDDD或以後來就放棄他 06/01 07:52
whs2009 : 了 06/01 07:52
shinwilliam : 推一個 06/01 12:46
etpig007 : 有人支持真好,我還自己花錢買張RTX2070... 06/01 23:12
jeff11194 : 太神拉!! 06/01 23:31
rukill : 推 林長痛失英才 06/03 00:09
sherrycatcat: 有神必須推! 06/04 01:57