
5日間で日本メディカルAI学会公認資格試験に合格した話

知識ゼロの人が5日で受かる試験ではありません。
「白い嘘」の典型例です。是非最後までご覧ください♪
※「白い嘘」についてはコチラ
――はじめに
いよいよ研修医生活がはじまろうとしています。
わたしは国家試験が終了した直後からAIの勉強をしてきました。
先週、「医療 AI 資格」などとネットの海を彷徨っていたときに「日本メディカルAI学会」というものの存在を知りました。
そしてなんと公認資格があり、キカガクで提供されていました!
※キカガク
機械学習を勉強できるサイト。
AIの勉強に興味を持ったことがある人は絶対に名前を知っているほど有名。
■きっかけ
これまで英語でAIの勉強をしてきて、TensorFlowの資格も英語で取ろうと考えているところでした。
ですが、今回はメディカルAI学会公認資格にチャレンジすることにしました。理由としては、
⓪TensorFlowの資格に合格するのが何年先か分からない
①試験自体は無料で受けられる
②医療に特化したAIの実践を勉強できる
③AIの門外漢が相手なら、「AIを知っている人」という印象を与えられる
※資格を取ることが目的になってはいけないですけど、資格を持っているだけでその人の実力は最低限証明されます。何も経験がない人はとりあえず資格を取るというのがオススメです。
があげられます。本当はE資格とかAI実装検定S級とか取りたいですけど、研修生活が始まればAIばかりに時間を費やすことはできなくなっていきます。そんななか、この資格はほんとうに魅力的でした。
日本メディカルAI学会公認資格試験は、キカガクで提供されている2つのコースを受講して、コース修了証を得ることで合格となります。
公認資格に興味がある方は、以下の記事がオススメです♪
noteだと、こんな記事もありました。
わたしの場合、この方のような現役バリバリのエンジニアではなくそこらへんの研修医ですので、この資格は「とりあえずAIのことを分かっている医療人」というアピールをするためには最適な道具だと言えます。
■試験について
※当然ですが、試験内容そのものの漏洩は堅く禁じられています。
1.要件
キカガクで提供されている、
1.脱ブラックボックスコース
2.メディカルAI専門コース
この2つのコースを修了することにより試験合格となります。
それぞれのコースは「資料」を読んだり講義動画を見たりして、得た知識を「テスト」で確認するという形式です。その「テスト」に満点合格することがコース修了の条件となっています。「テスト」に満点合格さえすればよく、全講義動画の閲覧は要件ではありません。
ん?
その「テスト」に満点合格することがコース修了の条件となっています。
――そうです。一問でも解答にたどり着けない問題があると、コース修了にはなりません。とはいっても、間違えた問題は何度でもやり直すことができます。プログラミングなので、医師国家試験とかとは違います。一発で正解にたどりつけることなんかめったにありません。何度も試行錯誤する必要がありますから、このシステムは合理的だと思います。
2.注意点
試験なので当然ですが、「この問題が分からないので解き方を教えてください」というのは論外です。持論ですけど、そういう人はプログラミングの世界には向いていないと思います。
ただし、何度やっても解答が合わない場合などに確認を求める場はGithubに用意されています。もちろんGithubの使い方が分かっていることが前提です。それ以外にもキカガクのサイト内でフィードバックを送ることもできます。ですが、こちらは送信したフィードバックを確認することもできませんし、その対応状況等も全くブラックボックスなのでGithubをオススメします。
わたしもいくつかissueを提起しました。プログラミングについては実行環境の違いなどを厳密に検証する必要があるため、迅速な解答は期待しない方がよいです。
なので、実際のところは試験内容に関してすべて自己完結する必要があると考えてください。自分で勉強して、自分で問題を解いて、自分で間違えて、自分で改善して、自分で正解する必要があります。
3.合格のコツ
自己完結する思考プロセスの例を書いてみます。
例1.
資料はAと書いてあって講義動画はBと言っているけどテストはCについて尋ねている。そのヒントはDとなっているけど、実際にしないといけないことはEだからそれに対応するようにコードを変更しないといけない。
例2.
自分の解答が何度試しても通らない。考えられるアプローチは全部試したのに…。
候補は限られてるんだから、まずは解答を探索して正解を見つけよう。
――正解が見つかった!
それなら次は、その解答がどうやって出てきたのかを探索してみよう。
――講義動画のコードと資料のコードは同じなのに実行結果が違っている。なぜだろう?自分の環境で、どちらかの再現性に担保はとれないかな?
――なるほど!
資料のコードのXと言う部分をYに変更したら正解が出てくるみたい!!
次から勉強する人たちのためにissueを提起しておこうかな…
※
当然ですがあらかじめ解答の候補が分かっているなら総当たりは有効ですし、試験のルールにも違反していません。ですが、解答を見つけた後に根拠を求めないと勉強になりませんので、正答を得るためのアプローチは必ず探索します。
■合格体験記
5日間での勉強時間はこんな感じでした。
1日目:10時間
2日目:10時間
3日目:5時間
4日目:5時間
5日目:3時間
※前提
5日間で合格とか言ってますけど、プログラミングの経験0だとコースについて行くのすら危ういです。わたしが受験した際の状況を書いておきます。
●勉強前(国試前までの状態)
研究のデータ解析のためにVBAが書ける程度。
Pythonを学んだことはありましたが、その都度挫折…。
●勉強後(国試終了~メディカルAI学会認定資格受験直前までの成果)
ZTMのPythonコースは分野別の実践編をのぞいて全て終了。その後ZTMのMLコースを修了。実践としてKaggleの「タイタニック号の生存者予測」に取り組みました。いまはZTMのTensorFlowコースとSQLコースを始めたところです。数学はTechnionで線形代数と微積分を学習中です。
ZTM(Zero To Mastery)について興味がある方はコチラをどうぞ。公式サイトの他、Udemyでも講座が買えます。わたしはUdemyで購入しました。
※
全て英語ですので、サンプルを必ず確認してください。
※
細かいニュアンスが伝わらないので日本語字幕は推奨しません。
その場合は別の日本語の講座を勧めます。
――1日目
脱ブラックボックスコースを修了しました。
ですがわたしの場合、前提としてここまでの1ヶ月半の勉強があります。
「ブラックボックス」と称されているように、機械学習モデルが実際に行う計算を手計算でシミュレーションするというのは初めてでした。ZTMは理論よりもまずは実践できるようになるための講座だからです。
理論部分には時間がかかりましたが、コードでの実践部分になってからは3時間もかかっていなかったように思います。
――2日目
畳み込みニューラルネットワークについて学習しました。
最後のテストが何度やっても合格できず…。
何度も修正を繰り返し、5時間たってようやく自分のミスに気づきました。
そういうミスって大概些細なもので… ほんの1行が足りてませんでした。
――3日目
「遺伝子情報の配列解析」について学習しました。
ここでも1問引っかかる問題がありました。
その問題は保留にして「モニタリングデータの時系列解析」に進みました。
こちらは難なくクリアしました。
――4日目
「MRI画像のセグメンテーション」について学習しました。
コードを実行している間に「遺伝子情報の配列解析」の解答を探索しました。候補がとても多かったのですが、なんとか正解に至りました。
「血液の顕微鏡画像からの細胞検出」について学習しました。
これが半分ぐらい終了したところで次の日に持ち越しました。
――5日目
「血液の顕微鏡画像からの細胞検出」の続きをしました。
ほぼ一日中外出していたので、外出中には「遺伝子情報の配列解析」の改善したコードを実行してPCを放置しておきました。
結局、「遺伝子情報の配列解析」については最後まで正答を得るアプローチが見つかりませんでした。
帰宅後「特別講演」を受講しました。AIについて様々な立場の人の様々な講義が聴けて面白かったです。
■合格!!
コース修了証が得られました!!!


