
循環器医療AI領域に入るために勉強したこと書くよ~
現在、ロサンゼルスの某所で循環器医療AIの研究をしている平民です。
たまに、「僕も医療AI勉強したいです!何すればいいか教えてください!」とか言われますが、そもそも”医師”かつ”平民”でございますので、誰かに共有することなんぞ憚られるわけであります。
あとこうした内容ってよく拡散されるし、ガチ勢から批判されることもあるかと思いますが、優しい目で見てください。
ガチ勢エンジニアや、人工知能領域の研究者目線ではなく、医療者(循環器内科専門医)が医療AI研究をやるにあたって 必要だった知識や勉強のときに役立った参考書って感じです。(防御線はたくさん張っておく)
下記のリンクなどは私自身が行ったことや、購入して勉強した書籍です。
他にも良いものがあれば教えてください。
あくまでも私が、現在使用しているSkillsetをどう習得したかの記録ですので、参考程度にとどめてください(防御)
こちらも参考になる記事です。
1枚でまとめるとこんな感じ

大原則はこちら
No one is better than the real project.
かっこよく英語で書きましたが、実際のプロジェクトより学べる題材・教科書はないってことです。On the job Training (OJT)でStep-by-Stepで学んでください。これが最も大事な原則です。
Python
最初の勉強した題材・教科書は、
GLOBAL CONSUMER INTELLIGENCE 東京大学グローバル消費インテリジェンス寄付講座 Basic skills for deep learning and python coding
(*言わずとしれた東京大学松尾研究室の公開講座です、大学院生であれば全国から受講可能です。)
この講座の関連書籍はこちら:
このあたりで概要を掴んだら、その都度興味あるものを勉強していました。
Machine Learning for Medicine
AI for Medicine (AI for Medical Diagnosis / AI for Medical Prognosis / AI for Medical Treatment)
Courseraが提供しているコースで、講師は有名なチームの方々のものです。
難易度は低くわかりやすかった記憶です。
pytorch周辺
つくりながら学ぶ!PyTorchによる発展ディープラーニング
kaggle
自分は、医療AIコンペのBaselineのNotebookを写経して、ふんふん・こういう挙動しているのね、こうすると評価指標は上がるのね くらいのライトユーザーで、ガチ勢のアイデアや熱意はすごいなあとよく思っていました。
チームを組んで、一緒にいろいろ教えてくれたみなさまには本当にかなり感謝しています。ありがとうございます。
最近は、画像領域はCNNだけではなくVision Transformerも必要そうなので、この本で勉強しました。
CLIPの概要や基本的なことはこの本であったり、下記のLLMセミナーでも勉強しました。ただまだわかりません。ふーんくらいはわかります。
HuggingfaceがNLPのチュートリアルコースを出していて、確かGoogle colabで簡単に実装できたので一通り行いました。
Open CV
循環器AIとなるとかなりの部分が、画像処理が絡んできます。
通常はOpenCVを用いて処理すると思います。
へぇ~画像ってこうやって成り立っててこうやって変換されるんだなとか色々思いました。iPhoneでオシャレに画像変換できるのも、裏ではこういう実装なんかな~とか思ったのはいい思い出です。
他には下記なども行いましたが、情報・工学系以外には比較的難易度が高い印象でした。
ガチ勢に比べると、自分は全然上手にコードもかけません。
英語学習に例えると、
あ~書いてあることは理解できるし、言ってることも何となく分かるけど、
スラスラと同じレベルでアウトプットしろって言われるときついな
R
tidyverse/ ggplot2 / regex.. for data handling
Medical stats
Data visualisation
機械学習に必要なデータ(膨大な患者メタデータ)を処理することや、論文に必要なFigureはRで作っています。
個人的にはプログラミング言語は、
RかR以外か
です。自分自身、基本的な動かし方は大学院で行っていた疫学データをRで触ることによって、習得できました。ここでもOJTベースで行うことが最速ですが、下記によく見ているサイトや、最初にとても役立った入門書籍を記載します。
疫学や公衆衛生に関わる業務のための R
Data Visualization samples
このサイトはきれいな図が乗っているのと、そのサンプルコードが乗っているので、自分の行いたい解析・作成したい図表がないか、まず見に行きます。
参考リンク:
https://r4ds.had.co.nz/
参考書籍:
この青本は神本だと思っています。Rへの閾値を下げてくれました。
次におすすめしている本はこれです。
データ可視化の入門は先程のサイトともにこれを見ていました。
下記の2冊も有名な本で、やっていました。Storytelling with dataは、図表の見せ方を誇張したり(わざと)するようコード書いたり(つまりそれでStorytellingする)ので面白い本ですが、医学的にはよろしくないかもですね。
この本は日本語訳もあったはずです。英語で勉強しました。
またRに限らずpythonでも使用しますが、正規表現は習得しなければいけないってのは、渡米後の知った誤算でした。

SQL
院内の巨大データベースから効率よくデータを引っ張ってくるためにはSQLで引いています。ただ、自分は最低限使えればOkayなので下記の2つで勉強して大体のことは事足りています。あくまで、私自身の経験なので、Generalizeはできません(防御線2回目)
BigQuery で学ぶ非エンジニアのための SQL データ分析入門
この方の書籍はこちらで、照らし合わせながら演習問題を行いました。
集中演習 SQL入門 Google BigQueryではじめるビジネスデータ分析 (できるDigital Camp)
Linux 基本
本当はLinuxめちゃ勉強したい(しなきゃ)んですが、あんまりやり方は分かっていません。誰か教えてください。
今の自分は、コマンドだけ自由に使えればいいくらいなので、下記で勉強してとりあえず息できています。
もう怖くないLinuxコマンド。手を動かしながらLinuxコマンドラインを5日間で身に付けよう
あとはchat GPTに全部聞いて、その都度コマンドラインの内容などをメモしています。
Git
実務レベルでわかる/使いこなせるようになるGit入門コマンドライン演習80
とりあえずこの本を行ってgitとはなんぞやとわかったらあとはGPTパイセンに聞いています。
wandb
実験管理には必要となります。私は、わんどびーと読んでいます。
WandBで始める実験管理 - MLOpsからLLMOpsまで
といろいろ書いてみたわけですが、最初の大原則(No one is better than the real project.)に書いてあるように、実際のProjectで学んだほうが早いわけです。例えばDicomの仕組みとかどういう情報が入っているかなんて、教科書見るよりも何個かのDicom画像 / 動画を広げたほうが良いわけです。
Free DICOM viewer for PC: https://www.microdicom.com/
他にも心電図データとかも同じだと思います。
生データ(MFERなのかXMLなのかわかりませんが)を数枚手に入れて、調べながらそれを1枚の心電図にPlotしたほうがはるかに学びがいいわけです。
最後に
多分ガチ勢がみると、「そんなもんっすかwwww」みたいな感じなのですが、普通にフルタイムでカテーテル治療とか外来や外勤もしていたので、許してください、ごめんなさい。
情報・工学系の方が書く記事であったりはよく見かけるのですが、医者が書いているこういう記事ってあまりないので可能な範囲でShareしてみました。今後、循環器AIが発展するために、医学分野とテック分野の双方を知る必要があるし、そういう人材が増えていく必要があると思っています。
自分よりも若い世代には、そういう人材・人財がたくさんいると思っていて、是非彼らにたくさん教えてもらいながら自分も成長したいので、ご協力お願いします~!

ではまたです!