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

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

▶ デックスコム・インコーポレーテッドの特許一覧

特表2023-550249グルコースを使用する異常コンピューティング環境挙動の検出
<>
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図1
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図2
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図3
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図4
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図5
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図6
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図7
  • 特表-グルコースを使用する異常コンピューティング環境挙動の検出 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-01
(54)【発明の名称】グルコースを使用する異常コンピューティング環境挙動の検出
(51)【国際特許分類】
   A61B 5/1468 20060101AFI20231124BHJP
   A61B 5/00 20060101ALI20231124BHJP
【FI】
A61B5/1468
A61B5/00 102C
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023521776
(86)(22)【出願日】2021-11-17
(85)【翻訳文提出日】2023-04-10
(86)【国際出願番号】 US2021059640
(87)【国際公開番号】W WO2022115282
(87)【国際公開日】2022-06-02
(31)【優先権主張番号】63/117,705
(32)【優先日】2020-11-24
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ANDROID
3.iOS
(71)【出願人】
【識別番号】504016422
【氏名又は名称】デックスコム・インコーポレーテッド
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】サラ・ケイト・ピッカス
(72)【発明者】
【氏名】ブライアン・ボバー
【テーマコード(参考)】
4C038
4C117
【Fターム(参考)】
4C038KK10
4C038KL05
4C038KL09
4C038KX01
4C117XB02
4C117XB11
4C117XC15
4C117XE05
4C117XE13
4C117XE16
4C117XE24
4C117XE60
4C117XE62
4C117XG06
4C117XG19
4C117XJ13
4C117XJ42
4C117XJ45
4C117XJ52
4C117XL01
(57)【要約】
グルコースを使用する異常なコンピューティング環境挙動の検出が記載される。異常検出システムは、第1の期間中にグルコース測定値及び事象記録を受信する。第1の期間中に事象記録から欠落している欠落事象は、事象エンジンシミュレータを使用してグルコース測定値を処理することによって識別される。異常検出モデルは、第1の期間中の欠落事象に基づいて生成される。その後、異常検出システムは、第2の期間中に追加のグルコース測定値及び追加の事象記録を受信する。第2の期間中に追加の事象記録から欠落している欠落事象は、事象エンジンシミュレータを使用して追加のグルコース測定値を処理することによって識別される。異常挙動は、第2の期間中に事象記録から欠落している識別された欠落事象が、異常検出モデルの欠落事象の予測範囲外にあるときに、検出される。
【特許請求の範囲】
【請求項1】
方法であって、
第1の期間中に、装着型グルコース監視デバイスによって収集されたグルコース測定値、及び前記グルコース測定値に関連付けられた事象記録を受信することと、
事象エンジンシミュレータを使用して前記グルコース測定値を処理することによって、前記第1の期間中に前記事象記録から欠落している欠落事象を識別することと、
前記第1の期間中の前記欠落事象に基づいて異常検出モデルを生成することであって、前記異常検出モデルが、非異常である第2の期間中の欠落事象の予測範囲を含む、前記生成することと、を含む、方法。
【請求項2】
前記第1の期間中に前記事象記録から欠落している前記欠落事象を識別することが、
前記事象エンジンシミュレータを使用して、前記グルコース測定値を処理して、シミュレートされた事象を生成することと、
前記シミュレートされた事象を、前記第1の期間中の前記事象記録内の実際の事象と比較して、前記第1の期間中の前記事象記録から欠落している前記欠落事象を識別することと、を更に含む、請求項1に記載の方法。
【請求項3】
前記欠落事象が、前記第1の期間中に、前記事象記録内に一致する実際の事象を有しないシミュレートされた事象を含む、請求項2に記載の方法。
【請求項4】
前記事象エンジンシミュレータが、前記装着型グルコース監視デバイスに関連付けられたグルコース監視アプリケーションの事象エンジンの複製を含む、請求項1に記載の方法。
【請求項5】
前記第2の期間中に、前記装着型グルコース監視デバイスによって収集された追加のグルコース測定値、及び前記追加のグルコース測定値に関連付けられた追加の事象記録を受信することと、
前記事象エンジンシミュレータを使用して、前記追加のグルコース測定値を処理することによって、前記第2の期間中に、前記追加の事象記録から欠落している欠落事象を識別することと、
前記第2の期間中に前記追加の事象記録から欠落している識別された欠落事象が前記異常検出モデルの前記欠落事象の予測範囲外にあるときに、異常挙動を検出することと、
前記異常挙動を出力することと、を更に含む、請求項1に記載の方法。
【請求項6】
前記異常検出モデルの前記欠落事象の予測範囲が、非異常である1日当たりの欠落事象の予測範囲に対応しており、前記異常挙動を検出することは、前記第2の期間中の第1の日についての前記追加の事象記録から欠落している前記欠落事象が、非異常である1日当たりの前記欠落事象の予測範囲外にあるときに、異常挙動を検出することを含む、請求項5に記載の方法。
【請求項7】
前記第2の期間中の第2の日についての前記追加の事象記録から欠落している前記欠落事象が、非異常である1日当たりの前記欠落事象の予測範囲内にあるときに、非異常挙動を検出することを更に含む、請求項6に記載の方法。
【請求項8】
前記第2の期間中に前記追加の事象記録から欠落している前記欠落事象を識別することが、
前記事象エンジンシミュレータを使用して、前記追加のグルコース測定値を処理して、追加のシミュレートされた事象を生成することと、
前記追加のシミュレートされた事象を、前記第2の期間中の前記事象記録内の実際の事象と比較して、前記第2の期間中に前記事象記録から欠落している前記欠落事象を識別することと、を更に含む、請求項5に記載の方法。
【請求項9】
前記事象記録が、前記第1の期間中に、前記装着型グルコース監視デバイスによって生成された低グルコースアラートを含む、請求項1に記載の方法。
【請求項10】
前記第1の期間が、前記第2の期間に先行する、請求項1に記載の方法。
【請求項11】
前記第1の期間中及び前記第2の期間中に前記欠落事象をプロットする異常挙動ユーザインターフェースを表示させることを更に含む、請求項1に記載の方法。
【請求項12】
前記異常挙動ユーザインターフェースが、前記欠落事象の予測範囲を視覚的に指示する、請求項11に記載の方法。
【請求項13】
前記欠落事象の予測範囲外にプロットされている欠落事象は、前記欠落事象が異常挙動に対応することを指示するための視覚的なインジケータを用いて表示される、請求項12に記載の方法。
【請求項14】
1つ以上のプロセッサによる実行に応答して動作を実行する記憶された命令を含むコンピュータ可読記憶デバイスであって、前記動作は、
第1の期間中に、装着型グルコース監視デバイスによって収集されたグルコース測定値、及び前記グルコース測定値に関連付けられた事象記録を受信することと、
事象エンジンシミュレータを使用して、前記グルコース測定値を処理することによって、前記第1の期間中に前記事象記録から欠落している欠落事象を識別することと、
前記第1の期間中の前記欠落事象に基づいて異常検出モデルを生成することであって、前記異常検出モデルが、非異常である第2の期間中の欠落事象の予測範囲を含む、前記生成することと、を含む、コンピュータ可読記憶デバイス。
【請求項15】
前記第1の期間中に前記事象記録から欠落している前記欠落事象を識別することが、
前記事象エンジンシミュレータを使用して、前記グルコース測定値を処理して、シミュレートされた事象を生成することと、
前記シミュレートされた事象を、前記第1の期間中の前記事象記録内の実際の事象と比較して、前記第1の期間中の前記事象記録から欠落している前記欠落事象を識別することと、を更に含む、請求項14に記載のコンピュータ可読記憶デバイス。
【請求項16】
前記欠落事象が、前記第1の期間中に前記事象記録内に一致する実際の事象を有しないシミュレートされた事象を含む、請求項15に記載のコンピュータ可読記憶デバイス。
【請求項17】
前記事象エンジンシミュレータが、前記装着型グルコース監視デバイスに関連付けられたグルコース監視アプリケーションの事象エンジンの複製を含む、請求項14に記載のコンピュータ可読記憶デバイス。
【請求項18】
前記動作が、
前記第2の期間中に、前記装着型グルコース監視デバイスによって収集された追加のグルコース測定値、及び前記追加のグルコース測定値に関連付けられた追加の事象記録を受信することと、
前記事象エンジンシミュレータを使用して、前記追加のグルコース測定値を処理することによって、前記第2の期間中に、前記追加の事象記録から欠落している欠落事象を識別することと、
前記第2の期間中に前記追加の事象記録から欠落している識別された欠落事象が前記異常検出モデルの前記欠落事象の予測範囲外にあるときに、異常挙動を検出することと、
前記異常挙動を出力することと、を更に含む、請求項14に記載のコンピュータ可読記憶デバイス。
【請求項19】
前記異常検出モデルの前記欠落事象の予測範囲が、非異常である1日当たりの欠落事象の予測範囲に対応しており、前記異常挙動を検出することは、前記第2の期間中の第1の日についての前記追加の事象記録から欠落している前記欠落事象が、非異常である1日当たりの前記欠落事象の予測範囲外にあるときに、異常挙動を検出することを含む、請求項18に記載のコンピュータ可読記憶デバイス。
【請求項20】
前記動作は、前記第2の期間中の第2の日についての前記追加の事象記録から欠落している前記欠落事象が、非異常である1日当たりの前記欠落事象の予測範囲内にあるときに、非異常挙動を検出することを更に含む、請求項19に記載のコンピュータ可読記憶デバイス。
【請求項21】
前記第2の期間中に前記追加の事象記録から欠落している前記欠落事象を識別することが、
前記事象エンジンシミュレータを使用して、前記追加のグルコース測定値を処理して、追加のシミュレートされた事象を生成することと、
前記追加のシミュレートされた事象を、前記第2の期間中の前記事象記録内の実際の事象と比較して、前記第2の期間中に前記事象記録から欠落している前記欠落事象を識別することと、を更に含む、請求項18に記載のコンピュータ可読記憶デバイス。
【請求項22】
前記事象記録が、前記第1の期間中に前記装着型グルコース監視デバイスによって生成された低グルコースアラートを含む、請求項14に記載のコンピュータ可読記憶デバイス。
【請求項23】
前記第1の期間が、前記第2の期間に先行する、請求項14に記載のコンピュータ可読記憶デバイス。
【請求項24】
前記動作が、前記第1の期間中及び前記第2の期間中に前記欠落事象をプロットする異常挙動ユーザインターフェースを表示させることを更に含む、請求項14に記載のコンピュータ可読記憶デバイス。
【請求項25】
前記異常挙動ユーザインターフェースが、前記欠落事象の予測範囲を視覚的に指示する、請求項24に記載のコンピュータ可読記憶デバイス。
【請求項26】
前記欠落事象の予測範囲外にプロットされている欠落事象は、前記欠落事象が異常挙動に対応することを指示するための視覚的なインジケータを用いて表示される、請求項25に記載のコンピュータ可読記憶デバイス。
【請求項27】
異常検出システムであって、
第1の期間中に、装着型グルコース監視デバイスによって収集されたグルコース測定値、及び前記グルコース測定値に関連付けられた事象記録を受信し、かつ前記グルコース測定値を処理して、シミュレートされた事象を生成するための事象エンジンシミュレータと、
前記シミュレートされた事象を、前記第1の期間中の前記事象記録内の実際の事象と比較して、前記事象記録から欠落している欠落事象を識別するための比較モジュールと、
前記第1の期間中の前記欠落事象に基づいて異常検出モデルを生成するためのモデルマネージャであって、前記異常検出モデルが、非異常である第2の期間中の欠落事象の予測範囲を含む、モデルマネージャと、を備える、異常検出システム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2020年11月24日に出願され、「Detection of Anomalous Computing Environment Behavior Using Glucose」と題する米国仮特許出願第63/117,705号の利益を主張し、その開示全体は、参照により本明細書によって組み込まれる。
【背景技術】
【0002】
糖尿病は、数億人の人々に悪影響を及ぼす代謝状態であり、世界的に突出する死因のうちの1つである。I型糖尿病を患って生活する人々の場合、治療へのアクセスは、人々の生存にとって必要不可欠であり、それは、II型糖尿病を患う人々の間の有害転帰を減少させることができる。適切な治療を行えば、糖尿病に起因する心臓、血管、眼、腎臓、及び神経への重大な損傷を回避することができる。糖尿病の型(例えば、I型又はII型)のいかんにかかわらず、糖尿病をうまく管理することには、食物及び活動を監視し、何度も調整して、人の血糖を制御すること、例えば、人のグルコースの深刻な変動を低減すること、及び/又は人のグルコースを総体的に低下させることが含まれる。
【0003】
従来のグルコース監視システムは、グルコース監視デバイスを使用して、ユーザのグルコースを監視し、グルコース測定値をユーザに出力するために採用される。この一部として、従来のグルコース監視システムはまた、ユーザのグルコース値が低グルコース閾値を下回るか、又は下回ると予測されるときに出力することができる低グルコースアラートなどの様々な事象を生成することもできる。従来のグルコース監視システムのユーザは、これらの事象及びアラートに頼って軽減行動を講じて、危険なグルコース関連状態が発生することを防止するようになることがある。
【0004】
残念なことに、様々な異なる状況により、従来のグルコース監視システムが特定の事象を生成することに失敗する場合がある。そのような状況としては、グルコース監視デバイスと、ユーザのコンピューティングデバイスとの間の信号消失、グルコース監視デバイスに関わる問題、オペレーティングシステム非互換性問題、リソース競合、ユーザ行動などが挙げられ得る。一例として、特定のブランドのモバイルデバイスのための新しいオペレーティングシステムのインストール、又はそのオペレーティングシステムの新規バージョンへの更新は、モバイルデバイスとグルコース監視デバイスとの間の非互換性問題を引き起こす場合があり、これは、グルコース監視アプリケーションが特定の事象を生成することに失敗する原因となる。
【0005】
従来から、グルコース監視アプリケーションが事象を見逃す原因となっている問題を、アプリケーション開発者が検出して修正する唯一の方法は、ユーザフィードバックに基づくものである。グルコース監視デバイスのユーザは、例えば、自分のグルコース監視アプリケーションが低グルコースアラートの出力を失敗していることに気づき、かくして、苦情を提出する場合がある。十分な苦情が受け付けられると、調査が開始されて、欠落事象を引き起こす問題に対する解決策を決定することができる。しかしながら、欠落事象検出のためのこの従来のプロセスは遅く、通常、調査が開始可能になる前に、ある特定の数のユーザがその問題を検出することが必要である。更に、いくつかの欠落事象は、ユーザが気づかない場合さえあり、したがって、ユーザの苦情に基づいては、検出されないことになる。欠落事象を早く検出することができないことは、グルコース監視アプリケーション及びデバイスによって生成された事象及びアラートの精度に頼るユーザにとって有害であるか、又は更には命に関わる問題につながる可能性がある。したがって、グルコース監視アプリケーションによって生成される欠落事象をできるだけ早く検出することが大切である。
【発明の概要】
【課題を解決するための手段】
【0006】
これらの問題を克服するために、グルコースを使用する異常なコンピューティング環境挙動の検出が活用される。異常検出システムは、第1の期間中に、装着型グルコース監視デバイスによって収集されたグルコース測定値、及びそのグルコース測定値に関連付けられた事象記録を受信する。第1の期間中に事象記録から欠落している欠落事象は、事象エンジンシミュレータを使用してグルコース測定値を処理することによって識別される。異常検出モデルは、第1の期間中の欠落事象に基づいて生成される。その異常検出モデルは、非異常である第2の期間中の欠落事象の予測範囲を含み、その第2の期間は、第1の期間の後に続く。異常検出システムはまた、第2の期間中に、装着型グルコース監視デバイスによって収集された追加のグルコース測定値、及び追加のグルコース測定値に関連付けられた追加の事象記録をも受信する。第2の期間中に追加の事象記録から欠落している欠落事象は、事象エンジンシミュレータを使用して、追加のグルコース測定値を処理することによって識別される。異常挙動は、第2の期間中に事象記録から欠落している識別された欠落事象が、異常検出モデルの欠落事象の予測範囲外にあるときに、検出される。
【0007】
この概要は、以下の「発明を実施するための形態」で更に記載される概念の選択を簡略化された形態で紹介している。したがって、この概要は、特許請求される主題の本質的な特徴を識別することを意図しておらず、特許請求される主題の範囲を決定する際の補助として使用されることも意図していない。
詳細な説明は、添付の図を参照して記載されている。
【図面の簡単な説明】
【0008】
図1】本明細書に説明される技法を使用するために動作可能である典型的な実施態様における環境の解説図である。
図2図1の装着型グルコース監視デバイスの更に詳細な例を示す。
図3図1の異常検出システムが、事象をシミュレートすることによってコンピューティング環境の異常挙動を検出するシステムの例を示す。
図4】コンピューティング環境に関連付けられた経時的に観測された挙動のプロット、及び観測された挙動が異常ではない範囲の視覚化を表示するユーザインターフェースの例示的な実施態様を示す。
図5】検出された異常挙動の通知を表示するユーザインターフェースの例示的な実施態様を示す。
図6】異常検出モデルが、第1の期間中に識別された欠落事象に基づいて生成される、例示的な実施態様における手順を示す。
図7図6で生成された異常検出モデルが、第2の期間中に異常挙動を検出するために利用される例示的な実施態様における手順を示す。
図8図1図7を参照して説明及び/又は利用されて、本明細書に説明される技法の実施形態を実装するための、任意のタイプのコンピューティングデバイスとして実装することができる、例示的なデバイスの様々な構成要素を含むシステムの一例を示す。
【発明を実施するための形態】
【0009】
概要
グルコースを使用する異常なコンピューティング環境挙動の検出について説明される。異常検出システムは、第1の期間中に、装着型グルコース監視デバイスによって収集されたグルコース測定値、及びそのグルコース測定値に関連付けられた事象記録を受信する。そのグルコース測定値及び事象記録は、例えば、複数のコンピューティングデバイスに実装されるグルコース監視アプリケーションから受信することができる。これらのコンピューティングデバイスは、ユーザのグルコース測定値を各々収集するそれぞれのグルコース監視デバイスからグルコース測定値を取得する。場合によっては、例えば、グルコース監視デバイスは、リアルタイムで所定の時間間隔で、例えば、5分毎に、ユーザからグルコース測定値を収集する装着型グルコース監視デバイスである。
【0010】
グルコース監視アプリケーションの事象エンジンは、グルコース測定値を処理して、血糖事象(例えば、高血糖及び低血糖)、予測血糖事象(例えば、来たるべき低グルコース又は来たるべき高グルコース)など、グルコース監視に関連付けられた事象を生成するように構成される。この生成された事象は、ユーザのコンピューティングデバイスに出力され得、また、事象エンジンによって生成された全ての事象のリストを維持する事象記録にも記録され得る。例として、アラート及びアラームは、事象エンジンによって識別及び記録された事象のタイプに対応し得る。一般に、アラート及びアラームは、事象エンジンによって識別及び記録された危険な又は潜在的に危険な健康状態に対して起動され得、この場合、グルコース監視アプリケーションは、そのような事象の識別に応答して、コンピューティングデバイスを介して、又は何らかの他のデバイスを介して、アラート又はアラームの出力を生じさせる(例えば、その状態をユーザに通知する)ように構成される。
【0011】
動作中、装着型グルコース監視デバイスは、実質的に所定の時間間隔で、例えば、5分毎に1回の測定で、グルコース測定値をコンピューティングデバイスに送信するように構成され得る。一般に、所定の時間間隔で測定値を送信するための構成のいかんにもかかわらず、グルコース監視アプリケーション、したがって、事象エンジンは、様々な理由により、それらの測定値のうちの1つ以上をそれらのスケジューリングされた送信時間で受信しない場合があり、例えば、1つ以上の測定値が、コンピューティングデバイスと装着型グルコース監視デバイスとの間の信号消失に起因して、それらのスケジューリングされた時間で受信されない場合がある(ただし、逆に、その後には、受信され得る)。事象エンジンがそれらのグルコース測定値をスケジュール通りに受信しないシナリオでは、事象エンジンは、特定の事象を生成することができず、例えば、血糖事象(例えば、低血糖又は高血糖)に対応する測定値がスケジュール通りに受信されないときに、アラート又はアラームを生成することができない。事象が事象エンジンによって生成されず、グルコース監視アプリケーションによって出力されないときに、事象エンジンはまた、その事象も事象記録に記録させない。したがって、そのような事象は、事象エンジンによって「欠落」され得、事象記録から「欠落している」状態であり得る。欠落事象の1つの原因として信号消失が説明されるが、事象エンジンは、本記載の技法の趣旨又は範囲から逸脱することなく、様々な他の理由により、事象を見逃す場合があり、これは、場合によっては、コンピューティングデバイスのリソースの競合による可能性がある。
【0012】
従来から、そのような欠落事象は、特定の規模のユーザが欠落事象について苦情を伝えるときにのみ検出され得る。例えば、ユーザは、グルコース監視アプリケーションが低グルコースアラートの出力に失敗していることに気づき、したがって、苦情を伴ってグルコース監視システムに連絡をとることができる。十分な苦情が受け付けられると、アプリケーション開発者又は顧客サービススタッフによって調査が開始されて、その問題の対する解決策を決定することができる。しかしながら、このプロセスは、遅く、かつかなりの数のユーザがその問題を検出し、かつその苦情について声を上げる必要がある。特に、欠落した事象がユーザにとって有害であり、又は更には生命を脅かす可能性さえある場合には、欠落事象をできるだけ早く検出することが大切である。更に、低グルコースに関連する欠落事象は、例えば、ユーザが眠っている間にそれらの事象が欠落するときなど、ユーザが気づくことさえできない場合が多い。
【0013】
したがって、従来のシステムのこの問題を解決するために、第1の期間中に事象記録から欠落している欠落事象は、事象エンジンの複製である事象エンジンシミュレータを使用してグルコース測定値を処理することによって識別される。この事象エンジンシミュレータは、グルコース監視アプリケーションの事象エンジンと同じ若しくは同様のロジック(又は同じ若しくは同様のロジックの一部)を使用して実装することができる。例えば、事象エンジンシミュレータは、事象エンジンと同じ又は同様のソースコードのうちの少なくともいくつかを使用して実装することができる。事象エンジンシミュレータは、事象エンジンと同じグルコース測定値を受信して、シミュレートされた事象を生成する。次いで、このシミュレートされた事象は、第1の期間中の事象記録内の実際の事象と比較されて、事象記録から欠落している事象を識別する。したがって、欠落事象は、第1の期間中の事象記録内に一致する実際の事象を有しないシミュレートされた事象に対応する。
【0014】
次いで、異常検出システムは、第2の期間における欠落事象が、第2の期間に先行する第1の期間における決定された過去の欠落事象に照らして、異常であるかどうかを判定することができる。そのように実行するために、第1の期間中に識別された欠落事象に基づいて、異常検出モデルが生成される。例えば、この異常検出モデルは、8週間にわたる第1の期間中に識別された欠落事象に基づいて生成され得、次いで、そのモデルを使用して、1週間にわたる第2の期間内の異常挙動を検出することができる。異常検出モデルは、非異常である第2の期間中の欠落事象の予測範囲を含む。
【0015】
第1の期間の欠落事象を識別することと同様の方法で、異常検出システムは、第2の期間中に、装着型グルコース監視デバイスによって収集された追加のグルコース測定値、及びその追加のグルコース測定値に関連付けられた事象記録を受信する。第2の期間中に事象記録から欠落している欠落事象は、事象エンジンシミュレータを使用して追加のグルコース測定値を処理することによって識別される。例えば、事象エンジンシミュレータは、第2の期間中に、事象エンジンと同じグルコース測定値を受信し、シミュレートされた事象を生成する。次いで、このシミュレートされた事象は、第2の期間中の事象記録内の実際の事象と比較されて、欠落事象を識別する。
【0016】
次いで、第2の期間中の識別された欠落事象が異常検出モデルの欠落事象の予測範囲外にあるときに、異常挙動が検出される。例えば、何千人又は何百万人のユーザの集団にわたって、特定の数の欠落事象が見込まれ得る。したがって、異常事象は、欠落事象の数が異常検出モデルの欠落事象の予測範囲外にあるときに検出される。例として、異常検出モデルによって定義される欠落事象の予測範囲が1日当たり10~30個の欠落事象である場合、所与の日の間に欠落事象の数が40であり、それによって30個という欠落事象の予測範囲の上限閾値を超える場合には、異常挙動が識別されることになる。対照的に、所与の日の間に20個の欠落事象が識別される場合、20個という欠落事象がその日の間の欠落事象の予測範囲内にあるため、異常挙動は検出されないことになる。本記載の技法によれば、範囲は更に、又は代替として、パーセンテージ、例えば、ユーザ集団全体にわたる全ての事象のパーセンテージに関しても説明され得る。
【0017】
したがって、本明細書に説明される記載技法は、異常挙動を早い時期に自動的に検出することによって、従来のシステムの問題のうちの多くを解決する。すなわち、特定の規模のユーザ苦情に頼って、欠落事象を引き起こす問題を検出するのではなく、本記載の技法は、事象を(例えば、毎日)シミュレートして、異常挙動に対応する可能性のある欠落事象を検出する。とりわけ、以前の期間にわたって欠落事象の挙動をモデル化することによって、本システムは、欠落事象の通常の範囲内にある、日毎の特定の数の欠落事象を許容する。しかしながら、欠落事象の数が予測範囲外にあるとき、異常挙動は、速やかに識別され、欠落事象を引き起こす問題がユーザに対する更に多くの欠落した事象を引き起こす前に、対処することができる。したがって、異常挙動を速やかに識別するための能力により、異常挙動を引き起こす問題が速やかに解決されることが可能になり、これは、グルコース監視アプリケーションに頼るユーザの多くの健康関連問題を低減する。
【0018】
以下の説明では、最初に、本明細書に説明される技法を使用することができる典型的な環境が説明される。次いで、典型的な環境、並びに他の環境において実行され得る実施態様の詳細及び手順の例が説明される。典型的な手順の実行は、その典型的な環境に限定されるものではなく、また、その典型的な環境は、その典型的な手順の実行に限定されるものではない。
【0019】
環境の例
図1は、本明細書に説明されるように、グルコースを使用する異常なコンピューティング環境挙動の検出を採用するように動作可能である例示的な実施態様における環境100の解説図である。この例示された環境100は、装着型グルコース監視デバイス104を装着するように描かれている人102を含む。この例示された環境100はまた、コンピューティングデバイス106、グルコース監視デバイス104を装着するユーザ集団108内の他のユーザ、及びグルコース監視プラットフォーム110も含む。装着型グルコース監視デバイス104、コンピューティングデバイス106、ユーザ集団108、及びグルコース監視プラットフォーム110は、ネットワーク112を介することを含めて、通信可能に結合される。
【0020】
代替的に又は追加的に、装着型グルコース監視デバイス104及びコンピューティングデバイス106は、1つ以上の無線通信プロトコル又は技法を使用するなど、他の方法で通信可能に結合され得る。例として、装着型グルコース監視デバイス104及びコンピューティングデバイス106は、Bluetooth(例えば、Bluetooth Low Energyリンク)、近距離無線通信(near-field communication、NFC)、5Gなどのうちの1つ以上を使用して、互いに通信することができる。
【0021】
本記載の技法によれば、装着型グルコース監視デバイス104は、人102のグルコースの測定値を提供するように構成されている。本明細書では、装着型グルコース監視デバイスが論じられるが、異常なコンピューティング環境挙動が、グルコース測定値を提供することができる他のデバイス、例えば、非装着型グルコースデバイス(指穿刺を必要とする血糖測定器など)、パッチなどと関連して、グルコースを使用して検出され得ることを理解されたい。しかし、装着型グルコース監視デバイス104に関与する実施態様では、その装着型グルコース監視デバイスは、人102のグルコースを示す分析物を連続して検出して、グルコース測定値の生成を可能にするグルコースセンサを用いて構成され得る。例示された環境100において、また詳細な説明全体にわたって、これらの測定値は、グルコース測定値114として表される。
【0022】
1つ以上の実施態様では、装着型グルコース監視デバイス104は、連続グルコース監視(continuous glucose monitoring、「CGM」)システムである。本明細書で使用される場合、グルコース監視と関連して使用される「連続」という用語は、測定値を実質的に連続して生成するためのデバイスの能力を指す場合があり、その結果、デバイスは、異なるデバイスとの通信結合を確立すること(例えば、コンピューティングデバイス106が装着型グルコース監視デバイス104との無線接続を確立して、測定値のうちの1つ以上を取り出すとき)に応答して、時間間隔(例えば、1時間毎、30分毎、5分毎など)でグルコース測定値114を生成するように構成することができる。この機能は、装着型グルコース監視デバイス104の構成の更なる態様とともに、図2と関連して更に詳細に論じられる。
【0023】
更に、装着型グルコース監視デバイス104は、無線接続などを介して、グルコース測定値114をコンピューティングデバイス106に送信する。装着型グルコース監視デバイス104は、例えば、これらの測定値がグルコースセンサを使用して生成されたときに、それらの測定値をリアルタイムで伝達することができる。代替的に又は追加的に、装着型グルコース監視デバイス104は、設定された時間間隔でグルコース測定値114をコンピューティングデバイス106に伝達することができる。例えば、装着型グルコース監視デバイス104は、グルコース測定値114をコンピューティングデバイス106に(それらの測定値が生成されているときに)5分毎に伝達するように構成することができる。確実に、グルコース測定値114が伝達される時間間隔は、本記載の技法の趣旨又は範囲から逸脱することなく、上記の例とは異なってもよい。それらの測定値は、コンピューティングデバイス106からの要求に基づくなど、本記載の技法による他の基礎に従って、装着型グルコース監視デバイス104によってコンピューティングデバイス106に伝達することができる。いずれにしても、コンピューティングデバイス106は、人102のグルコース測定値114を少なくとも一時的に、例えば、コンピューティングデバイス106のコンピュータ可読記憶媒体内に維持することができる。
【0024】
グルコース測定値114に加えて、装着型グルコース監視デバイス104は、例えば、無線接続を介して、補足的なセンサ情報(図示せず)を生成してコンピューティングデバイス106に送信することができる。装着型グルコース監視デバイス104は、例えば、グルコース測定値114が伝達されたときに、この情報をグルコース測定値114とともに伝達することができ、よって、補足的なセンサ情報も同様である。代替的に又は追加的に、装着型グルコース監視デバイス104は、設定された時間間隔で補足的なセンサ情報をコンピューティングデバイス106に伝達することができ、それらの補足的なセンサ情報は、グルコース測定値114がコンピューティングデバイス106に伝達されたときに、一致してもしなくてもよい。補足センサ情報は、様々な他の基準に従ってコンピューティングデバイス106に伝達され得、それらの補足センサ情報は、グルコース測定値114が、本記載の技法の趣旨又は範囲から逸脱することなく、コンピューティングデバイス106に伝達されたときに、一致してもしなくてもよいことを理解されたい。
【0025】
補足センサ情報は、本記載の技法に従ってグルコース測定値114を補足する様々な情報に対応することができる。例として、補足センサ情報は、装着型グルコース監視デバイス104の1つ以上のセンサの状態を記述する情報、例えば、1つ以上のセンサが正常な(例えば、予測された)動作の閾値内で動作しているかどうか、及び/又は1つ以上のセンサが正常に動作していないかどうかを示す1つ又は複数の状態を含むことができる。センサ動作を記述する情報に加えて、補足センサ情報は、装着型グルコース監視デバイス104の1つ以上の他の構成要素の動作及び/又はステータスを記述することができ、いくつかの例を挙げると、バッテリーの状態、通信の送受信のための送信機又は受信機の状態、並びに送信及び/又は受信される通信に関する情報などがあり得る。追加的に又は代替的に、補足センサ情報は、装着型グルコース監視デバイス104によって生成されたグルコース測定値114に基づいて、装着型グルコース監視デバイス104のオンボードロジック(例えば、ハードウェア、ファームウェア、及び又はソフトウェアに実装される)によって起動される通知(例えば、アラート及び/又はアラーム)を含むことができる。そのような補足センサ情報は、本記載の技法の趣旨又は範囲から逸脱することなく、グルコース測定値114及び装着型グルコース監視デバイス104の動作に関連する様々な他の態様を記述することができる。
【0026】
コンピューティングデバイス106は、モバイルデバイス(例えば、携帯電話)として例示されているが、本記載の技法の趣旨又は範囲から逸脱することなく、様々な方法で構成され得る。限定されない例として、コンピューティングデバイス106は、いくつかのフォームファクタを挙げると、異なるタイプのモバイルデバイス(例えば、装着型デバイス又はタブレットデバイス)、デスクトップコンピュータ、又はラップトップコンピュータとして構成され得る。1つ以上の実施態様では、コンピューティングデバイス106は、グルコース監視プラットフォーム110に関連付けられた専用デバイスとして構成され得、その専用デバイスは、例えば、装着型グルコース監視デバイス104からグルコース測定値114を取得し、グルコース測定値114に関連する様々な計算を実行し、グルコース測定値114及びグルコース監視プラットフォーム110に関連する情報を表示し、グルコース測定値114をグルコース監視プラットフォーム110に伝達するなどのための機能を有する。
【0027】
更に、コンピューティングデバイス106は、本記載の技法による2つ以上のデバイスを表すことができる。1つ以上のシナリオでは、例えば、コンピューティングデバイス106は、装着型デバイス(例えば、スマートウォッチ)及び携帯電話の両方に対応することができる。そのようなシナリオでは、これらのデバイスの両方は、装着型グルコース監視デバイス104からグルコース測定値114を取り出し、ネットワーク112を介してそれらの測定値をグルコース監視プラットフォーム110に伝達し、グルコース測定値114に関連する情報を表示するなどのために、同じ動作のうちの少なくともいくつかを実行することが可能であり得る。代替的に又は追加的に、異なるデバイスは、他のデバイスが有しないか、又はコンピューティング命令を通じて指定されたデバイスに限定される、異なる能力を有することができる。
【0028】
コンピューティングデバイス106が別個のスマートウォッチ及び携帯電話に対応するシナリオでは、例えば、スマートウォッチは、人102の様々な生理学的マーカー(例えば、心拍数、心拍数変動性、呼吸、血流速度など)及び活動(例えば、歩行又は他の運動)を測定するための様々なセンサ及び機能を備えて構成され得る。このシナリオでは、携帯電話は、これらのセンサ及び機能を備えて構成されなくてもよいか、又はその機能の限定された量を含むことができる。ただし、他のシナリオでは、携帯電話は、同じ機能を提供することが可能である場合がある。この特定のシナリオを用いて続けると、携帯電話は、グルコース監視に関連付けられた画像を取り込むためのカメラ、及びその携帯電話がグルコース測定値114に関連する計算をより効率的に実行することを可能にするコンピューティングリソース(例えば、バッテリー及び処理速度)の量など、スマートウォッチが有しない能力を有することができる。スマートウォッチがそのような計算を実行することができるシナリオにおいても、コンピューティング命令は、それらの計算の実行を携帯電話に限定して、両方のデバイスに負担をかけず、利用可能なリソースを効率的に利用することができる。この程度まで、コンピューティングデバイス106は、本記載の技法の趣旨及び範囲から逸脱することなく、本明細書で説明されたものとは異なる方法で構成され、かつ異なる数のデバイスを表すことができる。
【0029】
説明された技法によれば、コンピューティングデバイス106は、グルコース監視アプリケーション116を含む。一般に、グルコース監視アプリケーション116は、グルコースを監視することに関連する様々な活動を実行するように構成される。これらの活動の例としては、いくつかの例を挙げると、(例えば、様々な電子的な伝達の交換を介して)グルコース測定値114の挿入及び生成のための装着型グルコース監視デバイス104を準備すること、装着型グルコース監視デバイス104からグルコース測定値114及び補足センサ情報を取得すること、グルコース監視デバイス104の動作可能な健全性を監視すること、コンピューティングデバイス106を介してユーザインターフェースの出力(例えば、表示)に、監視されたグルコースに関する情報(例えば、人102のグルコース測定値114の経時的なプロット)を提示させること、及びコンピューティングデバイス106を介してユーザインターフェース又はユーザインターフェース要素の出力に、意志決定支援情報(例えば、デジタルコーチ、グルコース監視及び管理に関連する社会的特徴、教育情報など)を提示させることが挙げられるが、これらに限定されない。
【0030】
1つ以上の実施態様では、グルコース監視アプリケーション116は、グルコース測定値114を処理して、血糖事象(例えば、高血糖及び低血糖)、予測血糖事象(例えば、来たるべき低グルコース又は来たるべき高グルコース)など、グルコース監視に関連付けられた事象を識別するように構成される。グルコース測定値114を処理してそのような事象を識別するために、グルコース監視アプリケーション116は、事象エンジン120を活用することができる。この事象エンジン120は、グルコース測定値114を入力として受信し、基礎となるロジック(例えば、発見的規則、1つ以上の機械学習モデル、及び/又は閾値比較)に従ってそれらの測定値を処理し、事象がその処理に従って識別されたときに、識別された事象を示す指示を出力することができる。事象エンジン120が事象を出力することに応答して、事象エンジン120及び/又はグルコース監視アプリケーション116は、その事象を事象記録122に記録することができる。
【0031】
例として、アラート及びアラームは、事象エンジン120によって識別され、事象記録122に記録するために出力される1つ以上の事象タイプに対応することができる。一般に、アラート及びアラームは、事象エンジン120によって記録するために識別及び出力された、危険な又は潜在的に危険な健康状態に対して起動され得る。アラート事象又はアラーム事象を出力する事象エンジン120に関連して、グルコース監視アプリケーション116は、コンピューティングデバイス106を介してか、又は他の何らかのデバイスを介して、アラート又はアラーム信号の出力を生じさせる(例えば、ユーザにその状態について通知する)ように構成することができる。アラート又はアラーム信号は、いくつかの例を挙げると、ディスプレイを介して(例えば、コンピューティングデバイス106のディスプレイデバイスを介して)、可聴コンポーネントを介して、かつ/又は触覚フィードバックコンポーネントを介して、出力することができる。アラート事象記録124は、事象記録122を形成する複数の記録のうちの1つの記録に対応することができ、事象エンジン120によって識別及び出力されたアラート事象及びアラーム事象を長く残すように構成され得る。本記載の技法によれば、アラート事象記録124は、事象エンジン120によって起動され、アラート事象記録124に入力されたアラート及び/又はアラームの履歴を含む。本記載の技法によれば、事象エンジン120によって起動された所与のアラート又はアラームは、アラート事象記録124内に対応するエントリを有することができる。
【0032】
例示された例では、コンピューティングデバイス106は、記憶デバイス118を含む。この記憶デバイス118は、グルコース測定値114、及びアラート事象記録124を含む事象記録122を記憶するように図示してある。記憶デバイス118は、本記載の技法の趣旨又は範囲から逸脱することなく、補足センサ情報などの、グルコース監視に関連付けられた様々なデータを記憶することができることを理解されたい。更に、記憶デバイス118は、1つ以上のデータベース、並びにグルコース測定値114及び事象記録122を記憶することができる他のタイプの記憶装置も表すことができる。
【0033】
1つ以上の実施態様では、グルコース監視アプリケーション116は、グルコース測定値114、事象記録122(又はその一部)、及び他の情報(例えば、補足センサ情報)をグルコース監視プラットフォーム110に送信することができる。これは、グルコース監視プラットフォーム110への「書き込み」情報と称される場合がある。グルコース監視プラットフォーム110は、様々な機能に関連して、人102のグルコース測定値114及び事象記録122、並びにユーザ集団108のユーザのグルコース測定値114及び事象記録122を処理及び記憶することができる。本記載の技法によれば、例えば、グルコース監視プラットフォーム110は、人102及びユーザ集団108のグルコース測定値114及び事象記録122を活用して、1つ以上のコンピューティング環境での異常挙動、例えば、特定のオペレーティングシステムのバージョン、及び/又は特定のブランドのモバイルデバイス上におけるグルコース監視アプリケーション116の異常挙動を識別することができる。
【0034】
異常検出システム126は、少なくともグルコース測定値114及び事象記録122を取得することによって、並びに1つ以上の異常検出技法を使用してそれらを処理することによって、異常挙動を検出するように構成される。1つ以上の実施態様では、グルコース監視プラットフォーム110は、グルコース測定値114、事象記録122、並びに人102及びユーザ集団108の補足センサ情報を記憶デバイス128に記憶する。記憶デバイス118と同様に、記憶デバイス128は、1つ以上のデータベース、及びそのような情報を記憶することができる他のタイプの記憶装置を表すこともできる。異常を検出することに関連して、異常検出システム126は、グルコース測定値114及び事象記録122のうちの1つ以上を記憶デバイス128から取得することができる。次いで、異常検出システム126は、部分的に、事象エンジンシミュレータ130を使用することによって、異常を検出することができる。
【0035】
一般に、事象エンジンシミュレータ130は、事象エンジン120の複製である。本明細書で使用される場合、「複製」という用語は、事象エンジン120が事象を生成するように構成されているシナリオにおいて、事象エンジンシミュレータ130が、事象エンジン120と同じグルコース測定値114を受信することに応答して、シミュレートされた事象を生成することを可能にする構成を指す。特定の一連のグルコース測定値が来たるべき有害な健康状態を示し、かつ事象エンジン120がその特定の一連のグルコース測定値を入力として受信することに応答して事象(例えば、アラート)を生成するように構成されているシナリオにおいて、例えば、事象エンジンシミュレータ130は、その特定の一連のグルコース測定値を入力として受信することに応答して、シミュレートされた事象(例えば、アラート)を生成するように構成される。事象エンジン120が(例えば、アラート及びアラームに加えて)グルコース監視に関連する異なるシナリオのための事象を生成するように構成され得るという点で、事象エンジンシミュレータ130はまた、そのような異なるシナリオのためにシミュレートされた事象も生成するように構成され得る。
【0036】
事象エンジン120によって生成される事象をシミュレートするために、事象エンジンシミュレータ130は、同じ若しくは同様のロジック(又はその同じ若しくは同様のロジックの一部)を使用して実装され得る。限定されない例として、事象エンジンシミュレータ130は、事象エンジン120と同じ又は同様のソースコードのうちの少なくともいくつか、事象エンジン120と同じ又は同様の実行可能コードのうちの少なくともいくつか、事象エンジン120によって使用される同じ又は同様の規則のセットのうちの少なくともいくつか、事象エンジン120によって使用される同じ又は同様のモデル(例えば、機械学習モデル)のうちの少なくともいくつかなどを使用して実装され得る。事象エンジンシミュレータ130は、本記載の技法の趣旨又は範囲から逸脱することなく、様々な方法で構成されて、事象エンジン120の挙動をシミュレートするために、事象エンジン120の処理及び出力をシミュレートすることができることを理解されたい。
【0037】
しかしながら、事象エンジン120とは対照的に、事象エンジンシミュレータ130は、グルコース監視アプリケーション116がコンピューティングリソースのためにコンピューティングデバイス106の他のアプリケーションと「競合」し得るコンピューティングデバイス106の一部としてリアルタイムに動作するのではなく、制御されたシミュレーション環境において、例えば、グルコース監視プラットフォーム110においてスケジューリングされたシミュレーション中に(例えば、毎日)動作することができる。事象エンジン120は、例えば、人102のグルコース測定値114が装着型グルコース監視デバイス104から受信されたときに、それらの測定値を処理するように構成され得る。動作中、装着型グルコース監視デバイス104は、実質的に所定の時間間隔で、例えば、5分毎に1回の測定で、グルコース測定値114をコンピューティングデバイス106に送信するように構成され得る。一般に、所定の時間間隔で測定値を送信するための構成にもかかわらず、グルコース監視アプリケーション116、したがって、事象エンジン120は、様々な理由により、それらの測定値のうちの1つ以上を、それらのスケジューリングされた送信時間に受信しない場合があり、例えば、1つ以上の測定値は、コンピューティングデバイス106と装着型グルコース監視デバイス104との間の信号消失に起因して、それらのスケジューリングされた時間に受信されない場合がある(ただし、逆に、その後に受信され得る)。事象エンジン120がそれらのグルコース測定値114をスケジュール通りに受信しないシナリオでは、事象エンジン120は、特定の事象を生成することができず、例えば、血糖事象(例えば、低血糖又は高血糖)に対応する測定値がスケジュール通りに受信されないときに、アラート又はアラームを生成することができない。事象が事象エンジン120によって生成ないし出力されないときに、事象エンジン120はまた、その事象を事象記録122にも記録させることができない。したがって、そのような事象は、事象エンジン120によって「欠落され」、かつ事象記録122から「欠落する」場合がある。
【0038】
信号消失は、欠落事象のうちの1つの原因として説明されるが、事象エンジン120は、趣旨又は範囲から逸脱することなく、様々な他の理由により、事象を欠落する場合があり、これは、場合によっては、コンピューティングデバイス106のリソースに対する競合に起因する場合がある。例えば、コンピューティングデバイス106のオペレーティングシステムは、グルコース監視アプリケーション116を、1つ以上の他のアプリケーションに対してバックグラウンドで実行させることができ、このため、1つ以上の他のアプリケーションは、コンピューティングデバイス106のコンピューティングリソースに対して優先度を有する。代替的に又は追加的に、コンピューティングデバイス106のオペレーティングシステムは、動作中、事象エンジンによって出力された事象が事象記録122に記録されることを防止することができる。代替的に又は追加的に、コンピューティングデバイス106のオペレーティングシステムの提供業者は、リソースがオペレーティングシステムのバージョン間に割り当てられている方法を変更することができる。このため、グルコース監視アプリケーション116は、配布時に、事象エンジン120が単一のスケジューリングされた送信時間毎にグルコース測定値114を処理し続ける方法で、それらのリソースにアクセスするようには構成されない場合がある。事象エンジン120はまた、グルコース監視アプリケーション116を閉じること、コンピューティングデバイス106を電源オフ又は再起動すること、通信可能な結合(例えば、装着型グルコース監視デバイス104とのBluetooth又は他の無線結合)をオフにすることなど、ユーザ行動に起因して事象を欠落する場合もある。事象エンジン120はまた、クラッシュ、機能停止、実行可能コード又はメモリの破損、マルウェアなど、概してコンピューティングデバイス106のコンピューティング環境の障害に起因して事象を欠落する場合もある。上記の理由は、事象エンジン120が事象を欠落し得るほんのいくつかの理由であることを理解され、更に、事象エンジン120が、本記載の技法の趣旨又は範囲から逸脱することなく、異なる理由により事象を欠落し得ることを理解されたい。
【0039】
コンピューティングデバイス106のリソースに対して他のアプリケーションとも競合しながら、グルコース監視に関連するデータが受信されたときにそのデータを処理するために、コンピューティングデバイス106の環境の一部として事象エンジン120を展開することは、事象エンジンシミュレータ130の動作とは対照的である。例えば、事象エンジンシミュレータ130が展開される環境は、概して、シミュレーションと関連して欠落した事象のソースを排除するように、(例えば、異常検出システム126によって)制御され得る。一例として、データが人102の装着型グルコース監視デバイス104によって生成及び伝達されたときにそのデータを受信するのではなく、事象エンジンシミュレータ130は、人102について、更には数千、数十万、数百万、又はそれ以上の数に達し得るユーザ集団108のユーザについても、記憶デバイス128からデータを取得することができる。更に、事象エンジンシミュレータ130は、シミュレーションのための記憶デバイス128から大量の履歴データ、例えば、人102及びユーザ集団108の直前の9週間のデータにアクセスするように構成され得る。更にまた、データが事象エンジンシミュレータ130に提供される前に、欠落しているデータは、補間され得、組み込まれ得、その結果、それぞれの期間の間、例えば、グルコース測定値114の、全ての一連のデータは、事象エンジンシミュレータ130への入力として提供される。
【0040】
更に、異常検出システム126は、事象エンジンシミュレータ130が事象をシミュレートする間、例えば、人102及びユーザ集団108のグルコース測定値114を処理して、人102及びユーザ集団108についてのグルコース関連事象を識別する間、コンピューティングリソース(例えば、処理サイクル、メモリなど)を事象エンジンシミュレータに割り当てることができる。シミュレーション環境の制御を通じて、異常検出システム126により、事象エンジンシミュレータ130が、事象エンジン120によって生成された実際の事象に対して、更には事象エンジン120によって欠落した事象に対しても、シミュレートされた事象を生成することが可能になる。欠落した事象は、事象エンジンシミュレータ130によってシミュレートされた事象を、事象エンジン120によって生成され、更には事象記録122に記録された実際の事象と比較することによって決定され得る。以下に更に詳細に説明されるように、異常検出システム126は、次いで、所与の期間における決定された欠落事象が、先行期間における決定された過去の欠落事象に照らして、異常であるかどうかを判定することができる。グルコースを、例えば、連続して測定して、そのような測定値を記述するデータを取得するという文脈において、図2の以下の説明を検討する。
【0041】
図2は、図1の装着型グルコース監視デバイス104の実施態様のより詳細な例200を示している。特に、図示された例200は、装着型グルコース監視デバイス104の上面図及び対応する側面図を含む。装着型グルコース監視デバイス104は、本記載の技法の趣旨又は範囲から逸脱することなく、以下の説明から、実施態様において、様々な方法で変更を行うことができることを理解されたい。上述したように、例えば、異常なコンピューティング環境挙動は、非装着型デバイス(例えば、指穿刺を必要とする血糖測定器)、パッチなど、グルコース監視のための他のタイプのデバイスと関連して、グルコースを使用して検出することができる。
【0042】
この例200では、装着型グルコース監視デバイス104は、センサ202及びセンサモジュール204を含むように図示されている。ここでは、センサ202は、例えば、人102の皮膚206中の皮下に挿入されている側面図に示してある。センサモジュール204は、上面図に破線長方形として図示してある。装着型グルコース監視デバイス104はまた、図示された例200において送信機208も含む。センサモジュール204について破線長方形を使用することにより、そのセンサモジュールが送信機208のハウジング内に収容されるか、又はそうでなければ実装され得ることが示されている。この例200では、装着型グルコース監視デバイス104は、接着パッド210及び取り付け機構212を更に含む。
【0043】
動作中、センサ202、接着パッド210、及び取り付け機構212は、アプリケーションアセンブリを形成するように組み立てられ得、アプリケーションアセンブリは、描写されているようにセンサ202が皮下挿入されるように皮膚206に適用されるように構成されている。そのようなシナリオでは、送信機208は、取り付け機構212を介して皮膚206に貼り付けた後、アセンブリに取り付けられ得る。あるいは、送信機208は、貼り付けアセンブリの一部として組み込まれ得、その結果、センサ202、接着パッド210、取り付け機構212、及び送信機208(センサモジュール204を有する)は、皮膚206に一度に全て貼り付けることができる。1つ以上の実施態様では、この貼り付けアセンブリは、別個のセンサ貼り付け具(図示せず)を使用して皮膚206に貼り付けられる。従来の血糖測定器によって必要とされる指穿刺とは異なり、装着型グルコース監視デバイス104の、ユーザが開始する貼り付けは、ほぼ無痛であり、血液の採取を必要としない。更に、自動センサ貼り付け具により、一般に、臨床医又は医療サービス提供者の支援なしに、人102がセンサ202を皮膚206中の皮下に埋め込むことが可能になる。
【0044】
この貼り付けアセンブリはまた、接着パッド210を皮膚206から剥離することによって取り外すこともできる。図示されているように、装着型グルコース監視デバイス104及びその様々な構成要素は、単純に、1つの例示的なフォームファクタであり、装着型グルコース監視デバイス104及びその構成要素は、本記載の技法の趣旨又は範囲から逸脱することなく、異なるフォームファクタを有することができることを理解されたい。
【0045】
動作中、センサ202は、無線接続又は有線接続とすることができる少なくとも1つの通信チャネルを介して、センサモジュール204に通信可能に結合されている。センサ202からセンサモジュール204への伝達、又はセンサモジュール204からセンサ202への伝達は、能動的又は受動的に実施され得、これらの伝達は、連続的(例えば、アナログ式)又は離散的(例えば、デジタル式)とすることができる。
【0046】
センサ202は、デバイス、分子、及び/又は化学物質であってもよく、それらは、センサ202とは少なくとも部分的に独立している事象に応答して変化するか又は変化を引き起こす。センサモジュール204は、センサ202に対する変化の指示、又はセンサ202によって引き起こされた変化の指示を受信するように実装されている。例えば、センサ202は、グルコース及び酸素と反応して、電極を含み得るセンサモジュール204によって電気化学的に検出可能である過酸化水素を形成するグルコースオキシダーゼを含むことができる。この例では、センサ202は、1つ以上の測定技法を使用してグルコースレベルを示す、血液又は間質液中の分析物を検出するように構成されたグルコースセンサとして構成され得るか、又はグルコースセンサを含み得る。1つ以上の実施態様では、センサ202はまた、乳酸塩レベルなどの他のマーカーを示す血液又は間質液中の分析物も検出するように構成され得、これは、グルコースベースの事象を識別又は予測する際の精度を向上することができる。追加的に又は代替的に、装着型グルコース監視デバイス104は、他のマーカーを示すそれらの分析物を検出するための、センサ202への追加のセンサを含むことができる。
【0047】
別の例では、センサ202(又は装着型グルコース監視デバイス104の追加の図示されていないセンサ)は、第1及び第2の導体を含むことができ、センサモジュール204は、センサ202のその第1及び第2の導体の両端の電位の変化を電気的に検出することができる。この例では、センサモジュール204及びセンサ202は、電位変化が温度変化に対応するように、熱電対として構成されている。いくつかの例では、センサモジュール204及びセンサ202は、単一の分析物、例えば、グルコースを検出するように構成される。他の例では、センサモジュール204及びセンサ202は、複数の分析物、例えば、ナトリウム、カリウム、二酸化炭素、及びグルコースを検出するように構成される。代替的に又は追加的に、装着型グルコース監視デバイス104は、1つ以上の分析物(例えば、ナトリウム、カリウム、二酸化炭素、グルコース、及びインスリン)だけでなく、1つ以上の環境条件(例えば、温度)も検出するための複数のセンサを含む。したがって、センサモジュール204及びセンサ202(及び任意の追加のセンサ)は、1つ以上の分析物の存在、1つ以上の分析物の不在、及び/又は1つ以上の環境条件の変化を検出し得る。
【0048】
1つ以上の実施態様では、センサモジュール204は、プロセッサ及びメモリ(図示せず)を含むことができる。このセンサモジュール204は、プロセッサを活用することによって、上述した変化を示すセンサ202との通信に基づいて、グルコース測定値114を生成することができる。センサ202からのこれらの伝達に基づいて、センサモジュール204は、少なくとも1つのグルコース測定値114を含む伝達可能なデータパッケージを生成するように更に構成されている。1つ以上の実施態様では、センサモジュール204は、限定されない例として、補足センサ情報214を含む追加のデータを含むようにそれらのパッケージを構成することができ、その補足センサ情報は、図1に関連して説明されたが図示されていない補足センサ情報に対応し得る。そのような補足センサ情報には、図1に関連して説明された情報、センサ識別子、センサステータス、グルコース測定値114に対応する温度、グルコース測定値114に対応する他の分析物の測定値などの任意の組み合わせが含まれ得る。補足センサ情報214は、本記載の技法の趣旨又は範囲から逸脱することなく、少なくとも1つのグルコース測定値114を補足する様々なデータを含むことができることを理解されたい。
【0049】
装着型グルコース監視デバイス104が無線送信のために構成されている実施態様では、送信機208は、グルコース測定値114及び/又は補足センサ情報214をデータストリームとしてコンピューティングデバイスに無線で送信することができる。代替的に又は追加的に、センサモジュール204は、グルコース測定値114及び/又は補足センサ情報214を(例えば、センサモジュール204のメモリ、及び/又は装着型グルコース監視デバイス104の他の物理的コンピュータ可読記憶媒体に)バッファリングし、後に様々な間隔で、例えば、時間間隔(1秒毎、30秒毎、1分毎、5分毎、1時間毎など)、記憶間隔(バッファリングされたグルコース測定値114及び/又は補足センサ情報214がデータの閾値量、又は測定値の数に到達したとき)などで、そのバッファリングされたグルコース測定値114及び/又はバッファリングされた補足センサ情報214を送信機208に送信させることができる。
【0050】
環境の例、及び装着型グルコース監視デバイスの例を検討してきたが、ここで、1つ以上の実施態様による、グルコースを使用する異常なコンピューティング環境挙動の検出のための技法の詳細のいくつかの例に関する説明について検討する。
【0051】
グルコースを使用する異常なコンピューティング環境挙動の検出
図3は、図1の異常検出システムが、事象をシミュレートすることによってコンピューティング環境の異常挙動を検出するシステムの例300を示している。この図示された例300は、図1から、事象エンジンシミュレータ130を有する異常検出システム126を含み、グルコース測定値114及び事象記録122を入力として受信するように示されている。
【0052】
図示された例300では、異常検出システム126は、コンピューティング環境の異常挙動308を検出するために、比較モジュール302、モデルマネージャ304、及び異常検出モデル306を更に含む。異常検出システム126は、これらの様々な構成要素とともに図示してあるが、実施態様において、異常検出システム126は、本記載の技法の趣旨又は範囲から逸脱することなく、より少ない、より多い、かつ/又は異なる構成要素を含み得ることを理解されたい。
【0053】
本記載の技法によれば、事象エンジンシミュレータ130は、シミュレートされた事象310を生成するように構成されている。この例300では、事象エンジンシミュレータ130は、グルコース測定値114を入力として受信するように図示してあるが、事象エンジンシミュレータ130は、1つ以上の実施態様において、追加的又は異なるデータを入力として受信して、シミュレートされた事象310を生成することができる。例えば、事象エンジンシミュレータ130は、追加的に又は代替的に、補足センサ情報214及び/又は他の情報(例えば、健康状態追跡情報、アプリケーション使用データ、ユーザプロファイル情報)を受信して、シミュレートされた事象310を生成することができる。
【0054】
いずれにしても、事象エンジンシミュレータ130は、1つ以上の実施態様において、グルコース測定値114を処理し、そのグルコース測定値114を処理することに基づいて、シミュレートされた事象310を生成するように構成されている。本記載の技法によれば、事象エンジンシミュレータ130は、動作中、人102、及びユーザ集団108又はユーザ集団108のサブセットについてのグルコース測定値114を取得することができる。例えば、事象エンジンシミュレータ130は、指定された基準に一致する、ユーザ集団108のサブセットについてのグルコース測定値114を取得することができる。そのような基準には、限定されない例として、グルコース監視アプリケーション116が動作するコンピューティングデバイスのタイプ(例えば、携帯電話、スマートウォッチ、タブレット、専用グルコース監視デバイスなど)、グルコース監視アプリケーション116が動作するコンピューティングデバイスの製造業者及び/又はモデル(例えば、Apple(登録商標)iPhone 12、Samsung(登録商標)Galaxy、Google(登録商標)Pixel Phone 5など)、グルコース監視アプリケーション116が動作するコンピューティングデバイスのオペレーティングシステム(例えば、iOS、Androidなど)、オペレーティングシステムのバージョン、装着型グルコース監視デバイス104との通信可能な結合のタイプ(例えば、Bluetooth、5G、NFCなど)、装着型グルコース監視デバイス104との通信可能な結合のステータス、(例えば、グルコース監視プラットフォーム110の)1つ以上のサービスをグルコース監視アプリケーション116にネットワーク112を介して提供するサーバの識別情報、1つ以上のサービスをグルコース監視アプリケーション116に提供するサーバのステータス、コンピューティングデバイス106に関連付けられた(例えば、オンボード及び/又は通信可能に結合された)ハードウェアの識別子、(例えば、他のアプリケーションを含む)コンピューティングデバイス106のソフトウェアの識別子、グルコース監視デバイスの製造元及び/又はモデル(例えば、Dexcom(登録商標)G5、Dexcom(登録商標)G6、Dexcom(登録商標)G7、Abbott(登録商標)Freestyle Libre、Abbott(登録商標)Freestyle Libre 2)、グルコース監視デバイス(又はグルコース監視デバイスの構成要素)の製造ロット、ユーザ人口統計、ユーザ所在地、グルコース監視アプリケーション116のバージョンなどが含まれ得る。したがって、事象エンジンシミュレータ130は、本記載の技法の趣旨又は範囲から逸脱することなく、様々な基準の1つ以上の仕様に基づいて選択される、ユーザ集団108のサブセットについてのデータを取得することができることを理解されたい。
【0055】
上述したように、事象エンジンシミュレータ130は、グルコース測定値114を処理し、グルコースにおけるグルコース関連事象を識別又は予測し、そのグルコース関連事象の識別又は予測に応答して、シミュレートされた事象310を出力するように構成されている。本記載の技法によれば、事象エンジンシミュレータ130は、事象エンジン120が事象を識別又は予測して、その事象を事象記録122に記録するように構成されている一連のグルコース測定値114を処理することに基づいて、事象を識別又は予測して、シミュレートされた事象310を出力するように構成されている。事象エンジンシミュレータ130が事象エンジン120を模擬する、すなわち、シミュレートするこの能力は、事象エンジンシミュレータ130の構成に基づくものであり、この構成により、事象エンジンシミュレータが1つ以上のタイプの記録について事象エンジン120をシミュレートすることが可能になり、すなわち、事象エンジンシミュレータ130は、いくつかの実施態様において、事象エンジン120の能力をシミュレートして、シミュレートされたアラート事象を生成するが、小休止状態の関連事象をシミュレートしないように構成され得る。図示された例100に関連して上で説明したように、例えば、事象エンジンシミュレータ130は、事象エンジン120と同じ又は同様のソースコードのうちの少なくともいくつか、事象エンジン120と同じ又は同様の実行可能コードのうちの少なくともいくつか、事象エンジン120によって使用されるものと同じ又は同様の規則セットのうちの少なくともいくつか、事象エンジン120によって使用されるものと同じ又は同様のモデル(例えば、機械学習モデル)のうちの少なくともいくつかなどを使用する実施態様に基づいて、事象エンジンをシミュレートするように構成され得る。事象エンジンシミュレータ130の構成は、経時的に更新されて、事象エンジンシミュレータ130が事象エンジン120のもっともっと多くの挙動をシミュレートすることができること、例えば、事象エンジン120によって生成されたもっともっと多くの事象について、シミュレートされた事象310を生成することができることを理解されたい。
【0056】
ただし、1つ以上の実施態様において、事象エンジンシミュレータ130は、事象エンジン120が事象を生成するように構成されている全ての事象タイプについて、必ずしも単純に、シミュレートされた事象310を生成しないように構成され得ることを理解されたい。代替的に又は追加的に、事象エンジンシミュレータ130は、1つ以上の指定されたタイプの事象のみについて、シミュレートされた事象310を生成し、指定されていない事象タイプについてはそれを生成しないように構成され得る。シミュレートされた事象生成は、異常検出システム126のユーザ(例えば、グルコース監視プラットフォーム110に関連付けられた開発者)が、事象エンジン120によって生成された事象(又は事象のタイプ)のうちの1つ以上に対して、たとえ存在したとしても、ほとんど利用性がなかった場合があるため、これらの方法では制限され得る。更に、事象エンジン120が、ユーザ集団108(又は更にはユーザ集団108のサブセット)からのデータを使用するシミュレーション中に、事象を生成するように構成されている、目的とする事象の全てをシミュレーションすることは、グルコース監視プラットフォーム110の他のサービスの提供を妨げ、かつ/又はグルコース監視プラットフォーム110に関連付けられたビジネスを上回る費用を費やすことになる、ある量のコンピューティングリソース(例えば、処理サイクル及び/又はメモリ)を必要とし得る。
【0057】
いずれにせよ、事象エンジンシミュレータ130は、グルコース測定値114を処理して、様々な事象を識別し、その識別に応答してそれぞれのシミュレートされた事象310を生成することができる。次いで、シミュレートされた事象310は、事象エンジン120によって生成された実際の事象と比較されて事象記録122に記録することができ、その事象記録122から「欠落事象」を決定することができる。次いで、異常検出モデル306は、それらの欠落事象を処理して、所与の期間にわたって決定された欠落事象が過去の欠落事象に対して異常であるかどうかを判定することができる。
【0058】
一例として、事象エンジンシミュレータ130は、1つ以上の実施態様において、シミュレートされた事象310を生成して、事象エンジン120によって生成されたアラート及びアラームをシミュレートするように構成され、その結果、例えば、もし存在すれば、アラート及びアラームに関連して、異常挙動308が、所与の期間にわたって決定され得る。上述したように、事象エンジン120によって生成及び記録された実際の事象は、事象記録内に長く残され、その結果、事象エンジン120によって生成及び記録されたアラート及びアラームは、アラート事象記録124に長く残される。この例300では、アラート事象記録124に実際に記録されたアラート及びアラームは、記録されたアラート312として図示してある。この例300に図示してあるグルコース測定値114、事象記録122、アラート事象記録124、及び記録されたアラート312は、所与のシミュレーションについて考慮されている、ユーザ集団108の各ユーザからのデータに対応し得ることを理解されたい。言い替えると、事象エンジンシミュレータ130は、所与のシミュレーションに関連して考慮されている、各ユーザについてのグルコース測定値114を受信することができ、比較モジュール302は、所与のシミュレーションに関連して考慮されている、各ユーザについてのアラート事象記録124を受信することができる。
【0059】
一般的に言えば、比較モジュール302は、シミュレートされた事象310を、記録された事象と比較して、欠落事象を決定する。シミュレートされた事象310がアラート及びアラームに対して生成される例では、比較モジュール302は、事象エンジン120によって生成される必要があったアラート及びアラームを示すシミュレートされた事象310を、記録されたアラート312、すなわち、事象エンジン120によって実際に生成及び記録されたアラート及びアラームと比較するように構成される。比較モジュール302は、本記載の技法の趣旨又は範囲から逸脱することなく、様々な方法で、シミュレートされた事象310を、記録された事象と比較することができる。限定されない例として、比較モジュール302は、シミュレートされた事象310から第1の事象を取り出し、事象記録122内の事象にわたって繰り返して、第1の事象に対応する実際の事象が事象記録122内に含まれるかどうかを判定することができる。第1の事象に対応する実際の事象が事象記録内に含まれている場合、比較モジュール302は、シミュレートされた事象310から第2の事象を取り出し、事象記録122内の事象にわたって繰り返して、第2の事象に対応する実際の事象が事象記録に含まれているかどうかを判定することによって、前進することができる。
【0060】
しかしながら、第1の事象に対応する実際の事象が事象記録122内に含まれていない場合、比較モジュール302は、第1の事象が事象記録122からの「欠落事象」に対応すると決定することができる。比較モジュール302は、いくつかの例を挙げると、欠落事象が決定されるたびにインクリメントするカウンタ、事象記録122から欠落していると決定されたシミュレートされた事象310の各々に対する参照(例えば、識別子のリスト)、及び/又は決定された欠落事象のリスト(例えば、事象が事象エンジン120によって記録された方法と同様の事象の詳細を含む)など、欠落事象を出力するか、又はそれ以外の場合では、欠落事象の記録を維持することができる。比較モジュール302は、シミュレートされた事象310の各々を同様のやり方で処理して、それらが事象記録122に含まれているか否かを判定することができる。比較モジュール302は、本記載の技法の趣旨又は範囲から逸脱することなく、他の方法で、シミュレートされた事象310を事象記録122と比較することができる。事象エンジンシミュレータ130がアラート及びアラームのためのシミュレートされた事象310を生成する場合のアラート及びアラームの例を用いて継続すると、例えば、比較モジュール302は、同じ期間にわたって、いくつかのシミュレートされた事象310を、いくつかの記録されたアラート312と単純に比較することができる。代替的に又は追加的に、比較モジュール302は、1つ以上のサンプリング技法を使用して、欠落事象を決定することができる。
【0061】
上述したように、比較モジュール302は、欠落事象、又はその欠落事象の何らかの指示を出力するように構成されており、例えば、それらは、事象エンジン120が事象記録122に事象を生成及び/又は記録する必要があったおおよその時間を示すタイムスタンプを含むか、又はそれ以外の場合ではそのタイムスタンプに関連付けられ得る。この例300では、比較モジュール302は、例えば、第1の欠落事象314及び第2の欠落事象316を出力するように図示されており、それらの事象は、シミュレートされた事象310を、記録されたアラート312と比較することに基づいて決定される。したがって、第1の欠落事象314及び第2の欠落事象316は、この例300において、欠落しているアラート及び/又はアラームに対応し得る。異常検出システム126が他のタイプの事象についての異常を決定しているシナリオでは、第1の欠落事象314及び第2の欠落事象316は、欠落していると決定されているそれらの他のタイプの事象に対応し得る。
【0062】
本記載の技法によれば、第1の欠落事象314は、第1の期間内の時間に関連付けられたシミュレートされた事象に対応し得、第2の欠落事象316は、第2の期間内の時間に関連付けられたシミュレートされた事象に対応し得、ここで、第1の期間は、第2の期間に先行する。1つ以上の実施態様では、グルコース測定値114、及び事象記録122に記録された事象は、時間順データとして構成され得、例えば、それらは、時系列データとして構成され得る。これに基づいて、シミュレートされた事象310、並びに第1の欠落事象314及び第2の欠落事象316はまた、時間順データ、例えば、時系列としても構成され得る。時間順とは、データ(例えば、それぞれの測定、事象、及び/又は記録)が、時間順に索引付け若しくはリスト化され得るか、又はそれ以外の場合には(例えば、関連付けられたタイムスタンプに従って)特定の時間に関連付けられ得ることを意味する。
【0063】
いずれにしても、第1の欠落事象314は、ある時点に先行する時間に対応し得、第2の欠落事象316は、その時点及び/又はその時点の後に続く時間に対応し得る。1つ以上の実施態様では、時点は、過去の時刻に対応し得、例えば、異常検出モデル306が実際に使用され、データを処理して、異常挙動308を決定する現在の時間ではない。例として、異常検出システム126は、現在の時間に先行する対象期間(例えば、1週間)にわたって異常挙動308を検出するように展開され得る。この例では、異常検出モデル306は、対象期間に先行する過去の期間、例えば、対象の週に先行する8週間に基づいて、対象期間にわたって異常挙動308を検出するように更に構成され得る。したがって、第2の欠落事象316から第1の欠落事象314を分離するために使用されるこの例の時点は、現在の時間の1週間前に対応し得る。
【0064】
異常検出モデル306がその週の前の8週間の事象に基づいて、先行する週にわたる異常挙動308を決定する例を考えると、第1の欠落事象314は、週2~9に対応し得、第2の欠落事象316は、週1に対応し得、ここで、週9は、現在の時間から最も遠い過去の週であり、週1は、現在の時間から最も近い過去の週である。確かに、この例では、数週間の時間が説明されているが、異常検出モデル306は、いくつかの例を挙げると、日(例えば、ある日に先行する1つ以上の過去の日からその日にわたる異常挙動を決定すること)、時間(例えば、ある時間に先行する1つ以上の過去の時間からその時間にわたる異常挙動を決定すること)、分、月、及び四半期などの異なる期間に基づいて、異常挙動308を決定するように構成され得る。異常検出モデル306は、本記載の技法の趣旨又は範囲から逸脱することなく、様々な期間にわたって、また、そのような期間に先行する異なる量の時間から(例えば、それは、8対1の比に限定されない)、異常挙動308を決定することができる。
【0065】
一般に、モデルマネージャ304は、異常検出モデル306を生成するように、又はそれ以外の場合にはそれを訓練するように構成される。特に、モデルマネージャ304は、時間順の過去のデータの第1のセット、例えば、第1の欠落事象314に基づいて、異常検出モデルを生成するか、又はそれ以外の場合にはそれを訓練することができる。モデルマネージャ304が異常検出モデル306を生成すると、その異常検出モデル306は、時間順データの第2のセット内に異常が存在するかどうか、例えば、第2の欠落事象316内に異常が存在するかどうかを判定するように構成される。1つ以上の実施態様では、モデルマネージャ304は、過去のデータの第1のセットに基づいて、異常検出モデル306を生成して、非異常挙動の予測範囲をモデル化する。欠落事象の文脈では、例えば、モデルマネージャ304は、第1の欠落事象314に基づいて、異常検出モデル306を生成して、非異常である欠落事象の予測範囲(例えば、1日当たりの)をモデル化することができる。
【0066】
異常挙動308を決定することの一部として、異常検出モデル306は、時間順データの第2のセットを処理して、時間順データの第2のセットによって記述されたときに、観測されたどの挙動が異常検出モデル306の予測範囲内に入るか、したがって、異常ではないかを決定することができる。異常検出モデル306はまた、時間順データの第2のセットによって記述されたときに、観測されたどの挙動が異常検出モデル306の予測範囲外に入るか、したがって、異常であるかを決定することもできる。異常検出モデル306は、予測範囲外であると決定されたデータを処理することに応答して、異常挙動308を出力する。欠落事象の文脈では、異常検出モデル306の予測範囲(例えば、1日当たりの欠落事象の数又はパーセントとしても構成される)内に入る、第2の欠落事象316(例えば、1日当たりの欠落事象の数又はパーセント)によって記述される欠落事象は、異常ではない。しかしながら、異常検出モデル306の予測範囲(例えば、1日当たりの欠落事象の数又はパーセントとしても構成される)外に入る、第2の欠落事象316(例えば、1日当たりの欠落事象の数又はパーセント)によって記述される欠落事象は、異常である。これらの異常事象について、異常検出モデル306は、異常挙動308を出力する。
【0067】
モデルマネージャ304は、様々なアルゴリズムに従って、異常検出モデル306を生成することができる。時間順データ(例えば、時系列データ)を使用する生成が上記及び下記で説明されているが、異常検出モデル306は、異なる実施態様において、時間順ではないデータを活用するアルゴリズムを、少なくとも部分的に使用して実装され得る。しかし、時間順データを必要とする少なくとも1つの実施態様では、モデルマネージャ304は、異常検出モデル306をProphetモデルとして構成することができる。Prophetモデル実施態様では、モデルマネージャ304は、異常検出モデル306を生成することができ、その結果、いくつかの例を挙げると、例えば、第1のデータセット(例えば、第1の欠落事象314)において観測される季節特徴は、フーリエ級数を用いて表され、第1のデータセットにおいて観測される休日特徴(例えば、感謝祭のような事象に関連して決定される挙動の変化)は、インジケータ特徴を用いて表され、かつ/又はそのモデルは、マルコフ連鎖モンテカルロサンプリングを使用してフィッティングされる。
【0068】
一般に、Prophetモデルは、変化点の頻度及び大きさに基づいて、将来の不確実性を予測し、その結果、(例えば、大きさに関して)頻繁にかつ又は統計学的に有意にデータの「平均」から逸脱する変化点が存在する場合、予測範囲は、より少なく、かつより有意ではない逸脱が存在する場合よりも広がる(例えば、確実性がより低い)。しかしながら、比較的広い範囲では、異常検出モデル306が、グルコース監視アプリケーション116及び/又は装着型グルコース監視デバイス104のユーザにとって物理的危険性をもたらし得る挙動(例えば、アラート及びアラームの欠落)など、異常であることをより良好に判定することができるコンピューティング環境の挙動を、異常として検出することができない場合がある。したがって、1つ以上の実施態様では、異常検出モデル306は、基本Prophetモデル実施態様から修正されて、将来の変化点の数(例えば、第2のデータセット以降に対応する期間の間に起こることになる変化点の数)に対応する、モデルのパラメータをゼロに設定することなどによって、予測範囲を狭めることができる。異常挙動は、予測範囲外に入るものとして上記及び下記に説明されているが、1つ以上の実施態様において、異常検出モデル306は、(データが予測範囲内におおむね入り続ける場合であっても)経時的なデータのドリフト(例えば、上方又は下方)を検出することなどによって、他の方法で異常を検出することができる。モデルマネージャ304は、本記載の技法の趣旨又は範囲から逸脱することなく、グルコースに基づいて、かつ様々な異常検出技法のいずれかを使用して、異常検出モデル306を構成し、コンピューティング環境における異常を検出することができることを理解されたい。
【0069】
欠落事象に加えて、異常検出モデル306は、装着型グルコース監視デバイス104、グルコース監視アプリケーション116、及び/又はグルコース監視プラットフォーム110に関連付けられた様々な測定項目について、異常挙動308の指示を出力するように構成され得る。これらの他の測定項目の例には、限定されない例として、グルコース測定値(例えば、経時的なドリフト、又はコンピューティング環境における変化、及び/若しくは装着型グルコース監視デバイス104の異なる構成に起因して起こり得る他の異常を検出するための)、クラッシュ数(例えば、グルコース監視アプリケーション116、コンピューティングデバイス106、及び/又はグルコース監視プラットフォームのサーバデバイスの)、クラッシュ率、1日当たりの書き込み数(例えば、コンピューティングデバイス106からグルコース監視プラットフォーム110へのグルコース測定値114及び事象記録122の)、パケット取り込み(例えば、装着型グルコース監視デバイス104からコンピューティングデバイス106に伝達されるグルコース測定値114の)が含まれ、これらは、ある期間(例えば、1日)にわたってユーザ毎に取り込まれたパケット数、グルコース監視プラットフォーム110へのユーザ集団108の、期間当たりの(例えば、1日当たりの)データ書き込み数(例えば、グルコース測定値114及び事象記録122の)、言語コードエラーを有するユーザ集団108のユーザ数、ある期間(例えば、1日当たり)にわたってユーザがグルコース監視アプリケーション116のグルコース傾向画面を閲覧する回数又はパーセントなどに関するものであり得る。
【0070】
1つ以上の実施態様では、異常挙動308は、第2のデータセットのどのデータが異常であるか、例えば、第2の欠落事象316のうちのどれが異常挙動308であるかを指示する。例として、異常挙動308は、第2の欠落事象316に対応するどの日が、例えば、異常検出モデル306の予測範囲を上回るか又は下回る異常欠落事象を有するかを指示することができる。異常検出モデル306による異常挙動308の出力に応答して、異常検出システム126は、異常挙動308、又はその異常挙動の通知を1人以上のユーザ、例えば、グルコース監視プラットフォーム110に関連付けられた開発者に出力することができる。異常検出システム126は、本記載の技法の趣旨又は範囲から逸脱することなく、異常挙動に関する電子メールを受信するように指定されたユーザに電子メールを送ること、異常挙動に関する通知を受信するように指定されたユーザのモバイルデバイス上に通知を出力させること、異常検出システム126のユーザインターフェースを介して異常挙動の視覚化を表示させることなどによる様々な方法で、異常挙動308及び/又はその異常挙動に関する通知を出力することができる。異常挙動308を視覚的に伝えるユーザインターフェースを表示する文脈において、図4の以下の説明を検討する。
【0071】
図4は、経時的なコンピューティング環境に関連付けられた観測された挙動のプロット、及び観測された挙動が異常ではない範囲の視覚化を表示するユーザインターフェースの実施態様の例400を示している。
【0072】
例400は、ユーザインターフェース404を表示する表示デバイス402を含み、このユーザインターフェースは、本記載の技法による異常検出システム126に関連付けられ、例えば、グルコース監視プラットフォーム110によって収集されたデータ内で識別された異常を視覚的に提示する。確実に、異常挙動308は、可聴報告を介して音を出すなど、本記載の技法に従って他の方法で提示され得る。
【0073】
ここで、ユーザインターフェース404は、第1の欠落事象314及び第2の欠落事象316の指示を経時的にプロットするグラフ406を含む。特に、グラフ406は、第1の欠落事象314及び第2の欠落事象316によって示されているように、1日当たりの欠落事象の数をプロットしている。事象指示408、410は、第1の欠落事象314の、1日当たりの欠落事象の数を示す示度の例であり、事象指示412、414は、第2の欠落事象316の、1日当たりの欠落事象の数を示す示度の例である。したがって、(例えば、時系列で先行する)異常検出時間416の左側にプロットされた事象示度は、第1の欠落事象314に対応し、したがって、(例えば、時系列で後に続く)異常検出時間416の右側にプロットされた事象示度は、第2の欠落事象316に対応する。
【0074】
本明細書に説明される技法によれば、異常検出モデル306は、異常検出時間416の前の時間に関連付けられたデータに基づいて生成される。更に、異常検出モデル306は、異常検出時間416の後の時間に関連付けられたデータについての異常を決定するように構成されている。1つ以上の実施態様では、異常検出モデル306は、例えば、図示された例400に示されているように、異常検出時間416に関連付けられたデータについての異常を決定するように構成されている。あるいは、異常検出モデルは、異常検出時間416に関連付けられたデータに基づいて、生成され得る。
【0075】
プロットされた事象指示に加えて、グラフ406はまた、範囲視覚化418も含む。この範囲視覚化418は、異常検出モデル306によってモデル化された範囲に対応する。この例400では、範囲視覚化418は、予測範囲420の視覚化を含み、これは、異常検出時間416に対して(例えば、時間的に)後に続く範囲視覚化418の部分に対応する。一般に、異常検出モデル306は、予測範囲420を使用して、異常挙動308を決定する。図示された例400では、予測範囲420外の指示に対応するデータは、異常であり、予測範囲420内の指示に対応するデータは、異常ではない。この目的のために、指示422、424は、予測範囲420外にあるため、異常挙動308に対応する。更に、それらの指示422、424は、視覚的インジケータ426、428とともに更に表示され、これらのインジケータは、指示422、424が異常挙動308に対応することを示す。ここで、視覚的インジケータ426、428は、星印として図示されているが、それらの指示は、本記載の技法の趣旨又は範囲から逸脱することなく、それらが異常であることを示すための様々な方法で強調され得ることを理解されたい。1つ以上の実施態様では、視覚的インジケータを含まず、かつ異常挙動が決定されている指示は、異常挙動に対応しない。
【0076】
この例400では、ユーザインターフェース404は、概して、グラフ406及び決定された異常挙動308に関連して様々なタスクを実行するためにユーザ選択可能であり得る様々な手段を含む。例えば、ユーザインターフェース404は、いくつかの例を挙げると、ユーザがグラフ406(又はその部分)上でズームイン又はズームアウトし、グラフ406(又はその部分若しくは提示されていない部分)上でパンして、グラフ上の様々な情報(例えば、選択された指示に関連して更なる情報を提示させるための表示された指示)を選択し、(例えば、ウェブページへのリンクを介して、ウェブベースのアプリケーションを介して、又は電子メールなどのメッセージ内に)グラフ406を1人以上の他のユーザと共有し、異常挙動に関して1人以上のユーザに(例えば、電子メールを介して)通知することが可能である手段を含み得る。確実に、異常挙動308を提示するためのユーザインターフェースは、本記載の技法の趣旨又は範囲から逸脱することなく、異常挙動308及びその視覚化に関連して実行されるべき異なるタスクを可能にする様々な手段を含むように構成され得る。
【0077】
図5は、検出された異常挙動の通知を表示するユーザインターフェースの実施態様の例500を示している。
【0078】
この例500では、コンピューティングデバイス502は、コンピューティングデバイス502の表示デバイス506を介して、ユーザインターフェース504(例えば、ロック画面)を表示するように示されている。ここで、通知508は、ユーザインターフェース504を介して更に提示されている。この通知508は、検出された異常挙動、例えば、異常挙動308に関する情報を含む。例として、異常検出システム126は、異常検出システム126に関連付けられたユーザ、例えば、検出された異常挙動の1つ以上のタイプに関する通知を受信するように指定されている、グルコース監視プラットフォーム110に関連付けられた開発者のために、コンピューティングデバイス502において通知508を表示され得る。ユーザは、本記載の技法の趣旨又は範囲から逸脱することなく、異常挙動308に関して様々な他の方法で(例えば、電子メールによって)通知され得る。
【0079】
グルコースを使用する、異常なコンピューティング環境挙動の検出のための技法の典型的な詳細を説明してきたが、ここで、その技法の追加の態様を例証するためのいくつかの手順例を検討する。
【0080】
例示的な手順
このセクションは、グルコースを使用して異常なコンピューティング環境挙動を検出するための手順の例について説明する。手順の態様は、ハードウェア、ファームウェア、ソフトウェア、又はそれらの組み合わせにおいて実装され得る。手順は、1つ以上のデバイスによって実行される動作を指定するブロックのセットとして示され、必ずしもそれぞれのブロックによって動作を実行するために示される順序に限定されない。少なくともいくつかの実施態様において、それらの手順は、事象エンジンシミュレータ130、比較モデル302、モデルマネージャ304、及び異常検出モデル306を使用する異常検出システム126などの異常検出システムによって実行される。
【0081】
図6は、異常検出モデルが、第1の期間中に識別された欠落事象に基づいて生成される実施態様の例における手順600を示している。
【0082】
装着型グルコース監視デバイスによって収集されたグルコース測定値、及びグルコース測定値に関連付けられた事象記録が、第1の期間中に受信される(ブロック602)。例として、異常検出システム126は、第1の期間中に、装着型グルコース監視デバイス104によって収集されたグルコース測定値114、及び事象記録122を入力として受信する。
【0083】
事象記録から欠落している欠落事象は、事象エンジンシミュレータを使用してグルコース測定値を処理することによって、第1の期間中に識別される(ブロック604)。例として、異常検出システム126の事象エンジンシミュレータ130は、第1の期間中に取得されたグルコース測定値114を処理して、シミュレートされた事象310を生成する。次いで、異常検出システム126の比較モジュール302は、シミュレートされた事象310を、それぞれの装着型グルコース監視デバイス104に関連付けられたグルコース監視アプリケーションの事象エンジンによって実際に生成された事象記録122内の記録された事象と比較する。限定されない例として、比較モジュール302は、シミュレートされた事象310から第1の事象を取り出し、事象記録122に記憶された実際の事象にわたって繰り返して、第1の事象に対応する実際の事象が事象記録122に含まれているかどうかを判定することができる。第1の事象に対応する実際の事象が事象記録122に含まれている場合、比較モジュール302は、シミュレートされた事象310から第2の事象を取り出し、事象記録122内の事象にわたって繰り返して、第2の事象に対応する実際の事象が事象記録に含まれているかどうかを判定することによって、前進することができる。
【0084】
しかしながら、第1の事象に対応する実際の事象が事象記録122に含まれていない場合、比較モジュール302は、第1の事象が事象記録122からの第1の欠落事象314に対応すると決定することができる。比較モジュール302は、いくつかの例を挙げると、第1の欠落事象314を出力するか、又はそれ以外の場合では、欠落事象が決定されるたびにインクリメントするカウンタ、事象記録122から欠落していると決定されたシミュレートされた事象310の各々に対する参照(例えば、識別子のリスト)、及び/又は決定された欠落事象のリスト(例えば、事象が事象エンジン120によって記録された方法と同様の事象の詳細を含む)などの、第1の欠落事象314の記録を維持することができる。比較モジュール302は、シミュレートされた事象310の各々を同様のやり方で処理して、それらが事象記録内に含まれているか否かを判定することができる。
【0085】
異常検出モデルは、第1の期間中の欠落事象に基づいて生成される(ブロック606)。本明細書に説明される原理によれば、異常検出モデルは、第2の期間中の欠落事象の予測範囲を含む。例として、異常検出システム126のモデルマネージャ304は、異常検出モデル306を生成するか、又はそれ以外の場合にはそれを訓練するように構成される。モデルマネージャ304は、様々なアルゴリズムに従って、異常検出モデル306を生成することができる。特に、モデルマネージャ304は、時間順の過去のデータの第1のセット、例えば、第1の欠落事象314に基づいて、異常検出モデルを生成するか、又はそれ以外の場合にはそれを訓練することができる。モデルマネージャ304が異常検出モデル306を生成すると、その異常検出モデル306は、時間順データの第2のセット内に異常が存在するかどうか、例えば、第2の欠落事象316内に異常が存在するかどうかを判定するように構成される。
【0086】
異常検出モデルを使用して時間順データの第2のセット内に異常が存在するかどうかを判定するという文脈では、図6で生成された異常検出モデルを利用して第2の期間中に異常挙動を検出する実施形態の例における手順700を図示している図7を検討する。
【0087】
装着型グルコース監視デバイスによって収集された追加のグルコース測定値、及び追加のグルコース測定値に関連付けられた追加の事象記録が、第2の期間中に受信される(ブロック702)。例として、異常検出システム126は、装着型グルコース監視デバイス104によって収集されたグルコース測定値114、及び事象記録122を第2の期間中に入力として受信する。とりわけ、第1の期間は、第2の期間に先行することができる。
【0088】
追加の事象記録から欠落している欠落事象は、事象エンジンシミュレータを使用して追加のグルコース測定値を処理することによって、第2の期間中に識別される(ブロック704)。例として、図6のブロック604と同様に、異常検出システム126の事象エンジンシミュレータ130は、第2の期間中に取得されたグルコース測定値114を処理して、シミュレートされた事象310を生成する。次いで、異常検出システム126の比較モジュール302は、シミュレートされた事象310を、第2の期間中にそれぞれの装着型グルコース監視デバイス104に関連付けられたグルコース監視アプリケーションの事象エンジンによって実際に生成された事象記録122内の記録された事象と比較する。シミュレートされた事象310に対応する実際の事象が事象記録122に含まれていない場合、比較モジュール302は、シミュレートされた事象が事象記録122からの第2の欠落事象316に対応すると決定することができる。比較モジュール302は、第2の欠落事象316を出力するか、又はそれ以外の場合には、第2の欠落事象316の記録を維持することができる。とりわけ、第1の欠落事象314は、ある時点に先行する時間に対応することができ、第2の欠落事象316は、その時点、及び/又はその時点の後に続く時間に対応することができる。異常検出モデル306がその週の前の8週間の事象に基づいて、先行する週にわたる異常挙動308を決定する例を考えると、第1の欠落事象314は、週2~9に対応し得、第2の欠落事象316は、週1に対応し得、ここで、週9は、現在の時間から最も遠い過去の週であり、週1は、現在の時間から最も近い過去の週である。
【0089】
第2の期間中に追加の事象記録から欠落している識別された欠落事象が、異常検出モデルの欠落事象の予測範囲外にあるときに、異常挙動が検出される(ブロック706)。例として、異常検出モデル306は、そのモデルが予測範囲外にあると決定するデータ処理することに応答して、異常挙動308を出力する。欠落事象の文脈では、異常検出モデル306の予測範囲(例えば、1日当たりの欠落事象の数又はパーセントとしても構成される)内に入る、第2の欠落事象316(例えば、1日当たりの欠落事象の数又はパーセント)によって記述される欠落事象は、異常ではない。しかしながら、異常検出モデル306の予測範囲(例えば、1日当たりの欠落事象の数又はパーセントとしても構成される)外に入る、第2の欠落事象316(例えば、1日当たりの欠落事象の数又はパーセント)によって記述される欠落事象は、異常である。これらの異常事象について、異常検出モデル306は、異常挙動308を出力する。
【0090】
1つ以上の実施態様による手順の例について説明してきたため、ここで、本明細書に説明される様々な技法を実装するために利用され得るシステム及びデバイスの例を検討する。
【0091】
例示的なシステム及びデバイス
図8は、概して800において、システムの例を示しており、このシステムには、本明細書に説明される様々な技法を実装することができる1つ以上のコンピューティングシステム及び/又はデバイスを表すコンピューティングデバイス802の例が含まれる。これは、異常検出システム126及びグルコース監視プラットフォーム110を含めて例示されている。コンピューティングデバイス802は、例えば、サービスプロバイダのサーバ、クライアントに関連付けられたデバイス(例えば、クライアントデバイス)、オンチップデバイス、及び/又は任意の他の好適なコンピューティングデバイス若しくはコンピューティングシステムであってもよい。
【0092】
図示されているようなコンピューティングデバイス802は、処理システム804、1つ以上のコンピュータ可読媒体806、及び互いに通信可能に結合されている1つ以上のI/Oインターフェース808を含む。図示されていないが、コンピューティングデバイス802は、様々な構成要素と互いに結合するシステムバス又は他のデータ及びコマンド転送システムを更に含むことができる。システムバスは、メモリバス若しくはメモリコントローラ、ペリフェラルバス、ユニバーサルシリアルバス、及び/又は多様なバスアーキテクチャのいずれかを利用するプロセッサ若しくはローカルバスなどの異なるバス構造のうちの任意の1つ又は組み合わせを含むことができる。制御ライン及びデータラインなど、多様な他の例も企図されている。
【0093】
処理システム804は、ハードウェアを使用して1つ以上の動作を実行するための機能を表す。したがって、処理システム804は、プロセッサ、機能ブロックなどとして構成され得るハードウェア要素810を含むものとして例示されている。これは、1つ以上の半導体を使用して形成された特定用途向け集積回路又は他のロジックデバイスとして、ハードウェア内の実施態様を含み得る。ハードウェア要素810は、それらが形成される材料、又はその中に採用される処理機構によっては限定されない。例えば、プロセッサは、半導体及び/又はトランジスタ(例えば、電子集積回路(electronic integrated circuits、IC))で構成され得る。このようなコンテキストでは、プロセッサ実行可能な命令は、電子的に実行可能な命令であり得る。
【0094】
コンピュータ可読媒体806は、メモリ/記憶装置812を含むものとして例示されている。メモリ/記憶装置812は、1つ以上のコンピュータ可読媒体に関連付けられたメモリ/記憶容量を表す。メモリ/記憶装置構成要素812は、揮発性媒体(ランダムアクセスメモリ(random access memory、RAM)など)及び/又は不揮発性媒体(読み出し専用メモリ(read only memory、ROM)、フラッシュメモリ、光ディスク、磁気ディスクなど)を含み得る。メモリ/記憶装置構成要素812は、固定媒体(例えば、RAM、ROM、固定ハードドライブなど)、並びに取り外し可能媒体(例えば、フラッシュメモリ、取り外し可能ハードドライブ、光ディスクなど)を含み得る。コンピュータ可読媒体806は、以下で更に説明されているように、様々な他の方法で構成され得る。
【0095】
入力/出力インターフェース808は、ユーザが、コマンド及び情報をコンピューティングデバイス802に入力することを可能にし、また、情報が、様々な入力/出力デバイスを使用して、ユーザ及び/又は他の構成要素若しくはデバイスに提示されることを可能にする機能を表す。入力デバイスの例としては、キーボード、カーソル制御デバイス(例えば、マウス)、マイクロフォン、スキャナ、タッチ機能(例えば、物理的接触を検出するように構成されている容量型センサ又は他のセンサ)、カメラ(例えば、可視波長、又は赤外線周波数などの非可視波長を採用して、非接触ジェスチャーとして動きを認識することができる)などが挙げられる。出力デバイスの例は、ディスプレイデバイス(例えば、モニタ又はプロジェクタ)、スピーカ、プリンタ、ネットワークカード、触覚応答デバイスなどを含む。したがって、コンピューティングデバイス802は、以下に更に説明されているように、様々な方法で構成されて、ユーザ対話をサポートすることができる。
【0096】
本明細書では、ソフトウェア、ハードウェア要素、又はプログラムモジュールの一般的なコンテキストで様々な技法が記載され得る。一般に、そのようなモジュールは、特定のタスクを実行するか、又は特定の抽象データ型を実装するルーティン、プログラム、オブジェクト、エレメント、コンポーネント、データ構造などを含む。本明細書で使用される場合、「モジュール」、「機能」、及び「構成要素」という用語は、一般に、ソフトウェア、ファームウェア、ハードウェア、又はそれらの組み合わせを表す。本明細書に記載の技法の特徴は、プラットフォームに依存せず、つまり、この技法は、多様なプロセッサを有する多様な商用計算プラットフォームに実装され得ることを意味する。
【0097】
記載されるモジュール及び技法の実施態様は、何らかの形式のコンピュータ可読媒体に記憶されるか、又はそれを介して送信され得る。コンピュータ可読媒体は、コンピューティングデバイス802によってアクセスされ得る様々な媒体を含むことができる。限定ではなく、例として、コンピュータ可読媒体は、「コンピュータ可読記憶媒体」及び「コンピュータ可読信号媒体」を含み得る。
【0098】
「コンピュータ可読記憶媒体」とは、単なる信号送信、搬送波、又は信号それ自体とは対照的に、情報の永続的及び/又は非一時的記憶を可能にする媒体及び/又はデバイスを指し得る。したがって、コンピュータ可読記憶媒体は、非信号伝達媒体を指す。コンピュータ可読記憶媒体は、揮発性及び非揮発性、リムーバブル及び非リムーバブル媒体などのハードウェア、及び/又はコンピュータ可読命令、データ構造、プログラムモジュール、論理要素/回路、又は他のデータなどの情報の記憶に好適な方法又は技術で実装された記憶デバイスを含む。コンピュータ可読記憶媒体の例は、RAM、ROM、EEPROM、フラッシュメモリ若しくは他のメモリ技術、CD-ROM、デジタル多用途ディスク(digital versatile disk、DVD)若しくは他の光記憶、ハードディスク、磁気カセット、磁気テープ、磁気ディスクストレージ若しくは他の磁気記憶デバイス、若しくは他の記憶デバイス、有形媒体、又は所望の情報を記憶するのに好適であり、コンピュータによってアクセスされ得る製品を含み得るが、これらに限定されない。
【0099】
「コンピュータ可読信号媒体」とは、ネットワークなどを介して、コンピューティングデバイス802のハードウェアに命令を送信するように構成されている信号担持媒体を指し得る。信号媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュール、又は搬送波、データ信号、若しくは他の輸送機構などの変調されたデータ信号における他のデータを具体化し得る。信号媒体は、任意の情報送達媒体も含む。「変調されたデータ信号」という用語は、信号における情報を符号化するような様式で設定又は変更されたその特性のうちの1つ以上を有する信号を意味する。限定ではないが例として、通信媒体は、有線ネットワーク又は直接有線接続などの有線媒体、及び音響、RF、赤外線、及び他の無線媒体などの無線媒体を含む。
【0100】
以前に説明されているように、ハードウェア要素810及びコンピュータ可読媒体806は、いくつかの実施形態において採用されて、1つ以上の命令を実行するためなどの、本明細書に説明されている技法の少なくともいくつかの態様を実装することができる、ハードウェア形態で実装されるモジュール、プログラマブルデバイスロジック、及び/又は固定デバイスロジックを表す。ハードウェアは、集積回路又はオンチップシステムの構成要素、特定用途向け集積回路(application-specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、複雑なプログラマブルロジックデバイス(complex programmable logic device、CPLD)、及びシリコン又は他のハードウェアにおける他の実施態様を含み得る。この文脈において、ハードウェアは、ハードウェアによって具現化された命令及び/又はロジックによって定義されるプログラムタスク、並びに、実行のための命令を格納するために利用されるハードウェア、例えば、以前説明されたコンピュータ可読記憶媒体、を実行する処理デバイスとして動作することができる。
【0101】
前述の組み合わせを用いて、本明細書に記載の様々な技法を実装し得る。したがって、ソフトウェア、ハードウェア、又は実行可能モジュールは、何らかの形態のコンピュータ可読記憶媒体上に、かつ/又は1つ以上のハードウェア要素810によって具現化された1つ以上の命令及び/又はロジックとして実装され得る。コンピューティングデバイス802は、ソフトウェア及び/又はハードウェアモジュールに対応する特定の命令及び/又は機能を実装するように構成され得る。したがって、コンピューティングデバイス802によって、ソフトウェアとして実行可能であるモジュールの実施態様は、例えば、コンピュータ可読記憶媒体、及び/又は処理システム804のハードウェア要素810の使用を介して、少なくとも部分的にハードウェア内で達成され得る。命令及び/又は機能は、本明細書に説明されている技法、モジュール、及び例を実装するための1つ以上の製造物品(例えば、1つ以上のコンピューティングデバイス802及び/又は処理システム804)によって実行可能/動作可能であり得る。
【0102】
本明細書に説明されている技法は、コンピューティングデバイス802の様々な構成によってサポートされ得、本明細書に説明されている技法の特定の例に限定されない。この機能はまた、以下に説明されるように、プラットフォーム816を介した「クラウド」814上などでの分散システム使用を通じて、全て又は部分的に実装され得る。
【0103】
このクラウド814は、リソース818のためのプラットフォーム816を含み、かつ/又はそれを表す。プラットフォーム816は、クラウド814のハードウェア(例えば、サーバ)及びソフトウェアリソースの基礎となる機能を抜粋する。リソース818は、コンピュータ処理が、コンピューティングデバイス802から遠隔地にあるサーバ上で実行されている間に利用され得るアプリケーション及び/又はデータを含むことができる。リソース818はまた、インターネットを介して、かつ/又はセルラーネットワーク若しくはWi-Fiネットワークなどの加入者ネットワークを介して提供されるサービスも含むことができる。
【0104】
プラットフォーム816は、コンピューティングデバイス802を他のコンピューティングデバイスと接続するためのリソース及び機能を抜粋することができる。プラットフォーム816はまた、リソースのスケーリングを抜粋して、プラットフォーム816を介して実装されている、リソース818が直面した需要に対応するスケールレベルを提供する役割も果たすことができる。したがって、相互接続されたデバイスの実施形態では、本明細書に説明されている機能の実施態様は、システム800全体にわたって分散することができる。例えば、この機能は、コンピューティングデバイス802上に、並びにクラウド814の機能を抜粋するプラットフォーム816を介して、部分的に実装され得る。
【0105】
結論
システム及び技法は、構造的特徴及び/又は方法論的行為に固有の言語で記載されているが、添付の特許請求の範囲で定義されるシステム及び技法は、必ずしも記載される特定の特徴又は行為に限定されないと理解するべきである。むしろ、特定の特徴及び行為は、特許請求される主題を実装するための例示的な形態として開示されている。
【符号の説明】
【0106】
100 環境
102 人
104 装着型グルコース監視デバイス
106 コンピューティングデバイス
108 ユーザ集団
110 グルコース監視プラットフォーム
112 ネットワーク
114 グルコース測定値
116 グルコース監視アプリケーション
118 記憶デバイス
120 事象エンジン
122 事象記録
124 アラート事象記録
126 異常検出システム
128 記憶デバイス
130 事象エンジンシミュレータ
200 例
202 センサ
204 センサモジュール
206 皮膚
208 送信機
210 接着パッド
212 取り付け機構
214 補足センサ情報
300 例
302 比較モジュール
304 モデルマネージャ
306 異常検出モデル
308 異常挙動
310 シミュレートされた事象
312 記録されたアラート
314 第1の欠落事象
316 第2の欠落事象
400 例
404 ユーザインターフェース
406 グラフ
408、410、412、414 事象指示
416 異常検出時間
418 範囲視覚化
420 予測範囲
422、424 指示
426、428 視覚的インジケータ
500 例
502 コンピューティングデバイス
504 ユーザインターフェース
506 表示デバイス
508 通知
600 手順
602、604、606 ブロック
700 手順
702、704、706 ブロック
800 システム
802 コンピューティングデバイス
804 処理システム
806 コンピュータ可読媒体
808 I/Oインターフェース
810 ハードウェア要素
812 メモリ/記憶装置
814 クラウド
816 プラットフォーム
818 リソース
図1
図2
図3
図4
図5
図6
図7
図8
【国際調査報告】