大量のデータ、健康指標と他の要因との間の相互作用の複雑さ、および制限された臨床的ガイダンスは、従来の医療行為に基づく特定の規則を通じて連続的なおよび/または自由行動下でのセンサデータにおける異常値を検出することを試みる監視システムの有効性を制限し得る。本明細書において説明される実施形態は、予測機械学習モデルを利用し、健康指標データの時間系列単独からの教師なし方式で、または他の要因(本明細書において定義される)データと組み合わせて、異常を検出することができるデバイス、システム、方法、およびプラットフォームを含む。
心房細動(AFまたはAfib)は、一般集団の1〜2%において見られ、AFの存在は、脳卒中および心不全などの疾病率および有害転帰のリスクを高める。Boriani G.およびPettorelli D.、「Atrial Fibrillation Burden and Atrial Fibrillation type: Clinical Significance and Impact on the Risk of Stroke and Decision Making for Long-term Anticoagulation」、Vascul Pharmacol.、83:26-35(2016年8月)、26頁。多くの人々におけるAFibは、一部はAF患者の40%程度と高く推定されているが、無症候性であることがあり、これらの無症候性患者は、脳卒中および心不全に対して、症状のある患者と類似のリスク因子を有する。同文献参照。しかしながら、症状のある患者は、血液の抗凝結薬または他の薬剤を飲むなどの能動的な対処を行い、有害転帰のリスクを減らすことができる。埋め込み型電気的デバイス(CIED)の使用により、無症候性AF(いわゆる無症状AFまたはSAF)および患者がAFを起こしている持続時間を検出することができる。同文献参照。この情報から、これらの患者がAFに費やしている時間、すなわちAF負担が決定され得る。同文献参照。5〜6分を超える、特に1時間を超えるAF負担は、脳卒中および他の健康有害転帰のリスクの著しい増大に関連付けられる。同文献参照。したがって、無症候性患者のAF負担を測定することができれば、早期の介入治療を行うことができ、AFに関連付けられている健康有害転帰のリスクを減らし得る。同文献参照。SAFの検出は難しく、典型的にはある種の形態の連続監視を必要とする。現在のところAFに対する連続監視は、かさばる、ときには侵襲的な、高価なデバイスを必要とし、そのような監視は、医療専門家による高水準の監督および精査を必要とする。
たとえば、多くのデバイスが、健康指標データの測定または計算を行うためにデータを連続的に取得するが、限定はしないが、他にもあるがとりわけ、FitBit(登録商標)、Apple Watch(登録商標)、Polar(登録商標)、スマートフォン、タブレットは、ウェアラブルおよび/またはモバイルデバイスのクラスに含まれるものである。他のデバイスは、ユーザ/患者に付けるまたは体内に入れる永久的または半永久的デバイス(たとえば、ホルター)を含み、また他のデバイスは、カート上にあることで移動可能であり得る病院内のより大型のデバイスを含み得る。しかし、ディスプレイ上で定期的に観察すること、または単純なデータ閾値を確立すること以外にこの測定データを用いて行われることはほとんどない。データの観察は、訓練を受けた医療専門家によるものであっても、正常であるように見えることは頻繁にありえ、1つの主要な例外はユーザが容易に識別可能な急性症状を有するときである。医療専門家が健康指標を連続的に監視してより重大な何かを示し得る異常値および/またはトレンドをデータ中に見つけることは途方もなく困難であり、実用上不可能である。
本明細書において用いるとき、プラットフォームは、ローカルにおいて、またはクラウドおよびインターネットを含む分散ネットワークを通じて、のいずれかで、互いにインタラクティブにやり取りするように構成されている1つまたは複数のカスタマイズされたソフトウェアアプリケーション(または「アプリケーション」)を備える。本明細書において説明されるプラットフォームのアプリケーションは、ユーザデータを収集し分析するように構成され、1つまたは複数のソフトウェアモデルを含み得る。プラットフォームのいくつかの実施形態において、プラットフォームは、1つまたは複数のハードウェアコンポーネント(たとえば、1つまたは複数の感知デバイス、またはマイクロプロセッサ)を備え得る。いくつかの実施形態において、プラットフォームは、1つもしくは複数のデバイスおよび/または1つもしくは複数のシステムと一緒に動作するように構成される。すなわち、本明細書において説明されるデバイスは、いくつかの実施形態では、内蔵プロセッサを使用してプラットフォームのアプリケーションを実行するように構成され、いくつかの実施形態において、プラットフォームは、プラットフォームの1つまたは複数のアプリケーションとインタラクティブにやり取りするか、または実行する1つまたは複数のコンピューティングデバイスを備えるシステムによって利用される。
本開示では、たとえば、限定することなく、(i)類似の他の要因の影響を受ける個人のグループ、または(ii)類似の他の要因の影響を受けるユーザ自身のいずれかによって判断されるか、または比較されたときにユーザが正常な健康を有しているかどうかを判定するために健康指標に影響を及ぼし得る要因(本明細書において「他の要因」と称される)に関係する対応する(時間的に)データと組み合わせてユーザデバイスから1つまたは複数の健康指標に関係するユーザのデータ(たとえば、限定はしないが、PPG信号、心拍数、または血圧)を連続的に監視するためのシステム、方法、デバイス、ソフトウェア、およびプラットフォームを説明する。いくつかの実施形態において、測定された健康指標データは、単独でまたは他の要因データと組み合わせて、ユーザの測定された健康指標が健常範囲内にあると考えられる確率を決定し、そうでない場合にユーザにそのことを通知する、訓練された機械学習モデルに入力される。健常範囲内にないユーザは、ユーザに症状があり得るかまたは無症候性であり得る不整脈などの、診断を確認するために高忠実度情報を保証する健康事象を経験している可能性のある確率を高め得る。通知は、たとえば、ECGを取得することをユーザに要求する形態を取り得る。他の高忠実度測定、2つ例を挙げると、血圧、パルス酸素濃度計が要求され得るが、ECGは一例にすぎない。高忠実度測定、この実施形態ではECGは、通知または診断(本明細書では「診断」と総称され、医師のみが診断を行うことができることを認識する)を行うためにアルゴリズムおよび/または医療専門家によって評価され得る。ECGの例では、診断は、ECGを利用して診断されるAFibまたはよく知られている他の任意の数の病状であってよい。
さらなる実施形態において、診断は、他の要因データ系列を含み得る、低忠実度データ系列(たとえば、心拍数またはPPG)をラベル付けするために使用される。この高忠実度診断でラベル付けされた低忠実度データ系列は、高忠実度機械学習モデルを訓練するために使用される。これらのさらなる実施形態において、高忠実度機械学習モデルの訓練は、教師なし学習によって訓練され得るか、または時々、新しい訓練例で更新され得る。いくつかの実施形態において、ユーザの測定された低忠実度健康指標データ系列、および任意選択で、他の要因の対応する(時間的に)データ系列が、訓練済み高忠実度機械学習モデルに入力され、これにより、高忠実度機械学習モデルがそれについて訓練された診断済み病状をユーザが経験しているか、または経験した確率および/または予測を決定する。この確率は、事象が始まるときおよびそれが終了するときの確率を含み得る。いくつかの実施形態は、たとえば、ユーザの心房細動(AF)負担、またはユーザが時間の経過とともにAFを経験する時間の長さを計算し得る。以前であれば、AF負担は、扱いにくく、高価なホルターまたは埋め込み型連続的ECG監視装置を使用してのみ決定することが可能であった。したがって、本明細書において説明されるいくつかの実施形態は、ユーザの健康ステータスを連続的に監視し、ユーザが身につけているデバイスから単独で、または他の要因に対する対応するデータと組み合わせて取得された健康指標データ(たとえば、限定はしないが、PPGデータ、血圧データ、および心拍数データ)を連続的に監視することによって健康ステータスの変化をユーザに通知することができる。本明細書で用いられる「他の要因」は、健康指標に影響を及ぼし、および/または健康指標を表すデータ(たとえば、PPGデータ)に影響を及ぼし得る何らかのものを含む。これらの他の要因は、たとえば、限定はしないが、いくつか例を挙げると、気温、高度、運動レベル、体重、性別、食事、立っている状態、座っている状態、倒れている状態、伏せている状態、天気、およびBMIなどの様々な要因を含み得る。いくつかの実施形態において、高忠実度測定結果の取得をユーザにいつ通知するかを決定するために、機械学習モデルではなく、数学的または経験的モデルが使用されてよく、これはその後分析され、本明細書において説明されるように高忠実度機械学習モデルを訓練するために使用され得る。
本明細書において説明されるいくつかの実施形態は、教師なし方式でユーザの異常値を検出することを、健康指標データの一次時間系列を受け取ることと、任意選択で、健康指標データの一次時間系列と時間的に対応する、他の要因データの1つまたは複数の二次時間系列を受け取ることであって、この二次系列はセンサ、または外部データソース(たとえば、ネットワーク接続、コンピュータAPIなどを介して)に由来するものとしてよい、受け取ることと、一次および二次時間系列を、データに対してフィルタ処理、キャッシング、平均化、時間整列、バッファリング、アップサンプリング、およびダウンサンプリングのような動作を実行し得る、プリプロセッサに供給することと、データの時間系列を、未来の時点において一次系列の次の値を予測するために一次および二次時間系列の値を利用するように訓練され、および/または構成されている、機械学習モデルに供給することと、特定の時刻tに機械学習モデルによって生成された予測済み一次時間系列値を時刻tに一次時間系列の測定済み値と比較することと、予測された未来の時間系列と測定された時間系列との間の差が閾値または基準を超えた場合に対処することをユーザに警告するか、または促すこととによって行うことができる。
したがって、本明細書において説明されるいくつかの実施形態は、時間の経過に関するおよび/またはデータの観察された二次系列に応答する生理学的データの一次系列の観察された挙動がモデルを訓練するために使用される訓練例を与えられた場合に予想される内容といつ異なるかを検出する。訓練例が正常な個人から、または特定のユーザについてすでに正常と分類されているデータから集められたときに、システムは、異常性検出器として働くことができる。データが単純に他の分類なしで特定のユーザから取得された場合、システムは、変化検出器として働き、一次系列が測定している健康指標データの、訓練データがキャプチャされた時刻に対する変化を検出することができる。
本明細書において説明されるのは、訓練済み機械学習モデルを生成し、その訓練済み機械学習モデルを使用して、他の要因(二次系列)の影響下にあるユーザの測定済み健康指標データ(一次系列)が類似の他の要因の影響下にある健常集団(すなわち、大域的モデル)に対して正常の限度を外れているか、類似の他の要因の影響下にあるその特定のユーザ(すなわち、パーソナライズされたモデル)に対して正常の限度を外れているときの確率を予測するか、または決定するためのソフトウェアプラットフォーム、システム、デバイス、および方法であり、その場合にそのようなものの通知がユーザに送られる。いくつかの実施形態において、ユーザは、すでに取得されている低忠実度ユーザ健康指標データをラベル付けして、低忠実度健康指標データのみを使用して異常もしくは事象を予測するか、または診断する能力を有し、その場合にそのような異常は典型的には高忠実度データを使用して識別されるかまたは診断されるのみである、異なる訓練済み高忠実度機械学習モデルを生成するために使用できる追加の測定済み高忠実度データを取得するよう促され得る。
本明細書において説明されるいくつかの実施形態は、ユーザの健康指標データを入力することと、任意選択で、他の要因の対応する(時間的に)データを訓練済み機械学習モデルに入力することとを含むものとしてよく、訓練済み機械学習モデルは、未来の時間ステップにおけるユーザの健康指標データまたは健康指標データの確率分布を予測する。いくつかの実施形態における予測は、予測の時間ステップでユーザの測定済み健康指標データと比較され、その差の絶対値が閾値を超えた場合に、ユーザは、その健康指標データが正常範囲を外れていることを通知される。この通知は、いくつかの実施形態において、何かを行う、たとえば、限定はしないが、追加の測定を取得するか、または医療従事者に連絡する、診断または指示を含み得る。いくつかの実施形態において、人々の健常集団からの健康指標データおよび他の要因の対応する(時間的に)データは、機械学習モデルを訓練するために使用される。機械学習モデルを訓練するために使用される訓練例における他の要因は集団の平均でなくてもよく、むしろ、他の要因の各々に対するデータは訓練例における個人に対する健康指標データの収集と時間的に対応することは理解されるであろう。
いくつかの実施形態は、時間的な離散的データ点を受け取り、入力から未来の時刻における離散的データ点を予測し、次いで、未来の時刻における離散的な測定された入力と未来の時刻における予測された値との間の損失が閾値を超えたかどうかを判定することとして説明される。当業者であれば、入力データおよび出力予測が離散的データ点またはスカラー以外の形態を取り得ることは容易に理解するであろう。たとえば、限定はしないが、健康指標データ系列(本明細書では一次系列とも称される)および他のデータ系列(本明細書では二次系列とも称される)は時間のセグメントに分割され得る。当業者であれば、データがセグメント分割される方式が設計選択の問題であり、多くの異なる形態を取り得ることを認識するであろう。
いくつかの実施形態では、健康指標データ系列(本明細書では一次系列とも称される)および他のデータ系列(本明細書では二次系列とも称される)を2つのセグメント、すなわち、特定の時刻tより前のすべてのデータを表す、過去と、時刻tまたはそれ以降のすべてのデータを表す、未来とに区分化する。これらの実施形態では、過去の時間セグメントに対する健康指標データ系列およびその過去の時間セグメントに対するすべての他のデータ系列を、健康指標データの最もあり得そうな未来のセグメント(またはあり得そうな未来のセグメントの分布)を予測するように構成されている機械学習モデル内に入力する。あるいは、これらの実施形態では、過去の時間セグメントに対する健康指標データ系列、その過去の時間セグメントに対するすべての他のデータ系列、および未来のセグメントからの他のデータ系列を健康指標データの最もあり得そうな未来のセグメント(またはあり得そうな未来のセグメントの分布)を予測するように構成されている機械学習モデル内に入力する。健康指標データの予測された未来のセグメントは、未来のセグメントにおけるユーザの測定済み健康指標データと比較され、それにより、損失およびその損失が閾値を超えたかどうかを決定し、超えた場合に何らかの処置が講じられる。この対処は、たとえば、限定はしないが、追加のデータ(たとえば、ECGまたは血圧)を取得することをユーザに通知すること、医療専門家に連絡することをユーザに通知すること、または追加のデータの取得を自動的にトリガーすることを含み得る。追加のデータの自動取得は、たとえば、限定はしないが、ユーザ着用コンピューティングデバイスに動作可能に結合されている(有線または無線で)センサを介したECG取得、またはユーザの手首もしくは他の適切な身体部位の周りに付け、ユーザ着用コンピューティングデバイスに結合されているモバイルカフを介した血圧を含み得る。データのセグメントは、単一のデータ点、一定の時間期間にわたる多数のデータ点、その時間期間にわたるこれらのデータ点の、正確な平均を含み得る平均、中央値、または最頻値を含むものとしてよい。いくつかの実施形態において、セグメントは時間的に重なり合うものとしてよい。
これらの実施形態では、データの対応する(時間的に)他の要因系列の影響を受けるような時間の経過に関するデータの健康指標系列の観察された挙動または測定が類似の他の要因の下で収集される訓練例から予想されたものといつ異なるかを検出する。訓練例が類似の他の要因の下で健常者から、または類似の他の要因の下で特定のユーザについて健康であるとして以前に分類されているデータから、収集された場合、これらの実施形態は、健常集団または特定のユーザからのそれぞれ異常検出器として働く。訓練例が他の分類なしで単純に特定のユーザから取得された場合、これらの実施形態は変化検出器として働き、訓練例が特定のユーザについて収集された時間に関して測定の時点の健康指標の変化を検出する。
本明細書において説明されるいくつかの実施形態では、機械学習を利用して、1つまたは複数の他の要因の影響の下にある人の健康指標を連続的に監視し、その人が類似の他の要因の影響の下で健康として分類された集団の観点から健康であるかどうかを評価する。当業者であれば、本明細書において説明される範囲を超えることなく多数の異なる機械学習はアルゴリズムまたはモデル(限定はしないが、ベイズ、マルコフ、ガウス過程、クラスタ化アルゴリズム、生成モデル、カーネルおよびニューラルネットワークアルゴリズム)が使用され得ることを容易に理解するであろう。当業者に理解されるように、典型的なニューラルネットワークは、たとえば、限定はしないが、受け取った入力に対する出力を予測するために非線形活性化関数の1つまたは複数の層を採用し、入力および出力層に加えて1つまたは複数の隠れ層を含み得る。これらのネットワークのうちのいくつかにおける各隠れ層の出力は、ネットワーク内の次の層への入力として使用される。ニューラルネットワークの例は、たとえば、限定することなく、生成ニューラルネットワーク、畳み込みニューラルネットワーク、およびリカレントニューラルネットワークを含む。
健康監視システムのいくつかの実施形態では、個人の心拍数および活動データを低忠実度データ(たとえば、心拍もしくはPPGデータ)として監視し、高忠実度データ(たとえば、ECGデータ)を使用して通常は検出される病状(たとえば、AFib)を検出する。たとえば、個人の心拍数は、センサによって、連続的にまたは離散的間隔(5秒おきなど)で提供され得る。心拍数は、PPG、パルス酸素濃度測定法、または他のセンサに基づき決定され得る。いくつかの実施形態において、活動データは、実行されるステップの数、感知される移動の量、または活動レベルを示す他のデータ点として生成され得る。低忠実度(たとえば、心拍)データおよび活動データは、次いで、機械学習システムに入力され、それにより、高忠実度結果の予測を決定することができる。たとえば、機械学習システムは、低忠実度データを使用して、不整脈またはユーザの心臓健全性を示す他の指示を予測し得る。いくつかの実施形態において、機械学習システムは、データ入力のセグメントの入力を使用して予測を決定し得る。たとえば、1時間分の活動レベルデータおよび心拍数データが機械学習システムに入力されるものとしてよい。次いで、システムはこのデータを使用して、心房細動などの病状の予測を生成することができる。本発明の様々な実施形態は、さらに詳しく以下で説明される。
図1Aを参照すると、訓練済みの畳み込みニューラルネットワーク(CNN)100(フィードフォワードネットワークの一例)は、入力データ102(たとえば、ボートの写真)を畳み込み層(隠れ層ともいう)103に入れ、一連の訓練済み重みまたはフィルタ104を畳み込み層103の各々の中の入力データ106に適用する。第1の畳み込み層の出力は活性化マップ(図示せず)であり、これは訓練済み重みまたはフィルタ(図示せず)が適用される第2の畳み込み層への入力であり、それに続く畳み込み層の出力は、第1の層への入力データのますます複雑になる特徴を表す活性化マップとなる。各畳み込み層の後に、問題に非線形性を導入するために非線形層(図示せず)が適用され、この非線形層はtanh、sigmoid、またはReLUを含み得る。いくつかの場合において、プーリング層(図示せず)が、ダウンサンプリング層とも称される非線形層の後に適用されてよく、これは基本的に同じ長さのフィルタおよびストライドを取り、それを入力に適用し、フィルタが周りに畳み込むすべての部分領域内に最大数を出力する。プーリングに対する他のオプションは、平均プーリングおよびL2ノルムプーリングである。プーリング層は、入力ボリュームの空間次元を縮小して、計算コストを低減し、過学習を制御する。ネットワークの最終層は、全結合層であり、これは最後の畳み込み層の出力を受け取り、予測されるべき量、たとえば、画像分類の確率、自動車20%、ボート75%、バス5%、自転車0%を表すn次元出力ベクトルを出力する、すなわち、結果として、予測出力106(O*)が得られ、たとえば、これはボートの画像である可能性が高い。出力は、ネットワークによって予測されるスカラー値データ点、たとえば、株価であってよい。訓練済み重み104は、以下でより詳しく説明されるように、畳み込み層103の各々について異なり得る。この現実世界の予測/検出(たとえば、それはボートである)を達成するために、ニューラルネットワークは、知られているデータ入力または訓練例上で訓練される必要があり、その結果訓練済みCNN100が得られる。CNN100を訓練するために多数の異なる訓練例(たとえば、ボートの多数の写真)がモデルに入力される。ニューラルネットワークの当業者であれば、上の説明が本発明の説明に対するある種の文脈
をもたらすCNNのいくぶん単純化された視点を与えることを完全に理解し、またCNNを単独で、または他のニューラルネットワークと組み合わせて適用することが等しく適用可能であり、本明細書で説明されるいくつかの実施形態の範囲内にあることを完全に理解するであろう。
図1Bは、CNN108を訓練することを示している。図1Bにおいて、畳み込み層103は、個別の隠れ畳み込み層105、105'から畳み込み層105n-1までとして示されており、最終の第nの層は全結合層である。最後の層は、複数の全結合層であり得ることは理解されるであろう。訓練例111は、畳み込み層103に入力され、非線形活性化関数(図示せず)および重み110、110'から110nが訓練例111に順次適用され、隠れ層の出力は、次の層に入力され、というように、最終の第nの全結合層105nが出力114を生成するまで続く。出力または予測114は、訓練例111(たとえば、ボートの写真)と比較され、その結果、出力または予測114と訓練例111との間の差116が得られる。差または損失116が何らかのプリセットされた損失より小さい(たとえば、出力または予測114で物体がボートであると予測した)場合、CNNは収束し、訓練済みと考えられる。CNNが収束していない場合、誤差逆伝播法を使用して、予測が知られている入力にどれだけ近いかに従って重み110および110'から110nが更新される。当業者であれば、誤差逆伝播法以外の方法も重みを調整するために使用され得ることを理解するであろう。第2の訓練例(たとえば、ボートの異なる写真)が入力され、このプロセスは更新された重みで再び繰り返され、次いで、再び更新され、というように、第nの訓練例(たとえば、第nのボートの第nの写真)が入力されるまで続く。これは、畳み込みニューラルネットワーク(CNN)が訓練済みになるか、または知られている入力に対する正しい出力に収束するまで同じn訓練例で何度も繰り返される。CNN108が訓練された後、重み110、110'から110nは固定され、訓練済みCNN100で使用されるが、これらは図1Aに示すように重み104である。説明されるように、各畳み込み層103および全結合層の各々について異なる重みがある。次いで、訓練済みCNN100またはモデルに画像データが送られ、それにより、上述のように、それが(たとえば、ボートを)予測/識別するように訓練されていると決定するか、または予測する。任意の訓練済みモデル、CNN、RNNなどは、さらに訓練されてよい、すなわち、重みの修正が許されるものとしてよく、そのために、追加の訓練例またはその後訓練例として使用されるモデルによって出力された予測済みデータを用いる。機械学習モデルは、「オフライン」で訓練される、たとえば、訓練済みモデルを使用/実行するプラットフォームとは別の計算プラットフォーム上で1回訓練され、その後、そのプラットフォームに転送されるものとしてよい。あるいは、本明細書において説明される実施形態は、新規に取得された訓練データに基づき機械学習モデルを定期的にもしくは継続的に更新し得る。この更新された訓練は、ネットワーク接続上で再訓練済みモデルを使用/実行するプラットフォームに更新された訓練済みモデルを送る別個の計算プラットフォーム上で行われ得るか、または訓練/再訓練/更新プロセスは、新しいデータが取得されるときにプラットフォームそれ自体で行われ得る。当業者であれば、CNNが固定配列内データ(たとえば、写真、文字、単語など)またはデータの時間系列に適用可能であることを理解するであろう。たとえば、順序付けられた健康指標データおよび他の要因データは、CNNを使用してモデル化できる。いくつかの実施形態では、フィードフォワード、CNNをスキップ接続およびガウス混合モデル出力とともに使用して、予測された健康指標、たとえば、心拍数、PPG、または不整脈に対する確率分布を決定する。
いくつかの実施形態では、他の種類および他の構成のニューラルネットワークを利用することができる。畳み込み層の数は、全結合層の数と同様に、加減することができる。一般に、畳み込み層対全結合層の最適な数および割合は、どの構成が所与のデータセット上で最良のパフォーマンスを発揮するかを決定することによって実験的に設定することができる。畳み込み層の数は0まで減らし、全結合ネットワークを残すことも可能である。畳み込みフィルタの数および各フィルタの幅も、加減することができる。
ニューラルネットワークの出力は、一次時間系列に対する正確な予測に対応する単一のスカラー値であり得る。あるいは、ニューラルネットワークの出力はロジスティック回帰であってもよく、各カテゴリは一次時間系列値の特定の範囲またはクラスに対応し、当業者であれば任意の数の他の出力があることを容易に理解する。
いくつかの実施形態におけるガウス混合モデル出力の使用は、ネットワークを形の良い確率分布を学習することに制約し、限られた訓練データに対する一般化を改善することを意図したものである。ガウス混合モデルでのいくつかの実施形態における複数の要素の使用は、モデルが多モード確率分布を学習することを可能にすることを意図したものである。異なるニューラルネットワークの結果を組み合わせるか、または集約する機械学習モデルも使用することが可能であり、その結果を組み合わせることもできる。
順序付けられたデータをモデル化するための別のアプローチとして、その後の予測に適用するために、前の予測から更新可能なメモリまたは状態を有する機械学習モデルがある。特に、本明細書において説明されるいくつかの実施形態では再帰的なニューラルネットワークを利用する。図2Aの例を参照すると、訓練済みリカレントニューラルネットワーク(RNN)200の図が示されている。訓練済みRNN200は、更新可能な状態(S)202および訓練済み重み(W)204を有する。入力データ206は重み(W)204が適用される状態202に入力され、予測206(P*)が出力される。線形ニューラルネットワーク(たとえば、CNN100)とは対照的に、状態202は入力データに基づき更新され、それによって、順次、次のデータによる次の予測のための前の状態からのメモリとして働く。状態を更新することで、RNNは、円形またはループ特徴を備える。わかりやすく示すために、図2Bはアンロールされた訓練済みRNN200、および順序付けられたデータへのその適用可能性を示している。アンロールされると、RNNはCNNに類似しているように見えるが、アンロールされたRNNでは、見かけ上類似している層の各々は、状態が更新された単一の層として見え、ループの各反復において同じ重みが適用される。当業者であれば、単一の層はそれ自体が下位層を有し得るが、説明を分かりやすくするために、ここでは単一の層が示されていることを理解するであろう。時刻tにおける入力データ(It)208が時刻tにおける状態(St)210に入力され、時刻tにおけるセル(Ct)212において訓練済み重み204が適用される。Ct212の出力は、時間ステップt+1における予測
214および更新された状態St+1216である。同様に、Ct+1220において、It+1218はSt+1216に入力され、同じ訓練済み重み204が適用され、Ct+1220の出力は
222である。上で指摘されているように、St+1はStから更新され、それによって、St+1は前の時間ステップからのStからのメモリを有する。たとえば、限定はしないが、このメモリは、前の健康指標データまたは1つもしくは複数の前の時間ステップからの前の他の要因データを含み得る。このプロセスは、nステップの間続き、It+n224がSt+n226に入力され、同じ重み204が適用される。セルCt+nの出力は、予測
である。特に、これらの状態は前の時間ステップから更新され、前の状態からのメモリの利点をRNNに与える。この特性は、RNNを、いくつかの実施形態に対する順序付けされたデータ上で予測を行う他の選択とする。しかし、上述したように、CNNを含む、順序付けされたデータ上でそのような予測を実行するための好適な他の機械学習技法が他にもある。
RNNは、CNNと同様、データ列を入力として取り扱い、予測されたデータ列を出力することができる。RNNを使用するこの態様を説明する単純なやり方は、自然言語予測の例を使用することである。The sky is blueというフレーズを取りあげる。この単語列(すなわち、データ)は文脈を有する。したがって、状態が更新されると、データ列は、一方の反復から次の反復へと更新され、blueを予測する文脈を与える。ちょうど説明したように、RNNは、順序付けされたデータ上で予測を行うことを補助するためのメモリコンポーネントを有する。しかしながら、RNNの更新された状態におけるメモリは、どれくらい遠くまでルックバックできるかという点で制限され得、これは短期記憶に似ている。長期記憶に似た、より長いルックバックが望ましい順序付けされたデータを予測するとき、これを達成するために、ちょうど説明したばかりのRNNに対する微調整を用いてもよい。予測されるべき単語がすぐ前または周りにある単語から明らかでない文章もまた、説明する単純な例であり、すなわちMary speaks fluent Frenchとする。Frenchが正しい予測であることは、すぐ前にある単語からは明らかでなく、何らかの言語が正しい予測であるということだけであり、しかし、どの言語であろうか?正しい予測は、単一の単語列より大きいギャップで離れた単語の文脈内にありうる。長・短期記憶(LSTM)ネットワークは、これらの(より)長期の依存関係を学習することができる特別な種類のRNNである。
上述のように、RNNは、比較的単純な繰り返し構造を有し、たとえば、これらは、非線形活性化関数(たとえば、tanhまたはsigmoid)を持つ単一層を有し得る。LSTMは、同様に、鎖状構造を有するが、(たとえば)、1つではなく、4つのニューラルネットワーク層を有する。これらの追加のニューラルネットワーク層は、LSTMに、セルゲートと呼ばれる構造を使用することによって状態(S)に対して情報を削除したり加えたりする能力を付与する。同文献参照。図3は、LSTM RNNに対するセル300を示している。線302は、セル状態(S)を表し、情報ハイウェイとしてみなすことができ、情報がセル状態に沿って変化することなく流れることが比較的容易である。同文献参照。セルゲート304、306、および308は、どれだけの情報に状態を通ること、または情報ハイウェイに沿って移動することを許すかを決定する。セルゲート304は、まず、セル状態Stからどれだけの情報を取り除くかを決定する。これはいわゆる忘却ゲート層である。同文献参照。次に、セルゲート306および306'は、どの情報がセル状態に追加されるかを決定し、セルゲート308および308'は、セル状態から出力されるものを予測
として決定する。情報ハイウェイまたはセル状態は、次のセルでの使用のための今更新されたセル状態St+1である。LSTMは、RNNがより永続的なまたは(より)長期記憶を有することを可能にする。LSTMは、より単純なRNN構造に比べて、データがどのように順序付けられるかにもよるが、より長い空間または時間により入力データから離れている文脈を出力予測において考慮するという点でRNNベースの機械学習モデルをさらに有利にする。
いくつかの実施形態において、RNNを利用することで、一次および二次時間系列は、各時間ステップでRNNにベクトルとして与えられ得ない。その代わりに、RNNは、予測間隔の範囲内で二次時間系列の未来の値または集約関数とともに、一次および二次時間系列の現在値のみを提供され得る。この方式で、RNNは、永続的な状態ベクトルを使用して、予測を行う際に使用するための前の値に関する情報を保持する。
機械学習は、モデルを訓練するために使用される訓練例に比べて、入力データ中の、大きいおよび小さい、異常またはトレンドを識別するための1つまたは複数の基準の連続的監視によく適している。したがって、本明細書において説明されるいくつかの実施形態では、ユーザの健康指標データおよび任意選択で他の要因データを訓練済み機械学習モデルに入力し、この機械学習モデルは次の時間ステップで健常者の健康指標データがどのように見えるかを予測し、その予測を未来の時間ステップにおいてユーザの測定された健康指標データと比較する。その差(たとえば、以下で説明される損失)の絶対値が閾値を超えた場合に、ユーザは、その健康指標データが正常または健常範囲内にないことを通知される。閾値は、設計者によって設定された数値であり、いくつかの実施形態では、ユーザによって変更されてもよく、ユーザ側で通知感度を調整できる。これらの実施形態の機械学習モデルは、健康指標データ単独で、または健常者の集団からの対応する(時間的に)他の要因データと組み合わせて訓練され得るか、またはモデルに対する設計上の必要条件に適合するように他の訓練例で訓練されてもよい。
健康指標からのデータは、心拍数データのように、順序付けられたデータであり、より具体的には、時間的に順序付けられたデータである。心拍は、たとえば、限定はしないが、多数の異なるやり方、たとえば、胸帯からの電気信号を測定することで測定され得るか、またはPPG信号から導出されてよい。いくつかの実施形態は、デバイスから導出された心拍を受け取り、各データ点(たとえば、心拍数)は、おおよそ等しい間隔(たとえば、5s)で生成される。しかし、いくつかの場合において、また他の実施形態において、導出された心拍数は、おおよそ等しい時間ステップで提供されないが、それは、たとえば、導出に必要なデータに信頼性がないからである(たとえばPPG信号は、デバイスが移動したこと、または光害により、信頼性がない)。同じことが、モーションセンサまたは他の要因データを収集するために使用される他のセンサからデータの二次系列を取得することについても言える。
生の信号/データ(ECG、胸帯からの電気信号、またはPPG信号)それ自体は、いくつかの実施形態により使用することができるデータの時間系列である。分かりやすくするために、また限定はしないが、この説明ではPPGを使用して、健康指標を表すデータを参照する。当業者であれば、健康指標に対するデータ、生データ、生データもしくは波形から導出される波形もしくは数のいずれかの形態が、本明細書において説明されるいくつかの実施形態に従って使用され得ることは容易に理解されるであろう。
本明細書で説明される実施形態とともに使用され得る機械学習モデルは、たとえば、限定はしないが、ベイズ、マルコフ、ガウス過程、クラスタ化アルゴリズム、生成モデル、カーネル、およびニューラルネットワークアルゴリズムを含む。いくつかの実施形態では、訓練済みニューラルネットワークに基づく機械学習モデルを利用し、他の実施形態では、リカレントニューラルネットワークを利用し、追加の実施形態では、LSTM RNNを使用する。分かりやすくするために、限定はしないが、本明細書の説明のいくつかの実施形態を説明するためにリカレントニューラルネットワークが使用される。
図4A〜図4Cは、PPG(図4A)、実行されるステップ(図4B)、および気温(図4C)に対する時間に関する仮説的プロットを示している。PPGは、健康指標データの一例であり、ステップ、活動レベル、および気温は、健康指標データに影響を及ぼし得る他の要因に対する例示的な他の要因データである。当業者であれば理解するように、他のデータは、限定はしないが、加速度計データ、GPSデータ、体重計、ユーザ入力などを含む、多くの知られているソースのいずれかから取得されるものとしてよく、限定はしないが、気温、活動(ランニング、歩行、着座、サイクリング、落下、階段を登ること、ステップなど)、BMI、体重、身長、年齢などを含み得る。3つのすべてのプロットにわたって垂直に引かれている第1の点線は、訓練済み機械学習モデル(以下で説明される)に入力するためにユーザデータが取得される時刻tを表す。図4Aのハッシュプロット線は、予測された、またはあり得そうな出力データ402を表し、図4Aの実線404は、測定データを表す。図4Bは、様々な時刻におけるユーザのステップの数の仮説的プロットであり、図4Cは、様々な時刻における気温の仮説的プロットである。
図5A〜図5Bは、図4A〜図4Cに示されている入力データ、すなわち、PPG(P)、ステップ(R)、および気温(T)を受け取る訓練済みリカレントニューラルネットワーク500に対する概略図を示している。ここでもまた、これらの入力データ(P、R、およびT)は健康指標データおよび他の要因データの例にすぎないことが強調されている。また、複数の健康指標に対するデータが入力され、予測されるものとしてよく、2つより多いまたは少ない他の要因データが使用され得、その選択は、モデルが何に対して設計されているかに依存することも理解されるであろう。当業者であれば、他の要因データは健康指標データの収集または測定と時間的に対応するように収集されることをさらに理解するであろう。いくつかの場合において、たとえば、体重、他の要因データは、特定の時間期間にわたって比較的一定のままである。
図5Aは、訓練済みニューラルネットワーク500をループとして示す。P、T、およびRは、RNN500の状態502に入力され、重みWが適用され、RNN500は予測されたPPG504(P*)を出力する。ステップ506において、差P-P*(ΔP*)が計算され、ステップ508において、|ΔP*|が閾値より大きいかどうかが判定される。yesであれば、ステップ510において、ユーザに、その健康指標が、正常であるとして予測されるかまたは健常者について予測される限度/閾値を外れていることを通知/警告する。警告/通知/検出は、たとえば、限定はしないが、医者に掛かる/医者の診断を受ける提案、触覚フィードバックのような単純通知、ECGのような追加の測定を行う要求、もしくは推奨のない単純な注記、またはこれらの任意の組合せであり得る。|ΔP*|が閾値以下である場合、ステップ512は何もしない。両方のステップ510および512において、このプロセスは、次の時間ステップで新しいユーザデータにより繰り返される。この実施形態では、状態は予測されたデータの出力に続き更新され、状態を更新する際に予測されたデータを使用し得る。
図示されていない、別の実施形態において、心拍データ(PPG信号から導出された)一次系列および他の要因データの二次系列が訓練済み機械学習モデルに提供され、これはRNNもしくはCNN、他の機械学習モデル、またはモデルの組合せであってよい。この実施形態では、機械学習モデルは、参照時刻tにおいて入力として、
A. 時刻tにおける健康指標データを含むデータまでの最後の300件の健康指標サンプル(たとえば毎分拍動数単位の心拍数)の長さ300のベクトル(VH)、
B. VH内の各サンプルの近似的時刻における最近の他の要因データ、たとえば、ステップカウントを含む長さ300の少なくとも1つのベクトル(VO)、
C. インデックスiにおけるエントリVDT(i)が健康指標サンプルVH(i)のタイムスタンプとVH(i-1)のタイムスタンプとの間の時間差を含む長さ300のベクトル(VTD)、
D. τは、たとえば、限定はしないが、2.5分であってよく、未来の予測間隔である、tからt+τまでの時間間隔にわたって測定された平均他の要因レート(たとえば、ステップレート)を表すスカラー予測間隔他の要因レートOrate(たとえば、限定はしないがステップレート)を受け取るように構成される。
この実施形態の出力は、たとえば、tからt+τまでの時間期間にわたって測定された予測された心拍数を特徴付ける確率分布であってよい。いくつかの実施形態において、機械学習モデルは、健康指標データの連続的時間系列および他の要因データ系列を含む訓練例により訓練される。他の一実施形態において、通知システムは、タイムスタンプを、t+τ/2の各予測された健康指標(たとえば、心拍数)分布に割り当て、それにより、予想された分布の中心を予測された間隔(τ)内に設定する。次いで、この実施形態における通知ロジックでは、この例においてすべてのサンプルが長さWL=2*(τ)または5分のスライディングウィンドウ(W)内にあると考え、3つのパラメータを計算する。
1.時間ウィンドウ内のすべての健康指標系列データ
の平均値。
2.健康指標
のすべてのモデル予測の平均値。この予測タイムスタンプは時間ウィンドウ内に収まる。
3.時間ウィンドウ
内の各予測された健康指標分布の二乗平均平方根の中央値、
4.一実施形態においてΨを閾値として
または
である場合に通知が生成される。
この実施形態では、測定された健康指標が特定のウィンドウW内で予測された健康指標値の平均から標準偏差のある倍数以上離れているときに警告が生成される。ウィンドウWは、測定された健康指標値および予測された健康指標値の系列にまたがってスライディング方式で適用することができ、各ウィンドウは設計者により指定された分数、たとえば、0.5分だけ前のウィンドウと時間的に重なり合う。
通知は、任意の数の異なる形態を取り得る。たとえば、限定はしないが、これは、ユーザに、ECGおよび/または血圧を取得することを通知し得る、コンピューティングシステム(たとえば、ウェアラブルなど)に、ECGまたは血圧(たとえば)を自動的に取得することを指令し得る、ユーザに、医者に掛かることを通知するか、または単純に、ユーザに健康指標データが正常でないことを知らせるものとしてよい。
この実施形態において、モデルへの入力としてのVDTの選択は、モデルがVHにおける健康指標データ間の可変間隔に含まれる情報を利用することを可能にすることを意図されており、可変間隔は一貫しているとは言い難い生データから健康指標データをアルゴリズムで導出した結果であり得る。たとえば、心拍数サンプルは、信頼できる心拍数値を出力するのに十分信頼できる生PPGデータを有するときのみApple Watchアルゴリズムによって生成され、その結果、心拍数サンプルの間に不規則な時間ギャップが生じる。同様にして、この実施形態では、他のベクトルと同じ長さの他の要因データ(VO)に対するベクトルを利用して、一次系列(健康指標)と二次系列(他の要因)との間の異なるおよび不規則なサンプルレートを取り扱う。この実施形態では、二次系列は、一次時間系列と同じ時点上に再マッピングされるか、または補間される。
さらに、いくつかの実施形態において、未来の予測時間間隔(たとえば、tの後)からの機械学習モデルへの入力として提示される二次時間系列からのデータの構成は、修正されてよい。いくつかの実施形態において、予測間隔にわたる平均他の要因データレートを含む単一スカラー値は、複数のスカラー値で、たとえば、二次時間系列ごとに1つずつ、修正されることも可能である。または、値のベクトルは、予測間隔にわたって使用されることも可能である。それに加えて、予測間隔は、それ自体、調整され得る。たとえば、より短い予測間隔は、基本タイムスケールが(より)短い事象の変化および改善された検出へのより高速な応答をもたらし得るが、動きアーチファクトのような、ノイズソースからの干渉に対してより敏感な場合もあり得る。
同様に、機械学習モデルそれ自体の出力予測は、スカラーである必要はない。たとえば、いくつかの実施形態では、tとt+τとの間の時間間隔内の複数の時刻tについて予測の時系列を生成してよく、警告ロジックは、これらの予測の各々を同じ時間間隔内の予測値と比較し得る。
この先行する実施形態において、機械学習モデルそれ自体は、たとえば、7層フィードフォワードニューラルネットワークを含み得る。最初の3層は、各々24のカーネル幅および2のストライドを有する32個のカーネルを含む畳み込み層であってよい。第1の層は、入力として、3つのチャネル内に配列VH、VO、およびVTDを有し得る。最後の4層は、全結合層であり、最後の層を除きすべて双曲正接活性化関数を利用し得る。第3の層の出力は、第1の全結合層への入力のために1つの配列に平坦化され得る。最終層は、10個の混合(各混合に対して平均、分散、および重み)を有するガウス混合モデルをパラメータ化した30個の値を出力する。ネットワークは、第1の全結合層と第3の全結合層との間のスキップ接続を使用し、層6の出力が層4の出力と足し合わされて、層7への入力を生成する。標準バッチ正規化は最後の層を除くすべての層で使用されてよく、減衰率は0.97である。スキップ接続およびバッチ正規化の使用は、ネットワークを通して勾配を伝搬させる能力を改善することができる。
機械学習モデルの選択は、システムのパフォーマンスに影響を及ぼし得る。機械学習モデル構成は、2種類の考察要素に分けられるものとしてよい。第1は、モデルの内部はアーキテクチャであり、これは、モデルタイプの選択(畳み込みニューラルネットワーク、リカレントニューラルネットワーク、ランダムフォレストなど、一般化非線形回帰)、さらにはモデルの実装形態を特徴付けるパラメータ(一般的に、パラメータの個数、および/または層の数、決定木の数など)を意味する。第2は、モデルの外部アーキテクチャ--モデル内に供給されるデータの配置構成およびモデルが解くことを求められている問題の特定のパラメータ--である。外部アーキテクチャは、一部は、モデルに入力として供給されるデータの次元および種類、そのデータが及ぶ時間範囲、およびそのデータ上で実行される前または後処理によって特徴付けられ得る。
一般的に、外部アーキテクチャの選択は、より大きなモデルを訓練し評価するための利用可能な記憶容量および計算能力、ならびに過学習を防ぐ十分な量のデータの利用可能性とともに、機械学習モデルの予測能力を高め得る、入力として供給されるパラメータの数および情報の量を増やすことの間のバランスである。
いくつかの実施形態において説明されるモデルの外部アーキテクチャの多数のバリエーションが可能である。入力ベクトルの数、さらには絶対長さ(要素の個数)および対象範囲のタイムスパンが修正され得る。各入力ベクトルが同じ長さであるか、または同じタイムスパンを対象範囲とすることは必要ない。データは、時間的に等しくサンプリングされる必要はなく、たとえば、限定はしないが、心拍数データの6時間の履歴をとるものとしてよく、tより前の1時間未満のデータは1Hzのレートでサンプリングされ、tより前の1時間超、tより前の2時間未満のデータは0.5Hzのレートでサンプリングされ、2時間より古いデータは0.1Hzのレートでサンプリングされ、tは参照時間である。
図5Bは、訓練済みRNN500がアンロールされていることを示している。入力データ513(Pt、Rt、およびTt)が時刻tにおける状態(St)514に入力され、訓練された重み516が適用される。セル(Ct)518の出力は、時刻t+1における予測
520および更新された状態St+1522である。同様に、Ct+1524において、入力データ(Pt+1、Rt+1、およびTt+1)513'はSt+1522に入力され、訓練済み重み516が適用され、Ct+1524の出力は
523である。上述において指摘されているように、St+1はStを更新した結果であり、それによって、St+1は前の時間ステップにおけるセル(Ct)518の動作からのStからのメモリを有する。このプロセスは、nステップの間続き、入力データ(Pn、Rn、およびTn)513"は、Sn 530に入力され、訓練済み重み516が適用される。セルCtの出力は、予測532
である。特に、訓練済みRNNは、全体を通して同じ重みを適用するが、重要なことは、状態が前の時間ステップから更新され、RNNに前の時間ステップからのメモリの利点をもたらすことである。当業者であれば。従属する健康指標データを入力する時間的順序は変化するものとしてよく、それでも、好ましい結果をもたらすことを理解するであろう。たとえば、前の時間ステップ(たとえば、Pt-1)からの測定された健康指標データおよび現在の時間ステップ(たとえば、RtおよびTt)からの他の要因データは、現在の時間ステップ(St)で状態に入力することができ、モデルは、現在の時間ステップ
で健康指標を予測し、これは現在の時間ステップで測定された健康指標データと比較され、それにより、ユーザの健康指標が正常であるか、または健常範囲内にあるかを決定するが、これは上述したとおりである。
図5Cは、ユーザの健康指標の順序付けられたデータ、われわれの例におけるPPGが健常者に対する帯域または閾値の範囲内にあるかどうかを決定するための訓練済みRNNの他の一実施形態を示している。この実施形態における入力データは、線形結合
であり、ここで、
は時刻tにおける予測された健康指標値であり、Ptは時刻tにおける測定された健康指標である。この実施形態において、αは損失(L)の関数として非線形的に0から1までの範囲の値を取り、損失およびαは、以下でさらに詳しく説明される。現在注目すべきものは、αがゼロに近いときに測定されたデータPtがネットワークに入力され、αが1に近いときに予測されたデータ
がネットワークに入力され、次の時間ステップで予測を行うことである。時刻tにおける他の要因データ(Ot)は、任意選択で、入力されてもよい。
ItおよびOtは、状態Stに入力され、これはいくつかの実施形態において時間ステップt+1における予測された健康指標データ
の確率分布(β)
を出力し、ここで、β(P*)は予測された健康指標(P*)の確率分布関数である。いくつかの実施形態において、確率分布関数は、t+1における予測された健康指標値
を選択するようにサンプリングされる。当業者であれば理解するように、β(P*)はネットワーク設計者の目標に応じて異なる方法を使用してサンプリングされるものとしてよく、その方法は確率分布の平均値、最大値、ランダムサンプリングを取ることを含み得る。時刻t+1における測定されたデータを使用してβt+1を評価することで、状態St+1が測定されたデータに対して予測したであろう確率が得られる。
この概念を例示するために、図5Dは、時刻t+1における仮説的健康指標データの範囲に対する仮説的確率分布を示している。この関数は、たとえば、最大確率0.95でサンプリングされ、それにより、時刻t+1における予測された健康指標
を決定する。確率分布(βt+1)も、測定された、または実際の健康指標データ
を使用して評価され、実際のデータがモデル内に入力されたとしたらモデルが予測したであろう確率が決定される。この例では、
は0.85である。
損失は、ユーザに、ユーザの健康ステータスが訓練済み機械学習モデルによって予測されたとおりに正常範囲内にないことを通知するかどうかを決定することを補助するために定義され得る。損失は、予測されたデータが実際のまたは測定されたデータにどれだけ近いかをモデル化するように選択される。当業者であれば、損失を定義するやり方は多数あることを理解するであろう。本明細書において説明される他の実施形態において、たとえば、予測されたデータと実際のデータとの間の差の絶対値(|ΔP*|)が損失である。いくつかの実施形態において、損失(L)はL=-ln[β(P)]としてよく、ここで、
である。Lは、予測されたデータが測定されたまたは実際のデータにどれだけ近いかの尺度である。β(P)は0から1の範囲内であり、1は予測された値を意味し、測定された値は同じである。したがって、低損失は、予測された値がおそらく測定された値と同じであるか、または近いことを示す。この文脈において、これは測定されたデータがそれが健常/正常者に由来するように見えることを意味する。いくつかの実施形態において、Lに対する閾値が設定され、たとえば、L>5であり、ユーザは、健康指標データが健康であると考えられる範囲を外れていることを通知される。他の実施形態では、一定期間にわたって損失の平均を取り、その平均を閾値と比較するものとしてよい。いくつかの実施形態において、閾値それ自体は、予測された値の統計的計算の関数であるか、または予測された値の平均であってよい。いくつかの実施形態において、次の式は、ユーザに、健康指標が健常範囲内にないことを通知するために使用され得る。
<Prange>は、一定時間範囲にわたって測定された健康指標データを平均する方法によって決定され、
は、同じ時間範囲にわたって予測された健康指標データを平均する方法によって決定され、
は、同じ時間範囲にわたってネットワークから導出された標準偏差の系列の中央値であり、
は、
で評価された標準偏差の関数であり、閾値として働き得る。
使用され得る平均する方法は、たとえば、限定はしないが、平均、算術平均、中央値、およびモードを含む。いくつかの実施形態において、外れ値は、計算された数値を歪ませないように取り除かれる。
図5Cにおいて示されている実施形態に対する入力データ
を再び参照すると、αtはLの関数として定義され、0から1の範囲内にある。たとえば、α(L)は、線形関数、もしくは非線形関数であり得るか、またはLのある範囲上では線形であり、Lの別の範囲上では非線形であるものとしてもよい。一例において、図5Eに示すように、関数α(L)は、0から3の間のLに対して線形であり、3から13の間のLに対して二次であり、13より大きいLに対して1である。この実施形態について、Lが0から3の間であるときに(すなわち、予測された健康指標データおよび測定された健康指標データがほぼ一致するとき)、入力データIt+1は、α-1がゼロに近づくときに、近似的に測定データPt+1となる。Lが大きいときに、たとえば、13より大きいときに、α(L)は1であり、これは入力データ
を時刻t+1における予測された健康指標にする。Lが1から13の間であるときに、α(L)は二次関数として変化し、入力データへの予測されたおよび測定された健康指標データの相対的寄与も変化する。α(L)によって重み付けされた予測された健康指標データと測定された健康指標データとの線形結合は、この実施形態において、特定の任意の時間ステップにおいて予測されたデータと測定されたデータとの間で入力データに重み付けすることを可能にする。これらのすべての例において、入力データは、他の要因データ(Ot)も含み得る。これは、自己サンプリングの一例にすぎず、予測されたデータと測定されたデータとの何らかの結合が訓練済みネットワークへの入力として使用される。当業者であれば、他の多くのものが使用され得ることを理解するであろう。
実施形態における機械学習モデルは、訓練済み機械学習モデルを使用する。いくつかの実施形態において、機械学習モデルは、訓練済みRNNを必要とする、リカレントニューラルネットワークを使用する。たとえば、限定はしないが、図6は、いくつかの実施形態によりRNNを訓練することを実証するアンロールされたRNNを示している。セル602は、初期状態S0 604および重み行列W 606を有する。時間ステップゼロにおけるステップレートデータR0、気温データT0、および初期PPGデータP0は、状態S0に入力され、重みWが適用され、最初の時間ステップにおける予測されたPPG
がセル602から出力され、時間ステップ1で取得されたPPG(P1)を使用して
が計算される。セル602は、時間ステップ1で更新された状態608(S1)も出力し、これはセル610に入る。時間ステップ1におけるステップレートデータR1、気温データT1、およびPPGデータP1は、S1に入力され、重み606 Wが適用され、時間ステップ2における予測されたPPG
がセル610から出力され、時間ステップ2で取得されたPPG(P2)を使用して
が計算される。セル610は、時間ステップ2で更新された状態612(S2)も出力し、これはセル614に入る。時間ステップ3におけるステップレートデータR3、気温データT3、およびPPGデータ(P3)は、S2に入力され、重み606 Wが適用され、時間ステップ3における予測されたPPG
がセル614から出力され、時間ステップ3で取得されたPPG(P3)を使用して
が計算される。これは、時間ステップnでの状態616が出力され、
が計算されるまで続けられる。ΔP*'は、重み行列を調整するために誤差逆伝播法で使用され、これは畳み込みニューラルネットワークの訓練に類似している。しかしながら、畳み込みネットワークと異なり、各反復でリカレントニューラルネットワークにおいて同じ重み行列が適用され、これは訓練中に誤差逆伝播法で修正されるのみである。健康指標データおよび対応する他の要因データを含む多くの訓練例が収束するまで何度もRNN600に入力される。前に説明したように、LSTM RNNは、そのようなネットワークの状態が入力データのより長期の文脈的分析をもたらすいくつかの実施形態において使用されてよく、ネットワークが(より)長期の相関関係を学習するときにより適切な予測を行い得る。さらに言及されているように、当業者であれば、他の機械学習モデルも本明細書において説明される実施形態の範囲内に収まり、たとえば、限定はしないが、CNNまたは他のフィードフォワードネットワークを含み得ることを容易に理解するであろう。
図7Aは、ユーザの測定された健康指標が類似の他の要因の下で健常者の指標に対する正常の範囲内にあるか、または正常の閾値を外れているかどうかを予測するシステム700を示している。システム700は、機械学習モデル702および健康検出器704を有する。機械学習モデル702に対する実施形態は、たとえば(限定はしないが)訓練済み機械学習モデル、訓練済みRNN、CNN、または他のフィードフォワードネットワークを含む。訓練済みRNN、他のネットワーク、またはネットワークの組合せは、健康指標データおよび対応する(時間的に)他の要因データが収集された健常者の集団からの訓練例上で訓練され得る。あるいは、訓練済みRNN、他のネットワーク、またはネットワークの組合せは、特定のユーザからの訓練例上で訓練されてよく、それにより、それをパーソナライズされた訓練済み機械学習モデルにする。当業者であれば、異なる集団からの訓練例は、訓練済みネットワークおよび一般にシステムに対する使用または設計に応じて選択され得ることを理解するであろう。当業者であれば、この実施形態および他の実施形態における健康指標データは、1つまたは複数の健康指標であり得ることも容易に理解するであろう。たとえば、限定はしないが、PPGデータ、心拍データ、血圧データ、体温データ、血中酸素濃度データ、および同様のもののうちの1つまたは複数は、モデルを訓練するため、およびユーザの健康を予測するために使用することが可能である。健康検出器704は、機械学習モデル702および入力データ710からの予測708を使用して、損失、または測定されたデータにより予測された出力を分析することによって決定される他の測定基準が正常と考えられる閾値を超え、したがって健康でないかどうかを判定する。次いで、システム700は、ユーザの健康の通知または状態を出力する。通知は、本明細書において説明される多くの形態を取り得る。入力生成器706は、センサを着用しているか、またはセンサと接触しているユーザからのデータをセンサ(図示せず)により連続的に取得し、データは、ユーザの1つまたは複数の健康指標を表す。対応する(時間的に)他の要因データは、別のセンサによって収集され得るか、または本明細書において説明される、もしくは当業者には容易にわかるような他の手段を通じて取得され得る。
入力生成器706は、また、他の要因データを決定/計算するためにデータを収集し得る。入力生成器は、たとえば、限定はしないが、スマートウォッチ、ウェアラブルもしくはモバイルデバイス(たとえば、Apple Watch(登録商標)もしくはFitBit(登録商標)スマートフォン、タブレット、またはラップトップコンピュータ)、スマートウォッチとモバイルデバイスとの組合せ、データをモバイルデバイスもしくは他の携帯型コンピューティングデバイスに伝送する能力を有する外科的埋め込み型デバイス、または医療施設内のカート上のデバイスを含み得る。好ましくは、ユーザ入力生成器706は、1つまたは複数の健康指標に関係するデータを測定するためのセンサ(たとえば、PPGセンサ、電極センサ)を有する。いくつかの実施形態のスマートウォッチ、タブレット、携帯電話、またはラップトップコンピュータはセンサを装備し得るか、またはセンサは離れた場所に置かれてもよく(外科的に埋め込まれる、モバイルデバイス、または何らかの別個のデバイスから離れている身体に接触させる)これらすべての場合においてモバイルデバイスが健康指標データを収集するためにセンサと通信する。いくつかの実施形態において、システム700は、モバイルデバイス上に単独で、他のモバイルデバイスと組み合わせて、またはこれらのデバイスが通信する際に用いるネットワークを通した通信を介して他のコンピューティングシステムと組み合わせて提供され得る。たとえば、限定はしないが、システム700は、スマートウォッチもしくはウェアラブルであってよく、デバイス上に、たとえば、ウォッチのメモリまたはウォッチ上のファームウェアに機械学習モデル702および健康検出器704が配置される。ウォッチはユーザ入力生成器706を有し、他のコンピューティングデバイス(たとえば、携帯電話、タブレット、ラップトップコンピュータ、またはデスクトップコンピュータ)と、直接通信、ワイヤレス通信(たとえば、WiFi、音、Bluetooth(登録商標)など)を介して、またはネットワーク(たとえば、インターネット、イントラネット、エクストラネットなど)またはその組合せを通じて通信するものとしてよく、訓練済み機械学習モデル702および健康検出器704は他のコンピューティングデバイス上に配置されてもよい。当業者であれ
ば、システム700の任意の数の構成が、本明細書で説明される実施形態の範囲を超えることなく利用され得ることを理解するであろう。
図7Bを参照すると、一実施形態によるスマートウォッチ712が図示されている。スマートウォッチ712は、当業者に知られているすべての回路およびマイクロプロセッサ(図示せず)を収容するウォッチ714を含む。ウォッチ714はディスプレイ716も備え、このディスプレイに、ユーザの健康指標データ718、この例では心拍数データが表示され得る。またディスプレイ716に表示されるのは、正常または健常集団に対する予測された健康指標帯域720であってもよい。図7Bにおいて、ユーザの測定された心拍数データは、予測された健常帯域を超えていないので、この特定の例では、通知は行われない。ウォッチ714は、ウォッチバンド722および高忠実度センサ724、たとえば、ECGセンサも備え得る。あるいは、ウォッチバンド722は、血圧を測定するための膨張性カフであってもよい。低忠実度センサ726(陰影で示されている)はウォッチ714の裏側に設けられ、たとえば、心拍数データまたは血圧のような他のデータを導出するために使用できる、PPGデータなどのユーザ健康指標データを収集する。あるいは、当業者であれば理解するように、いくつかの実施形態では、FitBitまたはPolarなどのフィットネスバンドが使用されてよく、このフィットネスバンドは類似の処理能力および他の要因測定デバイス(たとえば、ppgおよび加速度計)を有する。
図8は、ユーザの健康ステータスを連続的に監視するための方法800の一実施形態を示している。ステップ802では、1つまたは複数の健康指標に対するデータ(すなわち、データの一次系列)および他の要因に対する対応する(時間的に)データ(すなわち、データの二次系列)を含み得る、ユーザ入力データを受け取る。ステップ804で、ユーザデータを、本明細書において説明される訓練済みRNN、CNN、他のフィードフォワードネットワークまたは当業者に知られている他のニューラルネットワークを含み得る、訓練済み機械学習モデルに入力する。いくつかの実施形態において、健康指標入力データは、本明細書のいくつかの実施形態において説明されるように、予測された健康指標データおよび測定された健康指標データのうちの一方またはその組合せ、たとえば線形結合であってよい。ステップ806で、時間ステップで1つまたは複数の予測された健康指標に対するデータを出力し、その出力は、たとえば、限定はしないが、単一の予測された値、予測された値の関数としての確率分布を含み得る。ステップ808で、予測された健康指標に基づき損失を決定し、たとえば、限定はしないが、損失は予測された健康指標と測定された健康指標との間の単純な差であるか、または他の何らかの適切に選択された損失関数(たとえば、測定された健康指標に対する値で評価される確率分布の負の対数)であってもよい。ステップ810で、損失が正常または健康的でないとみなされる閾値を超えるかどうかを判定し、閾値は、たとえば、限定はしないが、設計者によって選ばれた単純な数値であるか、または予測に関係する何らかのパラメータのより複雑な関数であってよい。この閾値より大きい場合、ステップ812で、ユーザに、ユーザの健康指標が正常または健常であるとみなされる閾値を超えたことを通知する。通知は、本明細書において説明されるように、多くの形態を取り得る。いくつかの実施形態において、この情報は、ユーザに対して視覚化され得る。たとえば、限定はしないが、(i)時間の関数としての測定された健康指標データ(たとえば、心拍数)および他の要因データ(たとえば、ステップカウント)、(ii)機械学習モデルによって生成された予測された健康指標データ(たとえば、予測された心拍数値)の分布を示すグラフなどの情報がユーザインターフェース
上に表示され得る。このようにして、ユーザは、測定されたデータ点を予測されたデータ点と視覚的に比較し、目視検査により、たとえば、心拍数が機械学習モデルによって予想される範囲内に収まるかどうかを決定することができる。
本明細書において説明されるいくつかの実施形態では、閾値を使用してユーザに通知するかしないかを決定することを言及している。これらの実施形態の1つまたは複数において、ユーザは、個人的健康知識とより正確にマッチするようにシステムまたは方法を調整もしくはチューニングするために閾値を変更するものとしてよい。たとえば、使用される生理学的指標が血圧であり、ユーザがより高い血圧を有している場合、実施形態では、ユーザの健康指標が健常集団上で訓練されたモデルからの正常もしくは健常範囲を外れていることを頻繁にユーザに警告/通知するものとしてよい。したがって、いくつかの実施形態では、ユーザが閾値を高くして、ユーザの健康指標データが正常または健常とみなされるものを超えたことをあまり頻繁に通知されないようにすることを可能にする。
いくつかの実施形態では、好ましくは、健康指標に生データを使用する。生データが処理され特定の測定、たとえば、心拍数を導出する場合、この導出されたデータは実施形態に従って使用され得る。いくつかの状況において、健康監視装置の供給者は生データの制御を行わず、むしろ、受け取ったものが、計算された健康指標、たとえば、心拍数または血圧の形態の処理済みデータである。当業者であれば理解するように、機械学習モデルを訓練するために使用されるデータの形態は、ユーザから収集され、訓練済みモデルに入力されるデータの形態とマッチすべきであり、そうでなければ予測は間違っていることを証明することになり得る。たとえば、Apple Watchは、不等時間ステップで心拍数測定データを与え、生PPGデータを提供しない。この例では、ユーザは、不等時間ステップでの心拍数データを用いるAppleのPPG処理アルゴリズムに従って心拍数データを出力するApple Watchを身に着けている。モデルは、このデータ上で訓練される。Appleが心拍数データを提供するためのアルゴリズムを変更することを決定したことで、以前のアルゴリズムからのデータ上で訓練されたモデルは陳腐化して、新しいアルゴリズムからのデータ入力では使用できない場合がある。この潜在的な問題を考慮するため、いくつかの実施形態では、モデルを訓練するためにデータを収集するときに、不規則な間隔で並ぶデータ(心拍数、血圧データ、またはECGデータなど)を規則正しい間隔で並ぶグリッドおよび規則正しい間隔で並ぶグリッドからのサンプル上に再サンプリングする。Apple、またはデータの他の供給者が、そのアルゴリズムを変更した場合、モデルは、新たに収集された訓練例で再訓練するだけでよいが、モデルは、アルゴリズム変更に合わせて再構築される必要はない。
さらなる実施形態において、訓練済み機械学習モデルはユーザのデータ上で訓練されるものとしてよく、その結果、パーソナライズされた訓練済み機械学習モデルが得られる。このパーソナライズされた訓練済み機械学習モデルは、本明細書において説明される健常者集団上で訓練された機械学習モデルの代わりに、それと組み合わせて使用することができる。単独で使用された場合、ユーザのデータはパーソナライズされた訓練済み機械学習モデルに入力され、これは次の時間ステップにおける個人の、そのユーザに対して正常である健康指標の予測を出力し、次いで、本明細書において説明される実施形態と一致する仕方で次の時間ステップからの実際の/測定されたデータと比較され、ユーザの健康指標がそのユーザに対して正常であると予測されたものからある閾値だけ異なっているかどうかを決定する。それに加えて、このパーソナライズされた機械学習モデルは、健常者集団からの訓練例上で訓練された機械学習モデルと組み合わせて使用することが可能であり、それにより、その個別ユーザに対して正常と予測されるものおよび健常者集団に対して正常と予測されるものの両方に関係するように予測および関連する通知を生成する。
図9Aは、別の実施形態による方法900を示しており、図9Bは、説明のために心拍数(たとえば限定はしないが)の仮説的プロット902を時間の関数として示している。ステップ904(図9A)では、ユーザ心拍数データ(または他の健康指標データ)、および任意選択で、対応する(時間的に)他の要因データを受け取り、このデータをパーソナライズされた訓練済み機械学習モデルに入力する。いくつかの実施形態において、パーソナライズされた訓練済みモデルは、ユーザの個別健康指標データ、および任意選択で、本明細書で説明される対応する(時間的に)他のデータ上で訓練される。したがって、ステップ906において、パーソナライズされた訓練済み機械学習モデルは、他の要因の条件の下でその個別のユーザに対する正常心拍数データを予測し、ステップ908で、その特定のユーザに対して正常であると予測されるものと比較してユーザの健康指標データ内の逸脱または異常を識別する。いくつかの実施形態では、ユーザが付けているウェアラブルデバイス(たとえば、Apple Watch、スマートウォッチ、FitBit(登録商標)など)から、またはユーザが付けているセンサ(たとえば、Polar(登録商標)ストラップ、PPGセンサなど)と通信している別のモバイルデバイス(たとえば、タブレット、コンピュータなど)からユーザの健康指標データを受信し、これは本明細書の説明全体を通して説明される。
損失は、ステップ908において、ユーザの測定されたデータがその特定のユーザに対して正常であると予測されるものと比べて異常であることをユーザに通知するかどうかを決定するのを補助するように定義され得る。損失は、予測が実際のまたは測定されたデータにどれだけ近いかをモデル化するように選択される。当業者であれば、損失を定義するやり方は多数あることを理解するであろう。本明細書において説明される、ここで等しく適用可能である、他の実施形態において、たとえば、予測された値と絶対値との間の差の絶対値|ΔP*|は損失の一形態である。いくつかの実施形態において、損失(L)はL=-ln[β(P)]としてよく、ここで、
である。Lは、一般的に、予測されたデータが測定されたデータにどれだけ近いかの尺度である。この例では確率分布であるβ(P)は、0から1の範囲内であり、1は予測されたデータを意味し、測定されたデータは同じである。したがって、低損失は、いくつかの実施形態において、予測されたデータがおそらく測定されたデータと同じであるか、または近いことを示す。いくつかの実施形態において、Lに対する閾値が設定され、たとえば、L>5であり、ユーザは、その特定のユーザに対して予測されている値から外れた異常な状態が存在していることを通知される。この通知は、本明細書の別のところで説明されてように、多くの形態を取り得る。本明細書の別のところでも説明されるように、他の実施形態では一定期間にわたって損失の平均を取り、その平均を閾値と比較するものとしてよい。いくつかの実施形態において、本明細書の別のところでさらに詳しく説明されるように、閾値それ自体は、予測されたデータの統計的計算の関数であるか、または予測されたデータの平均であってよい。損失は、本明細書の別のところでより詳しく説明されており、簡潔にするため、ここでさらに説明することをしない。当業者であれば、入力および予測されたデータが一定時間期間にわたってスカラー値、またはデータのセグメントであり得ることも理解するであろう。たとえば、限定はしないが、システム設計者は、5分のデータセグメントに興味があるものとしてよく、時刻tの前のすべてのデータおよびt+5分のすべての他のデータを入力し、t+5分の健康指標データを予測し、t+5分のセグメントに対する測定された健康指標データとt+5分のセグメントに対する予測された健康指標データとの間の損失を決定する。
ステップ908で、異常が存在しているかどうかを判定する。説明されるように、これは、損失で閾値を超えた場合に決定され得る。すでに説明されるように、閾値は、設計者の選択により、設計されているシステムの目的に基づき設定される。いくつかの実施形態において、閾値は、ユーザによって修正されてもよいが、この実施形態では好ましくはそうしなくてよい。異常が存在していない場合、このプロセスはステップ904で繰り返される。異常が存在している場合、ステップ910で、高忠実度測定、たとえば限定はしないが、ECGまたは血圧測定を取得するようユーザに通知するか、または警告する。ステップ912において、高忠実度データは、アルゴリズム、医療専門家、またはその両方によって分析され、正常または正常でないと説明され、正常でない場合、何らかの診断が下されてよく、たとえば、取得される高忠実度測定に応じてAFib、頻脈、徐脈、心房粗動、または高/低血圧である。分かりやすくするため、高忠実度データを記録する通知は、他の実施形態において、および上述の一般モデルを使用する特定の実施形態において、等しく適用可能であり、可能であることに留意されたい。高忠実度測定は、いくつかの実施形態において、ECGまたは血圧測定システムなどの、モバイル監視システムを使用するユーザによって直接取得されるものとしてよく、これはいくつかの実施形態においてウェアラブルデバイスと関連付けられ得る。あるいは、通知ステップ910は、高忠実度測定の自動取得を引き起こす。たとえば、ウェアラブルデバイスは、センサと(ハード配線により、またはワイヤレス通信を介して)通信し、ECGデータを取得し得るか、または血圧カフシステム(たとえば、ウェアラブルのリストバンドまたはアームバンドカフ)と通信して、血圧測定を自動的に取得し得るか、またはペースメーカーまたはECG電極などの埋め込み型デバイスと通信し得る。ECGを遠隔取得するためのシステムは、たとえば、AliveCor, Inc.によって提供され、そのようなシステムは(限定はしないが)2つ以上の場所でユーザと接触する1つまたは複数のセンサを備え、センサは有線もしくはワイヤレス方式のいずれかでモバイルコンピューティングデバイスに伝送される電気的心臓データを収集し、アプリが、アルゴリズム、医療専門家、またはその両方に
よって分析され得る、データからのECGストリップを生成する。あるいは、センサは、血圧モニタであってもよく、血圧データは、有線またはワイヤレス方式のいずれかで、モバイルコンピューティングデバイスに伝送される。ウェアラブルそれ自体が、健康指標データを測定する能力を備え、また任意選択で、上述のものに類似するECGセンサを備えるカフを有する血圧システムであってもよい。モバイルコンピューティングデバイスは、たとえば、限定はしないが、コンピュータタブレット(たとえば、iPad(登録商標))、スマートフォン(たとえば、iPhone(登録商標))、ウェアラブル(たとえば、Apple Watch(登録商標))、または医療施設内のデバイス(カートに装着され得る)であってよい。モバイルコンピューティングデバイスは、いくつかの実施形態において、ラップトップコンピュータまたは他の何らかのモバイルデバイスと通信しているコンピュータとすることも可能である。当業者であれば、ウェアラブルまたはスマートウォッチも、本明細書において説明される実施形態の文脈において提供される機能に関してモバイルコンピューティングデバイスとも考えられることを理解するであろう。ウェアラブルの場合、センサはウェアラブルのバンドに付けられてよく、センサがデータを、ワイヤレス方式でまたは有線により、コンピューティングデバイス/ウェアラブルに伝送し得るか、またはバンドは、血圧監視カフであってもよく、または前に説明したようにその両方であってもよい。携帯電話の場合、センサは、電話にアタッチされたパッドまたは電話から離れて場所にあってよく、パッドは電気的心臓信号を感知し、ワイヤレス方式または有線で、データをウェアラブルまたは他のモバイルコンピューティングデバイスに通信する。これらのシステムのうちのいくつかについてのより詳細な説明は、米国特許第9,420,956号、米国特許第9,572,499号、米国特許第9,351,654号、米国特許第9,247,911号、米国特許第9,254,095号、および米国特許第8,509,882号のうちの1つまたは複数、ならびに米国特許出願公開第2015/0018660号、米国特許出願公開第2015/0297134号、および米国特許出願公開第2015/0320328号のうちの1つまたは複数において示されており、これらはすべてすべての目的に関して全体が本明細書に組み込まれている。前に説明されるように、ステップ912で、高忠実度データを分析し、説明または診断を提供する。
ステップ914において、高忠実度測定の診断または分類は、コンピューティングシステムによって受信され、このシステムはいくつかの実施形態において、ユーザの心拍数データ(または他の健康指標データ)を収集するために使用されるモバイルもしくはウェアラブルコンピューティングシステムであってよく、ステップ916において、低忠実度健康指標データ系列(この例では心拍数データ)は、診断のラベルを付けられる。ステップ918において、ラベル付けされたユーザの低忠実度データ系列は、高忠実度機械学習モデルを訓練するために使用され、任意選択で、他の要因データ系列も、モデルを訓練するために提供される。訓練済み高忠実度機械学習モデルは、いくつかの実施形態において、測定された低忠実度健康指標データ系列(たとえば、心拍数データまたはPPGデータ)および任意選択で、他の要因データを受け取り、ユーザが高忠実度データを使用して典型的に診断または検出される事象を経験しているときの確率を与えるか、または予測するか、または診断するか、または検出する能力を有する。訓練済み高忠実度機械学習モデルは、高忠実度データの診断でラベル付けされたユーザの健康診断データ(および任意選択で、他の要因データ)上ですでに訓練されているのでこれを行うことができる。したがって、訓練済みモデルは、測定された低忠実度健康指標入力データ系列、たとえば、心拍数またはppgデータ(および任意選択で、他の要因データ)だけに基づきユーザがラベルの1つまたは複数に関連付けられている事象(たとえば、Afib、高血圧など)をいつ有しているかを予測する能力を有する。当業者であれば理解するように、高忠実度モデルの訓練が、ユーザのモバイルデバイス上で行われるか、ユーザのモバイルデバイスから離れて行われるか、これら2つの組合せで行われるか、または分散ネットワーク内で行われ得る。たとえば、限定はしないが、ユーザの健康指標データは、クラウドシステムに記憶することも可能であり、このデータは、ステップ914からの診断を使用してクラウド内でラベル付けすることができる。当業者であれば、この情報を記憶し、ラベル付けし、アクセスするやり方および仕方はいくらでもあることを容易に理解するであろう。あるいは、大域的訓練済み高忠実度モデルが使用されることも可能であり、これは、高忠実度測定で典型的には診断されるか、または検出されるこれらの病状を経験している人々の集団からのラベル付けされた訓練例上で訓練される。これらの大域的訓練例は、高忠実度測定を使用して診断された病状でラベル付けされた低忠実度データ系列(たとえば、心拍数)を提供する(たとえば、医療専門家またはアルゴリズムによってECGから呼び出されるAfib)。
次に図9Bを参照すると、プロット902は、時間の関数としてプロットされた心拍数の概略を示している。ユーザの正常な心拍数データからの逸脱920は、時刻t1、t2、t3、t4、t5、t6、t7、t8において発生した。上述の、正常とは、この特定のユーザに対する予測されたデータが測定されたデータの閾値範囲内にあったことを意味し、逸脱は閾値を外れている。正常からの逸脱では、いくつかの実施形態は、ユーザに、より確定的なまたはより高忠実度の読み取り、たとえば、限定はしないが、ECG1、ECG2、ECG3、ECG4、ECG5、ECG6、ECG7、ECG8と識別されている、ECG読み取りを取得することを促す。上述のように、高忠実度読み取りは、自動的に取得されることが可能であり、ユーザはそれを取得してよく、これはECG以外のもの、たとえば、血圧とすることも可能である。高忠実度読み取りは、アルゴリズム、医療専門家、またはその両方によって分析され、高忠実度データを正常/異常と識別し、異常、たとえば、限定はしないが、AFibをさらに識別/診断する。この情報は、ユーザの順序付けされたデータにおける異常920の点において健康指標データ(たとえば、心拍数またはPPGデータ)をラベル付けするために使用される。
高忠実度データと低忠実度データとの間の区別は、高忠実度データまたは測定は典型的には決定、検出、または診断を行うために使用されるが、低忠実度データはそのようなものに対しては容易に使用することができないという点である。たとえば、ECG走査は、不整脈を識別するか、検出するか、または診断するために使用され得るが、心拍数またはPPGデータでは、典型的にはこのようなことを行えない。当業者であれば理解するように、機械学習アルゴリズム(たとえば、ベイズ、マルコフ、ガウス過程、クラスタ化アルゴリズム、生成モデル、カーネル、およびニューラルネットワークアルゴリズム)に関係する本明細書の説明は、本明細書において説明されるすべての実施形態に等しく適用される。
いくつかの状況において、ユーザは、問題が存在し得るにもかかわらず無症状であり、症状が出ている場合であっても、診断または検出を行うのに必要な高忠実度測定を取得することが実用的でないことがある。たとえば、限定はしないが、不整脈、特にAFは出現しないこともあり得、たとえ症状が出たときでも、その時点にECGを記録することは非常に困難であり、高価でかさばる、ときには侵襲的な監視デバイスがなしでは、ユーザを連続的に監視することは途方もなく困難である。本明細書の別のところで説明されるように、AFが少なくともほかにも重大な病状があるがとりわけ脳卒中の原因因子であり得るのでユーザがAFをいつ経験するかを理解することは重要である。同様に、別のところで説明されるように、AF負担は、類似の重要性を有し得る。いくつかの実施形態では、任意選択の他の要因データとともに心拍数またはppgなどの低忠実度健康指標データの連続的監視のみを使用して不整脈(たとえば、AF)または他の重大な病状の連続的監視を可能にする。
図10は、健康監視システムおよび方法のいくつかの実施形態による方法1000を示している。ステップ1002で、測定された、または実際のユーザ低忠実度健康指標データ(たとえば、ウェアラブル上のセンサからの心拍数またはPPGデータ)を受け取り、任意選択で、本明細書において説明される健康指標データに影響を及ぼし得る、対応する(時間的に)他の要因データを受け取る。本明細書の別のところで説明されるように、低忠実度健康指標データは、スマートウォッチ、他のウェアラブル、またはコンピュータタブレットなどの、モバイルコンピューティングデバイスによって測定され得る。ステップ1004において、ユーザの低忠実度健康指標データ(および任意選択で、他の要因データ)は、訓練済み高忠実度機械学習モデルに入力され、ステップ1006において、測定された低忠実度健康指標データ(および任意選択で、対応する(時間的に)他の要因データ)に基づきユーザに対する予測された識別または診断を出力する。ステップ1008で、その識別または診断が正常であるかどうかを問い、もしyesならば、プロセスはもう一度やり直す。その識別または診断が正常でない場合、ステップ1010で、ユーザに、問題があること、または検出を通知する。任意選択で、システム、方法、またはプラットフォームは、ユーザ、家族、友人、医療専門家、救急隊911、または同様のものの任意の組合せに通知するようにセットアップされ得る。これらの人々のうちの誰が通知されるかは、識別、検出、または診断に依存し得る。識別、検出、または診断が命にかかわる場合、特定の人々に連絡するか、または通知するものとしてよく、診断が命にかかわらない場合には通知され得ない。それに加えて、いくつかの実施形態において、測定された健康指標データ系列は、訓練済み高忠実度機械学習モデルに入力され、ユーザが異常な事象を経験している時間の長さ(たとえば、予測された異常な事象の開始から終了までの間の差)が計算され、それにより、ユーザに対する異常負担をより深く理解できるようにする。特に、AF負担は、脳卒中および他の重大な病状を予防する際に理解することが極めて重要であり得る。したがって、いくつかの実施形態は、低忠実度健康要因データおよび任意選択で、他の要因データを取得することのみができるモバイルコンピューティングデバイス、ウェアラブルコンピューティングデバイス、または他の携帯型デバイスにより異常な事象の連続的監視を可能にする。
図11は、本明細書で説明されるいくつかの実施形態による、高忠実度出力予測または検出を生成するために低忠実度データに基づき分析された例示的なデータ1100を示す。心房細動の検出を参照しつつ説明されるが、類似のデータは、低忠実度測定に基づき高忠実度診断の追加の予測のために生成され得る。第1のチャート1110は、ユーザに対する経時的な心拍数計算を示している。心拍数は、PPGデータまたは他の心拍数センサに基づき決定され得る。第2のチャート1120は、同じ時間期間におけるユーザに対する活動データを示す。たとえば、活動データは、ステップカウント、またはユーザの移動の他の測定に基づき決定され得る。第3のチャート1130は、機械学習モデルから出力される分類器および通知がいつ生成されるかについての水平閾値を示す。機械学習モデルは、低忠実度測定の入力に基づき予測を生成し得る。たとえば、第1のチャート1110および第2のチャート1120におけるデータは、上でさらに説明されるように機械学習システムによって分析され得る。機械学習システムの分析結果は、チャート1130に示されている心房細動確率として提供され得る。確率が、この場合に信頼度0.6を超えるものとして示されている閾値を超えるときに、健康監視システムは、ユーザ、医師、またはユーザに関連する他のユーザに対する通知または他の警告をトリガーすることができる。
いくつかの実施形態において、チャート1110および1120におけるデータは、機械学習システムに連続的測定として提供され得る。たとえば、心拍数および活動レベルは、正確な測定を行うように5秒おきに測定として生成され得る。次いで、複数の測定による時間のセグメントが機械学習モデルに入力され得る。たとえば、データの前の時間は、機械学習モデルへの入力として使用することができる。いくつかの実施形態において、1時間ではなくむしろ時間のより短いまたはより長い期間が提供されてよい。図11に示すように、出力チャート1130は、ユーザが異常な健康事象を受けている時間の期間の指示を提供する。たとえば、予測が特定の信頼水準で行われるときの期間は、心房細動を決定するために健康監視システムによって使用され得る。この値は、測定時間期間中のユーザに対する心房細動負担を決定するために使用できる。
いくつかの実施形態において、チャート1130における予測された出力を生成するための機械学習モデルは、ラベル付けされたユーザデータに基づき訓練され得る。たとえば、ラベル付けされたユーザデータは、低忠実度データ(たとえば、PPG、心拍数)および他のデータ(たとえば、活動レベルまたはステップ)も利用可能である時の時間期間に取られる高忠実度データ(ECG読み取りなど)に基づき提供され得る。いくつかの実施形態において、機械学習モデルは、先行する時間期間において心房細動があった可能性が高いかを決定するように設計される。たとえば、機械学習モデルは、入力として1時間分の低忠実度データを取り、事象があった確率を提供するものとしてよい。したがって、訓練データは、個人の集団に対する数時間分の記録されたデータを含み得る。データは、高忠実度データに基づき病状が診断されたときに健康事象ラベル付け時間であり得る。したがって、高忠実度データに基づく健康事象ラベル付け時間があった場合に、機械学習モデルは、未訓練機械学習モデルに入力されるその事象を伴う低忠実度データの任意の1時間分のウィンドウが健康事象の予測を提供すべきであると決定し得る。次いで、未訓練機械学習モデルは、予測とそのラベルとの比較に基づき更新することができる。何回もの反復で繰り返し、機械学習モデルが収束したと決定した後、これは、低忠実度データに基づきユーザの心房細動を監視するために健康監視システムによって使用され得る。様々な実施形態において、心房細動以外の病状が、低忠実度データを使用して検出され得る。
図12は、本明細書で説明される方法のうちの1つまたは複数を機械に実行させるために、命令セットが実行され得るコンピュータシステム1200の例示的な形態における機械の図式的表現を示している。他の実施形態において、機械は、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、またはインターネットにおいて他の機械に(たとえば、ネットワーク)接続され得る。機械は、クライアントサーバーネットワーク環境内のサーバまたはクライアントマシンの能力内で、またはピアツーピア(または分散)ネットワーク環境内のピアマシンとして動作し得る。機械は、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、携帯電話、ウェブアプライアンス、サーバ、ネットワークルータ、スイッチもしくはブリッジ、ハブ、アクセスポイント、ネットワークアクセス制御デバイス、またはその機械によって実行されるアクションを指定する命令セット(順次または他の方法で)実行することができる機械であってよい。さらに、単一の機械のみが図示されているが、「機械」または「マシン」という用語は、本明細書で説明される方法のうちの1つまたは複数を実行するために命令セット(または複数の命令セット)を個別に、または連携して実行する機械またはマシンの集合体を含むと解釈されるものとする。一実施形態において、コンピュータシステム1200は、本明細書において説明される健康監視を実行するように構成されているサーバ、モバイルコンピューティングデバイス、ウェアラブル、または同様のものを表すものとしてよい。
例示的なコンピュータシステム1200は、処理デバイス1202、メインメモリ1204(たとえば、リードオンリーメモリ(ROM)、フラッシュメモリ、ダイナミックランダムアクセスメモリ(DRAM))、スタティックメモリ1206(たとえば、フラッシュメモリ、スタティックランダムアクセスメモリ(SRAM)、など)、およびデータストレージデバイス1218を備え、これらはバス1230を介して互いに通信する。本明細書において説明される様々なバス上で提供される信号はどれも、他の信号と時分割され、1つまたは複数の共通バス上で提供され得る。それに加えて、回路コンポーネントまたはブロック間の相互接続は、バスとして、または単一の信号線として示され得る。これらのバスは各々、あるいは、1つまたは複数の単一信号線であってよく、単一信号線の各々は、あるいはバスであってよい。
処理デバイス1202は、マクロプロセッサ、中央演算処理装置、または同様のものなどの1つまたは複数の汎用処理デバイスを表す。より具体的には、処理デバイスは、Complex Instruction Set Computing(CISC)マイクロプロセッサ、Reduced Instruction Set Computing(RISC)マイクロプロセッサ、Very Long Instruction Word(VLIW)マイクロプロセッサ、または他の命令セットを実装するプロセッサもしくは命令セットの組合せを実装するプロセッサであってよい。処理デバイス1202は、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタルシグナルプロセッサ(DSP)、ネットワークプロセッサ、または同様のものなどの1つまたは複数の専用処理デバイスであってもよい。処理デバイス1202は、処理ロジック1226を実行するように構成され、これは本明細書で説明される動作およびステップを実行するための健康モニタ1250および関係するシステムの一例であるものとしてよい。
データストレージデバイス1218は、機械可読記憶媒体1228を備えるものとしてよく、この媒体には本明細書で説明される機能の方法のうちの任意の1つまたは複数を具現化する1つまたは複数の命令セット1222(たとえば、ソフトウェア)が記憶され、これは処理デバイス1202に、本明細書において説明される健康モニタ1250および関係するプロセスを実行させる命令を含む。命令1222は、コンピュータシステム1200による実行中に完全にまたは少なくとも部分的にメインメモリ1204または処理デバイス1202内にも常駐するものとしてよく、メインメモリ1204および処理デバイス1202も機械可読記憶媒体を構成する。命令1222は、ネットワークインターフェースデバイス1208を介してネットワーク1220上でさらに伝送されるかまたは受信され得る。
機械可読記憶媒体1228は、本明細書において説明されるように、ユーザ健康を監視するための方法を実行する命令を記憶するためにも使用され得る。機械可読記憶媒体1228は、単一の媒体であるものとして例示的な実施形態において示されているが、「機械可読記憶媒体」という語は、1つまたは複数の命令セットを記憶する単一の媒体または複数の媒体(たとえば、集中もしくは分散データベース、または関連するキャッシュおよびサーバ)を含むものとして解釈されるべきである。機械可読媒体は、機械(たとえば、コンピュータ)によって読み込むことが可能な形式(たとえば、ソフトウェア、処理アプリケーション)で情報を記憶するためのメカニズムを備える。機械可読媒体は、限定はしないが、磁気記憶媒体(たとえば、フロッピーディスケット)、光記憶媒体(たとえば、CD-ROM)、光磁気記憶媒体、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、消去可能プログラム可能メモリ(たとえば、EPROMおよびEEPROM)、フラッシュメモリ、または電子的命令を記憶するのに適している別の種類の媒体を含み得る。
前述の説明では、本開示のいくつかの実施形態をよく理解できるように、特定のシステム、コンポーネント、方法、などの例などの多数の具体的詳細を述べている。しかしながら、当業者には、本開示の少なくともいくつかの実施形態がこれらの具体的詳細がなくても実施され得ることは明らかであろう。他の事例において、よく知られているコンポーネントまたは方法は、本開示をいたずらにわかりにくくしないために、詳しく説明されていないか、または単純なブロック図形式で提示されている。したがって、述べられている具体的詳細は、例示的なものにすぎない。特定の実施形態は、これらの例示的な詳細と異なることがあり、それでも、本開示の範囲内にあることが企図される。
それに加えて、いくつかの実施形態は、機械可読媒体が複数コンピュータシステムに記憶される分散コンピューティング環境で実施され、および/または複数のコンピュータによって実行され得る。それに加えて、コンピュータシステム間で転送される情報は、コンピュータシステムを接続する通信媒体上でプルまたはプッシュのいずれかがなされ得る。
請求されている主題の実施形態は、限定はしないが、本明細書において説明される様々な動作を含む。これらの動作は、ハードウェアコンポーネント、ソフトウェア、ファームウェア、またはこれらの組合せによって実行されるものとしてよい。
本明細書の方法の動作が特定の順序で図示され、説明されるけれども、各方法の動作の順序は、いくつかの動作が逆順に実行され得るように、またはいくつかの動作が少なくとも一部は他の動作と同時に実行され得るように変更されてよい。別の実施形態では、異なる動作の命令また下位動作は、間欠的にまたは交互になされるものであってもよい。
要約書で説明される内容を含む、本発明の例示されている実装形態の上記の説明は、網羅的であること、または本発明を開示されている正確な形態に制限することを意図されていない。本発明の特定の実装形態、および本発明のための例は、例示することを目的として本明細書において説明されるが、様々な均等の修正形態も、当業者が認識するように、本発明の範囲内で可能である。「例」または「例示的な」という語は、本明細書では、一例、事例、または例示として使用することを意味するために使用される。「例」または「例示的」として本明細書に記載されたあらゆる態様または設計は必ずしも、他の態様または設計より好ましいまたはこれを凌ぐものであるとして解釈されるべきではない。むしろ、「例」または「例示的」という語の使用は、概念を具体的に示すことが意図されている。本出願において用いられる「または」または「もしくは」という語は、排他的な「または」または「もしくは」ではなく包含的な「または」または「もしくは」を意味することが意図されている。つまり、断りのない限り、または文脈から明らかでない限り、「XはAまたはBを含む」は、自然な包含的置換を意味することが意図されている。つまり、XがAを含むか、またはXがBを含むか、またはXがAとBの両方を含む場合、「XはAまたはBを含む」は、前記事例の下で充足される。それに加えて、英語による本出願および付属の請求項において使用される「a」および「an」という冠詞は、一般的に、特に断りのない限り、または単数形であることが文脈上明らかでない限り、「1つまたは複数」を意味するものと解釈されるべきである。さらに、「実施形態」または「一実施形態」または「実装形態」または「一実装形態」という語の全体を通しての使用は、そのようなものとして記述されていない限り同じ実施形態または実装形態を意味することは意図されていない。さらに、本明細書において用いられる「第1の」、「第2の」、「第3の」、「第4の」、などの語は、異なる要素を区別するためのラベルであることを意図されており、必ずしもその数字表示による序数的な意味を有しないことがある。
上で開示されている、および他の特徴ならびに機能の変更形態、またはその他の形態は、他の異なるシステムもしくはアプリケーションに組み合わせられ得ることは理解されるであろう。様々な現在予見されないか、または予期されない他の形態、修正形態、変更形態、その改善は、その後、次の請求項によって包含されることも意図されている当技術分野の当業者によって形成されてよい。請求項は、ハードウェア、ソフトウェア、またはこれらの組合せの実施形態を包含し得る。
上述の実施形態に加えて、本開示は、限定することなく、次の例示的な実装形態を含む。
いくつかの例示的な実装形態は、ユーザの心臓健康状態を監視する方法を提供する。この方法は、第1の時刻においてユーザの測定された健康指標データおよび他の要因データを受け取ることと、処理デバイスにより、健康指標データおよび他の要因データを機械学習モデルに入力することであって、機械学習モデルは次の時間ステップで予測された健康指標データを生成する、入力することと、次の時間ステップでユーザのデータを受け取ることと、処理デバイスにより、次の時間ステップで損失を決定することであって、損失は、次の時間ステップでの予測された健康指標データと次の時間ステップでのユーザの測定された健康指標データとの間の尺度である、決定することと、損失が閾値を超えたことを決定することと、損失が閾値を超えたことを決定したことに応答して、ユーザに通知を出力することとを含むことができる。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、訓練済み生成ニューラルネットワークである。任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、フィードフォワードネットワークである。任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、RNNである。任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、CNNである。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、健常集団、心臓疾患集団、およびユーザのうちの1つまたは複数からの訓練例上で訓練される。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、次の時間ステップでの損失は、次の時間ステップでの予測された健康指標データと次の時間ステップでのユーザの測定された健康指標との間の差の絶対値である。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、予測された健康指標データは確率分布であり、次の時間ステップでの予測された健康指標データは、この確率分布からサンプリングされる。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、次の時間ステップでの予測された健康指標データは、最大確率で予測された健康指標データおよび確率分布から予測された健康指標データのランダムサンプリングからなる群から選択されるサンプリング技術に従ってサンプリングされる。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、予測された健康指標データは確率分布(β)であり、損失は、次の時間ステップでのユーザの測定された健康指標で評価された次の時間ステップでの確率分布の負の対数に基づき決定される。任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、この方法は、確率分布の自己サンプリングをさらに含む。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、この方法は、時間ステップの期間にわたって予測された健康指標データを平均することと、時間ステップの期間にわたってユーザの測定された健康指標データを平均することと、予測された健康指標データと測定された健康指標データとの間の差の絶対値に基づき損失を決定することとをさらに含む。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、測定された健康指標データは、PPGデータを含む。任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、測定された健康指標データは、心拍数データを含む。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、この方法は、不規則な間隔で並ぶ心拍数データを規則正しい間隔で並ぶグリッド上に再サンプリングすることをさらに含み、心拍数データは、規則正しい間隔で並ぶグリッドからサンプリングされる。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、測定された健康指標データは、PPGデータ、心拍数データ、パルス酸素濃度計データ、ECGデータ、および血圧データからなる群から選択される1つまたは複数の健康指標データである。
いくつかの例示的な制限は、処理デバイス、ディスプレイ、健康指標データセンサ、および命令が記憶されるメモリを備えるモバイルコンピューティングデバイスを含む装置を提供し、この命令は処理デバイスによって実行されたときに処理デバイスに、ある時刻における健康指標データセンサからの測定された健康指標データおよび第1の時刻における他の要因データを受信し、健康指標データおよび他の要因データを訓練済み機械学習モデルに入力し、訓練済み機械学習モデルは、次の時間ステップで予測された健康指標データを生成し、次の時間ステップで測定された健康指標データおよび他の要因データを受信し、次の時間ステップで損失を決定し、損失は、次の時間ステップでの予測された健康指標データと次の時間ステップでの測定された健康指標データとの間の尺度であり、次の時間ステップでの損失が閾値を超えた場合に通知を出力することを行わせる。
任意の例示的な装置のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、訓練済み生成ニューラルネットワークを含む。任意の例示的な装置のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、フィードフォワードネットワークを含む。任意の例示的な装置のいくつかの例示的な実装形態において、訓練済み機械学習モデルはRNNである。任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、CNNである。
任意の例示的な装置のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、健常集団、心臓疾患集団、およびユーザからなる群に含まれる1つからの訓練例上で訓練される。
任意の例示的な装置のいくつかの例示的な実装形態において、予測された健康指標データは、次の時間ステップでのユーザの健康指標の点予測であり、損失は、次の時間ステップでの予測された健康指標データと測定された健康指標データとの間の差の絶対値である。
任意の例示的な装置のいくつかの例示的な実装形態において、予測された健康指標データは、機械学習モデルから生成される確率分布からサンプリングされる。
任意の例示的な装置のいくつかの例示的な実装形態において、予測された健康指標データは、最大確率および確率分布からのランダムサンプリングからなる群から選択されるサンプリング技術に従ってサンプリングされる。
任意の例示的な装置のいくつかの例示的な実装形態において、予測された健康指標データは確率分布(β)であり、損失は、次の時間ステップでのユーザの測定された健康指標で評価されたβの負の対数に基づき決定される。
任意の例示的な装置のいくつかの例示的な実装形態において、処理デバイスは、さらに0から1の範囲の関数αを定義するものであり、Itは、αの関数としてユーザの測定された健康指標データと予測された健康指標データとの線形結合を含む。
任意の例示的な装置のいくつかの例示的な実装形態において、処理デバイスは、確率分布の自己サンプリングをさらに実行するものである。
任意の例示的な装置のいくつかの例示的な実装形態において、処理デバイスは、平均化方法を使用して、時間ステップの一期間にわたって確率分布からサンプリングされた予測された健康指標データを平均し、平均化方法を使用して、時間ステップの期間にわたってユーザの測定された健康指標データを平均し、損失を平均された予測された健康指標データと測定された健康指標データの絶対値として定義することをさらに行うものである。
任意の例示的な装置のいくつかの例示的な実装形態において、平均化方法は、平均を計算すること、算術平均を計算すること、中央値を計算すること、およびモードを計算することからなる群から選択される1つまたは複数の方法を含む。
任意の例示的な装置のいくつかの例示的な実装形態において、測定された健康指標データは、PPG信号からのPPGデータを含む。任意の例示的な装置のいくつかの例示的な実装形態において、測定された健康指標データは、心拍数データである。任意の例示的な装置のいくつかの例示的な実装形態において、心拍数データは、不規則な間隔で並ぶ心拍数データを規則正しい間隔で並ぶグリッド上に再サンプリングすることによって収集され、心拍数データは、規則正しい間隔で並ぶグリッドからサンプリングされる。任意の例示的な装置のいくつかの例示的な実装形態において、測定された健康指標データは、PPGデータ、心拍数データ、パルス酸素濃度計データ、ECGデータ、および血圧データからなる群から選択される1つまたは複数の健康指標データである。
任意の例示的な装置のいくつかの例示的な実装形態において、モバイルデバイスは、スマートウォッチ、フィットネスバンド、コンピュータタブレット、およびラップトップコンピュータからなる群から選択される。
任意の例示的な装置のいくつかの例示的な実装形態において、モバイルデバイスは、ユーザ高忠実度センサをさらに備え、通知は、ユーザに、高忠実度測定データを取得することを要求し、処理デバイスは、高忠実度測定データの分析を受信し、ユーザの測定された健康指標データを分析でラベル付けしラベル付けされたユーザ健康指標データを生成し、ラベル付けされたユーザ健康指標データを訓練例として使用してパーソナライズされた訓練済み高忠実度機械学習モデルを訓練することをさらに行うものである。
任意の例示的な装置のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、メモリ上に記憶される。任意の例示的な装置のいくつかの例示的な実装形態において、訓練済み機械学習モデルは、リモートメモリ上に記憶され、リモートメモリは、コンピューティングデバイスから分離しており、モバイルコンピューティングデバイスはウェアラブルコンピューティングデバイスである。任意の例示的な装置のいくつかの例示的な実装形態において、パーソナライズされた訓練済み高忠実度機械学習モデルは、メモリ上に記憶される。任意の例示的な装置のいくつかの例示的な実装形態において、パーソナライズされた訓練済み高忠実度機械学習モデルは、リモートメモリ上に記憶され、リモートメモリは、コンピューティングデバイスから分離しており、モバイルコンピューティングデバイスはウェアラブルコンピューティングデバイスである。
任意の例示的な装置のいくつかの例示的な実装形態において、処理デバイスは、ユーザが心房細動を経験していることを予測し、ユーザの心房細動負担を決定することをさらに行うものである。
いくつかの例示的な実装形態は、ユーザの心臓健康状態を監視する方法を提供する。この方法は、第1の時刻においてユーザの測定された低忠実度健康指標データおよび他の要因データを受け取ることと、第1の時刻におけるユーザ健康指標データおよび他の要因データを含むデータをパーソナライズされた訓練済み高忠実度機械学習モデルに入力することであって、パーソナライズされた訓練済み高忠実度機械学習モデルは、ユーザの健康指標データが異常であるかどうかの予測を行う、入力することと、予測が異常である場合に、ユーザの健康が異常であるという通知を送信することとを含むことができる。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、パーソナライズされた訓練済み高忠実度機械学習モデルは、高忠実度測定データの分析でラベル付けされた測定された低忠実度ユーザ健康指標データ上で訓練される。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、高忠実度測定データの分析は、ユーザ特有の高忠実度測定データに基づく。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、パーソナライズされた高忠実度機械学習モデルは、確率分布を出力し、予測は、その確率分布からサンプリングされる。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、予測は、最大確率での予測および確率分布からの予測のランダムサンプリングからなる群から選択されるサンプリング技術に従ってサンプリングされる。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、平均された予測は、平均化方法を使用して、時間ステップの一期間にわたって予測を平均することによって決定され、平均された予測は、ユーザの健康指標データが正常であるかまたは異常であるかを決定するために使用される。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、平均化方法は、平均を計算すること、算術平均を計算すること、中央値を計算すること、およびモードを計算することからなる群から選択される1つまたは複数の方法を含む。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、パーソナライズされた訓練済み高忠実度機械学習モデルは、ユーザのウェアラブルデバイスのメモリ内に記憶される。任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、測定された健康指標データおよび他の要因データは、一定時間期間にわたるデータの時間セグメントである。
任意の例示的な実装形態の方法のいくつかの例示的な実装形態において、パーソナライズされた訓練済み高忠実度機械学習モデルは、リモートメモリ内に記憶され、リモートメモリは、ユーザのウェアラブルコンピューティングデバイスから離れた場所に配置される。
いくつかの例示的な実装形態において、健康監視装置は、マイクロプロセッサ、ディスプレイ、ユーザ健康指標データセンサ、および命令が記憶されるメモリを備えるモバイルコンピューティングデバイスを含むものとしてよく、この命令はマイクロプロセッサによって実行されたときに処理デバイスに、第1の時刻において測定された低忠実度健康指標データおよび他の要因データを受信し、測定された健康指標データは、ユーザ健康指標データセンサによって取得され、第1の時刻における健康指標データおよび他の要因データを含むデータを訓練済み高忠実度機械学習モデルに入力し、訓練済み高忠実度機械学習モデルは、ユーザの健康指標データが正常であるかまたは異常であるかの予測を行い、予測が異常であったことに応答して、ユーザの健康が異常であることを示す通知を少なくともユーザに送信することを行わせる。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、訓練済み高忠実度機械学習モデルは、訓練済み高忠実度生成ニューラルネットワークである。任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、訓練済み高忠実度機械学習モデルは、訓練済みリカレントニューラルネットワーク(RNN)である。任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、訓練済み高忠実度機械学習モデルは、訓練済みフィードフォワードニューラルネットワークである。任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、訓練済み高忠実度機械学習モデルはCNNである。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、訓練済み高忠実度機械学習モデルは、ユーザ特有の高忠実度測定データに基づきラベル付けされた測定されたユーザ健康指標データ上で訓練される。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、訓練済み高忠実度機械学習モデルは、高忠実度測定データに基づきラベル付けされた低忠実度健康指標データ上で訓練され、低忠実度健康指標データおよび高忠実度測定データは、被験者集団からのデータである。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、高忠実度機械学習モデルは、確率分布を出力し、予測は、その確率分布からサンプリングされる。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、予測は、最大確率での予測および確率分布からの予測のランダムサンプリングからなる群から選択されるサンプリング技術に従ってサンプリングされる。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、平均された予測は、平均化方法を使用して、時間ステップの一期間にわたって予測を平均することによって決定され、平均された予測は、ユーザの健康指標データが正常であるかまたは異常であるかを決定するために使用される。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、測定された健康指標データおよび他の要因データは、一定時間期間にわたるデータの時間セグメントである。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、平均化方法は、平均を計算すること、算術平均を計算すること、中央値を計算すること、およびモードを計算することからなる群から選択される1つまたは複数の方法を含む。
任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、パーソナライズされた訓練済み高忠実度機械学習モデルは、メモリ内に記憶される。任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、パーソナライズされた訓練済み高忠実度機械学習モデルは、リモートメモリ内に記憶され、リモートメモリは、ウェアラブルコンピューティングデバイスから離れた場所に配置される。任意の例示的な実装形態の健康監視装置のいくつかの例示的な実装形態において、モバイルデバイスは、スマートウォッチ、フィットネスバンド、コンピュータタブレット、およびラップトップコンピュータからなる群から選択される。