(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022075620
(43)【公開日】2022-05-18
(54)【発明の名称】畳み込みニューラルネットワークをトレーニングする方法およびシステム
(51)【国際特許分類】
G06T 7/00 20170101AFI20220511BHJP
G06N 3/08 20060101ALI20220511BHJP
【FI】
G06T7/00 350C
G06N3/08
【審査請求】未請求
【請求項の数】14
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2021180313
(22)【出願日】2021-11-04
(31)【優先権主張番号】20206032
(32)【優先日】2020-11-05
(33)【優先権主張国・地域又は機関】EP
(71)【出願人】
【識別番号】511079735
【氏名又は名称】ライカ マイクロシステムズ シーエムエス ゲゼルシャフト ミット ベシュレンクテル ハフツング
【氏名又は名称原語表記】Leica Microsystems CMS GmbH
【住所又は居所原語表記】Ernst-Leitz-Strasse 17-37, D-35578 Wetzlar, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ホセ ミゲル セラ ジェティ
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096BA18
5L096CA02
5L096DA01
5L096HA11
5L096HA13
5L096KA03
5L096KA04
5L096KA13
(57)【要約】 (修正有)
【課題】畳み込みニューラルネットワークをトレーニングするコンピュータ実装型の方法、システム及びプログラムを提供する。
【解決手段】方法400は、キャプチャ画像を受信するステップ402と、キャプチャ画像に基づいて統計ノイズモデルを生成するステップ404と、キャプチャ画像及び統計モデルに基づいて畳み込みニューラルネットワークをトレーニングするステップ406と、を含んでいる。
【選択図】
図4
【特許請求の範囲】
【請求項1】
畳み込みニューラルネットワークをトレーニングするためのコンピュータ実装型の方法(400)であって、前記方法は、
キャプチャ画像(106)を受信するステップ(402)と、
前記キャプチャ画像に基づいて統計ノイズモデル(112)を生成するステップ(404)と、
前記キャプチャ画像および前記統計モデルに基づいて畳み込みニューラルネットワーク(122)をトレーニングするステップ(406)と、
を含んでいる方法。
【請求項2】
前記統計モデルを生成するステップは、
グラウンドトゥルースまたはシミュレートされたグラウンドトゥルース(110)にしたがい、前記キャプチャ画像におけるピクセルについての分散値または標準偏差値を特定することと、
前記分散値または前記標準偏差値に基づいて前記統計モデルを生成することと、
を含んでいる、
請求項1記載の方法。
【請求項3】
前記畳み込みニューラルネットワークをトレーニングするステップは、
前記キャプチャ画像をランダムパッチ(114)に分割することと、
それぞれのランダムパッチにおいてピクセル値と隣接ピクセル値とを交換することと、
前記キャプチャ画像の前記ランダムパッチと、交換されたピクセル値を含む前記キャプチャ画像(118)の前記ランダムパッチと、に基づいて、前記畳み込みニューラルネットワークをトレーニングすることと、
を含んでいる、
請求項1または2記載の方法。
【請求項4】
前記畳み込みニューラルネットワークをトレーニングするステップは、
前記統計モデルに基づき、交換されたピクセル値を含む前記ランダムパッチのピクセル値の確率を特定することと、
交換されたピクセル値を含む前記ランダムパッチのそれぞれのピクセル値の前記確率を最大化することにより、前記畳み込みニューラルネットワークをトレーニングすることと、
を含んでいる、
請求項3記載の方法。
【請求項5】
それぞれのピクセル値の前記確率を最大化することは、すべてのピクセル確率の平均の負の対数を最小化することを含んでいる、
請求項4記載の方法。
【請求項6】
それぞれのピクセル値についての前記確率は、平均値と、分散値または標準偏差値と、を有するガウス分布に基づき特定され、前記平均値は、前記キャプチャ画像の前記ランダムパッチのそれぞれのピクセルの平均値であり、前記分散値または前記標準偏差値は、前記統計モデルから得られる、
請求項4または5記載の方法。
【請求項7】
前記方法は、トレーニングされた前記畳み込みニューラルネットワークを前記キャプチャ画像に適用するステップを含んでいる、
請求項1から6までのいずれか1項記載の方法。
【請求項8】
前記方法は、
トレーニングされた前記畳み込みニューラルネットワークによって生成される画像のそれぞれのピクセル確率を、前記統計モデルを使用して補正するステップと、
それぞれ補正されたピクセル確率を有するそれぞれ生成されたピクセル確率の平均を取るステップと、
を含んでいる、
請求項7記載の方法。
【請求項9】
前記方法は、
別のキャプチャ画像を受信するステップと、
前記キャプチャ画像と前記別のキャプチャ画像とに基づき、前記統計モデルを更新するステップと、
分散モデルと比較して、前記更新された統計モデルの分散値または標準偏差値が減少している否かを特定するステップと、
前記統計モデルと比較して、前記更新された前記統計モデルの分散値または標準偏差値が減少していることが特定される場合に、前記別のキャプチャ画像と、前記更新された統計モデルと、に基づき、前記畳み込みニューラルネットワークを再トレーニングするステップと、
を含んでいる、
請求項1から8までのいずれか1項記載の方法。
【請求項10】
前記畳み込みニューラルネットワークは、エンコーダ・デコーダニューラルネットワークである、
請求項1から9までのいずれか1項記載の方法。
【請求項11】
1つまたは複数のプロセッサおよび1つまたは複数のストレージデバイス(810)を含んでいるシステムであって、請求項1から10までのいずれか1項記載の方法を実施するように構成されている、
システム。
【請求項12】
前記システムは、顕微鏡画像を取得するために、前記プロセッサに接続されているイメージングデバイスを含んでいる、
請求項11記載のシステム。
【請求項13】
トレーニングされた畳み込みニューラルネットワークであって、前記畳み込みニューラルネットワークは、
キャプチャ画像を受信することと、
前記キャプチャ画像に基づいて統計ノイズモデルを生成することと、
前記キャプチャ画像および前記統計モデルに基づいて前記畳み込みニューラルネットワークを調整することと、
によってトレーニングされる畳み込みニューラルネットワーク。
【請求項14】
請求項1から10までのいずれか1項記載の方法を実施するプログラムコードを備えた、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、畳み込みニューラルネットワークをトレーニングする方法に関する。
【背景技術】
【0002】
画像ノイズ除去は、相加性雑音が混入した画像を処理して、画像の特徴を保存しながらノイズリダクションを達成するために使用される。発明者によってつきとめられたのは、ユーザーがエネルギ入力を最小化することによってフォトブリーチングおよび光毒性を最小化しようと試みるときに、相加性雑音が取り込まれ得ることであり、ここでこのエネルギ入力の最小化は、ノイズの量が増大するという犠牲を払って、露光時間を短くするかまたは利得を小さくすることによって達成可能である。典型的なワークフローでは、画像は、短い露光時間または小さな利得で取得され、これによって結果的に、電子的なソースに由来するノイズ(例えば、ガウス雑音、ごま塩ノイズ、およびショット雑音)、または量子化、感度またはカメラセンサからの熱に起因する、サンプル依存の高周波ノイズを含み得る低品質画像が生じてしまう。
【発明の概要】
【発明が解決しようとする課題】
【0003】
本発明によって解決される問題は、画像のノイズをどのように除去しかつ良好な信号対雑音比(SNR:signal-to-noise)をどのようにして得るかということである。
【課題を解決するための手段】
【0004】
本発明の実施形態では、畳み込みニューラルネットワークをトレーニングするためのコンピュータ実装型の方法が提供され、この方法は、以下のステップ。すなわち、キャプチャ画像を受信するステップと、キャプチャ画像に基づいて統計ノイズモデルを生成するステップと、キャプチャ画像および統計モデルに基づいて畳み込みニューラルネットワークをトレーニングするステップと、を含んでいる。したがって、1つまたは複数の取得画像を使用して畳み込みニューラルネットワークをトレーニングするときに、SNRを増大させることができる。
【0005】
上記の実施形態の考えられ得る実装形態では、統計モデルを生成するステップは、グラウンドトゥルースまたはシミュレートされたグラウンドトゥルースにしたがい、キャプチャ画像におけるピクセルについて分散値または標準偏差値を特定することと、分散値または標準偏差値に基づいて統計モデルを生成することと、を含んでいる。したがって、畳み込みニューラルネットワークは、より効率的に、かつ実際の取得画像に基づいてトレーニング可能であり、いわゆるトレーニング画像を利用しないこともある。
【0006】
上記の実施形態の考えられ得る実装形態では、畳み込みニューラルネットワークをトレーニングするステップは、キャプチャ画像をランダムパッチに分割することと、それぞれのランダムパッチにおいてピクセル値と隣接ピクセル値とを交換することと、キャプチャ画像のランダムパッチと、交換されたピクセル値を含むキャプチャ画像のランダムパッチとに基づいて、畳み込みニューラルネットワークをトレーニングすることと、を含んでいる。
【0007】
上記の実施形態の考えられ得る実装形態では、畳み込みニューラルネットワークをトレーニングするステップは、統計モデルに基づき、交換されたピクセル値を含むランダムパッチのピクセル値の確率を特定することと、交換されたピクセル値を含むランダムパッチのそれぞれのピクセル値の確率を最大化することにより、畳み込みニューラルネットワークをトレーニングすることと、を含んでいる。したがって、畳み込みニューラルネットワークは、必ずしもトレーニングデータに頼ることなく、第1の取得画像および次の取得画像を使用して、トレーニングかつ利用可能である。
【0008】
上記の実施形態の考えられ得る実装形態では、それぞれのピクセル値の確率を最大化することは、すべてのピクセル確率の平均の負の対数を最小化することを含んでいる。
【0009】
上記の実施形態の考えられ得る実装形態では、平均値と、分散値または標準偏差値とを有するガウス分布に基づき、それぞれのピクセル値についての確率を特定し、平均値は、キャプチャ画像のランダムパッチのそれぞれのピクセルの平均値であり、分散値または標準偏差値を統計モデルから得る。分散値を特定する択一的な技術には、画像におけるカメラのカウント(すなわち利得)に基づいてノイズの分散を特定すること、または露出時間tを有する特定のフレームにおいて、予想される対象体と、得られた対象体との間の任意のノイズの分散を特定するために蛍光をモデル化することが含まれていてもよい。一般的に、カメラ利得、またはイメージングされた対象体の蛍光のモデル化に基づいて、それぞれのピクセルの分散値を吐き出すモデルを作成する複数の技術が使用可能である。
【0010】
上記の実施形態の考えられ得る実装形態では、上記の方法は、トレーニングされた畳み込みニューラルネットワークをキャプチャ画像に適用することを含んでいる。
【0011】
上記の実施形態の考えられ得る実装形態では、上記の方法は、トレーニングされた畳み込みニューラルネットワークによって生成される画像のそれぞれのピクセル確率を、統計モデルを使用して補正することと、それぞれ補正されたピクセル確率を有するそれぞれ生成されたピクセル確率の平均を取ることと、を含んでいる。
【0012】
上記の実施形態の考えられ得る実装形態では、上記の方法は、別のキャプチャ画像を受信することと、キャプチャ画像と、別のキャプチャ画像とに基づき、統計モデルを更新することと、分散モデルと比較して、更新された統計モデルの分散値または標準偏差値が減少しているか否かを特定することと、統計モデルと比較して、更新された統計モデルの分散値または標準偏差値が減少していることが特定される場合に、別のキャプチャ画像と、更新された統計モデルとに基づき、畳み込みニューラルネットワークを再トレーニングすることと、を含んでいる。したがって、畳み込みニューラルネットワークの性能は、新たな画像が取得される毎に改善可能である。
【0013】
上記の実施形態の考えられ得る実装形態では、畳み込みニューラルネットワークは、エンコーダ・デコーダニューラルネットワークである。
【0014】
本発明の実施形態では、1つまたは複数のプロセッサおよび1つまたは複数のストレージデバイスを含んでいるシステムであって、上で説明した方法を実施するように構成されているシステムが設けられている。
【0015】
上記の実施形態の考えられ得る実装形態では、システムは、顕微鏡画像を取得するために、プロセッサに接続されているイメージングデバイスを含んでいる。
【0016】
本発明の実施形態では、トレーニングされた畳み込みニューラルネットワークが設けられており、この畳み込みニューラルネットワークは、以下によって、すなわち、キャプチャ画像を受信することと、キャプチャ画像に基づいて統計ノイズモデルを生成することと、キャプチャ画像および統計モデルに基づいて畳み込みニューラルネットワークを調整することによってトレーニングされる。
【0017】
本発明の実施形態では、上で記載した方法を実施するプログラムコードを備えたコンピュータプログラムが設けられている。
【0018】
本開示は、添付の図面に関連して、以下に述べられている実施形態の記載を参照すれば、理解可能である。
【図面の簡単な説明】
【0019】
【
図1】本発明の実施形態に従って、畳み込みニューラルネットワークをトレーニングする方法を例示する図である。
【
図2】1個の画像について、グレイスケールにおけるそれぞれの値に対する分散のグラフを例示する図である。
【
図3】1000個の画像について、グレイスケールにおけるそれぞれの値に対する分散のグラフを例示する図である。
【
図4】本発明の別の実施形態に従って、畳み込みニューラルネットワークをトレーニングする方法を例示する図である。
【
図5】処理が行われる前の取得画像、例えば顕微鏡画像を示す図である。
【
図6】本発明の実施形態に従ってトレーニングされた、トレーニング済の畳み込みニューラルネットワークを使用して処理された後の画像を示す図である。
【
図7】取得画像のグラウンドトゥルースを示す図である。
【
図8】本発明の別の実施形態に従って、畳み込みニューラルネットワークをトレーニングする方法を実施するシステムを例示する図である。
【発明を実施するための形態】
【0020】
発明者によってつきとめられたのは、ノイズ除去の問題を理解する方法は、得られた画像のそれぞれのピクセルに乱数値を加える数学的な分布とともに、理想的な画像(高い信号対雑音比、SNR)を考察することにあるということである。この機能は、例えば、蛍光の場合に、ポワソン・ガウス分布を使用してモデル化可能であり、ここではポワソンノイズ(ショット雑音とも称される)が主要源である。
【0021】
情報の主要部分が画像に残っている場合、ノイズを有するピクセルの値は、それぞれのピクセルの近傍から統計的に推定可能である。それぞれのピクセルについてのガウス分布を考察すれば、平均値および分散(または標準偏差)が得られる。分散(または標準偏差)が大きいほど、ノイズは大きくかつSNRは小さくなる(すなわち、画像品質が低くなる)。
【0022】
図1には、本発明の実施形態に従って、畳み込みニューラルネットワークをトレーニングする方法が例示されている。畳み込みニューラルネットワークは、メーカによって事前トレーニングされている可能性はあるものの顧客においてそれを利用している最中にトレーニングされるオンザフライトレーニングシステムの一部を形成している。メーカによって行われる事前トレーニングには、本発明の実施形態の方法の利用が含まれていてもよい。畳み込みニューラルネットワークは、機械学習アルゴリズムまたはモデルの一形態である。
【0023】
図1では、全体で3つのステップがある。これらのステップは、トレーニング100、処理102および繰り返しのトレーニング104である。
【0024】
ステップ100では、例えば顕微鏡から画像106(すなわち顕微鏡画像)を取得する。シミュレートされたグラウンドトゥルース画像110は、取得画像106に、例えばガウシアンぼかし108を適用することによって得られる。ガウシアンぼかしとは別の選択肢には、平均化フィルタリング(例えば、平均ピクセルによる重み付け)、バイラテラルフィルタリング、NLM(non-local means)スムージング、およびBM3D(block-matching and 3D filtering)が含まれる。グラウンドトゥルース画像が存在する場合(すなわち、極めて高いピーク信号対雑音比、PSNRを有する同じ画像)、シミュレートされたグラウンドトゥルースを得なくてよいこともある。取得画像106は、シミュレートされたグラウンドトゥルース画像110と比較され、0~255のグレイスケールまたは0~65536のカラースケールにおけるそれぞれの値について、平均分散値を作成するために、それぞれのピクセル値の分散が抽出される。分散値は、取得画像106およびシミュレートされたグラウンドトゥルース画像に基づき、2次元ヒストグラムにおけるそれぞれの値を使用して特定可能である。モデル112は、次に平均分散値に適合される。このモデルは、多項式モデル、指数関数モデル、または分散値をプロットすることによって導出される他の適切な統計モデルであってもよい。分散値を特定する択一的な技術には、画像におけるカメラのカウント(すなわち利得)に基づいてノイズの分散を特定すること、または露出時間tを有する特定のフレームにおいて、予想される対象体と、得られた対象体との間の任意のノイズの分散を特定するために蛍光をモデル化することが含まれていてもよい。一般的に、カメラ利得、またはイメージングされた対象体の蛍光のモデル化に基づいて、それぞれのピクセルの分散値を吐き出すモデルを作成する複数の技術が使用可能である。
【0025】
図2には、1個の画像について、グレイスケールにおけるそれぞれの値に対する平均分散のグラフが例示されている。グラフ「1000個の画像の分散(ノイズ対グラウンドトゥルース)」において、太い実線は、理想的な統計モデルを表し、「1個の画像の、ノイズ対フェイクグラウンドトゥルースの対応する分散」のグラフにおいて、細い実線は、取得画像106と、シミュレートされたグラウンドトゥルース画像110とを比較することによって取得される値を表しており、「1個の画像の当てはめ」のグラフにおいて、破線は、「1個の画像のフェイクGT」に当てはめられた統計モデルを表す。
【0026】
図1に戻ると、キャプチャ画像106は、トリミングされているか、または複数のランダムパッチ114に分割されている。これらのパッチ114は典型的には、正方形であり、取得画像106の区画を表し、かつそれぞれのパッチは、隣接するパッチと重なり合っていてもよい。それぞれのパッチのサイズは、画像のサイズと、使用される画像処理デバイスの処理パワーとに基づいて決定され、例えば256×256ピクセルまでであってもよい。典型的なパッチで64×64ピクセルであってよく、これにより512×512ピクセル画像は、64個のパッチに分割される。いくつかのピクセルは、一様乱数分布を使用してそれぞれのランダムパッチ114から選択され、選択されたピクセルのピクセル値は、隣接ピクセルからの値によって交換または置き換えられ、これにより、交換されたピクセル値を含むキャプチャ画像118のランダムパッチが生成される。一般的に、ピクセルの1%~10%が、パッチ内で交換または置き換えられ得る。画像116は、1つのランダムパッチ114の拡大された区画を例示し、画像120は、交換されたピクセル値を含むキャプチャ画像118の1つのランダムパッチの拡大された区画を例示している。
【0027】
交換されたピクセル値を含むキャプチャ画像118のランダムパッチは、次に畳み込みニューラルネットワーク(CNN:convolutional neural network)122をトレーニングするために使用される。Resnet(例えば、resnet-18)のような他の縮小・拡大またはエンコーダ・デコーダCNNが使用可能であることは当然のことであろうが、この例では、U-netがトレーニングされる。特に、マージレイヤにおいてサブピクセル畳み込み(ピクセルシャッフル)を備えたダイナミックU-net(エンコーダresnet-18)が使用可能である。CNN122は、交換されたピクセル値を含むキャプチャ画像18のランダムパッチと、モデル112を使用して得られた分散値とに基づいてトレーニングされる。CNN122は、取得画像におけるそれぞれのピクセルが、取得画像に属する確率を最大化する(すなわち、CNN122は、取得画像におけるそれぞれのピクセルが、ノイズの結果でない確率を最大化する)。これは、以下の数式128、すなわち
【数1】
に基づいて、すべてのピクセル確率の平均の負の対数を最小化することによって達成され、ただし、nは、ランダムパッチの個数、Mは、マスクされたピクセル(すなわち、交換または置き換えられたピクセル)の個数、x
mは、
図1において124で表される、置き換えられた値を有する画像118におけるm番目のピクセル値、s
mは、
図1において126で表される、取得画像106のランダムパッチ114におけるm番目のピクセル値である。Z得点および確率は、キャプチャ画像のランダムパッチのピクセル値を使用して得られる平均値と、分散モデルから得られる分散値とを有するガウス分布から導出される。
【0028】
ステップ102では、取得画像106に対応し得る取得画像130またはその類似の画像をノイズ除去するために、トレーニングされたCNN132を適用して、ノイズ除去された画像134を得る。
【0029】
ステップ104では、新たな別の画像136を取得し、取得画像130および別の取得画像136の分散値に基づいて新たな統計モデル138を生成する。新たな統計モデル138と、ステップ100で生成された前の統計モデル112とを比較し、統計モデルにおいて任意の分散値が減少しているか否かについての決定140を行う。新たな統計モデル138において分散値が減少している場合、別の取得画像136と、新たな統計モデル138と、取得画像106のような任意の前の取得画像とを使用して、CNN132の再トレーニング142を行う。次に、別の取得画像136に、再トレーニングされたCNNを適用する。
【0030】
新たな統計モデル138において分散値が減少していない場合、さらなるトレーニングを行うことなく、CNN132に基づいて、別の取得画像136のノイズ除去144を行い、ノイズ除去された画像146を得る。
【0031】
付加的には、任意のノイズ除去された画像134、146のそれぞれのピクセル確率を見積もって補正することができ、これは、現在の統計モデルを使用してそれ自身と平均化されて行われる。
【0032】
また最新のCNNおよび統計モデルに基づいて前にノイズ除去された任意の画像の更新148を行い、前の取得画像および任意の新たな統計モデルに基づいてCNN132を再トレーニングすることが望ましいこともある。
【0033】
前の統計モデルと比較したときに、新たな統計モデルに減少が検出されなくなるまでステップ104を繰り返す。この点に関して、前のモデルと新たなモデルとの間の差分が、0±許容差(例えば、±0.1%~1%の、±0.1%~2%の、±0.1%~3%の、±0.1%~4%の、±0.1%~5%の許容差)になるまでステップ104を繰り返す。
【0034】
図3には、1000個の画像について、グレイスケールにおけるそれぞれの値に対する分散のグラフが例示されている。「1000個の画像の分散(ノイズ対グラウンドトゥルース)」のグラフにおいて、実線は、1000個の画像から得られた分散データを表しており、「1000個の画像の曲線当てはめ」のグラフにおいて、破線は、「1000個の画像の分散(ノイズ対グラウンドトゥルース)」の線に当てはめられた統計モデルを表している。例えば、1000個のイメージの後、分散はもはや減少せず、モデルはもはや更新不要であることが明らかである。しかしながら、50個の画像のような、より少ない画像も使用可能であることが理解されよう。
【0035】
上で述べた方法を実施するシステムにより、新たな次の画像が取得されるか、またはそのパラメータ(レーザ出力、取得速度、露光時間の変更など)が更新された場合、「ノイズを有する」新たな画像を評価することができる。前の統計モデルと比較して分散が減少している場合、本明細書に記載の方法を使用してこのモデルを更新することができる。したがって、画像品質は、例えば、実験の過程で繰り返して改善可能である。
【0036】
本明細書では分散値を参照したが、標準偏差値も同様に使用できることは明らかであろう。
【0037】
図4には、本発明の別の実施形態に従って、畳み込みニューラルネットワークをトレーニングする方法400が例示されている。この方法は、キャプチャ画像を受信するステップ402と、キャプチャ画像に基づいて統計ノイズモデルを生成するステップ404と、キャプチャ画像および統計モデルに基づいて畳み込みニューラルネットワークをトレーニングするステップ406と、を含んでいる。
【0038】
図5は、処理が行われる前の取得画像、例えば顕微鏡画像である。
【0039】
図6は、本発明の実施形態に従ってトレーニングされた、トレーニング済の畳み込みニューラルネットワークを使用して処理された後の画像である。
図6の画像から明らかであるのは、取得画像に対してSNRが改善されていることである。
【0040】
【0041】
図8は本明細書に記載された方法を実施するように構成されたシステム800の概略図を示している。システム800は、顕微鏡802とコンピュータシステム804とを含んでいる。顕微鏡802は、撮像するように構成されており、かつコンピュータシステム804に接続されている。コンピュータシステム804は、本明細書に記載された方法の少なくとも一部を実施するように構成されている。コンピュータシステム804は、機械学習アルゴリズムを実行するように構成されていてもよい。コンピュータシステム804と顕微鏡802は別個の存在物であってもよいが、1つの共通のハウジング内に一体化されていてもよい。コンピュータシステム804は、顕微鏡802の中央処理システムの一部であってもよく、かつ/またはコンピュータシステム804は、顕微鏡802のセンサ、アクター、カメラまたは照明ユニット等の、顕微鏡802の従属部品の一部であってもよい。
【0042】
コンピュータシステム804は、1つまたは複数のプロセッサおよび1つまたは複数のストレージデバイスを備えるローカルコンピュータデバイス(例えば、パーソナルコンピュータ、ラップトップ、タブレットコンピュータまたは携帯電話)であってもよく、または分散コンピュータシステム(例えば、ローカルクライアントおよび/または1つまたは複数のリモートサーバファームおよび/またはデータセンター等の様々な場所に分散されている1つまたは複数のプロセッサおよび1つまたは複数のストレージデバイスを備えるクラウドコンピューティングシステム816)であってもよい。コンピュータシステム804は、任意の回路または回路の組み合わせを含んでいてもよい。1つの実施形態では、コンピュータシステム804は、任意の種類のものとすることができる、1つまたは複数のプロセッサ806を含んでいてもよい。本明細書で使用されるように、プロセッサは、例えば、顕微鏡または顕微鏡部品(例えばカメラ)のマイクロプロセッサ、マイクロコントローラ、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、グラフィックプロセッサ808、デジタル信号プロセッサ(DSP)、マルチコアプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)または任意の他の種類のプロセッサまたは処理回路等のあらゆる種類の計算回路を意図していてもよいが、これらに限定されない。コンピュータシステム804に含まれ得る他の種類の回路は、カスタム回路、特定用途向け集積回路(ASIC)等であってもよく、例えばこれは、携帯電話、タブレットコンピュータ、ラップトップコンピュータ、双方向無線機および類似の電子システム等の無線装置において使用される1つまたは複数の回路(通信回路等)等である。コンピュータシステム804は、ランダムアクセスメモリ(RAM)の形態のメインメモリ等の特定の用途に適した1つまたは複数の記憶素子を含み得る1つまたは複数のストレージデバイス810、1つまたは複数のハードドライブおよび/またはコンパクトディスク(CD)、フラッシュメモリカード、デジタルビデオディスク(DVD)等のリムーバブルメディアを扱う1つまたは複数のドライブ等を含んでいてもよい。コンピュータシステム804はディスプレイ装置812、1つまたは複数のスピーカーおよびキーボードおよび/またはマウス、トラックボール、タッチスクリーン、音声認識装置を含み得るコントローラ814、またはシステムのユーザーがコンピュータシステム804に情報を入力すること、およびコンピュータシステム804から情報を受け取ることを可能にする任意の他の装置も含んでいてもよい。
【0043】
本明細書で使用されるように、用語「および/または(かつ/または)」は、関連する記載項目のうちの1つまたは複数の項目のあらゆるすべての組み合わせを含んでおり、「/」として略記されることがある。
【0044】
いくつかの態様を装置の文脈において説明してきたが、これらの態様が、対応する方法の説明も表していることが明らかであり、ここではブロックまたは装置がステップまたステップの特徴に対応している。同様に、ステップの文脈において説明された態様は、対応する装置の対応するブロックまたは項目または特徴の説明も表している。
【0045】
ステップの一部または全部は、例えば、プロセッサ、マイクロプロセッサ、プログラマブルコンピュータまたは電子回路等のハードウェア装置(またはハードウェア装置を使用すること)によって実行されてもよい。いくつかの実施形態では、極めて重要なステップのいずれか1つまたは複数が、そのような装置によって実行されてもよい。
【0046】
一定の実装要件に応じて、本発明の実施形態は、ハードウェアまたはソフトウェアで実装され得る。この実装は、非一過性の記録媒体によって実行可能であり、非一過性の記録媒体は、各方法を実施するために、プログラマブルコンピュータシステムと協働する(または協働することが可能である)、電子的に読取可能な制御信号が格納されている、デジタル記録媒体等であり、これは例えば、フロッピーディスク、DVD、ブルーレイ、CD、ROM、PROMおよびEPROM、EEPROMまたはFLASHメモリである。したがってデジタル記録媒体は、コンピュータ読取可能であってもよい。
【0047】
本発明のいくつかの実施形態は、本明細書に記載のいずれかの方法が実施されるように、プログラマブルコンピュータシステムと協働することができる、電子的に読取可能な制御信号を有するデータ担体を含んでいる。
【0048】
一般的に、本発明の実施形態は、プログラムコードを備えるコンピュータプログラム製品として実装可能であり、このプログラムコードは、コンピュータプログラム製品がコンピュータ上で実行されるときにいずれかの方法を実施するように作動する。このプログラムコードは、例えば、機械可読担体に格納されていてもよい。
【0049】
別の実施形態は、機械可読担体に格納されている、本明細書に記載のいずれかの方法を実施するためのコンピュータプログラムを含んでいる。
【0050】
したがって、換言すれば、本発明の実施形態は、コンピュータプログラムがコンピュータ上で実行されるときに本明細書に記載のいずれかの方法を実施するためのプログラムコードを有するコンピュータプログラムである。
【0051】
したがって、本発明の別の実施形態は、プロセッサによって実行されるときに本明細書に記載のいずれかの方法を実施するために、格納されているコンピュータプログラムを含んでいる記録媒体(またはデータ担体またはコンピュータ読取可能な媒体)である。データ担体、デジタル記録媒体または被記録媒体は、典型的に、有形である、かつ/または非一過性である。本発明の別の実施形態は、プロセッサと記録媒体を含んでいる、本明細書に記載されたような装置である。
【0052】
したがって、本発明の別の実施形態は、本明細書に記載のいずれかの方法を実施するためのコンピュータプログラムを表すデータストリームまたは信号シーケンスである。データストリームまたは信号シーケンスは例えば、データ通信接続、例えばインターネットを介して転送されるように構成されていてもよい。
【0053】
別の実施形態は、処理手段、例えば、本明細書に記載のいずれかの方法を実施するように構成または適合されているコンピュータまたはプログラマブルロジックデバイスを含んでいる。
【0054】
別の実施形態は、本明細書に記載のいずれかの方法を実施するために、インストールされたコンピュータプログラムを有しているコンピュータを含んでいる。
【0055】
本発明の別の実施形態は、本明細書に記載のいずれかの方法を実施するためのコンピュータプログラムを(例えば、電子的にまたは光学的に)受信機に転送するように構成されている装置またはシステムを含んでいる。受信機は、例えば、コンピュータ、モバイル機器、記憶装置等であってもよい。装置またはシステムは、例えば、コンピュータプログラムを受信機に転送するために、ファイルサーバを含んでいてもよい。
【0056】
いくつかの実施形態では、プログラマブルロジックデバイス(例えばフィールド・プログラマブル・ゲート・アレイ)が、本明細書に記載された方法の機能の一部または全部を実行するために使用されてもよい。いくつかの実施形態では、フィールド・プログラマブル・ゲート・アレイは、本明細書に記載のいずれかの方法を実施するためにマイクロプロセッサと協働してもよい。一般的に、有利には、任意のハードウェア装置によって方法が実施される。
【0057】
実施形態は、機械学習モデルまたは機械学習アルゴリズムの使用に基づいていてもよい。機械学習は、モデルおよび推論に依存する代わりに、コンピュータシステムが、明示的な命令を使用することなく、特定のタスクを実行するために使用し得るアルゴリズムおよび統計モデルを参照してもよい。例えば、機械学習では、ルールに基づくデータ変換の代わりに、過去のデータおよび/またはトレーニングデータの分析から推論されるデータ変換が使用されてもよい。例えば、画像コンテンツは、機械学習モデルを用いて、または機械学習アルゴリズムを用いて分析されてもよい。機械学習モデルが画像コンテンツを分析するために、機械学習モデルは、入力としてのトレーニング画像と出力としてのトレーニングコンテンツ情報を用いてトレーニングされてもよい。多数のトレーニング画像および/またはトレーニングシーケンス(例えば単語または文)および関連するトレーニングコンテンツ情報(例えばラベルまたは注釈)によって機械学習モデルをトレーニングすることによって、機械学習モデルは、画像コンテンツを認識することを「学習」するので、トレーニングデータに含まれていない画像コンテンツが機械学習モデルを用いて認識可能になる。同じ原理が、同じように他の種類のセンサデータに対して使用されてもよい:トレーニングセンサデータと所望の出力を用いて機械学習モデルをトレーニングすることによって、機械学習モデルは、センサデータと出力との間の変換を「学習し」、これは、機械学習モデルに提供された非トレーニングセンサデータに基づいて出力を提供するために使用可能である。提供されたデータ(例えばセンサデータ、メタデータおよび/または画像データ)は、機械学習モデルへの入力として使用される特徴ベクトルを得るために前処理されてもよい。
【0058】
機械学習モデルは、トレーニング入力データを用いてトレーニングされてもよい。上記の例は、「教師あり学習」と称されるトレーニング方法を使用する。教師あり学習では、機械学習モデルは、複数のトレーニングサンプルを用いてトレーニングされ、ここで各サンプルは複数の入力データ値と複数の所望の出力値を含んでいてもよく、すなわち各トレーニングサンプルは、所望の出力値と関連付けされている。トレーニングサンプルと所望の出力値の両方を指定することによって、機械学習モデルは、トレーニング中に、提供されたサンプルに類似する入力サンプルに基づいてどの出力値を提供するのかを「学習」する。教師あり学習の他に、半教師あり学習が使用されてもよい。半教師あり学習では、トレーニングサンプルの一部は、対応する所望の出力値を欠いている。教師あり学習は、教師あり学習アルゴリズム(例えば分類アルゴリズム、回帰アルゴリズムまたは類似度学習アルゴリズム)に基づいていてもよい。出力が、値(カテゴリー変数)の限られたセットに制限される場合、すなわち入力が値の限られたセットのうちの1つに分類される場合、分類アルゴリズムが使用されてもよい。出力が(範囲内の)任意の数値を有していてもよい場合、回帰アルゴリズムが使用されてもよい。類似度学習アルゴリズムは、分類アルゴリズムと回帰アルゴリズムの両方に類似していてもよいが、2つのオブジェクトがどの程度類似しているかまたは関係しているかを測定する類似度関数を用いた例からの学習に基づいている。教師あり学習または半教師あり学習の他に、機械学習モデルをトレーニングするために教師なし学習が使用されてもよい。教師なし学習では、入力データ(だけ)が供給される可能性があり、教師なし学習アルゴリズムは、(例えば、入力データをグループ化またはクラスタリングすること、データに共通性を見出すことによって)入力データにおいて構造を見出すために使用されてもよい。クラスタリングは、複数の入力値を含んでいる入力データを複数のサブセット(クラスター)に割り当てることであるので、同じクラスター内の入力値は1つまたは複数の(事前に定められた)類似度判断基準に従って類似しているが、別のクラスターに含まれている入力値と類似していない。
【0059】
強化学習は機械学習アルゴリズムの第3のグループである。換言すれば、強化学習は機械学習モデルをトレーニングするために使用されてもよい。強化学習では、1つまたは複数のソフトウェアアクター(「ソフトウェアエージェント」と称される)が、周囲において行動を取るようにトレーニングされる。取られた行動に基づいて、報酬が計算される。強化学習は、(報酬の増加によって明らかにされるように)累積報酬が増加し、与えられたタスクでより良くなるソフトウェアエージェントが得られるように行動を選択するように、1つまたは複数のソフトウェアエージェントをトレーニングすることに基づいている。
【0060】
さらに、いくつかの技術が、機械学習アルゴリズムの一部に適用されてもよい。例えば、特徴表現学習が使用されてもよい。換言すれば、機械学習モデルは、少なくとも部分的に特徴表現学習を用いてトレーニングされてもよい、かつ/または機械学習アルゴリズムは、特徴表現学習構成要素を含んでいてもよい。表現学習アルゴリズムと称され得る特徴表現学習アルゴリズムは、自身の入力に情報を保存するだけでなく、多くの場合、分類または予測を実行する前の前処理ステップとして、有用にするように情報の変換も行ってもよい。特徴表現学習は、例えば、主成分分析またはクラスター分析に基づいていてもよい。
【0061】
いくつかの例では、異常検知(すなわち、外れ値検知)が使用されてもよく、これは、入力またはトレーニングデータの大部分と著しく異なることによって疑念を引き起こしている入力値の識別を提供することを目的としている。換言すれば、機械学習モデルは、少なくとも部分的に異常検知を用いてトレーニングされてもよく、かつ/または機械学習アルゴリズムは、異常検知構成要素を含んでいてもよい。
【0062】
いくつかの例では、機械学習アルゴリズムは、予測モデルとして決定木を使用してもよい。換言すれば、機械学習モデルは、決定木に基づいていてもよい。決定木において、項目(例えば、入力値のセット)に関する観察は、決定木のブランチによって表されてもよく、この項目に対応する出力値は、決定木のリーフによって表されてもよい。決定木は、出力値として離散値と連続値の両方をサポートしてもよい。離散値が使用される場合、決定木は、分類木として表されてもよく、連続値が使用される場合、決定木は、回帰木として表されてもよい。
【0063】
相関ルールは、機械学習アルゴリズムにおいて使用され得る別の技術である。換言すれば、機械学習モデルは、1つまたは複数の相関ルールに基づいていてもよい。相関ルールは、大量のデータにおける変数間の関係を識別することによって作成される。機械学習アルゴリズムは、データから導出された知識を表す1つまたは複数の相関的なルールを識別してもよい、かつ/または利用してもよい。これらのルールは、例えば、知識を格納する、操作するまたは適用するために使用されてもよい。
【0064】
機械学習アルゴリズムは通常、機械学習モデルに基づいている。換言すれば、用語「機械学習アルゴリズム」は、機械学習モデルを作成する、トレーニングするまたは使用するために使用され得る命令のセットを表していてもよい。用語「機械学習モデル」は、(例えば、機械学習アルゴリズムによって実行されるトレーニングに基づいて)学習した知識を表すデータ構造および/またはルールのセットを表していてもよい。実施形態では、機械学習アルゴリズムの用法は、基礎となる1つの機械学習モデル(または基礎となる複数の機械学習モデル)の用法を意味していてもよい。機械学習モデルの用法は、機械学習モデルおよび/または機械学習モデルであるデータ構造/ルールのセットが機械学習アルゴリズムによってトレーニングされることを意味していてもよい。
【0065】
例えば、機械学習モデルは、人工ニューラルネットワーク(ANN)であってもよい。ANNは、網膜または脳において見出されるような、生物学的ニューラルネットワークによって影響を与えられるシステムである。ANNは、相互接続された複数のノードと、ノード間の、複数の接合部分、いわゆるエッジを含んでいる。通常、3種類のノードが存在しており、すなわち入力値を受け取る入力ノード、他のノードに接続されている(だけの)隠れノードおよび出力値を提供する出力ノードが存在している。各ノードは、人工ニューロンを表していてもよい。各エッジは、1つのノードから別のノードに、情報を伝達してもよい。ノードの出力は、その入力(例えば、その入力の和)の(非線形)関数として定義されてもよい。ノードの入力は、入力を提供するエッジまたはノードの「重み」に基づく関数において使用されてもよい。ノードおよび/またはエッジの重みは、学習過程において調整されてもよい。換言すれば、人工ニューラルネットワークのトレーニングは、与えられた入力に対して所望の出力を得るために、人工ニューラルネットワークのノードおよび/またはエッジの重みを調整することを含んでいてもよい。
【0066】
択一的に、機械学習モデルは、サポートベクターマシン、ランダムフォレストモデルまたは勾配ブースティングモデルであってもよい。サポートベクターマシン(すなわち、サポートベクターネットワーク)は、(例えば、分類または回帰分析において)データを分析するために使用され得る、関連する学習アルゴリズムを伴う、教師あり学習モデルである。サポートベクターマシンは、2つのカテゴリのいずれかに属する複数のトレーニング入力値を伴う入力を提供することによってトレーニングされてもよい。サポートベクターマシンは、2つのカテゴリのいずれかに新しい入力値を割り当てるようにトレーニングされてもよい。択一的に、機械学習モデルは、確率有向非巡回グラフィカルモデルであるベイジアンネットワークであってもよい。ベイジアンネットワークは、有向非巡回グラフを用いて、確率変数とその条件付き依存性のセットを表していてもよい。択一的に、機械学習モデルは、検索アルゴリズムと自然淘汰の過程を模倣した発見的方法である遺伝的アルゴリズムに基づいていてもよい。
【符号の説明】
【0067】
100 トレーニングステップ
102 処理ステップ
104 繰り返しのトレーニングステップ
106 取得画像
108 ガウシアンぼかし
110 シミュレートされたグラウンドトゥルース画像
112 統計モデル
114 ランダムパッチ
116 ランダムパッチの拡大された区画
118 交換されたピクセル値を含むキャプチャ画像
120 交換されたピクセル値を含むランダムパッチの拡大された区画
122 畳み込みニューラルネットワーク(CNN)
124 xm
126 sm
128 代表的な数式
130 取得画像
132 トレーニングされたCNN
134 ノイズ除去された画像
136 別の取得画像
138 新たな統計モデル
140 CNNを再トレーニングするか否かの決定
142 CNNの再トレーニング
144 別の取得画像のノイズ除去
146 ノイズ除去された画像
148 前にノイズ除去された任意の画像の更新およびCNNの再トレーニング
800 システム
802 顕微鏡
804 コンピュータシステム
806 1つまたは複数のプロセッサ
808 グラフィックプロセッサ
810 1つまたは複数のストレージデバイス
812 ディスプレイ装置
814 キーボードおよび/またはコントローラ
816 クラウドコンピューティングシステム
【外国語明細書】