研究開発の時代が長く、医療現場で実際に使われ始めてからはまだ日が浅い医療分野のAI。 医療AIのソフトウェア開発ってどんな風に進めるの? そんな疑問に、自社プロダクト医療画像診断AI(製品名EIRL)の製品開発を担当しているエンジニア2名がお答えします!
【目次】 -これまでのキャリア -AIプロダクト開発の進め方 -製品開発エンジニアとしてのAI領域の知識習得
―本日は製品開発エンジニア(バックエンド~フロントエンド開発を担当)の宮川さんと松永さんにお話しを伺いたいと思います。まずはこれまでのキャリアを教えてください!
宮川: 新卒では、GEヘルスケアという医療画像診断装置を作っている会社に入社しました。最初の約10年はCTのソフトウェア開発、その後の約10年はMRIの開発を担当していました。
エルピクセルには2018年3月、製品開発エンジニア3人目としてジョインしました。医療機器開発の経験を活かしながら、新規性の高い製品の立ち上げフェーズにコアメンバーとして携わっていけることに魅力を感じました。
松永: 私は、新卒でキヤノン電子というキヤノンの子会社に入社しました。そこでは宇宙開発事業の新規立ち上げに携わりました。本当に何もない、机や椅子すらなくて見積りを取る様なところから始まって、最後は無事に衛星を飛ばすところまで経験させてもらいました。
転職時は宇宙系の経験を活かしたポジションも検討しましたが、身近にいる医療関係者達から現場の大変さを聞いていて、「日頃助けられている医療現場の人たちに、自分も何か出来たらいいな」と思い、未経験だった医療系のエルピクセルに入社を決めました。入社して2年弱になります。
―お二人ともAI系のプロダクト開発は、エルピクセルが初めてになりますか?
宮川・松永: 初めてです。
―AIプロダクトの製品開発の流れを教えていただけませんか?エルピクセルではアルゴリズム開発はアルゴリズムエンジニアが担当、その後の製品化は皆さん製品開発エンジニアが担当されていますが、具体的にはどのような感じで引き継がれるのでしょうか?
松永: まずアルゴリズムチームの中で目標精度を達成したモデルの開発が完了すると、レビューが開かれます。そこにはマネジメント層や関係エンジニア・PMが参加し、開発を担当したアルゴリズムエンジニアからモデル概要の説明がされた後、参加者でディスカッションを行います。このレビューで合格が出ると、そのAIで検出するコードとモデルが製品開発エンジニアの元に届き、これをEIRLに組み込んでくださいというところが私たちのスタートです。
―アルゴリズムをEIRLに組み込む時、課題に感じていた点があれば教えてください。
松永: アルゴリズムエンジニアが作成した成果物(モデルやコード)のインターフェイスが開発者によってばらばらだった点は、課題として感じていました。
そこで、情報を整理して、統一したインターフェイスを作成し周知を行いました。まだ本格運用はこれからですが、トライアルでやってみたときは割とスムーズにアルゴリズムエンジニアと製品開発エンジニア間で情報の橋渡しが出来たので、統一することでこれから良くなりそうな感覚はあります。
―アルゴリズムエンジニアと関わっていくタイミングは、情報受け取りのタイミングがメインになるんですか?
宮川: あと1つ、製品リリース前にもコミュニケーションを取るケースがあります。
アルゴリズムエンジニアから受け取ったベースのモデルを製品に組み込んだ後に、「製品でもモデルと同じ結果が出る」ということを確認する検出性能試験のようなものを行います。 「同じ入力(症例)に対して同じ結果が出る」ことを確認してから製品としてリリースしますが、この「同じ結果が出る」というところが難しいこともあって。ちょっとした違いがあるだけでも「大体一緒だが完全に同じではない」ということが起きるので、場合によってはアルゴリズムエンジニアとコミュニケーションを取りながら問題を解決していきます。
なので、タイミングとしてはこの2回アルゴリズムエンジニアとのコミュニケーションが発生します。
―お二人のような製品開発エンジニアの専門性としては、機械学習やディープラーニングとは異なる領域だと思うのですが、AIや機械学習領域の知識はどのように習得されていったのですか?元々、AI製品の開発はされてなかったんですよね。
松永: 入社後自分で勉強したり(オススメ書籍は「医用画像におけるディープラーニング」)実務経験を通じて、知識習得をしていきました。
今もさすがにアルゴリズムエンジニアのようにゼロから機械学習モデルを開発することは出来ないと思いますが、機械学習フレームワークで加工されているような我々が受け取るモデル部分は、感覚的には掴んでいるつもりです。ただ技術は日々進歩するので、毎日勉強ですね。
宮川: 機械学習の大枠が理解出来ていれば、確かに製品開発エンジニアとしての仕事は出来ます。
ですが、アルゴリズムエンジニア達と隙間のないコミュニケーションを取るためには、私たちも理解を深めておかないといけないかなと思っています。 全然追いついてはいないですが、私は結構ガチで勉強していたりします! 書籍やネットだけではなく、アルゴリズムエンジニア中心で行っている論文輪読会という社内勉強会に参加して勉強したりしています。この輪読会が実は結構厳しくて(笑)。聞いているだけはNG・参加者みんなが発表して発言してっていうルールなんです。私も論文を探してきてそれを読んで勉強して、スペシャリスト達の前で頑張って発表しています。
松永: まだ私はその域には達していません(笑)
―ありがとうございます。今回は主にAIに関する部分について伺いましたが、また是非違った側面から話しを聞きたいです!
※次回インタビューはこちらから
-開発しているシステムやその担当体制 -エルピクセルでの開発が楽しめる人はどんな人?(チーム内コミュニケーションの雰囲気がわかりそうな話も出ていますよ) -今後していきたいチャレンジ