(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024081626
(43)【公開日】2024-06-18
(54)【発明の名称】異常検知のための装置及び方法
(51)【国際特許分類】
G06F 18/2433 20230101AFI20240611BHJP
G06T 7/00 20170101ALI20240611BHJP
G06V 10/70 20220101ALI20240611BHJP
G06F 18/213 20230101ALI20240611BHJP
A61B 5/00 20060101ALI20240611BHJP
【FI】
G06F18/2433
G06T7/00 350B
G06V10/70
G06F18/213
A61B5/00 C
【審査請求】未請求
【請求項の数】13
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023205500
(22)【出願日】2023-12-05
(31)【優先権主張番号】202211559192.0
(32)【優先日】2022-12-06
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】ジャン ペンイー
(72)【発明者】
【氏名】ジャン ニー
【テーマコード(参考)】
4C117
5L096
【Fターム(参考)】
4C117XA01
4C117XB09
4C117XE17
4C117XE18
4C117XE29
4C117XE42
4C117XE44
4C117XJ33
4C117XJ34
4C117XR02
5L096EA45
5L096KA04
(57)【要約】 (修正有)
【課題】より正確に異常を検知できる異常検知のための装置及び方法を提供する。
【解決手段】方法は、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成される学習済みの異常検知モデルを取得することを含む。インスタンス特徴が低減されたサンプルは、拡散モデルに基づいて得られる。方法はまた、学習済みの異常検知モデルに検知対象データを入力して検知結果を得ることを含む。このように、拡散モデルに基づいて、異常検知モデルに学習させるための、インスタンス特徴が低減されたサンプルを得ることができ、これをインスタンス特徴サンプルとの比較に用いることにより、粒度の細かいインスタンス特徴増幅を実現することができる。したがって、異常検知のためのモデルを改善し、その結果、異常検知の精度を高めることができる。
【選択図】
図6
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサと、
コンピュータプログラム命令が格納されている少なくとも1つのメモリと、
を備える装置であって、
前記コンピュータプログラム命令は、前記少なくとも1つのプロセッサによって実行された場合に、前記装置に対し、
インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成される学習済みの異常検知モデルを取得することと、
前記学習済みの異常検知モデルに検知対象データを入力して検知結果を得ることと、
を行わせ、
前記インスタンス特徴が低減されたサンプルは、拡散モデルに基づいて得られる、
異常検知のための装置。
【請求項2】
前記コンピュータプログラム命令は、前記少なくとも1つのプロセッサによって実行された場合に、前記装置に対し、
前記拡散モデルを用いて、前記インスタンス特徴サンプルに基づいて、前記インスタンス特徴が低減されたサンプルを得ることをさらに行わせる、
請求項1に記載の装置。
【請求項3】
前記コンピュータプログラム命令は、前記少なくとも1つのプロセッサによって実行された場合に、前記装置に対し、
前記拡散モデルに入力された前記インスタンス特徴サンプルに対して、複数の時間のステップでノイズを追加することにより、前記複数の時間のステップに対応する複数のノイズサンプルを生成することと、
前記複数のノイズサンプルの中からサンプリングすることによって、前記インスタンス特徴が低減されたサンプルを得ることとを行わせる、
請求項2に記載の装置。
【請求項4】
前記コンピュータプログラム命令は、前記少なくとも1つのプロセッサによって実行された場合に、前記装置に対し、
順方向の学習プロシージャと逆方向の評価プロシージャを用いて、前記拡散モデルを生成することであって、前記順方向の学習プロシージャ期間においてノイズを追加し、前記逆方向の評価プロシージャ期間においてノイズを除去すること、をさらに行わせる、
請求項2に記載の装置。
【請求項5】
前記コンピュータプログラム命令は、前記少なくとも1つのプロセッサによって実行された場合に、前記装置に対し、
予め定義されたファミリーの第1の増強を用いて、前記インスタンス特徴サンプルに基づいて第1のサンプルを生成することと、
前記予め定義されたファミリーの第2の増強を用いて、前記インスタンス特徴サンプルに基づいて第2のサンプルを生成することと、
前記予め定義されたファミリーの第3の増強を用いて、前記インスタンス特徴が低減されたサンプルに基づいて第3のサンプルを生成することと、
前記第1のサンプルと前記第2のサンプルをクエリのキーペアとして構築し、前記第1のサンプルと前記第3のサンプルを負の知覚のキーペアとして構築することにより、特徴空間を決定することと、
前記特徴空間に基づいて、学習によって、前記学習済みの異常検知モデルを生成することとを行わせる、
請求項1に記載の装置。
【請求項6】
前記特徴空間は、
前記インスタンス特徴サンプルの第1の変換に基づいて生成された第4のサンプル、又は
前記インスタンス特徴が低減されたサンプルの第2の変換に基づいて生成された第5のサンプル
のうちの少なくとも1つにさらに基づく、
請求項5に記載の装置。
【請求項7】
前記コンピュータプログラム命令は、前記少なくとも1つのプロセッサによって実行された場合に、前記装置に対し、
補助的なソフトマックス分類器を使用して前記第1の変換と前記第2の変換をそれぞれ決定することを行わせる、
請求項6に記載の装置。
【請求項8】
前記コンピュータプログラム命令は、前記少なくとも1つのプロセッサによって実行された場合に、前記装置に対し、
異なるサンプル間の類似度に基づいて比較損失関数を決定することと、
前記比較損失関数に少なくとも基づいて、前記学習済みの異常検知モデルを生成することとを行わせる、
請求項5に記載の装置。
【請求項9】
前記検知対象データは、音声データ、心電図データ、画像、動画データ、コンピュータ断層撮影データ、又は光干渉断層撮影データのうちの少なくとも1つを含む、
請求項1に記載の装置。
【請求項10】
前記検知対象データは医療診断画像である、
請求項1に記載の装置。
【請求項11】
前記検知結果は、
前記検知対象データが異常データである確率、又は
前記検知対象データにおける異常な部分が位置する領域
のうちの少なくとも1つを示す、
請求項1に記載の装置。
【請求項12】
インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成される学習済みの異常検知モデルを取得することと、
前記学習済みの異常検知モデルに検知対象データを入力して検知結果を得ることと、
を含み、
前記インスタンス特徴が低減されたサンプルは、拡散モデルに基づいて得られる、
異常検知のための方法。
【請求項13】
処理回路を備える電子装置であって、
前記処理回路は、
インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成される学習済みの異常検知モデルを取得することと、
前記学習済みの異常検知モデルに検知対象データを入力して検知結果を得ることと、
を実行するように設定され、
前記インスタンス特徴が低減されたサンプルは、拡散モデルに基づいて得られる、
電子装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施形態は、全体的にはコンピュータの分野に関し、より具体的には、異常検知のための装置、方法、コンピュータ可読記憶媒体、及びコンピュータプログラム製品に関する。
【背景技術】
【0002】
異常検知(Anomaly detection)(することを行わせる)は、正常なデータ分布から著しく逸脱した異常データのインスタンスを検知することを目的としている。異常検知は、医療診断、不正検知、構造欠陥等、様々な分野で広く利用されている。教師ありの異常検知モデルは大量のラベル付き学習データを必要としコストが高いため、現在の一般的な異常検知モデルは、教師なし、半教師あり、弱教師ありの方法で得られている。
【0003】
しかしながら、現在の異常検知モデルは、多くの正常データを異常として検知する一方で、真であるが複雑な一部の異常データを正常として検知する。したがって、現在の異常検知モデルには検知の正確性が低いという問題が存在する。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示の例示的な実施形態によれば、より正確に異常検知を行うことができる異常検知のための装置及び方法が提供される。
【課題を解決するための手段】
【0005】
本開示の第1の態様では、異常検知のための装置が提供される。当該装置は、少なくとも1つのプロセッサと、コンピュータ命令が格納されている少なくとも1つのメモリと、を備える。前記命令は、少なくとも1つのプロセッサによって実行された場合に、当該装置に対し、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成される学習済みの異常検知モデルを取得することと、学習済みの異常検知モデルに検知対象データを入力して検知結果を得ることと、を行わせる。インスタンス特徴が低減されたサンプルは拡散モデルに基づいて得られる。
【0006】
本開示の第2の態様では、異常検知のための方法が提供される。当該方法は、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成される学習済みの異常検知モデルを取得することと、学習済みの異常検知モデルに検知対象データを入力して、検知結果を得ることと、を含む。インスタンス特徴が低減されたサンプルは拡散モデルに基づいて得られる。
【0007】
本開示の第3の態様では、コンピュータ可読記憶媒体が提供される。当該コンピュータ可読記憶媒体には、機械可読命令が格納されており、当該機械可読命令は、装置により実行された場合に、当該装置に、本開示の第2の態様に記載の方法を実行させる。
【0008】
本開示の第4の態様では、コンピュータ可読命令を含むコンピュータプログラム製品が提供される。コンピュータ可読命令は、プロセッサによって実行された場合に、本開示の第2の態様に記載の方法を実施する。
【0009】
本開示の第5の態様では、本開示の第2の態様に記載の方法を実行するように設定された処理回路又は処理回路装置を備える電子装置が提供される。
【0010】
発明の概要部分は、一連の概念を簡略化して紹介するためのものである。これらについては、以下の実施形態においてさらに説明を行う。発明の概要部分の記述は、本開示の重要又は必要な特徴を標記することを意図したものではなく、本開示の範囲を限定することも意図していない。本開示のその他の特徴は、以下の説明により容易に理解できるはずである。
【図面の簡単な説明】
【0011】
図面と結び付けて以下の詳細な説明を参照することで、本開示の各実施形態の上述及びその他の特徴、利点及び態様がさらに明らかになるはずである。図中、同一又は類似の図面符号は、同一又は類似の要素を表す。
【0012】
【
図1】本開示の実施形態にかかる例示的な環境のブロック図を示す。
【0013】
【
図2】本開示のいくつかの実施形態にかかる例示的な学習プロシージャのフローチャートの概略を示す。
【0014】
【
図3】本開示のいくつかの実施形態にかかる複数のノイズサンプルの模式図を示す。
【0015】
【
図4】本開示のいくつかの実施形態にかかる特徴空間の構築の模式図を示す。
【0016】
【
図5】本開示のいくつかの実施形態にかかるサンプル増強の間の類似度マトリックスの模式図を示す。
【0017】
【
図6】本開示のいくつかの実施形態にかかる例示的な使用プロセスのフローチャートの概略を示す。
【0018】
【
図7】本開示の実施形態を実施可能な例示的な装置のブロック図を示す。
【発明を実施するための形態】
【0019】
以下、図面を参照しつつ、本開示の実施形態についてより詳細に説明する。図には本開示のいくつかの実施形態が示されているが、理解すべき点として、本開示は様々な形式で実現することが可能であり、ここに記載された実施形態に限定されると解釈すべきではなく、これら実施形態はむしろ、本開示をより徹底的且つ完全に理解するために提供されるものである。また、本開示の図面及び実施形態は例示的なものにすぎず、本開示の保護範囲を限定するためのものではない点も、理解されなければならない。
【0020】
本開示の実施形態の説明において、「含む」及び類似の用語は開放的なもの、すなわち「…を含むが、これらに限定されない」と理解されるべきである。用語「…に基づいて」は、「少なくとも部分的に基づく」と理解されるべきである。用語「1つの実施形態」又は「当該実施形態」は、「少なくとも1つの実施形態」と理解されるべきである。用語「第1」、「第2」等は、異なるか又は同一の対象を示してもよい。以下の文中ではさらに、その他の明確な定義及び暗黙の定義が含まれる可能性がある。
【0021】
本開示の実施形態で説明する個々の方法及びプロセスは、端末装置、ネットワーク装置等の様々な電子装置に適用してもよい。また、本開示の実施形態は、信号発生器、シグナルアナライザ、スペクトラムアナライザ、ネットワークアナライザ、テスト端末装置、テストネットワーク装置、チャネルエミュレータ等のテスト装置において実行されてもよい。
【0022】
本開示の実施形態の説明において、「回路」という用語は、ハードウェア回路及び/又はハードウェア回路とソフトウェアとの組合せを指してもよい。例えば、回路は、アナログ及び/又はデジタルのハードウェア回路とソフトウェア/ファームウェアとの組合せであってもよい。別の例として回路は、ソフトウェアを備えたハードウェアプロセッサのいずれかの部分であってもよい。ハードウェアプロセッサは(複数の)デジタル信号処理器、ソフトウェア、及び(複数の)メモリを備え、(複数の)デジタル信号処理器、ソフトウェア、及び(複数の)メモリが協働することで、例えばコンピューティングデバイスのような装置が動作して様々な機能を実行することが可能になる。さらに別の例で回路は、マイクロプロセッサ又はマイクロプロセッサの一部等のハードウェア回路及び/又はプロセッサであってもよく、操作のためにソフトウェア/ファームウェアを必要とするが、操作にソフトウェアが必要とされない場合にはソフトウェアはなくてもよい。文中で使用される「回路」という用語には、ハードウェア回路若しくは(複数の)プロセッサのみの実装、又は、ハードウェア回路若しくは(複数の)プロセッサの一部にそれ(若しくはそれら)に付随するソフトウェア及び/若しくはファームウェアを加えた実装も含まれる。
【0023】
異常検知は、外れ値(outlier)検知、新規性(novelty)検知、分布外(Out-of-distribution)検知、ノイズ検知、偏差検知、例外検知、又はその他の名称等で称されてもよく、機械学習の重要な技術分野であり、コンピュータビジョン、データマイニング、自然言語処理等、人工知能(AI:Artificial Intelligence)に関わる様々なアプリケーションで広く使用されている。異常検知は、正常ではない状況を識別し、非論理的なデータをマイニングする技術として理解することができ、その目的は、正常なデータ分布から著しく逸脱した異常データのインスタンスを検知することである。
【0024】
異常検知は、医療診断、不正検知、構造欠陥等、様々な分野で広く利用されている。例えば、医用画像が異常データか否かを検知することで、医師の診断や治療を補助することができる。例えば、銀行カードのカード読み取り行為に対応するデータが異常データか否かを検知することで、特殊詐欺の有無を判定することができる。例えば、交通監視ビデオに異常データが存在するか否かを検知することで、ドライバの違反行為の有無を判定することができる。
【0025】
異常データには、正常なデータとは異なる特徴パターンが含まれ、いくつかの研究では、対照学習法を用いることで、これらの異なる特徴パターンを表してきた。医療診断のような医療での異常検知では、異常データに、例えば腫瘍、出血等の特徴パターンが含まれる可能性があるが、インスタンスごとに追加されるこうした特徴パターンによって、対照学習法を用いた場合の性能が低下する。言い換えれば、対照学習法では医療における病理学的な特徴を効果的に学習することができない。したがって、対照学習法を用いる場合には正確かつ効果的に異常検知を行うことができない。
【0026】
これに鑑み、本開示の実施形態は、上述の問題及び/又は他の潜在的な問題のうち1つ又は複数を解決するために、異常検知のための解決手段を提供する。この解決手段では、異常検知のためのモデルを、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成することができる。ここで、インスタンス特徴が低減されたサンプルは、拡散モデルに基づいて得られる。このように、意味を保留しつつインスタンス特徴が低減されたサンプルを、インスタンス特徴サンプルとの比較に用いることにより、粒度の細かいインスタンス特徴増幅を実現することができる。したがって、異常検知のためのモデルを改善し、その結果、異常検知の精度を高めることができる。
【0027】
図1は、本開示の実施形態にかかる例示的な環境100のブロック図を示す。
図1に示す環境100は、本開示の実施形態を実現可能な1つの例示にすぎず、本開示の範囲を限定することを意図していないことを理解されたい。本開示の実施形態は、他のシステム又はアーキテクチャにも同様に適用される。
【0028】
図1に示すように、環境100は、コンピューティングデバイス110を備えてもよい。コンピューティングデバイス110は、計算能力を有する任意の装置であってよい。コンピューティングデバイス110は、パーソナルコンピュータ、サーバコンピュータ、携帯又はラップトップ型装置、モバイル装置(携帯電話、パーソナルデジタルアシスタントPDA、メディアプレーヤ等)、ウェアラブル装置、家庭用電気製品、ミニコンピュータ、メインフレーム、分散コンピューティングシステム、クラウドコンピューティングリソース等を含み得るが、これらに限定されない。コスト等の要素を考慮した上で、コンピューティングデバイス110は、モデル学習用の十分な計算力のリソースをさらに有してもよく、又は有しなくてもよいことを理解されたい。
【0029】
コンピューティングデバイス110は、検知対象データ120を取得し、検知結果140を出力するように設定されてもよい。検知結果140に関する決定は、学習済みの異常検知モデル130によって実施されてもよい。
【0030】
検知対象データ120は、ユーザによって入力されてもよく、又は記憶装置から取得されてもよく、本開示はこの点について限定しない。
【0031】
検知対象データ120は、実際の必要に基づいて決定されてもよく、検知対象データ120は様々な種類を有してもよく、本開示はこの点について限定しない。例示として、検知対象データ120は、音声データ、心電図(ECG:Electro Cardio Graph)データ、脳電図(EEG:Electro Encephalo Graph)データ、画像データ、ビデオデータ、点群データ、又はボリューム(volume又はvolumetric)データのいずれかのカテゴリに属してもよい。任意で、ボリュームデータは例えば、コンピュータ断層撮影(CT:Computer Tomography)データ、又は光干渉断層撮影(OCT:Optical Computer Tomography)データであってもよい。
【0032】
別の理解として、検知対象データ120は、音声、ECGデータ、又はEEGデータといった生体電気信号等の1次元データであってもよい。検知対象データ120は、画像(image)等の2次元データであってもよい。検知対象データ120は、動画等の2.5次元データであってもよい。検知対象データ120は、動画等の3次元データ、例えばCT、OCTデータ等のボリュームデータ等であってもよい。理解できるように、本開示における検知対象データ120の種類の説明は、あくまで例示にすぎず、実際のシナリオでは他の種類であってもよい。本開示はこの点について限定しない。
【0033】
検知結果140は、検知対象データ120の属性を示してもよく、具体的には、検知対象データ120が異常データであるか否かを示してもよい。
【0034】
いくつかの例示において、本開示の実施形態は、様々な異なる分野に適用されてもよい。例を挙げると、本開示の実施形態は医療分野に適用されてもよく、検知対象データ120はECGデータ、EGGデータ、CTデータ、OCTデータ等であってもよい。ここで挙げたシナリオは単に説明のためのものであり、本開示の範囲を何ら限定するものではないことを理解されたい。本開示の実施形態は、同様の問題が存在する様々な分野に適用してもよく、ここでは逐一列挙しない。また、本開示の実施形態における「検知」は、例えば「識別」等と称されてもよく、この点について本開示は限定しない。
【0035】
いくつかの実施形態において、上述のプロセスを実施する前に異常検知モデル130に学習させてもよい。コンピューティングデバイス110によって、又はコンピューティングデバイス110外部の任意の他の適切な装置によって、異常検知モデル130に学習させてもよいことを理解されたい。学習済みの異常検知モデル130は、コンピューティングデバイス110に配置されてもよく、又はコンピューティングデバイス110の外部に配置されてもよい。以下、コンピューティングデバイス110が異常検知モデル130に学習させる場合を例に、
図2を参照しながら例示的な学習プロシージャを説明する。
【0036】
図2は、本開示の実施形態にかかる例示的な学習プロシージャ200のフローチャートを示す。例えば、方法200は、
図1に示すコンピューティングデバイス110によって実行されてもよい。理解すべき点として、方法200はさらに、図示されていない付加的ブロックを含んでもよく、且つ/又は示されたいくつかのブロックを省略してもよい。本開示の範囲は、この点において限定されない。
【0037】
ブロック210において、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて特徴空間を決定する。ブロック220において、特徴空間に基づいて、学習によって、学習済みの異常検知モデルを生成する。
【0038】
いくつかの例示的な実施形態において、拡散モデルを用いて、インスタンス特徴サンプルに基づいて、インスタンス特徴が低減されたサンプルを得てもよい。具体的には、拡散モデルに入力されたインスタンス特徴サンプルに対して、複数の時間のステップでノイズを追加することにより、複数の時間のステップに対応する複数のノイズサンプルを生成してもよい。さらに、複数のノイズサンプルの中からサンプリングすることによって、インスタンス特徴が低減されたサンプルを得てもよい。任意で、本開示の実施形態における、インスタンス特徴が低減されたサンプルを拡散モデルに基づいて得るプロセスは、マイナス方向の拡散と称され得る。例示として、インスタンス特徴が低減されたサンプルは、インスタンス特徴が部分的に消去されたサンプル、又は他の名称で称されてもよく、本開示はこれについて限定しない。
【0039】
いくつかの例示において、複数の時間のステップの総数がTで、Tが正の整数であると仮定する。この場合、時間のステップが増加するにつれて、生成された複数のノイズサンプルは、ノイズサンプルシーケンスを構成してもよい。一例として、
図3は、本開示のいくつかの実施形態にかかる複数のノイズサンプル300の模式図を示す。
図3に示すように、インスタンス特徴サンプル310に対して、ノイズを追加することによって、複数のノイズサンプル320-1、…、320-t、…、320-Tを生成してもよい。ここで、ノイズサンプル320-Tは純粋なノイズである。
【0040】
例示として、ノイズサンプル320-1~320-Tからサンプリングし、インスタンス特徴が低減されたサンプルを得てもよく、例えば、ノイズサンプル330を、インスタンス特徴が低減されたサンプルとしてもよい。注意すべき点として、
図3に示すインスタンス特徴サンプル310は例示にすぎず、実際のシナリオでは、例えば画像等の他の形式であってもよい。
【0041】
本開示のいくつかの例示的な実施形態では、事前学習によって拡散モデルを生成してもよい。いくつかの例示では、順方向の学習プロシージャと逆方向の評価プロシージャを用いて、拡散モデルを生成してもよい。例示として、順方向の学習プロシージャ期間においてノイズを追加し、逆方向の評価プロシージャ期間においてノイズを除去する。具体的には、順方向の学習プロシージャでは、インスタンス特徴サンプルをベースに徐々にノイズを追加することによって純粋なノイズを得てもよい。逆方向の学習プロシージャでは、純粋なノイズをベースに徐々にノイズを除去することによってインスタンス特徴サンプルを回復させてもよい。
【0042】
例を挙げると、インスタンス特徴サンプルをx
0と表してもよく、ノイズサンプルはx
t(t=1,2,…,T)と表され、x
Tは純粋なノイズを表す。順方向の学習プロシージャは、順方向のノイズプロセス(qと表す)と称してもよく、以下の式(1)と(2)として表してもよい。逆方向の評価プロシージャは、逆方向のノイズ除去プロセス(pと表す)と称してもよく、以下の式(3)として表してもよい。
【数1】
【数2】
【数3】
【0043】
上記の(1)~(3)において、Nはノイズ関数、βtは追加されるノイズ、Iは単位テンソル(unit tensor)、θは逆方向の評価プロシージャにおけるハイパーパラメータ、μθ()とΣθ()は逆方向のノイズ除去プロセスで用いられる所定の関数である。
【0044】
本開示のいくつかの実施形態では、予め定義されたファミリーの第1の増強を用いて、インスタンス特徴サンプルに基づいて第1のサンプルを生成し、予め定義されたファミリーの第2の増強を用いて、インスタンス特徴サンプルに基づいて第2のサンプルを生成し、予め定義されたファミリーの第3の増強を用いて、インスタンス特徴が低減されたサンプルに基づいて第3のサンプルを生成し、第1のサンプルと第2のサンプルをクエリのキーペアとして構築し、第1のサンプルと第3のサンプルを負の知覚のキーペアとして構築することにより、特徴空間を決定してもよい。
【0045】
いくつかの例示において、予め定義されたファミリーには、複数の増強が含まれてもよく、例えばいずれか1つの増強は、Tkと表されてもよく、kは正の整数である。例を挙げると、第1の増強、第2の増強、第3の増強はそれぞれ、T1,T2,T3と表される。別のいくつかの実施形態において、説明しやすくするために、予め定義されたファミリーの複数の増強には、TkとAkが含まれてもよい。ここでTkは、インスタンス特徴サンプルに加えられる増強を表し、Akは、インスタンス特徴が低減されたサンプルに加えられる増強を表す。例示として、増強は増幅又は他の名称で称されてもよく、本開示はこれに限定されない。
【0046】
いくつかの例示において、クエリのキーペア及び/又は負の知覚のキーペアは、サンプル間の類似度によって表されてもよい。負の知覚のキーペアによって、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとの間の差異を強調又は具体化することができる。
【0047】
任意で、インスタンス特徴サンプルは正のサンプルであり、インスタンス特徴が低減されたサンプルは負のサンプルであってもよい。正のサンプルの2つの異なる増強の間で、正のサンプルのペアを構成してもよく、一方、正のサンプルの増強と負のサンプルの増強との間で、負のサンプルのペアを構成してもよい。
【0048】
本開示のいくつかの実施形態では、インスタンス特徴サンプル及び/又はインスタンス特徴が低減されたサンプルの変換を考慮し、さらにその変換に基づいて特徴空間を決定してもよい。例を挙げると、特徴空間はさらに、第4のサンプル及び/又は第5のサンプルに基づく。ここで、第4のサンプルは、インスタンス特徴サンプルの第1の変換に基づいて生成され、第5のサンプルは、インスタンス特徴が低減されたサンプルの第2の変換に基づいて生成される。例を挙げると、いずれかの変換はyS∈Sと表してもよく、ここで、S:={I,S1,…,SK-1}は変換空間を表す。例示として、変換に基づいて得られるサンプルは、負のサンプルであってもよい。
【0049】
追加で、又は任意で、補助的なソフトマックス(softmax)分類器を使用して、第1の変換と第2の変換をそれぞれ決定してもよい。言い換えれば、任意の与えられた入力xに対して、補助的なソフトマックス分類器(例えばFと表される)を使用して、どの変換を適用するかを予測してもよい。こうすることで、より細かい粒度で特徴増幅を実施してもよい。これは、例えば次の式(4)によって実施してもよい。
【数4】
【0050】
いくつかの例示において、サンプルのタイプが画像であると仮定すると、任意で、変換は、例えば90度、180度、270度、又は他の度数の時計回り(又は反時計回り)の回転等、画像の回転として実施されてもよい。例を挙げると、インスタンス特徴サンプルに第1の変換を行い、その後、第1の増強を用いて、第4のサンプルを生成してもよい。第1のサンプルをT1(m,rot 0°)と表し、第4のサンプルをT1(m,rot 90°)と表す仮定する。ここで、mはインスタンス特徴サンプルを表し、rot 0°は未変換を表し、rot 90°は90度回転に変換されることを表す。
【0051】
図4は、本開示のいくつかの実施形態にかかる特徴空間400の構築の模式図を示す。
図4に示すように、410において拡散モデルに事前に学習させてもよい。420において、順方向の拡散に基づいて、任意の時間のステップでのノイズサンプルを決定してもよい。例えば、
図4は、t=0、t=50、t=100、t=200での各4つのノイズサンプルをそれぞれ示す。430において、特徴空間431に基づいて異常検知モデルに学習させてもよい。図示されているように、インスタンス特徴サンプルは例えばmと表され、サンプリングされた、インスタンス特徴が低減されたサンプルは例えばm
tと表され、さらに90度、180度、270度等の回転の変換が示されている。
【0052】
図5は、本開示のいくつかの実施形態にかかるサンプル増強の間の類似度マトリックス500の模式図を示す。
図5において、x
1とx
2は2つの異なるインスタンス特徴サンプルを表し、(x
1,t)と(x
2,t)は拡散モデルに基づくノイズサンプル、すなわちインスタンス特徴が低減されたサンプルをそれぞれ表す。T
0とT
0’は、インスタンス特徴サンプルに加えられた2つの増強を表し、T
1とT
1’は、インスタンス特徴サンプルに加えられ同じ回転を適用した2つの増強を表し、A
0とA
1は、インスタンス特徴が低減されたサンプルに加えられた2つの増強を表す。
【0053】
図5の黒枠は、対応する正のサンプルのペアを表し、すなわち類似度が大きいことを表す。灰色の枠は、対応する正負のサンプルのペアを表し、すなわち類似度が小さいことを表す。
【0054】
本開示のいくつかの実施形態では、異常検知モデルに学習させる過程で、総損失関数を構築し、当該総損失関数に基づいて、学習が完了したか否か判定してもよい。例示として、総損失関数は、異なるサンプル間の類似度に基づいて決定される比較損失関数に少なくとも基づく。
【0055】
いくつかの例示において、比較損失関数は、L
conとして表されてもよく、次の式(5)によって決定される。
【数5】
ここで、式(5)は以下の式(6)~(8)に基づいて決定される。
【数6】
【数7】
【数8】
【0056】
式(5)~(8)において、Bはバッチ(batch)の大きさを表し、N=Bである。logは自然対数を表し、expは自然指数を表し、simはコサイン類似度を表す。{x+}と{x-}は1セットの正負のサンプルを表し、|{x+}|は{x+}のベースを表す。Zは、モデルの比較層の出力特徴を表し、例えばエンコーダによって実現され、z(x)=fθ(x)である。Tは温度のハイパーパラメータを表す。理解できるように、3N個のサンプルのうち、例えば最後のN個のサンプルは、拡散モデルに基づいて生成されたものである。
【0057】
比較損失関数の説明から分かるように、本解決手段では、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとの間の差異を増強又は増幅しており、したがって、比較損失関数を、負の知覚の比較損失関数と称され得る。
【0058】
追加で、又は任意で、分類オフセット損失関数をさらに決定してもよく、例えばL
clsと表される。そして、比較損失関数と分類オフセット損失関数の両方に基づいて、L
CFAと表される総損失関数を決定してもよい。例えば、以下の式(9)と式(10)によって、分類オフセット損失関数と総損失関数を決定してもよい。
【数9】
【数10】
【0059】
式(9)と式(10)において、pcls(yS|x)は補助的なソフトマックス分類器を表し、λ>0はバランスハイパーパラメータであり、例えば、λ=1である。
【0060】
このように、
図2~
図5を参照した上述の実施形態により、学習によって、学習済みの異常検知モデルを生成してもよい。当該モデルによって、例えば、比較層の特徴出力を得て、cと表すと仮定してもよい。追加で、又は任意で、本開示の実施形態では、異常検知のためのスコア関数をさらに定義し、これによって、学習済みの異常検知モデルに入力されたデータが異常であるか否か判定してもよい。
【0061】
いくつかの実施形態において、特徴表現を比べるための検知スコア
Sconと、補助的なソフトマックス分類器(すなわち、変換)を用いた分類オフセットスコア
Sclsとを定義し、さらに検知スコアと分類オフセットスコアに基づいて合計スコアsを決定してもよい。例えば、それぞれ、以下の式(11)~(13)のように表してもよい。
【数11】
【数12】
【数13】
【0062】
例示として、W
Sは、補助的なソフトマックス分類器の線形層の重みベクトルを表す。さらに、
である。
【0063】
このようにして、本開示の実施形態は、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づく異常検知モデルを提供する。この異常検知モデルでは、負の拡散及び負の知覚の対照損失と組み合わせて、粒度の細かい異常検知を行うことができる。いくつかの例示では、対照特徴増幅器(CFA:contrastive feature amplifier)と称され得る。拡散モデルを用い、特徴増幅器を導入することで、意味が保留されつつインスタンスの判別特徴が低減されたサンプルを生成することができる。生成された、インスタンス特徴が低減されたサンプルを、インスタンス特徴サンプルと比較することで、粒度がより細かいインスタンス特徴を表すことができる。本開示で提案する異常検知モデルにより、比較に基づいた異常検知の性能を向上させることができる。
【0064】
以上、
図2~
図5を参照して異常検知モデル130の例示的な学習プロシージャについて説明した。この学習済みの異常検知モデル130により、当該モデルに入力されたデータが異常データであるか否かをより正確に検知することができる。以下、
図6と結び付けて、異常検知モデル130の例示的な使用プロセスについて説明する。
【0065】
図6は、本開示の実施形態にかかる例示的な使用プロセス600のフローチャートを示す。例えば、方法600は、
図1に示すコンピューティングデバイス110によって実行することができる。理解すべき点として、方法600はさらに、示されていない付加的ブロックを含んでもよく、且つ/又は示されたいくつかのブロックを省略してもよい。本開示の範囲は、この点において限定されない。
【0066】
ブロック610において、学習済みの異常検知モデルを取得する。当該学習済みの異常検知モデルは、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成され、インスタンス特徴が低減されたサンプルは拡散モデルに基づいて得られる。ブロック620において、学習済みの異常検知モデルに検知対象データを入力して、検知結果を得る。
【0067】
理解できるように、学習済みの異常検知モデルは、
図2~
図5に示すような学習プロシージャを通じた学習で得られたものであってもよい。
【0068】
本開示の実施形態において、検知対象データは、ユーザによって入力されてもよく、又は記憶装置から取得されてもよい。検知対象データは、音声データ、ECGデータ、EEGデータ、画像データ、動画データ、点群データ、又はボリュームデータのいずれかのカテゴリに属してもよい。任意で、ボリュームデータは例えば、CTデータ又はOCTデータ等であってもよい。
【0069】
任意で、
図6に示すように、ブロック630において検知結果を出力することをさらに含んでもよい。いくつかの例示的な実施形態において、検知結果は、検知対象データが異常データ(又は正常データ)である確率を示してもよい。例えば、確率閾値を予め設定しておき、検知対象データが異常データである確率が確率閾値より大きい(又は等しい)ことを検知結果が示す場合に、当該検知対象データが異常データであると判定してもよい。いくつかの例示的な実施形態において、検知結果は、検知対象データの異常な部分が位置する領域を示してもよい。例を挙げると、検知対象データが異常データであると判定した場合、任意で、異常な部分が位置する領域をさらに表示してもよく、例えば、異常な部分が位置する領域を、バウンディングボックス(bounding box)でマークし、これを異常領域と称され得る。
【0070】
いくつかの例示において、検知対象データが異常データである確率は、0と1の間の値であってもよく、代替的に、検知対象データが異常データである確率は、上述のように合計スコアとして表されてもよい。
【0071】
1つの例示として、医療の異常検知のシナリオでは、検知対象データは超音波画像等の医療診断画像であってもよい。したがって、出力結果は、超音波画像の特定の領域に表示された、当該超音波画像が異常データである確率を含んでもよい。任意で、異常データである場合、出力結果は、超音波画像上で例えばバウンディングボックスによって区画された異常領域をさらに含む。例えば、超音波画像における腫瘍のある領域が異常領域として画定される。
【0072】
本開示の実施形態の異常検知モデルを使用することにより、複数の医療データセットにおいて異常検知を行うことができ、さらには曲線下の面積(AUC:area under the curve)が改善され、医療の異常検知の性能が大幅に向上する。
【0073】
このように、本開示の実施形態は異常検知モデルを提供する。当該異常検知モデルは、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとの比較に基づいて、より細かい粒度のインスタンス特徴を増幅することができる。したがって、異常検知のためのモデルを改善し、その結果、異常検知の精度を高めることができる。
【0074】
いくつかの実施形態において、コンピューティングデバイスは、以下の操作を実行するように設定された回路を備える。当該操作とは、学習済みの異常検知モデルを取得し、学習済みの異常検知モデルに検知対象データを入力して、検知結果を得ることである。学習済みの異常検知モデルは、インスタンス特徴サンプルと、インスタンス特徴が低減されたサンプルとに基づいて生成され、インスタンス特徴が低減されたサンプルは拡散モデルに基づいて得られる。
【0075】
いくつかの実施形態において、コンピューティングデバイスは、以下の操作を実行するように設定された回路を備える。当該操作とは、拡散モデルを用いて、インスタンス特徴サンプルに基づいて、インスタンス特徴が低減されたサンプルを得ることである。
【0076】
いくつかの実施形態において、コンピューティングデバイスは、以下の操作を実行するように設定された回路を備える。当該操作とは、拡散モデルに入力されたインスタンス特徴サンプルに対して、複数の時間のステップでノイズを追加することにより、複数の時間のステップに対応する複数のノイズサンプルを生成し、複数のノイズサンプルの中からサンプリングすることによって、インスタンス特徴が低減されたサンプルを得ることである。
【0077】
いくつかの実施形態において、コンピューティングデバイスは、以下の操作を実行するように設定された回路を備える。当該操作とは、順方向の学習プロシージャと逆方向の評価プロシージャを用いて、拡散モデルを生成することである。ここで、順方向の学習プロシージャ期間においてノイズを追加し、逆方向の評価プロシージャ期間においてノイズを除去する。
【0078】
いくつかの実施形態において、コンピューティングデバイスは、以下の操作を実行するように設定された回路を備える。当該操作とは、予め定義されたファミリーの第1の増強を用いて、インスタンス特徴サンプルに基づいて第1のサンプルを生成し、予め定義されたファミリーの第2の増強を用いて、インスタンス特徴サンプルに基づいて第2のサンプルを生成し、予め定義されたファミリーの第3の増強を用いて、インスタンス特徴が低減されたサンプルに基づいて第3のサンプルを生成し、第1のサンプルと第2のサンプルをクエリのキーペアとして構築し、第1のサンプルと第3のサンプルを負の知覚のキーペアとして構築することにより、特徴空間を決定し、特徴空間に基づいて、学習によって、学習済みの異常検知モデルを生成することである。
【0079】
いくつかの実施形態において、特徴空間はさらに、インスタンス特徴サンプルの第1の変換に基づいて生成された第4のサンプル、又は、インスタンス特徴が低減されたサンプルの第2の変換に基づいて生成された第5のサンプルのうちの少なくとも1つに基づく。
【0080】
いくつかの実施形態において、コンピューティングデバイスは、以下の操作を実行するように設定された回路を備える。当該操作とは、補助的なソフトマックス分類器を使用して第1の変換と第2の変換をそれぞれ決定することである。
【0081】
いくつかの実施形態において、コンピューティングデバイスは、以下の操作を実行するように設定された回路を備える。当該操作とは、異なるサンプル間の類似度に基づいて比較損失関数を決定し、比較損失関数に少なくとも基づいて、学習済みの異常検知モデルを生成することである。
【0082】
いくつかの実施形態において、検知対象データは、音声データ、心電図データ、画像、動画データ、コンピュータ断層撮影データ、又は光干渉断層撮影データのうちの少なくとも1つを含む。
【0083】
いくつかの実施形態において、検知対象データは医療診断画像である。
【0084】
いくつかの実施形態において、検知結果は、検知対象データが異常データである確率、又は検知対象データにおける異常な部分が位置する領域のうちの少なくとも1つを示す。
【0085】
図7は、本開示の実施形態を実施可能な例示的な装置700のブロック模式図を示す。例えば、
図1に示すコンピューティングデバイス110は、装置700によって実現されてもよい。図に示すように、装置700は、中央プロセッサユニット(CPU:Central Processing Unit)701を備える。CPU701は、リードオンリーメモリ(ROM:Read-Only Memory)702に格納されたコンピュータプログラム命令、又は記憶ユニット708からランダムアクセスメモリ(RAM:Random Access Memory)703にロードされたコンピュータプログラム命令に基づき、各種の適切な動作及び処理を実行してもよい。RAM703にはさらに、装置700の操作に必要な各種プログラム及びデータが格納されてもよい。CPU701、ROM702及びRAM703はバス704を介して互いに接続されている。バス704には、入力/出力(I/O:Input/Output)インタフェース705も接続されている。
【0086】
装置700における複数の部材は、I/Oインターフェース705に接続されている。複数の部材には、キーボード、マウス等の入力ユニット706、様々な種類のディスプレイ、スピーカ等の出力ユニット707、磁気ディスク、光ディスク等の記憶ユニット708、及びネットワーク・インターフェース・カード、モデム、無線通信送受信機等の通信ユニット709が含まれる。通信ユニット709によって、装置700は、インターネットのようなコンピュータネットワーク及び/又は各種電信ネットワークを介して、他の装置と情報/データを交換してもよい。理解すべき点として、本開示では、出力ユニット707を使用して、ユーザ満足度のリアルタイムの動的変化に関する情報、満足度に関するユーザグループ又は個別ユーザのキーファクター特定情報、最適化戦略に関する情報、及び戦略実施効果の評価に関する情報等を表示してもよい。
【0087】
プロセッサユニット701は、1つ又は複数の処理回路によって実現してもよい。プロセッサユニット701は、上述した各プロセス及び処理を実行するように設定されてもよい。例えば、いくつかの実施形態において、前述のプロセスは、コンピュータソフトウェアプログラムとして実現可能であり、記憶ユニット708のような機械可読媒体に有形記憶されている。いくつかの実施形態において、コンピュータプログラムの一部又は全部は、ROM702及び/又は通信ユニット709を経由して装置700にロード及び/又はインストールされてもよい。コンピュータプログラムがRAM703にロードされCPU701により実行されると、上述したプロセスのうちの1つ又は複数のステップを実行することができる。
【0088】
本開示は、システム、方法、及び/又はコンピュータプログラム製品として実現してもよい。コンピュータプログラム製品は、本開示の各態様を実行するためのコンピュータ可読プログラム命令が格納されたコンピュータ可読記憶媒体を備えてもよい。
【0089】
コンピュータ可読記憶媒体は、命令を実行する装置により使用される命令を保持し格納することができる有形の装置とし得る。コンピュータ可読記憶媒体は、例えば、電気記憶装置、磁気記憶装置、光記憶装置、電磁気記憶装置、半導体記憶装置又は上述の任意の適切な組合せであり得るが、これらに限られない。コンピュータ可読記憶媒体のより具体的な例には(全てではない)、ポータブル・コンピュータ・ディスク、ハードディスク、ランダムアクセスメモリ、リードオンリーメモリ、消去・書き込み可能なリードオンリーメモリ(EPROM(Erasable Programmable Read-Only Memory)又はフラッシュメモリ)、スタティックRAM(SRAM:Static Random Access Memory)、携帯型コンパクトディスクリードオンリーメモリ(CD-ROM:Compact Disc Read-Only Memory)、デジタル多用途ディスク(DVD:Digital Versatile Disc)、メモリースティック、フロッピーディスク、機械的エンコーダ、例えば命令が格納されているパンチカード又は溝内の突起構造、及び上述の任意の適切な組合せが含まれる。ここで使用されるコンピュータ可読記憶媒体は、例えば無線電波若しくは他の自由伝播する電磁波、導波若しくは他の送信媒体を介して伝播する電磁波(例えば、光ケーブルを介する光パルス)、又は電線で送信される電気信号のような、瞬時の信号そのものであるとは解釈されない。
【0090】
ここで説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各計算/処理装置にダウンロードされてもよく、又は、ネットワーク、例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワーク及び/若しくは無線ネットワークを介して外部のコンピュータ若しくは外部記憶装置にダウンロードされてもよい。ネットワークは、銅線送信ケーブル、光ケーブル送信、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び/又はエッジサーバを備えてもよい。各計算/処理装置におけるネットワークインターフェースカード又はネットワークインターフェースは、コンピュータ可読プログラム命令をネットワークから受信し、当該コンピュータ可読プログラム命令を転送し、各計算/処理装置のコンピュータ可読記憶媒体に格納されるようにする。
【0091】
本開示の操作を実行するためのコンピュータプログラム命令は、アセンブラ指示文、命令セットアーキテクチャ(ISA:Instruction Set Architecture)、機械語命令、機械関連命令、マイクロコード、ファームウェア命令、状態設定データ、又は、1種類若しくは複数種類のプログラミング言語の任意の組合せで記述されたソースコード若しくは対象コードであり得る。前記プログラミング言語は、Smalltalk、C++等のオブジェクト指向のプログラミング言語、及び、「C」言語又は類似のプログラミング語言のような一般的なプロセス式プログラミング言語を含む。コンピュータ可読プログラム命令は、全てユーザコンピュータ上で実行してもよいし、部分的にユーザコンピュータ上で実行してもよいし、1つの独立したソフトウェアパッケージとして実行してもよいし、ユーザコンピュータ上で部分的に実行するとともにリモートコンピュータ上で部分的に実行してもよいし、或いは、全てリモートコンピュータ又はサーバ上で実行してもよい。リモートコンピュータにかかる状況において、リモートコンピュータは、ローカルエリアネットワーク(LAN:Local Area Network)又はワイドエリアネットワーク(WAN:Wide Area Network)を含む任意の種類のネットワークを介して、ユーザコンピュータに接続してもよく、又は、外部のコンピュータに接続してもよい(例えばインターネットサービスプロバイダを利用しインターネットを介して接続する)。いくつかの実施形態では、コンピュータ可読プログラム命令のステータス情報を用いて、例えばプログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA:Field Programmable Gate Array)又はプログラマブルロジックアレイ(PLA:Programmable Logic Array)のような電子回路をパーソナライズしてもよい。当該電子回路は、コンピュータ可読プログラム命令を実行することで、本開示の各態様を実現してもよい。
【0092】
ここでは、本開示の実施形態にかかる方法、装置(システム)及びコンピュータプログラム製品のフローチャート及び/又はブロック図を参照して、本開示の各態様を説明した。理解すべき点として、フローチャート及び/又はブロック図の各ブロック並びにフローチャート及び/又はブロック図の各ブロックの組合せは、いずれも、コンピュータ可読プログラム命令により実現してもよい。
【0093】
これらのコンピュータ可読プログラム命令は、汎用コンピュータ、専用コンピュータ又は他のプログラミング可能なデータ処理装置のプロセッサユニットに提供されて、マシンを生成してもよく、これらの命令がコンピュータ又は他のプログラミング可能なデータ処理装置のプロセッサユニットにより実行された場合、フローチャート及び/又はブロック図の1つ又は複数のブロックで規定された機能/動作を実現する装置が生成される。これらのコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体に格納されてもよい。これらの命令によって、コンピュータ、プログラミング可能なデータ処理装置及び/又はその他の装置は特定の方法で動作する。したがって、命令が格納されているコンピュータ可読媒体は、フローチャート及び/又はブロック図の1つ又は複数のブロックで規定された機能/動作を実現する各態様の命令が含まれている製品を含む。
【0094】
コンピュータ可読プログラム命令を、コンピュータ、他のプログラミング可能なデータ処理装置又は他の装置にロードして、コンピュータ、他のプログラミング可能なデータ処理装置又は他の装置上で一連の操作ステップを実行させ、コンピュータが実現するプロセスを生成してもよい。こうすることで、コンピュータ、他のプログラミング可能なデータ処理装置又は他の装置で実行される命令に、フローチャート及び/又はブロック図の1つ又は複数のブロックで規定された機能/動作を実現させる。
【0095】
図中のフローチャート及びブロック図は、本開示の複数の実施形態にかかるシステム、方法、コンピュータプログラム製品の実現可能なアーキテクチャ、機能及び操作を表している。この点において、フローチャート又はブロック図の各ブロックは、1つのモジュール、プログラムセグメント又は命令の一部を示してもよく、前記モジュール、プログラムセグメント又は命令の一部は、規定されたロジック機能を実現するための1つ又は複数の実行可能な命令を含む。代替としてのいくつかの実装において、ブロック内に表記された機能は、図中の表記と異なる順序で発生してもよい。例えば、2つの連続するブロックは実際には基本的に並行して実行されてもよいし、場合によっては反対の順序で実行されてもよい。これは、関係する機能によって定められる。また、注意すべき点として、ブロック図及び/又はフローチャートの各ブロック、並びにブロック図及び/又はフローチャートのブロックの組合せは、規定された機能又は動作を実行する、ハードウェアに基づく専用システムで実現してもよいし、或いは、専用のハードウェアとコンピュータ命令との組合せにより実現してもよい。
【0096】
以上、本開示の各実施形態を説明したが、上述した説明は、例示的なもので、全て網羅したものではなく、開示された各実施形態に限定されない。説明した各実施形態の範囲及び精神から逸脱しない状況において、当業者が多数の修正及び変更を行うことができることは明らかである。ここで使用した用語は、各実施形態の原理、実際の応用又は市場での技術改良について最適な説明を行うこと、又は当業者に本明細書で開示された各実施形態を理解させることを意図して、選択したものである。
【外国語明細書】