見てもらったら分かると思うんですけど、あんまり動画は見てません。
動画を見たのは
1.「資料」の通りに解いても正解できない
2.「資料」を見ただけでは理解できない概念がある
ときでした。念のため言っておくとキカガクの講座は本当にわかりやすいと思います。今回は研修生活が始まる前まで資格試験合格のために急ぎましたが、資格取得後もゆっくり勉強し直してみようと思っているところです。
■感想
ここまで読んでいただきありがとうございました。
受けてみて思いましたが、決して簡単な資格ではないと思います。
ですが、まだまだ上の資格はありますし、何よりニューラルネットワークをゼロから構築できるほどのスキルはありません。今回の試験で使用したPytorchは確かに便利ですが、高度なことをやろうと思うとまだまだTensorFlowが趨勢です。
一方でプログラミングを知らなくてもネットワークが組めるようになってきています。SONYのNeural Network Consoleとかは有名ですよね。
だからといって、Pythonでのコーディングが廃れることはないと思いますし、ネットワーク構築ツールにもし重大な欠陥があればユーザーは全く気づかないことになるという問題もあります。
そもそも簡単な問題であればディープラーニングは向いておらず、古典的な機械学習を利用するのが望ましいはずです。なんでもかんでもディープラーニング、ディープラーニングというわけにはいかないのです。その場合、必然的にコーディングが必要となります。
そういう状況に加えて、まだまだ医師のなかではAIに明るい人が少ないです。もちろん学生の頃からベンチャー企業とか立ち上げてなんかよくわからないですけどバリバリやってる人もいるのでしょう。ただ、そういう特殊なレベルは別です。
そういう特殊な人たちをのぞけば、自分がやりたい研究があったときにAIを取り入れてみたいなあと思ったとして、それを自分で実装できるスキルがある医師は少ないのではないでしょうか。
おわりに
わたしは、これに満足することなく今後も勉強を続けます。
やりたい研究が見つからない現状ですが、まずは道具から揃えるのもありなのかなー、と思って勉強している今日この頃です。
話の落とし所が掴めなくなってしまったので、このあたりで終わります。
ここまで読んでいただきありがとうございました。
2022/03/30 初版