(57)【要約】  説明する実施例の一般的態様では、センサデバイスからのセンサデータを使用して、動き検出システムのためのトレーニングデータを改善する。いくつかの態様では、動き検出トレーニング期間にわたって「グラウンドトゥルース」ラベル、センサデータ及びチャネル情報が受け取られる。ラベル及びセンサデータを分析して、ラベルとセンサデータとの間の不一致を検出する。センサデータに基づいてラベルを補正又は増強する。チャネル情報にラベルをタグ付けし、動き検出システムをトレーニングするためのトレーニング情報として提供する。【選択図】図６Ａ
2021524111.tif 000002
【特許請求の範囲】
【請求項１】
動き検出トレーニング方法であって、
動き検出トレーニング期間中に空間を通じて無線通信装置によって送信される無線信号を含むトレーニング信号に基づくチャネル情報を受け取るステップと、
前記動き検出トレーニング期間中における前記空間内のモバイル装置のユーザインターフェイスへの情報入力に基づくラベルを受け取るステップと、
前記動き検出トレーニング期間中に前記空間内のセンサデバイスによって収集されたセンサデータを受け取るステップと、
前記ラベル及び前記センサデータを分析して、前記ラベルと前記センサデータとの間の不一致を検出するステップと、
前記ラベル及び前記センサデータの前記分析に基づいてタグを生成するステップと、
前記チャネル情報及び前記タグを、動き検出システムをトレーニングするためのトレーニング入力として提供するステップと、
を含むことを特徴とする動き検出トレーニング方法。
【請求項２】
前記ラベル及び前記センサデータを分析するステップは、
前記分析によって前記センサデータが前記ラベルに対応しないことが示された時に不一致を検出するステップと、
前記検出された不一致に応じて、前記受け取られたセンサデータに基づいて前記ラベルを補正し、又は前記受け取られたセンサデータを使用して前記ラベルを増強するステップと、
を含む、請求項１に記載の動き検出トレーニング方法。
【請求項３】
前記ラベル及び前記センサデータの前記分析に基づいて前記タグを生成するステップは、前記ラベルのみから前記タグを生成する場合と比べて前記タグの精度を改善する、
請求項１に記載の動き検出トレーニング方法。
【請求項４】
前記センサデバイスは、
加速度計、
ジャイロスコープ、
コンパス、
歩数計、及び、
気圧計、
のうちの少なくとも１つを含む、請求項１に記載の動き検出トレーニング方法。
【請求項５】
前記モバイル装置は、前記センサデバイスを含む、
請求項１に記載の動き検出トレーニング方法。
【請求項６】
前記ラベルと前記センサデータとの間の前記不一致は、
前記ラベル内のタイムスタンプと前記センサデータ内のタイムスタンプとの間の相違、
前記ラベルに示される測定タイプと前記センサデータ内の測定タイプとの間の相違、又は、
前記センサデータにおいて追加情報が提供されたが前記ラベルでは提供されないこと、
のうちの少なくとも１つを含む、請求項１に記載の動き検出トレーニング方法。
【請求項７】
前記チャネル情報及び前記タグを、前記動き検出システムをトレーニングするためのトレーニング入力として提供するステップは、タグ付きチャネル情報を機械学習システムに提供するステップを含む、
請求項１に記載の動き検出トレーニング方法。
【請求項８】
前記タグは、
前記トレーニング期間中に前記空間内で動きが発生したかどうか、
前記トレーニング期間中に前記空間内で発生した動きの方向、
前記トレーニング期間中に前記空間内で発生した動きの位置、又は、
前記トレーニング期間中に前記空間内で動きが発生した時間、
のうちの少なくとも１つを示す、請求項７に記載の動き検出トレーニング方法。
【請求項９】
動き検出トレーニングシステムであって、
１又は２以上のプロセッサと、
命令を記憶するメモリと、
を備え、前記命令は、前記１又は２以上のプロセッサによって実行された時に、前記データ処理装置に、
動き検出トレーニング期間中に空間を通じて無線通信装置によって送信される無線信号を含むトレーニング信号に基づくチャネル情報を受け取り、
前記動き検出トレーニング期間中における前記空間内のモバイル装置のユーザインターフェイスへの情報入力に基づくラベルを受け取り、
前記動き検出トレーニング期間中に前記空間内のセンサデバイスによって収集されたセンサデータを受け取り、
前記ラベル及び前記センサデータを分析して、前記ラベルと前記センサデータとの間の不一致を検出し、
前記ラベル及び前記センサデータの前記分析に基づいてタグを生成し、
前記チャネル情報及び前記タグを、前記動き検出システムをトレーニングするためのトレーニング入力として提供する、
ことを行わせる、
ことを特徴とする動き検出トレーニングシステム。
【請求項１０】
前記ラベル及び前記センサデータを分析することは、
前記分析によって前記センサデータが前記ラベルに対応しないことが示された時に不一致を検出し、
前記検出された不一致に応じて、前記受け取られたセンサデータに基づいて前記ラベルを補正し、又は前記受け取られたセンサデータを使用して前記ラベルを増強する、
ことを含む、請求項９に記載の動き検出トレーニングシステム。
【請求項１１】
前記ラベル及び前記センサデータの前記分析に基づいて前記タグを生成することは、前記ラベルのみから前記タグを生成する場合と比べて前記タグの精度を改善する、
請求項９に記載の動き検出トレーニングシステム。
【請求項１２】
前記センサデバイスは、
加速度計、
ジャイロスコープ、
コンパス、
歩数計、及び、
気圧計、
のうちの少なくとも１つを含む、請求項９に記載の動き検出トレーニングシステム。
【請求項１３】
前記モバイル装置は、前記センサデバイスを含む、
請求項９に記載の動き検出トレーニングシステム。
【請求項１４】
前記ラベルと前記センサデータとの間の前記不一致は、
前記ラベル内のタイムスタンプと前記センサデータ内のタイムスタンプとの間の相違、
前記ラベルに示される測定タイプと前記センサデータ内の測定タイプとの間の相違、又は、
前記センサデータにおいて追加情報が提供されたが前記ラベルでは提供されないこと、
のうちの少なくとも１つを含む、請求項９に記載の動き検出トレーニングシステム。
【請求項１５】
前記チャネル情報及び前記タグを、前記動き検出システムをトレーニングするためのトレーニング入力として提供するステップは、タグ付きチャネル情報を機械学習システムに提供するステップを含む、
請求項９に記載の動き検出トレーニングシステム。
【請求項１６】
前記タグは、
前記トレーニング期間中に前記空間内で動きが発生したかどうか、
前記トレーニング期間中に前記空間内で発生した動きの方向、
前記トレーニング期間中に前記空間内で発生した動きの位置、又は、
前記トレーニング期間中に前記空間内で動きが発生した時間、
のうちの少なくとも１つを示す、請求項１５に記載の動き検出トレーニングシステム。
【請求項１７】
１又は２以上のプロセッサによって実行された時に動作を実行する命令を含む非一時的コンピュータ可読媒体であって、前記動作は、
動き検出トレーニング期間中に空間を通じて無線通信装置によって送信される無線信号を含むトレーニング信号に基づくチャネル情報を受け取るステップと、
前記動き検出トレーニング期間中における前記空間内のモバイル装置のユーザインターフェイスへの情報入力に基づくラベルを受け取るステップと、
前記動き検出トレーニング期間中に前記空間内のセンサデバイスによって収集されたセンサデータを受け取るステップと、
前記ラベル及び前記センサデータを分析して、前記ラベルと前記センサデータとの間の不一致を検出するステップと、
前記ラベル及び前記センサデータの前記分析に基づいてタグを生成するステップと、
前記チャネル情報及び前記タグを、前記動き検出システムをトレーニングするためのトレーニング入力として提供するステップと、
を含む、ことを特徴とする非一時的コンピュータ可読媒体。
【請求項１８】
前記ラベル及び前記センサデータを分析するステップは、
前記分析によって前記センサデータが前記ラベルに対応しないことが示された時に不一致を検出するステップと、
前記検出された不一致に応じて、前記受け取られたセンサデータに基づいて前記ラベルを補正し、又は前記受け取られたセンサデータを使用して前記ラベルを増強するステップと、
を含む、請求項１７に記載のコンピュータ可読媒体。
【請求項１９】
前記ラベル及び前記センサデータの前記分析に基づいて前記タグを生成するステップは、前記ラベルのみから前記タグを生成する場合と比べて前記タグの精度を改善する、
請求項１７に記載のコンピュータ可読媒体。
【請求項２０】
前記センサデバイスは、
加速度計、
ジャイロスコープ、
コンパス、
歩数計、及び、
気圧計、
のうちの少なくとも１つを含む、請求項１７に記載のコンピュータ可読媒体。
【請求項２１】
前記モバイル装置は、前記センサデバイスを含む、
請求項１７に記載のコンピュータ可読媒体。
【請求項２２】
前記ラベルと前記センサデータとの間の前記不一致は、
前記ラベル内のタイムスタンプと前記センサデータ内のタイムスタンプとの間の相違、
前記ラベルに示される測定タイプと前記センサデータ内の測定タイプとの間の相違、又は、
前記センサデータにおいて追加情報が提供されたが前記ラベルでは提供されないこと、
のうちの少なくとも１つを含む、請求項１７に記載のコンピュータ可読媒体。
【請求項２３】
前記チャネル情報及び前記タグを、前記動き検出システムをトレーニングするためのトレーニング入力として提供するステップは、タグ付きチャネル情報を機械学習システムに提供するステップを含む、
請求項１７に記載のコンピュータ可読媒体。
【請求項２４】
前記タグは、
前記トレーニング期間中に前記空間内で動きが発生したかどうか、
前記トレーニング期間中に前記空間内で発生した動きの方向、
前記トレーニング期間中に前記空間内で発生した動きの位置、又は、
前記トレーニング期間中に前記空間内で動きが発生した時間、
のうちの少なくとも１つを示す、請求項２３に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
〔関連出願との相互参照〕
本出願は、２０１８年５月２３日に出願された「センサデバイスからのデータを用いた動き検出システムのためのトレーニングデータ（Ｔｒａｉｎｉｎｇ  Ｄａｔａ  ｆｏｒ  ａ  Ｍｏｔｉｏｎ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ  Ｕｓｉｎｇ  Ｄａｔａ  ｆｒｏｍ  ａ  Ｓｅｎｓｏｒ  Ｄｅｖｉｃｅ）」という名称の米国特許出願第１５／９８７，８０５号に対する優先権を主張するものであり、この文献の内容は引用により本明細書に組み入れられる。
【背景技術】
【０００２】
以下の説明は、センサデバイスからのデータを使用して動き検出システムのためのトレーニングデータの精度を改善することに関する。
【０００３】
例えば、室内又は屋外領域における物体の動きを検出するために動き検出システムが使用されている。動き検出システム例には、赤外線センサ又は光学センサを使用してセンサの視野内の物体の動きを検出するものもある。動き検出システムは、セキュリティシステム、自動制御システム及びその他のタイプのシステムで使用されている。
【図面の簡単な説明】
【０００４】
【図１】無線通信システム例を示す図である。
【図２Ａ】無線通信装置間で通信される無線信号例を示す図である。
【図２Ｂ】無線通信装置間で通信される無線信号例を示す図である。
【図３】動き検出トレーニングシステム例を示すブロック図である。
【図４Ａ】無線通信システムにおける動き検出トレーニング情報の収集例を示す図である。
【図４Ｂ】無線通信システムにおける動き検出トレーニング情報の収集例を示す図である。
【図５】無線通信システムにおいて収集されたトレーニング情報の処理を示すシーケンス図である。
【図６Ａ】無線通信システムにおける動き検出トレーニングのプロセス例を示すフロー図である。
【図６Ｂ】無線通信システムにおける動き検出トレーニングのプロセス例を示すフロー図である。
【図７】ノード装置例を示すブロック図である。
【発明を実施するための形態】
【０００５】
一般的態様では、空間を通じて通信する（例えば、無線メッシュネットワーク又は別のタイプの無線ネットワークの）複数の無線通信装置からの情報を使用して、空間内の動きを検出することができる。例えば、無線通信ネットワーク内の１又は２以上の装置において受け取られた無線信号を分析して、（ネットワーク内のそれぞれの装置ペア間の）ネットワーク内の異なる通信リンクのチャネル情報を決定することができる。いくつかの例では、チャネル情報がチャネル状態情報（本明細書では無線チャネル状態情報とも呼ぶ）を含む。チャネル状態情報は、通信リンクのチャネル特性を含むことができ、例えば送信機と受信機との間の空間内の散乱、フェージング及び電力減衰の複合効果を表す、無線信号が送信機から受信機にどのように伝播するかを示すことができる。いくつかの例では、チャネル情報がビームフォーミング状態情報を含む。ビームフォーミング（又は空間フィルタリング）は、マルチアンテナ（多入力／多出力（ＭＩＭＯ））無線システムにおいて指向性信号送信又は受信のために使用される信号処理技術を意味することができる。ビームフォーミングは、特定の角度の信号が建設的干渉を受けて他の信号が相殺的干渉を受けるようにアンテナアレイ内の素子を組み合わせることによって達成することができる。ビームフォーミングは、空間的選択性を達成するために送信側及び受信側の両方で使用することができる。（例えば、ＩＥＥＥ  ８０２．１１ａｃ標準などの）いくつかの例では、送信機がビームフォーミングステアリングマトリクス（ｂｅａｍｆｏｒｍｉｎｇ  ｓｔｅｅｒｉｎｇ  ｍａｔｒｉｘ）を使用する。ビームフォーミングマトリクスは、アンテナアレイがその個々のアンテナ素子の各々をどのように使用して送信のための空間経路を選択すべきかについての数学的記述を含むことができる。本明細書では、チャネル状態情報に関していくつかの態様を説明することができるが、説明する態様では、ビームフォーミング状態情報又はビームフォーマステアリングマトリクス状態（ｂｅａｍｆｏｒｍｅｒ  ｓｔｅｅｒｉｎｇ  ｍａｔｒｉｘ  ｓｔａｔｅ）を使用することもできる。
【０００６】
（例えば、ネットワーク内の無線通信装置のうちの１つ、ハブ装置、或いはネットワークに通信可能に結合された遠隔装置が）１又は２以上の通信リンクのチャネル情報を分析して、空間内で動きが発生したかどうか、検出された動きの相対的位置、又はこれらの両方を検出することができる。いくつかの実装では、無線通信ネットワークが無線メッシュネットワークを含む。無線メッシュネットワークは、ノード（例えば、装置）が中央アクセスポイント、基地局又はネットワークコントローラを使用せずにポイントツーポイント方式で直接通信する分散型無線ネットワークとして展開することができる。無線メッシュネットワークは、メッシュクライアント、メッシュルータ又はメッシュゲートウェイを含むことができる。いくつかの例では、無線メッシュネットワークがＩＥＥＥ  ８０２．１１ｓ標準に基づく。いくつかの例では、無線メッシュネットワークがＷｉ−Ｆｉアドホック又は別の専有技術に基づく。
【０００７】
いくつかの実装では、例えば時系列内の第１の時点及びその後の時点に、通信システム内の１又は２以上の装置ペアのチャネル情報が取得される。一定期間にわたって通信システムの１又は２以上のリンクのチャネル情報を分析することによって動きを検出することができる。いくつかの実装では、ニューラルネットワークがそれぞれの通信リンクのチャネル情報を分析して動きを検出し、又は検出された動きの位置を決定することができる。
【０００８】
ある例では、トレーニングモード中に、動き検出システムが、空間内の異なる領域内で発生した物体の動きの間に取得されたチャネル情報にこの異なる領域内の物体の動きを関連付けることができる。ある例では、ユーザが空間を通り抜ける際に送信されたトレーニング信号に基づくチャネル情報を無線ネットワークの装置から収集することによってニューラルネットワークをトレーニングすることができる。いくつかの例では、ユーザの位置に従って又は他の方法で、ユーザが現在動いているかどうかに基づいてチャネル情報に動き情報をタグ付けすることができる。このタグ付けされたチャネル情報をニューラルネットワークが分析し、ニューラルネットワークのトレーニングにおいて使用して、物体の動き、動きのカテゴリ（例えば、人間による動き対ペットによる動き）又は検出された動きの位置を検出することができる。
【０００９】
いくつかの態様では、動き検出トレーニング中に、トレーニング信号に基づくチャネル情報データを受け取る。いくつかの例では、トレーニング信号が、動き検出トレーニング期間中に無線通信装置によって空間を通じて送信された無線信号を含む。いくつかの例では、動き検出トレーニング期間中におけるモバイル装置のユーザインターフェイスへの情報入力に基づく１又は２以上のラベルを受け取り、動き検出トレーニング期間中に空間内のセンサデバイスによって収集されたセンサデータも受け取る。これらの１又は２以上のラベル及びセンサデータを分析して、ラベルとセンサデータとの間のあらゆる不一致を検出する。このラベル及びセンサデータの分析に基づいてタグを生成する。これらのチャネル情報及びタグを、動き検出システムをトレーニングするため（例えば、ニューラルネットワークをトレーニングするため）のトレーニング入力として提供する。
【００１０】
いくつかの例では、無線チャネル情報を使用して動きの検出及び動きの発生源の特定（ｍｏｔｉｏｎ  ｓｏｕｒｃｅ  ｌｏｃａｌｉｚａｔｉｏｎ）を行うプロセスが、例えば「動きあり」状態又は「動きなし」状態などの特定の動き状態に関連する特定の署名（ｓｉｇｎａｔｕｒｅｓ）を識別することができる。これらの署名は、無線チャネル情報を含む又は無線チャネル情報に基づいて生成される信号の時系列を分析することによって識別することができる。この識別は、例えば教師あり又は教師なし機械学習を使用して、測定されたデータセットに基づいて分類子システム（ｃｌａｓｓｉｆｉｅｒ  ｓｙｓｔｅｍ）をトレーニングすることによって行うことができる。例えば、署名は、動き検出システムのトレーニング中に、測定されたトレーニングセットが識別され分類されている時に教師あり又は教師なし機械学習方法のいずれかを使用して識別することができる。測定されるトレーニングデータセットは、例えばチャネル応答セットなどのチャネル情報、及びチャネル情報に関連するタグ付き情報から成ることができる。１つの態様では、分類子が、測定されたトレーニングデータセットを識別し、データセットを動きのタイプ（例えば、「動きあり」又は「動きなし」）又は動きのカテゴリ（人間又は動物など）に関連付けることができる。
【００１１】
教師あり機械学習の場合、個々の動き検出システムは、各システムのインストール後にトレーニングされるとともに、通常のシステム動作中の他の時間にトレーニングすることもできる。例えば、動き検出システムは、システム性能を調整するために、或いは検出された動きタイプの新たなゾーン、位置又はジェスチャなどの新たな特徴を識別するために、システム動作中にトレーニングすることができる。教師あり機械学習トレーニングプロセスは、トレーニング期間中のユーザからの入力を含む。例えば、動き検出システムが無線チャネル状態情報を測定して記録している間のトレーニング期間中のユーザデータラベル。これらのデータラベルは「グラウンドトゥルース」データラベルとみなすことができ、トレーニングデータセットの一部になることができる。ユーザによって提供された情報又はユーザ入力に基づく情報は、例えば別のソースから明らかになった動きに関する情報を表す「グラウンドトゥルース」とみなすことができる。いくつかの例では、教師ありトレーニング中に、ユーザが、関心ゾーン内に存在する間に歩行又は特定のジェスチャを行う「ウォークスルー」を実行することができる。同時に、ユーザは、ウォークスルーに関連する時間、動きタイプ及び動きゾーンラベルなどのさらなる「グラウンドトゥルース」動きデータ情報を動き検出システムに提供することができる。ユーザは、携行中のモバイル装置（例えば、スマートフォン、スマートウォッチ、タブレットなど）上の動き検出トレーニングアプリケーションにデータラベルを入力することができる。その後、モバイル装置は、このデータラベルを動き検出トレーニングシステムに提供して、対応するチャネル情報に関連付けられるようにすることができる。この結果、これらのデータラベルは、測定されたデータセットの一部になることができる。
【００１２】
いくつかの実装では、動き検出システムの教師ありトレーニングプロセスが、トレーニングプロセス中にユーザが装着又は携行しているモバイル装置又はその他のウェアラブル装置の１又は２以上の内蔵センサから動きデータを収集する。いくつかの例では、センサがリアルタイムな動き情報を収集し、この情報を使用して、例えば教師ありトレーニングプロセス中にユーザによって提供される「グラウンドトゥルース」データラベルなどのユーザ入力を増強又は補正することができる。モバイル装置又はその他のウェアラブル装置の内蔵センサは、加速度計、ジャイロスコープ、コンパス、歩数計、気圧計、又は動きに関する情報を提供できる、センサの組み合わせを含む他のいずれかのタイプのセンサを含むことができる。センサは、センサによって収集されるがユーザに提供されない又はユーザが利用できない、方向、速度、歩数などを含む情報に加えて、時間、動きデータ又はタイプ及び位置などの、ユーザと同一又は同様の種類の動き情報を提供することができる。動き検出トレーニングシステムは、センサによって提供された動き情報をユーザがモバイル装置上のアプリケーションに入力した動きデータラベルと組み合わせてデータラベルレポートを作成することができる。データラベルレポートは、記録された無線チャネル状態を既知の「グラウンドトゥルース」ラベルによってさらに増強できるように、クラウド又は動き検出システムの動きセンサに送信することができる。
【００１３】
ある例では、教師ありトレーニング中に、特定の時点でユーザが動いていたことを示す動き状態情報をユーザが提供したにもかかわらず、ほんの数秒後に１又は２以上のセンサが確実に動きを識別することがある。この場合、提供された「グラウンドトゥルース」ラベルのタイムスタンプは、センサの時間測定値に従って調整される。別の例では、システムが「動きなし」状態についてトレーニングを行っている間にユーザに静止しておくように指示したにもかかわらず、モバイルセンサが動きを検出したデータを報告することがある。センサは、この情報を報告することができる。この場合、「動きなし」の動き状態を表すものとしての情報が不正確になるので、このトレーニングイベントについて収集されたチャネル情報、ユーザ入力及びセンサデータを含む全ての収集データを破棄することができる。
【００１４】
いくつかの例では、本明細書で説明するシステム及び技術の態様が１又は２以上の技術的利点をもたらすことができる。例えば、発生した実際の動き状態を示す「グラウンドトゥルース」ラベルなどの付いた真の動きデータを取り込み、これによって動きの検出及び動きの発生源特定の精度を改善することができる。いくつかの例では、教師あり機械学習中に提供されるさらなるセンサデータが、動き検出システムによる無線チャネルの特定の一時的署名に関連する新たな特徴の識別を改善することができる。いくつかの例では、ユーザによる手動トレーニング及び手動動きラベリングプロセスに関連するエラーを低減又は排除することができる。例えば、機械学習は、トレーニングプロセス中の特定のタイプのユーザ入力エラー（例えば、ラベルが見逃された場合、誤った時点でラベルが入力された場合、又はラベルが誤った情報を含む場合）、及び結果として発生するデータセットラベルとチャネル状態情報との不整合によって「間違ったこと」を学習し、又は低品質な収束及び推論を学習し、この結果、同じ環境における同様の動きについて不十分な一般化を行うようになる恐れがあるが、本明細書で説明するシステム及び技術を使用して、これらの及び潜在的に他のタイプのエラーを低減又は排除することによって精度を改善することができる。
【００１５】
図１に、無線通信システム例１００を示す。無線通信システム例１００は、第１の無線通信装置１０２Ａ、第２の無線通信装置１０２Ｂ及び第３の無線通信装置１０２Ｃという３つの無線通信装置を含む。無線通信システム例１００は、さらなる無線通信装置及び他のコンポーネント（例えば、さらなる無線通信装置、１又は２以上のネットワークサーバ、ネットワークルータ、ネットワークスイッチ、ケーブル、又はその他の通信リンクなど）を含むこともできる。
【００１６】
無線通信装置例１０２Ａ、１０２Ｂ、１０２Ｃは、例えば無線ネットワーク標準又は別のタイプの無線通信プロトコルに従って無線ネットワーク内で動作することができる。例えば、無線ネットワークは、無線ローカルエリアネットワーク（ＷＬＡＮ）、パーソナルエリアネットワーク（ＰＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、メッシュネットワーク、又は別のタイプの無線ネットワークとして動作するように構成することができる。ＷＬＡＮの例としては、ＩＥＥＥによって開発された標準である８０２．１１ファミリのうちの１つ又は２つ以上（例えば、Ｗｉ−Ｆｉネットワーク）などに従って動作するように構成されたネットワークが挙げられる。ＰＡＮの例としては、近距離通信標準（例えば、ＢＬＵＥＴＯＯＴＨ（登録商標）、近距離無線通信（ＮＦＣ）、Ｚｉｇｂｅｅ）、及びミリ波通信などに従って動作するネットワークが挙げられる。
【００１７】
いくつかの実装では、無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃを、例えばセルラネットワーク標準に従ってセルラネットワーク内で通信するように構成することができる。セルラネットワークの例としては、グローバル・システム・フォー・モバイル（ＧＳＭ）及びＧＳＭ進化型高速データレート（ＥＤＧＥ）又はＥＧＰＲＳなどの２Ｇ標準、符号分割多元接続（ＣＤＭＡ）、広帯域符号分割多元接続（ＷＣＤＭＡ）、ユニバーサル・モバイル・テレコミュニケーション・システム（ＵＭＴＳ）及び時分割同期符号分割多元接続（ＴＤ−ＳＣＤＭＡ）などの３Ｇ標準、並びにロング・ターム・エボリューション（ＬＴＥ）及びＬＴＥ−Ａｄｖａｎｃｅｄ（ＬＴＥ−Ａ）などの４Ｇ標準などに従って構成されたネットワークが挙げられる。
【００１８】
図１に示す例では、無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃが標準的な無線ネットワークコンポーネントであり、或いは標準的な無線ネットワークコンポーネントを含むことができる。例えば、無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃは、無線アクセスポイント（ＷＡＰ）のモデム上に命令（例えば、ソフトウェア又はファームウェア）として埋め込まれた、本明細書で説明するような１又は２以上の動作を実行する市販のＷｉ−Ｆｉアクセスポイント又は別のタイプのＷＡＰとすることができる。いくつかの例では、無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃを、例えば市販のメッシュネットワークシステム（例えば、ＧＯＯＧＬＥ  ＷＩＦＩ）などの無線メッシュネットワークのノードとすることができる。いくつかの例では、別のタイプの標準的な又は従来のＷｉ−Ｆｉ送信機装置を使用することもできる。無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃは、Ｗｉ−Ｆｉコンポーネントを伴わずに実装することもでき、例えば他のタイプの標準的又は非標準的な無線通信を動き検出に使用することもできる。いくつかの例では、無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃを専用の動き検出システム又はその一部とすることができる。例えば、専用の動き検出システムは、ハブ装置及び（遠隔センサデバイスとしての）１又は２以上のビーコン装置を含むことができ、無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃは、動き検出システム内のハブ装置又はビーコン装置のいずれかとすることができる。
【００１９】
図１に示す例では、無線通信装置１０２Ａ、１０２Ｂが（例えば、無線ネットワーク標準、動き検出プロトコル又はその他に従って）無線信号を送信する。例えば、無線通信装置１０２Ａ、１０２Ｂは、（例えば、上述したような）無線動き探査信号をブロードキャストすることができ、或いは他の装置（例えば、ユーザ装置、クライアント装置、サーバなど）にアドレス指定された無線信号を送信することができ、他の装置（図示せず）及び無線通信装置１０２Ｃは、無線通信装置１０２Ａ、１０２Ｂによって送信された無線信号を受け取ることができる。いくつかの例では、無線通信装置１０２Ａ、１０２Ｂによって送信される無線信号が、例えば無線通信標準に従って又は別様に定期的に繰り返される。
【００２０】
図示の例では、無線通信装置１０２Ｃが、無線通信装置１０２Ａ、１０２Ｂからの無線信号を処理して、無線信号がアクセスした空間内の物体の動きの検出、検出された動きの位置特定、又はこれらの両方を行う。例えば、無線通信装置１０２Ｃは、図２Ａ〜図２Ｂに関して後述するプロセス例、或いは動きの検出又は検出された動きの位置特定のための別のタイプのプロセスの１又は２以上の動作を実行することができる。無線信号がアクセスする空間は、例えば１又は２以上の完全に又は部分的に取り囲まれた領域、囲いが存在しない開放区域などを含むことができる屋内又は屋外空間とすることができる。この空間は、部屋、複数の部屋又は建物などの内部とすることができ、或いはこれらを含むことができる。いくつかの例では、無線通信システム１００を、例えば無線通信装置１０２Ｃが無線信号を送信し、無線通信装置１０２Ａ、１０２Ｂが無線通信装置１０２Ｃからの無線信号を処理して動きの検出又は検出された動きの位置特定を行えるように修正することもできる。この例では、無線信号を送信する通信装置１０２Ｃがソースデバイスとして動作することができ、無線信号を受け取って処理する通信装置１０２Ａ、１０２Ｂがセンサデバイスとして動作することができる。
【００２１】
動き検出に使用される無線信号は、例えばビーコン信号（例えば、Ｂｌｕｅｔｏｏｔｈビーコン、Ｗｉ−Ｆｉビーコン、その他の無線ビーコン信号）、パイロット信号（例えば、ビームフォーミング用途などにおいてチャネルサウンディングのために使用されるパイロット信号）、無線ネットワーク標準に従って他の目的で生成される別の標準的な信号、或いは動き検出又はその他の目的で生成される非標準的な信号（例えば、ランダム信号、基準信号など）を含むことができる。いくつかの例では、移動物体との相互作用の前又は後に無線信号が物体（例えば、壁）を通じて伝播することにより、移動物体と送信又は受信ハードウェアとの間に光学的見通し線を伴わずに移動物体の動きを検出することができる。第３の無線通信装置１０２Ｃは、受け取った信号に基づいて動き検出データを生成することができる。いくつかの例では、第３の無線通信装置１０２Ｃが、部屋、建物、屋外領域などの空間内の動きをモニタするためのコントロールセンタを含むことができるセキュリティシステムなどの別の装置又はシステムに動き検出データを通信することができる。
【００２２】
いくつかの実装では、無線通信装置１０２Ａ、１０２Ｂを、無線ネットワークトラフィック信号から分離した無線通信チャネル（例えば、周波数チャネル又は符号化チャネル）上で（例えば、上述したような）動き探査信号を送信するように修正することができる。例えば、動き探査信号のペイロードに適用される変調、及びペイロード内のデータ又はデータ構造のタイプを第３の無線通信装置１０２Ｃが認識できることによって、第３の無線通信装置が動き検知のために実行する処理量を減少させることができる。ヘッダは、例えば通信システム１００内の別の装置によって動きが検出されたかどうかの指示、変調タイプの指示、信号を送信している装置の識別などの追加情報を含むこともできる。
【００２３】
図１に示す例では、無線通信システム１００が、各それぞれの無線通信装置１０２間の無線通信リンクを含む。図示の例では、第３の無線通信装置１０２Ｃと第１の無線通信装置１０２Ａとの間の無線通信リンクを使用して第１の動き検出領域１１０Ａを探ることができ、第３の無線通信装置１０２Ｃと第２の無線通信装置１０２Ｂとの間の無線通信リンクを使用して第２の動き検出領域１１０Ｂを探ることができ、第１の無線通信装置１０２Ａと第２の無線通信装置１０２Ｂとの間の無線通信リンクを使用して第３の動き検出領域１１０Ｃを探ることができる。いくつかの例では、各無線通信装置１０２が、自機が動き検出領域１１０を通じて送信した無線信号に基づく受信信号を処理することによって、アクセス先の動き検出領域１１０内の動きを検出する。例えば、図１に示す人物１０６が第１の動き検出領域１１０Ａ及び第３の動き検出領域１１０Ｃ内で動いた場合、無線通信装置１０２は、それぞれの動き検出領域１１０を通じて送信された無線信号に基づく受信信号に基づいて動きを検出することができる。例えば、第１の無線通信装置１０２Ａは、動き検出領域１１０Ａ、１１０Ｃの両方における人物の動きを検出することができ、第２の無線通信装置１０２Ｂは、動き検出領域１１０Ｃにおける人物１０６の動きを検出することができ、第３の通信装置１０２Ｃは、動き検出領域１１０Ａにおける人物１０６の動きを検出することができる。
【００２４】
いくつかの例では、動き検出領域１１０が、例えば空気、固体材料、液体、又は無線電磁信号が伝播できる別の媒体を含むことができる。図１に示す例では、第１の動き検出領域１１０Ａが、通信装置１０２Ａと第３の無線通信装置１０２Ｃの間の無線通信チャネルを提供し、第２の動き検出領域１１０Ｂが、第２の無線通信装置１０２Ｂと第３の無線通信装置１０２Ｃの間の無線通信チャネルを提供し、第３の動き検出領域１１０が、第１の無線通信装置１０２Ａと第２の無線通信装置１０２Ｂの間の無線通信チャネルを提供する。いくつかの動作態様では、（ネットワークトラフィックのための無線通信チャネルとは別の、又は共通の）無線通信チャネル上で送信された無線信号を使用して空間内の物体の動きを検出する。これらの物体は、あらゆるタイプの静止物体又は可動物体とすることができ、生物又は無生物とすることができる。例えば、この物体は、人間（例えば、図１に示す人物１０６）、動物、無生物、或いは別のデバイス、装置又はアセンブリ、空間の境界の全部又は一部を定める物体（例えば、壁、ドア、窓など）、又は別のタイプの物体とすることができる。いくつかの実装では、無線通信装置からの動き情報を分析して、検出された動きの位置を特定することができる。例えば、以下でさらに説明するように、無線通信装置１０２のうちの１つ（又は装置１０２に通信可能に結合された別の装置）は、検出された動きが特定の無線通信装置に近接していると判断することができる。
【００２５】
図２Ａ及び図２Ｂは、無線通信装置２０４Ａ、２０４Ｂ、２０４Ｃ間で通信される無線信号例を示す図である。無線通信装置２０４Ａ、２０４Ｂ、２０４Ｃは、例えば図１に示す無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃ、又は他のタイプの無線通信装置とすることができる。無線通信装置例２０４Ａ、２０４Ｂ、２０４Ｃは、空間２００を通じて無線信号を送信する。空間例２００は、空間２００の１又は２以上の境界が完全に又は部分的に取り囲まれたものとすることも、或いは開放されたものとすることもできる。空間２００は、部屋、複数の部屋、建物、屋内領域又は屋外領域などの内部とすることができ、又はこれらを含むことができる。図示の例では、第１の壁２０２Ａ、第２の壁２０２Ｂ及び第３の壁２０２Ｃが、空間２００を少なくとも部分的に取り囲む。
【００２６】
図２Ａ及び図２Ｂに示す例では、第１の無線通信装置２０４Ａが無線動き探査信号を（例えば、周期的に、断続的に、計画的に、非計画的に、又は不定期に、など）繰り返し送信する。第２及び第３の無線通信装置２０４Ｂ、２０４Ｃは、無線通信装置２０４Ａによって送信された動き探査信号に基づく信号を受信する。動き探査信号は、上述したようにフォーマットすることができる。例えば、いくつかの実装では、動き探査信号が、チャネルサウンディング（例えば、ＩＥＥＥ  ８０２．１１ａｃ−２０１３標準に従うビームフォーミングのためのチャネルサウンディング）において使用される標準的なパイロット信号を含む標準的なシグナリング又は通信フレームを含む。無線通信装置２０４Ｂ、２０４Ｃの各々は、受け取った動き検出信号を処理して空間２００内の物体の動きを検出するように構成されたモデム、プロセッサ、又はその他のコンポーネントを有する。
【００２７】
図示のように、図２Ａでは物体が第１の位置２１４Ａに存在し、図２Ｂでは物体が第２の位置２１４Ｂに移動している。図２Ａ及び図２Ｂでは、空間２００内の移動物体を人間として示しているが、移動物体は別のタイプの物体とすることもできる。例えば、移動物体は、動物、無生物（例えば、システム、デバイス、装置又はアセンブリ）、空間２００の境界の全部又は一部を定める物体（例えば、壁、ドア、窓など）、又は別のタイプの物体とすることができる。
【００２８】
図２Ａ及び図２Ｂには、第１の無線通信装置２０４Ａから送信された無線信号の複数の経路例を破線で示す。第１の信号経路２１６に沿った無線信号は、第１の無線通信装置２０４Ａから送信され、第１の壁２０２Ａから第２の無線通信装置２０４Ｂに向かって反射する。第２の信号経路２１８に沿った無線信号は、第１の無線通信装置２０４Ａから送信され、第２の壁２０２Ｂ及び第１の壁２０２Ａから第３の無線通信装置２０４Ｃに向かって反射する。第３の信号経路２２０に沿った無線信号は、第１の無線通信装置２０４Ａから送信され、第２の壁２０２Ｂから第３の無線通信装置２０４Ｃに向って反射する。第４の信号経路２２０に沿った無線信号は、第１の無線通信装置２０４Ａから送信され、第３の壁２０２Ｃから第２の無線通信装置２０４Ｂに向かって反射する。
【００２９】
図２Ａでは、第５の信号経路２２４Ａに沿った無線信号が第１の無線通信装置２０４Ａから送信され、第１の位置２１４Ａの物体から第３の無線通信装置２０４Ｃに向かって反射する。物体の表面は、図２Ａと図２Ｂとの間で空間２００内の第１の位置２１４Ａから（例えば、第１の位置２１４Ａから一定距離だけ離れた）第２の位置２１４Ｂに移動している。図２Ｂでは、第６の信号経路２２４Ｂに沿った無線信号が第１の無線通信装置２０４Ａから送信され、第２の位置２１４Ｂの物体から第３の無線通信装置２０４Ｃに向かって反射する。図２Ｂに示す第６の信号経路２２４Ｂは、物体が第１の位置２１４Ａから第２の位置２１４Ｂに移動したことによって図２Ａに示す第５の信号経路２２４Ａよりも長い。いくつかの例では、空間内の物体の動きに起因して、信号経路を追加、削除又は別様に修正することもできる。
【００３０】
図２Ａ及び図２Ｂに示す無線信号例は、それぞれの経路を通じて減衰、周波数シフト、位相シフト又はその他の影響を受け、例えば壁２０２Ａ、２０２Ｂ及び２０２Ｃを通じて別の方向に伝播する部分を有することができる。いくつかの例では、無線信号が無線周波数（ＲＦ）信号である。無線信号は、他のタイプの信号を含むこともできる。
【００３１】
図２Ａ及び図２Ｂに示す例では、第１の無線通信装置２０４Ａが無線信号を繰り返し送信することができる。具体的に言えば、図２Ａには、第１の時点に第１の無線通信装置２０４Ａから無線信号が送信される様子を示し、図２Ｂには、その後の第２の時点に第１の無線通信装置２０４Ａから同じ無線信号が送信される様子を示す。送信信号は、連続的に、周期的に、不定期に、又は断続的に、或いはこれらの組み合わせなどで送信することができる。送信信号は、１つの周波数帯域幅内に複数の周波数成分を有することができる。送信信号は、第１の無線通信装置２０４Ａから全方向的に、指向的に、又は別様に送信することができる。図示の例では、無線信号が空間２００内の複数のそれぞれの経路をたどり、各経路に沿った信号が経路損失、散乱又は反射などによって減衰し、位相又は周波数オフセットを有することができる。
【００３２】
図２Ａ及び図２Ｂに示すように、様々な経路２１６、２１８、２２０、２２２、２２４Ａ及び２２４Ｂからの信号は、第３の無線通信装置２０４Ｃ及び第２の無線通信装置２０４Ｂにおいて組み合わさって受信信号を形成する。空間２００内の複数の経路が送信信号に影響するため、空間２００は、送信信号が入力されて受信信号が出力される伝達関数（例えば、フィルタ）として表すことができる。空間２００内で物体が動くと、信号経路内の信号に影響を与えていた減衰又は位相オフセットが変化し、従って空間２００の伝達関数が変化することができる。第１の無線通信装置２０４Ａから同じ無線信号が送信されると仮定すると、空間２００の伝達関数が変化すれば、この伝達関数の出力である受信信号も変化する。この受信信号の変化を使用して物体の動きを検出することができる。
【００３３】
数学的には、第１の無線通信装置２０４Ａから送信される送信信号ｆ（ｔ）は以下の式（１）に従って表すことができ、
【数１】
2021524111.tif 000003
ここでのωnは、送信信号のｎ番目の周波数成分の周波数を表し、Ｃnは、ｎ番目の周波数成分の複素係数を表し、ｔは時間を表す。送信信号ｆ（ｔ）が第１の無線通信装置２０４Ａから送信されている場合、経路ｋからの出力信号ｒk（ｔ）は以下の式（２）に従って表すことができ、
【数２】
2021524111.tif 000004
ここでのαn,kは、経路ｋに沿ったｎ番目の周波数成分の減衰係数（例えば、散乱、反射及び経路損失などに起因するチャネル応答）を表し、φn,kは、経路ｋに沿ったｎ番目の周波数成分の信号の位相を表す。この時、無線通信装置における受信信号Ｒは、無線通信装置への全ての経路からの全ての出力信号ｒk（ｔ）の総和として以下の式（３）に示すように表すことができる。
【数３】
2021524111.tif 000005
式（２）を式（３）に代入すると、以下の式（４）が得られる。
【数４】
2021524111.tif 000006
【００３４】
次に、無線通信装置における受信信号Ｒを分析することができる。無線通信装置における受信信号Ｒは、例えば高速フーリエ変換（ＦＦＴ）又は別のタイプのアルゴリズムを使用して周波数領域に変換することができる。この変換信号は、（ｎ個の周波数ωnにおける）それぞれの周波数成分の各々に１つの値が対応する一連のｎ個の複素数値としての受信信号Ｒを表すことができる。送信信号の第ｎの周波数成分の周波数ωnについては、複素値Ｙnを以下の式（５）のように表すことができる。
【数５】
2021524111.tif 000007
【００３５】
所与の周波数成分ωnの複素数値Ｙnは、その周波数成分ωnにおける受信信号の相対的大きさ及び位相オフセットを示す。物体が空間内で移動すると、空間変化のチャネル応答αn,kに起因して複素数値Ｙnが変化する。従って、検出されたチャネル応答の変化（従って複素数値Ｙn）は、通信チャネル内における物体の動きを示すことができる。従って、いくつかの実装では、無線メッシュネットワーク内の複数の装置の各々の複素数値Ｙnを分析して、送信信号ｆ（ｔ）が横切った空間内で動きが発生したかどうかを検出することができる。
【００３６】
図３は、動き検出トレーニングシステム例３００を示す図である。動き検出トレーニングシステム例３００は、データ収集システム３２０と、動き検出トレーナ３４０と、ニューラルネットワーク３５０とを含む。いくつかの例では、動き検出トレーニングシステム３００が、教師ありトレーニング中に使用されるように構成される。例えば、上述したように、動き検出トレーニングシステム３００は、ユーザが空間を通じて動き又はジェスチャを行い、又は場合によっては空間内で静止している教師ありトレーニング期間にわたり、図２Ａ及び図２Ｂに示すようにネットワークの装置１０２Ａ、１０２Ｂ、１０２Ｃのいずれかからのチャネル情報３１０Ａを入力として収集又は受信することができる。動き検出トレーニングシステム３００は、教師ありトレーニング期間中のユーザ入力に基づいて収集された、時間ラベル、動きタイプラベル及び動きゾーン（又は位置）ラベルなどの動き状態情報を含むデータラベル３１０Ｂを入力として収集又は受信することもできる。データラベル３１０Ｂは、関連する無線チャネル情報３１０Ａと共に又は別個に受け取ることができるように、ユーザによる入力時又はその後の時点のいずれかにおいて動き検出トレーニングシステムに提供することができる。動き検出トレーニングシステム３００は、例えばタイムスタンプ又はその他の情報に基づいて、データラベル３１０Ｂを無線チャネル情報３１０Ａに相関させることができる。動き検出トレーニングシステム３００は、教師ありトレーニング期間中に収集されたセンサデータ３１０Ｃを入力として収集又は受信することもできる。いくつかの例では、センサデータ３１０Ｃを、関連する無線チャネル情報３１０Ａ及び／又はデータラベル３１０Ｂと共に又は別個に受け取ることができるように、収集時又はその後の時点のいずれかにおいて動き検出トレーニングシステム３００に提供することができる。いくつかの例では、これらのチャネル情報、ラベル及びセンサデータを、測定されたトレーニングデータセットとして提供することができる。いくつかの例では、センサデータ３１０Ｃを使用して、教師ありトレーニングプロセス中にユーザによって提供されたラベル３１０Ｂを増強又は補正することができる。いくつかの実装では、チャネル情報３１０Ａ、ラベル３１０Ｂ及びセンサデータ３１０Ｃが、動き検出トレーニングシステム３００のデータ収集システム３２０によって収集され、又はデータ収集システム３２０に提供される。いくつかの例では、データ収集システム３２０が、トレーニングデータ（チャネル情報３１０Ａ、ラベル３１０Ｂ、センサデータ３１０Ｃ）を分析してタグ付きチャネル情報データ３３０を生成する。例えば、チャネル情報３１０Ａに、教師ありトレーニング中にユーザによって提供された対応するデータラベル３１０Ｂをタグ付け又はマーキングしてタグ付きチャネル情報データ３３０を作成することができる。いくつかの例では、データ収集システム３２０が、センサデータ３１０Ｃを使用して、ユーザが誤って入力した可能性のあるデータラベル３１０Ｂを補正又は増強することができる。データ収集システム３２０は、この「グラウンドトゥルース」データラベルの補正又は増強後に、補正されたラベル又は増強されたデータをチャネル情報にタグ付けしてタグ付きチャネル情報データ３３０を生成することができる。データ収集システム３２０は、タグ付きチャネル情報データ３３０を動き検出トレーナ３４０に提供する。さらなるセンサデータ３１０Ｃを考慮した場合には、タグ付きチャネル情報データ３３０がより正確な動きの指標となり得るので、動き検出トレーナ３４０は、空間内の動きタイプを検出するようにニューラルネットワーク３５０をトレーニングするためのより信頼性の高い情報を有する。
【００３７】
いくつかの例では、動き検出トレーナ３４０及びニューラルネットワーク３５０が機械学習システム（例えば、ＧＯＯＧＬＥ  ＣＬＯＵＤ  ＭＬプラットフォーム又は別のタイプの既存の機械学習システム）を表す。例えば、タグ付きチャネル情報データ３３０は、ニューラルネットワークに通されると、データ収集システム３２０によって提供されたチャネル情報及びタグ（及び潜在的にその他の情報）に基づいて特徴的パターン（ｄｉｓｔｉｎｃｔ  ｐａｔｔｅｒｎｓ）を学習することができる。機械学習システムは、さらなる又は異なるコンポーネントを含むこともでき、別の方法で動作することもできる。
【００３８】
いくつかの実装では、ニューラルネットワーク３５０が、畳み込みニューラルネットワーク、又は複数の層に編成された複数のノードを含む別のタイプのニューラルネットワークを含む。例えば、ニューラルネットワーク３５０は、複数の畳み込み層と、少なくとも１つの畳み込み層の後の最大プーリング層（ｍａｘ−ｐｏｏｌｉｎｇ  ｌａｙｅｒ）と、最大プーリング層の後の平坦化層（ｆｌａｔｔｅｎｉｎｇ  ｌａｙｅｒ）と、平坦化層の後の複数の緻密（全結合）層（ｄｅｎｓｅ（ｆｕｌｌｙ−ｃｏｎｎｅｃｔｅｄ）ｌａｙｅｒｓ）とを含むことができる。
【００３９】
図３に示す例では、動き検出トレーナ３４０が、（例えば、ニューラルネットワーク３５０を使用してタグなしニューラルネットワーク入力データに基づいて動きを検出できるように）タグ付きチャネル情報データセット３３０を処理してニューラルネットワーク３５０のノードをパラメータ化する。例えば、いくつかの例では、動き検出トレーナ３４０が、コスト関数最小化演算（ｃｏｓｔ  ｆｕｎｃｔｉｏｎ  ｍｉｎｉｍｉｚａｔｉｏｎ  ｏｐｅｒａｔｉｏｎ）に従ってニューラルネットワークの各ノードの重み及びバイアスを決定することができ、層内の各ノードが、決定された重みに従ってその入力に重み及びバイアスを適用することができる。例えば、ノードは、以下の式に従って出力を提供することができ、
【数６】
2021524111.tif 000008
ここでのａi+1は、ノードの出力を示し、ｂは、ノードが提供するバイアスを示し、ｗi,jは、前の層ａi,jのノードからの出力に適用される重みを示す。最小化すべきコスト関数は以下を含むことができ、
【数７】
2021524111.tif 000009
【数８】
2021524111.tif 000010
ここでのｘiは、層Ｌのニューロンｊへのｉ番目のタグ付き入力である。方程式（１５，ａ）は、シグモイド活性化（ｓｉｇｍｏｉｄ  ａｃｔｉｖａｔｉｏｎ）のためのコスト関数であり、方程式（１５，ｂ）は、ソフトマックス活性化（ｓｏｆｔ−ｍａｘ  ａｃｔｉｖａｔｉｏｎ）のためのコスト関数である。方程式（１５，ｂ）では、ノードの出力が理論的出力に一致するかどうかについてのバイナリ結果が波括弧によって定められ、結果が一致すると１が出力され、そうでなければゼロ（０）が出力される。
【００４０】
コスト関数Ｃは、降下法（ｄｅｃｅｎｔ  ｍｅｔｈｏｄｏｌｏｇｙ）の勾配を使用して最小化することができる。例えば、降下の勾配は、
【数９】
2021524111.tif 000011
及び、
【数１０】
2021524111.tif 000012
とすることができ、ここでのσ（ｚ）は、以下のシグモイド関数又は正規化線形ユニット（ＲｅＬＵ：Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）を表す。
【数１１】
2021524111.tif 000013
【数１２】
2021524111.tif 000014
いくつかの例では、降下ベースのトレーニングの勾配の反復後に重みを初期化して正規分布を有することができる。いくつかの実装では、動き検出トレーナ３４０がタグ付き入力データを処理して、現在の重みセットに基づいて出力値を決定することができる。その後、入力データに関連するタグを逆伝播誤差（ｂａｃｋ  ｐｒｏｐａｇａｔｅ  ｅｒｒｏｒ）への出力値と併用し、上記の方程式に従って降下の勾配を計算することができる。
【００４１】
タグ付きチャネル情報データ３３０を使用してニューラルネットワーク３５０をトレーニングした後に、新たに収集されたデータ（例えば、無線通信装置によって伝えられた信号に基づいて新たに収集された又は「タグなし」チャネル情報）をニューラルネットワーク３５０に入力して、空間内で動きが発生したかどうかを検出することができる。例えば、トレーニングされたニューラルネットワーク３５０をコンピュータ実装型の動き検出システムで使用して、（センサデータ又はユーザ入力に基づくラベルを使用せずに）チャネル情報に基づいて動き及び動きの特性を検出することができる。ニューラルネットワーク３５０は、動き検出システムにおける使用中又は使用後に再トレーニングし、又は別様に修正することもできる。例えば、動き検出システムは、ニューラルネットワーク３５０の性能を維持又は改善するために、タグ付きチャネル情報データ３３０のさらなるサンプルを取得することができる。いくつかの例では、動き検出システムが、図３に示すニューラルネットワーク例３５０以外のコンピュータ実装プロセスなどの別のタイプのトレーニングされたシステムを使用して動きを検出することもできる。
【００４２】
図４Ａ〜図４Ｂは、動き検出システム内のユーザ及びセンサデバイスからの動き検出トレーニング情報の収集例を示す図である。例えば、図４Ａの例には、空間４１０の動き検出システムの教師ありトレーニング中における、モバイル装置４２０及びセンサデバイス４３０を有するユーザを示す。モバイル装置４２０は、いずれかのタイプのユーザ装置、移動局、携帯電話機、スマートフォン、スマートウォッチ、セルフォン、タブレット、ラップトップ、ＶＯＩＰ電話又はハンドセット、或いは無線通信ネットワーク内のネットワークノードとの間でデータ及び／又は信号を無線で送受信することができる、動き検出トレーニングアプリケーションにユーザ入力を提供するためのディスプレイ又はその他のコンポーネントを含む他のいずれかのモバイル装置とすることができる。センサデバイス４３０は、ユーザの手首に装着されたウェアラブル装置に含めることも、或いは他のいずれかのタイプのウェアラブルセンサデバイス４３０として、ユーザの他のいずれかの身体部分にいずれかの方法で装着することもできる。センサデバイスは、例えば加速度計、ジャイロスコープ、コンパス、歩数計、気圧計、或いはユーザの動き又は移動とのデータ結合（ｄａｔａ  ａｓｓｏｃｉａｔｉｏｎ）を収集する他のいずれかのタイプのセンサデバイスとすることができ、又はこれらを含むことができる。いくつかの例では、センサデバイスを、教師ありトレーニング中にユーザが利用するモバイル装置４２０に含めることができる。
【００４３】
図４Ａに示すように、空間４１０は、ユーザの位置を示すように個別の領域に分割される。この例では、空間４１０内のユーザの位置がＡ−Ａで示す領域内に存在し、図４Ｂでは、空間４１０内のユーザの位置がＢ−Ｂで示す領域内に存在する。空間の周囲には無線通信装置２０４Ａ、２０４Ｂ、２０４Ｃが位置して、図２Ａ及び図２Ｂに示すように空間を通じて無線通信信号を送信してチャネル情報を測定する。チャネル情報測定は、教師ありトレーニング期間に基づいて図３で説明したようにさらに分析すべきユーザ入力及びセンサデータの収集に時間的に対応することができる。１つの事例では、ユーザが、ユーザの動きに対応してこの動きを表すことができるラベル３１０Ｂなどのデータラベルを生成するために使用される入力を（例えば、モバイル装置４３０上のアプリケーション内に）提供することができる。例えば、ユーザには、空間４１０内のユーザの動き又はジェスチャに関連する「動き」情報を提供するように指示することができる。この場合、ユーザは、モバイル装置４３０のユーザインターフェイスを通じて、ユーザが動きを開始した時点の指標、ユーザの動きの状態（例えば、移動）の指標、空間４１０内のユーザの位置（例えば、ゾーンＢ−Ｂ）の指標、又は動き検出に関連する他のいずれかの情報を示すことができる。いくつかの例では、この位置を、フォーマットされたＧＰＳ座標、部屋の位置（例えば、キッチン、リビング）、又は動き検出トレーニングシステム３００が識別できるユーザの位置の他の指標とすることができる。別の例では、同じ教師ありトレーニング期間内の別の時点に、ユーザが静止していることに関連する「動きなし」情報を収集するようにユーザに指示することができる。この場合、ユーザは、ユーザが動きを開始した時点（又は動きの欠如）の指標、ユーザの動き又はジェスチャ（例えば、静止）の指標、空間４１０内のユーザの位置（例えば、ゾーンＡ−Ａ）の指標などの同様の情報を提供することができる。ユーザが動き又はジェスチャを行っているのと同時に、センサデバイス４３０も、ユーザの動きに基づいて動き情報を収集することができる。いくつかの例では、センサデバイス４３０が、例えば動きの方向、ユーザが歩いた歩数などの、ユーザがデータラベル３１０Ｂにおいて提供していないセンサデータ３１０Ｃなどの追加情報を提供することができる。いくつかの例では、モバイル装置４２０へのユーザ入力に基づくラベル３１０Ｂなどの情報と、センサデバイス４３０によって収集されたセンサデータ３１０Ｃなどのデータとの間に不一致（例えば、矛盾）が存在する。これらのデータラベル３１０Ｂ及びセンサデータ３１０Ｃを図３の動き検出トレーニングシステム３００に提供し、図２Ａ及び図２Ｂで説明したように収集されたチャネル情報３１０Ａと共に分析して不一致を検出し、「グラウンドトゥルース」ラベルを補正又は増強し、タグ付きチャネル情報データを生成する。
【００４４】
図５は、無線通信システムにおいてトレーニング情報を収集するプロセス例を示すシーケンス図である。この図５のシーケンス図は、後で図３に示す動き検出トレーニングシステム３００に提供される、図４Ａ及び図４Ｂに示すようなモバイル装置４２０及びセンサデバイス４３０による動き検出トレーニングの収集例に対応する。
【００４５】
モバイル装置４２０は、図４Ａに示すデータ収集に対応する５１０において、教師ありトレーニング期間にわたる図３のラベル３１０Ｂなどの動き状態情報を報告する。動き状態情報は、例えばタイムスタンプと、ユーザの動きのタイプを示すＭｏｔｉｏｎＴｙｐｅラベルと、ユーザの位置がどこであるかを示すＭｏｔｉｏｎＺｏｎｅラベルとを含むことができる。動き状態情報は、実行されるトレーニングのタイプに応じてさらなる又はこれより少ない情報又はラベルを含むこともできる。センサデバイス４３０も、５２０において、同じ教師ありトレーニング期間中に収集されたセンサデータ３１０Ｃなどの対応する動き状態情報を提供する。
【００４６】
図５に示すように、データ収集システム３２０などの動き検出トレーニングシステム３００は、モバイル装置４２０及びセンサデバイス４３０からデータを受け取り、教師ありトレーニング期間にわたるあらゆる矛盾又は不一致のタイプについてデータを分析する。動き検出トレーニングシステム３００は、５３０において、ユーザによってモバイル装置４２０を介して提供された動きデータ情報がセンサデバイス４３０によって提供された動きデータ情報に一致すると判定する。この特定の例では、Ｔｉｍｅｓｔａｍｐ＝２：２１：３０ｐ、ＭｏｔｉｏｎＴｙｐｅが静止（例えば、ユーザが動いていないこと）を示し、ＭｏｔｉｏｎＺｏｎｅが、空間４１０内の位置がＡ，Ａ（例えば、４１０Ａ，Ａ）であることを示す。従って、モバイル装置４２０及びセンサデバイス４３０から報告された動き状態情報に基づいて「グラウンドトゥルース」ラベルを調整する必要はない。従って、動き検出トレーニングシステム３００は、５４０において、例えばＴｉｍｅｓｔａｍｐ＝２：２１：３０、ＭｏｔｉｏｎＴｙｐｅ＝Ｓｔａｔｉｏｎａｒｙ、ＭｏｔｉｏｎＺｏｎｅ＝４１０Ａ，Ａのように、チャネル情報にタイムスタンプ、動きタイプ及び動きゾーンをタグ付けする。
【００４７】
モバイル装置４２０は、図４Ｂに示すデータ収集に対応する５５０において、教師ありトレーニング期間にわたる図３のラベル３１０Ｂなどの動き状態情報を報告する。センサデバイス４３０も、５６０において、同じ教師ありトレーニング期間中に収集されたセンサデータ３１０Ｃなどの対応する動き状態情報を提供する。
【００４８】
図５に示すように、データ収集システム３２０などの動き検出トレーニングシステム３００は、モバイル装置４２０及びセンサデバイス４３０からデータを受け取り、教師ありトレーニング期間にわたるあらゆる矛盾又はその他の不一致についてデータを分析する。動き検出トレーニングシステム３００は、５８０において、ユーザによってモバイル装置４２０を介して提供された動きデータ情報とセンサデバイス４３０によって提供された動きデータ情報との間の矛盾を特定する。この例では、モバイル装置４２０及びセンサデバイス４３０が、タイムスタンプと、ユーザの動きのタイプを示すＭｏｔｉｏｎＴｙｐｅラベルと、ユーザの位置がどこであるかを示すＭｏｔｉｏｎＺｏｎｅラベルとを含む情報を提供する。この場合、モバイル装置４２０及びセンサデバイス４３０によって収集されて動き検出トレーニングシステム３００によって受け取られたタイムスタンプであるＴｉｍｅｓｔａｍｐ＝２：２５：００ｐ及びＭｏｔｉｏｎＺｏｎｅ４１０Ｂ，Ｂは同じものであり、従って矛盾していない。しかしながら、モバイル装置４２０は、ユーザが移動していない旨、例えばＭｏｔｉｏｎＴｙｐｅ＝ｓｔａｓｉｏｎａｒｙを報告したのに対し、センサデバイスは、ユーザが移動している旨、例えばＭｏｔｉｏｎＴｙｐｅ＝Ｍｏｖｉｎｇを報告している。この場合、センサデバイスによって提供された情報の方が、ユーザによって提供された情報よりも正確であるとみなすことができる。動き検出トレーニングシステム３００は、５７０において、モバイル装置４２０によって報告された動きデータ情報とセンサデバイス４３０によって報告された動きデータ情報との間の不一致を検出し、ユーザによって提供された動きタイプラベルを、例えばＭｏｔｉｏｎＴｙｐｅ＝Ｍｏｖｉｎｇなどのセンサデバイスの読み取り値に調整する。従って、動き検出トレーニングシステム３００は、５８０において、例えばＴｉｍｅｓｔａｍｐ＝２：２５：００ｐ、ＭｏｔｉｏｎＴｙｐｅ＝Ｍｏｖｉｎｇ、ＭｏｔｉｏｎＺｏｎｅ＝４１０Ａ，Ａのように、タイムスタンプ、動きタイプ及び動きゾーンを含む補正されたラベルをチャネル情報にタグ付けする。他の例では、動き検出トレーニングシステム３００が、モバイル装置４２０から受け取られた動き情報とセンサデバイス４３０から受け取られた動き情報との矛盾を別の方法で解決することを選択することができる。例えば、動き検出トレーニングシステム３００は、動き情報の完全性を維持しながら矛盾を解決できないと判定した場合、「グラウンドトゥルース」ラベルを補正するのではなく、教師ありトレーニング期間に関連する全てのデータを破棄することを選択することができる。この選択は、以前の例では動き検出トレーニングシステム３００が「動きなし」の動きタイプについてトレーニングを行っていたが、実際にはセンサデータに基づいてユーザが動いていた場合に行うことができる。この場合、ユーザが動いていたので、収集された無線チャネル情報も不正確になる。しかしながら、動き検出トレーニングシステム３００が「動きあり」動きタイプについてトレーニングを行っていたが、ユーザがうっかりして動きタイプをＭｏｔｉｏｎＴｙｐｅ＝ｓｔａｓｉｏｎａｒｙとしてラベル付けした場合には、動き検出トレーニングシステム３００が「グラウンドトゥルース」ラベルを図５の５７０に示すように補正することが適切と考えられ、従って動き検出トレーニングシステム３００は、５４０において、例えばＴｉｍｅｓｔａｍｐ＝２：２５：００、ＭｏｔｉｏｎＴｙｐｅ＝Ｍｏｖｉｎｇ、ＭｏｔｉｏｎＺｏｎｅ＝４１０Ｂ，Ｂのように、チャネル情報にタイムスタンプ、動きタイプ及び動きゾーンをタグ付けする。
【００４９】
図５で収集され報告される動き情報は、他のタイプの動き情報又はラベルを含むこともできる。例えば、モバイル装置へのユーザ入力に基づいて提供される動き情報、又はセンサデバイスから収集される動き情報は、動き検出トレーニングシステム３００が空間内の動きをより正確に識別して検出するために使用できるいずれかのタイプの情報又はデータラベルを含むことができる。いくつかの例では、動き検出トレーニングシステム３００が、新たな動きタイプ、ゾーン又は位置、動きのカテゴリ及びジェスチャを導入し、対応するタイプのデータを収集してシステムをトレーニングすることができる。
【００５０】
動き検出トレーニングシステム３００は、受け取った動きデータを他の様々なタイプの矛盾について分析することもできる。例えば、測定すべき活動が示され始めた時のタイムスタンプ間の不一致が検出されることがある。この種の状況では、センサデバイスが、ユーザによって登録されたタイムスタンプよりも前にユーザが動き始めたことを示すことがある。この例では、ユーザによる開始時間の入力が遅れたことによってセンサデータとの不一致が生じた可能性があり、データ収集システム３２０は、時間ラベルを補正することを選択することができる。別の例では、センサ４３０が、ユーザが図４Ａの空間４１０のキッチンなどの位置Ｂ−Ｂに存在していたことを示すデータを収集したのに対し、ユーザ提供ラベルは、例えばリビングなどの異なる位置Ａ−Ａを示すことがある。この例では、データ収集システム３２０が不一致を検出し、センサデータの方を採用して動きデータを補正することができる。いくつかの例では、センサデバイスが、ユーザデータ入力によって提供されていない補足情報を提供することができる。例えば、センサは、方向、速度、歩数などに関するデータを収集して提供することができ、動き検出トレーニングシステム３００は、これらのデータを使用して、ユーザ提供ラベルによって提供された動きデータを増強することができる。これらの追加情報を動き情報に追加して、対応するチャネル情報に関連するタグに使用することができる。
【００５１】
図６Ａ及び図６Ｂは、無線通信システムにおける動き検出トレーニングのプロセス例６００Ａ及び６００Ｂをそれぞれ示すフロー図である。プロセス６００Ａ及び６００Ｂの動作は、空間にサービスを提供する無線ネットワークに含まれ又は結合された装置の１又は２以上のプロセッサが実行することができる。例えば、プロセス例６００Ａ及び６００Ｂの動作は、図３のデータ収集システム例３２０、又はセンサデバイスから動き状態情報を収集して動き検出システムをトレーニングするための「グラウンドトゥルース」ラベルを作成するように構成された図１の無線通信装置例１０２のうちの１つが実行することができる。プロセス例６００Ａ及び６００Ｂは、さらなる又は異なる動作を含むこともでき、動作は、図示の順序又は別の順序で実行することもできる。いくつかの例では、図６Ａ及び図６Ｂに示す動作のうちの１つ又は２つ以上が、複数の動作を含むプロセス、サブプロセス、又は他のタイプのルーチンとして実装される。いくつかの例では、動作を組み合わせ、別の順序で実行し、並行して実行し、反復又は別様に繰り返し、或いは別の方法で実行することもできる。
【００５２】
図６Ａに示すように、６１０において、トレーニング信号に基づくチャネル情報が受け取られる。トレーニング信号は、動き検出トレーニング期間中に無線通信装置によって空間を通じて送信された無線信号を含む。例えば、図２Ａには、最初の時点に送信されるトレーニング信号を示し、図２Ｂには、動き検出トレーニング期間中のその後の時点に送信されるトレーニング信号を示す。図３に関して説明したように、各トレーニング期間のトレーニング信号に基づくチャネル情報３１０Ａなどのチャネル情報を動き検出トレーニングシステム３００に提供することができる。６２０において、動き検出トレーニング期間中における空間内のモバイル装置のユーザインターフェイスへの情報入力に基づく１又は２以上のラベルを受け取ることができる。６３０において、動き検出トレーニング期間中に空間内のセンサデバイスによって生成されたセンサデータを受け取ることもできる。例えば、図４Ａ及び図４Ｂには、動き検出トレーニング期間内の２つの異なる時点における、ユーザ入力に基づいてラベルを生成するモバイル装置４２０と、教師ありトレーニング中に動きデータを収集するセンサデバイス４３０とを示す。図３に示すように、ラベル３１０Ｂなどのデータラベル及びセンサデータ３１０Ｃなどのセンサデータが動き検出トレーニングシステム３００に提供される。センサデバイスは、加速度計、ジャイロスコープ、コンパス、歩数計及び気圧計のうちのいずれかを含むことができる。いくつかの例では、モバイル装置がセンサデバイスを含む。
【００５３】
６４０において、１又は２以上のラベル及びセンサデータを分析して、ユーザ提供ラベルと受け取られたセンサデータとの間の不一致を検出する。例えば、動き検出トレーニングシステム３００のデータ収集システム３２０は、トレーニングデータ（チャネル情報３１０Ａ、ラベル３１０Ｂ、センサデータ３１０Ｃ）を受け取り、このデータを分析して不一致を検出することができる。いくつかの例では、分析によってセンサデータがラベルに一致しないことが示された時に不一致が検出される。この場合、検出された不一致に応じて、受け取られたセンサデータに基づいてラベルを補正し、又は受け取られたセンサデータを使用してラベルを増強することができる。いくつかの例では、ラベルとセンサデータとの間の不一致が、ラベル内のタイムスタンプとセンサデータ内のタイムスタンプとの間の相違、ラベルに示される測定タイプとセンサデータ内の測定タイプとの間の相違、或いはセンサデータにおいて追加情報が提供されたがラベルでは提供されないこと、を含むことができる。ある例では、検出された不一致が、ユーザによって提供されたタイムスタンプとセンサによって提供されたタイムスタンプとの間の不一致である場合、センサのタイムスタンプを使用してグラウンドトゥルースデータを補正することができる。図５の例では、検出された不一致が、例えばＭｏｔｉｏｎＴｙｐｅ＝ｓｔａｔｉｏｎａｒｙなどのラベルに示される測定タイプと、例えばＭｏｔｉｏｎＴｙｐｅ  ｍｏｖｉｎｇなどのセンサデータにおいて検出された動きタイプとの間の不一致である。いくつかの例では、センサデータに基づいてグラウンドトゥルースラベルを補正することができ、例えば、図５ではグラウンドトゥルースラベルが補正される。いくつかの例では、不一致によってチャネル情報に誤ったタグ付けが行われた場合、このトレーニング測定に関連する全てのデータを破棄することができる。
【００５４】
６５０において、ラベル及びセンサデータの分析に基づいてタグを生成することができる。いくつかの例では、ラベル及びセンサデータの分析に基づいてタグを生成することが、ラベルのみからタグを生成する場合と比べてタグの精度を改善する。６６０において、動き検出システムをトレーニングするための入力としてチャネル情報及びタグを提供する。例えば、データ収集システム３２０は、チャネル情報にタグ付けして、例えばタグ付きチャネル情報データ３３０を形成し、これを動き検出トレーナ３４０に提供することができる。いくつかの例では、タグ付きチャネル情報データ３３０が、動き検出トレーナ３４０及びニューラルネットワーク３５０を含む機械学習システムに提供される。いくつかの例では、タグが、トレーニング期間中に空間内で動きが発生したかどうか、トレーニング期間中に空間内で発生した動きの方向、トレーニング期間中に空間内で発生した動きの位置、又はトレーニング期間中に空間内で動きが発生した時間を示すことができる。
【００５５】
図６Ｂは、１又は２以上のユーザ提供ラベル及びセンサデータを分析するプロセス例６００Ｂを示すフロー図である。６４１０において、ラベル３１０Ｂなどの１又は２以上のユーザ提供ラベルと、センサデータ３１０Ｃなどのセンサデータとの間で不一致が検出されたどうかを判定する。６４２０において、分析中に不一致が検出されなかった場合、チャネル情報に関連する１又は２以上のラベルを設定し、例えば図６Ａのステップ６５０においてチャネル情報のタグを生成する際にこのデータを使用することができる。不一致が検出された場合、６４３０において、不一致に応じて、センサデータに基づいて１又は２以上のラベルを補正又は増強する。補正又は増強後、６４２０において、チャネル情報に関連する１又は２以上のラベルを設定し、これらのラベルを使用して図６Ａのステップ６５０においてチャネル情報のタグを生成する。
【００５６】
図７は、ノード装置例７００を示すブロック図である。図７に示すように、ノード装置例７００は、データ及び／又は信号の送信及び／又は受信のためのインターフェイス７３０と、プロセッサ７１０と、メモリ７２０と、電源ユニット７４０とを含む。例えば、ノード装置７００は、図１に示す無線通信システム１００内の無線通信装置１０２Ａ、１０２Ｂ、１０２Ｃ、図３の動き検出トレーニングシステム３００のデータ収集システム３２０又はその他のサブシステム、図４Ａ〜図４Ｂのモバイル装置４２０又はセンサデバイス４３０のうちのいずれかとすることができ、これらを含むことができ、又はこれらに含めることができる。これらのタイプの装置の各々は、ノード装置７００の同じ、さらなる又は異なるコンポーネントを含むことができ、これらのコンポーネントは、図１、図３、図４Ａ〜図４Ｂに示すように又は別の方法で動作するように構成することができる。いくつかの実装では、ノード装置のインターフェイス７３０、プロセッサ７１０、メモリ７２０及び電源ユニット７４０が、共に共通ハウジング又はその他のアセンブリに収容される。いくつかの実装では、無線通信装置の１又は２以上のコンポーネントを、例えば別個のハウジング又はその他のアセンブリに別々に収容することができる。
【００５７】
インターフェイス例７３０は、無線信号又は有線信号の通信（受信、送信、又はこれらの両方）を行うことができる。例えば、インターフェイス７３０は、有線又は無線インターフェイスとして実装することも、或いは例えば他のタイプのコンポーネント又はサブシステムと共に別の方法で実装することもできる。例えば、インターフェイス７３０は、イーサネット、ファイバ、ケーブル又は他のタイプの物理媒体を通じて物理ポートを介して信号を通信するように構成されたネットワークインターフェイスとすることができる。別の例では、インターフェイス７３０を、無線通信標準（例えば、Ｗｉ-Ｆｉ又はＢｌｕｅｔｏｏｔｈ）に従ってフォーマットされた無線周波数（ＲＦ）信号を通信するように構成することができる。いくつかの例では、例えばデータ収集システム３２０などのノード装置７００のインターフェイス７３０を、図３に示すようなチャネル情報３１０Ａ、データラベル３１０Ｂ及びセンサデータ３１０Ｃを受け取るように構成することができる。いくつかの例では、ノード装置７００のインターフェイス７３０を、例えば図３に示す動き検出トレーナ３４０などの動き検出トレーニングシステム３００の別のノード装置にタグ付きチャネル情報データ３３０を提供又は送信するように構成することができる。
【００５８】
いくつかの例では、インターフェイス例７３０をモデムとして実装することができる。いくつかの実装では、インターフェイス例７３０が、無線サブシステム又はベースバンドサブシステムを含む。いくつかの例では、ベースバンドサブシステム及び無線サブシステムを、共通チップ又はチップセット上、或いはカード又は別のタイプの組み立て装置内に実装することができる。ベースバンドサブシステムは、例えばリード線、ピン、ワイヤ、又は他のタイプの接続によって無線サブシステムに結合することができる。いくつかの例では、インターフェイス７３０内の無線サブシステムが、１又は２以上のアンテナと、無線周波数回路とを含むことができる。無線周波数回路は、例えばアナログ信号をフィルタ処理、増幅又は別様に調整する回路、ベースバンド信号をＲＦ信号にアップコンバートする回路、ＲＦ信号をベースバンド信号にダウンコンバートする回路などを含むことができる。このような回路は、例えばフィルタ、増幅器、ミキサ、局部発振器などを含むことができる。無線サブシステムは、無線通信チャネル上で無線周波数無線信号を通信するように構成することができる。一例として、無線サブシステムは、無線チップと、ＲＦフロントエンドと、１又は２以上のアンテナとを含むことができる。無線サブシステムは、さらなる又は異なるコンポーネントを含むこともできる。無線サブシステムは、いくつかの実装では、例えばＷｉ−Ｆｉモデム、ピコ基地局モデムなどの従来のモデムからの無線電子機器（例えば、ＲＦフロントエンド、無線チップ又は同様のコンポーネント）とすることができ、或いはこれらを含むことができる。いくつかの実装では、アンテナが複数のアンテナを含む。
【００５９】
いくつかの例では、インターフェイス７３０内のベースバンドサブシステムが、例えばデジタルベースバンドデータを処理するように構成されたデジタル電子機器を含むことができる。一例として、ベースバンドサブシステムは、ベースバンドチップを含むことができる。ベースバンドサブシステムは、さらなる又は異なるコンポーネントを含むこともできる。いくつかの例では、ベースバンドサブシステムが、デジタルシグナルプロセッサ（ＤＳＰ）装置又は別のタイプのプロセッサ装置を含むことができる。いくつかの例では、ベースバンドシステムが、無線サブシステムを動作させ、無線サブシステムを介して無線ネットワークトラフィックを伝達し、無線サブシステムを介して受け取った動き検出信号に基づいて動きを検出し、又はその他のタイプの処理を実行するデジタル処理ロジックを含む。例えば、ベースバンドサブシステムは、信号を符号化して符号化信号を送信のために無線サブシステムに供給するように構成された、或いは無線サブシステムからの信号内に符号化されたデータを（例えば、無線通信規格に従って信号を復号することによって、動き検出処理に従って信号を処理することによって、又はその他の方法で）識別して分析するように構成された１又は２以上のチップ、チップセット又は他のタイプのデバイスを含むことができる。
【００６０】
いくつかの例では、インターフェイス例７３０内の無線サブシステムが、ベースバンドサブシステムからベースバンド信号を受信し、ベースバンド信号を無線周波数（ＲＦ）信号にアップコンバートし、（例えば、アンテナを介して）無線周波数信号を無線で送信する。いくつかの例では、インターフェイス例７３０内の無線サブシステムが、（例えば、アンテナを介して）無線周波数信号を無線で受信し、無線周波数信号をベースバンド信号にダウンコンバートし、ベースバンド信号をベースバンドサブシステムに送信する。無線サブシステムとベースバンドサブシステムとの間で交換される信号は、デジタル信号又はアナログ信号とすることができる。いくつかの例では、ベースバンドサブシステムが変換回路（例えば、デジタル−アナログ変換器、アナログ−デジタル変換器）を含み、無線サブシステムとの間でアナログ信号を交換する。いくつかの例では、無線サブシステムが変換回路（例えば、デジタル−アナログ変換器、アナログ−デジタル変換器）を含み、ベースバンドサブシステムとの間でデジタル信号を交換する。
【００６１】
いくつかの例では、インターフェイス７３０が、無線通信ネットワーク内で無線ネットワークトラフィック（例えば、データパケット）を通信するとともに、信号（例えば、動き探査信号）の送信又は受信（又は両方）を行うこともできる。いくつかの例では、インターフェイス７３０が、例えば空間を探査して動き又は動きの欠如を検出するために、動き探査信号を生成して送信する。いくつかの実装では、動き探査信号が、チャネルサウンディング（例えば、ＩＥＥＥ  ８０２．１１ａｃ−２０１３標準に従うビームフォーミングのためのチャネルサウンディング）で使用される標準的なパイロット信号を含む標準的なシグナリング又は通信フレームを含む。いくつかの例では、動き探査信号が、ネットワーク内の全ての装置に知られている基準信号を含む。いくつかの例では、インターフェイス７３０が、受信信号を処理して、例えば空間内の物体の動き、空間内の動きの欠如、或いは動きの欠如が検出された時の空間内の物体の存在又は不在を検出することができる。例えば、インターフェイス７３０は、標準的なシグナリングプロトコルの側面（例えば、生成されたステアリング又はその他のマトリクスなどに基づく、ＩＥＥＥ  ８０２．１１ａｃ−２０１３標準に従うビームフォーミングのためのチャネルサウンディング）を分析して、空間内の動きの結果としてのチャネルの変化を検出することができる。
【００６２】
プロセッサ例７１０は、例えばデータ入力に基づいて出力データを生成するための命令を実行することができる。これらの命令は、メモリ７２０に記憶されたプログラム、コード、スクリプト、モジュール、又は他のタイプのデータを含むことができる。これに加えて、又はこれとは別に、これらの命令は、予めプログラムされた又は再プログラム可能な論理回路、論理ゲート、或いは他のタイプのハードウェアコンポーネント又はファームウェアコンポーネント又はモジュールとして符号化することもできる。プロセッサ７１０は、特殊なコプロセッサ又は別のタイプのデータ処理装置としての汎用マイクロプロセッサとすることができ、又はこのような汎用マイクロプロセッサを含むことができる。いくつかの例では、プロセッサ７１０が、ノード装置７００の高水準動作を実行する。例えば、プロセッサ７１０は、メモリ７２０に記憶されたソフトウェア、スクリプト、プログラム、関数、実行ファイル又はその他のモジュールを実行又は解釈するように構成することができる。いくつかの実装では、プロセッサ７１０がインターフェイス７３０に含まれる。いくつかの例では、プロセッサ７１０が、ノード装置に図６Ａ及び図６Ｂの方法を実行させる命令を実行することができる。例えば、プロセッサ７１０は、トレーニング信号に基づくチャネル情報を受け取り、動き検出トレーニング期間中における空間内のモバイル装置のユーザインターフェイスへの情報入力に基づくラベルを受け取り、動き検出トレーニング期間中に空間内のセンサデバイスによって収集されたセンサデータを受け取り、ラベル及びセンサデータを分析してラベルとセンサデータとの間の不一致を検出し、ラベル及びセンサデータの分析に基づいてタグを生成し、動き検出システムをトレーニングするためのトレーニング入力としてチャネル情報及びタグを提供する、ことをノード装置に行わせることができる。
【００６３】
メモリ例７２０は、例えば揮発性メモリデバイス、不揮発性メモリデバイス又はこれらの両方などのコンピュータ可読記憶媒体を含むことができる。メモリ７２０は、１又は２以上のリードオンリメモリデバイス、ランダムアクセスメモリデバイス、バッファメモリデバイス、又はこれらの及びその他のタイプのメモリデバイスの組み合わせを含むことができる。いくつかの例では、メモリの１又は２以上のコンポーネントをノード装置７００の別のコンポーネントと一体化し、又は別様に関連付けることができる。メモリ７２０は、プロセッサ７１０が実行できる命令を記憶することができる。例えば、これらの命令は、図６Ａに示すプロセス例６００Ａ及び図６Ｂに示すプロセス例６００Ｂで説明したように、ラベル及びセンサデータを分析して、ラベルと受け取ったセンサデータとの間の不一致を検出し、ラベル及びセンサデータの分析に基づいてタグを生成するための命令を含むことができる。いくつかの例では、メモリ７２０が、データセットを分析してラベル及びセンサデータを分析するための命令（７２２）と、タグ付きデータを生成するための命令（７４４）とを含むことができる。いくつかの例では、メモリ７２０が、例えば動き検出システムをトレーニングし、実行し、或いは別様に動作させ又は修正するための命令などのさらなる命令を含むことができる。
【００６４】
電源ユニット例７４０は、ノード装置７００の他のコンポーネントに電力を供給する。例えば、他のコンポーネントは、電源ユニット７４０が電圧バス又はその他の接続部を介して供給する電力に基づいて動作することができる。いくつかの実装では、電源ユニット７４０が、例えば充電式バッテリなどのバッテリ又はバッテリシステムを含む。いくつかの実装では、電源ユニット７４０が、（外部信号源から）外部電力信号を受け取ってノード装置７００のコンポーネントのために調整された内部電力信号に変換するアダプタ（例えば、ＡＣアダプタ）を含む。電源ユニット７４０は、他のコンポーネントを含むことも、又は別の形で動作することもできる。
【００６５】
本明細書で説明した主題及び動作の一部は、デジタル電子回路で実装することも、或いは本明細書で開示した構造及びこれらの構造的同等物、或いはこれらの１又は２以上の組み合わせを含むコンピュータソフトウェア、ファームウェア又はハードウェアで実装することもできる。本明細書で説明した主題及び動作の一部は、１又は２以上のコンピュータプログラムとして、すなわちデータセットを分析するモジュール７２２及びタグ付きデータを生成するモジュール７２４などのデータ処理装置によって実行される、又はデータ処理装置の動作を制御する、コンピュータ記憶媒体上に符号化されたコンピュータプログラム命令の１又は２以上のモジュールとして実装することができる。コンピュータ記憶媒体は、コンピュータ可読記憶装置、コンピュータ可読記憶基板、ランダム又はシリアルアクセスメモリアレイ又はデバイス、或いはこれらのうちの１つ又は２つ以上の組み合わせとすることができ、又はこれらに含めることができる。さらに、コンピュータ記憶媒体は伝搬信号ではなく、人工的に生成された伝搬信号の形で符号化されたコンピュータプログラム命令の発信元又は宛先とすることもできる。コンピュータ記憶媒体は、１又は２以上の別個の物理的コンポーネント又は媒体（例えば、複数のＣＤ、ディスク又はその他の記憶装置）とすることができ、或いはこれらに含めることができる。
【００６６】
本明細書で説明した動作の一部は、１又は２以上のコンピュータ可読記憶装置に記憶された、又は他のソースから受け取られたデータに対してデータ処理装置が実行する動作として実装することができる。
【００６７】
「データ処理装置」という用語は、データを処理する全ての種類の装置、デバイス及び機械を含み、一例としてプログラマブルプロセッサ、コンピュータ、システムオンチップ、又は複数のシステムオンチップ、又はこれらの組み合わせを含む。この装置は、例えばＦＰＧＡ（フィールドプログラマブルゲートアレイ）又はＡＳＩＣ（特定用途向け集積回路）などの専用論理回路を含むこともできる。この装置は、ハードウェアに加えて、例えばプロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、又はこれらのうちの１つ又は２つ以上の組み合わせを構成するコードなどの、対象とするコンピュータプログラムの実行環境を形成するコードを含むこともできる。
【００６８】
（プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト又はコードとしても知られている）コンピュータプログラムは、コンパイラ型言語又はインタープリタ型言語、宣言型言語又は手続き型言語を含むあらゆる形のプログラミング言語で書くことができ、スタンドアロンプログラム、又はモジュール、コンポーネント、サブルーチン、オブジェクト、又はコンピュータ環境で使用するのに適した他のユニットとしての形を含むあらゆる形で展開することができる。コンピュータプログラムは、必須ではないが、ファイルシステム内のファイルに対応することができる。プログラムは、プログラム専用の単一のファイル内の、又は複数の連動するファイル（例えば、１又は２以上のモジュール、サブプログラム、又はコードの一部を記憶するファイル）内の、他のプログラム又はデータ（例えば、マークアップ言語リソースに記憶された１又は２以上のスクリプト）を保持するファイルの一部に記憶することができる。コンピュータプログラムは、１つのコンピュータ上で実行されるように展開することも、或いは１つのサイトに位置する、又は複数のサイトに分散して通信ネットワークによって相互接続された複数のコンピュータ上で実行されるように展開することもできる。
【００６９】
本明細書で説明したプロセス及びロジックフローの一部は、１又は２以上のコンピュータプログラムを実行する１又は２以上のプログラマブルプロセッサにより、入力データに作用して出力を生成することによって動作を行うように実行することができる。プロセス及びロジックフローは、例えばＦＰＧＡ（フィールドプログラマブルゲートアレイ）又はＡＳＩＣ（特定用途向け集積回路）などの専用論理回路によって実行することもでき、また装置をこのような専用論理回路として実装することもできる。
【００７０】
コンピュータプログラムを実行するのに適したプロセッサとしては、一例として、汎用マイクロプロセッサ及び専用マイクロプロセッサの両方、並びにあらゆる種類のデジタルコンピュータのプロセッサが挙げられる。一般に、プロセッサは、リードオンリメモリ又はランダムアクセスメモリ、或いはこれらの両方から命令及びデータを受け取る。コンピュータの要素は、命令に従って動作を実行するプロセッサと、命令及びデータを記憶する１又は２以上のメモリデバイスとを含むことができる。コンピュータは、例えば磁気ディスク、光磁気ディスク、光学ディスクなどの、データを記憶する１又は２以上の大容量記憶装置を含むこともでき、或いはこのような記憶装置との間でのデータの受け取り及びデータの転送、又はこれらの両方を行うように動作可能に結合することもできる。しかしながら、コンピュータは、このような装置を有していなくてもよい。さらに、コンピュータは、例えば電話機、電子機器、モバイルオーディオプレーヤ又はビデオプレーヤ、ゲーム機、全地球測位システム（ＧＰＳ）受信機、又はポータブル記憶装置（例えば、ユニバーサルシリアルバス（ＵＳＢ）フラッシュドライブ）などの別の装置に組み込むこともできる。コンピュータプログラム命令及びデータの記憶に適した装置としては、一例として、半導体メモリデバイス（例えば、ＥＰＲＯＭ、ＥＥＰＲＯＭ及びフラッシュメモリデバイスなど）、磁気ディスク（例えば、内部ハードディスク又はリムーバブルディスクなど）、磁気光学ディスク、並びにＣＤ  ＲＯＭ及びＤＶＤ−ＲＯＭディスクを含む全ての形態の不揮発性メモリ、媒体及びメモリデバイスが挙げられる。いくつかの例では、プロセッサ及びメモリを専用論理回路によって補完することも、又は専用論理回路に組み込むこともできる。
【００７１】
動作は、ユーザとの相互作用をもたらすために、ディスプレイ装置（例えば、モニタ、又は別のタイプのディスプレイ装置）と、ユーザがコンピュータに入力を提供できるようにするキーボード及びポインティングデバイス（例えば、マウス、トラックボール、タブレット、タッチセンサ式画面、又は別のタイプのポインティングデバイス）とを有するコンピュータ上で実行することができる。他の種類の装置を使用してユーザとの相互作用をもたらすこともでき、例えばユーザに提供されるフィードバックは、視覚的フィードバック、聴覚的フィードバック又は触覚的フィードバックなどのあらゆる形の感覚的フィードバックとすることができ、ユーザからの入力は、音響入力、音声入力又は触覚入力を含むあらゆる形で受け取ることができる。また、コンピュータは、例えばウェブブラウザから受け取られた要求に応答してユーザのクライアント装置上のウェブブラウザにウェブページを送信することなどの、ユーザが使用する装置との間で文書を送受信することによってユーザと相互作用することもできる。
【００７２】
コンピュータシステムは、単一のコンピュータ装置を含むことも、或いは互いに近接して、又は一般的には離れて動作して、通常は通信ネットワークを通じて相互作用する複数のコンピュータを含むこともできる。通信ネットワークの例としては、ローカルエリアネットワーク（「ＬＡＮ」）及びワイドエリアネットワーク（「ＷＡＮ」）、インターネットワーク（例えば、インターネット）、衛星リンクを含むネットワーク、及びピアツーピアネットワーク（例えば、アドホックピアツーピアネットワーク）が挙げられる。クライアントとサーバとの関係は、それぞれのコンピュータ上で動作して互いにクライアント−サーバの関係を有するコンピュータプログラムによって生じることができる。
【００７３】
ここで説明した実施例の一般的態様では、動き検出システムの教師ありトレーニング中に、１又は２以上のセンサによって収集されたデータを使用して、ユーザによって提供された動き状態情報を補正又は増強することができる。
【００７４】
第１の実施例では、トレーニング信号に基づくチャネル情報が受け取られる。トレーニング信号は、動き検出トレーニング期間中に無線通信装置によって空間を通じて送信された無線信号を含む。動き検出トレーニング期間中における空間内のモバイル装置のユーザインターフェイスへの情報入力に基づく１又は２以上のラベルを受け取ることができる。動き検出トレーニング期間中に空間内のセンサデバイスによって生成されたセンサデータを受け取ることもできる。１又は２以上のラベル及びセンサデータを分析して、ラベルと受け取ったセンサデータとの間の不一致を検出する。ラベル及びセンサデータの分析に基づいてタグを生成する。チャネル情報及びタグは、動き検出システムをトレーニングするための入力として提供される。いくつかの例では、タグ付きチャネル情報が機械学習システムに提供される。いくつかの例では、タグが、トレーニング期間中に空間内で動きが発生したかどうか、トレーニング期間中に空間内で発生した動きの方向、トレーニング期間中に空間内で発生した動きの位置、又はトレーニング期間中に空間内で動きが発生した時間を示すことができる。
【００７５】
第２の実施例では、コンピュータ記憶可読媒体が、データ処理装置によって実行された時に第１の実施例の１又は２以上の動作を実行する命令を記憶する。
【００７６】
第３の実施例では、モニタリングシステムが、１又は２以上のプロセッサと、１又は２以上のプロセッサによって実行された時に第１の実施例の１又は２以上の動作を実行する命令を記憶するメモリとを含む。
【００７７】
第１、第２及び第３の実施例の実装は、以下の特徴のうちの１つ又は２つ以上を含むことができる。センサデバイスは、加速度計、ジャイロスコープ、コンパス、歩数計及び気圧計のうちのいずれかを含むことができる。モバイル装置は、センサデバイスを含む。分析によってセンサデータがラベルに一致しないことが示された時に不一致が検出され、検出された不一致に応じて、受け取られたセンサデータに基づいてラベルを補正し、又は受け取られたセンサデータを使用してラベルを増強することができる。ラベルとセンサデータとの間の不一致が、ラベル内のタイムスタンプとセンサデータ内のタイムスタンプとの間の相違、ラベルに示される測定タイプとセンサデータ内の測定タイプとの間の相違、或いはセンサデータにおいて追加情報が提供されたがラベルでは提供されないこと、のうちの少なくとも１つを含むことができる。ラベル及びセンサデータの分析に基づいてタグを生成することは、ラベルのみからタグを生成する場合と比べてタグの精度を改善する。タグ付きチャネル情報が機械学習システムに提供される。タグは、トレーニング期間中に空間内で動きが発生したかどうか、トレーニング期間中に空間内で発生した動きの方向、トレーニング期間中に空間内で発生した動きの位置、又はトレーニング期間中に空間内で動きが発生した時間を示すことができる。
【００７８】
本明細書は多くの詳細を含んでいるが、これらの詳細は、特許請求できる内容の範囲に対する限定ではなく、むしろ特定の例に固有の特徴の説明として理解されたい。本明細書において別個の実装の文脈で説明し又は図面に示したいくつかの特徴は、組み合わせることもできる。これとは逆に、単一の実装の文脈で説明又は図示した様々な特徴は、複数の実施形態において単独で実装することも、或いはあらゆる好適な部分的組み合わせで実装することもできる。
【００７９】
同様に、図面には特定の順序で動作を示しているが、これについて、望ましい結果を達成するためにこのような動作を図示の特定の順序又は順番で実施し、又は図示の動作を全て実施する必要があると理解すべきではない。状況によっては、マルチタスク及び並行処理が有利な場合もある。さらに、上述した実装において様々なシステムコンポーネントを分離していても、このような分離が全ての実装において必要であると理解すべきではなく、説明したプログラムコンポーネント及びシステムを単一の製品に一般的に統合し、又は複数の製品にパッケージ化することもできると理解されたい。
【００８０】
複数の実施形態について説明した。それでもなお、様々な修正を行うことができると理解されるであろう。従って、以下の特許請求の範囲には、他の実施形態も含まれる。
【符号の説明】
【００８１】
６００Ａ  プロセス
６１０  動き検出トレーニング期間中に無線通信装置によって空間を通じて送信された無線信号を含むトレーニング信号に基づくチャネル情報を受け取る
６２０  動き検出トレーニング期間中における空間内のモバイル装置のユーザインターフェイスへの情報入力に基づくラベルを受け取る
６３０  動き検出トレーニング期間中に空間内のセンサデバイスによって生成されたセンサデータを受け取る
６４０  ラベル及びセンサデータを分析して、ラベルと受け取ったセンサデータとの間の不一致を検出
６５０  ラベル及びセンサデータの分析に基づいてタグを生成
６６０  動き検出システムをトレーニングするための入力としてチャネル情報及びタグを提供
【図１】
2021524111.tif 000015
【図２Ａ】
2021524111.tif 000016
【図２Ｂ】
2021524111.tif 000017
【図３】
2021524111.tif 000018
【図４Ａ】
2021524111.tif 000019
【図４Ｂ】
2021524111.tif 000020
【図５】
2021524111.tif 000021
【図６Ａ】
2021524111.tif 000022
【図６Ｂ】
2021524111.tif 000023
【図７】
2021524111.tif 000024
【国際調査報告】
2021524111.tif 000025
2021524111.tif 000026