IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 国立大学法人北海道大学の特許一覧

特開2022-131264識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法
<>
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図1
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図2
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図3
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図4
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図5
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図6
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図7
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図8
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図9
  • 特開-識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022131264
(43)【公開日】2022-09-07
(54)【発明の名称】識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法
(51)【国際特許分類】
   G06N 20/00 20190101AFI20220831BHJP
   G06N 3/08 20060101ALI20220831BHJP
   G16H 10/40 20180101ALI20220831BHJP
【FI】
G06N20/00 130
G06N3/08
G16H10/40
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021030123
(22)【出願日】2021-02-26
(71)【出願人】
【識別番号】504173471
【氏名又は名称】国立大学法人北海道大学
(74)【代理人】
【識別番号】100145403
【弁理士】
【氏名又は名称】山尾 憲人
(74)【代理人】
【識別番号】100131808
【弁理士】
【氏名又は名称】柳橋 泰雄
(74)【代理人】
【識別番号】100163902
【弁理士】
【氏名又は名称】市川 奈月
(72)【発明者】
【氏名】政氏 伸夫
【テーマコード(参考)】
5L099
【Fターム(参考)】
5L099AA03
(57)【要約】
【課題】、正確度・再現性の高い有用な細胞検査の補助を実現させる。
【解決手段】識別システムは、記憶装置と、演算装置とを備え、記憶装置は、学習用の細胞画像データと、当該学習用の細胞画像データが含む細胞の種別とを関連付ける複数組の学習用データの関係を機械学習により学習済みであって、新たな細胞画像データを入力データとし、当該新たな細胞画像データが含む細胞種別の識別結果を出力する学習済みモデルを記憶し、学習済みモデルの一部の関数は新たな関数に置換されており、新たな細胞画像データが含む細胞が学習用の細胞画像データに含まれない細胞である場合、識別結果を、学習用データに含まない未学習種別であると識別し、演算装置は、新たな細胞画像データを取得する取得処理と、学習済みモデルを用いて、新たな細胞画像データが含む細胞の種別を識別する識別処理とを実行する。
【選択図】図3
【特許請求の範囲】
【請求項1】
記憶装置と、演算装置とを備え、
前記記憶装置は、
学習用の細胞画像データと、当該学習用の細胞画像データが含む細胞の種別とを関連付ける複数組の学習用データの関係を機械学習により学習済みであって、新たな細胞画像データを入力データとし、当該新たな細胞画像データが含む細胞種別の識別結果を出力する学習済みモデル
を記憶し、
前記学習済みモデルは、前記学習済みモデルの一部の関数が新たな関数に置換されており、
前記学習済みモデルは、新たな細胞画像データが含む細胞が前記学習用の細胞画像データに含まれない細胞である場合、識別結果を、前記学習用データに含まない未学習種別であると識別し、
前記演算装置は、
新たな細胞画像データを取得する取得処理と、
前記学習済みモデルを用いて、前記新たな細胞画像データが含む細胞の種別を識別する識別処理と、
を実行する
識別システム。
【請求項2】
前記学習済みモデルは、
前記機械学習の終了後に、前記学習用の細胞画像データが含む細胞と同種の細胞を含む試験用の細胞画像データと、当該試験用の細胞画像データが含む細胞の種別とを関連付ける複数組の試験用データにより試験済みであって、
前記新たな関数は、当該新たな関数に入力される値が、前記試験の実行時に、学習済みモデルの前記一部の関数への各入力値に応じて定められる範囲外である場合、前記新たな細胞画像データが含む細胞の種別を未学習種別であると識別する
請求項1に記載の識別システム。
【請求項3】
前記新たな関数は、当該新たな関数への入力値が、前記試験の実行時の細胞の種別毎の前記一部の関数への複数の入力値の分布に応じて定められる範囲外である場合、前記細胞の種別を未学習種別であると識別する
請求項2に記載の識別システム。
【請求項4】
前記学習済みモデルは、入力層、中間層及び出力層を含むニューラルネットワークであって、
置換する前記新たな関数は、前記学習済みモデルの出力層である
請求項1乃至3のいずれか1に記載の識別システム。
【請求項5】
前記細胞は、血液細胞である
請求項1乃至4のいずれか1に記載の識別システム。
【請求項6】
前記血液細胞は、白血球であって、
前記血液細胞の種別は、好中球、好酸球、好塩基球、リンパ球及び単球を含む
請求項5に記載の識別システム。
【請求項7】
記憶装置にアクセス可能な演算装置で実行される識別方法であって、
前記記憶装置は、
学習用の細胞画像データと、当該学習用の細胞画像データが含む細胞の種別とを関連付ける複数組の学習用データの関係を機械学習により学習済みであって、新たな細胞画像データを入力データとし、当該新たな細胞画像データが含む細胞種別の識別結果を出力する学習済みモデル
を記憶し、
前記学習済みモデルは、前記学習済みモデルの一部の関数が新たな関数に置換されており、
前記学習済みモデルは、新たな細胞画像データが含む細胞が前記学習用の細胞画像データに含まれない細胞である場合、識別結果を、前記学習用データに含まない未学習種別であると識別し、
前記識別方法は、
新たな細胞画像データを取得する取得処理と、
前記学習済みモデルを用いて、前記新たな細胞画像データが含む細胞の種別を識別する識別処理と、
を含む
識別方法。
【請求項8】
請求項7に記載の識別方法を、前記演算装置に実行させるためのコンピュータプログラム。
【請求項9】
記憶装置にアクセス可能な演算装置で実行される学習済みモデルの生成方法であって、
前記記憶装置は、
学習用の細胞画像データと、当該学習用の細胞画像データが含む細胞の種別とを関連付ける複数組の学習用データと、
前記学習用の細胞画像データが含む細胞と同種の細胞を含む試験用の細胞画像データと、当該試験用の細胞画像データが含む細胞の種別とを関連付ける複数組の試験用データと、
を記憶し、
前記演算装置は、
前記学習用データを用いて、前記学習用の細胞画像データと前記細胞の種別との関係を機械学習により学習する学習処理と、
前記学習処理によって得られた仮の学習済みモデルを用いて、前記試験用の細胞画像データが含む細胞の種別を識別する試験処理と、
前記試験処理において、各細胞の種別毎に、前記仮の学習済みモデルの一部の関数への入力値を収集する収集処理と、
新たな細胞画像データに基づく新たな入力値が、各細胞の種別毎に収集された前記入力値に応じて定められる範囲外である場合、前記新たな細胞画像データが含む細胞種別を前記学習用データに含まない未学習種別であるとした識別結果を出力する新たな関数を設定する設定処理と、
前記仮の学習済みモデルの一部の関数を、前記新たな関数で置換した学習済みモデルを生成する生成処理と、
を含む
学習済みモデルの生成方法。
【請求項10】
前記仮の学習済みモデルは、入力層、中間層、及び出力層を含むニューラルネットワークであり、
前記仮の学習済みモデルの出力層は、活性化関数としてSoftmax関数を利用したものであり、
前記生成処理は、前記仮の学習済みモデルの出力層を、前記新たな関数に置換する
請求項9に記載の学習済みモデルの生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法に関する。
【背景技術】
【0002】
病理診断の一例として、被検者から採取した血液の白血球分画の割合を求める血液検査がある。具体的には、血液検査では、検査者は、被検者の血液から、白血球の好中球、好酸球、好塩基球、単球、リンパ球各々を特定し、その割合を調べた結果に応じて被検者の異常を特定することができる。また、各白血球の形状によってもその異常を特定することができることもある。さらに、他の病理診断の例として、被検者の臓器表面から採取した細胞を用いた細胞診断もある。このような画像を用いた細胞診断においても、例えば、検査者は、被検者の診断対象の細胞の画像を、一般的に正常とされる細胞の形状等と比較することで異常を特定することができる。
【0003】
しかしながら、このような検査の技術を習得するためには、細胞の形状を覚えて判断する必要があり、長年の訓練が必要である。また、上述したような血液検査では、鏡検する細胞が数百となるため、検査の正確度・再現性が高いとはいい難い場合もある。非特許文献1においても、機械学習を利用してえられたモデルによっても、正確に識別されない場合があることが記載されている。
【0004】
非特許文献1は、ニューラルネットワークを利用した血液画像の白血球分類について記載される。この特許文献1に記載の技術では、Softmax後の値を分析している。
【先行技術文献】
【特許文献】
【0005】
【非特許文献1】Yapin Wang等著、「Human peripheral blood leukocyte classification method based on convolutional neural network and data augmentation」、 Medical Physics 47 (1)、2020年1月
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示は、以上のような課題を解決し、正確度・再現性の高い有用な細胞検査の補助を実現させる識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法を提供する。
【課題を解決するための手段】
【0007】
本開示の識別システムは、記憶装置と、演算装置とを備え、記憶装置は、学習用の細胞画像データと、当該学習用の細胞画像データが含む細胞の種別とを関連付ける複数組の学習用データの関係を機械学習により学習済みであって、新たな細胞画像データを入力データとし、当該新たな細胞画像データが含む細胞種別の識別結果を出力する学習済みモデルを記憶し、学習済みモデルは、学習済みモデルの一部の関数が新たな関数に置換されており、学習済みモデルは、新たな細胞画像データが含む細胞が学習用の細胞画像データに含まれない細胞である場合、識別結果を、学習用データに含まない未学習種別であると識別し、演算装置は、新たな細胞画像データを取得する取得処理と、学習済みモデルを用いて、新たな細胞画像データが含む細胞の種別を識別する識別処理と、を実行する。
【0008】
これにより、既存の識別システムでは不可能であった“未学習種別”の出力を可能として、的中率、正確度、再現性の高い有用な細胞検査補助を実現することができる。
【0009】
本開示の識別方法は、記憶装置にアクセス可能な演算装置で実行される識別方法であって、記憶装置は、学習用の細胞画像データと、当該学習用の細胞画像データが含む細胞の種別とを関連付ける複数組の学習用データの関係を機械学習により学習済みであって、新たな細胞画像データを入力データとし、当該新たな細胞画像データが含む細胞種別の識別結果を出力する学習済みモデルを記憶し、学習済みモデルは、学習済みモデルの一部の関数が新たな関数に置換されており、学習済みモデルは、新たな細胞画像データが含む細胞が学習用の細胞画像データに含まれない細胞である場合、識別結果を、学習用データに含まない未学習種別であると識別し、識別方法は、新たな細胞画像データを取得する取得処理と、学習済みモデルを用いて、新たな細胞画像データが含む細胞の種別を識別する識別処理と、を含む。
【0010】
これにより、既存の識別システムでは不可能であった“未学習種別”の出力を可能として、的中率、正確度、再現性の高い有用な細胞検査の補助を実現することができる。
【0011】
本開示の学習済みモデルの生成方法は、記憶装置にアクセス可能な演算装置で実行される学習済みモデルの生成方法であって、記憶装置は、学習用の細胞画像データと、当該学習用の細胞画像データが含む細胞の種別とを関連付ける複数組の学習用データと、学習用の細胞画像データが含む細胞と同種の細胞を含む試験用の細胞画像データと、当該試験用の細胞画像データが含む細胞の種別とを関連付ける複数組の試験用データと、を記憶し、演算装置は、学習用データを用いて、学習用の細胞画像データと細胞の種別との関係を機械学習により学習する学習処理と、学習処理によって得られた仮の学習済みモデルを用いて、試験用の細胞画像データが含む細胞の種別を識別する試験処理と、試験処理において、各細胞の種別毎に、仮の学習済みモデルの一部の関数への入力値を収集する収集処理と、新たな細胞画像データに基づく新たな入力値が、各細胞の種別毎に収集された入力値に応じて定められる範囲外である場合、新たな細胞画像データが含む細胞種別を学習用データに含まない未学習種別であるとした識別結果を出力する新たな関数を設定する設定処理と、仮の学習済みモデルの一部の関数を、新たな関数で置換した学習済みモデルを生成する生成処理とを含む。
【0012】
これにより生成された学習済みモデルを利用して、既存の識別システムでは不可能であった“未学習種別”の出力を可能として、的中率、正確度と再現性の高い有用な細胞検査の補助を実現することができる。
【0013】
これらの概括的かつ特定の態様は、システム、方法、及びコンピュータプログラム、並びに、それらの組み合わせにより、実現されてもよい。
【発明の効果】
【0014】
本開示の識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法によれば、既存の識別システムでは不可能であった“未学習種別”の出力を可能として、的中率、正確度と再現性の高い有用な細胞検査の補助を実現することができる。
【図面の簡単な説明】
【0015】
図1】実施形態に係る出力層を作成するまでの学習システムの構成を示すブロック図である。
図2図1の学習システムで利用する教師用データセットについて説明する概略図である。
図3図1の学習システムにおける学習及び試験を説明する概略図である。
図4図1の学習システムで生成される仮の学習済みモデルを説明する図である。
図5図1の学習システムで生成される学習済みモデルを説明する図である。
図6図1の学習システムにおける学習方法を説明するフローチャートである。
図7】実施形態に係る識別システムの構成を示すブロック図である。
図8図7の識別システムにおける識別方法を説明するフローチャートである。
図9】実施例に係る識別システムで得られた出力層への入力値の分布の一例である。
図10】実施例に係る識別システムの正確度を示すグラフである。
【発明を実施するための形態】
【0016】
本開示は、細胞の種別を識別する識別システムを実現する学習済みモデルの生成方法に関する。また、本開示は、細胞の種別を識別する識別システム、識別方法、識別方法を実行するコンピュータプログラムに関する。
【0017】
以下に、図面を参照して各実施形態に係る学習済みモデルの生成方法、識別システム、識別方法及びコンピュータプログラムについて説明する。本開示において、学習済みモデルは、入力データである画像データが含む細胞の種別を識別するものである。なお、以下の説明では、同一の構成について、同一の符号を付して説明を省略する。
【0018】
以下の説明では、「細胞画像データ」は、生体から採取した細胞を含む画像データである。例えば、血液細胞画像データは、採取した血液細胞を含む画像データである。以下において、細胞画像データは、血液細胞の形態による分類診断である白血球5分画診断に利用する白血球画像データを一例として説明する。しかしながら、細胞画像データは、血液画像データに限られず、細胞診断に利用する他の種類の細胞の画像データであってもよい。なお、細胞画像データにおいては、識別対象となり得る細胞は特定され得る状態で含まれるものとする。例えば、白血球5分画診断に利用する細胞画像データでは、周囲に複数の赤血球が含まれていてもよいが、識別対象である1つの白血球が中央付近に位置するように撮影されることが好ましい。
【0019】
「学習済みモデル」は、一定の構造からなる学習器に入力された、問題と正解の対で形成される複数組の学習用(教師)データから問題と正解を正しく結びつける学習機の複数のパラメータの値を学習した結果得られたプログラムである。この学習済みモデルは、使用した学習用(教師)データに対する学習器の構造と複数のパラメータのセットで表される。本願における学習済モデルは、細胞画像データと細胞の正解種別とを学習して得られたものである。したがって、以下では、学習済みモデルは、細胞画像データが入力されると、細胞画像データに含まれる細胞の種別を出力する。学習器は、例えば、ニューラルネットワーク(NN)、サポートベクターマシン(SVM)等を利用することができる。また、学習器は、これらの組み合わせを利用してもよい。学習済みモデルは、「識別器」、「分類器」又は「予測器」等と表してもよい。
【0020】
「学習用データ」とは、機械学習において利用する、データである。本願では、教師あり学習を採用するため、図2に示すように、「細胞画像データ」と、細胞画像データが含む細胞の「細胞の種別」とが一組となる複数組のデータが教師用データセットとして用意される。ここで、細胞の種別は、画像データに対する正解を示す「ラベル」である。教師用データセットは、データとラベルとの関係の学習時に利用される「学習用データセット」及び「検証用データセット」と、学習で得られた学習済みモデルの精度の試験に利用される「試験用データセット」とに分けられる。なお、以下では、検証用データセットは学習時において利用されるため説明を省略し、検証用データセットは学習用データセットに含めて説明するものとする。また、学習データに対応する「ラベル」は、「タグ」と表してもよい。
【0021】
以下では、まず、細胞画像データから細胞の種別を識別する学習済みモデルの生成に関する学習段階について説明する。ここで、『学習段階』とは、学習、試験及び学習済みモデルの生成を実行する段階である。その後、学習段階で生成した学習済みモデルを用いた細胞画像データから細胞の種別を識別する、『推論段階』について説明する。推論段階とは、学習段階で得られた学習済みモデルをコンピュータに実装し、新たな画像データから細胞の種別を識別する段階である。
【0022】
〈学習システム〉
図1は、学習段階で利用する実施形態に係る学習システム10を示す。学習システム10は、細胞画像データに含まれる細胞の種別を識別する学習済みモデルM2を生成する。この学習システム10は、例えば、ユーザである学習済みモデルの作成者によって利用される。学習システム10は、入出力装置11と、通信装置12と、記憶装置13と、演算装置14とを備える。
【0023】
入出力装置11は、操作やデータの入力に利用される操作ボタン、キーボード、マウス、タッチパネル、マイクロフォン等の入力手段、及び、処理結果やデータの出力に利用されるディスプレイ、スピーカ等の出力手段である。通信装置12は、外部の装置(図示せず)とのデータ通信を可能とするための通信手段である。
【0024】
記憶装置13は種々の情報を記録する記録媒体である。記憶装置13は、例えば、RAM、ROM、フラッシュメモリ、SSD(Solid State Drive)、ハードディスクドライブ、その他の記憶デバイス又はそれらを適宜組み合わせて実現される。記憶装置13は、演算装置14が実行するコンピュータプログラムである学習プログラムP1と、学習の実行のために使用する種々のデータ等が格納される。例えば、記憶装置13は、学習用データD1と、試験用データD2と、試験結果データD3とを記憶する。また、記憶装置13は、学習の過程で、仮の学習済みモデルM1を記憶し、最終的に生成された学習済みモデルM2を記憶する。
【0025】
演算装置14は、学習システム10全体の制御を司るコントローラである。演算装置14は、記憶装置13に記憶される学習プログラムP1を実行することにより、学習処理と、試験処理と、収集処理と、設定処理と、生成処理とを実行する。また、演算装置14は、ハードウェアとソフトウェアの協働により所定の機能を実現するものに限定されず、所定の機能を実現する専用に設計されたハードウェア回路でもよい。すなわち、演算装置14は、CPU、MPU、GPU、FPGA、DSP、ASIC等、種々のプロセッサで実現することができる。
【0026】
なお、学習システム10は、相互に通信可能に接続された複数の情報処理装置によって実現されてもよい。また、記憶装置13に記憶されるデータの一部は外部の記憶装置に記憶され、外部の記憶装置から読み出して使用する構成であってもよい。
【0027】
学習用データD1は、学習用の細胞画像データと、学習用の細胞画像データが含む細胞の種別とを関連付けるデータである。学習システム10では、この学習用データD1を仮の学習済みモデルM1の生成に利用する。具体的には、図2に示すように、「細胞画像データ」とその細胞画像データが含む細胞の種別である「ラベル」とを関連付ける学習用データD1を複数組含むデータセットを仮の学習済みモデルM1の生成に利用する。ここでは、「ラベル」は、好中球、好酸球、好塩基球、リンパ球又は単球のいずれかであるものとする。なお、学習段階における処理については、一般的な機械学習を採用しているため学習についての詳細な説明は省略する。したがって、上述したように、ここでは、学習自体に用いる学習用データセットと、学習の段階での検証に用いる検証用データセットとを区別せずに、検証用データセットは学習用データセットに含まれるものとし、両方のデータセットに含まれるデータを学習用データとして説明する。
【0028】
試験用データD2は、学習用の細胞画像データが含む細胞と同種の細胞を含む試験用の細胞画像データと、試験用の細胞画像データが含む細胞の種別とを関連付けるデータである。学習システム10では、この試験用データD2を、学習用データD1を用いて生成した仮の学習済みモデルM1の試験に利用する。具体的には、図2に示すように、「細胞画像データ」とその細胞画像データが含む細胞の種別である「ラベル」とを関連付ける試験用データD2を複数組含むデータセットを仮の学習済みモデルM1の試験に利用する。上述したように、学習用データD1と、試験用データD2の細胞画像データは同種の画像であるため、試験用データD2の「ラベル」も、好中球、好酸球、好塩基球、リンパ球又は単球のいずれかであるものとして説明する。例えば、試験用データD2は、データ毎に番号等の識別情報が付与されている。
【0029】
試験結果データD3は、試験用データD2を用いた試験により得られた結果に関するデータである。例えば、試験結果データD3は、試験用データD2の識別情報と、結果とを関連付けたデータである。
【0030】
仮の学習済みモデルM1は、図3に示すように、学習用データセットを用いた学習の終了で得られたパラメータを含むプログラムである。この仮の学習済みモデルM1は、新たな細胞画像データが入力されると、その細胞画像データに含まれる細胞の種別を識別する。また、図3に示す例では、仮の学習済みモデルM1の出力層の活性化関数は、Softmax関数である。
【0031】
学習済みモデルM2は、図3に示すように、仮の学習済みモデルM1のSoftmax関数である出力層を、仮の学習済みモデルM1の試験で得られた値を利用して生成された新たな関数Fu(X)に置換して得られたプログラムである。
【0032】
演算装置14は、学習処理と、試験処理と、収集処理と、設定処理と、生成処理とを実行し、学習済みモデルM2を生成する。
【0033】
演算装置14は、学習処理において、学習用データD1を用いて、学習用の細胞画像データと細胞の種別との関係を機械学習により学習する。図2に示す学習用データセットの例では、各細胞の種別について800枚の細胞画像データを含むため、演算装置14は、学習処理において、細胞の種別毎に、800枚の異なる細胞画像データで学習する。この学習により、演算装置14は、仮の学習済みモデルM1を生成することができる。
【0034】
仮の学習済みモデルM1は、例えば、図4に示すように、入力層、1層以上の複数の中間層(隠れ層)、及び出力層を含むニューラルネットワークである。ニューラルネットワークの各層は、複数のノードを含み、各ノードは、前のノードの出力値を入力値とする。仮の学習済みモデルM1は、これらの層の数、ノードの数、活性化関数等をパラメータとして有する。また、本実施形態において、仮の学習済みモデルM1の出力層は、上述したように、活性化関数としてSoftmax関数を利用したものである。なお、出力層に含まれる各ノードは、仮の学習済みモデルM1が識別可能な各ラベルである細胞の種別と対応する。
【0035】
図4に示すように、仮の学習済みモデルM1は、新たな細胞画像データを識別する際、活性化関数としてSoftmax関数を用いる出力層において、中間層からの入力値X0乃至X4に応じて、各白血球の種別を表す値Y0乃至Y4を求めて出力する。通常、仮の学習済みモデルM1の出力層の出力値Y0からY4を用いることで、新たな細胞画像データに含まれる細胞の種別を識別する。
【0036】
具体的には、Softmax関数は、以下の式(1)により表すことができる。
i=exp(xi)/Σexp(xi) ・・・ (1)
0≦yi≦1
【0037】
したがって、図4に示すように、出力層において活性化関数としてSoftmax関数を使用した場合、仮に、入力された細胞画像データが好塩基球を含むものであるとき、X=[x0,x1,x2,x3,x4]=[1,0,0,0,0]が出力層への最善な入力例であり、出力層からの出力は、Y=[Y0,Y1,Y2,Y3,Y4]=[0.405,0.149,0.149,0.149,0.149]となる。ところで、上述したような仮の学習済みモデルM1においては、未学習の画像を入力した場合、この5種類以外であると正確に識別することは、Softmax関数を用いた出力層においては原理的にできず、必ず学習済みの1種を推測結果として出力してしまう事となる。したがって、この誤りを改めるために、演算装置14における出力層の処理を改変することにより、未学習の画像を入力した場合であっても正しく識別が可能な学習済みモデルM2を生成する。
【0038】
演算装置14は、試験処理において、学習処理によって得られた仮の学習済みモデルM1を用いて、試験用データD2を用いて、試験用の細胞画像データが含む細胞の種別を識別する。このとき、演算装置14は、試験用データD2の識別情報と、得られた識別結果とを関連付けて、試験結果データD3として記憶装置13に記憶させる。試験用データD2の識別情報により、ラベルである細胞の種別を特定することができるため、仮の学習済みモデルM1を用いて得られた識別結果の正確度等を特定することができる。なお、図2に示す試験用データセットの例では、各細胞の種別について100枚の異なる細胞画像データを含むため、演算装置14は、試験処理において、細胞の種別毎に、100枚の異なる細胞画像データで試験をする。
【0039】
演算装置14は、収集処理において、試験で各細胞の種別毎に、仮の学習済みモデルM1の一部の関数への入力値を収集する。図3及び図4に示したように、仮の学習済みモデルM1の一部の関数が活性化関数としてSoftmax関数を利用した出力層である場合、演算装置14は、記憶装置13に記憶される試験結果データD3において、各試験用データD2の識別情報及び識別結果と関連付けて、収集した入力値X0からX4を追加する。
【0040】
演算装置14は、設定処理において、新たな細胞画像データに基づく新たな入力値が、各細胞の種別毎に収集された入力値あるいはそれらの計算・集計・統計処理後の値に応じて定められる範囲外である場合、新たな細胞画像データが含む細胞の種別を学習用データに含まれていない未学習種別であると識別する新たな関数Fu(X)を設定する。
【0041】
例えば、関数Fu(X)は、新たな入力値が、予め設定される閾値A,B,C及びDに対し、下記に定めるような所定の条件を満たす場合、細胞画像データに含まれる細胞の種別は、未学習種別であると識別する。
(条件1)
全ての入力値Xiについて、所定の閾値Aiに関し、Xi<Ai
(条件2)
入力値から選択された2つの入力値Xk、Xlの差dj = |Xk -Xl|(ここで、Xk∈Xi、Xl∈Xi でk≠l)の全てについて、2つの入力値Xi毎の所定の閾値Bに関し、dj<Bj
(条件3)
入力値Xiについて、所定の下限閾値Ciまたは上限閾値Diに関し、Xi<CiまたはXi>Di
【0042】
なお、iは、図4に示した出力層の各ノードに付された番号であって、細胞の種別を表すクラスを示すものである。また、中間層の最終層の各ノードも同一の番号で示される。また、jは、図4に示した出力層の各ノードについて、2つのノードの組み合わせ毎に付された番号である。このように、各閾値A,B,C及びDは、ノード毎、または、ノードの組み合わせ毎に異なる値を定めることで、識別精度を向上させることができる場合にはノード毎、または、ノードの組み合わせ毎に設定することができる。一方、ノード毎、または、ノードの組み合わせ毎に同一の値を用いても識別精度が高い場合には、各ノード、及び、ノードの組み合わせについて同一の値を用いることができる。
【0043】
演算装置14は、例えば、試験結果データD3(図1)を用いて、各細胞の種別毎の、出力層への入力値X0からX4の『平均値』、『分散値』、『分布』等の統計量を求め、閾値A,B,C及びDを定めることができる。例えば、出力層への入力値Xiの分布を利用して分布の95%CI(信頼区間)を基準として、下限閾値C及び上限閾値Dを設定してもよい。例えば、新たな細胞画像データに応じた処理の結果、Softmax関数を利用した出力層からの出力値においてクラスiで最大値をとる場合(新たな細胞画像データが含む細胞は“クラスi”である可能性が最も高いと識別された場合)であっても、新たな細胞画像データに応じた出力層への入力値Xiが95%信頼区間の範囲内にない場合、未学習種別であると分類する。「未学習種別」とは、学習用データに含まれていないラベルに該当する種別である。
【0044】
演算装置14は、実施時には生成処理によって、細胞画像データの中間層の最終出力に基づく新たな関数を含む出力層で置換した学習済みモデルM2を生成する。図3及び図4に示した例では、演算装置14は、仮の学習済みモデルM1の出力層をSoftmax関数から、図5に示すように、生成処理で生成した新たな関数Fu(X)に置換する。このように生成された学習済みモデルM2は、出力層への各入力値X0からX4が新たな関数Fu(X)に規定される所定の条件を満たす場合、その他の未学習種別であると判定する。
【0045】
〈学習方法〉
図6に示すフローチャートを用いて、実施形態に係る学習方法について説明する。フローチャートの個々のステップの具体的な処理は上述したので、各ステップを簡略化して説明する。まず、図6に示すように、演算装置14は、記憶装置13に記憶される学習用データD1を用いて、学習を実行する(S01)。これにより、仮の学習済みモデルM1が生成される。
【0046】
続いて、演算装置14は、記憶装置13に記憶される試験用データD2を用いて、ステップS01で生成された仮の学習済みモデルM1の試験を実行する(S02)。このとき、演算装置14は、記憶装置13に試験結果データD3を記憶させる。
【0047】
また、演算装置14は、ステップS02における試験の際に、仮の学習済みモデルM1の出力層への入力値を収集する(S03)。このとき、演算装置14は、収集した出力層への入力値を、試験結果データD3に追加して記憶装置13に記憶させる。
【0048】
演算装置14は、全ての試験用データで白血球の種別の分類の試験が終了すると、白血球の種別毎に、ステップS03で収集した入力値の分布を生成する(S04)。また、演算装置14は、ステップS04で生成した分布を用いて、白血球の種別毎の閾値を設定する(S05)。
【0049】
その後、演算装置14は、ステップS05で設定した閾値を用いて、新たな出力層となる関数を生成する(S06)。また、演算装置14は、ステップS01で生成した仮の学習済みモデルM1の出力層を、ステップS06で生成した新たな関数に置換する(S07)。これにより、演算装置14は、学習済みモデルM2を生成することができる。
【0050】
〈識別システム〉
図7は、推論段階で利用する実施形態に係る識別システム20を示す。識別システム20は、入力データである新たな細胞画像データに対し、学習済みモデルM2を用いて、細胞画像データに含まれる細胞の種別を識別する。この識別システム20は、例えば、ユーザである医療従事者によって利用される。識別システム20は、入出力装置21と、通信装置22と、記憶装置23と、演算装置24とを備える。
【0051】
入出力装置21は、操作やデータの入力に利用される操作ボタン、キーボード、マウス、タッチパネル、マイクロフォン等の入力手段、及び、処理結果やデータの出力に利用されるディスプレイ、スピーカ等の出力手段である。通信装置22は、外部の装置(図示せず)とのデータ通信を可能とするための通信手段である。
【0052】
記憶装置23は、は種々の情報を記録する記録媒体である。記憶装置23は、例えば、RAM、ROM、フラッシュメモリ、SSD(Solid State Drive)、ハードディスクドライブ、その他の記憶デバイス又はそれらを適宜組み合わせて実現される。記憶装置23は、演算装置24が実行するコンピュータプログラムである識別プログラムP2と、識別の実行のために使用する種々のデータ等が格納される。例えば、記憶装置23は、識別対象の画像データを記憶することができる。また、記憶装置23は、学習システム10で生成された学習済みモデルM2を記憶する。
【0053】
演算装置24は、識別システム20全体の制御を司るコントローラである。演算装置24は、記憶装置23に記憶される識別プログラムP2を実行することにより、取得処理と、識別処理とを実行する。演算装置24も、演算装置14と同様に、ハードウェアとソフトウェアの協働により所定の機能を実現するものに限定されず、所定の機能を実現する専用に設計されたハードウェア回路でもよい。
【0054】
なお、識別システム20は、相互に通信可能に接続された複数の情報処理装置によって実現されてもよい。また、記憶装置23に記憶されるデータの一部は外部の記憶装置に記憶され、外部の記憶装置から読み出して使用する構成であってもよい。なお、ここでは、学習システム10と識別システム20とを分けて記載したが、もちろん同一のシステム内で学習処理と識別処理とを実行するようにしてもよい。
【0055】
演算装置24は、取得処理において、識別対象とする細胞を含む新たな細胞画像データを取得する。
【0056】
演算装置24は、識別処理において、学習済みモデルM2を用いて、取得処理で取得した新たな細胞画像データが含む細胞の種別を識別する。この識別結果を用いて、医師の診断等の補助に利用することができる。
【0057】
〈識別方法〉
図8に示すフローチャートを用いて、実施形態に係る識別方法について説明する。図8に示すように、演算装置24は、新たな細胞画像データを取得する(S11)。
【0058】
続いて、演算装置24は、記憶装置23に記憶される学習済みモデルM2を利用して、ステップS11で取得した新たな細胞画像データに含まれる細胞の種別を識別する(S12)。
【0059】
その後、演算装置24は、入出力装置21に識別結果を出力する(S13)。
【0060】
〈実施例〉
健常人から採取した末梢血塗抹標本から、CELLAVISON社のCELLAVISON DM-96を用いて、典型的細胞形態を示す正常白血球5分画(好中球、好酸球、好塩基球、リンパ球、単球)の血球写真を各々900枚撮影した。撮影した細胞画像データはそれぞれ血球クラスをラベルとして関連付け、図2を用いて上述したように、各々800枚を学習用データとし、100枚を試験用データとした。出願人は、このうち、各血球クラス800枚の学習用データを、ソニーネットワークコミュニケーションズ株式会社のNeural Network Console上に、出願人の考案した6層の畳み込み層を持つ学習器に入力し、機械学習を5回実行させた。表1に、5回学習させた場合の各回の最終損失と正確度を示す。
【0061】
【表1】
【0062】
以降、5回の機械学習のうち、最も良い正確度を示した『No.3』のパラメータを使用した仮の学習済みモデルM1を用いて試験を行った。試験は、以下のようにして実施した。
【0063】
(ステップ1)
仮の学習済みモデルM1に各分画の試験用データD2の細胞画像データ(100枚)を入力し、各細胞画像データに対する出力層への入力値(中間層からの出力値)X0からX4を計測し、記録する。
【0064】
(ステップ2)
ステップ1で記録した各分画の細胞画像データにおける出力層への入力値X0からX4を用いて、白血球の5分画毎の種別毎に、各ノードへの入力値Xiの平均値meanXi、分散値S.D.Xi、95%信頼区間(上限:95CISXi、下限:95CILXi)を算出する。算出結果を表2に示す。また、各分画の細胞画像データで得られた入力値X0からX4の分布図を図9に示す。
【0065】
【表2】
【0066】
(ステップ3)
ステップ2で算出した95%信頼区間を用いて、新たな関数Fu(X)を生成する。この新たな関数Fu(X)は、出力層からの出力が、
Fu(X)=
if{Softmax(X)=i、かつ、xiが95%信頼区間(95CISXi、95CILXi)に含まれない}
then Z5 = 1 かつ Z0-4 = 0.
else Z0~4 = Softmax(x0~4) かつ Z5 = 0.
となるようなFu(X)となり、実施形態での識別システムの出力層となる。
なお、Z5は、図5のその他に当たる未学習種別に該当するノードの出力値である。
【0067】
(ステップ4)
仮の学習済みモデルM1のうち、入力層及び中間層のパラメータはそのままとし、出力層Softmax関数をステップ3で生成した新たなFu(X)関数に置き換え、学習済みモデルM2とする。
【0068】
(ステップ5)
学習用画像データと同じ元画像から作成した典型的形態を示す健常5分画白血球画像データのみを含む第1のテスト画像データT0と、非典型的血球画像データ、異常・病的細胞画像データ、骨髄のみで認められる細胞画像データを所定の割合(2%、5%、10%、15%、20%)追加した第2のテスト画像データT2,T5,T10,T15,T20を作成する学習用データD1には含まれていない表3に示すような種類の非学習画像データを用意し、これらの非学習画像データを上述した各所定の割合となるように第2のテスト画像データT2,T5,T10,T15,T20に追加した。
【0069】
【表3】
【0070】
(ステップ6)
ステップS1で使用した仮の学習済みモデルM1、ステップ4で生成した学習済みモデルM2に、それぞれテスト画像データT0,T2,T5,T10,T15,T20を入力して得られた識別結果について、正確度を比較する。表4Aに、非学習画像データを20%の割合で追加した第2のテスト画像データT20を、仮の学習済みモデルM1によって識別させた場合の混同行列を示す。また、表4Bに、同一の第2のテスト画像データT20を、学習済みモデルM2によって識別させた場合の混同行列を示す。
【0071】
【表4A】
【0072】
【表4B】
【0073】
また、各テスト画像データT0,T2,T5,T10,T15,T20について、それぞれ仮の学習済みモデルM1及び学習済みモデルM2の識別結果の正確度を図10に示す。図10において、折れ線グラフは、実正確度を示し、棒グラフは、0%を1としたときの相対比率を示す。また、図10において、仮の学習済みモデルM1の識別結果を実線で示し、学習済みモデルM2の識別結果を破線で示す。なお、正確度は、学習対象白血球5種の正確推定画像数/全推定画像数で計算したため、仮の学習済みモデルM1の正確度の最大値は、0.95としている。
【0074】
上述のように、以下の識別結果が得られたことが分かる。
(1)仮の学習済みモデルM1を用いた場合の識別正確度は、未学習画像データの混入割合に応じて単調に減少した。具体的には、未学習画像データを混入前には1であったのに対し、未学習画像データを20%混入した際には0.83にまで減少した。
(2)学習済みモデルM2を用いた場合の識別正確度も、未学習割画像データの混入割合に応じて単調に減少した。ただし、未学習画像データを20%混入した場合においても、0.872であり、仮の学習済みモデルM1の場合の正確度を上回っている。
(3)実臨床での実施では、推測結果の正解は識別推測前にはもちろん不明である。そのため現場での有用性は正解的中率での評価がより妥当である。学習用データD1に含まれる細胞の種別の識別について、学習済みモデルM2の識別の的中率は、未学習画像が20%混入している場合でも、いずれの細胞種別についても、仮の学習済みモデルM1の識別結果を上回っている。
(4)実装時の状況を想定した未学習画像データを混入させた識別において、関数Fu(X)を活性化関数として用いた出力層を持つ学習済みモデルM2は、未学習細胞の混入率が増加しても学習した細胞の種別の識別正確度、推測陽性的中率を維持している。
【0075】
したがって、抹消白血球5分画画像データを学習用データとして機械学習させた深層学習系の出力層を、関数Fu(X)を活性化関数とするものに置換することで、識別対象の画像データに、学習用データに含まれない画像データが混入し、その割合が増加したとしても、識別の正確度を維持することができる。これにより、既存の識別システムでは不可能であった“未学習種別”の出力を可能として、的中率、正確度と再現性の高い有用な細胞検査の補助を実現することができる。
【0076】
以上のように、本出願において開示する技術の例を示し、上記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施形態にも適用可能である。
【0077】
本開示の全請求項に記載のプログラム更新システム、制御システム、移動体、プログラム更新方法及びプログラムは、ハードウェア資源、例えば、プロセッサ、メモリ、及びプログラムとの協働などによって、実現される。
【産業上の利用可能性】
【0078】
本開示の識別システム、識別方法、コンピュータプログラム及び学習済みモデルの生成方法は、例えば、的中率、正確度と再現性の高い有用な細胞検査の補助に有用である。
【符号の説明】
【0079】
10 学習システム
11 入出力装置
12 通信装置
13 記憶装置
14 演算装置
20 識別システム
21 入出力装置
22 通信装置
23 記憶装置
24 演算装置
D1 学習用データ
D2 試験用データ
D3 試験結果データ
M1 モデル
M2 モデル
P1 学習プログラム
P2 識別プログラム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10