以下、添付図面を参照して本発明の好適な実施形態について説明する。
[第一の実施形態]
図1は、本発明の情報処理システムの構成を示す。
本発明の情報処理システムは、被検者に関する医用データを取得する医用撮像装置100と、情報端末110と、ネットワーク120と、情報処理装置130とを含み構成される。情報端末110は、一つの情報端末でもよく、複数の情報端末でもよい。
情報端末110には、操作部112と表示部114が接続されている。操作部112は、操作者からの各種指示を受け付け、情報端末110及び医用撮像装置100に対して、各種指示を伝達する。操作部112は、例えば、マウス、キーボード、ボタン、パネルスイッチ、フットスイッチ、トラックボール、ジョイスティックなどからなる。表示部114は、操作部112における各種指示を入力するためのGUIを表示したり、医用撮像装置100において取得された医用データに基づく画像データを表示したり、また情報処理装置130から受け取った出力を表示したりする。図1では、情報端末110に対して、操作部112と表示部114が別体として設けられているが、情報端末110は、操作部112と表示部114の機能を内部に有していてもよい。
医用撮像装置100は、例えばX線CT(Computed Tomography)装置、MRI(Magnetic Resonance Imaging)装置、超音波診断装置などの被検者の医用データを取得する装置である。
X線CT装置は、X線源とX線検出器を備えている。X線源とX線検出器とを被検者の周りで回転させながら、X線源からX線を被検者に照射してX線検出器で検出したデータを投影することによってCTデータを生成する。
MRI装置は、静磁場内に載置された被検者に対して所定の磁場を発生させ、取得されたデータに対してフーリエ変換することによってMRIデータを生成する。
超音波診断装置は、被検者に対して超音波を送信し、被検者からの反射波である超音波を受信して超音波データを生成する。
医用撮像装置100によって生成される医用データ(CTデータ、MRIデータ、超音波データなど)は、三次元データ(ボリュームデータ)、二次元データである。医用データは、例えば、被検者に関する画像データである。画像データには、生データも含まれる。医用画像データは、複数のフレームデータからなる動画像データであってもよい。また、医用データには、医用画像データを用いて各種計測を行った計測データも含まれる。
医用撮像装置100は、情報端末110に接続されている。情報端末110は、例えばPC端末、スマートフォンなどの携帯電話、ノート端末、タブレット端末などである。情報端末110は、被検者情報を設定することもでき、医用撮像装置100から取得される医用データと被検者情報を関連付けることができる。情報端末110は、医用撮像装置100から取得される医用データ、計測データの各種データを表示することもできる。
情報端末110及び情報処理装置130は、ネットワーク120に接続されている。ネットワーク120は、病院外の通信ネットワーク、例えば、無線通信(Wi-Fi)、インターネット、無線基地局、プロバイダ、通信回線などを含む。また、ネットワーク120は、病院内の通信ネットワークであるイントラネットなどを含んでいてもよい。情報端末110は、ネットワーク120により、情報処理装置130と通信することができる。情報端末110は、医用データ(医用画像データを含む)や、医用情報、モデルの選択情報等を情報処理装置130に伝達することができる。情報処理装置130は、医用データ(医用画像データを含む)を用いて推論を行った推論結果を情報端末110に伝達することができる。
図2は、本発明の情報処理装置130の構成の一例を示す。情報処理装置130は、生成された学習済みモデルをクラス階層と対応づけて記憶する記憶部204と、学習済みモデルを用いて推論を行う推論部206を備えている。さらに情報処理装置130は、推論対象の医用画像データを含む医用情報を取得する取得部208と、取得部208によって取得された医用情報に基づいて、階層関係にある第一の学習済みモデルおよび第二の学習済みモデルを選択する選択部210と、選択部210によって選択された階層関係にある学習済みモデルを用いて推論を行う推論部206と、選択部210によって選択された階層関係にあるモデルの情報や、該モデルによる推論結果を出力する出力部212を備えている。なお、取得部208が取得する医用情報は、例えば推論対象である医用画像データ、推論目的、クラスを示す情報のうち少なくとも一つである。また情報処理装置130は、医用画像データを用いて教師データを生成する教師データ生成部200と、教師データ生成部200において生成された教師データを用いて、医用画像データに関する学習を行う学習部202を含んで構成されてもよい。なお教師データ生成部200や、学習部202は、外部の装置等の構成として含まれていてもよい。
情報処理装置130の構成要素(機能)は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサが、メモリに記憶されたプログラム(ソフトウェア)を実行することにより実現される。
情報処理装置130は、プロセッサとメモリを内部に有している。プロセッサは、メモリに記憶されたプログラムに従って、情報処理装置130の各処理を実行することができ、教師データ生成部200、学習部202、記憶部204、推論部206、取得部208、選択部210、出力部212などとして機能させることができる。
教師データ生成部200は、ネットワーク120に接続されており、医用画像データ、計測データなどを含む医用データを取得することができる。教師データ生成部200は、医用画像データを用いて教師データを生成する。教師データ生成部200によって生成される教師データは、ニューラルネットワークが行う推論のタスクや分類の対象に応じて決定される。
ニューラルネットワークが行う推論のタスクとしては、例えば医用画像データのクラスを分類する分類タスクや、医用画像データのどの位置に何が写り込んでいるかを検出する検出のタスク、医用画像データから対象の領域を抽出するセグメンテーションのタスク等が挙げられる。
分類のタスクを行うニューラルネットワークを学習する際には、例えば教師データ生成部200は、医用画像データと、医用画像データに写り込んでいる対象を示すラベルである正解ラベルとを対にした教師データを生成する。
一方、ニューラルネットワークによって検出のタスクを行う場合には、例えば教師データ生成部200は、医用画像データと、医用画像データに対して、医用画像データに写り込んでいる対象の位置を示すROI(Region Of Interest)と対象を示すラベルである正解ラベルを付与した正解画像とを対にした教師データを生成する。
ニューラルネットワークによって行うタスクがセグメンテーションの場合には、例えば教師データ生成部200は、医用画像データと、医用画像データに対して、医用画像データに写り込んでいる対象の画素の位置情報と、対象を示すラベルである正解ラベルを付与した正解画像とを対にした教師データを生成する。
例えば、情報端末110から取得された医用画像データから、病変の有無、病変の種類及び領域をセグメンテーションするタスクを行うニューラルネットワークに学習させる場合には、教師データ生成部200は、病変領域を有する医用画像データと、医用画像データに対して病変の種類を示す正解ラベルの情報と該病変の画素の位置情報と付与した正解画像とを対にした教師データを生成する。
また、教師データ生成部200は、学習部202で学習を行うニューラルネットワークに応じて、医用データの前処理を行ってもよい。例えば、ニューラルネットワークによる推論の対象が医用画像データである場合には、取得した医用画像データに対して、ノイズ除去や、フィルタ処理、画像の切り出し、解像度の変更等の処理を行ってもよい。推論の対象が文章等の自然言語であった場合には、形態素解析を行い、ベクトル変換技術を適用する等、ニューラルネットワークの推論の対象と、タスクに応じて、教師データ生成部200は処理対象のデータの前処理を行ってもよい。なお、図2では、教師データ生成部200を情報処理装置130の内部の構成として有している形態を示したが、情報端末110は、教師データ生成部200の機能を内部に有していてもよい。つまり、教師データ生成部200は、情報端末110の構成として保有されていてもよい。例えば、上述したような教師データを情報端末110で生成した後に、ネットワーク120を介して、情報処理装置130の学習部202によって推論器の学習を行ってもよい。
学習部202は、教師データ生成部200と接続されている。学習部202は、ニューラルネットワークを用いて、医用画像データを教師データと対応づけて学習することにより学習済みモデルを生成する。ここで、学習済みモデルは、学習処理を所定基準まで実施することにより決定されたパラメータと該パラメータに対応するモデルの情報とを示す。なお、学習済みモデルは、転移学習の際に他のモデルの学習に用いられても、該学習済みモデルに対してさらに学習処理が実行されてもよい。
ニューラルネットワークは、複数の層から構成される。ニューラルネットワークの中でも、特にディープラーニング技術の一種であるCNN(Convolutional Neural Network)は、図示はしないが、入力層と出力層との間に複数の中間層を有している。複数の中間層は、畳み込み層、プーリング層、アップサンプリング層、合成層がある。畳み込み層は、入力値群に対して畳み込み処理を行う層である。畳み込み層では、入力された医用画像データの畳み込みを行い、医用画像データの特徴を抽出する。
プーリング層は、入力値群を間引いたり、合成したりすることによって、出力値群の数を入力値群の数よりも少なくする処理を行う層である。アップサンプリング層は、入力値群を複製したり、入力値群から補間した値を追加したりすることによって、出力値群の数を入力値群の数よりも多くする処理を行う層である。合成層は、ある層の出力値群や医用画像データを構成する画素値群といった値群を、複数のソースから入力し、それらを連結したり、加算したりして合成する処理を行う層である。中間層の数は、学習内容に応じて、随時変更することができる。
記憶部204は、学習部202に接続されている。記憶部204は、複数のクラス階層と、複数のクラス階層のそれぞれに対応する学習済みモデルを記憶している。クラス階層は、学習済みモデルが分類するクラスに対応しており、例えば第一のクラス階層は臓器領域を分類するクラス、第二のクラス階層は特定の領域内から異常を検出するクラスである。記憶部204においてクラス階層に属するクラスを分類する学習済みモデルが該クラス階層に対応付けられて記憶されている。また第一のクラス階層に対応する学習済みモデルのうち、例えば肺野領域を特定する学習済みモデルと、第二のクラス階層に対応する学習済みモデルのうち、肺野領域から異常部位を検出する学習済みモデルは、階層関係として定義する関係にある。
階層関係とは、学習済みモデルによって推論するフローに対応している。推論フローとは、例えばユーザの所望の推論結果を取得するために、学習済みモデルを用いて行う推論処理の順序を指す。例えば情報処理装置130に対してCT画像が入力されると、CT画像から肺野領域を推論する第一の学習済みモデルを適用し、推論された肺野領域から第二の学習済みモデルが異常領域を推論するフローを、記憶部204は階層関係として記憶している。
記憶部204が記憶する学習済みモデルは、例えば医用画像データにおける臓器領域や病変領域を検出や抽出するように学習された学習済みモデルである。ここで、学習済みモデルは、例えば、ニューラルネットワークを用いて生成されたものであるが、ニューラルネットワーク技術の中でもディープラーニング技術の一つであるCNNやRNN(Recurrent Neural Network)、CNNやRNNを派生させたモデル以外にも、サポートベクターマシンやロジスティック回帰、ランダムフォレスト等の他の機械学習技術を用いてもよいし、ルールベースに基づく手法を用いてもよい。
推論部206は、取得部208から医用画像データ、計測データなどを含む医用データを取得することができる。推論部206は、記憶部204に接続されており、記憶部204に記憶された学習済みモデルのうち、後述する選択部210によって選択された学習済みモデルを用いて推論を行うことができる。推論部206は、例えば医用画像データにおける病変の種類及び領域を抽出するように学習された学習済みモデルを用いて、医用画像データに対して推論を行う。医用画像データに病変がある場合、推論部206は、病変の種類及び領域を出力することができる。また、選択部210によって階層関係にある複数の学習済みモデルが選択された場合には、階層関係にある複数の学習済みモデルのうち、より上位の学習済みモデルを用いて、推論部206は推論処理を実施し、該推論結果に基づく入力を用いて、より下位の学習済みモデルを用いて推論処理を実施する。即ち、推論部206は選択された階層関係にある複数の学習済みモデルを用いて推論を行う。
図3は、本発明の記憶部204の構成を示す。記憶部204は、学習部202において学習された複数の学習済みモデルと付帯情報をクラス階層に対応付けて記憶する。クラス階層は、学習済みモデルが推論するクラスに対応しており、クラス階層に属するクラスに分類する学習済みモデルが、該クラス階層に対応付けられて記憶されている。クラスが上位になるほど、医用撮像装置100によって取得された医用画像データに対して早い段階で推論されるべきクラス階層であり、クラスが下位になるほど該医用画像データに対して後の段階で推論されるべきクラス階層である。上位のクラス階層に対応する学習済みモデルを用いて推論部206が推論処理を実行することによって、より下位のクラス階層に対応する学習済みモデルによる推論性能が向上する。また下位のクラス階層に対応する学習済みモデルを補助する働きとして、上位のクラス階層に対応する学習済みモデルは、例えば臓器領域の抽出や、ノイズの削減等の処理が実行される。ここで記憶部204は、例えば第一のクラス階層301と第二のクラス階層302から構成される。例えば第一のクラス階層301は臓器領域を推論するクラス、第二のクラス階層302は、特定の領域から異常を推論するクラスに対応している。なお、クラス階層は、3つ以上のクラス階層から構成されていてもよい。記憶部204における複数のクラス階層を構成する各クラス階層には、各クラス階層に対応するクラスを推論する学習済みモデルが複数記憶されていてもよい。
記憶部204における第一のクラス階層301には、例えば第1-1の学習済みモデル310と、第1-1の学習済みモデル310に対して第1-1の付帯情報330が付与されて記憶されている。また、この場合に記憶部204における第一のクラス階層301には第1-2の学習済みモデル312と、第1-2の学習済みモデルに対して第1-2の付帯情報332が付与されて記憶されている。
記憶部204における第二のクラス階層302には、第2-1の学習済みモデル314に対して第2-1の付帯情報334、第2-2の学習済みモデル316に対して第2-2の付帯情報336、第2-3の学習済みモデル318に対して第2-3の付帯情報338、第2-4の学習済みモデル320に対して第2-4の付帯情報340が付与されて記憶されている。付帯情報は、付帯する学習済みモデルの推論対象や、クラス、階層関係のすくなくともいずれかを含んだ情報が記憶されていてもよい。後述する選択部210は、付帯情報と、取得部208が取得した医用情報とを比較することで、階層関係にある複数の学習済みモデルを選択してもよい。
ここで、第一のクラス階層301における第1-1の学習済みモデル310と、第二のクラス階層302における第2-1の学習済みモデル314および第2-2の学習済みモデル316は階層関係にある。ここでは階層関係を模式的に線で繋いで示している。
階層関係は、例えばユーザによって、事前に定められていてもよい。
階層関係は、例えば部位と病変によって定められている。部位と病変によって階層関係を定義した場合には、第一のクラス階層301が部位を検出する階層であり、第二のクラス階層302が病変を検出する階層である。例えば、第一のクラス階層301に対応する学習済みモデルによって肺野部位が検出され、第二のクラス階層302に対応する学習済みモデルによって肺野部位における病変が検出される。
また、階層関係は、第一の病変と第二の病変によって定められていてもよい。その場合には、第一のクラス階層301が第一の病変を検出する階層であり、第二のクラス階層302が第一の病変に起因する第二の病変を検出する階層である。第一のクラス階層301が肺結節を検出する階層であり、第二のクラス階層302が肺結節に起因する病変(転移、合併など)を検出する階層である。また、第一のクラス階層301における第1-2の学習済みモデル312は、第二のクラス階層における第2-3の学習済みモデル318および第2-4の学習済みモデル320と階層関係にある。階層関係とは、例えば医用画像データに対して実行する複数の学習済みモデルを順に適用して、ユーザの所望の推論結果を取得するための推論の順序に対応している。例えば、第一の推論と、第一の推論を受けて第二の推論を行ってアウトプットを得るフローに対しては、第一の推論を行う第一の学習済みモデルと、第二の推論を行う第二の学習済みモデルを階層関係として記憶部204は記憶している。なお、ここでは簡便のために階層関係を線で示したが、例えば学習済みモデルのそれぞれに付帯する付帯情報が、階層関係として第一の推論の後に実施する第二の推論を行う学習済みモデルを示す情報を記憶している。また、より上位のクラス階層に対応する学習済みモデルに付帯する付帯情報が、より下位のクラス階層に対応する学習済みモデルを示す情報を記憶している場合以外にも、より下位のクラス階層に対応する学習済みモデルに付帯する付帯情報が、より上位のクラス階層に対応する学習済みモデルを示す情報を記憶していてもよい。また、上位のクラス階層に対応する学習済みモデルに付帯する付帯情報と、下位のクラス階層に対応する学習済みモデルに付帯する付帯情報が、互いのモデルを指す情報を双方向に記憶していてもよい。
記憶部204が複数のクラス階層に対応付けて複数の学習済みモデルを記憶し、複数の学習済みモデル間の階層関係を記憶する。そのため、後述する選択部210は、階層関係にある学習済みモデルを選択することができ、ユーザによるモデル選定や、選定された複数のモデルに対するアウトプットやインプットを入力する手間を削減することができる。なお、図3では、6つの学習済みモデルを付帯情報とともに記憶部204に記憶する形態を示したが、記憶部204は、7つ以上の学習済みモデルを付帯情報とともに記憶することも、6つ未満の学習済みモデルを記憶することもできる。また、記憶部204で記憶される複数の学習済みモデルのそれぞれは、推論するタスク、分類対象を示すクラス、モデル構造、教師データのいずれか一つが異なっているものする。また、選択部201は各学習済みモデルに付与される付帯情報に基づいてそれぞれの学習済みモデルを指定したり、学習済みモデルを特定したりすることができる。さらに、選択部201は付帯情報に基づいて、階層関係にある学習済みモデルを指定したり、特定したりすることができる。
情報端末110からの入力に応じて選択部210によって付与情報に基づいて階層関係にある第一の学習済みモデルおよび第二の学習済みモデルが選択され、選択された学習済みモデルを用いて、推論部206は、情報端末110から取得される推論対象の医用画像データに対して推論処理を実行する。
推論部206は、例えば医用画像データにおける病変領域や臓器領域を抽出するように学習された学習済みモデルを用いて、推論対象の医用画像データに対して推論を行う。推論部206は階層関係にある学習済みモデルのうち、より上位のクラス階層に属する学習済みモデルから順に推論を行う。例えば、選択部210によって、第一の学習済みモデルおよび第二の学習済みモデルが選択された場合には、第一の学習済みモデルを用いて第一の推論が行われ、第一の推論による第一の推論結果に基づいて、第一の学習済みモデルと階層関係にある第二の学習済みモデルを用いて第二の推論が行われる。すなわち、推論部206は、選択部210によって選択された階層関係にある学習済みモデルのうち、より上位のクラス階層に対応する学習済みモデルによって推論し、該推論による推論結果に基づく入力をより下位のクラス階層に対応する学習済みモデルによって推論する。推論部206は上位のクラス階層に対応する学習済みモデルによって推論し、該学習済みモデルと階層関係にあるより下位のクラス階層に対応する学習済みモデルによって推論することで、出力される推論処理の精度を向上させることができる。
推論部206は、最も下位に対応する学習済みモデルによる推論結果を出力部212によって出力させてもよい。また、推論部206は階層関係にある学習済みモデルのそれぞれの推論結果を出力部212によって出力させてもよい。
取得部208は、情報端末110より推論対象の医用画像データを含む医用情報を取得する。医用情報は、例えば推論対象の医用画像データや、推論目的、クラスを示す情報のすくなくとも一つを含む情報である。ユーザは、例えば情報端末110を操作して、推論対象の医用画像データを送信すると、取得部208は送信された医用情報を取得し、取得した情報を選択部210に送信する。取得部208は、取得された医用情報に不足があった場合には、追加の情報の送信をユーザに促す出力を出力部212により実施させる。また、取得部208は、学習済みモデルを選択する選択情報を取得してもよい。取得された選択情報に応じて、選択部210は学習済みモデルを選択し、選択された学習済みモデルを用いて推論部206によって推論をする。選択情報は、例えば情報端末110の操作部112を介してユーザによって入力される。
選択部210は、取得部208が取得した医用情報に基づいて、記憶部204から階層関係にある学習済みモデルを推論部206によって推論を行うための学習済みモデルとして選択する。
例えば、取得部208が取得した医用情報が医用画像データであった場合には、選択部210は、付帯情報を参照し、複数のクラス階層のそれぞれに対応する学習済みモデルとの適合度を算出し、適合度に応じて階層関係にある複数の学習済みモデルを選択する。適合度の算出は、例えば、クラス階層に対応するクラスに対応する対象物が、対象の医用画像データに存在する確率を、学習済みのモデルにより取得してもよい。また、適合度は、他の算出手法によって算出されてもよい。例えば、各クラス階層に対応する学習済みモデルの教師データとの類似度により適合度が算出されてもよい。選択部210は、適合度を算出し、算出された適合度が所定の値よりも大きいクラス階層に対応する学習済みモデルから、学習済みモデルを選択する。選択部210は、適合度が所定の値よりも大きい学習済みモデルのうち、最も下位の階層に対応する学習済みモデルを選択し、選択された学習済みモデルの付帯情報から、階層関係にあるより上位の階層に対応する学習済みモデルを選択する。また、クラス階層が3つ以上ある場合には、階層関係に応じて3つ以上の学習済みモデルが選択される。なお、選択部210による選択については、この形態に限られず、適合度が最も高いモデルを含むように階層関係にある複数の学習済みモデルが選択されてもよい。
また、選択部210は、適合度が所定の値よりも大きい学習済みモデルのうち、最も上位のクラス階層に対応する学習済みモデルを選択してもよい。選択部210は、選択した最も上位のクラス階層に対応する学習済みモデルの付帯情報から、より下位のクラスに対応する学習済みモデルを選択する。またクラス階層が3つ以上ある場合には、階層関係に応じて3つ以上の学習済みモデルが選択される。
また、取得部208により取得をした医用情報が推論目的やクラスの情報であった場合には、選択部210は、付帯情報を参照し、推論目的や、クラスの情報と、記憶部204のクラス階層との適合度を算出する。適合度は例えば、推論目的やクラスの情報のベクトルと、クラス階層を構成するクラスのベクトルとの類似度を適合度とする。もしくは、推論目的やクラスの情報のベクトルを入力として、学習済みモデルが推論処理を行った尤度を適合度としてもよい。
さらに、取得部208が取得した情報が、推論目的やクラスの情報および、医用画像データであった場合に、選択部210は付帯情報を参照し、まず上述の方法によって推論目的やクラスの情報から適合度を算出する。次に、選択部210は、医用画像データに対して上述の方法によって適合度を算出する。最後に、選択部210は、両適合度に基づく適合度に基づいて、上述の方法によって階層関係にある複数の学習済みモデルを選択することができる。なお、選択部210は、両適合度のそれぞれを所定の値と比較して学習済みモデルを選択してもよいし、両適合度を合算や乗算によって組み合わせることによって算出される適合度を所定の値と比較することにより、学習済みモデルを選択してもよい。選択部210によって階層関係にある複数の学習済みモデルが選択されると選択された学習済みモデルに関する情報を出力部212に送信する。
出力部212による出力の後、もしくは出力の前に取得部208が例えば情報端末110から、ユーザによるモデルの選択情報を取得した場合には、選択部210は、選択情報に基づいて階層関係にある複数の学習済みモデルを選択する。
出力部212は、選択部210によって選択された学習済みモデルの情報の出力を行う。出力部212による出力は、情報処理装置130とネットワーク120を介して接続可能な情報端末110に対して行われる。また、出力部212は、推論部206による推論結果を情報端末110に出力する。出力部212は、選択部210によって選択された階層関係にある学習済みモデルによる推論結果を出力する。出力部212が出力をする推論結果は、選択部210によって階層関係にある第一の学習済みモデルおよび第二の学習済みモデルが選択された場合には、第一の学習済みモデルが分類をするクラス階層よりも下位のクラス階層に対応する第二の学習済みモデルによる推論結果を出力する。なお、出力部212による出力は、選択された階層関係にある複数の学習済みモデルのそれぞれの推論結果を出力してもよい。
すなわち、本実施形態における情報処理装置130は、医用画像データを第一のクラス階層に属するクラスに分類する第一の学習済みモデルと、該医用画像データを該第一のクラス階層より下位のクラス階層である第二のクラス階層に属するクラスに分類する第二の学習済みモデルと、を含む複数の学習済みモデルを記憶する記憶部204と、推論対象の医用画像データを含む医用情報を取得する取得部208と、取得部208によって取得された医用情報に基づいて、互いに階層関係にある第一の学習済みモデルおよび第二の学習済みモデルを選択する選択部210と、選択部210によって選択された複数の学習済みモデルを用いて、推論対象の医用画像データに対して推論を行う推論部206と、推論部206において推論を行った推論結果のうち、第二の学習済みモデルによる推論結果に基づく出力をする出力部とを備える。
本構成によって、複数の学習済みモデルから階層関係にある複数の学習済みモデルを選択することができ、ユーザによる複数の学習済みモデルからの学習済みモデルの選定や、選定された複数の学習済みモデルに対するアウトプットとインプットを入力する手間を削減しながら、選択された学習済みモデルによる推論結果を把握することができる。
以下、図4を用いて医用情報から、選択部210が推論を行う学習済みモデルを選択するまでのフローについて説明する。
ステップS400において、取得部208は、推論対象の医用画像データを含む医用情報を取得する。取得部208によって医用情報が取得されると、ステップS401へと進み、医用情報が取得されなかった場合には、本処理を終了する。
ステップS401において、選択部210は、上述の方法のいずれかによって各クラス階層との適合度を算出し、算出された適合度が所定の値より大きいか否かを判定する。選択部210によって算出された適合度が所定の値より大きい場合には、ステップS402へと進む。選択部210によって算出された適合度が所定の値以下の場合には、本処理を終了する。
ステップS402において、選択部210は、所定の値より大きいと判定された学習済みモデルが2つ以上あるか否かを判定する。選択部210は、所定の値より大きいと判定された学習済みモデルが2つ以上の場合には、ステップS403に進み、2つ未満の場合にはステップS406へ進む。
ステップS403において、選択部210は、複数の学習済みモデルが階層関係にあるかを判定する。選択部210による該判定は、2つ以上の学習済みモデルのそれぞれに付帯する付帯情報を参照することで判定される。選択部210によって階層関係にある学習済みモデルがないと判定された場合には、ステップS404へ進み、階層関係にある学習済みモデルがあると判定された場合には、ステップS405へと進む。
ステップS404において、選択部210は、複数の学習済みモデルのうち、最も適合度の高い学習済みモデル推論部206によって推論を行う学習済みモデルとして選択することができる。なお、ここではユーザ等が事前に設定した学習済みモデルや、モデルの選択基準に応じて、別途学習済みモデルが選択されてもよい。
ステップS405において、階層関係にある複数の学習済みモデルを、推論部206によって推論を行う学習済みモデルとして選択することができる。
ステップS406において、出力部212は、選択部210によって選択された学習済みモデルを出力する。
次に、図5を用いて、選択部210によって選択された学習済みモデルを用いて、推論部206が推論する際のフローについて説明する。
ステップS500において選択部210によって学習済みモデルが選択されるとステップS501に進み、モデルが選択されていない場合には、本処理を終了する。
ステップS501において、推論部206は、選択部210によって選択された学習済みモデルが2つ以上か否かを判定し、学習済みモデルが2つ未満の場合はステップS502へ進み、学習済みモデルが2つ以上の場合はステップS503へと進む。
ステップS502において、推論部206は、選択部210によって選択された学習済みモデルを用いて、推論対象の医用画像データに対して推論処理を実行する。学習済みモデルによる推論処理が実施されると、推論結果を出力部212に送信し、ステップS506へと進む。
ステップS503において、推論部206は、2つ以上の学習済みモデルが階層関係にあるか否かを判定し、階層関係にない場合にはステップS504へと進み、階層関係にある場合には、ステップS505へと進む。
ステップS504において、推論部206は、2つ以上の階層関係でない学習済みモデルのそれぞれを用いて推論処理を実行する。学習済みモデルによる推論処理が実施されると、推論結果を出力部212に送信し、ステップS506へと進む。
ステップS505において、推論部206は、階層関係にある複数の学習済みモデルのうち、より上位のクラス階層に対応する学習済みモデルから順に推論処理を実行する。選択された学習済みモデルが、第一のクラス階層301に対応する第1-1の学習済みモデル310と、第二のクラス階層302に対応する第2-1の学習済みモデル314であった場合について説明する。推論部206は、第1-1の学習済みモデル310を医用画像データに適用し推論処理を実行し、第一の推論結果を取得する。次に、推論部206は、第2-1の学習済みモデル314に対して第1-1の学習済みモデル310による第一の推論結果に基づく入力をし、推論処理を行い第二の推論結果を取得する。学習済みモデルによる推論処理が実施されると、推論結果を出力部212に送信し、ステップS506へと進む。
ステップS506において、出力部212は、選択部210によって選択された学習済みモデルによる推論結果を出力する。出力部212は、階層関係にある複数の学習済みモデルによる推論結果のうち、より下位のクラス階層に対応する第二の学習済みモデルの推論結果を出力する。なお、出力部212による出力をする推論結果は適宜変更でき、推論結果のすべてを出力しても、推論結果のうち一部のみを出力してもよい。出力部212における出力は例えば情報処理装置130に対してネットワーク120を介して通信可能な情報端末110に対して行われる。なお、出力部212による出力は、推論を所望するユーザに出力できれば、例えば情報処理装置130に備えついている表示部(不図示)や、情報処理装置130に対してユーザがアクセスすることで確認がされてもよい。
本実施形態における情報処理装置130によって、複数の学習済みモデルから階層関係にある複数の学習済みモデルを選択することができ、また選択された階層関係にある複数の学習済みモデルによる推論処理を実行し、該実行結果を出力することができる。
ここで、図6を用いて、選択部210によって選択された階層関係にある学習済みモデルによる推論のフロー(図5のステップS505)の一例について説明する。取得部208が取得した推論対象の医用画像データ600を、選択部210によって選択された互いに階層関係にある第一の学習済みモデル(肺野領域抽出)および第二の学習済みモデル(結節領域検出)を用いて推論部206が推論する。まず、取得部208が取得した推論対象の医用画像データ600は、例えば3次元胸部CT画像データを構成する複数の断面画像のうち、一つの断面画像を示している。推論対象の医用画像データ600には、被検者の胴体601と、空気領域606が描出されている。また、被検者の胴体601の内部には、右肺に対応する肺野領域602、左肺に対応する肺野領域603が存在する。また被検者の中央には気管604が存在する。また右肺に対応する肺野領域には、結節領域605が存在する。
推論部206は推論対象の医用画像データ600に対して、階層関係にある第一の学習済みモデルおよび第二の学習済みモデルを用いて推論処理を実行する。まず、推論部206は、より上位のクラス階層に対応するCT画像から肺野領域を抽出する第一の学習済みモデルを用いて、推論対象の医用画像データから肺野領域を抽出する。第一の学習済みモデルによる推論結果は、例えば第一の推論結果610である。第一の推論結果610では、推論対象の医用画像データ600から肺野領域612が抽出されている。第一の学習済みモデルによって第一の推論結果が得られると、推論部206は、第一の推論結果610における肺野領域612の情報に基づいて第二の学習済みモデルを用いた第二の推論を実施する。第二の学習済みモデルへの入力は、例えば第一の推論結果を構成する肺野領域の画像上での座標情報である。また、第一の学習済みモデルによる出力が尤度を伴う出力である場合には、該尤度の情報も第二の学習済みモデルへの入力としてもよい。もしくは、尤度に対して閾値処理等を適用した情報を第二の学習済みモデルへ入力してもよい。推論部206は、第二の学習済みモデルを用いて、第一の学習済みモデルによって抽出された肺野領域内から、結節領域を検出する推論を実施する。第二の学習済みモデルによる第二の推論結果620は、肺野領域内の結節領域622を検出している。
以下、図7を用いて、図6の推論フローによって推論された結果を出力する出力部212による画面700の例について説明をする。出力部212は画面700を、ネットワーク120を介して情報端末110に出力をしてもよいし、情報処理装置130にユーザがログインすることで、出力内容を把握できるように情報を記憶していてもよい。
画面700は、例えば推論対象の医用画像データ701と、推論を行った階層関係にあるモデル情報を出力するモデル情報の出力欄702、推論結果を示す推論情報の出力欄703から構成される。出力部212は、推論対象の医用画像データに対して、第二の学習済みモデルによる推論結果に基づく枠を重畳した重畳画像701を表示している。モデル情報の出力欄702には、選択部210によって選択された階層関係にある学習済みモデルの情報が記載され、ここでは第一の学習済みモデルおよび第二の学習済みモデルを用いて推論を行ったことが示されている。推論情報の出力欄703には、推論結果として、第二の学習済みモデルによる推論結果として、結節領域を検出した旨と、その尤度を表示している。ユーザは、出力部212による該出力を受けることで、推論対象の医用画像データに対して、選択された階層関係にある複数の学習済みモデルと、該複数の学習済みモデルの推論結果のうち、第二の学習済みモデルによる推論結果を把握することができる。
(変形例1)
本変形例ではさらに、所定の値よりも大きい学習済みモデルの中から選択された下位の階層に対応する学習済みモデルが、複数の学習済みモデルと階層関係にある学習済みモデルであった場合における選択部210による学習済みモデルの選択について説明をする。
選択部210が下位の階層に対応する学習済みモデルと階層関係にある複数の学習済みモデルを選択した場合には、推論部206は、選択された複数の学習済みモデルに推論処理を実施させ、複数の学習済みモデルからの出力を、下位の階層に対応する学習済みモデルへの入力とする。下位の階層に対応する学習済みモデルへの入力は、複数の学習済みモデルからの出力を統合したものであってもよいし、いずれかの出力が選択されてもよい。また、アンサンブル学習のように、複数の学習済みモデルからの出力に対して重みを付けた出力を、下位の学習済みモデルへの入力としてもよい。
(変形例2)
上述の実施形態において、選択部210は、医用情報とクラス階層との適合度を算出し、適合度が所定の値よりも大きい学習済みモデルから、推論部206による推論処理を行う学習済みモデルを選択することを説明した。
ここでは、選択部210はさらに選択部210によって選択された階層関係にある複数の学習済みモデルの最も下位もしくは、最も上位のクラス階層に対応する学習済みモデルが、さらに上位もしくは下位のクラス階層に対応する学習済みモデルと階層関係にある場合に、選択部210は、該学習済みモデルを推奨する学習済みモデルとして選択をし、出力部212は、該学習済みモデルの選択を推奨する出力を行ってもよい。
[第二の実施形態]
上述の実施形態では、出力部212は、階層関係にある学習済みモデルの推論結果のうち、より下位のクラス階層に対応する第二の学習済みモデルによる推論結果に基づく出力をする構成について説明をした。本形態では、出力部212は、さらに第二の学習済みモデルと階層関係にあって且つ、より上位のクラス階層に属するクラスに分類をする第一の学習済みモデルによる推論結果を出力する。ユーザは、推論部206によって推論対象の医用画像データに対して実施される推論フローのそれぞれによる推論結果を出力されることにより、モデル選択の適正度や、モデルによる推論結果をより簡便に把握することができる。以下、図8を用いて、本実施形態による出力部212による出力について説明をする。画面800は、選択部210によって選択された階層関係にある第一の学習済みモデルおよび第二の学習済みモデルを用いて推論部206により推論を行ったことを第一のモデル情報810、第二のモデル情報820として出力する。また、第一の学習済みモデルによって推論対象の医用画像データに対する第一の推論により抽出された肺野領域814を重畳した重畳画像812が出力される。また、第一の推論の結果816として、第一の推論によって抽出された領域の情報と、その尤度とが出力される。画面800は、さらに第二の学習済みモデルによって、第一の学習済みモデルの推論結果に基づく第二の推論を実施した結果を出力している。第一の学習済みモデルによって抽出された肺野領域に対して、検出した結節領域を示す枠824を重畳した重畳画像822、該第二の推論の結果824として、検出した領域とその尤度の情報が出力される。ユーザは選択された階層関係にある複数の学習済みモデルと、複数の学習済みモデルによる推論結果とを把握することができ、さらに、推論結果と推論対象とを比較することで、モデルの精度やモデルの適否について判断することができる。
(変形例)
上述までの実施形態では、選択部210によって選択される階層関係にある学習済みモデルが2つの場合を例として説明をしたが、選択部210によって選択される階層関係にある学習済みモデルは、3つ以上でもよい。また出力部212は、階層関係にある3つ以上の学習済みモデルのそれぞれの推論結果を出力してもよいし、より下位の学習済みモデルによる推論結果を出力してもよい。図9では、選択部210によって、階層関係にある3つのモデルとして、肺野領域を抽出する第一の学習済みモデル、肺結節領域を抽出する第二の学習済みモデル、結節領域の良悪性を鑑別する第三の学習済みモデルが選択された場合の画面900を例にして説明する。
画面900は、推論部206が推論を行ったモデル情報を出力する。選択部210によって階層関係にある3つの学習済みモデルが選択された場合には、出力部212は、モデル情報として第一のモデル情報910、第二のモデル情報920、第三のモデル情報930を画面900に示す。また、出力部212は、それぞれのモデルに対応する推論結果を示す重畳画像を画面900に示している。第一のモデルとして選択された第一の学習済みモデルを用いて、推論対象の医用画像データに対して第一の推論を行った結果である肺野領域912を重畳した重畳画像を示す第一の推論結果911、第二のモデルとして選択された第二の学習済みモデルを用いて、肺野領域に対して第二の推論を行い、検出した結節領域を囲む枠922を重畳表示した重畳画像を示す第二の推論結果921、第三のモデルとして選択された第三の学習済みモデルを用いて、結節領域の良悪性鑑別を行う第三の推論を行い、良性と悪性の尤度を出力する第三の推論結果931からなる。ユーザは画面900を通して、推論対象の医用画像データに対して、推論を行ったモデルの情報と、モデルによる推論結果を把握でき、推論結果と推論対象とを比較することで、モデルの精度や適否について判断することができる。
[第三の実施形態]
上述までの実施形態により、出力部212は、選択部210によって選択された階層関係にある学習済みモデルを用いて、推論部206によって推論された推論結果を出力することで、ユーザのモデル選択の手間や、インプットやアウトプットに係る手間を削減でき、さらにモデルの精度や適否について判断することができる。
本実施形態では、情報処理装置130がさらに、モデルを再選択する情報や推論結果を修正する情報を取得する修正情報の取得部1000を有する形態について図10を用いて説明する。修正情報の取得部1000は、情報端末110における操作部112等からの入力された修正情報をネットワーク120を介して取得する。修正情報の取得部1000が取得した修正情報に基づいて、推論部206は推論を行う。修正情報の取得部1000は、取得した修正情報が、選択部210によって選択された階層関係にある学習済みモデルのうち、少なくともいずれかの推論結果を修正する情報であった場合には、推論部208に対して、再選択されたモデル情報を送信し、推論部208は再選択されたモデルを含む学習済みモデルによって推論を行う。修正情報の取得部1000は、取得した修正情報が選択部210によって選択された階層関係にある学習済みモデルによる推論結果のうち、少なくともいずれかの推論結果を修正する情報であった場合には、推論部206に対して、推論結果を修正された学習済みモデルと階層関係にある、より下位の学習済みを用いて修正した推論結果に基づいた推論を実施させる。本形態により、ユーザによるモデルの選択や、インプットやアウトプットに係る手間を削減しながら、モデルの精度や適否を判断でき、さらに選択されたモデルや、モデルの推論結果がユーザの所望の情報と異なっていた場合も、モデルの再選択や、推論結果の修正等の修正情報に基づいた推論結果を出力部212が出力することができる。以下より、モデルの再選択の際の画面について図11を用いて説明し、推論結果を修正する際の画面について図12を用いて説明する。
図11を用いて、出力部212による画面1100に対して、ユーザがモデルの再選択を行う際の画面1100について説明をする。画面1100は、図9と同様に選択部210によって、階層関係にある3つの学習済みモデルが選択され、選択された階層関係にある学習済みモデルのそれぞれの推論結果を示している。ここで、ユーザは第三のモデル情報1101のプルダウンを押下することで、第二の学習済みモデルと階層関係にある他の学習済みモデルの候補を選択することができる。ユーザによって、選択部210によって選択されたモデルと異なる学習済みモデルが選択された場合には、修正情報の取得部1000はモデルの再選択情報を修正情報として取得し、取得した情報に基づいて推論部206に対して推論を実施させる。
図12を用いて、出力部212による画面1200に対して、ユーザが推論結果の修正を行う際の画面1200について説明をする。画面1200は、図9と同様に選択部210によって、階層関係にある3つの学習済みモデルが選択され、選択された階層関係にある学習済みモデルのそれぞれの推論結果を示している。ここで、ユーザは第二の学習済みモデルによる第二の推論による検出結果に対して、第二の推論によって検出された領域を囲む枠1202とは異なる領域を結節領域として囲む枠1203を画像上に設定できる。ユーザによって結節領域が選択されると、修正情報の取得部1000は、推論結果の修正情報を取得し、取得した修正情報に基づいて推論部206によって第三の学習済みモデルに第三の推論を実施し、第三の推論結果1204を出力する。第三の推論結果1204では、第二の推論結果1201を修正して、新たに選択された結節領域1203に対して、推論を実施し、推論結果を出力している。また、モデルの推論結果を修正された学習済みモデルの追加学習の候補として、修正された推論結果と推論の対象とを記憶部204に記憶する。
(変形例)
修正情報の取得部1000は、ユーザより修正情報を取得した場合には、推論部206によって修正前に選択部210によって選択された階層関係にある学習済みモデルによる推論結果と、修正情報を用いて推論を行った結果を対比可能に出力部212に出力させる。出力部212による出力は、情報処理装置130にユーザがアクセスすることで情報を把握できるようにしても、情報端末110に対してネットワーク120を介して出力を行ってもよい。図13を用いて、修正情報の取得部1000が推論結果を修正する情報を取得した場合について説明をするが、モデルの再選択の情報を取得した場合においても本変形例は適用可能である。
図13では、図12を用いて説明をしたように、ユーザは第二の学習済みモデルによる第二の推論による検出結果である結節領域を囲む枠1202に対して、異なる領域を結節領域として囲む枠1203を画像上に設定している。修正情報の取得部1000は、取得した推論結果を修正する修正情報に基づいて、推論部206による推論処理を実施させる。第三の推論結果は、修正後の第二の推論結果に対する第三の推論結果と、修正前の第二の推論結果に対する第三の推論結果とを対比可能に出力している。なお出力部212による出力の形態はこれに限定されず、例えば両結果が切替え可能に表示されてもよいし、または両結果の差分を表示してもよい。本変形例によって、選択されたモデルや、モデルの推論結果がユーザの所望の情報と異なっていた場合も、モデルの再選択や、推論結果の修正等の修正情報に基づいた推論結果を取得し、修正前の推論結果と対比することで、モデルの精度や適否について容易に判断することができる。
[第四の実施形態]
上述の実施形態において選択部210は、医用情報とクラス階層に対応するクラスとの適合度を算出し、該適合度が所定の値よりも大きい学習済みモデルのうち、最も下位もしくは最も上位のクラス階層に対応する学習済みモデルを選択することを説明した。
本実施形態においては、選択部210は適合度が所定の値よりも大きい学習済みモデルのうち、最も上位のクラス階層に対応する学習済みモデルと、最も下位のクラス階層に対応する学習済みモデルと、該最も上位のクラス階層と、該最も下位のクラス階層との間に他のクラス階層が記憶部204に記憶されている場合には、間の他のクラス階層からもさらに学習済みモデルを選択する。以下、図14を用いて本実施形態について説明をする。
記憶部204は、さらに第Nのクラス階層1403を有する。Nは3以上の自然数であり、クラス階層の数に応じて設定される。
ここでは、簡便のためにN=3として説明をする。本実施形態において選択部210は、適合度が所定の値よりも大きい学習済みモデルのうち、最も上位のクラス階層に対応する学習済みモデルを選択し、さらに、最も下位のクラス階層に対応する学習済みモデルを選択する。選択部210によって選択された両学習済みモデルが階層関係にある場合(すくなくとも一方の学習済みモデルの付帯情報から他方の学習済みモデルが探索可能である場合)であって、両モデルが対応するクラス階層の間に異なるクラス階層がある場合には、間にある異なるクラス階層に対応する学習済みモデルのうち、階層関係にある学習済みモデルをさらに推論部206によって推論を行う学習済みモデルとして選択をする。例えば選択部210によって、適合度が所定の値よりも大きい学習済みモデルのうち、最も上位のクラス階層に対応する学習済みモデルとして、第1の学習済みモデル310が選択され、最も下位のクラス階層に対応する学習済みモデルとして、第N-1の学習済みモデル614が選択された場合について説明する。選択部210は、第1-1の学習済みモデル310と、第N-1の学習済みモデル1414とが階層関係にあるかを判定する。選択部210によって階層関係にあると判定され、且つ第1-1の学習済みモデル310に対応する第一のクラス階層301と、第N-1の学習済みモデル1414に対応する第Nのクラス階層の間に他のクラス階層があるかを判定する。該他のクラス階層がある場合には、間にある異なるクラス階層に対応する学習済みモデルのうち、第1-1の学習済みモデル310と、第N-1の学習済みモデル1414と階層関係にある学習済みモデルをさらに選択する。
図15を用いて本実施形態のフローを説明する。選択部210は、ステップS1500において、算出した適合度が所定値より大きく、かつ階層関係にある学習済みモデルの対応する最も上位のクラスと最も下位のクラスとのクラス階層間に他のクラス階層があるか否かを判定する。選択部210による判定の結果、他のクラス階層がないと判定された場合には、上述したステップS405へ進む。選択部210によって、他のクラス階層があると判定された場合には、ステップS1502へ進む。
ステップS1502において、選択部210は、他のクラス階層に対応する学習済みモデルのうち、最も上位のクラスに対応する学習済みモデルと、最も下位のクラスに対応する学習済みモデルと階層関係にある(付帯情報から探索可能である)学習済みモデルをさらに選択する。なお、階層関係とは、第1-1の学習済みモデル310と、第2-1の学習済みモデル314のように直接的に階層関係を有しているもの以外にも、第1の学習済みモデル314と、第N-1の学習済みモデル614が、例えばいずれかの付帯情報から他方の学習済みモデルが探索可能であれば、両学習済みモデルは階層関係にあるものとして定義される。
本実施形態における情報処理装置103により、選択部210が複数の学習済みモデルから、適切な学習済みモデルを選択する際の範囲を規定することができ、故にユーザによる複数の学習済みモデルからの学習済みモデルの選定や、選定された複数の学習済みモデルに対するアウトプットとインプットを入力する手間を削減することができる。
(その他の変形例)
上記実施例の機能を実現するコンピュータプログラムを、ネットワーク又は記憶媒体(図示しない。)を介してコンピュータに供給し、当該コンピュータプログラムを実行させることができる。上述した情報処理方法をコンピュータに実行させるためのコンピュータプログラムである。つまり、コンピュータプログラムは、コンピュータで情報処理装置の機能を実現するためのプログラムである。記憶媒体は、当該コンピュータプログラムを記憶している。