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

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

▶ エヌイーシー ラボラトリーズ アメリカ インクの特許一覧

特表2025-535802医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出
<>
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図1
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図2
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図3
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図4
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図5
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図6
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図7
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図8
  • 特表-医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-10-28
(54)【発明の名称】医療意思決定のための測定値時系列と事象シーケンスとを用いた異常検出
(51)【国際特許分類】
   G06F 18/2433 20230101AFI20251021BHJP
   G06F 18/213 20230101ALI20251021BHJP
   G06F 18/2411 20230101ALI20251021BHJP
   G06F 11/07 20060101ALI20251021BHJP
   G06F 11/34 20060101ALI20251021BHJP
   G16H 50/20 20180101ALI20251021BHJP
   G06F 18/27 20230101ALI20251021BHJP
   G06F 123/02 20230101ALN20251021BHJP
【FI】
G06F18/2433
G06F18/213
G06F18/2411
G06F11/07 151
G06F11/34 152
G16H50/20
G06F18/27
G06F123:02
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2025521482
(86)(22)【出願日】2023-10-25
(85)【翻訳文提出日】2025-04-15
(86)【国際出願番号】 US2023035906
(87)【国際公開番号】W WO2024091562
(87)【国際公開日】2024-05-02
(31)【優先権主張番号】63/418,999
(32)【優先日】2022-10-25
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】18/493,374
(32)【優先日】2023-10-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】504080663
【氏名又は名称】エヌイーシー ラボラトリーズ アメリカ インク
【氏名又は名称原語表記】NEC Laboratories America, Inc.
(74)【代理人】
【識別番号】100123788
【弁理士】
【氏名又は名称】宮崎 昭夫
(74)【代理人】
【識別番号】100127454
【弁理士】
【氏名又は名称】緒方 雅昭
(72)【発明者】
【氏名】チェン、 ユンコン
(72)【発明者】
【氏名】タン、 ルーアン
(72)【発明者】
【氏名】リウ、 ヤンチ
(72)【発明者】
【氏名】チェン、 ジェンジャン
(72)【発明者】
【氏名】チェン、 ハイフォン
【テーマコード(参考)】
5B042
5L099
【Fターム(参考)】
5B042JJ06
5B042KK17
5B042MA08
5B042MA14
5B042MC40
5L099AA04
(57)【要約】
異常検出のための方法およびシステムは、それぞれの変換器と集約ネットワークとを使用して、多変量時系列と複数の種類の事象シーケンスとを符号化して(506)、特徴ベクトルを生成することを含む。特徴ベクトルを使用して異常検出が実行され(508)、システム内の異常を特定する。異常による影響を是正または緩和するために、異常に応じて是正処置が実行される(510)。検出された異常は、患者の治療に関する医療専門家による意思決定を支援するために、健康管理状況で使用することができる。符号化は、深層学習を用いて変換器と集約ネットワークとを実装するための機械学習モデルを含み得る。
【選択図】図3
【特許請求の範囲】
【請求項1】
コンピュータに実装された、異常を検出するための方法であって、
それぞれの変換器と集約ネットワークとを使用して、多変量時系列と複数の種類の事象シーケンスとを符号化して(506)、特徴ベクトルを生成することと、
前記特徴ベクトルを使用して異常検出を実行して(508)、システム内の異常を特定することと、
前記異常による影響を是正または緩和するために、前記異常に対応する是正処置を実行する(510)ことと、を含む方法。
【請求項2】
請求項1に記載の方法において、
異常検出を実行する際に、超球半径項とネットワークパラメータ正則化項とを含むサポートベクトルデータ記述を使用する方法。
【請求項3】
請求項2に記載の方法において、
前記超球半径項は、特徴空間内の入力多変量時系列データを包含する超球の半径を表す方法。
【請求項4】
請求項1に記載の方法において、
異常検出を実行することにより、異常スコアを決定し、前記異常スコアを閾値と比較し、閾値を超える異常スコアが異常を示す方法。
【請求項5】
請求項1に記載の方法において、
前記集約ネットワークは、前記それぞれの変換器の出力を前記特徴ベクトルに変換するセルフアテンション層のスタックを含む方法。
【請求項6】
請求項1に記載の方法において、
さらに、前記異常に最も影響を与える過去の事象と時系列測定値とのランク付けされたリストを決定することを含む方法。
【請求項7】
請求項6に記載の方法において、
前記ランク付けされたリストを決定することが、前記集約ネットワークからの注目重みに従って実行される方法。
【請求項8】
請求項1に記載の方法において、
前記変換器および前記集約ネットワークは、同期化された時系列情報とタイムスタンプされた事象シーケンスとを含む訓練データの組を用いて、深層学習を用いて訓練される方法。
【請求項9】
請求項1に記載の方法において、
医療上の意思決定を支援するために、前記検出された異常を医療専門家に報告することをさらに含む方法。
【請求項10】
請求項1に記載の方法において、
前記是正処置を実行することは、アプリケーションまたはハードウェア構成要素のセキュリティ設定を変更することと、アプリケーションまたはハードウェア構成要素の動作パラメータを変更することと、アプリケーションを停止および/または再起動すること、ハードウェア構成要素を停止および/または再起動することと、環境条件を変更することと、ネットワークインタフェースの状態または設定を変更することとからなるグループから選択される処置を含む方法。
【請求項11】
異常を検出するためのシステムであって、
ハードウェアプロセッサ(710)と、
コンピュータプログラムを記憶するメモリ(740)と、を有し、前記コンピュータプログラムは、前記ハードウェアプロセッサによって実行されると、前記ハードウェアプロセッサに、
それぞれの変換器と集約ネットワークとを使用して、多変量時系列と複数の種類の事象シーケンスとを符号化して(506)、特徴ベクトルを生成することと、
前記特徴ベクトルを使用して異常検出を実行して(508)、システム内の異常を特定することと、
前記異常による影響を是正または緩和するために、前記異常に対応する是正処置を実行する(510)ことと、を実行させる、システム。
【請求項12】
請求項11に記載のシステムにおいて、
前記コンピュータプログラムは、前記ハードウェアプロセッサに、異常検出のための超球半径項とネットワークパラメータ正則化項とを含むベクトルデータ記述をサポートさせるシステム。
【請求項13】
請求項12に記載のシステムにおいて、
前記超球半径項は、特徴空間内の入力多変量時系列データを包含する超球の半径を表すシステム。
【請求項14】
請求項11に記載のシステムにおいて、
前記コンピュータプログラムは、さらに、前記ハードウェアプロセッサに、異常スコアを決定させ、前記異常スコアを閾値と比較させ、閾値を超える異常スコアが異常を示すことを実行させるシステム。
【請求項15】
請求項11に記載のシステムにおいて、
前記集約ネットワークは、前記それぞれの変換器の出力を前記特徴ベクトルに変換するセルフアテンション層のスタックを含むシステム。
【請求項16】
請求項11に記載のシステムにおいて、
前記コンピュータプログラムは、さらに、前記ハードウェアプロセッサに、前記異常に最も影響を与える過去の事象と時系列測定値とのランク付けされたリストを決定させることを実行させるシステム。
【請求項17】
請求項16に記載のシステムにおいて、
前記ランク付けされたリストの決定は、前記集約ネットワークからの注目重みに従って実行されるシステム。
【請求項18】
請求項11に記載のシステムにおいて、
前記是正処置は、アプリケーションまたはハードウェア構成要素のセキュリティ設定を変更することと、アプリケーションまたはハードウェア構成要素の動作パラメータを変更することと、アプリケーションを停止および/または再起動すること、ハードウェア構成要素を停止および/または再起動することと、環境条件を変更することと、ネットワークインタフェースの状態または設定を変更することとからなるグループから選択される処置を含むシステム。
【請求項19】
治療を行うための方法であって、
患者に関する時系列情報を測定する(506)ことと、
それぞれの変換器と集約ネットワークとを使用して、前記患者についての前記時系列情報と健康事象シーケンスとを符号化して(506)、特徴ベクトルを生成することと、
前記特徴ベクトルを使用して異常検出を実行して(508)、健康事象を特定することと、
前記健康事象による健康への悪影響を是正または緩和するために、前記健康事象に対応する是正処置を実行する(510)ことと、を含む方法。
【請求項20】
請求項19に記載の方法において、
前記是正処置を実行することが、透析装置の操作の調整と、静脈内投与薬剤の投与量の調整と、治療の停止とからなるグループから選択される処置を含む方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願情報
本出願は、2022年10月25日に出願された米国特許出願第63/418,999号および2023年10月24日に出願された米国特許出願第18/493,374号の優先権を主張するものであり、それぞれ参照によりその全体が本明細書に組み込まれる。
【背景技術】
【0002】
本発明は、事象予測に関し、より詳細には、事象履歴と時系列情報とからシステム状態を推測することに関する。
関連技術の説明
【0003】
事象予測は複雑なシステムの管理に役立つ。情報技術システムなどのサイバーフィジカルシステムでは、ハードウェアの故障を予測し、予防保守を計画することができる。健康管理システムでは、有害な事象を予測することで、医師が早期に治療を調整し、健康への悪影響を防ぐことができる。
【発明の概要】
【0004】
異常検出のための方法は、それぞれの変換器と集約ネットワークとを使用して、多変量時系列と複数の種類の事象シーケンスとを符号化して、特徴ベクトルを生成することを含む。異常検出は、システム内の異常を特定するために、特徴ベクトルを使用して実行される。異常による影響を是正または緩和するために、異常に対応する是正処置が実行される。
【0005】
異常検出のためのシステムは、ハードウェアプロセッサと、コンピュータプログラムを記憶するメモリとを含む。ハードウェアプロセッサによって実行されると、コンピュータプログラムは、ハードウェアプロセッサに、それぞれの変換器と集約ネットワークとを使用して、多変量時系列と複数の種類の事象シーケンスとを符号化させて、特徴ベクトルを生成させる。システム内の異常を特定するために、特徴ベクトルを使用して異常検出が実行される。異常による影響を是正または緩和するために、異常に対応する是正処置が実行される。
【0006】
治療を行う方法は、患者に関する時系列情報を測定することを含む。それぞれの変換器と集約ネットワークとを使用して、時系列情報と健康事象シーケンスとが、患者について符号化され、特徴ベクトルが生成される。特徴ベクトルを用いて異常検出が実行され、健康事象が特定される。健康事象に対応した是正処置が実行され、健康事象による健康への悪影響を是正または緩和する。
【0007】
これらおよび他の特徴および利点は、添付の図面と関連して読まれる、その例示的な実施形態の以下の詳細な説明から明らかになるであろう。
【図面の簡単な説明】
【0008】
本開示は、以下の図を参照して、好ましい実施形態の以下の説明において詳細を提供する。
【0009】
図1】本発明の一実施形態による、時系列情報と事象ログ情報とに基づく異常検出を実施するサイバーフィジカルシステムの構成図である。
【0010】
図2】本発明の一実施形態による、検出された健康異常に応じた治療を受ける健康管理状況の患者の図である。
【0011】
図3】本発明の一実施形態による、治療システムの機能に関する情報と医療記録とが使用されて異常を検出する健康管理施設のブロック図である。
【0012】
図4】本発明の一実施形態による、異常検出方法/システムのブロック/フロー図である。
【0013】
図5】本発明の一実施形態による、異常検出のための深層学習モデルを訓練し使用する方法のブロック/フロー図である。
【0014】
図6】本発明の一実施形態による、異常を検出するための深層学習モデルを訓練する方法のブロック/フロー図である。
【0015】
図7】本発明の一実施形態による、事象予測モデルを訓練し使用して異常を検出し修正することができる演算装置のブロック図である。
【0016】
図8】本発明の一実施形態による、異常予測モデルの一部を実装するために使用され得る例示的なニューラルネットワークアーキテクチャの図である。
【0017】
図9】本発明の一実施形態による、異常予測モデルの一部を実装するために使用され得る例示的な深層ニューラルネットワークアーキテクチャの図である。
【発明を実施するための形態】
【0018】
事象予測は過去の事象情報を利用するが、常に変化しているシステム状態に関する情報を利用することもある。システム状態は、システム測定値に関する現在の時系列情報から推測することができる。
【0019】
事象と時系列情報とには複雑な因果関係がある。例えば、コンピュータシステムにおけるメモリ使用量の増加傾向は、最終的にメモリ不足事象を引き起こす可能性が高い。一方、ディスクキュー長の上昇レベルは、ディスクアクセス集中型のアプリケーション起動事象の結果である可能性がある。時系列情報と事象履歴とを考慮した事象予測は、どちらか一方のみを考慮したシステムよりも優れた結果をもたらす。
【0020】
システムからの測定値は、事象ログと相関があるかもしれない。なぜなら、測定値の変化を引き起こす多くの行動がログに記録されているからである。例えば、大規模なアプリケーションが起動した場合、プロセッサの使用量が急激に増加することが予想されるが、そのようなアクティビティが記録されていない場合は異常である可能性がある。一方、ネットワークトラフィック事象の突然のバーストは、ユーザ数の増加と相関していれば異常ではないが、トラフィック測定値が正常であれば、事象のバーストはハードウェア障害を示唆している可能性がある。さらに、異なる測定値は、同じ基本的なパフォーマンス要因を測定するため、互いに相関する場合がある。例えば、プロセッサ使用量とメモリ使用量とは、どちらもシステムアクティビティのレベルを反映する。
【0021】
さらに、システム状態の解釈は、すべての測定値の時系列と事象ログとによって共同で与えられる状況を利用することができる。検出結果を信頼でき、説明できるものにするために、特定の異常に対して反応する事象をピンポイントで特定することができる。
【0022】
この目的のために、機械学習モデルを使用して、以前の事象の履歴と1つ以上の時系列測定値とが与えられた場合に、異常のタイプと時間とを予測することができる。変換器と注意メカニズムとは、システム事象と測定値と間の相互作用を明示的にモデル化するために使用され、相互作用を隠れた状態にカプセル化する。サポートベクトルデータ記述(SVDD)損失は、正常なデータの符号化された状態を特徴付け、入力される多変量センサデータが正常な状態から逸脱しているかどうかを検出するために使用できる。
【0023】
ここで図1を参照すると、監視対象システム102の状況における保守システム106が示されている。監視対象システム102は、製造ラインや物理的なプラント操作などの物理的システム、コンピュータや他のコンピュータ化されたデバイスなどの電子的システム、オペレーティングシステムやアプリケーションなどのソフトウェアシステム、物理的システムを電子的システムおよび/またはソフトウェアシステムと組み合わせたサイバーフィジカルシステムなど、任意の適切なシステムとすることができる。例示的なシステム102には、鉄道システム、発電所、車両センサ、データセンタ、輸送システムなど、さまざまな種類が含まれる。
【0024】
1つ以上のセンサ104が、監視対象516システム102の状態に関する情報を記録する。センサ104は、例えば、温度、湿度、振動、圧力、電圧、電流、磁界、電界、および光センサなどの物理センサ、ならびにコンピュータシステム上で実行されているオペレーティングシステムおよびアプリケーションの状態および動作に関する情報を記録するためにコンピュータシステム上にインストールされたロギングユーティリティなどのソフトウェアセンサを含む、任意の適切なタイプのセンサであり得る。センサ104によって生成された情報は、任意の適切なフォーマットであることができ、異種フォーマットで生成されたセンサログ情報を含むことができる。
【0025】
センサ104は、無線通信および有線通信を含む任意の適切な通信媒体およびプロトコルによって、記録されたセンサ情報を異常保守システム106に送信しても良い。保守システム106は、例えば、センサ104によって生成される多変量時系列を監視することによって、異常または異常な動作を特定することができる。異常動作が検出されると、保守システム106はシステム制御ユニットと通信し、監視対象システム102の1つ以上のパラメータを変更して異常動作を修正する。
【0026】
例示的な是正処置には、アプリケーションまたはハードウェア構成要素のセキュリティ設定の変更、アプリケーションまたはハードウェア構成要素の動作パラメータ(例えば、動作速度)の変更、アプリケーションの停止および/または再起動、ハードウェア構成要素の停止および/または再起動、環境条件の変更、ネットワークインタフェースの状態または設定の変更などが含まれる。これにより、保守システム106は、異常な動作を自動的に修正または緩和する。異常な分類に関連する特定のセンサ104を特定することで、問題の切り分けに必要な時間を短縮することができる。
【0027】
センサ104の各々は、センサによって行われた測定値を経時的に符号化したそれぞれの時系列を出力する。例えば、時系列は情報のペアを含み、各ペアは測定値と測定が行われた時刻を表すタイムスタンプとを含む。各時系列は、特定の時間範囲にわたってセンサによって行われた測定値を表すセグメントに分割しても良い。時系列セグメントは、1秒、1分、1時間、1日など、任意の適切な間隔を表しても良い。時系列セグメントは、一定期間ではなく、例えば、100回の測定など、設定された数の収集時点を表しても良い。
【0028】
保守システム106は、監視対象システム102の状態に関連する事象の発生を追跡することができる。例えば、保守システム106は、作業負荷、ジョブの開始および停止、ならびに故障に関連する情報を受信することができる。この情報は、適切なタイムスタンプと、例えばセンサ104によって収集された情報を含む、事象発生時の監視対象システム102の状態に関連する他の状態情報と一緒に記録されても良い。時系列情報が定期的または非周期的だが頻繁に記録されるのに対し、事象情報は離散的な事象が発生するたびに記録されても良い。
【0029】
保守システム106は、事象予測108を用いて、将来の事象の発生時期を予測しても良い。事象予測は、事象履歴情報と時系列情報との両方を利用して、事象がいつ発生しそうかを判断する。保守システム106は、さらに、どの情報源が予測に最も寄与するかを決定することができ、これにより、保守システム106によって取られる是正処置を問題の根本原因に合わせることができる。
【0030】
ここで図2を参照すると、患者20が健康管理システムの状況で示されている。例えば、患者202は、血液透析(単に「透析」とも称される)を受けている場合がある。透析中は、透析装置204が自動的に患者の血液を採取し、血液を処理して浄化し、浄化された血液を患者の体内に再導入する。透析には4時間かかることもあり、3日ごとに行うこともできるが、他の期間や期間も考えられる。透析を特に想定しているが、代わりに適切な医療処置、モニタリング、またはシステムを使用しても良いことを理解すべきである。
【0031】
透析セッションの前、間、および後に、患者202は、治療に関連する健康事象を経験する可能性がある。このような健康事象は、患者202にとって危険な場合があるが、以前の健康事象および患者の現在のヘルス測定値に関する知識に基づいて予測することができる。患者202が透析などの医療処置または治療を受ける前に、医療専門家206は、予測スコアを含む推奨208を検討する。この予測スコアは、透析セッション中に健康事象が発生する可能性を示す。この推奨208は、さらに、予測される事象の種類に関連する情報、および患者の状態の測定値を含むことができる。この推奨は、透析セッションが始まる前に行われ、治療が調整され得ることが特に企図されている。
【0032】
推奨は、様々な入力情報に基づいて行っても良い。その情報の一部には、例えば年齢、性別、透析開始時期、以前の健康事象などの情報を含む患者の静的プロファイルが含まれる。その情報にはまた、透析セッションごとに採取され得る透析測定記録、血圧、体重、静脈圧、血液検査測定値、および心胸郭比(CTR)などの動的データも含まれる。血液検査測定は、例えば月2回の頻度で定期的に行われ、アルブミン、グルコース、血小板数などの因子を測定しても良い。CTRも定期的に、例えば月1回の頻度で測定しても良い。動的情報もまた、透析セッション中に、例えば透析装置204のセンサを用いて記録しても良い。動的情報は、それぞれの頻度にわたる時系列としてモデル化しても良い。
【0033】
さらに、システム自体を健康管理環境内で監視しても良い。例えば、透析装置204または病院もしくは他の健康管理施設内の他のシステムの動作パラメータは、システムにおける過去の事象の履歴とともに、以下に説明するように、異常を検出するために監視されることが多い。異常が検出されると、是正処置が実行され、および/またはシステム管理者に通知されても良い。
【0034】
次に図3を参照すると、健康管理施設300の状況における異常検出の図である。一人の患者の治療の状況で異常を検出するのではなく、あるいはそれに加えて、本原理を施設内のすべてのシステムに適用しても良い。これは、例えば環境条件の変化や材料の不足に対応するなど、複数の患者の監視や治療に役立てることができる。このような施設はサイバー攻撃に対して脆弱である可能性もあり、このような状況で異常を検出することは、攻撃を特定して阻止するのに役立ち、患者の治療を行う施設の能力を維持することができる。
【0035】
健康管理施設は、異常検出システム308に異常に関する情報およびシステム状態の測定値を提供する1人以上の医療専門家302を含んでも良い。治療システム304はさらに、患者の状態を監視して医療記録306を作成し、必要に応じて治療を自動的に実施および調整するように設計されていても良い。
【0036】
少なくとも医療専門家302、治療システム304、および医療記録306から引き出された情報に基づいて、異常検出システム308は異常を検出することができ、検出された異常を是正または緩和するために自動的に応答することができる。例えば、是正措置が取られ、および/または施設管理者に通知されても良い。管理者に通知された場合、異常検出は病院の管理者による意思決定を支援するために使用することができる。
【0037】
健康管理施設300の異なる要素は、例えば任意の適切な有線または無線通信プロトコルおよび媒体を使用して、ネットワーク310を介して互いに通信することができる。したがって、異常検出システム308の出力は、遠隔地に保存された医療記録306にアクセスし、治療システム304と通信し、医療専門家302への指示を受信し、報告を送信することができる。
【0038】
次に図4を参照すると、時系列情報と事象シーケンス情報とを用いた異常検出が示されている。入力は、例えば、異なるそれぞれのセンサからの複数の時系列を組み合わせた多変量時系列402を含んでも良い。入力はさらに、事象の種類、事象が発生した時刻、および事象に関連する他の適切な情報を示すことができる複数種類の事象シーケンス404を含むことができる。複数種類の事象シーケンスは、複数の異なるタイプの事象を含んでも良い。
【0039】
エンコーダ406は、入力を潜在空間に埋め込み、結合入力402と404とを表す特徴の組を生成する。各入力はそれぞれの特徴ベクトルを生成し、これらのベクトルは408に集約されてコンテキストベクトルを作成しても良い。エンコーダ406は、各シーケンスからの異なる時間ステップ間の情報を組み合わせるセルフアテンション層とクロスアテンション層とのスタックを有する変換器を含んでも良い。その後、各シーケンスの各時間ステップからの隠れ状態が連結され、集約ネットワーク408に渡される。集約ネットワーク408は、両方のストリームのすべての時間ステップからの情報を組み合わせて、コンテキストベクトルを出力するセルフアテンション層を含んでも良い。
【0040】
コンテキストベクトルは、SVDD損失関数410への入力として使用される場合がある。すべての訓練データからの特徴ベクトルは、潜在特徴空間内のすべての訓練データを包含する最小超球の半径として解釈されるSVDD損失410を計算するために使用されても良い。SVDD損失関数410の出力は、異常414を検出するために使用されても良い。
【0041】
次に図5を参照すると、異常を検出して対処する方法が示されている。ブロック502は、システム測定値時系列およびタイムスタンプされた事象シーケンスを含むことができる一組の訓練データを取得し、以下により詳細に説明されるように、機械学習モデルを訓練して、異常を検出する。訓練プロセス502は、システムの通常の動作状態の間に収集された多変量時系列と事象ログとを使用することができ、この情報を使用して、SVDD損失410に従って最適化することができる。その後、訓練されたモデルは、例えばサイバーフィジカルシステムの管理システム106または健康管理分析システムなどの設備に展開504される。
【0042】
ブロック506において、事象情報と多変量時系列情報とを含む新たなデータが装置から収集されても良い。この新たなデータは、システムの動作状態とその特定の事象履歴とを表す。訓練されたモデルは、ブロック508において、システムの動作に関連する異常スコアを生成するために使用され、例えば、閾値を超える異常スコアは、異常な動作状態と解釈される。異常スコアが閾値よりも高い場合、ブロック508はさらに、異常の潜在的原因であるシステム事象のランク付けされたリストを生成しても良い。例えば、この事象予測は、予想されるシステムの誤動作または有害な健康事象に関連する可能性がある。
【0043】
次に、ブロック510は、予測された事象による害を防止または緩和するための処置を実行する。サイバーフィジカルシステム102の状況では、処置は、予測された事象に関連すると予期される1つ以上のサブシステムに対処する自動応答を実行することを含み得る。例えば、処置は、過熱を防止するために環境パラメータを変更することを含んでも良いし、損傷を防止するためにサブシステムをシャットダウンしても良い。
【0044】
患者202の状況において、検出された異常が健康上の有害事象である場合、その処置には、例えば透析装置204の操作を調整する、静脈内投与される薬剤の投与量を調整する、または危険であるとみなされる処置を停止するなど、治療に対する自動的な調整が含まれる。
【0045】
次に図6を参照すると、訓練502の詳細が示されている。ブロック602は、同期化されたシステム測定値時系列とタイムスタンプされたシステム事象シーケンスとを含む、訓練データの組を取得する。ブロック604は、システム事象シーケンス内の事象メッセージを解析し、例えば、それぞれの異なるタイプの事象を異なる整数値として表して各メッセージから事象タイプを特定する。
【0046】
訓練データは、例えば、一定の長さの重複するウィンドウを使用して、コンテキストウィンドウに分割することができる。各訓練サンプルは、ウィンドウ内の時系列セグメントxi、ウィンドウ内の事象サブシーケンスvi、ウィンドウの直後に続く事象(時間tiにおけるタイプui)を含む、それぞれの時間ウィンドウから得られる。
【0047】
訓練は2つのフェーズで実行することができる。第1のフェーズでは、以下により詳細に説明するように、オートエンコーダ訓練606を実行することができる。オートエンコーダ訓練606は、入力時系列の隠れた状態を決定するためにエンコーダを訓練し、入力時系列を再構成するためにデコーダを使用する。オートエンコーダの損失は、例えば確率的勾配降下を使用して、オートエンコーダのパラメータを更新するために使用される。オートエンコーダのエンコーダ部分はエンコーダ406で使用することができる。
【0048】
第2のフェーズでは、以下でさらに詳細に説明するように、SVDD損失を使用してモデル全体が訓練される。エンコーダ406と集約ネットワーク408とは、訓練例の特徴ベクトルを生成するために使用され、SVDD損失が計算される。SVDD損失に基づいて、エンコーダ406と集約ネットワーク408とのパラメータは、例えば確率的勾配降下に従って調整されても良い。
【0049】
多変量時系列は、まず1次元畳み込み層によって処理され、各タイムスタンプの結果は、エンコーダ406に入力される前に、対応する時間埋め込みベクトルと連結される。事象シーケンスは、各事象メッセージをテンプレートとパラメータとに分解するために、最初にログ構文解析器によって構文解析されても良い。例えば、「ESMCommonService has transitioned to the stopped state」というメッセージは、「[*]has transitioned to the stopped state」というテンプレートと、「ESMCommonService」というパラメータとに変換されても良い。テンプレート型埋め込み層とパラメータ埋め込み層とは、それぞれテンプレート型とパラメータとをベクトルに変換するために学習される。シーケンス内の各事象に対して、テンプレート型埋め込みベクトル、パラメータ埋め込みベクトル、および時間埋め込みベクトルが連結され、変換エンコーダの入力として使用される。
【0050】
集約ネットワーク408は、セルフアテンション層のスタックである。最後のタイムステップにおける時系列変換エンコーダの隠れ状態は、潜在ベクトル
【数1】
を計算するために使用されても良い。潜在ベクトル
【数2】
は、ゲーテッドリカレントユニット(GRU)デコーダの条件および初期の隠れ状態として使用される。GRUデコーダは、入力時系列と同じ長さの時系列を出力する。エンコーダ406およびデコーダは、入力時系列とデコーダの出力との間のオートエンコーダ誤差を最小化するために、ブロック606で一緒に訓練されても良い。
【0051】
第2の訓練フェーズ608では、集約ネットワーク408からの特徴ベクトル
【数3】
は、SVDD損失
【数4】
を計算するために使用される。ここで、φは変換器と集約ネットワークとを含むエンコーダネットワークであり、
【数5】
はニューラルネットワークのパラメータであり、
【数6】
は特徴空間における超球であり、λはハイパーパラメータである。ランダムにサンプリングされた値のバッチは、訓練データセットからサンプリングされ、結果として得られる特徴ベクトルの平均は、
【数7】
を生成するために決定されても良い。損失の第1項は、特徴空間内のすべてのn個の訓練データ値を包含する超球の半径である。第2項はネットワークパラメータの大きさを正則化する。損失は、例えば、確率的勾配降下法を用いて、パラメータ
【数8】
を調整することで最小化される。
【0052】
モデルが訓練され展開された後、時間tにおいて、tに先行する固定サイズのコンテキストウィンドウ内の事象と時系列とがモデルに入力されても良い。モデルは、例えばSVDD損失を計算することによって、異常スコアを出力する。最も高い注目重みを有する(例えば、上位k個の重みを選択する)システム事象は、異常スコアが閾値を超えた事象にて潜在的な原因として出力されても良い。
【0053】
次に図7を参照すると、本発明の実施形態に従った、例示的な演算装置700が示されている。演算装置700は、異常検出を実行するように構成される。
【0054】
演算装置700は、限定されないが、コンピュータ、サーバ、ラックベースのサーバ、ブレードサーバ、ワークステーション、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、モバイル演算装置、ウェアラブル演算装置、ネットワーク機器、ウェブ機器、分散演算システム、プロセッサベースのシステム、および/または利用者電子装置など、本書に記載される機能を実行できる任意のタイプの計算またはコンピュータ装置として具現化することができる。さらにまたは代替的に、演算装置700は、1つまたは複数のコンピュートスレッド、メモリスレッド、または他のラック、スレッド、演算シャーシ、または物理的に分解された演算装置の他の構成要素として具現化されてもよい。
【0055】
図7に示すように、演算装置700は、例示的に、プロセッサ710、入力/出力サブシステム720、メモリ730、データ記憶装置740、および通信サブシステム750、および/またはサーバまたは同様の演算装置に一般的に見られる他の構成要素およびデバイスを含んでいる。演算装置700は、他の実施形態において、サーバコンピュータに一般的に見られるような他のまたは追加の構成要素(例えば、様々な入力/出力デバイス)を含んでもよい。さらに、いくつかの実施形態では、例示的な構成要素の1つ以上が、別の構成要素に組み込まれるか、さもなければ、別の構成要素の一部を形成することができる。例えば、メモリ730、またはその一部は、いくつかの実施形態において、プロセッサ710に組み込まれても良い。
【0056】
プロセッサ710は、本明細書に記載された機能を実行することができる任意のタイプのプロセッサとして具現化することができる。プロセッサ710は、シングルプロセッサ、マルチプロセッサ、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、シングルまたはマルチコアプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、またはその他のプロセッサやプロセスシング/制御回路として具現化されてもよい。
【0057】
メモリ730は、本明細書に記載された機能を実行することができる任意のタイプの揮発性または不揮発性メモリまたはデータストレージとして具現化され得る。動作中、メモリ730は、オペレーティングシステム、アプリケーション、プログラム、ライブラリ、およびドライバなど、演算装置700の動作中に使用される様々なデータおよびソフトウェアを格納することができる。メモリ730は、I/Oサブシステム720を介してプロセッサ710と通信可能に結合され、プロセッサ710、メモリ730、および演算装置700の他の構成要素との入出力動作を容易にするための回路および/または構成要素として具現化され得る。例えば、I/Oサブシステム720は、メモリコントローラハブ、入力/出力制御ハブ、プラットフォームコントローラハブ、集積制御回路、ファームウェアデバイス、通信リンク(例えば、ポイントツーポイントリンク、バスリンク、ワイヤ、ケーブル、ライトガイド、プリント回路基板トレースなど)および/または、入力/出力操作を容易にするための他の構成要素およびサブシステムとして具現化されてもよく、さもなければ、これらを含んでいても良い。いくつかの実施形態では、I/Oサブシステム720は、システムオンチップ(SOC)の一部を形成し、プロセッサ710、メモリ730、および演算装置700の他の構成要素と共に、単一の集積回路チップに組み込まれてもよい。
【0058】
データ記憶装置740は、例えば、メモリ装置および回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブ、または他のデータ記憶装置など、データの短期または長期記憶用に構成された任意のタイプの装置またはデバイスとして具現化することができる。データ記憶装置740は、モデルを訓練するためのプログラムコード740A、異常を検出するためのプログラムコード740B、および/または検出された異常に応答する是正処置を実行するためのプログラムコード740Cを記憶することができる。演算装置700の通信サブシステム750は、ネットワークを介して演算装置700と他のリモート装置との間の通信を可能にすることができる、任意のネットワークインタフェースコントローラまたは他の通信回路、装置、またはその集合体として具現されることができる。通信サブシステム750は、任意の1つ以上の通信技術(例えば、有線または無線通信)および関連するプロトコル(例えば、イーサネット、InfiniBand(登録商標)、Bluetooth(登録商標)、Wi-Fi(登録商標)、WiMAX(登録商標)など)を使用してそのような通信を実現するように構成され得る。
【0059】
図示のように、演算装置700は、1つ以上の周辺装置760も含むことができる。周辺装置760は、任意の数の追加の入出力装置、インタフェース装置、および/または他の周辺装置を含んでもよい。例えば、いくつかの実施形態では、周辺装置760は、ディスプレイ、タッチスクリーン、グラフィック回路、キーボード、マウス、スピーカシステム、マイク、ネットワークインタフェース、および/または他の入力/出力装置、インタフェース装置、および/または周辺装置を含むことができる。
【0060】
もちろん、演算装置700は、当業者が容易に思いつくように、他の要素(図示せず)を含むこともでき、また、特定の要素を省略することもできる。例えば、様々な他のセンサ、入力装置、および/または出力装置は、当業者によって容易に理解されるように、同じものの特定の実装に依存して、演算装置700に含まれることが可能である。例えば、様々なタイプの無線および/または有線の入力および/または出力装置を使用することができる。さらに、プロセッサ、コントローラ、メモリなどを追加して、様々な構成で利用することも可能である。処理システム700のこれらおよび他の変形例は、本明細書に提供される本発明の教示を考慮すれば、当業者によって容易に企図されるものである。
【0061】
次に図8図9とを参照する。図8図9とを参照すると、例示的なニューラルネットワークアーキテクチャが示されており、エンコーダ406など、これらは本モデルの一部を実装するために使用することができる。ニューラルネットワークは汎化されたシステムであり、追加的な経験的データにさらされることでその機能と精度が向上する。ニューラルネットワークは、経験的データにさらされることによって学習される。訓練中、ニューラルネットワークは、入力される経験的データに適用される複数の重みを記憶し、調整する。調整された重みをデータに適用することで、データがクラスの集合からあらかじめ定義された特定のクラスに属することを識別したり、入力されたデータが各クラスに属する確率を出力したりすることができる。
【0062】
一連の例から得られた経験的データ(訓練データとも呼ばれる)は、値の文字列としてフォーマットされ、ニューラルネットワークの入力に供給される。各例は、既知の結果または出力と関連付けられる。各列は、(x,y)の組として表され、xは入力データ、yは既知の出力を表す。入力データには様々なデータタイプがあり、複数の異なる値が含まれていても良い。ネットワークは、例の入力データを構成する各値に対して1つの入力ノードを持つことができ、各入力値には別々の重みを適用することができる。入力データは、例えば、構築され訓練されるニューラルネットワークのアーキテクチャに応じて、ベクトル、配列、または文字列としてフォーマットすることができる。
【0063】
ニューラルネットワークは、入力データから生成されたニューラルネットワーク出力を例の既知の値と比較し、記憶された重みを調整して出力値と既知の値の差を最小にすることで「学習」する。調整は、逆伝搬を通じて記憶された重みに対して行うことができ、出力値に対する重みの影響は、数学的勾配を計算し、出力を最小差にシフトさせる方法で重みを調整することによって決定される。勾配降下法と呼ばれるこの最適化は、訓練がどのように行われるかの非限定的な例である。訓練に使用されなかった既知の値を持つ例のサブセットは、ニューラルネットワークの精度をテストし、検証するために使用することができる。
【0064】
運用中、訓練されたニューラルネットワークは、汎化によって、以前に訓練や検証に使用されなかった新たなデータに使用することができる。調整されたニューラルネットワークの重みは、新たなデータに適用することができ、重みは訓練例から開発された関数を推定する。重みによって捕捉される推定関数のパラメータは、統計的推論に基づいている。
【0065】
レイヤードニューラルネットワークでは、ノードは層の形で配置される。例示的な単純ニューラルネットワークは、ソースノード822の入力層820と、出力ノードとしても機能する1つまたは複数の計算ノード832を有する単一の計算層830とを有し、入力例が分類され得る各可能なカテゴリに対して単一の計算ノード832が存在する。入力層820は、入力データ810のデータ値812の数に等しい数のソースノード822を有することができる。入力データ810のデータ値812は列ベクトルとして表すことができる。計算層830の各計算ノード832は、入力ノード820に供給された入力データ810から重み付けされた値の線形結合を生成し、合計に微分可能な非線形活性化関数を適用する。例示的な単純ニューラルネットワークは、線形分離可能な例(例えば、パターン)に対して分類を実行することができる。
【0066】
多層パーセプトロンなどの深層ニューラルネットワークは、ソースノード822の入力層820、1つまたは複数の計算ノード832を有する1つまたは複数の計算層830、および入力例が分類される可能性のあるカテゴリごとに1つの出力ノード842がある出力層840を有することができる。入力層820は、入力データ810のデータ値812の数に等しい数のソースノード822を有することができる。計算層830の計算ノード832は、ソースノード822と出力ノード842との間にあり、直接観察されないため、隠れ層とも呼ばれる。計算層の各ノード832,842は、前の層のノードから出力された値から重み付けされた値の線形結合を生成し、線形結合の範囲にわたって微分可能な非線形活性化関数を適用する。各前のノードからの値に適用される重みは、例えばw1,w2,...wn-i,wnで表すことができる。出力層は、入力されたデータに対するネットワークの全体的な応答を提供する。深層ニューラルネットワークは、計算レイヤの各ノードが前のレイヤのすべてのノードに接続されている完全接続の場合もあれば、レイヤ間の接続が他の構成になっている場合もある。ノード間のリンクが欠落している場合、ネットワークは部分的に接続されていると呼ばれる。
【0067】
深層ニューラルネットワークの訓練には、各ノードの重みを固定し、入力をネットワークに伝搬させるフォワードフェーズと、エラー値をネットワークに逆伝搬させ、重み値を更新するバックワードフェーズの2つのフェーズがある。
【0068】
1つ以上の計算(隠れ)層830の計算ノード832は、特徴空間を生成する入力データ812に対して非線形変換を実行する。クラスやカテゴリは、元のデータ空間よりも特徴空間の方がより簡単に分離できるかもしれない。
【0069】
本明細書に記載する実施形態は、完全にハードウェアであってもよく、完全にソフトウェアであってもよく、または、ハードウェア要素とソフトウェア要素との両方を含むものであってもよい。好ましい実施形態では、本発明は、ファームウェア、常駐ソフトウェア、マイクロコードなどを含むがこれらに限定されないソフトウェアで実施される。
【0070】
実施形態は、コンピュータまたは任意の命令実行システムによって、またはそれに関連して使用するためのプログラムコードを提供する、コンピュータ使用可能またはコンピュータ可読媒体からアクセス可能なコンピュータプログラム製品を含むことができる。コンピュータ使用可能媒体またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによって、またはそれに関連して使用するためのプログラムを格納、通信、伝搬、またはトランスポートする任意の装置を含むことができる。媒体は、磁気、光学、電子、電磁気、赤外線、または半導体システム(または装置またはデバイス)、または伝搬媒体とすることができる。媒体は、半導体または固体ステートメモリ、磁気テープ、リムーバブルコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、リジッド磁気ディスクおよび光ディスクなどのコンピュータ読み取り可能な記憶媒体を含むことができる。
【0071】
各コンピュータプログラムは、本明細書に記載する手順を実行するために、記憶媒体または装置がコンピュータによって読み取られるときに、コンピュータの操作を構成し制御するために、汎用または特殊目的のプログラム可能コンピュータによって読み取り可能な、機械読み取り可能な記憶媒体または装置(例えば、プログラムメモリまたは磁気ディスク)に実体的に記憶することができる。本発明のシステムはまた、コンピュータプログラムで構成された、コンピュータ読み取り可能な記憶媒体で実施されるものと考えることができ、その場合、構成された記憶媒体は、コンピュータを特定の所定の方法で動作させて、本明細書に記載する機能を実行させる。
【0072】
プログラムコードを記憶および/または実行するのに適したデータ処理システムは、システムバスを介してメモリ要素に直接的または間接的に結合された少なくとも1つのプロセッサを含んでもよい。メモリ要素は、プログラムコードの実際の実行中に採用されるローカルメモリ、バルクストレージ、および実行中にバルクストレージからコードが検索される回数を減らすために少なくとも何らかのプログラムコードの一時記憶を提供するキャッシュメモリを含むことができる。入力/出力またはI/O装置(キーボード、ディスプレイ、ポインティング装置などを含むが、これらに限定されない)は、直接または介在するI/Oコントローラを介してシステムに結合され得る。
【0073】
ネットワークアダプタは、データ処理システムが、介在するプライベートまたはパブリックネットワークを介して他のデータ処理システムまたはリモートプリンタまたはストレージデバイスに結合されるようになることを可能にするために、システムに結合されることもできる。モデム、ケーブルモデム、イーサネットカードは、現在利用可能なネットワークアダプタの種類のほんの一部に過ぎない。
【0074】
本明細書で採用されるように、「ハードウェアプロセッササブシステム」または「ハードウェアプロセッサ」という用語は、1つまたは複数の特定のタスクを実行するために協働するプロセッサ、メモリ、ソフトウェア、またはそれらの組み合わせを指すことができる。有用な実施形態では、ハードウェアプロセッササブシステムは、1つまたは複数のデータ処理要素(例えば、論理回路、処理回路、命令実行デバイスなど)を含み得る。つまたは複数のデータ処理要素は、中央処理ユニット、グラフィック処理ユニット、および/または別個のプロセッサ-もしくは演算要素ベースのコントローラ(例えば、論理ゲートなど)に含まれ得る。ハードウェアプロセッササブシステムは、1つまたは複数のオンボードメモリ(例えば、キャッシュ、専用メモリアレイ、読み取り専用メモリなど)を含み得る。いくつかの実施形態では、ハードウェアプロセッササブシステムは、オンボードまたはオフボードであり得るか、またはハードウェアプロセッササブシステムによる使用のために専用であり得る1つまたは複数のメモリ(例えば、ROM、RAM、基本入出力システム(BIOS)など)を含み得る。
【0075】
いくつかの実施形態では、ハードウェアプロセッササブシステムは、1つ以上のソフトウェア要素を含み、実行することができる。つまたは複数のソフトウェア要素は、オペレーティングシステムおよび/または1つまたは複数のアプリケーションおよび/または指定された結果を達成するための特定のコードを含むことができる。
【0076】
他の実施形態では、ハードウェアプロセッササブシステムは、指定された結果を達成するために1つまたは複数の電子処理機能を実行する専用の専用回路を含むことができる。そのような回路は、1つまたは複数のアプリケーション専用集積回路(ASIC)、Field-Programmable Gate Arrays(FPGAs)、および/またはProgrammable Logic Arrays(PLAs)を含むことができる。
【0077】
ハードウェアプロセッササブシステムのこれらおよび他の変形もまた、本発明の実施形態に従って企図される。
【0078】
本明細書において、本発明の「一実施形態」または「一実施形態」、およびその他の変形例への言及は、実施形態に関連して説明した特定の特徴、構造、特性などが、本発明の少なくとも一実施形態に含まれることを意味する。したがって、本明細書中の各所に現れる「一実施形態において」または「一実施形態において」という表現、および他の任意の変形は、必ずしもすべてが同じ実施形態を指すとは限らない。しかしながら、本明細書で提供される本発明の教示を考慮すれば、1つまたは複数の実施形態の特徴を組み合わせることができることを理解されたい。
【0079】
例えば「A/B」の場合、「Aおよび/またはB」、「AとBとの少なくとも1つ」のような、以下の「/」、「および/または」、「少なくとも1つ」のいずれかの使用は、第1のリストされた選択肢(A)のみの選択、または第2のリストされた選択肢(B)のみの選択、または両方の選択肢(AおよびB)の選択を包含すると意図していると理解されよう。さらなる例として、「A、B、および/またはC」および「A、B、およびCの少なくとも1つ」の場合、かかる表現は、第1のリストされた選択肢(A)のみの選択、または第2のリストされた選択肢(B)のみの選択、または第3のリストされた選択肢(C)のみの選択、または第1および第2のリストされた選択肢(AおよびB)のみの選択、第1および第3のリストされた選択肢(AおよびC)のみの選択、第2および第3のリストされた選択肢(BおよびC)のみの選択、または3つすべての選択肢(AおよびBおよびC)の選択を包含すると意図されている。このことは、リストアップされた項目の数だけ拡張することができる。
【0080】
上記は、あらゆる点で例示的かつ例示的であるが、制限的なものではないと理解され、ここに開示された発明の範囲は、詳細な説明からではなく、特許法によって許される全幅に従って解釈された請求項から決定されるものである。本明細書に示され説明された実施形態は、本発明の例示に過ぎず、当業者は、本発明の範囲及び精神から逸脱することなく、様々な修正を実施することができることを理解されたい。当業者であれば、本発明の範囲と精神から逸脱することなく、様々な他の特徴の組み合わせを実施することができる。このように、特許法が要求する詳細さと特殊性をもって本発明の側面を説明したが、特許状によって請求され、保護されることを望むものは、添付の特許請求の範囲に記載されているとおりである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
【国際調査報告】