(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-26
(45)【発行日】2024-07-04
(54)【発明の名称】プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法
(51)【国際特許分類】
G16H 10/40 20180101AFI20240627BHJP
G16H 50/50 20180101ALI20240627BHJP
G01N 33/561 20060101ALI20240627BHJP
【FI】
G16H10/40
G16H50/50
G01N33/561
(21)【出願番号】P 2020076807
(22)【出願日】2020-04-23
【審査請求日】2023-04-19
(73)【特許権者】
【識別番号】517448489
【氏名又は名称】合同会社H.U.グループ中央研究所
(74)【代理人】
【識別番号】100114557
【氏名又は名称】河野 英仁
(74)【代理人】
【識別番号】100078868
【氏名又は名称】河野 登夫
(72)【発明者】
【氏名】山下 英俊
【審査官】梅岡 信幸
(56)【参考文献】
【文献】特開2019-095328(JP,A)
【文献】国際公開第2020/027228(WO,A1)
【文献】国際公開第2014/103061(WO,A1)
【文献】特開2017-125840(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G16H 10/00-80/00
G01N 33/48-33/98
(57)【特許請求の範囲】
【請求項1】
健常者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物と、被検者から採取した検体に
免疫電気泳動法に係る検査処置を行った結果物
とを撮影した撮影画像を取得し、
撮影画像が入力された場合に、複数の検査項目毎に
、前記健常者の基準値と比較した複数のレベルのいずれかに属する確率を出力するように学習された学習モデルに、取得した前記撮影画像を入力して検査項目毎
に、前記健常者の基準値と比較した複数のレベルのいずれかに属する確率を出力する
処理をコンピュータに実行させるプログラム。
【請求項2】
被検者から採取した検体に検査処置を行った結果物を撮影した撮影画像を取得し、
複数の検査項目毎に、検査結果のレベルに応じたノードを複数有し、
撮影画像が入力された場合に、複数の検査項目毎に、各ノード
から自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力する
ように学習された学習モデルに、取得した前記撮影画像を入力して検査項目毎に、各ノードから自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力する
処理をコンピュータに実行させるプログラム。
【請求項3】
健常者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物と、被検者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物とを撮影した撮影画像を取得し、
前記学習モデルは、前記複数の検査項目毎に、健常者の基準値と比較したレベルに応じたノードを複数有し、前記撮影画像が入力された場合に、各ノードは、自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力する
請求項
2に記載のプログラム。
【請求項4】
前記検査項目毎に、出力された各ノードの確率が閾値を超えるノードの個数を計数し、計数した個数に応じたレベルを検査結果として出力する
処理を前記コンピュータに実行させる請求項
2又は
3に記載のプログラム。
【請求項5】
前記複数の検査項目毎の検査結果を、該検査結果について前記学習モデルが出力した確率に応じて異なる表示態様で表示部に表示する
処理を前記コンピュータに実行させる請求項
1から
4までのいずれかひとつに記載のプログラム。
【請求項6】
前記複数の検査項目毎の検査結果を表示部に表示し、
表示した検査結果に対する訂正指示を受け付け、
受け付けた訂正指示に従って前記検査結果を訂正する
処理を前記コンピュータに実行させる請求項1から
5までのいずれかひとつに記載のプログラム。
【請求項7】
訂正された前記検査結果を、訂正されたことを示す情報を付加して表示し、
訂正された前記検査結果及び前記撮影画像を再学習データとして記憶する
処理を前記コンピュータに実行させる請求項
6に記載のプログラム。
【請求項8】
健常者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物と、被検者から採取した検体に
免疫電気泳動法に係る検査処置を行った結果物
とを撮影した撮影画像を取得する画像取得部と、
撮影画像が入力された場合に、複数の検査項目毎に
、前記健常者の基準値と比較した複数のレベルのいずれかに属する確率を出力するように学習された学習モデルに、取得した前記撮影画像を入力して検査項目毎
に、前記健常者の基準値と比較した複数のレベルのいずれかに属する確率を出力する出力部と
を備える情報処理装置。
【請求項9】
健常者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物と、被検者から採取した検体に
免疫電気泳動法に係る検査処置を行った結果物
とを撮影した撮影画像を取得し、
撮影画像が入力された場合に、複数の検査項目毎に
、前記健常者の基準値と比較した複数のレベルのいずれかに属する確率を出力するように学習された学習モデルに、取得した前記撮影画像を入力して検査項目毎
に、前記健常者の基準値と比較した複数のレベルのいずれかに属する確率を出力する
処理をコンピュータが実行する情報処理方法。
【請求項10】
被検者から採取した検体に検査処置を行った結果物を撮影した撮影画像を取得する画像取得部と、
複数の検査項目毎に、検査結果のレベルに応じたノードを複数有し、撮影画像が入力された場合に、複数の検査項目毎に、各ノードから自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力するように学習された学習モデルに、取得した前記撮影画像を入力して検査項目毎に、各ノードから自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力する出力部と
を備える情報処理装置。
【請求項11】
被検者から採取した検体に検査処置を行った結果物を撮影した撮影画像を取得し、
複数の検査項目毎に、検査結果のレベルに応じたノードを複数有し、撮影画像が入力された場合に、複数の検査項目毎に、各ノードから自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力するように学習された学習モデルに、取得した前記撮影画像を入力して検査項目毎に、各ノードから自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力する
処理をコンピュータが実行する情報処理方法。
【請求項12】
学習モデルの生成方法において、
前記学習モデルは、複数の検査項目毎に、検査結果のレベルに応じたノードを複数有し、撮影画像が入力された場合に、各ノードは自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力し、
被検者から採取した検体に検査処置を行った結果物を撮影した撮影画像と、前記検査項目毎に前記検体に対する検査結果のレベルに応じて各ノードに割り当てられた正解ラベルとを含む訓練データを取得し、
取得した訓練データを用いて前記学習モデルを生成する
処理をコンピュータが実行する学習モデルの生成方法。
【請求項13】
前記撮影画像は、健常者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物と被検者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物とを撮影した撮影画像であり、
前記学習モデルは、前記複数の検査項目毎に、健常者の基準値と比較したレベルに応じたノードを複数有し、前記撮影画像が入力された場合に、各ノードは自ノードに応じたレベル及び該レベルよりも大きいレベルに属する確率を出力し、
前記撮影画像と、前記検査項目毎に健常者の基準値と比較したレベルに応じて各ノードに割り当てられた正解ラベルとを含む訓練データを取得し、
前記訓練データを用いて前記学習モデルを生成する
請求項
12に記載の学習モデルの生成方法。
【請求項14】
健常者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物と被検者から採取した検体に免疫電気泳動法に係る検査処置を行った結果物とを撮影した撮影画像、及び複数の検査項目毎に前記健常者の基準値と比較したレベルを含む訓練データを取得し、
取得した訓練データを用いて、撮影画像が入力された場合に、複数の検査項目毎に、前記健常者の基準値と比較した複数のレベルのいずれかに属する確率を出力する学習モデルを生成する
処理をコンピュータが実行する学習モデルの生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、情報処理装置、情報処理方法及び学習モデルの生成方法に関する。
【背景技術】
【0002】
医療現場では、患者等の被検者の血液、鼻水、尿、唾液等の検体を採取し、採取した検体に対して検査対象物の有無又は含有量を判断する臨床検査が行われている。臨床検査では、例えば健常者から採取した検体と、被検者の検体とのそれぞれについて検査を行い、検査結果を比較することにより、被検者の検体が健常検体とどの程度異なるかを判断して検査結果の決定を行うことがある(例えば特許文献1参照)。また臨床検査では、例えば検査対象物と反応(結合)する検査用抗体が塗布してある検査キットに、被検者から採取した検体を滴下し、所定の検査時間が経過した後の状態を目視で確認することにより、検査対象物の有無(陽性又は陰性)或いは含有量の判定を行うものがある(例えば特許文献2参照)。このような検査においても、例えば健常者から採取した検体と、被検者の検体とのそれぞれについて検査用抗体との反応を行い、反応の結果を比較することにより、検査結果の決定が行われている。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2019-78722号公報
【文献】特開2006-64398号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述したように、検査結果(反応の結果)を目視で確認する臨床検査では、正確な検査結果を判定することは難しく、医療機関によっては検査対象(被検者から採取した検体)が多数有る場合、多数の検査対象に対して正確な検査結果を迅速に判断する必要があり、臨床検査技師等の検査を行う医療従事者の作業負担が大きい。
【0005】
本開示は、このような事情に鑑みてなされたものであり、その目的とするところは、検査を行う医療従事者の作業負担を軽減することが可能なプログラム等を提供することにある。
【課題を解決するための手段】
【0006】
本開示の一態様に係るプログラムは、被検者から採取した検体に検査処置を行った結果物を撮影した撮影画像を取得し、撮影画像が入力された場合に、複数の検査項目毎に検査結果に関する値を出力するように学習された学習モデルに、取得した前記撮影画像を入力して検査項目毎の検査結果に関する値を出力する処理をコンピュータに実行させる。
【発明の効果】
【0007】
本開示にあっては、被検者から採取した検体に対して検査対象物の有無又は含有量を判断する検査を行う医療従事者の作業負担を軽減することができる。
【図面の簡単な説明】
【0008】
【
図1】検査キットの撮影画像例を示す模式図である。
【
図3】検査モデルの構成例を示すブロック図である。
【
図4】検査装置による判定処理手順の一例を示すフローチャートである。
【
図6】検査装置による訂正処理手順の一例を示すフローチャートである。
【
図10】実施形態2の検査モデルの構成例を示すブロック図である。
【
図11】検査モデルによる予測ミスの結果を示す模式図である。
【
図12】学習装置の構成例を示すブロック図である。
【
図13】実施形態1の検査モデルの生成処理手順の一例を示すフローチャートである。
【
図14】実施形態2の検査モデルの生成処理手順の一例を示すフローチャートである。
【
図15】検査システムの構成例を示す模式図である。
【
図16】検査システムの構成例を示すブロック図である。
【
図17】実施形態4のサーバによる判定処理手順の一例を示すフローチャートである。
【
図19】実施形態5の検査モデルの構成例を示すブロック図である。
【
図20】実施形態5の検査モデルの他の構成例を示すブロック図である。
【発明を実施するための形態】
【0009】
以下に、本開示のプログラム、情報処理装置、情報処理方法及び学習モデルの生成方法について、その実施形態を示す図面に基づいて詳述する。
【0010】
(実施形態1)
免疫電気泳動法を用いた検査キットによる検査結果を、ニューラルネットワーク(学習モデル)を用いて判定する検査装置について説明する。
図1は検査キットの撮影画像例を示す模式図である。
図1Aは検査キットに検体を滴下し、電圧を印加することによる電気泳動によって蛋白質成分を分離させ、所定の検査時間が経過した後に染色した状態であり、健常者(特定の病気がない人)の検体を用いた一般的な検査結果の例を示している。
図1Bは、本実施形態の検査装置10による検査結果の判定に用いる撮影画像の例であり、検査装置10では、
図1Bに示すように、健常者の検体に対して免疫電気泳動法による検査処置を行った後の結果物(検査結果)を撮影した撮影画像(領域A)と患者(被検者)の検体に対して免疫電気泳動法による検査処置を行った後の結果物(検査結果)を撮影した撮影画像(領域B)とに基づいて、患者の検査結果を判定する。
【0011】
図1に示すように検査キットは細長い矩形板状に構成されており、一面に寒天ゲルが塗布してあり、一面の中央の滴下領域Rに孔が設けられており、滴下領域Rから短手方向に少し離れた位置に、電圧を印加する方向(検査キットの長手方向)に沿って溝(図示せず)が設けられている。滴下領域Rは、被検者から採取した検体を滴下する領域であり、溝は、検体に含まれる蛋白質成分と抗原抗体反応する抗ヒト全血清を滴下する領域である。滴下領域Rに滴下された検体中の検査対象物(蛋白質成分)は、電圧が印加された場合に検体中の各蛋白質成分の電荷に応じて寒天ゲル内を陽極又は陰極方向に移動する。所定の検査時間の通電後、抗ヒト全血清を溝に流し込み、検体中の蛋白質成分及び抗ヒト全血清を寒天ゲル内で自由拡散(自然拡散)させると共に、それらの間で抗原抗体反応させることで、免疫沈降物を生成し、寒天ゲル上に固定する。検体中の未反応の蛋白質成分を除去した後、染色液を用いて染色を行うことにより、
図1に示すように各蛋白質成分に応じた位置に沈降線が出現する。検体は、例えば被検者の血液、鼻水、尿、唾液等とすることができる。抗ヒト全血清は、例えば本項で後述する12種類の蛋白質成分と強く結合する抗体とすることができる。
図1に示す検査キットは、検体に含まれる蛋白質成分の量を検査するための検査キットの例であり、12種類の蛋白質成分を検査項目として各蛋白質成分の検出が可能に構成されている。このような検査キットを用いた検査を行った場合、それぞれの沈降線の位置及び濃さに応じて、それぞれの蛋白質成分の量を判定できる。
図1に示す検査キットでは、左から順に、プレアルブミン(Pre-albumin:Pre-Alb)、アルブミン(Albumin:Alb)、α1-アンチトリプシン(Antitrypsin:α1AT)、β1C/β1A-グロブリン(globulin:C3)、α2-マクログロブリン(Macroglobulin:α2M)、ハプトグロビン(Haptoglobin:Hb)、ヘモペキシン(Hemopexin:Hex)、トランスフェリン(Transferrin:Tf)、β-リポプロテイン(Lipoprotein:βLp)、IgA(免疫グロブリンA)、IgM(免疫グロブリンM)、IgG(免疫グロブリンG)の沈降線を示す。
【0012】
図2は、検査装置10の構成例を示すブロック図である。検査装置10は、パーソナルコンピュータ又はサーバコンピュータ等を用いて構成されており、制御部11、記憶部12、通信部13、入力部14、表示部15、カメラ16、読み取り部17等を含み、これらの各部はバスを介して相互に接続されている。制御部11は、CPU(Central Processing Unit)、MPU(Micro-Processing Unit)、GPU(Graphics Processing Unit)又はTPU(Tensor Processing Unit)等の1又は複数のプロセッサを含む。制御部11は、記憶部12に記憶してある制御プログラム12Pを適宜実行することにより、本開示の情報処理装置が行うべき種々の情報処理、制御処理等を検査装置10に行わせる。
【0013】
記憶部12は、RAM(Random Access Memory)、フラッシュメモリ、ハードディスク、SSD(Solid State Drive)等を含む。記憶部12は、制御部11が実行する制御プログラム12P及び制御プログラム12Pの実行に必要な各種のデータ等を予め記憶している。また記憶部12は、制御部11が制御プログラム12Pを実行する際に発生するデータ等を一時的に記憶する。また記憶部12は、例えばディープラーニング処理によって構築された学習済みモデルである検査モデルMを記憶している。検査モデルMは、
図1Bに示すように健常者の検体を用いた検査キットによる検査結果(領域A)と患者の検体を用いた検査キットによる検査結果(領域B)とを含む画像データ(撮影画像)を入力とし、入力された撮影画像に基づいて、撮影画像中の検査キットによる検査結果として、複数(例えば12種類)の蛋白質成分のそれぞれの含有量の大小を表す複数レベルのうち、ある含有量レベルにあると推定される確率(ある含有量レベルを検査結果とすべき確からしさ(0から1までの値を取り得る確信度)に関する値)を出力するように学習された学習済みモデルである。検査モデルMは、入力値に対して所定の演算を行い、演算結果を出力するものであり、記憶部12には、この演算を規定する関数の係数や閾値等のデータが検査モデルMとして記憶される。
【0014】
通信部13は、有線通信又は無線通信によって、インターネット又はLAN(LocalArea Network)等のネットワークに接続するためのインタフェースであり、ネットワークを介して他の装置との間で情報の送受信を行う。例えば通信部13は、ネットワークを介して医療機関における電子カルテシステムと通信できるように構成されていてもよい。入力部14は、ユーザ(検査者)による操作入力を受け付け、操作内容に対応した制御信号を制御部11へ送出する。表示部15は、液晶ディスプレイ又は有機ELディスプレイ等であり、制御部11からの指示に従って各種の情報を表示する。なお、入力部14及び表示部15は一体として構成されたタッチパネルであってもよい。
【0015】
カメラ16はレンズ及び撮像素子等を有し、レンズを介して被写体像の画像データを取得する。カメラ16は、制御部11からの指示に従って撮影を行い、取得した画像データ(撮影画像)を記憶部12へ送出して記憶する。カメラ16は、検査装置10に内蔵された構成のほかに、検査装置10に外付けされる構成でもよい。この場合、検査装置10は、外部カメラの接続が可能な接続部又は外部カメラとの無線通信が可能な無線通信部を備え、外部カメラが撮影した画像データを接続部又は無線通信部を介して取得する。
【0016】
読み取り部17は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM、USB(Universal Serial Bus)メモリ、SD(Secure Digital)カード等を含む可搬型記憶媒体1aに記憶された情報を読み取る。記憶部12に記憶されるプログラム及びデータは、例えば制御部11が読み取り部17を介して可搬型記憶媒体1aから読み取って記憶部12に記憶してもよい。また、記憶部12に記憶されるプログラム及びデータは、制御部11が通信部13を介してネットワーク経由で外部装置からダウンロードして記憶部12に記憶してもよい。
【0017】
検査装置10は、上述した構成に加えて、撮影用ライト及び通知部等が設けられていてもよい。撮影用ライトは例えばLED(Light Emitting Diode)ライトであり、制御部11からの指示に従って点灯する。なお、撮影用ライトを点灯させた状態で、解像度及びダイナミックレンジ等のカメラ性能が優れたカメラ16による撮影を行う場合、検査キットを精度良く撮影した良好な撮影画像が得られる。通知部は、LEDライト又は回転灯等の発光装置、ブザー又はスピーカ等の音声出力装置であり、発行装置を点灯又は点滅させ、又は音声出力することによって、検査装置10による各種の状況を検査者に通知する構成としてもよい。
【0018】
図3は検査モデルMの構成例を示すブロック図である。本実施形態の検査モデルMは、例えばCNN(Convolution Neural Network)、R-CNN(Region-based CNN)、Fast R-CNN、Faster R-CNN、Mask R-CNN,SSD(Single Shot Multibook Detector)、YOLO(You Only Look Once)等の種々の物体検出アルゴリズム及び物体分類アルゴリズム(いずれもニューラルネットワーク)を用いて構成されている。
図3に示す検査モデルMは、入力層、特徴量抽出部M1、全結合層M2、出力層M3を有する。本実施形態の検査モデルMでは、予測工程においては、
図1Bに示すように健常者の検体による検査結果(領域A、検査基準)と患者の検体による検査結果(領域B、検査対象)とを含む撮影画像が入力層を介して入力される。なお、入力される画像は、検査キットを撮影した撮影画像であってもよく、撮影画像に対して縮小処理を行った画像であってもよい。入力層は入力される画像の画素数に相当する数の入力ノードを有する。入力層の各入力ノードには検査キットの撮影画像中の各画素が入力され、入力層を介して入力された撮影画像は特徴量抽出部M1に入力される。特徴量抽出部M1は、畳み込み層及びプーリング層を含み、特徴量抽出部M1に入力された撮影画像は、畳み込み層でフィルタ処理等によって画像の特徴量が抽出されて特徴マップが生成され、プーリング層で圧縮されて情報量が削減される。畳み込み層及びプーリング層は複数層繰り返し設けられており、複数の畳み込み層及びプーリング層によって生成された特徴マップは全結合層M2へ出力される。全結合層M2は複数層設けられており、入力された特徴マップに基づいて、各種の関数や閾値等を用いて各層のノードの出力値を算出し、算出した出力値を順次後の層のノードに入力する。全結合層M2は、各層のノードの出力値を順次後の層のノードに入力することにより、最終的に後段の出力層M3に出力値を出力する。
【0019】
出力層M3はsoftmax関数、ランダムフォレスト、Gradient Boosting等の多クラス分類器で構成されている。本実施形態の検査モデルMでは、出力層M3は、検査対象の12種類の蛋白質成分のそれぞれに対応する12個のsoftmax関数(IgG用softmax関数M31,IgA用softmax関数M32…)を有する。予測工程では、全結合層M2からの出力値はそれぞれのsoftmax関数M31,M32…に入力され、softmax関数M31,M32…は、入力された全結合層M2からの出力値を入力(引数)とし、所定の関数を用いて出力値を算出し、算出した出力値を各出力ノードから出力する。本実施形態の検査モデルMでは、出力層M3は、1つのsoftmax関数M31,M32…について5個の出力ノードを有しており、12個のsoftmax関数M31,M32…が設けられているので合計60個の出力ノードを有する。例えばIgG用softmax関数M31に接続された5つの出力ノードは、IgGについて、入力画像中の検査基準(健常者の検体による検査結果に基づく基準値)に対する検査対象(患者の検体)の検査結果を出力するノードである。具体的には、例えばノード2は、検査対象が検査基準と同程度であり、正常であると判別すべき確率を出力し、ノード1は、検査対象が検査基準と比較してやや減少していると判別すべき確率を出力し、ノード0は、検査対象が検査基準と比較して減少していると判別すべき確率を出力する。また、ノード3は、検査対象が検査基準と比較してやや増加していると判別すべき確率を出力し、ノード4は、検査対象が検査基準と比較して増加していると判別すべき確率を出力する。なお、1つのsoftmax関数M31,M32…に接続された5つの出力ノードのそれぞれは0~1.0の出力値を出力し、5つの出力ノードから出力される出力値(確率)の合計が1.0となる。即ち、
図3に示す出力例では、IgGレベルとして、「正常」に対応するノード2から0.85の出力値が出力され、その他の出力ノード0,1,3,4から0~0.09の出力値が出力されているので、ここでの検査対象のIgGは検査基準に対して「正常」と判断すべき量であることを示す。
【0020】
同様に、IgA用softmax関数M32に接続された5つの出力ノードは、IgAについて、入力画像中の検査基準に対する検査対象の検査結果を出力するノードである。具体的には、例えばノード2は、検査対象が正常であると判別すべき確率を出力し、ノード1は、検査対象が検査基準よりもやや減少していると判別すべき確率を出力し、ノード0は、検査対象が検査基準と比較して減少していると判別すべき確率を出力する。また、ノード3は、検査対象が検査基準と比較してやや増加していると判別すべき確率を出力し、ノード4は、検査対象が検査基準と比較して増加していると判別すべき確率を出力する。よって、
図3に示す出力例では、IgAレベルとして、「やや増加」に対応するノード3から0.85の出力値が出力され、その他の出力ノード0,1,2,4から0~0.09の出力値が出力されているので、ここでの検査対象のIgAは検査基準に対して「やや増加」と判断すべき量であることを示す。
【0021】
検査モデルMは、
図1Bに示すような健常者の検体による検査結果(検査基準)及び患者の検体による検査結果(検査対象)を含む撮影画像と、12種類の検査項目のそれぞれについて、撮影画像中の検査基準に対する検査対象の検査結果(減少、やや減少、正常、やや増加、増加の5パターンのうちのいずれか)を示す情報(正解ラベル)とを含む訓練データを用いて学習する。検査モデルMは、訓練データに含まれる撮影画像が入力された場合に、各検査項目について、訓練データに含まれる正解ラベルに対応する1つの出力ノードからの出力値が1.0に近づき、他の出力ノードからの出力値が0に近づくように、特徴量抽出部M1、全結合層M2及び出力層M3(softmax関数M31,M32…)を学習させる。
【0022】
具体的には、学習工程において、まず出力層M3(softmax関数M31,M32…)の出力値として期待する値(確率を表す値として0又は1)を入力することで、出力層M3の実際の出力値との差分に比例する値(0.0001%等、“出力層M3の差分値”と呼ぶ)を算出する。次に、出力層M3がその出力値を“出力層M3の差分値”だけ変更するのに必要な、出力層M3の入力値(“全結合層M2の差分値”と呼ぶ)を算出する。そして、全結合層M2が、その出力値を“全結合層M2の差分値”だけ変更できるように全結合層M2を構成するパラメータを修正する。こうして上記の予測工程と学習工程とを反復計算することで、全結合層M2のパラメータは、出力層M3から期待される出力値が得られるように最適化される。なお、最適化の指標として出力層M3の出力値と正解ラベルとの誤差に相当する損失関数(例えばsoftmax関数を用いる場合はクロスエントロピー、sigmoid関数を用いる場合は二値クロスエントロピー)の値を上記の反復計算毎に確認することで、最適化の進捗を確認できる。以降、この反復計算により最適化する工程を“全結合層M2を学習させる”と呼ぶ。なおここでは、学習工程において全結合層M2の学習を説明したが、同様にして、特徴量抽出部M1を学習させることができる。またこのような学習工程を様々な入力画像に対して実行し、汎用的な画像認識に活用可能なパラメータとして最適化された機械学習モデルが公開されており、特徴量抽出部M1として、それらのモデルを組み合わせて使用することができる(転移学習やFine Tuningと呼ばれる)。
【0023】
また学習工程において、各蛋白質成分の含有量を表すレベルに対応する確率(ノードの出力値)として1を、それ以外の含有量を表すレベルに対応する確率(ノードの出力値)を0としたワンホットベクトルを、各蛋白質成分に対応するsoftmax関数の出力となるように、全結合層M2を学習させる。これにより、撮影画像が入力された場合に、撮影画像中の検査基準(健常者の検体)を基準とした検査対象(被検者の検体)に対する各検査項目の検査結果(健常者の基準値と比較したレベル)として、5パターンのそれぞれに対する判別確率を出力するように学習された学習済みの検査モデルMが得られる。なお、検査モデルMの学習は例えば他の学習装置で行われる。他の学習装置で学習が行われて生成された学習済みの検査モデルMは、例えばネットワーク経由又は可搬型記憶媒体1a経由で学習装置から検査装置10にダウンロードされて記憶部12に記憶される。
【0024】
以下に、本実施形態の検査装置10が、免疫電気泳動法を用いた検査キットによる検査結果を判定する処理について説明する。
図4は検査装置10による判定処理手順の一例を示すフローチャート、
図5は撮影画像例を示す模式図である。以下の処理は、検査装置10の記憶部12に記憶してある制御プログラム12Pに従って制御部11によって実行される。なお、本実施形態では、以下の処理を制御部11が制御プログラム12Pを実行することにより実現するが、一部の処理を専用のハードウェア回路で実現してもよい。
【0025】
免疫電気泳動法を用いた検査キットによる検査を行う場合、検査者は、患者(被検者)から採取した検体と、健常者から採取した検体とを用意し、2つの検査キットのそれぞれの滴下領域Rに滴下する。そして検査者は、2つの検査キットに対して同時に電圧を印加し、所定時間の電圧印加後、検体内の蛋白質成分と抗ヒト全血清とを自由拡散させると共に免疫沈降反応させ、未反応の蛋白質成分を除去してから染色液を用いて染色し、乾燥させた後に撮影を行う。これにより、検査者は、
図5Aに示すような健常者の検体による電気泳動結果の撮影画像(検査基準)と、患者の検体による電気泳動結果の撮影画像(検査対象)とを同じ検査条件下で取得できる。なお、検査キットの撮影は、カメラ16によって行ってもよく、他の撮影装置で行ってもよい。また、健常者の検体による電気泳動結果と、患者の検体による電気泳動結果とは、各別に撮影して2つの撮影画像として取得してもよく、並べて撮影して1つの撮影画像として取得してもよい。
【0026】
検査装置10の制御部11(画像取得部)は、健常者の検体による電気泳動結果の撮影画像と、患者の検体による電気泳動結果の撮影画像とを、カメラ16にて又は通信部13を介して取得する(S11)。制御部11は、取得した撮影画像に対して前処理を実行する(S12)。制御部11はまず、健常者の検体による電気泳動結果の撮影画像と、患者の検体による電気泳動結果の撮影画像とのそれぞれから、沈降線の撮影領域を抽出する。これにより、不要な領域を除外して処理対象のデータ量を削減する。例えば制御部11は、処理対象の領域として、健常者の電気泳動結果の撮影画像と、患者の電気泳動結果の撮影画像とから1240画素×162画素をそれぞれ抽出する。次に制御部11は、それぞれ抽出した領域を結合して、
図5Bに示すような1240画素×324画素の結合画像を生成する。そして制御部11は、結合画像に対して縮小処理を行い、
図5Cに示すような縮小画像を生成する。例えば制御部11は224画素×224画素の縮小画像を生成する。なお、画像を縮小することで画像細部の画像特徴量が消失する場合があるため、処理時間や処理能力が許す限り、縮小の程度を大きくしないことが好ましい。
【0027】
検査装置10は、このような縮小画像を用いて検査結果を判定する。なお、制御部11は、健常者の検体による電気泳動結果と、患者の検体による電気泳動結果とを並べて撮影された1つの撮影画像を取得した場合、結合処理は行う必要はないが、2つの沈降線(電気泳動結果)を含む撮影領域を抽出する処理は行ってもよい。また、2つの電気泳動結果の撮影画像から沈降線の撮影領域を抽出する処理、2つの沈降線の撮影領域を結合して結合画像を生成する処理、結合画像を縮小して縮小画像を生成する処理は、他の装置で行われてもよい。この場合、検査装置10の制御部11は、他の装置で前処理が実行されて生成された縮小画像を取得することができるので、ステップS12の処理を行う必要がない。
【0028】
制御部11は、前処理によって得られた縮小画像に基づいて、縮小画像(撮影画像)中の検査基準に対する検査対象の検査結果を判定する処理を実行する(S13)。具体的には、制御部11は、縮小画像を検査モデルMに入力し、検査モデルMから出力された情報(各出力ノードからの出力値)に基づいて、撮影画像中の検査対象に対する検査結果を判定する。例えば制御部11は、検査モデルMから出力された情報のうちで、1つの検査項目に対応する5つの出力ノードからの出力値(判別確率)を抽出する(S14)。具体的には、1つの検査項目に対応するsoftmax関数M31,M32…に接続されている5つの出力ノードからの出力値を抽出する。そして制御部11は、5つの出力ノードのうちで出力値が最大値である出力ノードを特定し、特定した出力ノードに対応付けられている検査結果(減少、やや減少、正常、増加、やや増加)を、この検査項目に対する検査結果に特定する(S15)。例えば
図3に示す出力例では、IgGの検査項目に対応する出力ノードにおいて、出力値が最大値である出力ノードはノード2であるので、IgGの検査結果は「正常」に特定される。
【0029】
制御部11は、全ての検査項目に対する判定処理を終了したか否かを判断しており(S16)、終了していないと判断した場合(S16:NO)、ステップS14の処理に戻り、検査モデルMから出力された情報のうちで、未処理の1つの検査項目に対応する5つの出力ノードからの出力値を抽出する(S14)。そして制御部11は、5つの出力ノードのうちで出力値が最大値である出力ノードを特定し、特定した出力ノードに対応付けられている検査結果を、この検査項目に対する検査結果に特定する(S15)。制御部11は、全ての検査項目についてステップS14~S15の処理を行い、全ての検査項目に対する判定処理を終了したと判断した場合(S16:YES)、それぞれの検査項目についてステップS15で特定した検査結果を記憶する(S17)。例えば制御部11は、検査対象である患者の識別情報及び撮影画像に対応付けて、各検査項目に対する検査結果を記憶部12に記憶する。このとき、制御部11は、各検査項目に対する検査結果に加えて、この検査結果に対する判別確率、具体的には検査モデルMからの出力値を記憶してもよい。なお、検査装置10によって判定されて記憶部12に記憶された検査結果は、例えばネットワーク経由で電子カルテシステムと連携させることができる。
【0030】
上述した処理により、健常者の検体による電気泳動結果を撮影した検査基準画像と、患者の検体による電気泳動結果を撮影した検査対象画像とに基づいて、検査基準画像を基準として、検査対象画像に撮影された電気泳動結果に対する各検査項目の検査結果を特定できる。検査装置10は、複数の被検者(患者)のそれぞれについて、上述した処理を行い、各患者について各検査項目に対する検査結果を特定する。なお、ここでは、被検者に対する各検査項目の検査結果を記憶部12に記憶して処理を終了するが、検査結果を判定した後に表示部15に表示して、検査者に判定処理の終了と判定結果とを通知してもよい。このとき、検査装置10が通知部を有する場合、通知部による通知処理によって、検査装置10による判定処理が終了したことを通知してもよい。また、判定した検査結果に対する判定確率(判別確率)が低い場合(例えば0.6未満である場合)、判定結果を表示部15に表示し、検査モデルMを用いた判定結果の確認を検査者に促してもよい。
【0031】
次に、上述した処理によって検査装置10で判定された検査結果が誤っていた場合に訂正する処理について説明する。
図6は検査装置10による訂正処理手順の一例を示すフローチャート、
図7~
図9は画面例を示す模式図である。以下の処理は、検査装置10の記憶部12に記憶してある制御プログラム12Pに従って制御部11によって実行される。また以下の処理の一部を専用のハードウェア回路で実現してもよい。
【0032】
検査者は、
図4に示す処理によって検査装置10が判定して記憶部12に記憶した各患者の検査結果を表示部15に表示して確認し、訂正すべきものがあれば訂正することができる。制御部11(出力部)は、入力部14を介して、検査装置10によって判定された検査結果の確認指示を受け付けた場合、1人の患者の検査結果を記憶部12から読み出して表示部15に表示する(S21)。
図7は検査結果の表示例を示しており、この患者について、各検査項目に対する検査結果として、減少、やや減少、正常、やや増加、増加のうちで該当する箇所にチェック(
図7中の横線)が表示されている。なお、制御部11は、検査結果を表示する場合、検査結果の表示フォームと、1人の患者に対する各検査項目の検査結果とを記憶部12から読み出し、表示フォームに対して、各検査項目の検査結果に対応する箇所にチェックを付加して検査結果画面を生成する。これにより、
図7に示すような画面が表示部15に表示される。
【0033】
図7に示す検査結果画面は、健常者の検体による電気泳動結果の撮影画像(正常)と、患者の検体による電気泳動結果の撮影画像(患者)とを表示する。また
図7に示す検査結果画面は、各検査項目について判定された検査結果の訂正を指示するための訂正ボタンB1と、検査結果画面の表示を終了するための終了ボタンB2とが設けられている。検査者は、表示中の撮影画像を確認して、各検査項目の検査結果が適切であるか否かを目視で判断し、適切でないと判断した場合、この検査項目に対応する訂正ボタンB1を入力部14にて操作する。検査結果画面において入力部14を介して訂正ボタンB1が操作された場合、制御部11は、表示した検査結果に対する訂正指示を受け付ける。なお、
図8Aに示すように検査結果画面において、いずれかの検査項目に対する訂正ボタンB1上にカーソルC1が重ねられた場合、制御部11は、この訂正ボタンB1に対応する検査項目について、健常者の検体による電気泳動結果の撮影画像中の対応する箇所にマーカC2を表示する。これにより、検査者は、訂正対象として考えている検査項目について、表示中の電気泳動結果画面のどの箇所を確認すべきかを知ることができる。また、制御部11は、健常者の電気泳動結果の撮影画像に付加したマーカC2に加えて、被検者(患者)の検体による電気泳動結果の撮影画像中の対応する箇所にもマーカC3を表示してもよい。この場合、検査者は、並べて表示されている2つの電気泳動結果のどの箇所に注目すべきかを把握でき、検査結果の判定処理における負担を軽減できる。なお、制御部11は、健常者及び被検者の電気泳動結果の撮影画像に対して、カーソルC1で選択された検査項目に応じた同じ位置にマーカC2,C3を表示してもよい。この場合、検査者は、各検査項目について、電気泳動結果画面において注目すべき大まかな箇所を知ることができる。更に、いずれかの訂正ボタンB1の上にカーソルC1が重ねられた場合だけでなく、各検査項目の検査結果の表示欄の上にカーソルC1が重ねられた場合にも、制御部11は、上述したようなマーカC2,C3を表示してもよい。また、いずれかの検査項目に対する訂正ボタンB1又は検査結果の表示欄の上にカーソルC1が重ねられた場合に、制御部11は、この検査項目の検査結果の表示欄を反転表示又は背景色を変更して表示することにより、検査者が選択しようとしている検査項目を目立たせて表示してもよい。
【0034】
制御部11は、いずれかの検査項目の検査結果に対する訂正指示を受け付けたか否かを判断しており(S22)、訂正指示を受け付けたと判断した場合(S22:YES)、即ち、いずれかの訂正ボタンB1が操作された場合、検査結果画面の上に重ねて、
図8Bに示すような訂正受付画面を表示する(S23)。訂正受付画面は、例えば
図8Bに示すように、訂正指示された検査項目及びこの検査項目に対して判定された検査結果を表示し、訂正可能な検査結果(訂正内容)を指定するための各ボタン(減少ボタン、やや減少ボタン、正常ボタン、やや増加ボタン、増加ボタン)と、訂正内容を確定するためのOKボタンと、訂正処理の実行をキャンセルするためのキャンセルボタンとを表示する。なお、訂正内容を指定するためのボタンにおいて、判定された検査結果のボタンは既に選択された状態で表示されている。具体的には、
図8Aに示す画面においてIgMの検査項目に対する訂正ボタンが操作された場合、
図8Bに示す画面において正常ボタンが既に選択された状態で表示される。検査者は、検査装置10によって判定された検査結果を訂正する場合、訂正したい内容に対応するボタンを操作した上でOKボタンを操作し、訂正しない場合はキャンセルボタンを操作する。
【0035】
訂正受付画面において入力部14を介してキャンセルボタンが操作された場合、制御部11は、訂正受付画面の表示を終了して検査結果画面の表示に戻す。訂正受付画面において入力部14を介して訂正内容に対応するボタンが操作された上でOKボタンが操作された場合、制御部11は、操作されたボタンに対応する訂正内容を受け付ける(S24)。例えば、やや減少ボタンが操作された場合、制御部11は、IgMの検査項目に対する検査結果として「やや減少」への訂正指示を受け付ける。制御部11は、受け付けた訂正内容に基づいて、検査結果画面に表示中の内容を訂正する(S25)。例えば
図9Aに示す画面では、IgMの検査結果が「やや減少」に訂正され、更にIgMの検査項目に対する訂正ボタンB1が「訂正済」に変更されている。このように検査者によって訂正された検査項目を「訂正済」のステータスに変更することにより、訂正された検査結果に、訂正されたことを示す情報(「訂正済」)を付加して表示することができ、訂正されていない検査項目との区別が容易となる。
【0036】
制御部11は、検査者から受け付けた訂正内容と、ここでの処理対象である撮影画像とを対応付けて記憶部12に記憶する(S26)。なお、検査者から受け付けた訂正内容と、ここでの処理対象である撮影画像とは、検査モデルMを再学習させるための訓練データ(再学習データ)に用いることができるので、この時点で訓練データとして確保しておいてもよい。検査結果画面を表示している場合、制御部11は、終了ボタンB2が操作されることにより処理の終了指示を受け付けたか否かを判断している(S27)。制御部11は、終了指示を受け付けていないと判断する場合(S27:NO)、ステップS22の処理に戻り、終了指示を受け付けたと判断した場合(S27:YES)、
図4のステップS17で記憶部12に記憶した検査結果を訂正する(S28)。具体的には、検査対象である患者の識別情報及び撮影画像に対応付けて記憶部12に記憶してある各検査項目に対する検査結果のうちで、訂正指示された検査項目に対する検査結果を、訂正指示された検査結果に訂正する。そして、制御部11は処理を終了する。
【0037】
上述した処理により、本実施形態の検査装置10は、検査モデルMを用いて撮影画像に基づいて判定した各検査項目に対する検査結果を、必要に応じて訂正することができる。また、訂正された内容を訓練データに用いて検査モデルMを再学習させることが可能であるので、精度の高い検査モデルMを生成できる。本実施形態の検査装置10において、
図9Bに示すように検査結果画面において、それぞれの検査項目に対する検査結果の表示欄上にカーソルが重ねられた場合に、制御部11は、この検査結果に対する判別確率を記憶部12から読み出して表示してもよい。
図9Bに示す例では、IgAの検査結果を示すチェック(
図9B中の横線)上にカーソルが重ねられており、この場合、制御部11は、IgAの検査結果として検査モデルMが「正常」に対して出力した出力値(判別確率)を吹き出しの中に表示している。このように、各検査結果に対する判別確率を表示することにより、検査装置10が検査モデルMを用いて特定した検査結果の確からしさを確認することができる。また、検査結果画面において、制御部11は、各検査項目の検査結果を、各検査結果に対する判別確率(検査結果に関する値)に応じた表示態様で表示してもよい。例えば各検査項目に対する検査結果の判別確率が所定値未満である場合(例えば60%未満である場合)に、
図9B中の検査項目Albuminに対する検査結果のように、背景色を変更して表示してもよい。この場合、検査装置10が検査モデルMを用いて特定した検査結果の確からしさに応じて異なる表示態様で各検査結果を表示するので、検査結果の確からしさが低い検査項目を明示することができる。よって、検査者は、例えば背景色を変更して表示された検査項目に対する検査結果の確認を優先的に行えばよく、検査者の作業効率が向上する。
【0038】
本実施形態では、健常者の検体による電気泳動結果を撮影した検査基準画像と、患者の検体による電気泳動結果を撮影した検査対象画像とに基づいて、検査基準画像を基準として、検査対象画像に撮影された電気泳動結果に対する各検査項目の検査結果を自動的に判定する。よって、免疫電気泳動法を用いた検査において、医療従事者等の検査者が目視で検査結果を判定する際に支援することができ、検査者の作業負担を軽減できる。なお、本実施形態の検査モデルMは、画像の特徴量を抽出する特徴量抽出部M1及び全結合層M2を複数の検査項目で共有し、全結合層M2からの出力値に基づいて検査結果に対する判別確率を算出するsoftmax関数M31,M32…を検査項目毎に設けてある。特徴量抽出部M1及び全結合層M2を複数の検査項目で共有することにより、複数の検査項目に対して、画像の特徴量を抽出する処理及び所定の関数に基づく演算処理を1回行えばよく、演算に要する時間の増加を回避できる。また、検査モデルMの学習に要する時間の増加も回避できる。
【0039】
本実施形態では、検査装置10が判定した検査結果(判定結果)が誤っている場合、検査結果画面を介して、判定結果を訂正できる。よって、検査装置10によって判定された検査結果が誤っていた場合に、例えば検査者によって入力された正解の検査結果に訂正できる。また、訂正した検査結果と撮影画像とを用いて検査モデルMを再学習させることができ、この場合、より精度の高い検査モデルMを実現できる。
【0040】
(実施形態2)
検査モデルMの変形例について説明する。
図10は実施形態2の検査モデルMの構成例を示すブロック図である。
図3に示す実施形態1の検査モデルMでは、出力層M3は、1に正規化されている多クラス分類器を用いて構成されている。これに対して、本実施形態の検査モデルMでは、出力層M4はsigmoid関数、SVM(Support Vector Machine)等の1に正規化されていない二値分類器を用いて構成されている。以下では、出力層M4がsigmoid関数で構成されている検査モデルMを例に説明する。即ち、
図10に示す検査モデルMは、
図3に示す実施形態1の検査モデルMにおいて、softmax関数M31,M32…を用いた出力層M3の代わりに、sigmoid関数部M41,M42…を用いた出力層M4を有する。それ以外の検査装置10の構成については、実施形態1と同様であるので詳細な説明を省略する。
【0041】
本実施形態の検査モデルMでは、出力層M4は、検査対象の12種類の蛋白質成分のそれぞれに対応する12個のsigmoid関数部(IgG用sigmoid関数部M41,IgA用sigmoid関数部M42…)を有しており、それぞれのsigmoid関数部M41,M42…には1個の出力ノードが設けられている。また、各検査項目用のsigmoid関数部M41,M42…はそれぞれ4つのsigmoid関数(第1関数M411,M421…~第4関数M414,M424…)と、各sigmoid関数からの出力値を入力して所定の計算を行う小計部M415,M425…とを有している。それぞれのsigmoid関数部M41,M42…において、第1関数M411,M421…にはノード0,1の2つのノードが設けられており、第2関数M412,M422~第4関数M414,M424にはそれぞれ1つのノードが設けられている。なお、第1関数M411,M421…~第4関数M414,M424…に設けられたノード1~ノード4の各ノードは小計部M415,M425…に接続されている。
【0042】
予測工程において、全結合層M2からの出力値はそれぞれのsigmoid関数部M41,M42…に入力され、入力された出力値は第1関数~第4関数のそれぞれに入力される。それぞれのsigmoid関数(第1関数~第4関数)は、入力された全結合層M2からの出力値を入力(引数)とし、所定の関数を用いて出力値を算出し、算出した出力値をノード1~ノード4の各ノードを介して小計部に入力する。小計部は、第1関数~第4関数においてノード1~ノード4から出力された出力値が閾値(例えば0.5)よりも大きいか否かを判定し、閾値よりも大きい出力値の個数を計数し、計数した個数(有効数)に相当するレベルを出力ノードから出力する。なお、計数した個数に相当するレベルは、それぞれの蛋白質成分の含有量を表すレベル(含有量レベル)に対応する。具体的には、小計部が出力する含有量レベルは、有効数が0の場合は「減少」に対応するレベルであり、有効数が1の場合は「やや減少」に対応するレベルであり、有効数が2の場合は「正常」に対応するレベルであり、有効数が3の場合は「やや増加」に対応するレベルであり、有効数が4の場合は「増加」に対応するレベルである。また、検査結果の判定に用いる閾値(ここでは0.5)は予め設定されて、例えば記憶部12に記憶されている。
【0043】
ここで、例えばIgG用sigmoid関数部M41において、第1関数M411~第4関数414に設けられた5つのノードは、IgGについて、入力画像中の検査基準に対する検査対象の検査結果を出力するノードである。具体的には、ノード0は、検査対象(患者の検体による検査結果)が検査基準(健常者の検体による検査結果)と比較して「減少している」と判別すべき確率を出力する。なお、「減少している」と判別すべき場合とは、検査対象であるIgGの含有量が「少量すら無い」場合を示しており、ノード0からの出力値は、「少量すら無い」と判別すべき確率となる。またノード1は、検査対象が検査基準と比較して「やや減少している」、「正常量である」、「やや増加している」又は「増加している」のいずれかに判別すべき確率を出力する。「やや減少している」、「正常量である」、「やや増加している」又は「増加している」のいずれかに判別すべき場合とは、IgGの含有量が少なくとも少量はある(少量以上ある)場合を示しており、ノード1からの出力値は、「少量はある」と判別すべき確率となる。またノード2は、検査対象が検査基準と同程度以上であり、「正常量である」、「やや増加している」又は「増加している」のいずれかに判別すべき確率を出力する。「正常量である」、「やや増加している」又は「増加している」のいずれかに判別すべき場合とは、IgGの含有量が少なくとも正常量はある(正常量以上ある)場合を示しており、ノード2からの出力値は、「正常量はある」と判別すべき確率となる。またノード3は、検査対象が検査基準と比較して「やや増加している」又は「増加している」のいずれかに判別すべき確率を出力する。「やや増加している」又は「増加している」のいずれかに判別すべき場合とは、IgGの含有量が多くある場合を示しており、ノード3からの出力値は、「多くはある」と判別すべき確率となる。更にノード4は、検査対象が検査基準と比較して「増加している」と判別すべき確率を出力する。「増加している」と判別すべき場合とは、IgGの含有量が多量にある場合を示しており、ノード4からの出力値は、「多量にある」と判別すべき確率となる。即ち、ノード1~ノード4の各ノードは、各ノードに割り当てられた検査結果と、この検査結果よりも大きいレベル(多い含有量)の検査結果とを含む判別確率を出力する。なお、第1関数M411に接続された2つのノード0,1のそれぞれは0~1.0の出力値を出力し、2つのノードから出力される出力値(判別確率)の合計が1.0となる。第2関数M412~第4関数M414にそれぞれ接続されたノード2~4は0~1.0の出力値を出力する。
【0044】
図10に示す出力例では、IgG用sigmoid関数部M41においてIgGレベルとして、「少量はある」に対応するノード1から0.95の出力値が出力され、「正常量はある」に対応するノード2から0.86の出力値が出力され、「多くはある」に対応するノード3から0.01の出力値が出力されている。よって、IgG用sigmoid関数部M41において小計部M415は、所定の閾値を0.5とした場合、ノード1~ノード4を介して入力された第1関数~第4関数からの出力値のうちで、閾値よりも大きい出力値の個数を2と計数し、計数した有効数2を含有量レベルとして出力ノードから出力する。なお、有効数2の含有量レベルは、検査対象のIgGが検査基準に対して「正常量」と判断すべき量であることを示す。
【0045】
同様に、IgA用sigmoid関数部M42において、第1関数M421~第4関数424に設けられた5つのノードは、IgAについて、入力画像中の検査基準に対する検査対象の検査結果を出力するノードである。
図10に示す出力例では、IgA用sigmoid関数部M42においてIgAレベルとして、「少量はある」に対応するノード1から0.98の出力値が出力され、「正常量はある」に対応するノード2から0.45の出力値が出力され、「多くはある」に対応するノード3から0.52の出力値が出力され、「多量にある」に対応するノード4から0.05の出力値が出力されている。この場合、IgA用sigmoid関数部M42において小計部M425は、ノード1~ノード4を介して入力された第1関数~第4関数からの出力値のうちで、閾値(例えば0.5)よりも大きい出力値の個数を2と計数し、計数した有効数2を含有量レベルとして出力ノードから出力する。なお、有効数2の含有量レベルは、検査対象のIgAが検査基準に対して「正常量」と判断すべき量であることを示す。
図10に示すように出力層M4にsigmoid関数を用いた構成では、各sigmoid関数部において、学習が良好に行われて予測が容易である検査対象であれば、第1~第4関数からの出力値はノード1、ノード2、ノード3、ノード4の順に小さい値となる(
図10のIgG用sigmoid関数部M41の出力例)。一方、予測が容易でない検査対象の場合、第1~第4関数からの出力値がノード1、ノード2、ノード3、ノード4の順に小さい値とならない場合がある(
図10のIgA用sigmoid関数部M42の出力例)。
図10に示すようにsigmoid関数を用いた構成では、小計部にて有効数(出力値が閾値以上であるノードの数)を計数し、有効数に応じた含有量レベルを予測結果とするので、4つの関数からの出力値を考慮した予測結果となる。従って、第1~第4関数からの出力値がノード1、ノード2、ノード3、ノード4の順に小さい値とならない場合、即ち、予測が難しい検査対象であっても、予測結果が正解の検査結果から大幅に誤った値となることが抑制される。
図10中のIgA用sigmoid関数部M42の出力例では、第2関数M422が誤った予測を行った可能性が考えられるが、IgA用sigmoid関数部M42は第1~第4関数M421~M424からの出力値を考慮した有効数に応じた予測結果を特定するので、正解との誤差が小さい予測結果を出力することができる。よって、本実施形態では、第1~第4関数のいずれかが誤った予測を行った場合であっても、sigmoid関数部からの出力値(予測結果)が大幅に誤った結果とならないように構成されている。
【0046】
このような検査モデルMは、健常者の検体による検査結果(検査基準)及び患者の検体による検査結果(検査対象)を含む撮影画像と、12種類の検査項目毎の検査結果を示す情報とを含む訓練データを用いて学習する。なお、検査結果は、撮影画像から特定された、12種類の検査項目毎の検査基準に対する検査対象の検査結果に加えて、同一の患者の検体を用いて免疫電気泳動法とは異なる検査手段(例えば血清蛋白分画検査法、免疫固定電気泳動法、血清免疫グロブリン遊離軽鎖検査法等)によって得られた検査結果を含んでもよい。学習工程において、それぞれのsigmoid関数部M41,M42…は、小計部M415,M425…を用いずに第1関数M411,M421~第4関数M414,M424を学習させる。従って、学習処理を行う際に、制御部11は、12種類の検査項目毎に、健常者の基準値と比較した検査結果のレベル(減少、やや減少、正常、やや増加、増加のいずれかの含有量レベル)に基づいて、第1関数~第4関数に設けられた各ノード(各関数からの出力ノード)に対応する正解ラベル(出力値として期待する値)を割り当てる。具体的には、制御部11は、例えば検査結果のレベルが正常である場合、ノード0,3,4に対応する正解ラベルに0を割り当て、ノード1,2に対応する正解ラベルに1を割り当てる。よって、制御部11は、健常者の検体による検査結果及び患者の検体による検査結果を含む撮影画像と、12種類の検査項目毎に、第1関数~第4関数からの各出力ノードに割り当てられた正解ラベルとを含む訓練データを生成する。そして、検査モデルMは、訓練データに含まれる撮影画像が入力された場合に、各検査項目について、第1関数~第4関数の出力ノードからの出力値が、各出力ノードに割り当てられた正解ラベル(0又は1、出力値として期待する値)に近づくように特徴量抽出部M1、全結合層M2及び出力層M4(sigmoid関数部M41,M42…)を学習させる。学習処理は、
図3に示す実施形態1の検査モデルMにおける学習処理と同様の処理によって実現できるので省略する。これにより、撮影画像が入力された場合に、撮影画像中の検査基準を基準とした検査対象における各検査項目の検査結果として、第1関数~第4関数の各出力ノードから、各出力ノードに対応付けられた検査結果のレベルと、該レベルよりも大きいレベル(大きい含有量の検査結果)とに属する判別確率を出力するように学習された学習済みの検査モデルMが得られる。
【0047】
上述した構成の検査モデルMを用いる場合であっても、実施形態1と同様に、
図4に示す判定処理及び
図6に示す訂正処理の実行が可能であり、同様の処理を実行した場合には同様の効果が得られる。なお、
図4に示す処理では、本実施形態の検査装置10の制御部11は、ステップS15で、1つの検査項目に対応するsigmoid関数部M41,M42…に接続されている出力ノードから出力された出力値(含有量レベル)を、この検査項目に対する検査結果に特定する。なお、
図10に示した出力例では、IgG用sigmoid関数部M41の小計部M415は、第1関数M411~第4関数M414から出力された、IgGの検査項目に対する検査結果(検査結果に対する判別確率)のうちで、所定閾値(例えば0.5)以上である検査結果の個数(有効数)を「少量はある」及び「正常量はある」の2つと計数し、計数した有効数2を含有量レベルとして出力ノードから出力する。これにより、有効数2の含有量レベルに相当する「正常量」の検査結果が、検査対象のIgGに対する検査結果に特定される。
【0048】
このように本実施形態の検査モデルMを用いた場合であっても、健常者の検体による電気泳動結果と、患者の検体による電気泳動結果とを撮影した撮影画像に基づいて、健常者の検体による電気泳動結果を基準として、患者の検体による電気泳動結果に対する各検査項目の検査結果を特定できる。また、
図6に示す処理を実行することにより、撮影画像に基づいて判定された患者の検体に対する検査結果に誤りがある場合には訂正することができる。
【0049】
図11は、検査モデルMによる予測ミスの結果を示す模式図である。
図11には、実施形態1の検査モデルMを用いて各検査項目に対する検査結果を判定(予測)した場合と、実施形態2の検査モデルMを用いて各検査項目に対する検査結果を判定(予測)した場合とにおいて、正解の検査結果との差異(予測ミス)の割合を示す。
図11Aは実施形態1の検査モデルMを用いた場合の予測ミスを示し、
図11Bは実施形態2の検査モデルMを用いた場合の予測ミスを示す。
図11において、完全一致は、検査モデルMを用いて特定した検査結果が正解の検査結果に一致した場合を示し、みなし正解は、検査モデルMを用いて特定した検査結果と正解の検査結果との差異(誤差)が、検査結果の判定段階(無い、少量はある、正常量はある、多くはある、多量にあるの各段階)において1段階以下である場合を示す。また、予測ミスは、検査モデルMを用いて特定した検査結果と正解の検査結果との差異(誤差)が2段階以上である場合を示し、大幅な予測ミスは、検査モデルMを用いて特定した検査結果と正解の検査結果との差異(誤差)が3段階以上である場合を示す。
【0050】
図11A,Bに示す予測ミスの結果から、
図3に示す検査モデルMを用いた実施形態1の検査装置10では、完全一致の割合が94%程度であり、みなし正解の割合が99.93%である。また、
図10に示す検査モデルMを用いた実施形態2の検査装置10では、完全一致の割合が96%程度であり、みなし正解の割合が99.98%である。これらの結果は熟練の検査担当者と同等レベルであり、正解率が高いと言える。また、医療現場では大幅な予測ミスの発生を回避することが重要であり、上述した予測ミスの結果から、実施形態1,2の検査装置10を用いた場合、大幅な予測ミスの発生は抑制できていることが分かる。実施形態1の検査装置10においても予測ミス及び大幅な予測ミスの発生は十分に抑制されているが、実施形態2の検査装置10では更に抑制されている。出力層M4にsigmoid関数を用いた実施形態2の検査装置10では、4つのsigmoid関数からの出力値を考慮して予測結果を特定するので、予測が難しい検査対象であっても大幅な予測ミスの発生を抑制することができる。よって、このような検査装置10を用いて、検体を撮影した撮影画像から検査結果の予測(判定)を行うことにより、検査担当者は検査結果を特定する際に、検査装置10による予測結果を参照でき、検査担当者の業務負担を軽減することができる。
【0051】
図10に示す本実施形態の検査モデルMは、出力層M4の各sigmoid関数部M41,M42…において、第1関数~第4関数が、ノード0から検査対象物が「少量すら無い」と判別すべき確率を出力し、ノード1から「少量はある」と判別すべき確率を出力し、ノード2から「正常量はある」と判別すべき確率を出力し、ノード3から「多くはある」と判別すべき確率を出力し、ノード4から「多量にある」と判別すべき確率を出力するように構成されている。検査モデルMの構成はこのような構成に限定されない。例えば、出力層M4の各sigmoid関数部M41,M42…の第1関数~第4関数が、ノード0から検査対象物が「多量にある」と判別すべき確率を出力し、ノード1から「多量にはない」と判別すべき確率を出力し、ノード2から「多くはない」と判別すべき確率を出力し、ノード3から「正常量はない」と判別すべき確率を出力し、ノード4から「少量すら無い」と判別すべき確率を出力するように構成されていてもよい。
【0052】
(実施形態3)
実施形態1,2の検査装置10で使用される検査モデルMの生成処理について説明する。なお、検査モデルMの学習は例えば所定の学習装置で行われ、学習装置で学習が行われて生成された学習済みの検査モデルMは、ネットワーク経由又は可搬型記憶媒体1a経由で学習装置から検査装置10にダウンロードされて記憶部12に記憶される。
図12は、学習装置の構成例を示すブロック図である。学習装置50は、パーソナルコンピュータ、サーバコンピュータ等で構成されており、制御部51、記憶部52、通信部53、入力部54、表示部55、読み取り部56等を含み、これらの各部はバスを介して相互に接続されている。学習装置50の各部51~56は、実施形態1の検査装置10の各部11~15,17と同様であるので詳細な説明は省略する。なお、学習装置50の記憶部52は、制御プログラム52P及び検査モデルMのほかに、検査モデルMの学習に訓練データとして用いる検査結果データが記憶してある検査結果DB52aを記憶する。検査結果DB52aには、例えば
図1Bに示すような健常者の検体による検査結果(検査基準)と患者の検体による検査結果(検査対象)とを含む撮影画像と、12種類の検査項目のそれぞれについての検査結果(減少、やや減少、正常、やや増加、増加の5パターンのうちのいずれか)とが対応付けられた検査結果データが記憶してある。
図3に示す実施形態1の検査モデルMは、検査結果DB52aに記憶してある検査結果データを訓練データとして用いて学習する。なお、訓練データに用いる検査結果データの撮影画像には、
図5Aに示すような患者の検体画像、
図5Bに示すような健常者の検体画像と患者の検体画像との結合画像、又は、
図5Cに示すような結合画像の縮小画像を用いることができる。
【0053】
図13は、実施形態1の検査モデルMの生成処理手順の一例を示すフローチャートである。学習装置50の制御部51は、検査結果DB52aから検査結果データを1つ取得する(S31)。検査結果データには撮影画像と、12種類の検査項目毎の検査結果(正解ラベル)とが含まれる。制御部51は、読み出した検査結果データを用いて検査モデルMの学習処理を行う(S32)。ここでは、制御部51は、検査結果データに含まれる撮影画像を検査モデルMに入力した場合に、出力層M3において、検査項目毎に、5つの出力ノードにおいて、検査結果データの正解ラベルに対応する出力ノードからの出力値が1.0に近づき、他の出力ノードからの出力値が0に近づくように、特徴量抽出部M1、全結合層M2及び出力層M3(softmax関数M31,M32…)を学習させる。
【0054】
制御部51は、学習処理後の検査モデルMに対して精度を評価するための精度評価処理を行う(S33)。例えば制御部51は、精度評価の指標として、検査モデルMの出力層M3の出力値と正解ラベルとの誤差に相当する損失関数(例えばクロスエントロピー)の値、或いは、精度評価に関する一般的な指標(例えば正解率、感度、特異度、陽性的中率、陰性的中率、F1値、ROC(Receiver Operating Characteristic)曲線のAUC(Area Under Curve)、Precision-Recall曲線のAUC(PR-AUC)、及びこれらのマクロ平均又はマイクロ平均等)を算出する。そして制御部51は、算出した指標の値に基づいて、ステップS32で実行した学習処理(学習処理に用いた訓練データ)を採用するか否かを判断する(S34)。例えば制御部51は、算出した指標の値を表示部55に表示することにより、学習処理を実行しているユーザ(学習処理の専門家)に通知する。ユーザは、指標の算出値に基づいて、ステップS32で実行した学習処理が適切であったか否かを判断し、適切であったか否かに応じて採用又は不採用の判断を行う。そして制御部51は、ユーザが判断した採用又は不採用の判断結果を入力部54を介して受け付け、受け付けたユーザの判断結果に応じて、採用するか否かを判断する。また、精度評価処理において算出される指標に対する採用基準を予め設定して記憶部52に記憶しておき、制御部51は、算出した指標の算出値が採用基準を満たしているか否かを判断し、満たしているか否かに応じて採用するか否かを判断してもよい。
【0055】
制御部51は、ステップS32で実行した学習処理を採用すると判断した場合(S34:YES)、検査モデルMを、ステップS32で実行した学習処理後の検査モデルMに更新する(S35)。ステップS32で実行した学習処理を採用しないと判断した場合(S34:NO)、制御部51は、ステップS35の処理をスキップする。ここでは制御部51は、ステップS32で実行した学習処理後の検査モデルMを破棄し、学習処理前の検査モデルMについて、ステップS36以降の処理を行う。
【0056】
制御部51は、検査結果DB52aに記憶してある検査結果データにおいて、未処理の検査結果データがあるか否かを判断し(S36)、未処理の検査結果データがあると判断した場合(S36:YES)、ステップS31の処理に戻る。そして、制御部51は、未処理の検査結果データを検査結果DB52aから読み出し、読み出した検査結果データを用いた学習処理を繰り返す。未処理の検査結果データがないと判断した場合(S36:NO)、制御部51は学習処理を終了する。これにより、撮影画像が入力された場合に、各検査項目の検査結果として、5パターンのそれぞれに対する判別確率を出力するように学習された検査モデルMが生成される。なお、既に学習済みの検査モデルMについても、上述した処理を行うことによって再学習させることができる。この場合、学習済みの撮影画像とは画像特徴量が大幅に異なる画像等が適切な正解ラベルと共に入力されれば、判別精度がより高い検査モデルMを生成できる。
【0057】
図14は、実施形態2の検査モデルMの生成処理手順の一例を示すフローチャートである。
図10に示す実施形態2の検査モデルMは、検査結果DB52aに記憶してある検査結果データから生成された訓練データを用いて学習する。実施形態2の検査モデルMを生成する場合、学習装置50の制御部51は、検査結果DB52aから検査結果データを1つ取得する(S41)。検査結果データには撮影画像と、12種類の検査項目毎の検査結果とが含まれる。制御部51は、読み出した検査結果データから、検査モデルMを学習させるための訓練データを生成する(S42)。具体的には、制御部51は、検査モデルMを学習させる際に各sigmoid関数部M41,M42…における第1関数~第4関数の各出力ノードからの出力値を特定する。例えば制御部51は、検査項目毎に、検査結果が「少量すら無い」である場合、ノード0からの出力値を1.0、ノード1~4からの出力値を0とする訓練データを生成する。また制御部51は、検査結果が「少量はある」である場合、ノード1からの出力値を1.0、ノード0,2~4からの出力値を0とする訓練データを生成し、検査結果が「正常量はある」である場合、ノード1,2からの出力値を1.0、ノード0,3~4からの出力値を0とする訓練データを生成する。更に制御部51は、検査結果が「多くはある」である場合、ノード1~3からの出力値を1.0、ノード0,4からの出力値を0とする訓練データを生成し、検査結果が「多量にある」である場合、ノード1~4からの出力値を1.0、ノード0からの出力値を0とする訓練データを生成する。このように制御部51は、検査項目毎に検査結果データが示す検査結果(やや減少、正常、やや増加、増加のいずれか)に応じて、学習処理において各sigmoid関数部M41,M42…の第1関数~第4関数の各出力ノードに対して、出力すべき値(1又は0の正解ラベル)を割り当てた正解ラベルを含む訓練データを生成する。
【0058】
制御部51は、上述したように生成した訓練データを用いて検査モデルMの学習処理を行う(S43)。なお、
図10に示す検査モデルMでは、出力層M4(各sigmoid関数部M41,M42…)の学習工程において、小計部M415,M425…を用いずに第1関数M411,M421…~第4関数M414,M424…を学習させる。即ち、制御部51は、検査結果データに含まれる撮影画像を検査モデルMに入力した場合に、出力層M4の各sigmoid関数部M41,M42…の第1関数~第4関数の5つの出力ノードにおいて、訓練データで出力値を1に設定された出力ノードからの出力値が1.0に近づき、他の出力ノード(訓練データで出力値を0に設定された出力ノード)からの出力値が0に近づくように、特徴量抽出部M1、全結合層M2及び第1関数M411,M421…~第4関数M414,M424…を学習させる。例えば、検査結果が「正常」の検査項目では、ノード1~2からの出力値を1.0、ノード0,3~4からの出力値を0とする訓練データが生成されているので、ノード1~2からの出力値が1.0に近づき、ノード0,3~4からの出力値が0に近づくように学習させる。
【0059】
制御部51は、学習処理後の検査モデルMに対して精度を評価するための精度評価処理を行う(S44)。ここでは、制御部51は、
図13中のステップS33と同様の処理を行う。このとき制御部51は、各sigmoid関数部M41,M42…の小計部M415,M425…を用いずに、各sigmoid関数部M41,M42…の第1関数M411,M421…~第4関数M414,M424…からの出力値に基づいて、各出力値と正解ラベルとの誤差に相当する損失関数(ここでは二値クロスエントロピー)の値、或いは、精度評価に関する一般的な指標(例えば正解率、感度、特異度、陽性的中率、陰性的中率、F1値、ROC曲線のAUC、Precision-Recall曲線のAUC、及びこれらのマクロ平均又はマイクロ平均等)を算出する。なお、制御部51は、各sigmoid関数部M41,M42…の小計部M415,M425…からの出力値である含有量レベルと正解ラベルとの誤差に相当する損失関数(二値クロスエントロピー)の値、或いは、精度評価に関する一般的な指標(例えば正解率、感度、特異度、陽性的中率、陰性的中率、F1値、ROC曲線のAUC、Precision-Recall曲線のAUC、及びこれらのマクロ平均又はマイクロ平均等)を算出してもよい。そして制御部51は、指標の算出値に基づいて、ステップS43で実行した学習処理(学習処理に用いた訓練データ)を採用するか否かを判断し(S45)、採用すると判断した場合(S45:YES)、検査モデルMを、ステップS43で実行した学習処理後の検査モデルMに更新する(S46)。ステップS43で実行した学習処理を採用しないと判断した場合(S45:NO)、制御部51は、ステップS46の処理をスキップし、学習処理後の検査モデルMを破棄する。
【0060】
制御部51は、検査結果DB52aに記憶してある検査結果データにおいて、未処理の検査結果データがあるか否かを判断し(S47)、未処理の検査結果データがあると判断した場合(S47:YES)、ステップS41の処理に戻る。そして、制御部51は、未処理の検査結果データを検査結果DB52aから読み出し、読み出した検査結果データに基づいて訓練データを生成し、生成した訓練データを用いた学習処理を繰り返す。未処理の検査結果データがないと判断した場合(S47:NO)、制御部51は学習処理を終了する。これにより、
図10に示すように、撮影画像が入力された場合に、各検査項目の検査結果として、5パターンのいずれかを示す含有量レベルを出力するように学習された検査モデルMが生成される。なお、ここでの検査モデルMでは、検査項目毎のsigmoid関数部M41,M42…において、第1関数M411,M421…~第4関数M414,M424…の各出力ノードから出力される判別確率は、各出力ノードに割り当てられている検査結果と、この検査結果よりも高いレベルの検査結果とを含む確率を示す。実施形態2の検査モデルMにおいても、既に学習済みの検査モデルMに上述した処理を行うことによって再学習させることができる。この場合、学習済みの撮影画像とは画像特徴量が大幅に異なる画像等が適切な正解ラベルと共に入力されれば、判別精度がより高い検査モデルMを生成できる。
【0061】
(実施形態4)
検査端末を用いて検査キットを撮影し、検査端末から撮影画像を取得したサーバ(情報処理装置)が、撮影画像に基づいて各検査項目に対する検査結果を判定する検査システムについて説明する。
図15は検査システムの構成例を示す模式図である。本実施形態の検査システムは、複数の検査端末20と、検査端末20から検査キットの撮影画像を取得し、撮影画像に基づいて複数の検査項目に対する検査結果を判定して検査端末20に通知するサーバ30とを含む。サーバ30及び検査端末20のそれぞれは、インターネット等のネットワークNに接続可能に構成されており、ネットワークN経由で情報の送受信を行う。
【0062】
サーバ30は、本実施形態の検査システムを運営する業者等が管理する情報処理装置であり、サーバコンピュータ又はパーソナルコンピュータ等で構成される。サーバ30は、複数台設けられてもよいし、1台のサーバ内に設けられた複数の仮想マシンによって実現されてもよいし、クラウドサーバを用いて実現されてもよい。検査端末20は、医療機関、医療機関から検体を収集した検査業者の拠点等に設けられた情報処理装置であり、タブレット端末、スマートフォン、パーソナルコンピュータ等で構成される。本実施形態では、検査端末20は、ユーザによる操作に従って、免疫電気泳動法を用いた検査キットを撮影する処理、得られた撮影画像をサーバ30へ送信する処理等、種々の情報処理を行う。またサーバ30は、検査端末20から受信した撮影画像に基づいて、撮影画像中の検査キットが示す各検査項目の検査結果を判定する処理、判定結果を検査端末20へ送信する処理等、種々の情報処理を行う。
【0063】
図16は検査システムの構成例を示すブロック図である。検査端末20は、制御部21、記憶部22、通信部23、入力部24、表示部25、カメラ26等を含み、これらの各部はバスを介して相互に接続されている。検査端末20の各部21~26は、実施形態1の検査装置10の各部11~16と同様であるので詳細な説明は省略する。なお、検査端末20の記憶部22は検査モデルMを記憶していなくてもよい。サーバ30は、制御部31、記憶部32、通信部33等を含み、これらの各部はバスを介して相互に接続されている。サーバ30の各部31~33は、実施形態1の検査装置10の各部11~13と同様であるので詳細な説明は省略する。なお、サーバ30は、上記の構成に加え、ユーザによる操作入力を受け付ける入力部、制御部31からの指示に従って各種の情報を表示する表示部等を備えていてもよい。
【0064】
図17は、実施形態4のサーバ30による判定処理手順の一例を示すフローチャート、
図18は検査端末20の画面例を示す模式図である。
図17では左側に検査端末20が行う処理を、右側にサーバ30が行う処理をそれぞれ示す。本実施形態では、医療機関又は医療機関から検体を収集した検査業者の拠点等において、検査者が、電気泳動を行い、その結果を撮影した撮影画像をサーバ30へ送信し、サーバ30が撮影画像に基づいて各検査項目に対する検査結果を判定する。具体的には、検査者は、患者から採取した検体と、健常者から採取した検体とを用意し、2つの検査キットのそれぞれの滴下領域Rに滴下する。そして検査者は、2つの検査キットに対して同時に電圧を印加し、所定時間の電圧印加後、検体内の蛋白質成分と抗ヒト全血清とを自由拡散させると共に免疫沈降反応させて、未反応の蛋白質成分を除去してから染色液を用いて染色し、乾燥させた後に撮影を行う。
【0065】
検査端末20の制御部21は、入力部24を介したユーザからの操作に従って撮影を行い(S51)、
図5Aに示すような健常者の検体による電気泳動結果の撮影画像と、患者の検体による電気泳動結果の撮影画像とを取得する。なお、健常者の検体による電気泳動結果と、患者の検体による電気泳動結果とは、各別に撮影して2つの撮影画像として取得するが、並べて撮影して1つの撮影画像として取得してもよい。制御部21は、取得した撮影画像を表示部25に表示し(S52)、検査者に撮影結果を通知する。
図18は撮影画像の画面例を示しており、健常者の検体による電気泳動結果の撮影画像(検査基準)と、患者の検体による電気泳動結果の撮影画像(検査対象)とが並べて表示されている。また、
図18に示す画面には、検査結果の判定に表示中の撮影画像を用いることを指示するためのOKボタンと、撮影のやり直しを指示するための撮り直しボタンとが設けられている。
【0066】
制御部21は、入力部24を介して撮り直しボタンが操作されることによって撮影画像の撮り直しが指示されたか否かを判断しており(S53)、撮り直しが指示されたと判断した場合(S53:YES)、ステップS51の処理に戻り、入力部24を介したユーザからの操作に従って再度撮影を行う。撮り直しが指示されていないと判断した場合(S53:NO)、即ち、入力部24を介してOKボタンが操作された場合、制御部21は、取得した撮影画像に対して前処理を実行する(S54)。ここでは制御部21は、
図4中のステップS12と同様の処理を行う。即ち、制御部21はまず、健常者の検体による電気泳動結果の撮影画像と、患者の検体による電気泳動結果の撮影画像とのそれぞれから、沈降線の撮影領域を抽出する。次に制御部11は、それぞれ抽出した領域を結合して、
図5Bに示すような結合画像を生成し、結合画像に対して必要に応じて縮小処理を行って縮小画像を生成する。制御部21は、前処理を実行して得られた画像(例えば縮小画像)をネットワークN経由でサーバ30へ送信する(S55)。なお、制御部21は、縮小画像と共に、自身の検査端末20の情報(例えば宛先情報)をサーバ30へ送信する。
【0067】
サーバ30の制御部31(画像取得部)は、検査端末20から電気泳動結果の撮影画像(例えば縮小画像)を受信し、検査モデルMを用いて、撮影画像中の検査基準に対する検査対象の検査結果を判定する処理を実行する(S56)。ここでは、
図4中のステップS13~S16と同様に、制御部31は、撮影画像を検査モデルMに入力し、検査モデルMからの出力情報(各出力ノードからの出力値)に基づいて、撮影画像中の検査対象に対する検査結果を判定する。具体的には、制御部31は、検査モデルMから出力された情報のうちで、1つの検査項目に対応する5つの出力ノードからの出力値(判定確率)を抽出する(S57)。より具体的には、制御部31は、1つの検査項目に対応するsoftmax関数M31,M32…に接続されている5つの出力ノードからの出力値を抽出する。そして制御部31は、5つの出力ノードのうちで出力値が最大値である出力ノードを特定し、特定した出力ノードに対応付けられている検査結果(減少、やや減少、正常、増加、やや増加)を、この検査項目に対する検査結果に特定する(S58)。制御部31は、全ての検査項目に対する判定処理を終了していないと判断した場合(S59:NO)、ステップS57の処理に戻り、未処理の検査項目についてステップS57~S58の処理を行う。
【0068】
制御部31(出力部)は、全ての検査項目に対する判定処理を終了したと判断した場合(S59:YES)、それぞれの検査項目についてステップS58で特定した検査結果を検査端末20へ送信する(S60)。検査端末20の制御部21は、ステップS55でサーバ30へ送信した画像に基づいてサーバ30で判定された検査結果をサーバ30から受信し、受信した検査結果を記憶する(S61)。例えば制御部21は、検査対象である患者の識別情報及び撮影画像に対応付けて、サーバ30から受信した各検査項目に対する検査結果を記憶部22に記憶する。なお、サーバ30は、検査結果に加えて、この検査結果に対する判別確率(検査モデルMからの出力値)を検査端末20へ送信してもよく、この場合、検査端末20は、各検査項目の検査結果に対応付けて、各検査結果に対する判別確率を記憶する。
【0069】
上述した処理により、本実施形態においても、健常者の検体による電気泳動結果を撮影した検査基準画像と、患者の検体による電気泳動結果を撮影した検査対象画像とに基づいて、検査基準画像を基準として、検査対象画像に撮影された電気泳動結果に対する各検査項目の検査結果を特定できる。また本実施形態においても、
図6に示す処理の実行が可能であり、
図6に示す処理を実行することにより、サーバ30で判定されて検査端末20の記憶部22に記憶された各被検者に対する検査結果を表示部25に表示できると共に、サーバ30で判定された検査結果に誤りがある場合には訂正することができる。なお、検査端末20は、サーバ30で判定された検査結果に対する訂正を受け付けた場合に、受け付けた訂正内容とこのときの撮影画像(例えば縮小画像)とをサーバ30へ送信してもよい。この場合、サーバ30は、検査端末20から訂正内容(正解の検査結果)及び撮影画像を取得することにより、検査モデルMを再学習させるための訓練データを収集することができる。また、収集した訓練データを用いて検査モデルMを再学習させた場合には、より高精度な検査モデルMを実現できる。本実施形態の構成は、
図10に示す実施形態2の検査モデルMを用いる検査システムにも適用でき、適用した場合には同様の効果が得られる。
【0070】
(実施形態5)
免疫電気泳動法による検査以外の検査への適用例について説明する。パパニコロウ染色を用いた細胞診の検査結果を、ニューラルネットワーク(学習済みモデル)を用いて判定する検査装置に適用した例について説明する。実施形態5における検査装置は、
図2に示す実施形態1の検査装置10と同様の構成を有するので詳細な説明は省略する。パパニコロウ染色を用いた細胞診は、子宮頸癌、口腔癌、肺扁平上皮癌の進行度を推定する際の検査として行われる。またパパニコロウ染色を用いた細胞診では、スライドガラスに被検者から採取した検体を薄く塗抹し、95%エタノールで固定した後、試薬により染色してスライドガラス標本を作成する。例えばライトグリーン(緑)、オレンジG(橙)、エオジン(ピンク)、ビスマルクブラウン(茶色)、ヘマトキシリン(紺)の5色で染色し、作成したスライドガラス標本を顕微鏡撮影して顕微鏡画像を取得する。ここでの検体は、例えば、子宮膣部、子宮頸部、子宮体部、外陰部、気管支、口腔粘膜、消化管、尿管、尿道、皮膚等から擦過した擦過物、喀痰等が用いられる。
【0071】
パパニコロウ染色では、クロマチンの染色が良好であり、対比染色によって細胞腫毎に染まる色が異なるので、細胞の識別が容易となる。また細胞質が透明感のある染まり方をし、特に角化細胞がオレンジに染色されるので、扁平上皮系の異型細胞の検出に有用である。更に一個の細胞全体を観察できることから、細胞質内顆粒又は封入体の観察が容易となる。このような顕微鏡画像に対して、ニューラルネットワークを用いて検体の状態(病状)を判定することができる。特に、子宮頸癌等の癌の進行過程が解明されている疾患では、検査画像から悪性度の評価が可能である。
【0072】
図19は実施形態5の検査モデルMaの構成例を示すブロック図である。本実施例の検査モデルMaは、
図3に示す検査モデルMと同様の構成で構築されており、入力層、特徴量抽出部Ma1、全結合層Ma2、出力層Ma3を有し、出力層Ma3は4つのsoftmax関数Ma31~Ma34を有する。本実施形態の検査モデルMaでは、パパニコロウ染色によって染め出された検体の顕微鏡画像が入力層を介して入力される。入力層を介して入力された顕微鏡画像は特徴量抽出部Ma1に入力される。特徴量抽出部Ma1は、入力された顕微鏡画像に対して画像の特徴量の抽出処理及び圧縮処理を行って、情報量が削減された特徴マップを生成する。特徴量抽出部Ma1によって生成された特徴マップは全結合層Ma2に入力される。全結合層Ma2は、入力された特徴マップに基づいて、各種の関数や閾値等を用いて各層のノードの出力値を算出し、算出した出力値を順次後の層のノードに入力する。全結合層Ma2は、各層のノードの出力値を順次後の層のノードに入力することにより、最終的に後段の出力層Ma3に出力値を出力する。
【0073】
本実施形態の検査モデルMaでは、第1softmax関数Ma31は、ベセスダシステム(2001)による分類用のsoftmax関数であり、第1softmax関数Ma31に接続された4つの出力ノードは、顕微鏡画像中の検体がベセスダシステムによる分類によってNILM、LSIL、HSIL、SCCのいずれに分類されるかを示す情報(検査結果)を出力する。具体的には、ノード0は、検査対象(顕微鏡画像中の検体)をNILMに分類すべき確率(検査結果に関する値)を出力し、ノード1は、LSILに分類すべき確率を出力し、ノード2は、HSILに分類すべき確率を出力し、ノード3は、SCCに分類すべき確率を出力する。第1softmax関数Ma31に接続された4つの出力ノードは0~1.0の出力値を出力し、4つの出力ノードからの出力値の合計が1.0となる。なお、分類結果であるNILMは正常細胞を示しており、NILM、LSIL、HSIL、SCCはこの順に悪性度が高くなる。
【0074】
第2softmax関数Ma32は、日母分類用のsoftmax関数であり、第2softmax関数Ma32に接続された5つの出力ノードは、顕微鏡画像中の検体が日母分類によってクラスII、クラスIIIa、クラスIIIb、クラスIV、クラスVのいずれに分類されるかを示す情報(検査結果)を出力する。ここでも、第2softmax関数Ma32に接続された5つの出力ノードは0~1.0の出力値を出力し、5つの出力ノードからの出力値の合計が1.0となる。また、分類結果であるクラスII、クラスIIIa、クラスIIIb、クラスIV、クラスVは、この順に悪性度が高くなる。同様に、第3softmax関数Ma33は、異形成分類(病理組織診断)用のsoftmax関数であり、第3softmax関数Ma33に接続された6つの出力ノードは、顕微鏡画像中の検体が異形成分類によって陰性、軽度異形成、中等度異形成、高度異形成、上皮内癌、扁平上皮癌のいずれに分類されるかを示す情報(検査結果)を出力する。また第4softmax関数Ma34は、CIN(Cervical Intraepithelial Neoplasia)分類用のsoftmax関数であり、第4softmax関数Ma34に接続された3つの出力ノードは、顕微鏡画像中の検体がCIN分類によってCIN1、CIN2、CIN3のいずれに分類されるかを示す情報(検査結果)を出力する。
【0075】
上述した構成の検査モデルMaは、パパニコロウ染色によって染め出された検体の顕微鏡画像と、4種類の分類項目(分類方法)のそれぞれについて、顕微鏡画像中の検体に対する分類結果を示す情報(正解ラベル)とを含む訓練データ(検査結果データ)を用いて学習することによって生成できる。本実施形態の検査モデルMaは、
図13に示した実施形態3における生成処理によって生成可能である。具体的には、検査モデルMaは、訓練データに含まれる顕微鏡画像が入力された場合に、各分類項目について、訓練データに含まれる正解ラベルに対応する1つの出力ノードからの出力値が1.0に近づき、他の出力ノードからの出力値が0に近づくように特徴量抽出部Ma1、全結合層Ma2及び出力層Ma3(第1softmax関数Ma31~第4softmax関数Ma34)を学習させる。これにより、顕微鏡画像が入力された場合に、顕微鏡画像中の検体に対して、複数の分類項目毎に分類結果のそれぞれに対する判別確率を出力するように学習された学習済みの検査モデルMaが得られる。
【0076】
上述した構成の検査モデルMaを用いて、顕微鏡画像中の検体の状態を判定する場合にも、上述した実施形態1と同様の処理が可能である。即ち、検査モデルMaを用いることにより、顕微鏡画像に基づいて、顕微鏡画像中の検体に対して、複数の分類項目のそれぞれについて分類結果(検査結果)を自動的に判定できる。具体的には、顕微鏡画像を検査モデルMaに入力することにより、検査モデルMaから分類項目毎に出力された各出力ノードからの出力値に基づいて、各分類項目についての分類結果を特定できる。よって、パパニコロウ染色を用いた細胞診検査において、医療従事者等の検査者が目視で、複数の分類項目について分類結果を判定し、判定した分類結果に基づいて、病状等の検査結果を判定する際に支援することができ、検査者の作業負担を軽減できる。また本実施形態においても、検査装置10によって判定(分類)された分類結果が誤っている場合、分類結果を表示部15に表示して検査者に通知し、入力部14を介して検査者から訂正指示を受け付けることにより、訂正することができる。また、検査装置10によって判定された分類結果が誤っていた場合に、例えば検査者によって入力された正解の分類結果と顕微鏡画像とを用いて検査モデルMaを再学習させることができる。この場合、学習済みの撮影画像とは画像特徴量が大幅に異なる画像等が適切な正解ラベルと共に入力されれば、より精度の高い検査モデルMaを生成できる。
【0077】
本実施形態の検査装置10においても、実施形態2のようにsigmoid関数を用いた検査モデルを用いてもよく、同様の効果が得られる。
図20は、実施形態5の検査モデルMaの他の構成例を示すブロック図である。
図20に示す検査モデルMaは、
図19に示す検査モデルMaにおいて、softmax関数Ma31,Ma32…を用いた出力層Ma3の代わりに、sigmoid関数部Ma41,Ma42…を用いた出力層Ma4を有する。それ以外の検査装置10の構成については、上述した実施形態5と同様であるので詳細な説明を省略する。
【0078】
図20に示す検査モデルMaでは、出力層Ma4は、4つのsigmoid関数部(第1sigmoid関数部Ma41,第2sigmoid関数部Ma42,第3sigmoid関数部Ma43,第4sigmoid関数部Ma44)を有している。第1sigmoid関数部Ma41は、ベセスダシステム(2001)による分類用のsigmoid関数であり、3つのsigmoid関数(第1関数~第3関数)及び小計部を有する。第1sigmoid関数部Ma41の第1関数~第3関数はそれぞれ、入力された全結合層M2からの出力値に対して、所定の関数を用いて出力値を算出し、算出した出力値を出力する。第1sigmoid関数部Ma41の第1関数には2つの出力ノードが、第2関数~第3関数には1つの出力ノードがそれぞれ接続されており、ノード1~3の各出力ノードは小計部に接続されている。第1sigmoid関数部Ma41の第1関数~第3関数に接続された4つの出力ノードは、顕微鏡画像中の検体がベセスダシステムによる分類によってNILM、LSIL、HSIL、SCCに分類される結果(検査結果)を出力する。なお、分類結果であるNILMは正常細胞を示しており、NILM、LSIL、HSIL、SCCの順に悪性度が高くなる。
図20に示す検査モデルMaでは、第1sigmoid関数部Ma41において、ノード0は、検査対象(顕微鏡画像中の検体)をNILMに分類すべき確率(検査結果に関する値)を出力する。ノード1は、LSIL、HSIL又はSCCに分類すべき確率を出力する。即ち、ノード1からの出力確率は、少なくともLSILに分類すべき確率を示す。またノード2は、HSIL又はSCCに分類すべき確率を出力し、ノード2からの出力確率は、少なくともHSILに分類すべき確率を示す。またノード3は、SCCに分類すべき確率を出力する。即ち、第1sigmoid関数部Ma41において、ノード1~ノード3の各ノードは、各ノードに割り当てられた分類結果と、この分類結果よりも大きいレベル(悪性度が高い)の分類結果とを含む判別確率を出力する。なお、第1sigmoid関数部Ma41において、第1関数に接続された2つの出力ノード(ノード0,1)のそれぞれは0~1.0の出力値を出力し、2つの出力ノードから出力される出力値の合計が1.0となる。また第2関数~第3関数にそれぞれ接続された出力ノードは0~1.0の出力値を出力する。
【0079】
第1sigmoid関数部Ma41において、小計部は、第1関数~第3関数のノード1~ノード3において出力値が閾値(例えば0.5)よりも大きいノードの個数を計数し、計数した個数(有効数)に相当するレベルを出力ノードから出力する。ここでの有効数に相当するレベルは、ベセスダシステムによる分類による分類結果を表すレベル(分類レベル)である。具体的には、有効数が0の場合は「NILM」に対応するレベルであり、有効数が1の場合は「LSIL」に対応するレベルであり、有効数が2の場合は「HSIL」に対応するレベルであり、有効数が3の場合は「SCC」に対応するレベルである。
【0080】
第2sigmoid関数部Ma42は、日母分類用のsigmoid関数であり、4つのsigmoid関数(第1関数~第4関数)及び小計部を有する。第2sigmoid関数部Ma42の第1関数~第4関数はそれぞれ、入力された全結合層M2からの出力値に対して、所定の関数を用いて出力値を算出し、算出した出力値を出力する。第2sigmoid関数部Ma42の第1関数には2つの出力ノードが、第2関数~第4関数には1つの出力ノードがそれぞれ接続されており、ノード1~4の各出力ノードは小計部に接続されている。第2sigmoid関数部Ma42の第1関数~第4関数に接続された5つの出力ノードは、顕微鏡画像中の検体が日母分類によってクラスII、クラスIIIa、クラスIIIb、クラスIV、クラスVに分類される結果(検査結果)を出力する。なお、日母分類による分類結果であるクラスIIは正常細胞を示しており、クラスII、クラスIIIa、クラスIIIb、クラスIV、クラスVの順に悪性度が高くなる。第2sigmoid関数部Ma42では、ノード0は、検査対象(顕微鏡画像中の検体)をクラスIIに分類すべき確率を出力する。ノード1は、クラスIIIa、IIIb,クラスIV又はクラスVに分類すべき確率を出力する。即ち、ノード1からの出力確率は、少なくともクラスIIIaに分類すべき確率を示す。またノード2はクラスIIIb,クラスIV又はクラスVに分類すべき確率を出力し、ノード2からの出力確率は、少なくともクラスIIIbに分類すべき確率を示す。またノード3はクラスIV又はクラスVに分類すべき確率を出力し、ノード3からの出力確率は、少なくともクラスIVに分類すべき確率を示す。またノード4はクラスVに分類すべき確率を出力する。即ち、第2sigmoid関数部Ma42においても、ノード1~ノード4の各ノードは、各ノードに割り当てられた分類結果と、この分類結果よりも大きいレベル(悪性度が高い)の分類結果とを含む判別確率を出力する。なお、第2sigmoid関数部Ma42においても、第1関数に接続された2つの出力ノード(ノード0,1)のそれぞれは0~1.0の出力値を出力し、2つの出力ノードから出力される出力値の合計が1.0となり、第2関数~第4関数にそれぞれ接続された出力ノードは0~1.0の出力値を出力する。第2sigmoid関数部Ma42において、小計部は、第1関数~第4関数のノード1~ノード4において出力値が閾値(例えば0.5)よりも大きいノードの個数を計数し、計数した個数(有効数)に相当するレベルを出力ノードから出力する。ここでの有効数に相当するレベルは、日母分類による分類結果を表すレベル(分類レベル)である。具体的には、有効数が0の場合は「クラスII」に対応するレベルであり、有効数が1の場合は「クラスIIIa」に対応するレベルであり、有効数が2の場合は「クラスIIIb」に対応するレベルであり、有効数が3の場合は「クラスIV」に対応するレベルであり、有効数が4の場合は「クラスV」に対応するレベルである。
【0081】
第3sigmoid関数部Ma43は、異形成分類(病理組織診断)用のsigmoid関数であり、5つのsigmoid関数(第1関数~第5関数)及び小計部を有する。第3sigmoid関数部Ma43の第1関数には2つの出力ノードが、第2関数~第5関数には1つの出力ノードがそれぞれ接続されており、ノード1~5の各出力ノードは小計部に接続されている。第3sigmoid関数部Ma43の第1関数~第5関数に接続された6つの出力ノードは、顕微鏡画像中の検体が異形成分類によって陰性、軽度異形成、中等度異形成、高度異形成、上皮内癌、扁平上皮癌に分類される結果(検査結果)を出力する。なお、異形成分類による分類結果である陰性は正常細胞を示しており、陰性、軽度異形成、中等度異形成、高度異形成、上皮内癌、扁平上皮癌の順に悪性度が高くなる。第3sigmoid関数部Ma43では、ノード0は、検査対象を陰性に分類すべき確率を出力し、ノード1は、軽度異形成、中等度異形成、高度異形成、上皮内癌又は扁平上皮癌に分類すべき確率を出力する。即ち、ノード1からの出力確率は、少なくとも軽度異形成に分類すべき確率を示す。またノード2は中等度異形成、高度異形成、上皮内癌又は扁平上皮癌に分類すべき確率を出力し、ノード2からの出力確率は、少なくとも中等度異形成に分類すべき確率を示す。またノード3は高度異形成、上皮内癌又は扁平上皮癌に分類すべき確率を出力し、ノード3からの出力確率は、少なくとも高度異形成に分類すべき確率を示す。またノード4は上皮内癌又は扁平上皮癌に分類すべき確率を出力し、ノード4からの出力確率は、少なくとも上皮内癌に分類すべき確率を示す。またノード5は扁平上皮癌に分類すべき確率を出力する。第3sigmoid関数部Ma43においても、第1関数に接続された2つの出力ノード(ノード0,1)のそれぞれは0~1.0の出力値を出力し、2つの出力ノードから出力される出力値の合計が1.0となり、第2関数~第4関数にそれぞれ接続された出力ノードは0~1.0の出力値を出力する。第3sigmoid関数部Ma43において、小計部は、第1関数~第5関数のノード1~ノード5において出力値が閾値(例えば0.5)よりも大きいノードの個数を計数し、計数した個数(有効数)に相当するレベルを出力ノードから出力する。ここでの有効数に相当するレベルは、異形成分類による分類結果を表すレベル(分類レベル)である。具体的には、有効数が0の場合は「陰性」に対応するレベルであり、有効数が1の場合は「軽度異形成」に対応するレベルであり、有効数が2の場合は「中等度異形成」に対応するレベルであり、有効数が3の場合は「高度異形成」に対応するレベルであり、有効数が4の場合は「上皮内癌」に対応するレベルであり、有効数が5の場合は「扁平上皮癌」に対応するレベルである。
【0082】
第4sigmoid関数部Ma44は、CIN(Cervical Intraepithelial Neoplasia)分類用のsigmoid関数であり、3つのsigmoid関数(第1関数~第3関数)及び小計部を有する。第4sigmoid関数部Ma44の第1関数には2つの出力ノードが、第2関数~第3関数には1つの出力ノードがそれぞれ接続されており、ノード1~3の各出力ノードは小計部に接続されている。第4sigmoid関数部Ma44の第1関数~第3関数に接続された4つの出力ノードは、顕微鏡画像中の検体がCIN分類によって陰性、CIN1、CIN2、CIN3に分類される結果(検査結果)を出力する。なお、CIN分類による分類結果である陰性は正常細胞を示しており、陰性、CIN1、CIN2、CIN3の順に悪性度が高くなる。第4sigmoid関数部Ma44では、ノード0は、検査対象を陰性に分類すべき確率を出力し、ノード1は、CIN1、CIN2又はCIN3に分類すべき確率を出力する。即ち、ノード1からの出力確率は、少なくともCIN1に分類すべき確率を示す。またノード2はCIN2又はCIN3に分類すべき確率を出力し、ノード2からの出力確率は、少なくともCIN2に分類すべき確率を示す。またノード3はCIN3に分類すべき確率を出力する。第4sigmoid関数部Ma44においても、第1関数に接続された2つの出力ノード(ノード0,1)のそれぞれは0~1.0の出力値を出力し、2つの出力ノードから出力される出力値の合計が1.0となり、第2関数~第3関数にそれぞれ接続された出力ノードは0~1.0の出力値を出力する。第4sigmoid関数部Ma44において、小計部は、第1関数~第3関数のノード1~ノード3において出力値が閾値(例えば0.5)よりも大きいノードの個数を計数し、計数した個数(有効数)に相当するレベルを出力ノードから出力する。ここでの有効数に相当するレベルは、CIN分類による分類結果を表すレベル(分類レベル)である。具体的には、有効数が0の場合は「陰性」に対応するレベルであり、有効数が1の場合は「CIN1」に対応するレベルであり、有効数が2の場合は「CIN2」に対応するレベルであり、有効数が3の場合は「CIN3」に対応するレベルである。
【0083】
図20に示す検査モデルMaも、パパニコロウ染色によって染め出された検体の顕微鏡画像と、4種類の分類項目のそれぞれにおける顕微鏡画像中の検体に対する分類結果とを含む検査結果データから生成された訓練データを用いて学習することによって生成される。なお、
図20に示す検査モデルMaは、
図14に示した実施形態3における生成処理によって生成可能である。即ち、学習装置50の制御部51は、検査結果データから訓練データを生成する。その際、制御部51は、ベセスダシステムによる分類結果がNILMである場合、第1sigmoid関数部Ma41におけるノード0からの出力値を1.0、ノード1~3からの出力値を0とする訓練データを生成する。また制御部51は、分類結果がLSILである場合、ノード1からの出力値を1.0、ノード0,2~3からの出力値を0とする訓練データを生成し、分類結果がHSILである場合、ノード1,2からの出力値を1.0、ノード0,3からの出力値を0とする訓練データを生成する。更に制御部51は、分類結果がSCCである場合、ノード1~3からの出力値を1.0、ノード0からの出力値を0とする訓練データを生成する。このような訓練データを用いることにより、検査モデルMaは、検査結果データに含まれる顕微鏡画像が入力された場合に、各分類項目について、出力層Ma4の各sigmoid関数部Ma41~Ma44の各関数からの出力ノードにおいて、訓練データで出力値を1に設定された出力ノードからの出力値が1.0に近づき、訓練データで出力値を0に設定された出力ノードからの出力値が0に近づくように特徴量抽出部Ma1、全結合層Ma2及び出力層Ma4(sigmoid関数部Ma41~Ma44の各sigmoid関数)を学習させる。これにより、顕微鏡画像が入力された場合に、顕微鏡画像中の検体に対して、複数の分類項目毎に分類結果のいずれかを示す分類レベルを出力するように学習された学習済みの検査モデルMaが得られる。
【0084】
上述した構成の検査モデルMaを用いて、顕微鏡画像中の検体の状態を判定する場合にも、上述した実施形態2と同様の処理が可能である。即ち、検査モデルMaを用いることにより、顕微鏡画像に基づいて、顕微鏡画像中の検体に対して、複数の分類項目のそれぞれについて分類結果(検査結果)を自動的に判定できる。具体的には、顕微鏡画像を検査モデルMaに入力することにより、検査モデルMaから分類項目毎に出力された各出力ノードからの出力値に基づいて、各分類項目についての分類結果を特定できる。よって、パパニコロウ染色を用いた細胞診検査において、医療従事者等の検査者が目視で、又はパパニコロウ染色以外の検査法で同定した結果に基づいて、複数の分類項目について分類結果を判定し、判定した分類結果に基づいて、病状等の検査結果を解釈する際に支援することができ、検査者の作業負担を軽減できる。また本実施形態においても、検査装置10によって判定(分類)された分類結果が誤っている場合、分類結果を表示部15に表示して検査者に通知し、入力部14を介して検査者から訂正指示を受け付けることにより、訂正することができる。また、検査装置10によって判定された分類結果が誤っていた場合に、例えば検査者によって入力された正解の分類結果と顕微鏡画像とを用いて検査モデルMaを再学習させることができる。この場合にも、学習済みの撮影画像とは画像特徴量が大幅に異なる画像等が適切な正解ラベルと共に入力されれば、より精度の高い検査モデルMaを生成できる。
【0085】
上述した実施形態1~4の検査装置10又は検査システムは、前立腺癌の悪性度診断に用いるグリソンスコア(Gleasonスコア)を推定する構成にも適用できる。グリソンスコアを推定するための細胞診では、前立腺の組織を針生検により採取し、ホルマリン固定後にパラフィン薄切切片を作成し、ヘマトキシリン及びエジオン等で染色して病理組織標本を作成する。そして、作成した病理組織標本を顕微鏡撮影して顕微鏡画像を取得する。病理組織標本の顕微鏡画像からグリソンスコア(Gleasonスコア)を推定する場合、顕微鏡画像から優勢病変(最も多く見られる病変)の状態と、随伴病変(2番目に多く見られる病変)の状態とを判定し、判定結果からグリソンスコアを特定する。よって、病理組織標本の顕微鏡画像が入力された場合に、優勢病変の状態を示す情報と、随伴病変の状態を示す情報とを出力する検査モデル(ニューラルネットワーク)を用いることにより、顕微鏡画像からグリソンスコアを推定できる。
【0086】
例えば
図19に示すようにsoftmax関数を用いる場合、グリソンスコアを推定する検査モデルは、出力層に2つのsoftmax関数(第1softmax関数,第2softmax関数)を有する。第1softmax関数には、顕微鏡画像中の検体における優勢病変の状態を5段階で示すグレード(検査結果)を出力する5つの出力ノードが設けられ、第2softmax関数には、随伴病変の状態を5段階で示すグレード(検査結果)を出力する5つの出力ノードが設けられる。なお、各グレードは1,2,3,4,5の順に悪性度が高くなる細胞であることを示す。それぞれのsoftmax関数において、5つの出力ノードのそれぞれは0~1.0の出力値を出力し、5つの出力ノードからの出力値の合計が1.0となる。このような構成の検査モデルを用いることにより、病理組織標本の顕微鏡画像を入力した場合に、検査モデルから優勢病変に関するグレードと随伴病変に関するグレードとが出力される。よって、顕微鏡画像から優勢病変及び随伴病変に関するグレードを自動的に判定できる。
【0087】
また、
図20に示すようにsigmoid関数を用いる場合、グリソンスコアを推定する検査モデルは、出力層に2つのsigmoid関数部(第1sigmoid関数部,第2sigmoid関数部)を有し、それぞれのsigmoid関数部は4つのsigmoid関数(第1関数~第4関数)及び小計部を有する。第1sigmoid関数部の4つの第1関数~第4関数には、顕微鏡画像中の検体における優勢病変の状態を5段階で示すグレードを出力する5つの出力ノードが設けられる。具体的には、第1関数に2つの出力ノード(ノード0~1)が、第2関数~第4関数に1つの出力ノード(ノード2~4)がそれぞれ接続され、ノード1~ノード4の4つの出力ノードが小計部に接続される。第2sigmoid関数部の4つの第1関数~第4関数には、顕微鏡画像中の検体における随伴病変の状態を5段階で示すグレードを出力する5つの出力ノードが設けられる。具体的には、第1関数に2つの出力ノード(ノード0~1)が、第2関数~第4関数に1つの出力ノード(ノード2~4)がそれぞれ接続され、ノード1~ノード4の4つの出力ノードが小計部に接続される。それぞれのsigmoid関数部において、第1関数に接続された2つの出力ノードのそれぞれは0~1.0の出力値を出力し、2つの出力ノードからの出力値の合計が1.0となり、第2関数~第4関数に接続された3つの出力ノードのそれぞれは0~1.0の出力値を出力する。なお、ノード0はグレードが2未満である(即ち1)と判別すべき確率を出力し、ノード1はグレードが2以上であると判別すべき確率を出力し、ノード2~4はグレードが3~5以上であると判別すべき確率を出力する。即ち、ノード1~ノード4の各ノードは、各ノードに割り当てられたグレードと、このグレードよりも大きいグレード(悪性度が高い検査結果)とを含む判別確率を出力する。また、それぞれのsigmoid関数部において、小計部は、ノード1~ノード4の各ノードのうちで、出力値が閾値(例えば0.5)よりも大きいノードの個数を計数し、計数した個数(有効数)に相当するレベルを病変のグレードとして出力ノードから出力する。このような構成の検査モデルを用いた場合でも、病理組織標本の顕微鏡画像を入力することにより、検査モデルから優勢病変に関するグレードと随伴病変に関するグレードとが出力される。よって、顕微鏡画像から優勢病変及び随伴病変に関するグレードを自動的に判定できる。
【0088】
よって、グリソンスコアを推定する際の細胞診検査において、医療従事者等の検査者が例えば目視で、優勢病変及び随伴病変のグレードを判定し、判定した各グレードに基づいてグリソンスコアを判定する際に支援することができ、検査者の作業負担を軽減できる。またsigmoid関数を用いて検査モデルを構成した場合であっても、検査装置10によって判定(分類)されたグレード(検査結果)が誤っている場合、判定したグレードを表示部15に表示して検査者に通知し、入力部14を介して検査者から訂正指示を受け付けることにより、訂正することができる。また、検査装置10によって判定されたグレードが誤っていた場合に、例えば検査者によって入力された正解のグレードと顕微鏡画像とを用いて検査モデルを再学習させることができる。この場合にも、学習済みの撮影画像とは画像特徴量が大幅に異なる画像等が適切な正解ラベルと共に入力されれば、より精度の高い検査モデルを生成できる。
【0089】
上述した各実施形態では、
図3に示すようにsoftmax関数で出力層M3を構成した検査モデルM、又は、
図10に示すようにsigmoid関数で出力層M4を構成した検査モデルMを用いて検査結果を推定する構成について説明した。このほかに、
図3に示すような検査モデルMと
図10に示すような検査モデルMとを組み合わせて、それぞれの検査モデルMからの出力値をアンサンブル学習(例えば、Gradient Boosting,ランダムフォレスト等の機械学習モデルを使用)することによって、より精度の高い検査モデルMを生成することも可能である。また、
図3に示すような検査モデルM及び
図10に示すような検査モデルMだけでなく、その他のアルゴリズムを用いて構成された一般的な学習モデルも組み合わせて、それぞれのモデルからの出力値をアンサンブル学習することによっても、検査モデルMの精度を向上させることが可能である。
【0090】
今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本開示の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0091】
10 検査装置
11 制御部
12 記憶部
14 入力部
15 表示部
16 カメラ
M 検査モデル