詳細な説明
以下の詳細な説明では、本発明の完全な理解のために、多数の具体的な詳細が記載される。しかしながら、当業者であれば、本開示の主題は、これらの具体的な詳細がなくても実施され得ることを理解するであろう。他の例では、周知の方法、手順、構成要素、および回路は、本開示の主題を不明瞭にしないために詳細には説明されていない。
別段のことわりがなければ、以下の考察から明らかなように、明細書全体を通して、「処理」、「演算」、「表現」、「比較」、「生成」、「評価」、「一致」、「更新」などの用語を利用する考察は、データを操作および/または他のデータに変換するコンピュータの動作および/またはプロセスを指し、前記データは、物理量、たとえば電子量として表現されるか、および/または物体を表す。
例えば、「提供」、「受信」、「モデリング」、「関連付け」、「修正」、「判断」、「生成」、「予測」などの用語を利用する本明細書の考察は、コンピュータのレジスタおよび/またはメモリ内の物理(例えば電子)量として表されるデータを操作し、および/または同様にコンピュータのレジスタおよび/またはメモリまたは演算および/またはプロセスを実行するための命令を格納し得る他の情報記憶媒体内の物理量として表される他のデータに変換するコンピュータ、コンピューティングプラットフォーム、コンピューティングシステム、または他の電子コンピューティングデバイスの動作および/またはプロセスを指してもよい。
本明細書で用いられる「複数(plurality)」および「ある複数(a plurality)」という用語は、例えば、「複数(multiple)」または「2つ以上」を含む。例えば、「複数の項目」は、2つ以上の項目を含む。
「一実施形態」、「ある実施形態」、「例示的実施形態」、「様々な実施形態」などへの言及は、そのように記載される実施形態が特定の特徴、構造、または特性を含み得るが、すべての実施形態が必ずしもその特定の特徴、構造、または特性を含むわけではないことを示す。さらに、「一実施形態では」という表現の繰り返しの使用は、必ずしも同じ実施形態を指すわけではないが、そうであってもよい。
本明細書で用いられる場合、別段の指定がない限り、共通のオブジェクトを記述するための序数形容詞「第1」、「第2」、「第3」などの使用は、単に、同様のオブジェクトの異なるインスタンスが参照されていることを示し、そのように説明されるオブジェクトが、時間的、空間的、ランク付け、または任意の他の態様で、所与の順序でなければならないことを暗示することを意図していない。
本明細書で用いる「コンピュータ」および/または「計算システム」という用語は、例えば、非限定的な例として、パーソナルコンピュータ、サーバ、コンピューティングシステム、通信デバイス、プロセッサまたは処理ユニット(例えば、デジタル信号プロセッサ(DSP)、マイクロコントローラ、マイクロプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)など)、および例えば、122、303など、本出願で開示される様々なハードウェア処理回路を非限定的な例として含む、非限定的な例として、処理回路を中に含む、任意の他の電子コンピューティングデバイスを含む、データ処理能力を有する任意の種類のハードウェアベースの電子デバイスを含む。
本明細書で用いられる「精神状態」および/または「感情状態」という用語は、例えば、本開示の主題に好適な人体の、精神的および/または生理学的な、任意の種類の心理状態および/または反応のいずれかを含む。
本明細書で用いられる「ストレス」という用語は、例えば、本開示の主題に好適な異なるイベントおよび/または課題および/または環境に対する任意の種類の人間の感情的および/または精神的および/または生理学的応答を含む。
本明細書で用いられる「非一時的メモリ」および「非一時的記憶媒体」という用語は、例えば、本開示の主題に好適な任意の揮発性または不揮発性コンピュータメモリを含む。
本明細書で用いられる「信号」という用語は、例えば、一時的伝播信号を除外し得るが、例えば、いくつかの例示的な実施形態に好適な任意の他の信号を含み得ることを理解されたい。
本明細書で用いられる「データ集約」という用語は、例えば、データ構造などの要約形式で情報を収集し、表現するプロセスを含む。
本明細書で用いられる「データベース(DB)」という用語は、例えば、DBサーバのメモリに格納されるデータの編成された収集を含み、DBサーバは、DBを保持し、例えば、DBのデータを収集し、格納し、管理するための専用のソフトウェアを実行するための専用のコンピュータであり得る。たとえば、DBは、スキーマ、テーブル、クエリ、レポート、ビュー、および他の要素の集合を含む1つ以上のデータ構造を格納することができる。
用語「モジュール」は、本明細書で用いる場合、例えば、任意のハードウェアコンポーネント、ソフトウェア、および/またはソフトウェアとハードウェアとの任意の組み合わせを含み、これらは、例えば、プロセッサなどのコンピューティングシステム上に組み込まれてもよい。
いくつかの例示的な実施形態では、データベースは、例えば、クラウドDB、DBサーバ、インメモリDB、アクティブDB、分散DB、埋め込みDB、エンドユーザDB、SQLDBなどを含んでもよい。
ユーザの感情状態および/または精神状態をモデリングする、本開示の主題の特定の実施形態によるシステムの態様の1つは、デジタル的に定量的な方法で、ユーザ(例えば、人間)、彼/彼女の感情状態および/または精神状態の継続的な監視を提供することである。そのようなシステムを作成することによる1つの非限定的な例示的利益は、いくつかの例では、ユーザが、信頼できる一貫した方法で経時的に彼らの感情状態および/または精神状態を監視でき、したがって、ユーザの生理的状態と精神状態との間の繋がりのよりよい理解を可能にすることである。
そのようなシステムを有することは、いくつかの例では、例えばストレスおよび/もしくは不安および/もしくはうつおよび/もしくは他の状態などの感情ならびに/または精神状態の信頼できる監視を可能にすることができる。場合によっては、これは、広範囲の解決策が、例えば、ストレス問題と関わり合い、それらを識別し、潜在的にそれらにプラスに影響を及ぼすことを可能にし得る。
いくつかの場合において、ユーザの精神状態およびユーザの感情状態のうちの少なくとも1つをモデリングすることができる、例示的なコンピュータ制御システムが、本明細書で開示される。例示的なシステムは、ユーザの精神状態および/または感情状態の予測のための1つ以上のモデルを提供するように構成され得る処理回路を含む。これらのモデルは、第1のユーザのグループから収集された非生理学的データに基づく1つ以上の第1のモデル、および/または第2のユーザのグループから収集された生理学的データに基づく1つ以上の第2のモデル、および/またはこのユーザのみから収集された生理学的データに基づく第3のモデルを含む。これらのモデルは、モデルのセットと呼ばれ得る。システムの処理回路は、テストされたユーザのデータを受信しもする。次いで、いくつかの例におけるシステムの処理回路は、モデルのセットのうちの少なくとも1つのモデルを、テストされたユーザに関連付けることを、少なくとも、モデルのセットの他のモデルのユーザ状態予測可能性のランクと比較した、関連付けられるモデルのユーザ状態予測可能性の最高ランクに基づいて、行うことができる。ユーザ状態予測可能性のランクは、いくつかの例では、テストされたユーザの精神状態および/または感情状態を示す。いくつかの例では、テストされたユーザへのモデルの関連付けは、関連付けモデルに少なくとも部分的に基づくことができる。
いくつかの例では、処理回路はさらに、別の予測モデルのユーザ状態予測可能性のランクが、以前に関連付けられた予測モデルのユーザ状態予測可能性のランクよりも高い、と判断することに応答して、予測モデルへのユーザの関連付けを、自動化された態様で動的に修正するように構成される。この判断は、いくつかのモデルにおいては、テストされたユーザの生理学的データの監視に少なくとも部分的に基づく。当該別のモデルは、関連付けられた予測モデルを構成するように設定される。
いくつかの例では、処理回路は、さらに、個人モデルを生成するように構成される。処理回路は、個人モデルを、テストされたユーザに関連付けることを、少なくとも、以前に関連付けられた予測モデルのユーザ状態予測可能性のランクと比較した、個人モデルのユーザ状態予測可能性の最高ランクに基づいて行うこともできる。場合によっては、これは、少なくとも、モデルのセットのうち、閾値を満たさないモデルのユーザ状態予測可能性のランクに基づくことができる。いくつかの例では、ユーザと以前に関連付けられたモデルのユーザ状態予測可能性ランクが65%の閾値未満であり、個人モデルがこの閾値を超えるランクを有する場合、ユーザは、以前に関連付けられたモデルと関連付けられる代わりに、個人モデルと関連付けられる。
いくつかの例では、処理回路は、さらに、関連付けられたモデルを用いて、テストされたユーザの精神状態および/または感情状態を予測するように構成される。
本開示の主題は、関連付けモデルおよび予測モデルをトレーニングおよび生成し、ならびにそれらを再トレーニングする例示的な方法を開示する。
以下の図1Aは、人間の感情状態および/または精神状態をモデリングするための例示的なシステムの概要を、コンポーネント間のフローとともに示す。図1B〜図7は、コンポーネント間のフローを含む、図1Aのコンポーネントの詳細を示す。これらの図の後、図1Aから図7を参照して開示されるコンポーネントを利用しながら、新たなユーザを登録し、そのユーザのためにデータを収集することに基づく例示的なシナリオが説明される。例示的フローチャートが図8A〜図9に示される。
まず図1Aを参照すると、本開示の主題の特定の実施形態による、人間の感情状態および/または精神状態をモデリングする方法およびシステムの一般化された例示的なアーキテクチャならびにフローチャート図が示される。データフロー199は、機能およびシステムの例示的なアーキテクチャ、ならびにそれらの間の情報のフローを示すことに留意されたい。いくつかの例では、図1Aのすべての要素は、ユーザを除き、人間の感情状態および/または精神状態をモデリングするシステム198と称され得る。
いくつかの例示的な実施形態では、システムへの入力は、システムに2つの主要な入力、つまり生理学的情報(本明細書では「データ」とも称される)182ならびに感情および/または精神状態時間マーカー(本明細書では「ラベル」とも称される)184を提供するユーザ111から来る。これらの2つの入力は、生理学的データ収集モジュール100(本明細書では生理学的データ収集システムとも称される)によって、およびラベル付けモジュール200(本明細書ではラベル付けシステムとも称される)によって、対応して処理される。システム100および300の機能のいくつかの例のさらなる詳細は、図1Cおよび図2を参照して本明細書でさらに開示される。いくつかの例では、ユーザ111はまた、メタデータ入力186を予測システム600に提供することに留意されたい。いくつかの例では、入力182および184は、以下の機能のために並列に用いられるために処理される。
いくつかの例示的な実施形態では、人間の感情状態および/または精神状態をモデリングするシステムは、モデリングモジュール900を含み得る。モデリングモジュール900は、前処理モジュール300、トレーニングモジュール400、およびクラスタリングモジュール800を含み得る。
いくつかの例示的実施形態では、モデリングモジュール900は、第1のユーザのグループから収集された非生理学的データに基づく第1のモデル、第2のユーザのグループから収集された1つ以上のラベルおよび生理学的データに基づく第2のモデル、ならびに個人ユーザの精神状態および/または感情状態を予測するように構成された個人モデルを含む第3のモデルのうちの少なくとも1つを生成するように構成されてもよく、第1のモデル、第2のモデルおよび第3のモデルの各々は、例えば以下に記載されるように、テストされたユーザの精神状態の予測を容易にするように構成されたユーザ精神状態予測可能性のランクに関連付けられる。ユーザ状態予測可能性は、本明細書において、いくつかの例では、ユーザの精神状態および/または感情状態の予測可能性を指す。また、説明の簡潔さのために、本開示の主題において、「精神状態」という用語は、時として、精神状態および/または感情状態の両方を指す用語として用いられることに留意されたい。いくつかの例示的な実施形態では、ユーザ精神状態予測可能性のランクは、時間枠にわたって収集される、テストされたユーザの生理学的データに従って判断され得る。
例えば、第1、第2、および第3のモデルのモデルについて、モデリングモジュール900は、前記収集されたデータの少なくとも一部に基づいて、テストされたユーザの精神状態を予測し、前記予測された精神状態を、前記ラベルのうちのあるラベルによって示される対応する精神状態と比較し、前記比較の1つ以上の性能メトリックに従って、モデルに関連付けられる前記ランクを判断するように構成されてもよい。
例えば、他の方法(例えば、制御された環境(実験など)からの演繹的知識)を用いてラベルを提供することも可能である。
いくつかの例示的な実施形態では、モデリングモジュール900は、テストされたユーザを、第1、第2、および第3のモデルのうち、ユーザ精神状態予測可能性の最高ランクを有するモデルに関連付けるように構成され得る。
例えば、第1のモデルおよび第2のモデルは、1つ以上のクラスタに配されることができ、1つ以上のクラスタのうちのあるクラスタは、共通の生理学的データおよび共通の非生理学的データ(完全に共通であろうと、または場合によっては部分的に共通であろうと、(例えば、それらは、共通して少なくとも1つの特性を有する))のうちの少なくとも1つを有する少なくとも2人のユーザを含む。
フロー199を実行するシステムの第1の機能は、モデルの作成および/またはトレーニングおよび/または最適化を含んでもよい。例えば、データおよびラベルは、データセットの生成のための生データ入力103、112として、次の段階(例えば前処理システム300)に供される。データセットは、モデル(事前構成されたワーカーと組み合わされる)をトレーニングするのに必要であり得る基本要素である。データセット作成およびワーカー構成に関するさらなる情報は、図3Aおよび図4を参照して以下で説明される。前処理システム300では、データおよび/またはラベルを正規化および/または操作および/または処理して、それらがトレーニングモジュールによってデータセットとして使用できるようにするために、計算が行われる。
上述したように、前処理モジュール300は、データセットを生成するように構成される。データセットの生成は、クラスタリングモジュール800によってオーケストレーションされ、クラスタリングモジュール800は、前処理モジュール300をガイドし(105)、例えば、データセットを生成するためにどのユーザのデータおよびラベルをモジュール300が用いてもよいかを示す。例えば、モジュール300は、データおよびラベルからなるデータセットを、例えば、35歳以下のユーザのクラスタのみから生成するように指示されてもよい。オーケストレーション機能に関するさらなる情報を以下に示す。多くの種類のデータセットが、異なる種類のクラスタ(例えば、非生理学的(メタデータ)クラスタ、生理学的クラスタ、および/または任意の他のクラスタ)に基づいて作成され得る。いくつかの場合において非生理学的クラスタに基づくことを含む、関連付けモデルのトレーニングは、クラスタデータセットにおいて、本明細書では第2の生理学的データとも称される、ユーザの生理学的データを利用し得る。システム300の機能のいくつかの例のさらなる詳細は、図3Aおよび図3Bを参照して本明細書でさらに開示される。
クラスタの種類は、どの種類のモデルが後でトレーニングされるかを決定することになる。クラスタリングモジュール800は、複数のクラスタを生成し、各クラスタに対して、対応するデータセットの作成を行う。したがって、データセットは、上記で説明したように、どの種類のモデルが生成されるかを決定し、したがって、多くの種類のモデルを生成するようモジュール400の能力を指示する。
複数種類のモデルを有することは、システムが、例えば以下に記載するように、どのモデルが個人ユーザごとに最良の性能を有するか(どのモデルが、概して、および/または各ユーザについて個々に、最適なランクを有するか)を常に評価しているので、感情および/または精神状態(例えばストレス、不安、うつなど)の非常に正確な予測を可能にする。
データセットが準備されると、トレーニングモジュール400に送信され(113)、トレーニングプロセスのための1つの入力として供される。データセット入力は、いくつかの実施形態では、事前構成されたタスクに基づいて、事前構成されたワーカー(トレーニングモジュール400において独立して生成され得る)を伴ってもよい。他の実施形態では、データセット入力は、クラスタリングモジュール800から送信されたタスク106に基づいて生成されてもよい。両方とも、例えば、1つ以上のモデルをトレーニングし、それに応じて各モデルのランクを評価するために、例えばニューラルネットワークトレーニング方法を実行する1つ以上のグラフィック処理ユニット(GPU)サーバによって用いられる。ランクを用いて、どのモデルがシステムのユーザごとに個別に最適な予測性能を有するかを判断することができる。各ユーザについてのランク付けは、例えば、どのモデルが各ユーザについて関連付けられることになるかをカスタマイズすることに関して利益を有し(1つのモデルは、それがユーザBで実行するよりも、ユーザAでより良好に実行することができる等)、したがって、より個人化された予測および正解率を可能にする。いくつかの例では、この、より高い正解率は、ある利点を有し、たとえば、事故の防止、病気の防止を容易にし、および一般的な健康を改善し得る。
例えば、ニューラルネットワーク技術に基づいて、1つ以上のモデルがトレーニングされる。トレーニング関数は、データセットのあるパーセンテージ(通常、データセットの70%〜80%)を利用し、データセットの他の未使用パーセンテージ(通常、データセットの20%〜30%)に基づいて、その予測性能の評価を行ってもよい。このデータセットの未使用パーセンテージは、いくつかの例では、生理学的データのトレーニングされていない部分と呼ばれることがある。評価は、新たなトレーニングされたモデルが正解率の改善に寄与しているかどうか、したがって、それがモデルデータベース500に送信される(114)かどうかを判断するための基礎として供される。さらに、評価は、各トレーニングされたモデルにランク(これは、時間性能、メモリ利用率なども含み得る。)を与えるための基礎として供される。システムが提供するランク付け方法は、本開示の主題の特定の実施形態に従って以下でさらに説明される。システム400の機能のいくつかの例のさらなる詳細は、図4を参照して本明細書でさらに開示される。
モデルデータベース500、および特に予測モデルフローおよび/または漸進的な正解率改善は、たとえば図5Aおよび図5Bを参照して以下で説明するように、1つ以上の実施形態の要素であり得る。
フロー199を実行するシステムの第2の機能は、例えば以下で説明するように、人間の感情および/または精神状態を監視および/または予測することを含んでもよい。
生理学的データ(ラベルなし)は、予測モジュール600に送信されてもよく(104A、104B)、予測モジュール600では、生理学的データは、予測モデルがユーザの感情および/または精神状態を監視および/または予測するために、監視ユニットによって入力として用いられ得る。
システムのこの部分は、ユーザに価値のあり得る出力を提供する。それは、ユーザの感情および/または精神状態の予測である。このモジュールは、例えば、入力ラベルを用いることなく、ユーザの生理学的データに基づいてユーザの精神状態の予測を提供してもよい。予測の結果は、例えば以下に記載するように、集約されたビジネスの見通しを生成するために分析ユニット700に送信される(116)。
ユーザの観点から、生理学的データは、例えば、感知ユニット、および特定のフィードバック入力(例えば、ラベル)を用いて提供され、したがって、ユーザの感情および/または精神状態(例えば、ユーザのストレス状態)の継続的かつ正確な監視および/または予測を得る。
フロー199を実行するシステムの第3の機能は、例えば、図7を参照して以下に説明されるように、ユーザの類似性によってユーザをクラスタリングすることを含み得る。
生理学的データは、例えば、ラベルなしで、クラスタリングモジュール800に送信され得て(102)、クラスタリングモジュール800において、例えば、図7を参照して以下に説明されるように、ユーザの生理学的パターンにおける類似性に基づいて、ユーザのグループ(例えば、クラスタ)を作成するために用いられ得る。
上述したように、第1の機能出力は、異なる種類のモデルをトレーニングするために用いられてもよい。モデル(例えばすべてのモデル)は、モデルデータベース500に格納される。このデータベースは、例えば、図5を参照して以下に説明されるように、異なる種類の複数のモデルを格納する。
システムは、ユーザの非生理学的データ(例えば:性別、年齢、国籍など)に基づいてクラスタリングモジュール800においてクラスタリングされた当該ユーザからなる特定のグループ(クラスタ)からのデータセットに基づいてトレーニングされる第1の種類のモデルを含み得る。これは基本的な種類のモデルであり、その利点は、ユーザがシステムに登録されると(および、例えば、何らかの個人詳細を提供すると)、システムは、そのユーザをモデルに即座におよび/またはほぼ即座に関連付けることができることである。本明細書で開示される主題に従って、第1の種類のモデルは、本明細書ではメタデータモデルと称される。いくつかの例では、そのようなメタデータモデルの作成は、たとえば、図7を参照して開示されるように、新たに登録されたユーザのメタデータを予測システム600からクラスタリングシステム800に送信することを含む(109)。
システムは、ユーザの生理学的データの類似性に基づいてクラスタリングされた当該ユーザからなる特定のグループ(クラスタ)からのデータセットに基づいてトレーニングされる第2の種類のモデルを含み得る。これは、より進歩した種類のモデルであり、その利点は、ユーザがシステムを使用し、(例えば、1日または1週間の監視中に)生理学的情報を提供すると、それは、ユーザの生理学的パターンにより良く適合し得るモデルと関連付けられることができることである。いくつかの例では、これは、システムが、より良好な予測可能性(予測性能)を提供することを可能にする。本明細書で開示される主題に従って、第2の種類のモデルは、本明細書では生理学的モデルと称される。
システムは、1人の個人の生理学的データおよびラベル(データセット)からのデータセットに基づいてトレーニングされる第3の種類のモデルを含み得る。これは高度な種類のモデルである。1つの利点は、ユーザがシステムをある期間使用し、実質的な量の個人的フィードバック(例えばラベル)を提供すると、ユーザを個人モデルに関連付けることができることである。これは、カスタマイズされた、および適応型のモデルであり、それは特定のユーザに適合し、したがって、個人化されたおよび/またはより高い予測可能性(予測性能)を提供し得る。本明細書で開示される主題に従って、第3の種類のモデルは、本明細書では、個人モデルと称され得る。
いくつかの例示的な実施形態では、他のモデルをトレーニングすることもできる。1つの非限定的な例は、システム内に存在するすべてのユーザのデータおよびラベルのデータセットに基づいてトレーニングされたモデル(「グローバルモデル」)である。そのようなグローバルモデルの利点は、システムに登録しなかったユーザについて、および/またはシステムに登録したがメタデータおよび/または生理学的情報を提供しなかったユーザについて、予測を提供し得ることである。モデルデータベースに格納されるモデルについては、さらに、例えば、図5を参照して開示する。
第1、第2、第3、および/または任意の他の種類のモデルのトレーニングは、ある時間枠ごとに、たとえば1日に1回、実行されてもよい。各所与のトレーニングについて、モデルを評価し、ランク付けし、各個人の現在関連付けられているモデルの現在のランクと比較してもよい。新たにトレーニングおよび/または最適化されたモデルが、特定のユーザに現在関連付けられているモデルよりも、そのユーザに対して、より高いランク、例えば、より良い予測性能を有する場合、システムは、より高いランクのモデルを各ユーザに個々に関連付けることになる。モデルのトレーニングについては、さらに、例えば、図4を参照して開示される。
いくつかの例示的な実施形態では、人間の感情および/または精神状態をデジタル化するシステムは、経時的に複数の種類のモデル(および各種類のモデル内の多くのタイプのモデル)をトレーニングすることができる。複数のモデルの1つの目的は、異なるモデルを異なるユーザに動的に関連付けることを可能にし、その結果、例えば、以下に記載するように、各ユーザについて個々に経時的に漸進的な正解率の改善がもたらされることである。
予測モジュール600は、ユーザごとに、関連付けられた予測モデルを常に評価している。これは、ユーザをモデルデータベースから、より正確なモデルに促すことを常に確認している。例えば、それは、あるユーザがメタデータモデル(例えば、xのランクを有する)から生理学的モデル(例えば、2xのランクを有する)に促され得るかどうか確認することができる。用語「より正確な種類のモデル」は、例えば、より高いランクを受け取ったモデルを含むと解釈されるべきであり、したがって、予測可能性に関して、各ユーザについて個別に、より良好に機能することが期待される。ランクに基づくモデルプロモーション処理の詳細については後述する。
いったん、より良い予測モデル(より高いランクを有する予測モデル)がモデルデータベース500内において、あるユーザについて見つかると、予測モジュールは、それをその特定のユーザに関連付け、したがって、予測関数およびその性能の常なる改善および/または個人化を可能にする。モデルは、ユーザがモデルを用いる回数が多いほど、より多くのデータが収集され、より正確で個人化されたモデルがユーザについてトレーニングされ得るので、各ユーザについて個々に、より良くかつより正確な予測出力を提供する。システム600の機能のいくつかの例のさらなる詳細は、図6を参照して本明細書でさらに開示される。
現在の既存の解決策と比較すると、提案されるシステムは、いくつかの例では、(モデルのプール、例えばモデルデータベースからの)モデルを各ユーザに個々に関連付けること(「ユーザ指向システム」)を可能にし、モデルの性能ができるだけ多くのユーザに一致するようにモデルの性能を改善すること(「モデル指向システム」)に焦点を当てないという点で、大きなパラダイムシフトを提供する。いくつかの例では、これは、感情状態および/または精神状態に対する個人の生理学的反応間に大きな分散および多様性があり得る実生活に準拠し、したがって、「モデル指向型」の既存の解決策の性能および能力に挑戦する。現在の解決策は、1種類のモデル(例えば、上述のグローバルモデル)を完成させることに焦点を当てるだけであり、および/またはそれに主に焦点を当てる傾向がある。対照的に、いくつかの例では、このシステムは、よりロバストな異なるヒューリスティックを有し、可能な限り多くの種類のモデルおよびタイプのモデルをトレーニングし、それらをランク付けし、次いでランク付けおよび性能に基づいて、各ユーザを最も適合するモデルと関連付ける。いくつかの例では、本開示のシステムおよび方法は、例えば、モデルのランクを判断し、このランクをユーザと現在関連付けられているモデルのランクと比較し、ユーザをより高いランクのモデルと関連付けることによって、ユーザのモデルへの関連付けを自動的に動的に変化させる技術的解決法を提供する。いくつかの例では、この技術的解決法は、ユーザをそのユーザにとってより最適なモデルに関連付けることを容易にすることができる。これは、次いで、いくつかの例では、ある時点における生理学的データに基づいて、その時点におけるユーザ感情的精神状態のより良い予測を可能にすることができる。
いくつかの例では、本開示の主題は、少なくともいくつかの他の技法と比較して、少なくともある例示的な利点を提供することができる。本開示の主題のいくつかの例では、1人の個人の生理学的データに基づく場合において、生理学的測定値に基づく感情/精神状態の正確な出力を受信することは、問題のあるイベントおよびパターンを早期に検出することを可能にすることができ、というのも、この方法は、様々な生理学的パラメータにおいて、個人レベルで、変化に敏感であるからである。いくつかの例では、これは比較的早期の検出を提供するのに重要である。対照的に、例えば、カメラに基づく感情感知の場合、顔の表情がある時点までに、問題のある感情状態の検出が遅すぎる可能性がある。さらに、いくつかの精神状態は、ユーザが認識していないレベル、またはユーザが特定の感情的/精神的経験を経ていることを必ずしも知らないレベルにある可能性がある。少なくともこの意味で、生理学的ベースの測定および分析は、より早期の、およびより正確な解決策を提供することができる。
また、生理学的データに基づく、場合によっては1人の個人の生理学的データに基づく、感情的精神状態の予測において、幾つかの例における分析は、文化的および地理的差異に対して断定的ではない。これは、場合によっては有利であり、この技術を大市場に、大域的レベルで、ならびに国内で異なる文化的/民族的混合および地域的バリエーションを有する様々な国において、展開することを可能にする。そのような市場では、各ユーザは互いに異なり得るが、正確な予測の性能がすべてのユーザに提供されることになる。
いくつかの例示的な実施形態では、人間の感情状態および/または精神状態をモデリングするシステムのクラスタリングシステム800は、少なくとも2つの特徴を含むことができる。
第1の特徴または機能は、予測モデルのトレーニングのためのデータセット作成をオーケストレーションすることであり得、第2の特徴は、関連付けモデルのトレーニングのためのデータセット作成をオーケストレーションすることであり得る。予測モデルは、ユーザの感情および/または精神状態を予測するために用いられ得る。関連付けモデルは、ユーザをクラスタと関連付けるのに用いられてもよく、したがって、ユーザを、関連付けられたクラスタの最高実行予測モデルと関連付けるのに用いられてもよい。
例えば、上述したように、システムは、どのデータセットを前処理モジュール300がトレーニングのために生成するべきかに関して前処理モジュール300をオーケストレーションするために用いられる異なる基準(例えば非生理学的(メタデータ)、生理学的、個人的など)に基づく、異なるユーザのクラスタの作成を含むことができる。予測モデルのトレーニング、およびそのようなトレーニングのためのデータセットの作成をオーケストレーションするとき、クラスタリングシステム800は、モデルデータベース500から受信される(108)1つ以上の関連付けモデルを入力として用いることができる。
いくつかの例では、クラスタリングモジュール800は、データセットの生成をオーケストレーションし、関連付けモデルをトレーニングするための対応するタスクをオーケストレーションする、第2の特徴または機能を有する。関連付けモデルは、以下の2つ以上の目的、つまり、(a)個人を異なる種類のクラスタ(クラスタは、例えば、前処理モジュールにおいて、データセットの生成をオーケストレーションするために用いられる)に関連付けるため、および(b)人間の感情状態および/または精神状態をモデリングする既存の予測モデルをシステムの新たなユーザおよび既に存在するユーザに関連付けるために用いることができる。
上記のシステムは、図1Aを参照して説明した構造および/またはアーキテクチャに拘束されない。
図1Bを参照すると、本開示の主題の特定の実施形態による、人間の感情状態および/または精神状態をモデリングする方法およびシステムのブロック図が示される。
いくつかの例示的な実施形態では、ブロック図は、テストされたユーザから非生理学的データおよび生理学的データを受信するための入力ブロック192と、例えば、図1Aで上述したように、複数のモデルを生成するためのプロセッサ194と、例えば、後述するように、モデルを格納するためのストレージ196とを含む。
図1Cを参照すると、本開示の主題の特定の実施形態による、生理学的データ収集モジュールの非限定的な一般化されたフローチャートの例を示す。
いくつかの例示的な実施形態では、本方法は、本明細書では「データ」とも称される個人の異なる生理学的パラメータを測定してもよい。これらのパラメータの非限定的な例は、体温、心拍数、電気的皮膚抵抗および/または他の生理学的パラメータ、および/または電気信号(光子、電圧など)であり得る。パラメータは変更される。データは、センサを介してユーザ111から直接収集されてもよく、ならびに/またはセンサから収集された生データおよび/もしくは信号を用いることによって、および/もしくは任意の他の収集方法によって計算されてもよい。
いくつかの例では、パラメータの収集は、上記で収集されたパラメータを無線周波数(RF)(例えば、WiFi、ブルートゥース(登録商標)、および/または任意の他の有線/無線伝送方法)によってブリッジ120に送信する感知ユニット110を用いて実行される。ブリッジ120はコンピューティングデバイス(例えばルータおよび/またはゲートウェイおよび/またはコンピュータおよび/または他のデバイス)であり、それは、着信データを、例えばTCPプロトコル(例えばHTTPおよび/またはMQTTおよび/または他のプロトコル)を用いて、感知ユニット110から(例えばクラウド環境において)ブローカーコンポーネント130に送信する。感知ユニット110は、データを、例えば、TCPプロトコル(例えばHTTPおよび/またはMQTTおよび/または他のプロトコル)を用いて、ブリッジ130を介さずに、ブローカー130に直接送信してもよい(132)。さらに、感知ユニットは、たとえば、図6を参照して以下で説明するように、データを予測モジュール600の監視ユニット630に直接および/または間接的に送信することができ(104A)、予測モジュール600に対する入力として機能する。
ブローカー130は、感知ユニット110通信プロトコルからのデータを復号し、クラウド(図示せず)において一般に用いられる異なる通信プロトコルに符号化する役割を担う。通信プロトコルは同じままであり、復号/符号化プロセスを経ない可能性がある。
この計算を実行した後、ブローカー130は、いくつかの例ではソフトウェアであり得る公開/加入(Pub/Sub)モジュール140にデータを送信する。Pub/Sub140は、サーバ150の負荷のバランスをとるために、データ処理ユニット150へのデータ取り込みレートを絞り込み、および/または制御する。そこから、データは、基本的なデータ操作(例えば、データスキームの変更、無効なメッセージの除去など)および/または順序付けのために、データ処理ユニット150、サーバのクラスタに送信される。処理を実行した後、データは生理学的データデータベース(DB)160に送信される。
生理学的データデータベースは、例えば、以下で説明するように、予測システム600のモデル関連付けユニット610にデータを送信し(104B)、クラスタリングシステム800のクラスタリングユニット810にデータを送信し(102)、分析ユニット700にデータを送信することもできる(116)。
いくつかの例示的な実施形態では、分析ユニット700は、システムのユーザ(例えば、組織のエグゼクティブマネージャおよび/またはスーパーバイザなど)のためのビジネスインテリジェンスメトリック(BI)を計算することができる。ビジネスインテリジェンスは、例えば、事業から戦略にわたる広範囲のビジネス判断をサポートするために企業によって用いられ得る。基本的な動作判断は、作業方法論および事業プロトコル適合を含む。戦略的なビジネス判断は、提供されたビジネスインテリジェンスに従って、優先順位、ならびに目標および方向を最も広いレベルで設定することを含む。
生理学的データ収集システム100は、いくつかの例では、コンピュータであり得る。それは、非限定的な例として、処理回路122および生理学的データデータベース160を備え得る。いくつかの例では、処理回路122は、プロセッサ124およびメモリ123を備える。図の例では、ユニット110、120、130、140、150はすべてプロセッサ124上で動作する。他の例では、それらのユニットの一部またはすべては、別個のハードウェアユニット、クラウドベースのコンポーネントなどであり得る。
図1Dを参照すると、本開示の主題の特定の実施形態による、格納されたデータの非限定的な例を示す。図は、サンプルフィールドおよびサンプル値を示す。このDBに格納されるデータの例は、コンポーネント160a「生理学的データ」(例えば、デバイスid、ユーザid、組織id、生理学的データサンプル配列、およびより多くのまたは他のメタデータを含む)および160b(生理学的データサンプル情報)に見出すことができる。
いくつかの例では、ユーザIDは、特定のユーザ/個人に関連付けられた番号または文字列であり得、組織IDは、例えば、ユーザの雇用主/企業に対応するIDであり得る。「サンプル」フィールドは、データ構造160bにおける生理学的データサンプルの配列とすることができる。一例では、生理学的データレコード160aは、1秒間のデータを含み、フィールド「サンプル」を含む。この例では、このフィールドは、複数の「サンプル」レコード160bの配列またはバッチである。例えば、サンプルは10回/秒記録されてもよく、したがって、各レコード160aにおけるサンプル配列は10個のサンプルレコード160bを含む。
いくつかの非限定的な例では、サンプルデータ160bは、他のパラメータの中でも特に、SP02、心拍数(HR)、血液速度(BVP)、心拍数変動(HRV)、皮膚温度または他の温度、血流1〜4、3つの座標(例えばx、y、z)における加速度計測定値(acc1、acc2、acc3)、血液灌流、および脈拍関連パラメータを含み得る。いくつかの例では、パラメータ「動き値」は、加速度計測定値から計算することができる。図1Dにおける数字は、単に例示のためのものである。
上記のシステムは、図1B、1C、および1Dを参照して説明した構造および/またはアーキテクチャに拘束されない。
図2を参照すると、本発明で開示する主題の特定の実施形態によるラベル付けモジュール200の非限定的な一般化されたフローチャート例が示される。
ラベル付けモジュールまたはシステム200は、いくつかの例では、コンピュータとすることができる。それは、非限定的な例として、処理回路212およびラベルデータデータベース220を含み得る。処理回路212は、いくつかの例では、プロセッサ214およびメモリ216を含み得る。プロセッサ214は、ラベル付けユニット210を含み得る。いくつかの例では、ユニット210はソフトウェアモジュールまたはコンポーネントである。
いくつかの例示的な実施形態では、ラベル付けモジュールまたはシステム200は、ある時間枠内の時間マーク、たとえば時点におけるある精神状態および/または感情状態を示す、時間におけるマーカー(時間マーカー)であるラベルを生成する。精神状態は、例えば、ストレス、リラックス、および/もしくは他の精神ならびに/または感情状態であり得る。例えば(220a)、ラベルデータベース220内のラベルサンプルレコードは、必要に応じて、ユーザid、開始および終了タイムスタンプ、精神状態の値(例えば、ストレス、うつ、リラックスなど)、および必要に応じて潜在的にさらなる情報を含む。220aにおける数字は、単に例示のためのものである。いくつかの例では、ラベルは、ユーザの精神状態および/または感情状態を示す。いくつかの例では、ラベルは、ユーザの生理学的データの少なくとも一部に対応する。
いくつかの例では、ラベルは、少なくとも2つの方法、つまり、(1)演繹的知識、(2)ユーザから受信されたフィードバック、に基づいてラベル付けユニット210において生成される。
いくつかの例では、第1のラベル付け方法205は、ユーザ(例えば個人)の既知の演繹的な感情および/または精神状態とのセッション中において生理学的データを収集することに基づく。例えば、精神状態および/または感情状態は、求められる場合には、一般的な学術的および臨床的方法に基づいて誘導されてもよい。1つの非限定的な例では、ユーザは、ある確率で、特定の感情状態(軽い悲哀、深い悲哀、幸福感、ストレス、など)を誘発するよう各々が既知である、一連の書かれた節を読み取るように指示される。別の非限定的な例では、ユーザは、ある確率で特定の感情状態または精神状態(ストレス、欲求不満、満足感、自信など)を誘発すると各々が既知である一連のタスクを実行するように指示される。セッション中、時間マーカーがクラウドまたは他のストレージに保存され、それは、特定の時間枠について、ユーザ、たとえば個人の演繹的な精神および/または感情状態そのものを示す。
ラベル付けの第2の方法203は、ユーザから受信されたフィードバック184に基づく。いくつかの例では、システムは、テストされたユーザ(例えば参加者)に自分の現在の感情状態を知らせる通知を送信する。システムは、時には、感情状態が変わったと予測するため、通知を送信し、時には、通知をランダムに送信する。例えば、通知をランダムに送信することは、ユーザのフィードバック信頼性を確認するために用いられてもよい。ユーザは自分のフィードバックを入力する。モジュールは、フィードバック時間をフィードバック自体とともにラベルデータベースに保存する。フィードバック時間は、変化の対象であるが、設定された時間からデータがその時間の前X分の数および後Y分の数でラベル付けされるという概念の対象であるタイムウィンドウに関連付けられ得る。
プロセスの後で、データベース220に格納されたラベルは、例えば以下に記載するように、モデルのトレーニングを可能にすることができる。
上記のモジュールは、図2を参照して説明した構造および/またはアーキテクチャに拘束されない。
図3Aを参照すると、本開示の主題の特定の実施形態による、前処理モジュール300の非限定的な一般化されたフローチャート例が示される。前処理モジュールまたはシステム300は、いくつかの例では、コンピュータとすることができる。それは、非限定的な例として、処理回路303を含んでもよい。処理回路303は、いくつかの例では、プロセッサ307およびメモリ309を含み得る。モジュール300は、データセットデータベース360を含んでもよい。図3Aは、いくつかの例ではモジュール300のプロセッサ307によって実行され得るステップ310,320,330,340および350のフローチャートをプロセッサ307内において示す。
いくつかの例では、(システム100の)生理学的データデータベース160および(システム200の)ラベルデータベース220の出力103、112は、前処理モジュール300のための入力として供される。前処理モジュール300は、生理学的データをその元の構造から、モデルに準拠し、かつそのトレーニングのための実行可能な入力(本明細書ではデータセットとも称される)として供されることができる構造に変換するように設計される。この機能を実行するために、いくつかの例では、以下の動作が、モジュールによって、たとえば、1日に1回の頻度で実行される。動作の順序は変更される。
モジュール300は、データベース160内のオブジェクトストレージから生理学的データをフェッチし(103)、データベース160においては、各行が、生理学的データを、そのデータが属しているユーザIDとともに、およびいくつかの例ではタイムスタンプなどの他の情報とともに含む(ブロック310)。多くの行があり、各行は単一のサンプルを含み得る。例えば、(例えば、160aおよび160bに記載されるような)データは、複数のファイルに分割されてもよく、各ファイルは、例えば、1時間の空間にわたって収集されたすべてのデータを格納する。明確にするために、上記プロセスは、簡略化された、拘束力のない例であり、したがって、異なる方法および/またはプロセスで実行されてもよい。
並行して、モジュール300は、データベース220からラベルをフェッチし(112)、データベース220においては、各行は、ユーザID、ラベルの開始時間および終了時間、ならびにラベル自体(例えば、精神状態Aまたは精神状態B)などのパラメータを含む(ブロック320)。多くの行があり、各行は単一のサンプルからなる。明確にするために、上記プロセスは、簡略化された、拘束力のない例であり、したがって、異なる方法および/またはプロセスで実行されてもよい。
いくつかの例では、この点から、モジュール300は、Join by User ID(ユーザIDによる結合)と呼ばれるアクションを実行し(ブロック330)、それはブロック310および320の出力を使用し、ユーザのユーザIDに従ってそれらを組合せおよび/または結合する。出力は、例えば、3つ以上の列(例えば、ユーザID、データ、ラベル、および他のデータ)を伴うテーブルを含む。
データを組合せおよび/または結合した後、モジュール300は、「スライディングタイムウィンドウ技術」として知られるアクションを実行する(ブロック340)。いくつかの例では、スライディングウィンドウ340は、「現在から時間的に後ろに伸びる期間」という定義によって記述され得る。例えば、2分間のスライディングウィンドウは、過去2分間に発生した任意のイベントを含む。イベントが(この例ではそれらが2分以上前に発生したため)スライディングタイムウィンドウから外れると、それらのイベントは(Red Hatのドキュメンテーションより)この特定のスライディングウィンドウを使用するルールにもはや一致しなくなる。したがって、いくつかの非限定的な例では、各データ項目が2分ウィンドウに対応する多数の多種多様なデータ項目が生成され得る。明確にするために、上記プロセスは、簡略化された、拘束力のない例であり、したがって、異なる方法および/またはプロセスで実行されてもよい。
ブロック340の後のいくつかの例では、モジュール300は、各ユーザについて、たとえば、いくつかの例では、ウィンドウのアレイを、それらウィンドウのラベルに加えて含むデータベースに、ファイルを記憶する(ブロック350)。ウィンドウは、時間によってソートされる生の生理学的データのアレイを含む。ファイルは、データセットデータベース360に格納される。
このDBは、生理学的データセット361およびクラスタデータセット362を含む。いくつかの例では、生理学的データ182は、ユーザに対して記録されるが、そのデータに対するラベル184は捕捉されないことに留意されたい。そのような例では、生理学的データセット361は、生理学的データのみを含み得る。
このDB360に格納されるデータセットの例は、図3Bのコンポーネント361aおよび361bに見出すことができる。
前処理モジュール300において実行され得るデータセット生成プロセスは、モジュールのいくつかの実施形態で説明されるように、いくつかの例では、クラスタリングモジュール800によってオーケストレーションされる。クラスタリングモジュール800は、クラスタデータセットを生成するために、どのユーザのデータおよびラベルを用いるかに関して前処理モジュール300をガイドしてもよい(105)。例えば、モジュール800は、データセットデータベース360に命令して、例えば、35歳以下のユーザのクラスタのみから、データおよびラベルからなるデータセットを生成してもよい(105)。他の例では、システム800は、データベース360を利用しながらこのデータセットを生成するようにモジュール300のプロセッサ307に命令する。オーケストレーション機能性に関するさらなる情報は、例えば、図7を参照して以下で提供される。多くの種類のデータセットが、異なる種類のクラスタ(例えば、非生理学的(メタデータ)クラスタ、生理学的クラスタ、および/または任意の他のクラスタ)に基づいて作成され得る。
図3Bを参照すると、本開示の主題の特定の実施形態による、データセットデータベースの非限定的な一般化された例示的な概略図が示される。
データセットデータベース360は、生理学的データセット361およびクラスタデータセット362を含むことができる。クラスタデータセット362は、クラスタリングシステム800のガイダンス105によって作成することができる。このDB361に格納できるデータセットの例は、コンポーネント361aおよび361bに見出すことができる。いくつかの例では、ユーザIDのフィールドおよび組織IDのフィールドは、図1Dのフィールドと同様である。いくつかの例では、361aの「バッチ」フィールドは、生理学的データの複数の個々のバッチ361bのアレイであり、いくつかの例ではラベルを伴う。いくつかの例では、361bの「ラベル」フィールドは、プロセッサ307によって受信および処理されるラベルフィールド112に対応する。いくつかの例では、361bの「サンプル」フィールドは、生理学的データサンプル160bのアレイを含む、生理学的データレコード160aのサンプルフィールドに対応する。DB362のデータセットは、いくつかの例では、構造において361aおよび361bと同様のレコードを有し得ることに留意されたい。
上記のモジュールは、図3Aおよび図3Bを参照して説明した構造および/またはアーキテクチャに拘束されない。
図4を参照すると、本開示の主題のある実施形態に従って構成された、一般化されたニューラルネットワークトレーニング環境を含むトレーニングモジュール400の非限定的な一般化されたフローチャート例が示される。トレーニングモジュールまたはシステム400は、いくつかの例では、ジョブマネージャサーバ400aおよびグラフィック処理ユニット(GPU)サーバ400bを含み得る。いくつかの例では、システム400はコンピュータであり得る。コンピュータは、非限定的な例として、処理回路403を含み得る。処理回路403は、いくつかの例では、プロセッサ407およびメモリ409を含み得る。図4の例では、2つのサーバ400aおよび400bがプロセッサ407上で動作する。いくつかの他の例では、サーバ400aおよび400bの各々は、別個のコンピュータであり得る(または各々が多種多様なコンピュータであり得る)。トレーニングシステム400は、タスクデータベース410も含んでもよい。図4は、マネージャサーバ400a内において、いくつかの例ではサーバ400aによって実行され得るステップ420,430,および440のフローチャートを示す。図4は、GPUサーバ400b内において、いくつかの例ではサーバ400bによって実行され得るフローチャート、ステップ450も示す。
(前処理システム300の)データセットデータベース360の出力113、およびタスクデータベース410の出力413は、トレーニングモジュール400のための入力として供され得る。いくつかの例では、モデルの生成は、ニューラルネットワーク方法に従ってモデルをトレーニングすることを含む。いくつかの例では、トレーニングモジュール400は、たとえばニューラルネットワークモデルをトレーニングするために、上記コンポーネントを入力として用いるように設計される。いくつかの例では、モデルは、たとえば361および361bに示されるように、ラベルに関連付けられる生理学的データセットを用いてのみトレーニングされ得ることに留意されたい。
例えば、ニューラルネットワークモデルをトレーニングするために、事前構成されたサーバ(例えば、ワーカー)が生成されてもよい。この生成プロセスは、いくつかの例では標準サーバのクラスタであるジョブマネージャサーバ400aにおいて行われてもよい。図の例では、1つのサーバが示されている。いくつかの例では、タスクデータベース410において、各行または他のレコードは、このセッションを実行するためのすべての関係のあるパラメータを含むタスク、たとえばトレーニングセッションを表す。そのようなパラメータの例は、ニューラルネットワークの層の数、ウィンドウサイズ、各ニューロンの活性化関数、各所与の層に対するニューロンの数などを含み得る。クラスタリングシステム800は、トレーニングモジュール400のサーバ400aに送信される、関係のあるタスク106を生成することができ、そのタスクは、例えば、データベース410に格納される。別の例では、タスク106は、データベース410に送信されてそこに格納され、その後、そのタスクは、ジョブマネージャサーバ400aに提供される。さらに他の例では、システム400は、データベース410を利用せずにタスク106を実行する。
いくつかの例では、トレーニングセッションは、例えば以下で説明するように、後で、GPUサーバ400bによって実行されるブロック450で実行される。たとえば、データベース410内のタスクは、データセットデータベース360におけるデータセットのID、モデルDB500における出力モデルへの経路、およびセッションを(性能最適化のために)複数のサーバにどのように分割するかを示すジョブ(マイクロタスク)などを含み得る。
事前構成されたサーバ(例えばワーカー)を生成するために、まず、タスクがジョブマネージャサーバ400aによって開始され、ジョブマネージャサーバ400aは、タスクデータベース410からそのタスクを引き出し、それを実行するために必要なコンピューティングリソースを推定する(ブロック420)。次に、ジョブマネージャサーバ400aは、ワーカー等のサーバを生成する(ステップ430)。ワーカーは、ブロック450においてトレーニングセッションを実行する役割を果たす。次いで、ジョブ(タスクに含まれるマイクロタスク)が、生成されたサーバ(例えばワーカー)に割り当てられるか、または送信される(ブロック440)。
ジョブマネージャサーバ400aでの処理が完了した後、事前構成されたサーバ(例えば、ワーカー)は、データセットデータベース360からの1つ以上のデータセットの送信113とともに、GPUサーバ400bに送信される。いくつかの例では、これらは、トレーニングセッションにおいてモデルをトレーニングするために用いられる(ブロック450)。ブロック450では、モデルを並行してトレーニングすることができる。
トレーニングセッション450のプロセスは、例えば、(公開知識に基づいて、既知の技法を用いて)ニューラルネットワークモデルをトレーニングすることとすることができる。このプロセスのための出力はトレーニングされたモデルであり、それは次いでモデルデータベース500に格納される(114)。
トレーニングされたモデルをモデルデータベース500に格納する前に、いくつかの例では、ブロック450は、各モデルの評価プロセスを実行する。いくつかの例では、評価プロセスは、以下の2つの機能を果たす。
第1の評価機能は、トレーニングされたモデルが事前定義された客観的閾値をパスしたかどうかを評価することであってもよい(たとえば、95%の正確度率、1時間未満のトレーニング時間など)。次いで、各モデルは、このモデルがモデルデータベース内の既存のモデルよりも優れているかどうかを評価するための基準として機能する客観的ランクを受信する。モデルがモデルデータベース500内の既存のモデルより高いランクを受け取った場合、それは格納される(114)。いくつかの例では、モデルが十分に高いランクを受信しない場合、それは記憶されない。このランクは、新たなトレーニングされたモデルが予測可能性に寄与しているかどうか、したがって、それがモデルデータベース500に送信されるかどうかを判断するための根拠となる。いくつかの例では、新たなトレーニングされたモデルは、そのランクとともにモデルデータベース500に格納される。
例えば、トレーニング関数は、あるデータセットのあるパーセンテージ(いくつかの例ではデータセットの70%〜80%)を利用し、データセットの他の未使用パーセンテージ(トレーニングされていない部分)(いくつかの例ではデータセットの20%〜30%)に基づいてその予測性能の評価を行うことができる。他のパラメータ(例えば、メモリ利用率、コンピューティングリソースおよび/または他のパラメータ)とともに予測性能を用いて、各トレーニングされたモデルの客観的ランクを判断する。他の例では、機械学習方法を用いてトレーニングされたモデルは、例えば公知の技法を用いて、検証プロセスおよびテストプロセスの両方を受ける。そのような場合、データセットのうちトレーニングされていない部分の一部を検証に使用し、トレーニングされていない部分の残りをテストに用いることができる。
第2の評価機能は、予測モデルのクラスタに関連付けられる各所与のユーザに対する予測モデルの相対ランクを評価することであり得る。モデルの相対ランクは、所与のモデルのクラスタの異なるユーザ間で異なり得る。モデルの相対ランクは、新たなトレーニングされたモデルが各個人ユーザの感情および/または精神状態の予測可能性に寄与しているかどうかの判断を行うための基礎として機能する。新たにトレーニングされたモデルが、あるユーザの予測可能性に寄与する場合、その新たにトレーニングされたモデルは、より高い予測性能(本明細書において図6を参照してさらに説明する)をその特定のユーザに提供するために、そのユーザに関連付けられる。
モデルのランク付けは、例えば、(1)予測性能メトリック(例えば、正解率、適合率、および再現率)の正規化された(例えば、0〜1の値)組み合わせ、(2)少なくとも1つのコンピューティング性能メトリック(例えば、メモリ利用率、予測時間)の正規化された組み合わせ、(3)少なくとも1つの予測性能メトリックと少なくとも1つのコンピューティング性能メトリックとの正規化された組み合わせ、(4)少なくとも1つの予測性能メトリックおよび/または少なくとも1つのコンピューティング性能メトリックのいずれかの正規化されない組合せ、(5)別のランク付け方法、に従って算出することができる。
ここで、モデルのランクを判断し、ランクを比較する第1の非限定的な例を提示する。例えば、生理学的モデルP100は、データセットD100の70%を用いてトレーニングされる。生理学的モデルP200は、データセットD100の70%を用いてトレーニングされる。各データセットのトレーニングされていない部分、データの30%は、感情的精神状態に関連付けられた10,000個のラベルを含む。ここで、P100は、データセットD100のうちトレーニングされていない30%上で実行され、P200は、データセットD100のうちトレーニングされていない30%上で実行される。各モデルについて、ユーザの感情状態の10,000個の予測が生成される。各モデルについて、10,000個の予測を10,000個のラベルと比較して、予測された感情(生理学的データに基づく)が実際のラベル付けされた感情と一致するかどうかを見る。
実施例の結果は以下のとおりである:P100は、D100のトレーニングされていない部分において10,000個のラベルのうち6,000を正確に予測し、したがって、60%のランクを得る。P200は、D100のトレーニングされていない部分において、10,000個のラベルのうち8,000個を正確に予測し、したがって、80%のランクを得る。P200は、より高いランクを有するので、より良い適合として選択される。
第2の非限定的な例において、評価段階においてラベルをマッチングすることは、「一致/不一致」の基準のみに基づくものではなく、マッチングのグラデーションを可能にする。この第2の例では、実際のラベルが「中程度に幸福」であるとき、モデルによる「非常に幸福」の予測は、その個別の一致について75%のスコアを与える。この例では、上記のモデルP100、P200およびデータセットD100について、P100は、77%の改善されたランクを受け、P200は、87%の改善されたランクを受ける。この例では、P200は依然としてより良好な適合の予測モデルである。
第3の非限定的な例では、予測およびラベル付けされた感情の正確なマッチングは、ランクの70%を占める一方、性能(速度)は、30%を占める。より低い正解率のP100は、データのトレーニングされていない部分を5分で評価し、100%の性能グレードを受け取る。より高い正解率のP200は、P100よりもゆっくりと、6分でデータのトレーニングされていない部分を評価し、したがって83%のより低い性能グレードを受け取る。P100は、70%*60%+30%*100%=72%の全体的なグレードを受ける。P200は、70%*80%+30%*83%=80.9%の全体的なグレードを受ける。この例では、P200は依然としてより高くランク付けされた予測モデルである。そのようなグレード付けの別の例においては、性能グレードは、CPUおよびメモリの相対的使用においても因子となり得る。
図4を参照して開示される方法は、いくつかの例では、関連付けモデルおよび予測モデルの両方のトレーニングのために用いられ得ることに留意されたい。これは、ランクの使用を含み得る。これらの方法は、関連付けモデルおよび予測モデルの両方を再トレーニングするためにも用いられ得る。いくつかの例では、これは、定期的に、ならびに/またはユーザの新たな生理学的データおよびラベルの到着に応答して行われる。
いくつかの例では、システム400は、統計的に有意なモデリングおよび評価を可能にするのに十分な量の対応するラベルを有さないデータベース360内の生理学的データに基づいて予測モデルをトレーニングすることはできない。一例では、個人モデルを生成するために、10,000個のラベルが必要である。別の例では、100人のユーザのクラスタに基づいて生理学的データ関連付けまたは予測モデルを生成するために、50,000個のラベルが必要である。いくつかの例では、システム400は、十分な割合または量の対応するラベルを有さないデータベース360内の生理学的データに基づいて関連付けモデルをトレーニングすることはできない。対応するラベルを有さない生理学的データは、いくつかの例では、予測ユニット600の監視ユニット630によって、および/または分析ユニット700によって用いられ得ることに留意されたい。いくつかの例では、対応するラベルを有さない生理学的データは、予測ユニット600のモデル関連付けユニット610によっても用いられ得る。いくつかの例では、対応するラベルを有さない生理学的データは、モデル関連付けユニット610によって用いられ、関連付けの正解率を改善することができる。
上記のモジュールは、図4を参照して説明した構造および/またはアーキテクチャに拘束されない。
図5Aを参照すると、本開示の主題の特定の実施形態による、モデルデータベース500の非限定的な一般化された例示的な概略図が示される。
モデルデータベース500において、システムは、例えば、トレーニングシステム400によって生成される2つのクラスのモデルとして、(a)ユーザをクラスタに関連付けるために用いられるモデル(例えば、関連付けモデル540)、ならびに(b)精神状態および/または感情状態の予測に用いられる予測モデル(例えば、メタデータ(非生理学的)モデル510、生理学的モデル520、個人モデル530、および/または任意の他のモデル550)を記憶する。
いくつかの例示的な実施形態では、関連付けモデル540は、(例えば、データセットデータベース360から受信される)クラスタデータセットおよびクラスタリングシステム800において生成される(例えば、データベース410に記憶される)関係のあるタスクに基づいて、例えば、図7を参照してここで説明されるように作成および/またはトレーニングされる。
これらの関連付けモデルは、少なくとも(i)個人をクラスタに関連付けるため、(i)予測モデルのトレーニングのため、および(iii)既存の予測モデルを新たなユーザおよび既に存在するユーザに関連付けるために用いることができる。
(i)関連付けモデル540は、個人を少なくとも2種類のクラスタ、つまり例えば以下に記載するように、(a)メタデータ予測モデルのトレーニングのためにユーザ(例えば個人)を選択するために用いられる非生理学的(例えばメタデータ)クラスタ、および(b)生理学的予測モデルのトレーニングのためにユーザ(例えば個人)を選択するために用いられる生理学的クラスタに関連付けるために、システム800のクラスタリングユニット810によって用いられることができる(108)。
より具体的には、ユーザ(例えば個人)をクラスタに関連付けるために、少なくとも2つのタイプの関連付けモデルとして、(1)(ユーザ(例えば個人)を非生理的(たとえばメタデータ)クラスタに関連付けるための)非生理学的(例えばメタデータ)関連付けモデル、(2)(ユーザ(例えば個人)を生理学的データクラスタに関連付けるための)生理学的関連付けモデル、および/または(3)任意の他の関連付けモデル、がこのコンポーネントに格納される。
(ii)予測モデルのトレーニングは、例えば、図7を参照して開示される。
(iii)さらに、予測モデルをユーザと関連付けるために、関連付けモデルを用いることができる。いくつかの例では、そのような関連付けプロセスは、ユーザのシステムへの最初のエントリから、ユーザのシステムの使用に沿って連続的に、複数回実行され得る。この関連付けプロセスは、ユーザに関する各モデルのランク付けに基づいて、DB500から関連付けモデル情報を受信する(107b)モジュール600のモデル関連付けユニット610によって行われてもよい。
モデルの予測クラスに関して、これらのモデルは、特定のユーザの精神状態および/または感情状態の予測に用いられる。いくつかの例では、予測自体は、予測モジュール600(図6)の監視ユニット630によって実行され、これは、図6を参照して本明細書でさらに説明される。いくつかの例では、各予測モデル間の差異は、そのモデルをトレーニングするために一緒に関連付けられたユーザのクラスタである。
いくつかの例示的な実施形態では、第1の種類の予測モデル、非生理学的(例えば、メタデータ)モデル510は、例えば年齢、性別、国籍など、複数の個人の個人的(非生理学的)データにおける類似性に従ってクラスタに関連付けられたそれら複数の個人の生理学的データからなるデータセットを用いてシステム400によってトレーニングされたモデルを含み得る。いくつかの例では、そのようなモデルをトレーニングするために用いられるクラスタデータセットは、クラスタデータセットデータベース362に格納されることに留意されたい。クラスタへのユーザ(例えば個人)の関連付けは、例えば、図6のモデル関連付けユニット610を参照して以下で説明するように、関連付けモデル540によって行うことができる。例えば、この種のモデルは、1つ以上が、個人からなる各クラスタに対する、複数のモデルを含むことができる。
例えば、各種類のモデルにおいて、この種類のモデルの複数のタイプがあるかもしれない(例えば、メタデータモデル種には、40歳以上の男性用のモデルのタイプ、日本女性用のモデルのタイプなどがあるかもしれない)。
いくつかの例示的な実施形態では、第2の種類の予測モデル、生理学的モデル520は、複数のユーザの生理学的データ(例えば、心拍数、皮膚伝導度、体温など)における類似性(例えば、パターン)に従ってクラスタに関連付けられたそれら複数のユーザの生理学的データからなるデータセットを用いてシステム400によってトレーニングされたモデルを含んでもよい。いくつかの例では、そのようなモデルをトレーニングするために用いられるクラスタデータセットは、クラスタデータセットデータベース362に格納されることに留意されたい。生理学的データに基づくクラスタの1つの非限定的な例として、システムは、全員が、皮膚温度が午前中に上昇し、脈拍が日中においてほぼある値であることを特徴とする、ある数のユーザをクラスタリングすることができる。クラスタへのユーザの関連付けは、例えば、図6のモデル関連付けユニット610を参照して以下で説明するように、関連付けモデル540によって行うことができる。例えば、この種のモデルは、1つ以上が、個人からなる各クラスタに対する、複数のモデルを含むことができる。
例えば、各種類のモデルにおいて、この種類のモデルの複数のタイプがあるかもしれない(例えば、生理学的モデル種には、特定の心拍数パターンを有する人々、皮膚温度において特定のパターンを有する人々などのためのモデルのタイプがあるかもしれない)。他の非限定的な例では、関連付けモデル540内に1つのメタデータ関連付けモデルおよび1つの生理学的データ関連付けモデルがある。
いくつかの例示的な実施形態では、第3の種類の予測モデル、ユーザ(例えば個人)モデル530は、1人の個人の生理学的データ(例えば心拍数、皮膚伝導度、体温など)からなるデータセットを用いてシステム400によってトレーニングされたモデルを含み得る。いくつかの例では、そのようなモデルをトレーニングするために用いられるユーザデータセットは、生理学的データセットデータベース361に格納されることに留意されたい。いくつかの例において、この種のモデルは、各個人に1つずつ、複数のモデルを含むことができる。
また、いくつかの例では、(個人モデルであろうと別のタイプであろうと)新たな予測モデルが生成されると、1つ以上の関連付けモデル540が再トレーニングされ、その結果、それらは、新たに生成された予測モデルも考慮することができることに留意されたい。
また、個人モデル530がトレーニングされ、作成されると、いくつかの例では、そのモデルをトレーニングするためにデータが用いられた1人の個人以外のユーザに関連付けられ得ることにも留意されたい。例えば、カレンの生理学的データに基づいて以前にトレーニングされた個人モデル1250が、ジェーンの生理学的データに最良適合するモデルであることが後で見出された場合、ジェーンは、モデル1250に関連付けられ得る。いくつかの例では、次いで、個人モデル1250は、例えばジェーンおよびカレンの両方の生理学的データにおける類似性に対応する新たなクラスタに関連付けられる非個人生理学的モデル(参照符号520)となるように再定義または再分類され得る。換言すれば、個人モデルは、いくつかの例では、他のモデルのシードまたはベースとして役立つことができる。
例えば、各種類のモデルにおいて、この種類のモデルの複数のタイプがあるかもしれない(例えば、個人モデル種には、ユーザa、ユーザb、ユーザcなどに対するモデルの種類があるかもしれない)。
いくつかの例示的な実施形態では、他の予測モデル550は、たとえば、(a)すべての個人をクラスタに関連付けることなく、すべての個人に基づいてトレーニングされるモデル、(b)メタデータと生理学的データとの混合に基づいてトレーニングされるモデル、(c)システムに存在するすべてのユーザのデータおよびラベルのデータセットに基づいてトレーニングされるモデル(「グローバルモデル」)、ならびに/または(d)任意の他のモデル、を含み得る。
例えば、予測モデルの一部またはすべては、例えば、図6を参照して本明細書に開示される方法を用いて、ユーザの精神状態および/または感情状態を予測するために監視ユニット630によって用いられる(107a)。
図5Bを参照すると、本開示の主題の特定の実施形態による、モデル関連付けの非限定的な一般化されたフローチャート例が示される。いくつかの例では、そのようなフローは、図6を参照して本明細書でさらに開示されるように、予測システム600のモデル関連付けユニット610によって実行される。いくつかの例示的な実施形態では、予測モデルフロー500aは、特定のユーザに関連付けられるモデル間の1つの可能な遷移を記述することができる。この方法の基本的な仮定は、異なる時間枠において、特定のユーザに最良適合する異なるモデルが存在し得ることである。ユーザのための最良適合モデルは、時間とともに変化し得る。したがって、システムは、複数種類の予測モデルを生成し得る。システムは、モデルの正解率を向上させ、次いで、(例えば、上述のモデルランク付けに基づいて)各特定のユーザに最も正確なモデルを関連付けることを試みる。正解率の推移および向上は、ユーザ毎のデータ量の増加、ユーザ数の増加、および/または一般にデータ量の増加に左右され得る。いくつかの例では、60%以上の適合が、ユーザを特定のモデルに関連付けるための基準であり得る。いくつかの例では、70%以上の適合が、ユーザを特定のモデルに関連付けるための基準であり得る。
明確にするために、簡略化された、拘束力のないプロセスの例が続き、ユーザに即座またはほぼ即座に関連付けられ得るあるモデルは、例えば、特定のクラスタ(例えば、40歳を超える男性)に関連付けられる既存のメタデータ(非生理学的)モデルである。いくつかの例では、このモデルはデータベース510内に存在する。この種のモデルをそれと関連付けるためにユーザからの必要なデータは、ユーザの個人情報である。生理学的データがあるユーザのために収集されたある期間(例えば、1週間の監視)の後、生理学的データにおける類似性に基づいて特定のクラスタに関連付けられた既存の生理学的モデルを、ここで、このユーザに関連付けてもよい(514)。いくつかの例では、このモデルはデータベース520内に存在する。通常、ユーザの、生理学的モデルと関連付けられることへの移行514の後には、改善されたモデル予測可能性および/または予測性能512(例えば、モデルのランク付けによって判断される)が続く。次いで、ユーザの追加の生理学的データが、ユーザの生理学的データに一致するラベルとともに収集された、より長い期間(例えば、2週間)の後、個人モデルをこの特定のユーザに関連付けてもよい(516)。いくつかの例では、このモデルはデータベース530内に存在する。
いくつかの例では、ユーザは、例えば520において、ラベルを伴わないユーザの生理学的データのみに基づいて、非生理学的モデルに関連付けられることができることに留意されたい。一方、いくつかの例では、たとえば530において、ユーザが生理学的モデルに関連付けられるために、ユーザの生理学的データは、十分な割合または数のラベルを伴わなければならない。1つの非限定的な例では、関連付けは、少なくとも1000個のラベルを利用するべきである。
いくつかの例示的な実施形態では、最初に非生理学的(例えばメタデータ)モデルに関連付けられたユーザが、個人ユーザモデルに直接関連付けられてもよい(518)。このシナリオは、ユーザがクラスタに関連付けられたデータベース520内のどの既存の生理学的モデルにも適合しない場合に可能であり、したがって、このユーザは、一意の個人モデルに直接関連付けられてもよい。
上記のモジュールは、図5Aおよび図5Bを参照して説明した構造および/またはアーキテクチャに拘束されない。
図6を参照すると、本開示の主題の特定の実施形態による、予測モジュールの非限定的な一般化されたフローチャート例が示される。予測モジュールまたはシステム600は、いくつかの例では、コンピュータであり得る。それは、非限定的な例として、処理回路(図示せず)を含んでもよい。処理回路は、いくつかの例では、プロセッサおよびメモリ(両方とも図示せず)を含んでもよい。モジュール600は、ユーザデータベース640およびユーザ対モデルインデックスデータベース620を含んでもよい。システム600内のプロセッサは、いくつかの例では、少なくともモデル関連付けユニット610および監視ユニット630を実行することができる。他の例では、ユニットの一部またはすべては、別個のハードウェアユニット、クラウドベースのコンポーネントなどであり得る。
いくつかの例示的な実施形態では、新たなまたは既に存在するユーザが(ある個人情報を入力することによって、および/または感知ユニット110を用いることによって、)モジュールに関わると、それは個人情報(非生理学的、メタデータ)をユーザデータベース640に提供し(186)、生理学的データを生理学的データ収集モジュール100に提供する(182)。ユーザデータベース640は、いくつかの例では、ユーザの個人情報の一部またはすべてからなる。いくつかの例では、データベース640は、本明細書では、非生理学的データが収集され、そこに記憶されるので、非生理学的データ収集モジュールとも称され得る。他の例では、非生理学的データモジュールは、例えば、端末またはインターネットを介したユーザ入力から、または雇用者の人事システムから、メタデータを受信するシステム198である。いくつかの例において、データベース640は、この情報を(例えば、図7を参照して本明細書でさらに開示されるように)クラスタリングモジュール800に送信し(109)、それを例えば以下に説明されるように、モデル関連付けユニット610に送信しもする(613)。
いくつかの例では、モデル関連付けユニット610の機能は、予測モデルを任意の特定のユーザに関連付けることである。この予測モデルは、非生理学的(例えばメタデータ)モデル、生理学的モデル、個人モデル、および/または任意の他のモデルとすることができる。この機能を実行するために、モデル関連付けユニット610は、1つ以上の関連付けモデル107bを受信するようにモデルデータベース500に要求する。ユニット610は、システム100から特定のユーザの生理学的データを取得してもよい(104b)。ユニット610は、この関連付けモデルを用いて、どの予測モデルがユーザに最も正確に適合するかを評価および判断することができる。いくつかの例では、関連付けモデルは、利用可能な予測モデルに関する情報をその中に含む。いくつかの例では、評価は、得られたユーザ生理学的データ(104b)にも基づいて実行される。いくつかの例では、特定のユーザのための最良の予測モデルは、評価プロセスによる出力である。1つの非限定的な例では、関連付けモデルA3は、いくつかの生理学的モデルP500(ランク80)、P510(ランク78)、P520(ランク90)、P530(ランク82)に対して、ビルというユーザの生理学的データを実行することができる。それは、モデルのいくつか、P500およびPS20が、ビルのデータとの良好な適合を提供する、と判断する。90は80より高いランクであるので、PS20がビルに関連付けられるように選択され、したがって、ビルの現在関連付けられるモデルは90のランクを有する。
いくつかの例では、ユーザと特定のモデルとの間の最も正確な適合は、その特定のモデルが、精神状態および/または感情状態を予測する観点から、そのユーザのための最良かつ最も正確な結果を提供することを意味する。
例えば、それは、DB540における関連付けモデルを利用して、ユーザがクラスタに関連付けられていることであってもよい。このユーザは、ユニット610によって以前に関連付けられていてもよい。モデル関連付けユニット610は、後の時点において、現在関連付けられている予測モデルのランクをモデルデータベース500内の他の利用可能な予測モデルのランクと比較してもよい(610a)。いくつかの例では、これは、再び、関連付けモデルを利用することによって実行されてもよい。したがって、モデル関連付けユニット610が、一般に、および/またはこのユーザのために、上述のランクに基づいて、より良い実行予測モデルを発見した場合、モデル関連付けユニット610は、そのより高くランク付けされた予測モデルをそのユーザに関連付ける。明確にするために、このようなプロセスは、例えば、各ユーザに別々に実行されてもよい。いくつかの例では、これは、各ユーザに対して最適な予測可能性を提供するカスタマイズおよび/または個人化されたモデル対ユーザ一致を可能または容易にする。いくつかの例では、ユーザを予測モデルに関連付けるために、ユーザの生理学的データの(たとえば)70%を用いてトレーニングし、生理学的データのトレーニングされていない部分を用いて関連付けを評価する必要はない。
いくつかの例示的な実施形態では、モデル関連付けユニット610は、テストされたユーザの精神状態の予測を容易にするように構成された、精神状態予測可能性のランクを、予測モデルに添付するように構成され得る。1つの非限定的な例では、ユーザは、予測モデルP420に、80のランクで関連付けられる。後日、ユニット610は、関連付けモデルおよび新たな生理学的データ104bを用いて新たな評価を実施し、その結果は、88のランクを有する予測モデルP440である。
モデル関連付けユニット610は、モデルデータベース500から、複数の関連付けモデル(例えば、非生理学的(例えば、メタデータ)関連付けモデル、生理学的関連付けモデル、および/または任意の他の関連付けモデル)を受信して(107b)、広範な評価プロセスを実行することが可能である。モデル関連付けユニット610は、評価プロセスのために単一の関連付けモデルのみを受信することも可能である(107b)。関連付けモデルを受信した後、いくつかの例では、ユニット610は、次いで、ユーザデータベース640からの非生理学的(たとえばメタデータ)613および/または生理学的データデータベース160からの生理学的データ104bに基づいて、特定のユーザについての最良適合予測モデルを評価する。
モデル関連付けを実行するために、ユニットがデータベース500からモデルを取得するプロセス(107b)は、いくつかの例では、ユーザごとに1回だけ生じなくてもよい。いくつかの例では、どの予測モデルが特定のユーザに対して最も正確に適合するかを評価および判断する進行中のプロセス610aがある。進行中のプロセス610aは、場合によっては、特定の所定のおよび/または手動で入力されたヒューリスティックに基づいて、定期的に、例えば、毎日1回、またはインターフェース104bを介してユーザについて生理学的データを1ヶ月収集した後に、行うことができる。
いくつかの例では、モデル関連付けユニット610によって実行される処理の結果は、特定のユーザに添付される予測モデルである。いくつかの例では、この出力は送信され(617)、ユーザ対モデルインデックスデータベース620に格納される。例えば、ユーザ対モデルインデックスデータベース620に格納される情報は、ユーザid、ユーザに関連付けられるモデル参照(例えば、モデルデータベース500における予測モデルへの経路)などを含み得る。いくつかの例では、データベース620内のユーザレコードは、関連付けられた予測モデルについて判断されたランクも含む。
いくつかの例では、予測システム600によって実行される、特定のユーザに対する次の動作は、監視ユニット630において実行されるユーザの精神状態および/または感情状態の予測である。予測アクションを実行するために、監視ユニット630は、ユーザ対モデルインデックスデータベース620からユーザ対モデル情報を取得し(615)、それを用いて、(例えば、上述のモデル参照を用いて)モデルデータベース500に、関連付けられた予測モデル107aを要求する。ユーザの生理学的データは、生理学的データ収集モジュール100から監視ユニット630に送信されてもよい(104a)。この生理学的データは、場合によっては、ユーザの精神状態および/または感情状態を予測するためにユニット630において予測モデルによって用いられる。例えば、関係のある予測モデルが生理学的データに適用されることになる。明確にするために、ラベルを使用せずに監視アクションを実行することが可能である。ユニット630の使用の例示的な状況は、ビルというユーザが既に自分に関連付けられた予測モデルを有し、生理学的センサを装着しているという状況である。新たな生理学的データは、これらのセンサからシステム100に到着し(182)、ユニット640に渡される(104a)。ユニット630は、現時点で、ビルがストレスを受けた感情状態にある可能性があると予測する。
ある精神状態および/または感情状態が予測されると、監視ユニット630は、何らかの種類のフィードバック、警告および/または通知をモジュール700に、および/またはユーザ111に、および/または他のソフトウェアおよび/またはハードウェアモジュールに提供することが可能である。警告/フィードバック/通知を受信するモジュールは、感情/精神状態をモデル化するシステム内にあってもよく、またはその外部にあってもよい。
上記のモジュールは、図6を参照して説明される構造および/またはアーキテクチャに拘束されない。
図7を参照すると、本開示の主題の特定の実施形態によるクラスタリングモジュール800の非限定的な一般化されたフローチャート例が示される。
いくつかの例示的な実施形態では、クラスタリングシステムまたはモジュール800は、クラスタリングユニット810を含み得て、2つの主な機能として、(a)関連付けモデルのトレーニングのためのデータセットをデータセットデータベース360に作成することをオーケストレーションすること、および(b)予測モデルをトレーニングするためのデータセットを生成するためにデータセットデータベース360をオーケストレーションすること、を有する。クラスタリングユニット810は、いくつかの例では、コンピュータであり得る。それは、非限定的な例として、処理回路803を含み得る。処理回路803は、いくつかの例では、プロセッサ807およびメモリ809を含み得る。
いくつかの例示的な実施形態では、クラスタリングモジュール800は、関連付けモデルをトレーニングするためのデータセットを作成することができる。クラスタリングユニット810に対する1つの入力は、例えば、図4を参照して開示された方法に従ってメタデータ関連付けモデルをトレーニングする目的で、非生理的(例えばメタデータ)クラスタデータセット362を作成するために用いられるユーザデータベース640からのデータ109、およびタスクデータベース410内の一致するタスクである。1つの非限定的な例として、クラスタリングユニット810は、あるユーザがメタデータパラメータの同様の組み合わせ(例えば、40歳を超える女性のフランス人の銀行員)を有することを識別してもよく、ユニット810は、彼女らに対応するクラスタデータセット362を生成し、そのクラスタデータセットに基づいてメタデータ関連付けモデルをトレーニングするように命令してもよい(105)。例えば、命令105は、前処理システム300のプロセッサ307またはデータセットデータベース360に送信されてもよい。
第2の入力は、図4の生理学的関連付けモデルをトレーニングする目的で、いくつかの例では生理学的データクラスタデータセット362を作成するために用いられる生理学的データデータベース160からの生理学的データ102、および一致するタスクである。1つの非限定的な例として、クラスタリングユニット810は、特定のユーザが時間および曜日の関数として血圧の上昇の同様のパターンを有することを識別してもよく、ユニット810は、それらユーザに対応するクラスタデータセット362を生成し、そのクラスタデータセットに基づいて生理学的関連付けモデルをトレーニングするように指示してもよい。
いくつかの例では、このプロセスの出力は、関連付けモデルをトレーニングするようトレーニングモジュール400のための入力として対応して供される、一致するタスクを伴うクラスタデータセット362である。関連付けモデルのトレーニングは、本明細書では、クラスタデータセットにおいて第2の生理学的データとも称されるユーザの生理学的データを利用してもよい。
いくつかの例示的な実施形態では、クラスタリングモジュール800は、予測モデル(例えば510、520、530、550)のトレーニングのためにデータセット作成をオーケストレーションすることができる。1つの非限定的な例は、予測モデルをトレーニングするためにデータベース360において異なるデータセットを作成する方法に関して、図3Aを参照して開示されるオーケストレーションである。(データセットはトレーニングモジュール400の1つの入力である。)この機能のために、クラスタリングユニット810は、予測モデルがそのトレーニングにおいて基づいてもよいクラスタ(例えば、非生理学的(例えば、メタデータ)クラスタ、生理学的クラスタ、および/または別のクラスタ)に入れるべき関係のあるユーザ(例えば個人)を選択するために、モデルデータベース500から関連付けモデル540を用いることができる(108)。
明確にするために、簡略化された、拘束力のないプロセスの例が続き、30歳未満のアメリカ人女性用の非生理学的(例えばメタデータ)予測モデルを作成するために、前処理システム300(図3A)において、システム内に存在し、特定のメタデータ基準と一致する個人の生理学的データに基づいて、データセットを作成することができる。この場合、クラスタリングユニット810は、評価を実行するために、モデルデータベース500の関連付けモデルデータベース540から非生理学的(例えば、メタデータ)関連モデルをアドレスし、ユニット810は、すべてのユーザ、例えば、個人から、上記の基準に一致するユーザのみを選択する。次いで、クラスタリングユニット810は、前処理モジュール300(図3A)に命令して、上記基準に一致するこれらの選択されたユーザ(例えば個人)のデータおよびラベルに基づいて、クラスタデータセット362を作成する。次いで、このクラスタデータセット362は、非生理学的(例えばメタデータ)予測モデルのシステム400におけるトレーニングプロセスのための入力として用いられ得る。
上記のシナリオのすべてにおいて、クラスタリングシステム800は、例えばデータベース410に格納される、関係のあるタスク106を生成することができる。タスク生成106のさらなる例が、図4を参照して開示される。
いくつかの例では、データベース160内の生理学的データのフォーマットは、データセットデータベース360の生理学的データセット361内の生理学的データよりも、クラスタシステム800による使用に適していることに留意されたい。
上記のモジュールは、図7を参照して説明される構造および/またはアーキテクチャに拘束されない。
本開示の主題のいくつかの例をさらに説明するために、ここで、特定のユーザに対するモデリングシステムの機能の例が開示される。ビルは、システムに(例えば、彼の雇用主によって)登録され、彼の個人情報(例えば、年齢、性別、仕事、住所)が、ユーザデータベース640に入力される。データベース640は、この個人情報をモデル関連付けユニット610に送信することができ(613)、または代替的に、ユニット610は、例えば、ユーザについてデータベース640に定期的に問い合わせることができる。それは、ユニット610は、予測モデルがビルに関連付けられていないことを、ユーザ対モデルデータベース620に見ることであってもよい。ユニット610は、生理学的データ収集システム100から、ビルを予測モデルと関連付けるのに役立つよう用いられるかもしれない、ビルに関連付けられる利用可能である生理学的データがまだないことを理解する。したがって、モデル関連付けユニット610は、関連付けモデル内に存在するメタデータ関連付けモデルのみをモデルデータベース500に問い合わせる。ユニット610は、それに対して、メタデータ関連付けモデルA1を受信する(107b)。ユニット610は、モデルA1を用いて予測モデルを評価し、モデルM40を最良適合として選択する。次いで、ユニット610は、データベース620にデータのレコードを送信し(617)、それは、システムにおけるビルのID番号および非生理学的モデル510におけるメタデータ予測モデルM40までの経路を含む。M40のランクは、データベース620に記憶されてもよい。
ビルは、(例えば、心拍数、脈拍、皮膚温度を測定する)1つ以上の身体センサの装着を開始する。彼の生理学的データは生理学的データ収集システム100に送信され(186)、生理学的データ収集システム100はそれを生理学的データDB160に格納し、それをモデル関連付けユニット610に送信し(104b)ならびに監視ユニット630に送信し(104a)、およびクラスタリングユニット810に送信する(102)。1週間後、ユニット610は、ビルのモデル関連付けの周期的評価610aを行う。それは、ユーザデータベース640から個人情報を取得するが(613)、この時、生理学的データ104bも考慮する。それは、次いで、両方とも関連付けモデル540内に存在する、メタデータ関連付けモデルおよび生理学的関連付けモデルについて、モデルデータベース500に問い合わせる。ユニット610は、それに対して、メタデータ関連付けモデルA1および生理学的関連付けモデルA3を受信する(107b)。ユニット610は、2つの関連付けモデルを用いて様々な予測モデルを評価し、モデルP60が以前に関連付けられたモデルM40(例えばランク85)よりも高いランク付け(例えばランク90)を有することを発見する。ユニット630は、ビルへの関連付けに対する最良適合としてモデルP60を選択する。次いで、ユニット610は、データベース620にデータのレコードを送信し、それは、システムにおけるビルのID番号および非生理学的モデル510における生理学的予測モデルP60までの経路を含む。ここで、ビルは、図5Bを参照して開示されるように、異なるモデルに関連付けられる。
上述したように、ビルの生理学的データは、感知ユニット100から監視ユニット630にも送信された(104a)。この例では、説明の簡略化のために、ユニット630によるこの生理学的データの評価は、予測モデルP60が既にビルに関連付けられた後に実行されるものとする。ユニット630は、ユーザ対モデルデータベース620にビルのIDを問い合わせ、彼の関連付けられたモデルがP60であるという応答を受信する(615)(または、クエリモデルデータベース500においてP60への経路を受信する)。ユニット630は、モデルP60を受信する(107a)ようデータベース500に問い合わせる。ユニット630は、新たに受信された生理学的データ(104a)に対して予測モデルP60を実行する。結果として生じる予測は、ビルがややうつ状態であるということであり、警告が、例えば、ビルの雇用主のシステムに送信される。
2週間後、ビルは実験に参加し、センサが彼の生理学的データを記録し、その一方で、図2を参照して本明細書に開示されるように、ラベル付けが、例えば方法203または205によって実施される。ここでも、このシナリオの第1の例では、ビルの新たに取得された生理学的データがモデル関連付けユニット610に転送される(182、104b)。生理学的データは、前処理システム300にも送信される(103)。ラベルはラベルデータベース220に格納され、前処理システム300に送信される(112)。いくつかの例では、システム300は、これらの2つの入力103、112を処理し、データセットDI380を作成し、それはデータセットデータベース360に格納される。個人モデル1280が、本明細書でさらに例示されるように、このデータセットDI380に基づいて作成される。場合によっては、個人モデルを作成する能力は、データセットDI380における十分な数のラベルの利用可能性に依存することに留意されたい。
再び、モデル関連付けユニット610は、生理学的データ104bを取得し、次いで、メタデータおよび生理学的関連付けモデルについてモデルデータベース500に問い合わせる。この時、様々な予測モデルを評価すると、ユニット610は、個人モデル1280が、評価された様々な非個人モデル(例えば85、90)よりも良いランク(例えば94)を有することを見出す。次いで、ユニット610は、データベース620にデータのレコードを送信し、それは、システムにおけるビルのID番号および個人モデル530における個人予測モデル1280までの経路を含む。ここで、ビルは、図5Bを参照して開示されるように、別のモデルに再び関連付けられる。
このシナリオの第2の例では、個人モデル1280は、生理学的データ103および対応するラベル112が利用可能になるとすぐに作成されるというわけではない。この第2の例では、モデル関連付けユニット610は、受信された関連付けモデル107bを利用して様々な予測モデルを評価する。ユニット610が、非個人予測モデル(メタデータモデルまたは生理学的モデル)のいずれも、ビルの生理学的データ(新しく取得されたデータを含む)に関して十分に良好に適合しない、すなわち、それらのうちのいずれも、少なくとも閾値(例えば、65%)を超えるランクを有していない場合には、その場合にのみ(この第2の例では)個人モデル1280が生成される。この例では、ユニット810は、ビルのモデルの適合が十分に良好ではないことを検出し、本明細書でさらに例示されるように、データセットDI380に基づいてビルの個人モデル1280の生成をオーケストレーションする。一例では、ユニット810は、ユーザ対モデルインデックスデータベース620と接続しており(図示せず)、関連付けられた予測モデルが比較的低いランクのユーザを識別する。
ここでモデルトレーニングおよび生成のいくつかの例を見ると、システムにおける登録で、ビルの個人情報(メタデータ)は、いくつかの例では、ユーザデータベース640からクラスタリングシステム800のクラスタリングユニット810にも送信される(109)。いくつかの例では、クラスタリングユニット810は、ビルのメタデータおよび場合によっては追加の新たな登録者に基づいて、新たなメタデータクラスタを作成することを判断する。ユニット810は、関連付けモデル540からのメタデータ関連付けモデル108を用いて、メタデータクラスタのメンバとなるユーザを選択する。クラスタデータセットは、ユニット810によって選択された特定のユーザのデータを有することになる。次いで、ユニット810は、データセットデータベース360が、362において、新たなメタデータクラスタについて、1つ以上の新たなメタデータクラスタデータセットを作成または生成することを要求してもよい(105)。次いで、ユニット810は、タスクに基づいて、および新たに作成されたメタデータクラスタデータセット113に基づいて、トレーニングシステム400が1つ以上の新たなメタデータ予測モデルをトレーニングするために、タスクデータベース410に格納されるべき1つ以上のタスクを送信してもよい(106)。次いで、新たなトレーニングされたメタデータ予測モデルは、システム400によって、モデルデータベース500内の非生理学的モデル510に格納される。
他の例では、クラスタリングユニット810は、場合によっては、ビルおよび他の新たな登録者のメタデータを用いて、新たなモデルをトレーニングするのではなく、非生理学的モデル510に存在する既存のメタデータ予測モデル(例えば、ビルの性別、年齢および/または仕事などに対応する既存のメタデータモデル)を再トレーニングすることを選択することができる。
ビルの生理学的データは、例えば身体センサを用いて監視されてもよい。いくつかの例では、それは、生理学的データ収集システム100の生理学的データデータベース160を介してクラスタリングユニット810に渡される(182、102)。クラスタリングユニット810は、ビルおよび場合によっては追加のユーザの生理学的データに基づく判断により、これらのユーザの生理学的データ間の特定の類似性に基づいて、新たな生理学的データクラスタを作成する。ユニット810は、関連付けモデル540からの生理学的データ関連付けモデル108を用いて、生理学的データクラスタのメンバーとなるユーザを選択する。クラスタデータセットは、ユニット810によって選択された特定のユーザのデータを有することになる。次いで、ユニット810は、データセットデータベース360が、362において、新たな生理学的データクラスタについて、1つ以上の新たな生理学的データクラスタデータセットを作成することを要求してもよい(105)。次いで、ユニット810は、トレーニングシステム400が、タスクに基づいて、および新たに作成された生理学的データクラスタデータセット113に基づいて、トレーニングシステム400が1つ以上の新たな生理学的データ予測モデルをトレーニングするために、タスクデータベース410に格納されるべき1つ以上のタスクを送信してもよい(106)。次いで、新たなトレーニングされた生理学的データ予測モデルは、システム400によって、モデルデータベース500内の生理学的モデル520に格納される。
他の例では、クラスタリングユニット810は、場合によっては、ビルおよび他のユーザの生理学的データを用いて、新たなモデルをトレーニングするのではなく、生理学的モデル520内に存在する既存の生理学的データ予測モデルを再トレーニングすることを選択することができる。
上記で開示したビルに関連付けられる個人モデル1280の例示的な生成に関して、プロセスは、いくつかの例では、以下の通りであり得る。このシナリオの第1の例では、クラスタリングユニットは、ビルに対応する個人モデルを作成することを判断する。例えば、それは、ビルの生理学的データ102が受信されたが、ビルのために個人モデルがまだ生成されていないことに気づいてもよい。このシナリオの第2の例では、クラスタリングユニット810は、モデル関連付けユニット610から、ビルに対応する個人予測モデルを作成する要求を受信する。上記で概説したように、いくつかの例では、ビルのこの生理学的データ102に対応するデータセットDI380が生成され、データセットデータベース360、たとえば生理学的データセット361に格納されている。次いで、ユニット810は、タスクに基づいて、ならびに新たに作成されたデータセットDI380、および場合によってはビルの生理学的データを含む以前のデータセットに基づいて、トレーニングシステム400が1つ以上の新たな生理学的データ予測モデルをトレーニングするために、タスクデータベース410に格納されるべき1つ以上のタスクを送信してもよい(106)。次いで、新たなトレーニングされた個人予測モデル1280は、システム400によって、モデルデータベース500内の個人モデル530に格納される。場合によっては、個人モデルを作成する能力は、データセットDI380における十分な数のラベルの利用可能性に依存することに留意されたい。また、いくつかの例では、新たなモデル1280の生成は、1つ以上の関連付けモデルの修正を引き起こし、それらが、1280を、ユーザが関連付けられ得る可能性のある予測モデルのうちの1つと見なすことになるようにしてもよい。
他の例では、クラスタリングユニット810は、場合によっては、より新しいビルの生理学的データを用いることを選択して、ビルに対応する新たな個人モデルをトレーニングするのではなく、個人モデル530内に存在する、ビルに対応する既存の個人予測モデル1280を再トレーニングすることができる。
いくつかの例では、クラスタリングユニット800がユーザデータベース640からビルのメタデータ109を受信することは、ユニット800による新たなメタデータ関連付けモデルの生成のオーケストレーションのきっかけとなることができる。いくつかの例では、クラスタリングユニット800が生理学的データデータベース160からビルの生理学的データ102を受信することは、ユニット800による新たな生理学的関連付けモデルの生成のオーケストレーションのきっかけとなることができる。ユニット800は、データセットデータベース360に指示して、関係性に応じて、メタデータまたは生理学的データにおける類似性の故に選択されたユーザのクラスタに基づいて、新たなクラスタデータセットを生成してもよい(105)。次いで、ユニット800は、トレーニングシステム400にタスク106を送信して、関係性に応じて、この生成されたクラスタデータセットデータ113をセットデータベース360において用いて、新たなメタデータ関連付けモデル540または生理学的関連付けモデル540をトレーニングしてもよい。
他の例では、クラスタリングユニット810は、場合によっては、ビルのメタデータ109および/またはビルの生理学的データ102を用いて、ビルに対応する新たな関連付けモデルをトレーニングするのではなく、関係性に応じて、既存のメタデータ関連付けモデル540または生理学的関連付けモデル540を再トレーニングすることを選択することができる。
ここで図8Aを参照すると、本開示の主題のある例示的実施形態による、モデリングの一般化されたフローチャートが示される。方法800は、関連付けモデルをトレーニングおよび生成するための例示的な方法である。いくつかの例では、これはトレーニングシステム400の処理回路407によって実行され得る。
いくつかの例によれば、トレーニングシステム400は、第1のユーザのグループの非生理学的データおよび/または第2のユーザのグループの生理学的データを受信する(ブロック810)。非生理学的データおよび/または生理学的データは、ユーザ入力データを構成する。いくつかの例では、ユーザ入力データは、複数のユーザのデータを含み、複数ユーザのユーザ入力データは、類似性を共有する。
いくつかの例によれば、トレーニングシステム400は、第2の生理学的データを受信する(ブロック820)。
いくつかの例によれば、トレーニングシステム400は、ユーザのラベルを受信する(ブロック825)。
いくつかの例によれば、トレーニングシステム400は、少なくともユーザ入力データに基づいて、1つ以上の関連付けモデルをトレーニングし、生成する(ブロック830)。トレーニングは、いくつかの例では、第2の生理学的データにも基づく。トレーニングは、いくつかの例では、少なくとも部分的にラベルにも基づく。いくつかの例では、関連付けモデルの生成は、少なくとも部分的にユーザ入力データの生理学的データに基づく。いくつかの例では、関連付けモデルの生成は、少なくとも部分的にユーザの生理学的データの類似性に基づく。いくつかの例では、関連付けモデルの生成は、少なくとも部分的にユーザ入力データの非生理学的データに基づく。いくつかの例では、関連付けモデルのトレーニングは、ニューラルネットワークトレーニング方法に従って行われる。
いくつかの例によれば、トレーニングシステム400は、更新されたユーザ入力データを受信する(ブロック833)。この更新されたユーザ入力データは、いくつかの例では、第1のユーザのグループの更新された非生理学的データ、および/または第2のユーザのグループの更新された生理学的データを含む。
いくつかの例によれば、トレーニングシステム400は、更新されたユーザ入力データの受信に応答して、関連付けモデルのうちの1つ以上を再トレーニングする(ブロック835)。この更新されたユーザ入力データは、いくつかの例では、第1のユーザのグループの更新された非生理学的データ、および/または第2のユーザのグループの更新された生理学的データを含む。これは、例えば、更新されたユーザ入力データを、トレーニングプロセスに対するユーザ入力データの一部として考慮しながら、再びブロック825〜830を実行することを含み得る。ステップ833および835は、継続的に実行されてもよいことに留意されたい。
ここで図8Bを参照すると、本開示の主題のある例示的な実施形態によるモデリングの一般化されたフローチャートが示される。方法850は、予測モデルをトレーニングおよび生成するための例示的な方法である。いくつかの例では、これはトレーニングシステム400の処理回路407によって実行され得る。
いくつかの例によれば、トレーニングシステム400は、1人以上のユーザの生理学的データを受信する(ブロック860)。いくつかの例では、生理学的データは、複数のユーザのデータを含み、複数ユーザの生理学的データは、類似性、たとえば生理学的パターンにおける類似性を共有する。
いくつかの例によれば、トレーニングシステム400は、ユーザの生理学的データの少なくとも一部に対応するユーザのラベルを受信する(ブロック865)。
いくつかの例によれば、トレーニングシステム400は、1つ以上の関連付けモデルを受信する(ブロック867)。
いくつかの例によれば、トレーニングシステム400は、少なくとも生理学的データに基づいて、1つ以上の予測モデルをトレーニングし、生成する(ブロック870)。トレーニングは、いくつかの例では、少なくとも部分的にラベルにも基づく。いくつかの例では、予測モデルの生成は、1つ以上の関連付けモデルを利用する。いくつかの例では、関連付けモデルの生成は、少なくとも部分的にユーザの生理学的データの類似性に基づく。いくつかの例では、関連付けモデルのトレーニングは、ニューラルネットワークトレーニング方法に従って行われる。いくつかの例では、トレーニングは、受信された生理学的データの第1の部分に対して行われる。
いくつかの例によれば、トレーニングシステム400は、トレーニングされた予測モデルの正解率を、受信された生理学的データの第2の、トレーニングされていない部分に基づいて、評価する(ブロック873)。
いくつかの例によれば、トレーニングシステム400は、評価に基づいて予測モデルのランクを設定する(ブロック875)。
いくつかの例によれば、トレーニングシステム400は、評価の結果に基づいて、予測モデルをモデルデータベースに格納する(ブロック877)。いくつかの例では、モデルが十分に高いランクを受信しない場合、モデルは格納されない。
いくつかの例によれば、トレーニングシステム400は、更新された生理学的データを受信する(ブロック880)。
いくつかの例によれば、トレーニングシステム400は、更新された生理学的データの受信に応答して、関連付けモデルのうちの1つ以上を再トレーニングする(ブロック885)。これは、例えば、更新されたユーザ入力データを、トレーニングプロセスに対するユーザ入力データの一部として考慮しながら、再びブロック865〜877を実行することを含み得る。ステップ880および885は、継続的に実行されてもよいことに留意されたい。
ここで図9を参照すると、本開示の主題のある例示的な実施形態による、関連付けおよび予測の一般化されたフローチャートが示される。いくつかの例では、方法900は、予測システム600の処理回路によって、たとえばモデル関連付けユニット610および監視ユニット630によって実行され得る。
いくつかの例によれば、1つ以上の関連付けモデルがシステム600に提供される(ブロック910)。
いくつかの例によれば、1つ以上の予測モデルがシステム600に提供される(ブロック915)。予測モデルは、場合によっては、ユーザの精神状態および/または感情状態の予測を容易にする。これらは、本明細書ではモデルのセットと呼ばれることがある。受信または提供される予測モデルのセットは、第1のユーザのグループから収集された非生理学的データに基づく1つ以上の第1のモデル、および/または第2のユーザのグループから収集された生理学的データに基づく1つ以上の第2のモデルを含む。
いくつかの例によれば、テストされたユーザのデータがシステム600に提供される(ブロック920)。いくつかの例では、テストされたユーザのこの受信または提供されたデータは、生理学的データを含む。いくつかの例では、テストされたユーザの提供されたデータは、生理学的データの少なくとも一部に対応するラベルデータも含む。
いくつかの例によれば、モデルのセットのうちの少なくとも1つのモデルが、テストされたユーザに関連付けられる(ブロック930)。このモデルは、本明細書では関連付けられる予測モデルと呼ばれることがある。いくつかの例における関連付けは、少なくとも、モデルのセット内の他のモデルのユーザ状態予測可能性のランクと比較した、関連付けられる予測モデルのユーザ状態予測可能性の最高ランクに基づいている。いくつかの例では、関連付けは、少なくとも1つの関連付けモデルに少なくとも部分的に基づく。いくつかの例では、関連付けられるモデルのユーザ状態予測可能性の最高ランクおよび他のモデルのユーザ状態予測可能性のランクは、少なくとも、第1のユーザのグループおよび第2のユーザのグループから収集された生理学的データに基づいて判断される。いくつかの例では、関連付けられる予測モデルのユーザ状態予測可能性の最高ランクおよび他のモデルのユーザ状態予測可能性のランクは、テストされたユーザの精神的感情状態を示す。
いくつかの例によれば、テストされたユーザの生理学的データが監視される(ブロック935)。
いくつかの例によれば、別の予測モデルのユーザ精神状態予測可能性のランクが、関連付けられる予測モデルのユーザ状態予測可能性のランクよりも高い、と判断したことに応答して、ユーザに関連付けられた予測モデルが動的に修正される(ブロック940)。いくつかの例では、別のモデルのランクがより高いという判断は、ブロック935におけるテストされたユーザの生理学的データの監視に少なくとも部分的に基づく。いくつかの例では、このブロックは、ブロック930の繰り返しを含む。この別の予測モデルは、関連付けられる予測モデルを構成するように設定される。ステップ935および940は、継続的に実行されてもよいことに留意されたい。
いくつかの例によれば、個人モデルが生成される(ブロック950)。このブロックは、いくつかの例では、モデリングシステムまたはモジュール900によって実行される。
いくつかの例によれば、個人モデルは、テストされたユーザに関連付けられる(ブロック955)。いくつかの例では、これは、少なくとも、以前に関連付けられた予測モデルのユーザ状態予測可能性のランクと比較した、個人モデルのユーザ状態予測可能性の最高ランクに基づいて行われる。いくつかの例では、ブロック950および955は、少なくとも、モデルのセットのうち、閾値を満たさないモデルのユーザ状態予測可能性のランクに基づいて実行される。非限定的な例では、この閾値は65パーセントである。
いくつかの例によれば、テストされたユーザの精神状態および/または感情状態は、関連付けられたモデルユーザを用いて予測される(ブロック955)。いくつかの例では、監視される生理学的データが、この予測のための入力として利用される。いくつかの例では、ブロック910から940、および955は、モデル関連付けユニット610によって実行される。いくつかの例では、ブロック960は、監視ユニット630によって実行される。
ここで図10を参照すると、本開示の主題の特定の例示的実施形態による、感情/精神状態の予測の例示的なグラフが示される。グラフ1005は、ユーザの感情的精神状態を予測する際の予測モデルの非限定的な実際の使用を示す。このシナリオは、患者および精神科医を含む実際の臨床的精神療法セッションである。X軸は、セッションが、月の12日目に10:54と11:24との間に30分間にわたって行われたことを示す。実施例の精神療法セッションは、イメージ書き直し(IR)技法を使用した。この技法のいくつかの例では、第1の段階は「始まり」であり、最近の状況1020−0という、リラックスさせるディスカッションを行ない、その間、患者は(おそらく、セッションの状況に適応するある初期時間の後、)過度にストレスをかけられたり感情的に負荷をかけられる状況にはない。次いで、セッションは、多くの場合、患者に高い感情負荷を引き起こし、患者にストレスを与えると予想される3つの段階、フロートバック1020−1、履歴状況1020−1、およびイメージ書き直し1020−3に進む。最終段階は、IRを終了させ、リラックスさせるセッション後トーク1020−4を行い、その間、患者に対する感情的負荷は、正常レベルに達するまで減少することが期待される。参照番号1020−0〜1020−4は、実際のセッション例において、ディスカッションの各段階がどこで始まったかを示す。
セッション中、患者および治療者の両方は、生理学的データ182(少なくともフォトプレチスモグラム(PPG)が測定する心拍数、皮膚電気活動(EDA)センサが測定する皮膚伝導度、皮膚温度、および手首バンド上の加速度計が感知する身体の動き)を捕捉するセンサまたは他のデバイスに接続された。生理学的データは、人間の感情状態および/または精神状態をモデリングするシステム198に供給され、それは、両方の参加者に、(非個人)生理学的予測モデル520を適用した。システムは、精神療法セッションの開催も開催時間も5段階のタイミングも知らなかった。セッションが進行するにつれて、監視ユニット630は、患者1010および治療者1015の両方について、継続的に入来する生理学的データ182に基づいて、感情的負荷およびストレスのレベルを予測した。グラフのY軸に見られるように、実施例で用いられる感情的負荷の尺度は、0のスコアを高い感情的負荷(例えば、ストレスを受けた)に割り当て、10のスコアを低い感情的負荷(例えば、リラックスした)に割り当てる。
予測の結果に注目すると、プロット1010では、患者は、セッションの早期では様々なレベルのリラックス状態にあり、段階1020−1〜1020−3に対応する時間においては非常にストレスをかけられ、そして1020−4の間は、徐々に正常レベルのストレスおよび感情的負荷に戻ったことが分かる。治療セッションに知識なしに、生理学的データおよび生理学的予測モデルに基づいて、システムによって予測されるこれらのストレスのレベルは、治療ダイナミクス、すなわち、治療手順によるIR技法の各段階に対して予想されるストレスレベルによく対応している。
プロット1015は、プロット1010のデータに対する対照となっている。プロット1015は、ユニット630がセッション全体を通して治療者に対して比較的低いレベルのストレスを予測したことを示す。これは、IR技法が治療者に感情的負荷を誘発するものではなく、患者にのみ感情的負荷を誘発することを意図しているという事実に十分に対応している。
本開示の主題を例示するために、必要に応じて、特定のコンポーネントだけが示されている。図示しない他のコンポーネントおよびサブコンポーネントが存在してもよい。図1Aから図7の非限定的な例に関して記載されるようなシステムは、本明細書で開示される方法のすべて、あるもの、または一部を実行することができる。
上記で開示した処理回路のいずれかまたはすべては、非限定的な例において、非一時的なコンピュータ可読記憶媒体に格納されたコンピュータプログラムによって所望の目的のために特別に構成された汎用コンピュータとすることができる。それは、コンピュータ可読命令に従っていくつかの機能モジュールを実行するように構成され得る。
図1A〜図7の各システムコンポーネントおよびモジュールは、好適な1つ以上のデバイス上で実行され、本明細書で規定および説明される機能を実行するソフトウェア、ハードウェア、および/またはファームウェアの任意の組み合わせから構成することができる。各システムコンポーネントおよびモジュールに関して記載したような、同等および/または修正された機能は、別の態様で統合または分割することができる。したがって、本開示の主題のいくつかの実施形態では、システムは、図1A〜図7に示されるものよりも少ない、より多い、修正された、および/または異なるコンポーネント、モジュール、ならびに機能を含み得る。これの1つの非限定的な例を与えるために、図3Aには、プロセスのいくつかのステップを実行する1つのプロセッサ307が示されている。他の例では、これらのステップのうちの1つ以上は、いくつかの例では異なる位置に配置された別個のプロセッサ上で各々実行され得る。同様に、図6の例では、1つのプロセッサ(図示せず)がユニット610および630の機能を実行し、図1Cの例では、1つのプロセッサ124がユニット110〜150の機能を実行する。他の例では、それらのユニットの各々は、各々別個のプロセッサ、またはいくつかの例では異なる位置に配置される別個のサーバもしくはラック内の完全に別個のコンピュータでさえあり得る。
同様に、図1A〜図7の例では、システム100、200、300、400、800、600、700の各々は、それ自体のプロセッサ(例えば、123、214、307、407、807)およびメモリ(例えば、123、216、309、409、809)を備えるものとして開示されている。いくつかの他の例では、図1Aを参照して開示されるシステム100、200、900、600、700の1つ以上は、同じプロセッサ上で実行され、いくつかの場合においては同じメモリを共有する、別個のソフトウェアモジュールであり得る。
また、本明細書に開示される各処理回路は、メモリを備えるものとして説明されたことにも留意されたい。いくつかの例では、これらのメモリは、様々な計算の実行中に一時的な態様で用いられるデータを保持する。また、様々な機能をサポートするデータベース、例えば、データベース160,220,360,410,500,620,および640を含む、ある数のシステムが開示されており、データベース360および500は、図3Bおよび図5Bでは、いくつかのデータベースを含むものとして開示されていることにも留意されたい。他の例では、これらのデータベースのいくつかまたはすべてを組み合わせることができ、またはそれらの内容を記載したものとは異なるように分割することができ、いくつかは、関係のあるシステム(例えば、100、200、300、400、600)のいくつかまたはすべての外部に位置し得るが、それらに動作可能に結合され得る。また、本明細書に開示されるデータベースのすべては、ストレージ内に存在するデータストアの非限定的な例であることにも留意されたい。他の例では、メモリと開示されるデータベースなどの他のストレージとの間に異なる分割のストレージが存在し得る。1つの非限定的な例として、場合によっては、ユーザデータベース640は、予測システム600の一部ではなく、むしろそれとは別個であってもよい。
図1A〜図7の各コンポーネントは、おそらく分散アーキテクチャにおける特定のコンポーネントのうちの複数を表してもよく、これらは、様々なデータおよび電気的入力を処理するように独立しておよび/または協働して動作し、精神状態および/または感情状態のモデリングならびに予測に関連する動作を可能にするように適合されている。場合によっては、性能、冗長性および/または利用可能性の理由から、コンポーネントの複数インスタンスを利用することができる。同様に、場合によっては、コンポーネントの複数インスタンスが、機能性または用途の理由で利用されてもよい。例えば、特定の機能性の異なる部分が、コンポーネントの異なるインスタンスに配置され得る。これらのコンポーネントおよびモジュールのうちの1つ以上は、1つの場所に集中され得るか、または2つ以上の場所にわたって分散および分配され得る。
図1A〜図7は、システムアーキテクチャおよびデータフローの一般的な概略図のみを図示し、非限定的な例として、本開示の主題の一態様を、説明を明瞭にするためだけに、情報を提供する態様においてのみ、記載している。本開示の主題の教示は、図1A〜図7を参照して説明されるものによって拘束されないことが理解されるであろう。
いくつかの実施形態では、本明細書で例示される様々なフローの1つ以上のステップは、自動的に実行され得る。
本開示の主題の教示は、様々な図に示されるフローチャートおよびアーキテクチャによって拘束されないことに留意されたい。動作は、図示された順序から外れて生じ得る。同様に、動作またはステップのいくつかは、統合された動作に統合され得るか、またはいくつかの動作に分解され得るか、および/または他の動作が追加されてもよい。フローチャートは、例えば処理回路122、303など、それらを実現するシステム要素を参照して説明されるが、これは決して制限的ではなく、動作は、本明細書で説明されるもの以外の要素によって実行され得ることにも留意されたい。
本開示の主題の実施形態では、図に示される段階よりも少ない、多い、および/または異なる段階を実行することができる。本開示の主題の実施形態では、図に示す1つ以上の段階は、異なる順序で実行することができ、および/または1つ以上の段階のグループを同時に実行することができる。
特許請求の範囲では、請求項の要素を指定するために用いられる英数字およびローマ数字は、便宜のためだけに与えられ、要素を実行するいかなる特定の順序も意味しない。
特許請求の範囲全体にわたって用いられる「備える」という用語は、「含むが限定されない」を意味すると解釈されるべきであることに留意されたい。
上記の方法およびシステムは、その用途において、本明細書に含まれる記載に述べられる、または図面に示される詳細に限定されないことを理解されたい。本方法およびシステムは、他の実施形態が可能であり、様々な態様で実施および実行可能である。本開示の主題に従って例が示され、開示されているが、本開示の主題の精神から逸脱することなく、多くの変更が行われ得ることが理解されるであろう。したがって、本明細書で用いられる表現および用語は、説明を目的としており、限定と見なされるべきではないことを理解されたい。したがって、当業者は、本開示の基礎となる概念を、本開示の主題のいくつかの目的を実施するための他の構造、方法、およびシステムを設計するための基礎として容易に利用することができることを理解するであろう。
また、上述の例示的な実施形態によるシステムは、好適にプログラムされたコンピュータ上に少なくとも部分的に実装され得ることも理解されるであろう。同様に、例示的な実施形態は、本発明の方法を実行するためにコンピュータによって読み取り可能であるコンピュータプログラム製品を企図し得る。例示的な実施形態はさらに、たとえば上述のいくつかの例示的な実施形態またはその任意の部分によって実現され得る1つ以上の方法を実行するためのマシンまたはコンピュータによって実行可能な命令のプログラムを有形に具現化する非一時的な機械可読またはコンピュータ可読メモリを企図する。本開示の主題は、さらに、本明細書で開示される主題の方法を実行するように実行されるように構成された、コンピュータ可読プログラムコードが中に具現化された非一時的なコンピュータ可読記憶媒体を意図する。当業者は、様々な修正および変更を、特許請求の範囲において、および特許請求の範囲によって規定されるその範囲から逸脱することなく、上記で説明した実施形態に適用することができることを容易に理解するであろう。