(57)【要約】【課題】複数の医療機関が保持する医用データを用いた機械学習を効率的に行うことができるようにすること。【解決手段】実施形態に係る医用情報処理装置は、複数の医療機関の各々に設けられた情報処理装置と通信可能な医用情報処理装置であって、配信部と、変化量受信部と、パラメータ調整部と、パラメータ送信部とを備える。配信部は、前記情報処理装置の各々に対し、当該情報処理装置の前記医療機関が保持する医用データを用いた機械学習を実行させるためのプログラムを配信する。変化量受信部は、前記機械学習の実行に伴い変化した当該機械学習に係るパラメータの変化量を前記情報処理装置の各々から受信する。パラメータ調整部は、前記変化量受信部が受信した変化量に基づいて前記パラメータの値を調整する。パラメータ送信部は、前記パラメータ調整部で調整された前記パラメータを前記情報処理装置に送信し、当該パラメータに基づく前記機械学習を前記情報処理装置に実行させる。【選択図】図１
2020204965.tif 000002
【特許請求の範囲】
【請求項１】
複数の医療機関の各々に設けられた情報処理装置と通信可能な医用情報処理装置であって、
前記情報処理装置の各々に対し、当該情報処理装置の前記医療機関が保持する医用データを用いた機械学習を実行させるためのプログラムを配信する配信部と、
前記機械学習の実行に伴い変化した当該機械学習に係るパラメータの変化量を前記情報処理装置の各々から受信する変化量受信部と、
前記変化量受信部が受信した変化量に基づいて前記パラメータの値を調整するパラメータ調整部と、
前記パラメータ調整部で調整された前記パラメータを前記情報処理装置に送信し、当該パラメータに基づく前記機械学習を前記情報処理装置に実行させるパラメータ送信部と、
を備える医用情報処理装置。
【請求項２】
前記パラメータ調整部は、前記機械学習によって得られる前記情報処理装置の各々の前記パラメータの値に基づいて、当該情報処理装置の各々で作成される学習済モデルに共通の前記パラメータの値を決定する請求項１に記載の医用情報処理装置。
【請求項３】
前記情報処理装置の各々から前記機械学習の状態を示した状態情報を受信する状態情報受信部と、
前記状態情報受信部が受信した前記状態情報に基づいて、前記情報処理装置の各々での前記機械学習の状態を比較可能に表した画面を表示させる表示制御部と、
を備える請求項１又は２に記載の医用情報処理装置。
【請求項４】
前記状態情報は、前記情報処理装置が前記機械学習に用いた前記医用データのデータ数を含み、
前記表示制御部は、前記医用データのデータ数の合計値のうち、前記情報処理装置の各々が前記機械学習に用いた前記医用データのデータ数が占める割合を比較可能に表示させる請求項３に記載の医用情報処理装置。
【請求項５】
前記状態情報は、前記情報処理装置が前記機械学習に用いた前記医用データのデータ数を、当該医用データに係る患者の属性毎に集計した情報を含み、
前記表示制御部は、前記医用データのデータ数の合計値のうち、前記情報処理装置の各々が前記機械学習に用いた前記医用データのデータ数が占める割合を、前記属性の単位で表示させる請求項３又は４に記載の医用情報処理装置。
【請求項６】
前記状態情報は、前記情報処理装置が前記機械学習で作成するモデルの評価値を含み、
前記表示制御部は、前記情報処理装置の各々の前記評価値を比較可能に表示させる請求項３〜５の何れか一項に記載の医用情報処理装置。
【請求項７】
前記データ数の変更を指示する操作に応じて、操作の対象となった前記情報処理装置に対し、前記機械学習に用いる前記医用データのデータ数の拡大又は縮小を指示する補正部を更に備える請求項４又は５に記載の医用情報処理装置。
【請求項８】
前記補正部は、前記データ数の縮小を指示する操作を受け付けた場合、操作の対象となった前記情報処理装置に対してデータ数の縮小を指示するとともに、前記機械学習の再実行を指示する請求項７に記載の医用情報処理装置。
【請求項９】
前記補正部は、前記データ数の拡大を指示する操作を受け付けた場合、操作の対象となった前記情報処理装置に対してデータ数の拡大を指示するとともに、不足したデータ数分の医用データとして、前記医療機関の何れにも属さないサンプルデータを提供する請求項７に記載の医用情報処理装置。
【請求項１０】
複数の医療機関の各々に設けられる情報処理装置と、当該情報処理装置の各々と通信可能な医用情報処理装置とを有する医用情報処理システムであって、
前記医用情報処理装置は、
前記情報処理装置の各々に対し、当該情報処理装置の前記医療機関が保持する医用データを用いた機械学習を実行させるためのプログラムを配信する配信部と、
前記機械学習の実行に伴い変化した当該機械学習に係るパラメータの変化量を前記情報処理装置の各々から受信する変化量受信部と、
前記変化量受信部が受信した変化量に基づいて前記パラメータの値を調整するパラメータ調整部と、
前記パラメータ調整部で調整された前記パラメータを前記情報処理装置に送信し、当該パラメータに基づく前記機械学習を前記情報処理装置に実行させるパラメータ送信部と、
を備える医用情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、医用情報処理装置及び医用情報処理システムに関する。
【背景技術】
【０００２】
近年、ＡＩ（機械学習）技術が多様なシステムに用いられるようになってきており、医療業界への適用も盛んになってきている。例えば、特定の症例であれば、読影医よりも高速、高精度に異常個所を検出することができるモデル（学習済モデル）が知られている。
【０００３】
モデルの作成には、大量のデータを収集して機械学習に使用する必要があるが、そのような大量の医用データを一つの医療機関で収集するのは困難である。そこで、複数の医療機関の医用データを一箇所に集約して学習済モデルを作成する方法が考えられるが、医用データは患者の個人情報を含むため、外部に持ち出すにはセキュリティ上の問題がある。また、医用データは医療機関固有の資産でもあるため、外部に持ち出すことができない可能性もある。
【０００４】
また、従来、通信可能に接続された複数のワーカを用いることで分散型の機械学習を並列で行う技術が提案されている。かかる技術では、学習に用いるパラメータを送受信することで、各ワーカが学習に用いるデータを外部に出さずに、個々のワーカでモデルを作成することができる。
【０００５】
しかしながら、上述した従来の技術では、機械学習を開始するにあたり、各ワーカの実行環境やパラメータ等を同様の状態にチューニングする必要があるため、準備が煩雑であるという問題がある。また、医療機関への適用も想定されておらず、更なる改善の余地がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１８−２０６０１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明が解決しようとする課題は、複数の医療機関が保持する医用データを用いた機械学習を効率的に行うことができるようにすることである。
【課題を解決するための手段】
【０００８】
実施形態に係る医用情報処理装置は、複数の医療機関の各々に設けられた情報処理装置と通信可能な医用情報処理装置であって、配信部と、変化量受信部と、パラメータ調整部と、パラメータ送信部とを備える。配信部は、前記情報処理装置の各々に対し、当該情報処理装置の前記医療機関が保持する医用データを用いた機械学習を実行させるためのプログラムを配信する。変化量受信部は、前記機械学習の実行に伴い変化した当該機械学習に係るパラメータの変化量を前記情報処理装置の各々から受信する。パラメータ調整部は、前記変化量受信部が受信した変化量に基づいて前記パラメータの値を調整する。パラメータ送信部は、前記パラメータ調整部で調整された前記パラメータを前記情報処理装置に送信し、当該パラメータに基づく前記機械学習を前記情報処理装置に実行させる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態に係る医用情報処理システムの構成の一例を示す図である。
【図２】図２は、実施形態に係る全体制御サーバの構成の一例を示す図である。
【図３】図３は、実施形態に係る学習サーバの構成の一例を示す図である。
【図４】図４は、実施形態に係る全体制御サーバ及び学習サーバの機械学習に係る動作を説明するための図である。
【図５】図５は、実施形態の表示制御機能によって表示される状態画面の一例を示す図である。
【図６】図６は、実施形態に係る補正機能の動作を説明するための図である。
【図７】図７は、実施形態の表示制御機能によって表示される状態画面の他の例を示す図である。
【図８】図８は、実施形態の全体制御サーバ及び学習サーバが実行する学習用プログラムの配布に係る処理の一例を示すフローチャートである。
【図９】図９は、実施形態の全体制御サーバ及び学習サーバが実行する機械学習に係る処理の一例を示すフローチャートである。
【図１０】図１０は、実施形態の全体制御サーバ及び学習サーバが実行する機械学習の状態表示及びデータ数の補正に係る処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照しながら、医用情報処理装置及び医用情報処理方法の実施形態について説明する。
【００１１】
図１は、本実施形態に係る医用情報処理システムの構成の一例を示す図である。図１に示すように、医用情報処理システム１は、全体制御サーバ１０と、複数の医療機関システム２０（２０ａ〜２０ｃ）とを有する。全体制御サーバ１０と医療機関システム２０とは、例えばイントラネットや専用回線等のネットワークＮ１を介して通信可能に接続される。なお、ネットワークＮ１に接続される医療機関システム２０の個数は特に問わないものとする。
【００１２】
全体制御サーバ１０は、医用情報処理装置の一例である。全体制御サーバ１０は、ネットワークＮ１を介して、医療機関システム２０の各々が有する学習サーバ２２と通信可能に接続される。全体制御サーバ１０は、学習サーバ２２の各々を用いた分散型の機械学習（以下、分散機械学習ともいう）を一元的に管理する。例えば、全体制御サーバ１０は、ワークステーションやサーバ装置等のコンピュータ機器によって実現される。また、全体制御サーバ１０は、クラウドコンピューティングを利用した、複数のコンピュータ機器（クラウド）で実現されてもよい。
【００１３】
医療機関システム２０は、病院等の医療機関が備えるシステムである。図１に示す例では、医療機関システム２０ａは、病院Ａの医療機関システムであり、医療機関システム２０ｂは、病院Ｂの医療機関システムであり、医療機関システム２０ｃは、病院Ｃの医療機関システムである。
【００１４】
医療機関システム２０は、データ管理装置２１と、学習サーバ２２とを有する。データ管理装置２１と学習サーバ２２とは、ＬＡＮ（Local  Area  Network）等のネットワークＮ２を介して通信可能に接続される。また、学習サーバ２２は、ルータ等のネットワーク機器を介して、ネットワークＮ１に接続される。
【００１５】
データ管理装置２１は、例えば、ＰＡＣＳ（Picture  Archiving  and  Communication  System）であり、自己の医療機関で取得された医用データを記憶し、管理する。例えば、データ管理装置２１は、ＣＴ（Computerized  Tomography）やＭＲＩ（Magnetic  Resonance  Imaging）等のモダリティで撮影（撮像）された各患者の画像データを医用データとして記憶する。また、データ管理装置２１は、各患者の身体情報（年齢、性別、体重等）や電子カルテ、診療記録等を医用データとして記憶する。なお、データ管理装置２１は、同一の患者に係る医用データを、当該患者を識別する識別子と対応付けて管理する。
【００１６】
学習サーバ２２は、情報処理装置の一例である。学習サーバ２２は、全体制御サーバ１０の制御の下、データ管理装置２１に記憶された医用データを用いて機械学習を行うことで、医師の診断支援等に係るモデル（学習済モデル）を作成する。例えば、学習サーバ２２は、ワークステーションやサーバ装置等のコンピュータ機器によって実現される。
【００１７】
次に、全体制御サーバ１０の構成について説明する。図２は、全体制御サーバ１０の構成の一例を示す図である。図２に示すように。全体制御サーバ１０は、通信インタフェース１１０と、記憶回路１２０と、入力インタフェース１３０と、ディスプレイ１４０と、処理回路１５０とを備える。
【００１８】
通信インタフェース１１０は、処理回路１５０に接続されており、ネットワークＮ１に接続された学習サーバ２２の各々との間で行われる各種データの伝送及び通信を制御する。例えば、通信インタフェース１１０は、ネットワークカードやネットワークアダプタ、ＮＩＣ（Network  Interface  Controller）等によって実現される。
【００１９】
記憶回路１２０は、処理回路１５０に接続されており、各種データを記憶する。例えば、記憶回路１２０は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ等の半導体メモリ素子や、ハードディスク、光ディスク等によって実現される。なお、記憶回路１２０は、記憶部の実現手段の一例である。
【００２０】
具体的には、記憶回路１２０は、全体制御サーバ１０のＯＳ（Operating  System）の他、各種のプログラムや設定情報を記憶する。また、記憶回路１２０は、学習サーバ２２の各々に配布するための機械学習用の学習用プログラムＤ１を記憶する。
【００２１】
学習用プログラムＤ１は、学習サーバ２２の各々に機械学習を実行させるためのプログラムである。かかる学習用プログラムＤ１は、例えば、学習済モデルの原型となる原型モデル（以下、モデルともいう）や、分散型の機械学習を行うためのプログラム等を含む。原型モデルは、機械学習の対象となる特定の医用データ用に設計されたモデルであり、後述する重み係数Ｗ等のパラメータは初期値に設定されている。
【００２２】
なお、原型モデルが機械学習の対象とする医用データは特に問わず、種々の医用データを対象とすることができる。例えば、原型モデルは、ＣＴ等で撮影された頭部の画像データと、当該画像データに対する医師の診断結果（電子カルテ等）とを学習用の医用データとし、これら医用データ間の関係を機械学習するモデルであってもよい。この場合、医師の診断結果は教師データとして入力される。
【００２３】
また、学習用プログラムＤ１のデータ形態は特に問わないものとする。例えば、学習用プログラムＤ１は、学習サーバ２２に導入（インストール）することで実行可能となるアプリケーションプログラムであってもよい。また、学習用プログラムＤ１は、学習サーバ２２のＯＳ上で仮想マシンとして動作させることが可能なハイパーバイザ型のイメージデータであってもよい。また、学習用プログラムＤ１は、学習サーバ２２のカーネルを共有し、コンテナと呼ばれる単位で処理を実行させることが可能なＤｏｃｋｅｒ（登録商標）等のイメージデータであってもよい。
【００２４】
入力インタフェース１３０は、処理回路１５０に接続されており、操作者から各種指示及び各種情報の入力操作を受け付ける。具体的には、入力インタフェース１３０は、操作者から受け付けた入力操作を電気信号へ変換して処理回路１５０に出力する。例えば、入力インタフェース１３０は、トラックボール、スイッチボタン、マウス、キーボード、操作面へ触れることで入力操作を行うタッチパッド、表示画面とタッチパッドとが一体化されたタッチスクリーン、光学センサを用いた非接触入力回路、及び音声入力回路等によって実現される。なお、入力インタフェース１３０は、マウス、キーボード等の物理的な操作部品を備えるものだけに限られない。例えば、装置とは別体に設けられた外部の入力機器から入力操作に対応する電気信号を受け取り、この電気信号を制御回路へ出力する電気信号の処理回路も入力インタフェース１３０の例に含まれる。
【００２５】
ディスプレイ１４０は、処理回路１５０に接続されており、各種情報及び各種画像を表示する。具体的には、ディスプレイ１４０は、処理回路１５０から送られる各種情報及び各種画像のデータを表示用の電気信号に変換して出力する。例えば、ディスプレイ１４０は、液晶モニタやＣＲＴ（Cathode  Ray  Tube）モニタ、タッチパネル等によって実現される。
【００２６】
処理回路１５０は、全体制御サーバ１０の動作を統括的に制御する。具体的には、処理回路１５０は、通信インタフェース１１０から出力される医用データを記憶回路１２０に記憶させる。また、処理回路１５０は、記憶回路１２０から医用データを読み出し、ディスプレイ１４０に表示する。例えば、処理回路１５０は、プロセッサによって実現される。
【００２７】
また、全体制御サーバ１０は、配布機能１５１と、変化量受信機能１５２と、パラメータ調整機能１５３と、パラメータ送信機能１５４と、状態情報受信機能１５５と、表示制御機能１５６と、補正機能１５７とを有する。
【００２８】
全体制御サーバ１０においては、各機能がコンピュータによって実行可能なプログラムの形態で記憶回路１２０に記憶されている。処理回路１５０は、記憶回路１２０からプログラムを読み出して実行することで各プログラムに対応する機能を実現するプロセッサである。換言すると、プログラムを読み出した状態の処理回路１５０は、読み出したプログラムに対応する機能を有することとなる。
【００２９】
なお、図２では単一の処理回路１５０にて、配布機能１５１、変化量受信機能１５２、パラメータ調整機能１５３、パラメータ送信機能１５４、状態情報受信機能１５５、表示制御機能１５６、及び補正機能１５７が実現するものとして説明したが、複数の独立したプロセッサを組み合わせて処理回路１５０を構成し、各プロセッサがプログラムを実行することにより機能を実現するものとしても構わない。また、処理回路１５０が有する各処理機能は、単一又は複数の処理回路に適宜に分散又は統合されて実現されてもよい。
【００３０】
配布機能１５１は、通信インタフェース１１０を介して、記憶回路１２０に記憶された学習用プログラムＤ１を、学習サーバ２２の各々に配布（送信）する。ここで、学習サーバ２２の各々には、同一の学習用プログラムＤ１が配布される。学習用プログラムＤ１の配布を受け付けた学習サーバ２２では、学習用プログラムＤ１が導入（インストール、デプロイ等）されることで、機械学習を実行可能な実行環境が実現される。つまり、学習サーバ２２の各々には、同一の実行環境が実現される。
【００３１】
なお、学習用プログラムＤ１を配布するタイミングや配布方法は特に問わないものとする。例えば、配布機能１５１は、学習サーバ２２の各々に対し、学習用プログラムＤ１を一方的に配布する構成としてもよいし、学習サーバ２２からの要求に応じて学習用プログラムＤ１を配布する構成としてもよい。
【００３２】
変化量受信機能１５２は、通信インタフェース１１０を介して、学習サーバ２２の各々から送信される変化量を受信する。ここで、変化量は、機械学習の実行に伴い変化した機械学習に係るパラメータの変化量を示す。例えばディープラーニングやニューラルネットワークでは、パラメータは重み係数Ｗに対応し、変化量は重み係数Ｗの変化量ΔＷに対応する。以下では、パラメータを「重み係数Ｗ」、変化量を「変化量ΔＷ」として説明する。
【００３３】
パラメータ調整機能１５３は、変化量受信機能１５２が受信した変化量ΔＷに基づき、前回の重み係数Ｗを調整することで、新たな重み係数Ｗを決定する。ここで、重み係数Ｗの調整方法は特に問わず、公知の方法を用いることが可能である。一例としては、前回の重み係数Ｗから、変化量ΔＷと学習係数と乗算結果を減算した値を、新たな重み係数Ｗとして決定してもよい。かかる学習係数は、固定値であってもよいし、機械学習の回数に応じて変化するような動的な値であってもよい。また、他の例としては、前回の重み係数Ｗから、学習サーバ２２の各々から得られた変化量ΔＷの平均値や重み付き平均値を減算した値を、新たな重み係数Ｗとして決定してもよい。
【００３４】
パラメータ送信機能１５４は、通信インタフェース１１０を介して、パラメータ調整機能１５３によって決定された新たな重み係数Ｗを学習サーバ２２に送信する。なお、重み係数Ｗの送信は、学習サーバ２２の各々に対して個別に行われるものとする。
【００３５】
状態情報受信機能１５５は、通信インタフェース１１０を介して、学習サーバ２２の各々から送信される機械学習の状態を示す情報（以下、状態情報）を受信する。表示制御機能１５６は、状態情報受信機能１５５が受信した状態情報に基づき、学習サーバ２２の各々で行われている機械学習の状態をディスプレイ１４０に表示させる。また、補正機能１５７は、入力インタフェース１３０を介した入力操作に応じて、機械学習に係る条件を補正（変更）するための処理を実行する。なお、表示制御機能１５６及び補正機能１５７の動作については後述する。
【００３６】
次に、学習サーバ２２の構成について説明する。図３は、学習サーバ２２の構成の一例を示す図である。図３に示すように、学習サーバ２２は、通信インタフェース２２１と、記憶回路２２２と、処理回路２２３とを備える。
【００３７】
通信インタフェース２２１は、処理回路２２３に接続されており、ネットワークＮ１に接続された全体制御サーバ１０との間で行われる各種データの伝送及び通信を制御する。また、通信インタフェース２２１は、ネットワークＮ２に接続されたデータ管理装置２１との間で行われる各種データの伝送及び通信を制御する。例えば、通信インタフェース２２１は、ネットワークカードやネットワークアダプタ、ＮＩＣ等によって実現される。
【００３８】
記憶回路２２２は、処理回路２２３に接続されており、各種データを記憶する。例えば、記憶回路２２２は、ＲＡＭ、フラッシュメモリ等の半導体メモリ素子や、ハードディスク、光ディスク等によって実現される。なお、記憶回路２２２は、記憶部の実現手段の一例である。
【００３９】
具体的には、記憶回路２２２は、学習サーバ２２のＯＳの他、各種のプログラムや設定情報を記憶する。また、記憶回路２２２は、全体制御サーバ１０から配布される学習用プログラムＤ１を記憶する。
【００４０】
処理回路２２３は、学習サーバ２２の動作を統括的に制御する。例えば、処理回路２２３は、プロセッサによって実現される。
【００４１】
また、学習サーバ２２は、導入機能２２３１と、パラメータ受信機能２２３２と、変化量算出機能２２３３と、変化量送信機能２２３４と、状態情報送信機能２２３５とを有する。
【００４２】
学習サーバ２２においては、各機能がコンピュータによって実行可能なプログラムの形態で記憶回路２２２に記憶されている。処理回路２２３は、記憶回路２２２からプログラムを読み出して実行することで各プログラムに対応する機能を実現するプロセッサである。換言すると、プログラムを読み出した状態の処理回路２２３は、読み出したプログラムに対応する機能を有することとなる。例えば、上述した機能のうち、パラメータ受信機能２２３２、変化量算出機能２２３３、変化量送信機能２２３４、及び状態情報送信機能２２３５は、学習用プログラムＤ１により実現される。つまり、学習サーバ２２の各々は、全体制御サーバ１０から提供される学習用プログラムＤ１によって、同一の機能を備えることとなる。
【００４３】
なお、図３では単一の処理回路２２３にて、導入機能２２３１、パラメータ受信機能２２３２、変化量算出機能２２３３、変化量送信機能２２３４、状態情報送信機能２２３５が実現するものとして説明したが、複数の独立したプロセッサを組み合わせて処理回路２２３を構成し、各プロセッサがプログラムを実行することにより機能を実現するものとしても構わない。また、処理回路２２３が有する各処理機能は、単一又は複数の処理回路に適宜に分散又は統合されて実現されてもよい。
【００４４】
導入機能２２３１は、通信インタフェース２２１を介して、全体制御サーバ１０から配布された学習用プログラムＤ１を受信する。また、導入機能２２３１は、受信した学習用プログラムＤ１を記憶回路２２２に記憶し、当該学習用プログラムＤ１を自装置に導入（インストール、デプロイ等）することで、機械学習を実行可能な環境を実現する。
【００４５】
パラメータ受信機能２２３２は、通信インタフェース２２１を介して、全体制御サーバ１０から送信される重み係数Ｗを受信する。変化量算出機能２２３３は、パラメータ受信機能２２３２が受信した重み係数Ｗに基づき、自己の医療機関システム２０のデータ管理装置２１が管理する医用データを用いた機械学習を行うことで、重み係数Ｗの変化量ΔＷを算出する。変化量送信機能２２３４は、通信インタフェース２２１を介して、変化量算出機能２２３３が算出した変化量ΔＷを全体制御サーバ１０に送信する。
【００４６】
なお、変化量ΔＷの算出方法は特に問わず、公知の方法を用いてもよい。例えば、確率的勾配降下法、誤差逆伝搬法、準ニュートン法、遺伝的アルゴリズム等を用いて変化量ΔＷを算出してもよい。また、変化量算出機能２２３３が、変化量ΔＷを送信するタイミングは特に問わないものとする。例えば、変化量送信機能２２３４は、変化量算出機能２２３３が１００個の医用データを機械学習する度に、変化量ΔＷを送信する構成としてもよい。
【００４７】
状態情報送信機能２２３５は、通信インタフェース２２１を介して、変化量算出機能２２３３が実行する機械学習の状態を示した状態情報を全体制御サーバ１０に送信する。ここで、状態情報の内容は特に問わず、種々の情報を含めることができる。
【００４８】
例えば、状態情報送信機能２２３５は、機械学習に用いた医用データのデータ数を集計した結果を状態情報に含めてもよい。また、状態情報送信機能２２３５は、機械学習に用いた医用データのデータ数を、当該医用データに係る患者の属性毎に集計した結果を状態情報に含めてもよい。なお、患者の属性は、例えば、性別や年齢（年齢層）、体重等を意味し、個人を特定可能な情報は含まないものとする。
【００４９】
また、例えば、状態情報送信機能２２３５は、モデル（原型モデル）の評価値を状態情報に含めてもよい。ここで、評価値は、作成中のモデルを学習済モデルとしてデプロイすることで得られた、当該学習済モデルの評価値を意味する。より具体的には、評価値は、デプロイした学習済モデルに学習用の医用データ（例えば、画像データ）を入力することで得られた推論結果が、教師テータの診断結果と一致する正解率等を意味する。
【００５０】
評価値を算出する主体や算出のタイミングは特に問わず、機械学習の一工程として評価値が算出される構成としてもよい。例えば、変化量算出機能２２３３が、１００個のサンプルを機械学習する度に、その段階のモデルを学習済モデルとして一時的にデプロイすることで、当該学習済モデルの評価値を算出する構成としてもよい。この場合、評価値の算出に用いる医用データは、機械学習済の医用データであってもよいし、機械学習に使用していない医用データであってもよい。
【００５１】
また、状態情報送信機能２２３５が、状態情報を送信するタイミングや送信方法も特に問わないものとする。例えば、状態情報送信機能２２３５は、変化量送信機能２２３４が変化量ΔＷを送信するタイミングにあわせて状態情報を送信してもよい。また、状態情報送信機能２２３５は、全体制御サーバ１０からの要求に応じて状態情報を送信してもよい。
【００５２】
次に、図４を参照し、全体制御サーバ１０及び学習サーバ２２の機械学習に係る動作について説明する。ここで、図４は、全体制御サーバ１０及び学習サーバ２２の機械学習に係る動作を説明するための図である。
【００５３】
まず、学習用プログラムＤ１により機械学習の実行環境が実現された学習サーバ２２の各々では、データ管理装置２１が管理する医用データＤ２を用いることで機械学習が実行される。
【００５４】
具体的には、学習サーバ２２の各々では、パラメータ受信機能２２３２が全体制御サーバ１０から送信される重み係数Ｗを受信する。変化量算出機能２２３３は、重み係数Ｗに基づき、データ管理装置２１から読み出した医用データＤ２をモデルに適用することで機械学習を実行する。また、変化量算出機能２２３３は、機械学習の実行により変化した重み係数Ｗの変化量ΔＷを算出する。そして、算出された変化量ΔＷは、変化量送信機能２２３４により全体制御サーバ１０へと送信される。
【００５５】
一方、全体制御サーバ１０では、学習サーバ２２から送信された変化量ΔＷが変化量受信機能１５２によって受信されると、パラメータ調整機能１５３は、その変化量ΔＷに基づき新たな重み係数Ｗを決定する。パラメータ送信機能１５４は、パラメータ調整機能１５３が決定した重み係数Ｗを、変化量ΔＷの送信元の学習サーバ２２へと送信する。
【００５６】
全体制御サーバ１０及び学習サーバ２２は、上述の処理を繰り返し行うことで、学習サーバ２２の各々において機械学習が個別に進行される。そして、パラメータ調整機能１５３は、学習が完了したと判断した際に、例えば、学習サーバ２２の各々が所持する重み係数Ｗの平均値や、重み付き平均値を最終的な学習結果として決定する。ここで決定された学習結果（重み係数Ｗ）は、学習サーバ２２の各々で作成された学習済モデルに共通のパラメータとなる。つまり、医用情報処理システム１では、上述の処理を繰り返し行うことで、各病院が管理する医用データＤ２を外部に持ち出すことなく、当該医用データＤ２を統合した機械学習を行うことができる。
【００５７】
なお、学習完了の判断方法は特に問わず、任意に設定することが可能であるとする。例えば、学習サーバ２２の各々で機械学習に用いられた医用データのデータ総数が所定の閾値に達したことを条件に、学習完了と判断してもよい。また、例えば、入力インタフェース１３０を介して入力される学習完了を指示する操作をトリガとしてもよい。
【００５８】
ところで、上述した医用情報処理システム１では、機械学習に用いる医用データＤ２は、各病院が独自に採取したものであるため、医用データＤ２のデータ数や医用データＤ２に係る患者の属性が病院間で異なる可能性がある。
【００５９】
例えば、特定の病院の医用データＤ２のデータ数が、他の病院の医用データＤ２のデータ数に比べて多いような場合、特定の病院の学習結果が支配的となり、当該病院に最適化された学習結果が導出される可能性がある。また、例えば、特定の年齢層の患者に係る医用データＤ２のデータ数が、他の年齢層の患者に係る医用データＤ２のデータ数と比べて多いような場合、特定の年齢層の患者に係る学習結果が支配的となり、その年齢層の患者に最適化された学習結果が導出される可能性がある。
【００６０】
そこで、全体制御サーバ１０では、上述した表示制御機能１５６により、各病院（学習サーバ２２）の学習状態を比較可能に表示させる。また、全体制御サーバ１０では、上述した補正機能１５７により、データ数の偏りを補正することが可能な環境を提供する。以下、表示制御機能１５６及び補正機能１５７の動作について説明する。
【００６１】
表示制御機能１５６は、状態情報受信機能１５５が受信した学習サーバ２２の各々の状態情報に基づき、例えば図５に示す状態画面をディスプレイ１４０に表示させる。
【００６２】
ここで、図５は、表示制御機能１５６によって表示される状態画面の一例を示す図である。図５に示すように、状態画面Ｇ１は、画面左の第１の表示領域Ｇ１１と、画面右の第２の表示領域Ｇ１２とを有する。第１の表示領域Ｇ１１には、各病院での学習の状態を示す基本情報Ｇ１１ａが表示される。例えば、図５では、基本情報Ｇ１１ａとして、全データ数の合計値のうち、各病院のデータ数が占める割合（データ数）を評価値とともに表示した例を示している。これにより、全体制御サーバ１０のオペレータは、第１の表示領域Ｇ１１を見ることで、各病院の学習サーバ２２がどのような学習状態にあるのかを容易に確認することができる。
【００６３】
また、第２の表示領域Ｇ１２には、各病院での機械学習に用いられた医用データの内訳が、患者の属性毎に表示される。具体的には、第２の表示領域Ｇ１２は、患者の属性を設定するための設定領域Ｇ１２ａを有する。設定領域Ｇ１２ａでは、操作子Ｇ１２ｂを操作することで、任意の属性を選択することが可能となっている。図５の例では、患者の属性として年齢が選択（設定）された例を示している。
【００６４】
表示制御機能１５６は、各病院で使用された医用データのデータ数の合計値のうち、各病院のデータ数が占める割合を、設定領域Ｇ１２ａに設定された属性の単位で表示させる。例えば、設定領域Ｇ１２ａに年齢が設定された場合、各病院で使用された医用データのデータ数の合計値のうち、各病院のデータ数が占める割合を、年齢層別に示したグラフＧ１２ｃを表示させる。
【００６５】
図５では、１０年単位の年齢層毎に、各病院のデータ数が占める割合を棒グラフ（積み上げ棒グラフ）形式で表した例を示している。なお、棒グラフ内の小領域に示したハッチングは、第１の表示領域Ｇ１１に表示され各病院のハッチングに対応している。また、棒グラフ内の小領域の大きさは、対応する病院のデータ数が占める割合を意味する。これにより、全体制御サーバ１０のオペレータは、第２の表示領域Ｇ１２（グラフＧ１２ｃ）を見ることで、各病院での機械学習に用いられた医用データの内訳を容易に確認することができる。
【００６６】
ところで、図５の例では、第１の表示領域Ｇ１１に表示された内容から、病院Ａのデータ数が占める割合が、他の病院Ｂ、Ｃと比較して大きいことが分かる。また、例えば、第２の表示領域Ｇ１２に表示された内容から、病院Ａのデータ数が特定の年齢層で偏りがあることが分かる。上述したように、このようなデータ数の偏りから、病院Ａの環境や特定の年齢層に最適化されたモデルが作成される可能がある。
【００６７】
このような場合、全体制御サーバ１０では、補正機能１５７により、データ数の偏りを補正することが可能となっている。補正機能１５７は、入力インタフェース１３０を介した操作に応じて、学習に使用する医用データのデータ数を補正するための処理を実行する。
【００６８】
例えば、特定の年齢層の棒グラフに含まれた特定の病院の割合を縮小する操作（図５の操作Ａ１、Ａ２等）が行われた後、第２の表示領域Ｇ１２に設けられた補正ボタンＢ１が操作されると、補正機能１５７は、データ数の変更が指示されたと判断する。この場合、補正機能１５７は、操作の対象となった特定の病院で機械学習に使用される医用データのデータ数を、縮小操作後の割合に応じたデータ数に縮小させるための処理を実行する。
【００６９】
具体的には、補正機能１５７は、操作の対象となった病院の学習サーバ２２に対し、機械学習に使用する医用データのデータ数を、縮小操作後の割合に応じたデータ数に制限する指示情報を送信する。例えば、図５の例では、病院Ａの学習サーバ２２に対し、年齢層が５０代及び６０代に係る医用データのデータ数を、縮小操作後の割合に応じたデータ数に縮小する指示情報を送信する。
【００７０】
指示情報を受け取った学習サーバ２２の変化量算出機能２２３３は、データ管理装置２１から読み出す医用データのデータ数を、指示情報で指示されたデータ数に制限した機械学習を実行する。この場合、変化量算出機能２２３３は、指示情報に応じて、初期状態のモデル（原型モデル）を用いて、最初の医用データから機械学習を再実行する構成としてもよいし、機械学習が進んだモデルを用いて、最初の医用データから機械学習を再実行する構成としてもよい。
【００７１】
また、グラフＧ１２ｃを介した割合の変更操作、つまりデータ数の変更操作は縮小方向に限らず、拡大方向であってもよい。この場合、補正機能１５７は、操作の対象となった病院の学習サーバ２２に対し、学習に使用する医用データのデータ数を、拡大操作後の割合に応じたデータ数に拡大するための処理を実行する。
【００７２】
具体的には、補正機能１５７は、操作の対象となった病院の学習サーバ２２に対し、学習に使用する医用データのデータ数を、拡大操作後の割合に応じたデータ数まで拡大することを指示した指示情報を送信する。指示情報を受け取った学習サーバ２２の変化量算出機能２２３３は、データ管理装置２１から読み出す医用データのデータ数を、指示情報で指示されたデータ数まで拡大して学習を実行する。この場合、変化量算出機能２２３３は、学習が進んだモデルを用いて、引き続き学習を行えばよい。
【００７３】
なお、データ数を拡大する場合、対象となった病院が保持する医用データのデータ数が、拡大操作後のデータ数に満たない場合がある。この場合、例えば、補正機能１５７は、何れの病院にも属さない匿名化されたサンプルデータを、不足したデータ数分読み出し、対象となる病院の学習サーバ２２に提供する形態としてもよい。ここで、サンプルデータは、各病院で学習用に使用する医用データと同様のデータ構成を有し、患者の属性に対応付けて、記憶回路１２０等の記憶装置に複数記憶（用意）される。
【００７４】
サンプルデータを受け取った学習サーバ２２では、例えば導入機能２２３１が、当該サンプルデータをデータ管理装置２１に記憶する。これにより、学習サーバ２２では、データ管理装置２１に記憶されたサンプルデータを、既存の医用データと同様に学習に使用することができる。
【００７５】
図６は、補正機能１５７の動作を説明するための図であり、データ数を拡大する場合の動作例を示している。医療機関システム２０ａ〜２０ｃの各々に設けられたデータ管理装置２１は、自病院で採取された学習用の医用データＤ２を記憶する。図６では、医療機関システム２０ａのデータ管理装置２１は、医用データＤ２を４個記憶し、医療機関システム２０ｂのデータ管理装置２１は、医用データＤ２を２個記憶し、医療機関システム２０ｃのデータ管理装置２１は、医用データＤ２を１個記憶した例を示している。
【００７６】
ここで、例えば、全体制御サーバ１０において、医療機関システム２０ｂ、２０ｃのデータ数を「４」に拡大する操作が行われたとする。この場合、補正機能１５７は、医療機関システム２０ｂについて、不足している２個分のサンプルデータを記憶回路１２０等からら読み出し、学習サーバ２２を介してデータ管理装置２１に保存させる。また、補正機能１５７は、医療機関システム２０ｃについて、不足している３個分のサンプルデータを記憶回路１２０等から読み出し、学習サーバ２２を介してデータ管理装置２１に保存させる。図６では、サンプルデータを、破線で示した医用データＤ２ａで表している。
【００７７】
これにより、例えば、病院間で医用データのデータ数に偏りが生じている場合であっても、補正機能１５７によるデータ数の補正（変更処理）により、病院間で実行される学習に係る条件を平均化することができる。なお、医療機関システム２０ｂ、２０ｃに供給するサンプルデータは、重複するものが含まれてもよいし、互いに相違させてもよい。
【００７８】
また、表示制御機能１５６は、補正機能１５７によるデータ数の変更後、学習サーバ２２の各々から送信される状態情報に基づき、変更前後の学習状態を対比することが可能な状態で状態画面に表示させる。
【００７９】
図７は、表示制御機能１５６によって表示される状態画面の他の例を示す図である。かかる図７では、補正機能１５７によるデータ数の変更後の状態情報に基づき表示された状態画面Ｇ１を示している。
【００８０】
ここで、第１の表示領域Ｇ１１には、変更前の基本情報Ｇ１１ａとともに、変更後の基本情報Ｇ１１ｂが表示される。また、第２の表示領域Ｇ１２には、各病院で学習に使用された変更後の医用データの内訳が表示される。これにより、全体制御サーバ１０のオペレータは、第１の表示領域Ｇ１１に表示された基本情報Ｇ１１ａと基本情報Ｇ１１ｂとを比較することで、データ数の変更前後で学習状態にどのような変化があったのかを容易に確認することができる。また、全体制御サーバ１０のオペレータは、第２の表示領域Ｇ１２（グラフＧ１２ｃ）を見ることで、各病院での機械学習に使用された変更後の医用データの内訳を容易に確認することができる。
【００８１】
なお、状態画面Ｇ１の表示形態は、図５又は図７に限定されないものとする。例えば、第１の表示領域Ｇ１１と、第２の表示領域Ｇ１２とを異なる画面に表示させる形態としてもよい。また、グラフＧ１２ｃは、棒グラフに限らず、他のグラフ形式で表示させてもよい。
【００８２】
以下、図８〜図１０を参照して、上述した全体制御サーバ１０及び学習サーバ２２の動作例について説明する。
【００８３】
図８は、全体制御サーバ１０及び学習サーバ２２が実行する学習用プログラムの配布に係る処理の一例を示すフローチャートである。まず、全体制御サーバ１０の配布機能１５１は、記憶回路１２０に記憶された学習用プログラムＤ１を、ネットワークＮ１に接続された学習サーバ２２の各々に配布する（ステップＳ１１）。
【００８４】
一方、学習サーバ２２の導入機能２２３１は、全体制御サーバ１０から配布された学習用プログラムＤ１を受信すると（ステップＳ２１）、記憶回路２２２に記憶させる。そして、導入機能２２３１は、学習用プログラムＤ１を自装置に導入することで（ステップＳ２２）、機械学習を実行可能な環境を実現する。
【００８５】
図９は、全体制御サーバ１０及び学習サーバ２２が実行する機械学習に係る処理の一例を示すフローチャートである。まず、全体制御サーバ１０の変化量受信機能１５２は、学習サーバ２２から変化量ΔＷを受信する（ステップＳ３１）。パラメータ調整機能１５３は、ステップＳ３１で受信された変化量ΔＷに基づき、新たな重み係数Ｗを決定する（ステップＳ３２）。次いで、パラメータ送信機能１５４は、ステップＳ３２で決定された重み係数Ｗを、送信元の学習サーバ２２に送信する（ステップＳ３３）。
【００８６】
一方、学習サーバ２２では、パラメータ受信機能２２３２が、全体制御サーバ１０から送信された重み係数Ｗを受信する（ステップＳ４１）。変化量算出機能２２３３は、ステップＳ４１で受信された重み係数Ｗに基づき、学習用の医用データを用いて機械学習を行うことで、変化量ΔＷを算出する（ステップＳ４２）。次いで、変化量送信機能２２３４は、ステップＳ４２で算出された変化量ΔＷを全体制御サーバ１０に送信する（ステップＳ４３）。
【００８７】
そして、ステップＳ３１〜Ｓ３３及びステップＳ４１〜Ｓ４３の処理が繰り返し実行されることで、学習サーバ２２の各々において機械学習が個別に進行する。
【００８８】
図１０は、全体制御サーバ１０及び学習サーバ２２が実行する分散機械学習の状態表示及び学習条件の補正に係る処理の一例を示すフローチャートである。なお、本処理では、全体制御サーバ１０からの要求に応じて学習サーバ２２が状態情報を送信する形態について説明する。
【００８９】
まず、全体制御サーバ１０の状態情報受信機能１５５は、入力インタフェース１３０を介して所定の操作（例えば、状態画面の表示を指示する操作）が行われると、学習サーバ２２の各々に対して、状態情報の送信を要求する（ステップＳ５１）。
【００９０】
学習サーバ２２の各々では、状態情報送信機能２２３５が状態情報の送信要求を受け付けると（ステップＳ６１）、自己の学習サーバ２２での学習状態を示した状態情報を、全体制御サーバ１０に送信する（ステップＳ６２）。
【００９１】
全体制御サーバ１０の状態情報受信機能１５５は、学習サーバ２２の各々から送信された状態情報を受信する（ステップＳ５２）。次いで、表示制御機能１５６は、ステップＳ５２で受信された状態情報に基づき、状態画面をディスプレイ１４０に表示させる（ステップＳ５３）。
【００９２】
続いて、補正機能１５７は、入力インタフェース１３０を介し、学習条件（データ数）の変更を指示する操作を受け付けたか否かを判定する（ステップＳ５４）。ここで、変更指示を受け付けない場合には（ステップＳ５４；Ｎｏ）、本処理を終了する。また、変更指示を受け付けた場合には（ステップＳ５４；Ｙｅｓ）、補正機能１５７は、その指示内容に応じた指示情報を、変更対象の学習サーバ２２に送信する（ステップＳ５５）。
【００９３】
学習サーバ２２では、変化量算出機能２２３３が、全体制御サーバ１０から送信された指示情報を受信すると（ステップＳ６３）、指示情報の内容に応じて、機械学習の対象とする医用データのデータ数を変更し（ステップＳ６４）、本処理を終了する。
【００９４】
上述したように、本実施形態の医用情報処理システム１では、全体制御サーバ１０が各病院に設けられた学習サーバ２２の各々に対し学習用プログラムＤ１を配布することで、機械学習を実行可能な環境を学習サーバ２２の各々に実現する。これにより、全体制御サーバ１０は、学習サーバ２２毎に実行環境やパラメータのチューニングを行うことなく、学習サーバ２２の各々で同様の実行環境を実現させることができる。したがって、医用情報処理システム１は、複数の医療機関が保持する医用データを用いた機械学習を効率的に行うことができる。
【００９５】
また、医用情報処理システム１では、全体制御サーバ１０と学習サーバ２２とが、パラメータ（重み係数Ｗ）と当該パラメータの変化量（変化量ΔＷ）とを授受するこことで、学習サーバ２２の各々で個別に機械学習を進行させることができる。これにより、医用情報処理システム１では、各病院が管理する医用データを外部に持ち出すことなく、当該医用データを統合した機械学習を効率的に行うことができる。
【００９６】
また、全体制御サーバ１０は、学習サーバ２２の各々から状態情報を収集し、当該状態情報に基づいて、学習サーバ２２の各々の学習状態を比較可能な状態で表示させる。これにより、全体制御サーバ１０は、各病院での機械学習の比較を容易にすることができる。また、全体制御サーバ１０は、入力インタフェース１３０を介した操作に応じて、学習サーバ２２の各々が機械学習の対象とする医用データのデータ数を補正する。これにより、全体制御サーバ１０は、例えば、特定の病院で行われている機械学習にデータ数の偏りがある場合、他の病院と同じ条件となるよう機械学習に用いるデータ数を変更することができるため、各病院で使用可能な汎用的なモデルを作成することができる。
【００９７】
なお、上述した実施形態では、全体制御サーバ１０及び学習サーバ２２が備える機能構成を、処理回路１５０又は処理回路２２３によって実現する場合の例を説明したが、実施形態はこれに限られない。例えば、本明細書における機能構成は、ハードウェアのみ、又は、ハードウェアとソフトウェアとの混合によって同機能を実現するものであっても構わない。
【００９８】
また、上述した説明で用いた「プロセッサ」という文言は、例えば、ＣＰＵ（Central  Processing  Unit）、ＧＰＵ（Graphics  Processing  Unit）、或いは、特定用途向け集積回路（Application  Specific  Integrated  Circuit：ＡＳＩＣ）、プログラマブル論理デバイス（例えば、単純プログラマブル論理デバイス（Simple  Programmable  Logic  Device：ＳＰＬＤ）、複合プログラマブル論理デバイス（Complex  Programmable  Logic  Device：ＣＰＬＤ）、及びフィールドプログラマブルゲートアレイ（Field  Programmable  Gate  Array：ＦＰＧＡ））等の回路を意味する。プロセッサは、記憶回路１２０に保存されたプログラムを読み出して実行することで、機能を実現する。なお、記憶回路１２０にプログラムを保存する代わりに、プロセッサの回路内にプログラムを直接組み込むように構成しても構わない。この場合は、プロセッサは回路内に組み込まれたプログラムを読み出して実行することで機能を実現する。また、本実施形態のプロセッサは、単一の回路として構成される場合に限らず、複数の独立した回路を組み合わせて一つのプロセッサとして構成され、その機能を実現するようにしてもよい。
【００９９】
ここで、プロセッサによって実行されるプログラムは、ＲＯＭ（Read  Only  Memory）や記憶回路等に予め組み込まれて提供される。なお、このプログラムは、これらの装置にインストール可能な形式又は実行可能な形式のファイルでＣＤ（Compact  Disk）−ＲＯＭ、ＦＤ（Flexible  Disk）、ＣＤ−Ｒ（Recordable）、ＤＶＤ（Digital  Versatile  Disk）等のコンピュータで読み取り可能な記憶媒体に記録されて提供されてもよい。また、このプログラムは、インターネット等のネットワークに接続されたコンピュータ上に格納され、ネットワーク経由でダウンロードされることにより提供又は配布されてもよい。例えば、このプログラムは、上述した各機能部を含むモジュールで構成される。実際のハードウェアとしては、ＣＰＵが、ＲＯＭ等の記憶媒体からプログラムを読み出して実行することにより、各モジュールが主記憶装置上にロードされて、主記憶装置上に生成される。
【０１００】
以上説明した実施形態によれば、複数の医療機関が保持する医用データを用いた機械学習を効率的に行うことができる。
【０１０１】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これらの実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【０１０２】
１  医用情報処理システム
１０  全体制御サーバ
２０  医療機関システム
２１  データ管理装置
２２  学習サーバ
１５１  配布機能
１５２  変化量受信機能
１５３  パラメータ調整機能
１５４  パラメータ送信機能
１５５  学習状態受信機能
１５６  表示制御機能
１５７  補正機能
２２３１  導入機能
２２３２  パラメータ受信機能
２２３３  変化量算出機能
２２３４  変化量送信機能
２２３５  学習状態送信機能
【図１】
2020204965.tif 000003
【図２】
2020204965.tif 000004
【図３】
2020204965.tif 000005
【図４】
2020204965.tif 000006
【図５】
2020204965.tif 000007
【図６】
2020204965.tif 000008
【図７】
2020204965.tif 000009
【図８】
2020204965.tif 000010
【図９】
2020204965.tif 000011
【図１０】
2020204965.tif 000012