(57)【特許請求の範囲】
【請求項１】
複数の特徴を計算するための順次スケジュールを決定するステップであって、前記複数の特徴の各々が、センサから受信したセンサデータに部分的に基づいて計算され、前記順次スケジュールが、前記特徴を計算するために必要な推定電力の量に少なくとも部分的に基づいて決定される、ステップと、
前記順次スケジュールに従って第1の特徴を計算するステップと、
前記順次スケジュールにおいて第2の特徴を計算する前に、終了条件を満たしているかどうかを判断するステップとを含む、方法。
【請求項２】
前記第1の特徴の前記計算が前記終了条件を満たすと判断するステップと、
前記第1の特徴の前記計算の結果に基づいて前記センサデータのサンプルを分類するステップとをさらに含む、請求項1に記載の方法。
【請求項３】
前記第1の特徴の前記計算が前記終了条件を満たすことに失敗したと判断するステップと、
前記第1の特徴が前記終了条件を満たすことに前記失敗したときに、計算のための特徴の前記順次スケジュールにおいて前記第2の特徴を計算するステップと、
前記第2の特徴の前記計算が前記終了条件を満たすと判断するステップと、
前記第1および第2の特徴の計算の結果に従って前記センサデータのサンプルを分類するステップとをさらに含む、請求項1に記載の方法。
【請求項４】
前記複数の特徴を計算するための順次スケジュールが、各特徴が明確な分類となる尤度、または前記センサデータから分類されるクラスの相対的な発生頻度のうちの1つまたは複数にさらに基づいて決定される、請求項1に記載の方法。
【請求項５】
終了条件を満たしているかどうかを判断するステップが、分類信頼度がしきい値を満たしていると判断するステップであって、前記分類信頼度が、前記センサデータのサンプルの特徴と訓練データのサンプルの特徴との間の類似性、または複数の考えられる分類の間の尤度における差のうちの1つまたは複数に基づく、ステップを含む、請求項1に記載の方法。
【請求項６】
前記第1の特徴が加速度計の平均または標準偏差であり、前記平均または標準偏差を計算するステップが静止中という分類をもたらし、前記方法が後続の運動関連の特徴計算の計算を取り消すステップをさらに含む、請求項1に記載の方法。
【請求項７】
前記第1の特徴がマイクロフォンからのオーディオエネルギーに対応するメル周波数ケプストラム係数であり、前記メル周波数ケプストラム係数を計算するステップが静寂という分類をもたらし、前記方法が後続のオーディオ関連の特徴計算の計算を取り消すステップをさらに含む、請求項1に記載の方法。
【請求項８】
前記センサデータのサンプルが、加速度計、ジャイロスコープ、磁力計、気圧センサ、温度センサ、全地球測位センサ、WiFiセンサ、ブルートゥース(登録商標)センサ、照度センサ、またはマイクロフォンのうちの1つまたは複数からのものである、請求項1に記載の方法。
【請求項９】
実行可能な命令を含む非一時的機械可読記憶媒体であって、前記実行可能な命令が、請求項1から8のいずれか一項に記載の方法をデータ処理デバイスに実行させる、非一時的機械可読記憶媒体。
【請求項１０】
複数の特徴を計算するための順次スケジュールを決定するための手段であって、前記複数の特徴の各々が、センサから受信したセンサデータに部分的に基づいて計算され、前記順次スケジュールが、前記特徴を計算するために必要な推定電力の量に少なくとも部分的に基づいて決定される、手段と、
前記順次スケジュールに従って第1の特徴を計算するための手段と、
前記順次スケジュールにおいて第2の特徴を計算する前に、終了条件を満たしているかどうかを判断するための手段とを含む、装置。
【請求項１１】
前記第1の特徴の前記計算が前記終了条件を満たすと判断するための手段と、
前記第1の特徴の前記計算の結果に基づいて前記センサデータのサンプルを分類するための手段とをさらに含む、請求項10に記載の装置。
【請求項１２】
前記第1の特徴の前記計算が前記終了条件を満たすことに失敗したと判断するための手段と、
前記第1の特徴が前記終了条件を満たすことに前記失敗したときに、計算のための特徴の前記順次スケジュールにおいて前記第2の特徴を計算するための手段と、
前記第2の特徴の前記計算が前記終了条件を満たすと判断するための手段と、
前記第1および第2の特徴の計算の結果に従って前記センサデータのサンプルを分類するための手段とをさらに含む、請求項10に記載の装置。
【請求項１３】
前記複数の特徴を計算するための順次スケジュールが、各特徴が明確な分類となる尤度、または前記センサデータから分類されるクラスの相対的な発生頻度のうちの1つまたは複数に基づいて決定される、請求項10に記載の装置。
【請求項１４】
終了条件を満たしているかどうかを判断するための手段が、分類信頼度がしきい値を満たしていると判断するための手段であって、前記分類信頼度が、前記センサデータのサンプルの特徴と訓練データのサンプルの特徴との間の類似性、または複数の考えられる分類の間の尤度における差のうちの1つまたは複数に基づく、手段を含む、請求項10に記載の装置。
【請求項１５】
前記第1の特徴が静止中という分類となる加速度計の平均または標準偏差であり、前記装置が後続の運動関連の特徴計算の計算を取り消すための手段をさらに含む、請求項10に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に開示の主題は、一般に、電力管理技法および特徴スケジューリングに関する。
【背景技術】
【０００２】
電子デバイスは、デバイスの環境についての情報をモニタし発見するために多様なセンサおよび入力を装備され得る。たとえば、デバイスに結合された加速度計が、デバイス運動の側面(aspect)を測定するために使用され得る。
【０００３】
デバイス上で作動するプログラムまたはアプリケーションは、向上したユーザエクスペリエンスを提供するために、加速度計などのセンサから受信されたデータを頻繁に使用することがあり、センサから入来するデータを頻繁に処理することがある。場合によっては、デバイスは、複数のアクティブなセンサから絶え間なく入来するデータを処理する。場合によっては、センサデータを処理するためのコードまたはプログラムが、相対的に大きい電源の量を使用することがある。デバイスのセンサデータを連続的および/または集中的に処理することが、バッテリーを消耗するまでにユーザがデバイスを使用できる時間の長さに著しい影響を及ぼすことがある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
それゆえ、新しい改良された電力効率の高いセンサデータ処理技法が望まれている。
【課題を解決するための手段】
【０００５】
本明細書に開示の実施形態は、順次的計算のために特徴をスケジュールするデバイスに関する。デバイスは、メモリと、メモリに結合されたプロセッサとを含み得る。プロセッサは、計算のために複数の特徴を順次スケジュールするように構成され得、複数の特徴の各々は、入力としてセンサデータサンプルを受信し、スケジューリングは、それぞれの各特徴の推定電力使用に少なくとも部分的に基づく。一実施形態では、第1の特徴は、計算のための特徴の順次的スケジュール内で第2の特徴を計算する前に計算され、終了条件が評価される。
【０００６】
いくつかの実施形態では、方法は、順序付けられた複数の特徴のうちの第1の特徴を計算するステップを含み、複数の特徴の各々は入力としてセンサデータサンプルを受信し、複数の特徴の順序は複数の特徴のうちの少なくとも1つの特徴に対する、推定計算電力使用に基づき、順序付けられた複数の特徴のうちの第2の特徴を計算する前に終了条件を評価する。いくつかの実施形態では、複数の特徴は、順次に順序付けられる。いくつかの実施形態では、方法は、複数の特徴のうちの特徴の各々に対して計算電力使用を推定するステップと、推定するステップに基づいて複数の特徴を順序付けるステップとをさらに含む。いくつかの実施形態では、方法は、終了条件が第1の特徴の計算結果として満たされると判断するステップと、センサデータサンプルを分類するステップとをさらに含む。いくつかの実施形態では、方法は、計算のための特徴の順次的順序における第2の特徴を計算するステップと、終了条件が第2の特徴の計算結果によって満たされると判断するステップと、センサデータサンプルを分類するステップとをさらに含む。いくつかの実施形態では、センサデータサンプルは、1つまたは複数のセンサから生じる。いくつかの実施形態では、センサは、加速度計、ジャイロスコープ、磁力計、またはマイクロフォンのうちの1つまたは複数である。いくつかの実施形態では、終了条件を評価するステップは、第1の特徴と訓練データセットとを比較するステップを含む。いくつかの実施形態では、方法は、信頼度値を計算するステップと、信頼度値がしきい値より大きいことに基づいて終了条件が満たされると判断するステップとをさらに含む。いくつかの実施形態では、複数の特徴の順序は、センサデータサンプルを分類することに対する特徴の推定された尤度にさらに基づく。いくつかの実施形態では、方法は、第1の特徴とあらかじめ計算された訓練データサンプルとを比較するステップをさらに含む。
【０００７】
いくつかの実施形態では、方法は、特徴に対して推定計算電力使用に基づいて複数の特徴のうちの1つまたは複数の特徴を順次に計算するステップを含み、複数の特徴の各々は、入力としてセンサデータサンプルを受信し、複数の特徴のうちの追加の特徴を計算する前に終了条件を評価する。いくつかの実施形態では、終了条件は、各特徴が計算された後で評価される。いくつかの実施形態では、方法は、計算された特徴に基づいてセンサデータサンプルを分類するステップをさらに含む。
【図面の簡単な説明】
【０００８】
【図１】本開示の態様が実施され得るシステムのブロック図である。
【図２】一実施形態におけるセンサと例示的な処理モジュールとを含むシステムのブロック図である。
【図３】一実施形態における順次特徴計算のフロー図である。
【図４】一実施形態における電力プロファイルモジュールによって実行され得るプロセスのフロー図である。
【図５】一実施形態における特徴空間内の3つのクラスに対する訓練データを示すチャートである。
【図６】一実施形態におけるスケジューリングモジュールによって実行され得るプロセスのフロー図である。
【図７】動作状態分類のために特徴を処理するための方法の一実施形態のフロー図である。
【図７Ｂ】動作状態分類のために特徴を処理するための方法の一実施形態のフロー図である。
【図８】音声検出のために特徴を処理するための方法の一実施形態のフロー図である。
【図９】デバイス位置を検出するために特徴を処理するための方法の一実施形態のフロー図である。
【図１０】センサデータ分類のための方法の一実施形態のフロー図である。
【発明を実施するための形態】
【０００９】
「例示的」または「例」という単語は、本明細書では「例、事例、または例示の働きをすること」を意味するために使用される。「例示的」または「例」として本明細書に記載される任意の態様または実施形態は、他の態様または実施形態に比べて好ましいか、または有利であると必ずしも解釈されるべきではない。
【００１０】
デバイスの概要
図1は、本開示の実施形態が実行され得る例示的なデータ処理システムを示すブロック図である。システムは、1つまたは複数のプロセッサ101と、メモリ105と、I/Oコントローラ125と、ネットワークインターフェース110とを含み得るデバイス(たとえば、デバイス100)であり得る。デバイス100はまた、プロセッサ101にさらに結合された1つまたは複数のバスまたは信号線に結合されたいくつかのデバイスセンサを含み得る。デバイス100はまた、ディスプレイ120、ユーザインターフェース(たとえば、キーボード、タッチスクリーン、または類似のデバイス)、電源デバイス121(たとえば、バッテリー)、ならびに電子デバイスに一般的に関連する他の構成要素を含み得ることを諒解されたい。いくつかの実施形態では、デバイス100は、モバイルデバイスであってよく、非モバイルデバイスであってもよい。ネットワークインターフェース110はまた、ワイヤレスネットワークからの/へのワイヤレスリンクを介してデータストリームを送受信するために、いくつかのワイヤレスサブシステム115(たとえば、ブルートゥース、WiFi、セルラー、または他のネットワーク)に結合されてよく、あるいはネットワーク(たとえば、インターネット、イーサーネット、または他のワイヤレスシステム)への直接接続のためのワイヤードインターフェースであってよい。したがってデバイスは、モバイルデバイス、ワイヤレスデバイス、携帯電話、携帯情報端末、モバイルコンピュータ、タブレット、パーソナルコンピュータ、ラップトップコンピュータ、または処理能力を有する任意のタイプのデバイスであり得る。
【００１１】
デバイスは、近接センサ130、照度センサ(ALS)135、加速度計140、ジャイロスコープ145、磁力計150、気圧センサ155、および/または全地球測位センサ(GPS)160などのセンサを含み得る。いくつかの実施形態では、マイクロフォン165、カメラ170、および/またはワイヤレスサブシステム115が、デバイスの環境を分析するためのセンサとして使用される。たとえば、カメラ170が外部の物体によってブロックされているかどうかを判断するためのデータを、カメラ170からの画像が提供し得、そのことが、ひいては、デバイスの場所(たとえば、ユーザのポケットまたはバッグの中)を判断することを支援し得る。
【００１２】
メモリ105は、プロセッサ101による実行用の命令を記憶するためにプロセッサ101に結合され得る。いくつかの実施形態では、メモリ105は非一時的である。メモリ105はまた、以下で説明する実施形態を実施するための1つまたは複数のモデルまたはモジュールを記憶し得る。メモリ105はまた、一体型センサまたは外部センサからのデータを記憶し得る。加えて、メモリ105は、以下でより詳細に説明するモジュール171(たとえば、電力プロファイルモジュール、スケジューリングモジュール、および分類器モジュール)にアクセスするためのアプリケーションプログラムインターフェース(API)を記憶し得る。メモリ105はまた、あらかじめ定義された特徴スケジューリング情報、訓練データサンプル、センサデータサンプル、またはクラスもしくは特徴に関する電力プロファイルを記述する構成ファイルを記憶し得る。モジュール171は、デバイス100内の他の要素とは別個に示されているが、モジュール171は、図1に示す他の要素によって、たとえばプロセッサ101および/もしくはメモリ105内、またはデバイス100の別のプロセッサおよび/もしくはメモリ内、またはデバイス100の1つまたは複数の他の要素内に、全体的または部分的に実装されてよい。モジュール171の実装に関する追加の詳細を以下で説明する。
【００１３】
以下で説明される本開示の実施形態は、デバイスのプロセッサ101および/またはデバイスの他の回路および/または他のデバイスによって、たとえばメモリ105もしくは他の要素内に記憶された命令の実行を通じて実施され得ることを諒解されたい。詳細には、デバイスの回路は、プロセッサ101を含むがこれに限定されず、プログラムの制御、ルーチン、または本開示の実施形態による方法もしくはプロセスを実行するための命令の実行の下で動作し得る。たとえば、そのようなプログラムは、(たとえば、メモリ105および/または他の位置に記憶されている)ファームウェアまたはソフトウェアに実装され得るし、プロセッサ101などのプロセッサ、および/またはデバイスの他の回路によって実装され得る。さらに、プロセッサ、マイクロプロセッサ、回路、コントローラなどの用語は、論理、コマンド、命令、ソフトウェア、ファームウェア、機能などを実行することが可能な任意のタイプの論理または回路を指すことができることを諒解されたい。
【００１４】
さらに、本明細書で説明する機能、エンジン、またはモジュールの一部または全部は、デバイス自体によって実行され得ること、ならびに/あるいは本明細書で説明する機能、エンジン、またはモジュールの一部または全部は、I/Oコントローラ125またはネットワークインターフェース110を介して(ワイヤレスにまたはワイヤードに)デバイスに接続される別のシステムによって実行され得ることを諒解されたい。したがって、機能の一部および/または全部が別のシステムによって実行されてよく、結果または中間の計算が元のデバイスに転送されてもよい。いくつかの実施形態では、そのような他のデバイスは、リアルタイムまたは準リアルタイムで情報を処理するように構成されたサーバを備え得る。いくつかの実施形態では、他のデバイスは、たとえばデバイスの知られている構成に基づいて結果をあらかじめ設定するように構成される。さらに、図1に示す要素のうちの1つまたは複数は、デバイス100から省略され得る。たとえば、センサ130〜165のうちの1つまたは複数が、いくつかの実施形態において省略され得る。
【００１５】
順次特徴計算の概要
デバイスは、デバイスの環境に関する情報を出力および/または報告するために、1つまたは複数のセンサ(たとえば、近接センサ130、ALS 135、加速度計140、ジャイロスコープ145、磁力計150、気圧センサ155、温度センサ151、GPS 160、マイクロフォン165、カメラ170、ワイヤレスサブシステム115、または他のセンサ)から受信されたデータを処理または計算し得る。デバイスは、センサデータの1つまたは複数のストリームまたはサンプルを解釈するために常時オンまたは頻繁にアクティブな分類器へのアクセスを有し得る。一実施形態では、分類器は、以下で詳細に説明する1つまたは複数のモジュールまたはエンジンとして実装される。
【００１６】
図2は、一実施形態におけるセンサ285と例示的な処理モジュール171とを含むデバイス100のサブシステムを示すブロック図である。センサ285は、近接センサ130、ALS 135、加速度計140、ジャイロスコープ145、磁力計150、気圧センサ155、温度センサ151、GPS 160、マイクロフォン165、カメラ170、ワイヤレスサブシステム115、または他のセンサのうちの任意の1つまたは複数を備え得る。モジュール171は、たとえば、専用プロセッサ、または中央処理ユニット(たとえば、プロセッサ101)を共有する実装を有するデバイス100の副構成要素としてハードウェアまたはファームウェア内に直接実装され得る。代替として、モジュールは、プロセッサによって実行されるソフトウェア内に実装されてよく、またはソフトウェアとハードウェアとの組合せによって実装されてもよい。ソフトウェアモジュールは、メモリ、たとえばメモリ105内に存在してよく、または当技術分野で知られている他の形態の記憶媒体内に存在してもよい。本明細書に開示のモジュールは、当技術分野で知られている多様な代替実装形態において実装され得る順次特徴計算の態様を遂行するための機能プロセスを代表し得ることは、当業者には認識されよう。分類器モジュール299、電力プロファイルモジュール290、およびスケジューリングモジュール295は、図2において個別に示されているが、これらのモジュールのうちの1つまたは複数の機能は組み合わされてよく、または上記とは異なる方法で区分されてもよい。たとえば、電力プロファイルモジュール290およびスケジューリングモジュール295は、いくつかの実施形態では組み合わされてもよい。同様に、分類器モジュール299およびスケジューリングモジュール295が、いくつかの実施形態では組み合わされてもよく、ならびに/あるいは分類器モジュール299および電力プロファイルモジュール290が、いくつかの実施形態では組み合わされてもよく、あるいは分類器モジュール299、電力プロファイルモジュール290およびスケジューリングモジュール295のすべてが、1つのモジュールに組み合わされても、または4つ以上のモジュールに分離されてもよい。
【００１７】
一実施形態では、電力プロファイルモジュール(たとえば、電力プロファイルモジュール290)は、特徴を計算するための推定電力使用を決定し得る。一実施形態では、スケジューリングモジュール(たとえば、スケジューリングモジュール295)は、センサデータを受信し、処理する特徴を自動的にスケジュールすることができる。一実施形態では、分類器モジュール(たとえば、分類器モジュール299)は、センサデータサンプルからの特徴を処理または計算し、分類を出力することができる。本明細書で使用するように、データサンプルは、センサ(たとえば、デバイスのセンサ285)から受信された、または出力されたデータの一部を含み得る。分類器モジュール299の出力は、アプリケーションによって使用され得る(たとえば、アプリケーション291は、デバイス100上で実行され得、実行プログラム、活動ロガー、カレンダーアプリケーション、またはセンサデータ分類を読み取るための他のソフトウェアであり得る)。アプリケーション291はデバイス100内の他の要素とは別個に示されているが、アプリケーション291は、図1に示す他の要素によって、たとえば、プロセッサ101および/またはメモリ105内、あるいはデバイス100の別のプロセッサおよび/またはメモリ内、あるいはデバイス100の1つまたは複数の他の要素内に、全体的または部分的に実装されてよい。
【００１８】
いくつかの実施形態では、ユーティリティと電力消費とのバランスをとるために、分類器モジュール299は、低電力消費モードを実施しながら、入力センサデータの正確な分類を提供することができる。一実施形態では、機能を取り除くことによって(たとえば、利用可能な特徴の数を低減することによって)電力消費を低減する代わりに、分類器モジュール299は、総合的なデバイス機能を維持しながら、特徴の処理を電力効率の高い方法でスケジュールすることができる。
【００１９】
本明細書で使用する特徴は、データ(たとえば、センサまたは他の入力からのターゲットデータセット)について実行される計算の結果または出力を指す。特徴は、データセットを分類するために使用され得る。たとえば、1つまたは複数の特徴を決定するために加速度計データについて計算が実行されると、得られた特徴は、加速度計データを分類するために(たとえば、加速度計データが走行運動が検出されたことを示す可能性が高いと判断するために)分析され得る。
【００２０】
一実施形態では、以下でより詳細に説明するように、分類器モジュール299は、スケジューリングモジュール295からデータを呼び出すかまたは受信することができる。スケジューリングモジュール295は、不要な特徴計算が低減または回避され得るように、プロセッサによって計算するための特徴を効率的にスケジュールし得る。たとえば、センサデータサンプルに関連するすべての特徴を計算する代わりに、スケジューリングモジュール295は、電力集約的計算が戦略的に低減または最小化されるように、電力効率の高い特徴計算の処理スケジュールを決定し得る。一実施形態では、スケジューリングモジュール295または分類器モジュール299は、(たとえば、電力プロファイルモジュール290から)特徴電力使用推定を受信するかまたはそれにアクセスすることができる。
【００２１】
一実施形態では、1つまたは複数の特徴が、順次に計算され得る。たとえば、特徴のセットまたはシリーズ内の各特徴は、終了条件に到達するまで1つずつ(たとえば、連続的に)計算され得る。いくつかの実施形態では、複数の特徴が、シーケンスの一定のステップまたはレベルで計算され得る。たとえば、分類器299は、特徴を計算してセンサデータサンプルを明確に分類するまで、1つまたは複数の特徴を計算し得る。一実施形態では、分類は、特徴が訓練データセットと比較され、特徴が、特定の分類と関連付けられると判断される、以前に計算された結果と略適合する(たとえば、しきい値内にある)ときに、分類が明確となる。特徴および関連する計算について、以下にさらに詳しく説明する。
【００２２】
図3は、一実施形態における順次特徴計算のフロー図を示す。ブロック305において、スケジューリングモジュール295は、特徴の推定計算電力使用の各々に少なくとも部分的に基づいて特徴をスケジュールする。いくつかの実施形態では、特徴の計算をスケジュールすることは、その特徴をスケジュールすること、またはいくつかの他の同様の用語を指すことがある。たとえば、特徴Aは、特徴Bより低い推定計算電力使用プロファイルを有するので、特徴Aは特徴Bの前にスケジュールされ得る。他の実施形態では、分類器モジュール299、または分類器モジュール299とスケジューリングモジュール295との組合せが、スケジューリングを提供し得る。特徴をスケジュールすることについては後でより詳細に説明する。
【００２３】
ブロック310において、分類器モジュール299は、特徴を計算し得る。たとえば、第1の特徴は、加速度計、たとえば加速度計140からの生データの平均および/または標準偏差、あるいはマイクロフォン、たとえばマイクロフォン165からの生データの第1のメル周波数ケプストラム係数(Mel-Frequency Cepstral Coefficient)であり得る。特徴を計算することの例について、以下でさらに詳しく説明する。
【００２４】
ブロック315において、分類器モジュール299は、計算された特徴に基づいて終了条件を評価し得る。たとえば、終了条件の評価は、信頼度値を計算することと、信頼度値がしきいの信頼度値より大きいときに終了条件が満たされたと判断することとを伴い得る。一実施形態では、しきいの信頼度値は、特徴と訓練データセットとを比較することによって決定され得る。一実施形態では、特徴が高い信頼度値の分類を与えると判断することは、分類器モジュール299が(たとえば、残りのスケジュールされた特徴の計算をスキップして)抜け出て、分類を出力することを可能にする。一実施形態では、分類器モジュール299は、高い信頼度値の分類が決定されるまで、複数の特徴を通して反復適用される。
【００２５】
センサデータ
一実施形態では、デバイスは、1つまたは複数の一体型センサまたは外部センサ(たとえば、センサ285および上述の入力のうちの1つまたは複数)からデータを読み取るかまたは受信することができる。デバイスは、I/Oコントローラ125を通して通信可能に接続された外部デバイスから(たとえば、外部カメラへのUSB接続またはWiFi接続を介して)外部センサデータを受信し得る。デバイスは、以下で説明するように、特徴計算に使用するための生のセンサデータを受信し得る。他の実施形態では、中間デバイスまたは中間プログラムが、デバイスによる特徴計算の前にセンサデータを前処理し得る。説明を容易にするために、本明細書で使用するセンサデータは、未処理データ(たとえば、加速度計、照度センサ、マイクロフォン、または他のセンサから受信されたデータ)を指す。たとえば、加速度計からのデータは、時間と、x軸に沿った加速度と、y軸に沿った加速度と、z軸に沿った加速度との属性を有し得る。しかしながら、上記で説明したように、センサデータは、いくつかの実施形態では他の形態で受信および処理されてもよい。
【００２６】
加速度計などのセンサからのデータは、特定の周波数(たとえば、サンプリングデバイスおよびデータの要件に応じて50Hz、60Hz、または他のレート)でサンプリングされ得る。一実施形態では、特徴計算は、センサからのデータのストリームまたはセットから選択された時間の瞬間、スライス、または窓の上で実行される。たとえば、デバイスは、より長いストリーム(たとえば、10秒の時間期間またはいくつかの他の時間期間)またはセンサデータのサンプルから選択された1秒の時間期間から特徴を計算し得る。たとえば、生の加速度計データは、1秒のデータが、180サンプルの正味入力サイズに対して60個のx軸、y軸およびz軸の3次元の加速度計ベクトルサンプルを与えるように、60Hzでサンプリングされ得る。
【００２７】
一実施形態では、分類器モジュール299は、センサデータサンプルを分類するために、センサデータサンプルと(たとえば、以前に計算された訓練セットからの)訓練データサンプルとを比較し得る。
【００２８】
特徴計算
一実施形態では、分類器(たとえば、分類器モジュール299)は、上記で開示したセンサデータ(たとえば、マイクロフォン、加速度計、照度センサまたは他の入力からの生データ)から1つまたは複数の特徴を計算、処理、または抽出することができる。たとえば、分類器モジュールは、加速度計から生のセンサデータ(たとえば、センサデータサンプル)を入力として受信し、平均および/または標準偏差を出力することができる。平均および/または標準偏差は、分類(たとえば、歩行中または着座中)を判断するために使用され得る。一実施形態では、特徴は、プロセッサ101によってメモリ105内で実行されたコンピュータコードによる値、出力、または結果である。例示的な特徴について、以下でより詳細に説明する。
【００２９】
電力プロファイリング
一実施形態では、電力プロファイルモジュールは、特徴が計算されている間のデバイスの電力消費を推定し得る。電力消費は、訓練データセットに基づいてあらかじめ決定され得る。たとえば、特徴Aは、デバイスが特徴Aを計算する間の電力使用を推定するために反復回数を計算され得る。この推定は、デバイス上で実行され得るかまたは別のデバイスにおいて実行され得、電力推定がデバイスに転送される。特徴の順序またはシーケンスをスケジュールするとき、電力プロファイルモジュールは、履歴もしくは平均の電力引き出し、バッテリー充電損失、または他の電力使用表示を参照し得る。電力プロファイルモジュールはまた、1つの特徴と別の特徴との推定電力使用を比較するために他の特徴を計算し得る。たとえば、電力プロファイルモジュールは、特徴Bに特有の電力使用を決定するために、特徴Bの反復回数を計算し得る。この推定は、デバイス上で実行され得るかまたは別のデバイスにおいて実行され得、電力推定がデバイスに転送される。さらに他の例では、特徴のセットまたはシリーズが、一緒にまたは並行して計算され、全セットまたは全シリーズの電力消費が記録される。
【００３０】
異なる特徴または異なる特徴のセットは、異なる処理ステップまたは異なる順序の同様の処理ステップを有し得る。デバイスは、最大の電力消費から最小の電力消費までの個別の特徴または特徴のセットの順序をランク付けし得る。一実施形態では、特徴に対する電力プロファイルは、特徴を計算するために使用されるプログラムまたはアプリケーションコードと関連付けられる。いくつかの実施形態では、電力プロファイリングは、特徴のセットまたはグループ上で実行される。たとえば、1つの特徴に対する推定電力使用をプロファイルすることの代わりに、またはそれに追加して、特徴のセットまたはグループが、並行にまたは順次に実行され、1つのセットとしてプロファイルされる(たとえば、電力プロファイルZが特徴1、2および3の電力使用と関連付けられる)。分類器モジュールまたはスケジューリングモジュールなど、他のプログラムまたはハードウェアが、電力プロファイルにアクセスできる。代替として、電力プロファイルのモジュールまたはエンジンは、デバイス、分類器モジュール、またはスケジューリングモジュール内に一体化される。
【００３１】
図4は、一実施形態における電力プロファイルモジュールによって実行され得るプロセスのフロー図を示す。ブロック405において、電力プロファイルモジュールはセンサデータを読み取り得る。
【００３２】
ブロック410において、電力プロファイルモジュールは、センサデータに基づいて特徴を計算し得る。
【００３３】
ブロック415において、電力プロファイルモジュールは、特徴を計算することに関連する電力使用を推定し、記録し得る。一実施形態では、電力プロファイルモジュールは、複数回繰り返して同じ特徴を計算し、一連の繰り返しに対する平均電力使用を記録することができる。
【００３４】
ブロック420において、電力プロファイルモジュールは、ブロック410に戻ることによって追加のまたは異なる特徴をプロファイルすべきかどうかを判断することができる。一実施形態では、特徴は、ブロック410において前に計算された初期の特徴と異なるセンサデータからのものであってもよく、または同じセンサデータからのものであってもよい。
【００３５】
ブロック425において、電力プロファイルモジュールは、特徴がプロファイリングのためにこれ以上待機していないと判断し、プロファイルされた特徴のサマリ(summary)を出力することができる。たとえば、電力プロファイルモジュールは、プロファイルされた特徴の各々と、関連する推定電力使用とを有するファイルまたはレコードを出力し得る。いくつかの実施形態では、分類器モジュールおよび/またはスケジューリングモジュールは、出力されたサマリにアクセスし、出力されたサマリ内の推定された経時的電力使用に基づいて処理するために特徴をスケジュールすることができる。
【００３６】
いくつかの実施形態では、電力プロファイルは、訓練システムまたはサーバなどの個別のデバイス上で計算され、訓練システム上の電力プロファイリングの結果は、デバイス(たとえば、携帯型デバイス)に結合された電力プロファイルモジュールによるアクセスのためにファイルまたはデータベースに保存される。それゆえ、いくつかの実施形態では、携帯型デバイスに搭載または結合された電力プロファイルモジュールは、あらかじめ規定されたまたはあらかじめ計算された電力プロファイルにアクセスし得、特徴をスケジュールする前に電力プロファイルを計算または生成する必要はない。
【００３７】
訓練データ
一実施形態では、分類器モジュールは、特徴を分類するための基線基準(baseline reference)を決定するために、訓練データを読み取り得る。たとえば、分類器モジュールは、特徴Zと、特徴Zがセンサデータサンプルを正確に分類し得るかどうかを判断するためのクラスと関連付けられた前の特徴計算とを比較し得る。
【００３８】
図5は、一実施形態における特徴空間中の例示的なクラスA(505)、B(510)、およびC(515)に対する訓練データをプロットしている。この例では、x軸520は、特徴1に対するデータポイント(たとえば、データセットから特徴1を計算した結果)を表す。y軸525は、特徴2に対するデータポイント(たとえば、データセットから特徴2を計算した結果)を表す。この例では、特徴1および2は、データポイントを、3つのクラスのうちの1つに属するものとして分類するために使用される。この例における第1の特徴は軽負荷(lightweight)(たとえば、低電力使用)であり、それによってプロセッサは、他の特徴と比較して相対的に少ない動作またはサイクルを使用して特徴1を計算し得、特徴2と比較してより低い電力消費をもたらす。第2の特徴(特徴2)は重負荷であり、より複雑なプロセッサ動作を使用するか、または実行するためにより多くのサイクルを有し、特徴1と比較して相対的に大きい電力使用を有することがある。
【００３９】
図5は、特徴1が、クラスAとクラスBおよびCとの間のデータポイントを区別するために有用であり得ることを示す。しかしながら、特徴1は、クラスBとクラスCとを正確に区別しない。したがって、分類器モジュールは、特徴1が高信頼度でクラスを判断するのに不十分であるときは特徴2を計算し得る。分類器モジュールは、最初に特徴1(軽負荷の特徴520)を計算し、特徴1がクラスを判断するのに十分な高い信頼度が存在するときは特徴2(重負荷の特徴525)を計算することをスキップすることができる。
【００４０】
一実施形態において節電がどのように達成され得るかをさらに示すために、図5は、チャート上の4つの例示的な座標を、x=4 (530)、x=-2 (535)、x=0 (550)、およびx,y=-2,4 (540)に示す。
【００４１】
第1の例530は、特徴1を計算した後の特徴の値4を示す。この第1の例530では、特徴の値4は、(x軸と値4で交差する線530で示される)特徴空間内の線としてチャートに表される。一実施形態では、最近隣分類器は、分類を判断するために訓練データサンプルと近接性とを使用する。特徴1の結果(値4)に対する最寄りのデータポイント(x軸上で4への最近接値)は、クラスA(図5におけるチャートの中央右部分に群がるデータポイントによって表される)と関連付けられるので、最近隣分類器は、データを直接に分類し、クラスA内で高信頼度を得ることができる。それゆえ、クラスAは、特徴1が4であるときは特徴2を計算することなく容易に決定され、割当てられ得る。この例では、特徴2を計算するための電力使用は節約され、デバイス電力消費は、あらゆるクラスに対してあらゆる特徴を計算するデバイスと比較して低減される。
【００４２】
第2の例535は、特徴1を計算したときに、-2の結果を示す。この第2の例では、特徴の値は、(x軸と-2で交差する線535で示される)特徴空間内の線である。この例では、特徴1の値は-2であり、したがって特徴1だけに基づく高信頼度の分類は可能性が低いと判断される。特徴1の結果(値-2)に対する最寄りのデータポイントは、クラスAよりもクラスBおよびクラスCに近いので、データを直接分類するために最近隣分類器を使用することで、クラスAにおいて低い信頼度が得られる。さらに、最近隣分類器は、クラスBまたはクラスCが最近隣であるかどうかを高信頼度で判断できないので、特徴2が、続いて計算される。この例では、特徴2が計算され、点-2,4 (540)としてチャート内に表される特徴2の値4がもたらされる。点-2,4 (540)に対する(たとえば、訓練データに基づく)最近隣はクラスBと関連付けられるので、点-2,4 (540)は、高信頼度でクラスBとして分類され得る。
【００４３】
第3の例545は、特徴1を計算する前に特徴2の値4を計算することを示す。この第3の例545では、特徴2の値4は、(y軸と値4で交差する線545で示される)特徴空間内の線としてチャートに表される。特徴2の結果(値4)に対する最寄りのデータポイント(y軸上で4への最近接値)は、クラスB(図5におけるチャートの左上部分に群がるデータポイントによって表される)と関連付けられるので、最近隣分類器は、データを直接に分類し、クラスB内で高信頼度を得ることができる。それゆえ、クラスBは、特徴1を計算することなく容易に決定され、割当てられ得る。この第3の例では、特徴1を計算するための電力は節約され、デバイス電力消費は、常に特徴2の後に特徴1を計算しなければならないデバイスと比較して低減され得る。
【００４４】
第4の例550は、特徴2を計算する前の特徴1の値0を示す。この第4の例550では、特徴1の値0は、(x軸と値0で交差する線550で示される)特徴空間内の線としてチャートに表される。この例示的な訓練セットでは、値0を有する特徴1は、さらなる特徴処理なしには高精度で分類され得ない。クラスA、B、およびCからのデータポイントはすべて、特徴1の結果に比較的近い(クラスA、B、およびCはすべて、x軸の値0の上または近くに少なくとも1つのデータポイントを有する)ので、データを直接分類するために最近隣分類器を使用することで、クラスA、B、およびCにおいて低い信頼度が得られる。最近隣分類器は、クラスA、BまたはCが特徴1だけに基づいて最近隣であるかどうかを高信頼度で判断できないので、特徴2が計算され得る。他の実施形態では、単一の特徴が分類を正確に与えることができない場合、新しいセンサデータサンプルが、時間の異なる瞬間に対して取得され、特徴が再計算され、および/または追加の特徴が、たとえば新しいセンサデータサンプルに基づいて計算され得る。新しいセンサデータサンプルは、特徴1を計算するためのデータおよび/または1つまたは複数の追加のセンサからのデータを与えたセンサと同じセンサからのデータを含み得る。いくつかの実施形態では、特徴は、次の特徴を計算する前に複数の時点に対して複数回計算され得る。他の実施形態では、特徴が正確な分類となる可能性が低いとき、すべての特徴が計算されるまで次の特徴が自動的に計算され、計算された特徴のうちの1つまたは複数に基づいて分類の最良の推定が決定され得る。
【００４５】
一実施形態では、分類が、第1の特徴計算から正確に決定され得ないとき、デバイスは、第2の特徴を計算し、両特徴または第2の特徴だけを使用して分類の決定を行うことができる。電力は、第1の特徴が正確なクラス決定を行うのに十分であり、後続の特徴計算をスキップする状況において節約される。
【００４６】
本明細書におけるいくつかの例は、2つの特徴セット内の第1の特徴をスキップまたはバイパスすることに関するが、特徴のセットまたはグループ内の任意の数の特徴が、本明細書で説明する技法を使用してスキップまたはバイパスされ得ることは、当業者には認識されよう。いくつかの実施形態では、1つまたは複数の特徴がスキップされ得るが、後続の特徴は計算され得る。たとえば、1、2、3、4、5の特徴セットが与えられると、特徴2および4がスキップされ、それによって特徴1、3、および5が計算され得、特徴2および4を計算するために必要な電力使用が節約される。別の例では、特徴1、2、および3がスキップまたはバイパスされ得、それによって特徴4および5が計算される。
【００４７】
他の実施形態では、データを分類するために訓練データを直接使用する(たとえば、上記で説明した最近隣分類器)代わりに、訓練データからあらかじめ計算されたモデルが使用され得る(たとえば、サポートベクタマシン、ニューラルネットワーク、決定木、ベイズ分類器など)。
【００４８】
特徴スケジューラ
一実施形態では、スケジューリングモジュール295は、(たとえば、処理キュー内で特徴をより早くまたはより遅く計算するために)計算のための1つまたは複数の特定の特徴の優先度または位置をスケジュールすることを調整し得る。スケジューリングモジュール295は、センサデータサンプルを分類するために特徴の処理(たとえば、計算)順序を配列し得る。スケジューリングモジュールは、特定の分類(たとえば、静止中、歩行中、ランニング中、身動き中)の間を区別するために、たとえばアプリケーションから要求を受信し得、それによって、アプリケーションは、分類関連の動作を実行し得る。この例では、スケジューリングモジュールは、ランニング中、歩行中、または他の運動に関連する特徴よりも高いスケジューリング優先度として、静止中と移動中との間を区別するための特徴を優先させ得る。
【００４９】
一実施形態では、スケジューリングモジュールは、利用可能な訓練データ、各クラスの相対的な発生頻度、および/または各特徴を計算するために必要な相対的電力の間で区別されるべき所望のクラスのうちの1つまたは複数に基づいて計算するために特徴を順序付けるかまたは配列することができる。スケジューリングモジュールは、分類器モジュールの一構成要素であってよく、または独立したモジュールまたはエンジンであってもよい。一実施形態では、スケジューリングモジュールは、並列的またはスケジュールされない実行ではなく、プロセッサによる順次的または連続的実行のために特徴をスケジュールする。
【００５０】
スケジューリングモジュールは、区別されるべき所望のクラスに基づいて、特徴を順次に順序付けることができる。たとえば、スケジューリングモジュールは、センサタイプが加速度計であると判断し、加速度計出力に基づいて、静止中、歩行中、身動き中、ランニング中の分類が判断され得る。それゆえ、複数の異なる分類が、センサが加速度計であると判断することに基づいて決定され得る。次に、スケジューリングモジュールは、異なる分類と関連付けられた特徴を決定し得る。平均および/または標準偏差が、デバイスおよびユーザが移動中であるかどうかを判断するために使用され得る。それゆえ、スケジューリングモジュールは、考えられる分類間を正確に区別することができない可能性がある他の特徴より前に標準偏差が計算されるように、特徴を順序付けることができる。同様に、決定されるべき2つの分類が、着座中と起立中だけである場合、標準偏差は2つの考えられるクラスの間の区別を与えないので、標準偏差は、第1に順序付けられない。
【００５１】
スケジューリングモジュールは、各クラスの相対的発生頻度に基づいて、特徴を順次に順序付けることができる。たとえば、スケジューリングモジュールは、歩行中が、他の分類より多く発生する分類であると判断し得る。デバイスが静止中であることが、歩行中、ランニング中、または身動き中より発生する可能性が高いとの判断に基づいて、スケジューリングモジュールは、データセットが歩行中、ランニング中、または身動き中を表すかどうかを判定することと関連付けられた特徴より先に、デバイスが静止中であるかどうかを判定することと関連付けられた特徴を(計算のために)スケジュールし得る。
【００５２】
スケジューリングモジュールはまた、経時的なまたはあらかじめ計算された訓練データセットに基づいて特徴計算をスケジュールし得る。一実施形態では、特徴スケジューラ、たとえばスケジューリングモジュールは、クラスの各々に対する相対的発生頻度を報告する確率データへのアクセスを有する。
【００５３】
たとえば、訓練データセットが、特徴1だけを用いてクラスXとクラスYとの間を区別し得ることについて高い尤度を示す一方で、特徴2が、特徴3の援助なしにクラスXとクラスYとの間を区別することはできない場合、スケジューリングモジュールは、計算に対して特徴2および特徴3より前に特徴1を優先させ得る。
【００５４】
別の例では、特徴スケジューラまたはスケジューリングモジュールは、訓練データサンプル内で他のクラス(たとえば、一人が発声中または複数の人が発声中)より高い頻度で沈黙が発生していると判断し得る。それゆえ、特徴スケジューラまたはスケジューリングモジュールは、沈黙などの高い確率のクラスと関連付けられた特徴のスケジューリングまたは計算を優先させ得る。特徴Xと特徴Yとの間の電力使用が略同じである場合、特徴スケジューラまたはスケジューリングモジュールは、高い確率のクラスと関連付けられた特徴Xが、低い確率のクラスと関連付けられた特徴Yより前に計算されるべきであると判断し得る。他の実施形態では、クラスがセンサデータサンプル内で発生する確率はまた、軽負荷の特徴より重負荷の特徴を優先させるために使用され得る。
【００５５】
図5からの上記の例を使用して、デバイスからのセンサデータサンプルは、クラスA、クラスB、またはクラスCとして分類され得る。特徴1と特徴2とを一緒に(順次にまたは並列に)計算することによって、ターゲットデータセットの正確な分類が与えられ得る。しかしながら、上記で説明したように、特徴1は軽負荷計算であり、特徴2は相対的に重負荷の計算である。それゆえ、特徴2より前の時間のある瞬間において計算するように特徴1をスケジュールすることが有利であり得る。
【００５６】
たとえば、動作状態を静止中、歩行中、身動き中、またはランニング中として分類するために、生の加速度計データを読み取るかまたは使用するとき、2つ以上の特徴が使用され得る。この例では、特徴1を計算することおよび特徴2を計算することは、それぞれ、処理電力の量(たとえば、CPUのサイクル、ワットなど)を使用する。各特徴と関連付けられた推定処理電力使用は、前に上記で説明したように、電力プロファイルモジュールおよび訓練データに基づき得る。
【００５７】
特定のクラスに対してどの特徴が正確な決定を与え得るかを判断するために、各特徴は、訓練データセットの間で計算され得、どの特徴が特定のクラスを単独で分類し得るかを判断するために分析され得る。たとえば、特徴1は、デバイスユーザが移動中であるかまたは静止中であるかを判断することが可能であり得る。一実施形態では、デバイスが静止中であると特徴1が判断する場合、静止中のデバイスは、当然のこととして歩行中、身動き中またはランニング中でないので、運動特徴はそれ以上スケジュールされない。他の実施形態では、デバイスは静止中であると特徴1が判断する場合、静止中のデバイスが手の中、ポケットの中、テーブルの中、または他の位置にあるかどうかを判断するために、デバイスの向きに関するさらなる特徴が計算され得る。
【００５８】
一実施形態では、デバイスが移動中である(たとえば、静止中ではない)と特徴1が判断する場合、デバイスが歩行中、身動き中、ランニング中であるかどうかをさらに明確にするために、追加の特徴が有用であり得る。重負荷の特徴(たとえば、特徴2)より少ない電力を使用する軽負荷の特徴(たとえば、特徴1)が、分類が決定され得るかどうかを判断するために、他の特徴から切り離して最初に計算され得る。重負荷の特徴は、最初の特徴が正確な分類を与えることができないと判断されたとき、実行を開始し得る。
【００５９】
一実施形態では、スケジューリングモジュールは、各特徴の推定計算電力使用(たとえば、上記で開示した電力プロファイリングから推定される使用)に基づいて特徴を順次に順序付けし得る。処理電力の推定レベルは、経時的な作動(historical run)またはあらかじめ計算された訓練データによって決定され得る。
【００６０】
他の実施形態では、スケジューリングモジュールは、計算のための特徴をスケジュールするために上記で開示したスケジューリング方法のうちの1つまたは複数の組合せを使用し得る。
【００６１】
さらに他の実施形態では、スケジューリングモジュールは、あらかじめ決定された特徴の順序を受信するか、またはスケジューリングモジュールが前に決定した順序を識別し、特徴の順序が受信された順序または識別された順序に従って実行されることを検証し得る。たとえば、スケジューリングモジュールは、あらかじめ配列された特徴セットを読み取り、プロセッサまたは個別のモジュール(たとえば、分類器モジュール)によって実行するための特徴を正しい順序でスケジュールすることができる。順序は、上記で説明した順序付けおよび/または技法に従って決定されている。したがって、いくつかの実施形態では、(たとえば、スケジューリングモジュール295による)スケジューリングは、本明細書で説明する原理に従って決定されている、受信された順序または前に決定された順序に従って実行のための特徴をスケジュールすることを含む。
【００６２】
図6は、一実施形態におけるスケジューリングモジュールによって実行され得るプロセスのフロー図を示す。ブロック605において、生データがセンサから読み取られ得る。たとえば、スケジューリングモジュールは、加速度計140、マイクロフォン165、照度センサ135、またはデバイス内の他のセンサからデータを読み取り得る。
【００６３】
ブロック610において、1つまたは複数の考えられる分類が、センサのタイプに基づいて決定され得る。たとえば、スケジューリングモジュールは、デバイスのユーザが歩行中かどうか、ユーザがデバイスをどのように保持しているか、デバイスのユーザが会話中であるかどうか、または他の分類であるかを決定し得る。
【００６４】
ブロック615において、ブロック610で見いだされた分類のために使用される特徴が決定され得る。たとえば、スケジューリングモジュールは、分類A、B、およびCがセンサタイプに基づいて考えられると判断し、特徴X、Y、およびZがセンサからのデータを分類し得ると判断することができる。
【００６５】
ブロック620において、電力使用データが読み取られ得る。一実施形態では、分類器モジュールまたはスケジューリングモジュールは、電力プロファイルモジュールによって生成された電力使用データを読み取るかまたはそれにアクセスすることができる。
【００６６】
ブロック625において、特徴は、処理または計算のためにスケジュールされる。たとえば、スケジューリングモジュールは、プロセッサ101によって順次に処理するために特徴X、Y、およびZを順序付けることができ、それによって特徴XがYの前に処理され、YがZの前に処理される。一実施形態では、処理順序は、処理のために分類器モジュールまたはスケジューリングモジュールに渡されるかまたは送信される。
【００６７】
動作状態
一実施形態では、デバイスは、上記で説明したように、デバイスセンサのうちの1つまたは複数からの出力を測定することによってデバイスの運動を測定し得る。センサデータは、デバイスの動作状態を判断するために使用され得る。特徴計算に使用されるデバイスセンサデータは、多様な動作状態(たとえば、静止中、歩行中、身動き中、運転中、ランニング中、等々)を判断し得る。
【００６８】
図7は、動作状態分類のために特徴をスケジュールするための方法の一実施形態のフロー図を示す。ブロック705において、加速度計の生データが、加速度計センサ(たとえば、加速度計140)から読み取られ得る。たとえば、スケジューリングモジュールまたは分類器モジュールは、生の加速度計データを読み取り得る。一実施形態では、スケジューリングモジュールまたは分類器モジュールは、加速度計が運動を検出すると、ハードウェアまたはソフトウェアの割り込みによって自動的に起動され得る。
【００６９】
ブロック710において、加速度計データから1つまたは複数の考えられる分類が判断され得る。たとえば、スケジューリングモジュールまたは分類器モジュールは、静止中、歩行中、運転中、身動き中、ランニング中の動作状態またはクラスが考えられると判断し得る。
【００７０】
ブロック715において、センサデータを分類するために使用される特徴が、順序付けられ得る。たとえば、スケジューリングモジュールまたは分類器モジュールは、加速度計の標準偏差およびデバイスの向きの一軸(ピッチ)を決定するために加速度計データを使用し得る。スケジューリングモジュールまたは分類器モジュールは、標準偏差がピッチよりも少ない電力を使用すると推定されると判断し得、プロセッサによる計算に対して標準偏差を、ピッチがスケジュールされる前にスケジュールする。
【００７１】
ブロック720において、生のセンサデータの標準偏差が計算され得る。たとえば、3D加速度計ベクトルが与えられると、分類器モジュールは、これらのノルムを計算し、これらのノルムの標準偏差を推定することができる。着座/起立および歩行などの動作状態は、加速度計の変動が変化する度合いによって識別され得るので、この特徴は、そのような動作状態の間を区別するのに有用である。
【００７２】
ブロック725において、信頼度値が、(たとえば、分類器モジュールによって)決定され得る。信頼度値がしきい値(たとえば、デバイスはユーザ選好またはデフォルト値に基づいて信頼度しきい値を設定し得る)を超える場合、分類器モジュールは決定された分類を出力するために進む。一実施形態では、信頼度値は、
【００７３】
【数１】
0006379099.tif 000002
【００７４】
のように、2つの最寄りのクラスに対する統計的尤度L1およびL2に基づいて分類器モジュールによって計算され得る。いくつかの実施形態では、分類器に対する信頼度値は、訓練データおよび評価された特徴に基づいて計算される。
【００７５】
ブロック730において、前の特徴に対する信頼度しきい値が満たされない場合、次の特徴が(たとえば、分類器モジュールによって)計算され得る。たとえば、次の特徴はピッチであってよく、または重力に対するデバイス面の向きであってもよい。この向きは、ピッチおよびロールと呼ばれる2つの角度によって特徴付けられ得る。ピッチはx軸周りの回転であり、(-π、π]の範囲で変動する。平均ピッチは、最初に加速度計ベクトルを平均化し、次に
【００７６】
【数２】
0006379099.tif 000003
【００７７】
のようにピッチを計算することによって計算され、加速度計サンプルは、a(n)=(ax(n) ay(n) az(n))であり、Nは特徴が計算される窓の中のベクトルサンプルの数(たとえば、60Hzのサンプルに対して60)である。
【００７８】
ピッチは、デバイスがズボンのポケットの中、より少ない度合いで手の中にあるときに着座中と起立中との間を区別するため、ならびに、たとえばデバイスの位置を判断するために使用され得る。
【００７９】
一実施形態では、第2のまたは追加の加速度計関連の特徴は、歩数計と関連付けられ得る。たとえば、第1の特徴(たとえば、標準偏差)は、デバイスが移動中である(すなわち、静止中ではない)と判断し得る。しかしながら、分類器モジュールは、標準偏差だけに基づいて歩行中とランニング中との間を区別することに十分な信頼度を持たない。それゆえ、軽負荷の標準偏差が、移動が検出されるものと高信頼度で判断した後、さらなる歩数計計算がセンサデータサンプル上で実行され得る。
【００８０】
一実施形態では、移動状態または非静止状態を(たとえば、加速度計からのデータに基づいて)判断すると、分類器モジュールは、何らかのステップ(たとえば、歩行中またはランニング中)が検出されたかどうかを(たとえば、歩数計分類器と関連付けられた1つまたは複数の特徴を用いて)さらに判断することができる。ステップが検出されなかった場合、分類器モジュールは、フルモーション分類器と関連付けられた1つまたは複数の特徴を用いてデータ(たとえば、加速度計センサデータ)をさらに分類し得る。フルモーション分類器は、運転運動または未知/身動き状態が高信頼度を有するかどうかを判断することができる。
【００８１】
一実施形態では、静止動作状態を判断すると、分類器モジュールは、静止状態が歩行者の静止状態であるかどうかを(たとえば、歩数計分類器と関連付けられた特徴を用いて)さらに判断し得る。
【００８２】
いくつかの実施形態では、1つまたは複数の歩数計関連の特徴を用いて、ブロック725において歩行中またはランニング中が確からしい分類である(すなわち、高信頼度を有する)と判断すると、ブロック735において歩行中またはランニング中の分類が出力され得る。
【００８３】
他の実施形態では、ブロック725において1つまたは複数の歩数計の特徴から、歩行中またはランニング中は考えにくい(すなわち、低信頼度を有する)と判断すると、図7Bに示すブロック730においてフルモーション分類器に関連する追加の特徴がスケジュールされ得る。たとえば、フルモーション分類器の特徴は、運転中または未知/身動き中の分類が適切である(すなわち、高信頼度を有する)かどうかを判断し得る。
【００８４】
一実施形態では、ブロック725において第2の特徴が信頼度しきい値を満たしていない場合、分類器モジュールは、確定された出力が決定され得るまで、追加の特徴を計算することを継続し得る。
【００８５】
ブロック735において、生のセンサデータに対する分類が、前に計算された特徴に基づいて出力され得る。たとえば、分類器モジュールは、高信頼度でデバイス動作状態が歩行中であると判断し得、その結果が、要求しているプログラムまたはアプリケーションに出力または送信され得る。
【００８６】
いくつかの実施形態では、加速度計の標準偏差が高信頼度でデバイスが静止中である(たとえば、移動中ではない)ことを示すとき、すべての後続のスケジュールされた特徴が、自動的に取り消されるかまたは停止される。たとえば、デバイスが静止中であることを加速度計が検出する場合、ユーザおよびデバイスが歩行中、運転中、または身動き中であるかどうかを判断するためのさらなる計算は不要となり得る。いくつかの実施形態では、追加の運動ベースのセンサ(たとえば、ジャイロスコープ、GPS、その他)関連の特徴はまた、静止中という分類が加速度計または他の第1のセンサによって判断されるとき、取り消され得るかまたは未計算のままにされ得る。
【００８７】
他の実施形態では、加速度計の第1の特徴が、高信頼度でデバイスが静止中であると判断し得るとき、それにもかかわらず、デバイス配置(たとえば、ポケットの中、手の中、テーブルの上、または他の位置)を計算するために、さらなる特徴計算が計算されることがある。一実施形態では、特徴の計算および分類を要求するアプリケーションまたはプログラムが、静止中という分類に収まらないさらなる分類を要求することがある。
【００８８】
他の特徴が、本明細書で説明する電力効率の高い方法で計算され、スケジュールされ得ること、および標準偏差およびピッチは、一実施形態を示すために本明細書の一例として使用されているにすぎないことは、当業者には認識されよう。
【００８９】
音声検出
別の実施形態では、オーディオデータ(たとえば、マイクロフォン165からのデータ)が、センサデータサンプルに対する分類を判断するために使用される。
【００９０】
図8は、音声検出のために特徴をスケジュールするための方法800の一実施形態のフロー図を示す。ブロック805において、マイクロフォン(たとえば、マイクロフォン165)からの生データが、(たとえば、分類器モジュールまたはスケジューリングモジュールによって)読み取られ得る。
【００９１】
ブロック810において、マイクロフォンデータからの1つまたは複数の考えられる分類が判断され得る。たとえば、静寂、1つのスピーカからの音声、複数のスピーカからの音声などの音声状態またはクラスが、分類器モジュールまたはスケジューリングモジュールによって判断され得る。
【００９２】
ブロック815において、マイクロフォンデータを分類するために使用される特徴が、処理のために順序付けられ得る。たとえば、スケジューリングモジュールまたは分類器モジュールは、メル周波数ケプストラム係数(MFCC)が、センサデータサンプルを分類するために使用されると判断し得る。一実施形態では、13個のMFCCが音声検出のために計算されるが、異なる構成もまた考えられることは、当業者には認識されよう。第1のMFCCは、オーディオエネルギー(または音量)に対応する一方で、残りのMFCCは、1つまたは複数のスピーカからの音声があるかどうかを判断することに対応し得る。一実施形態では、特徴はサブセットに分離され、それによって特徴サブセット1が第1のMFCCを含み、特徴サブセット2がMFCC 2〜MFCC 13を含む。一実施形態では、分類器モジュールまたはスケジューリングモジュールは、サブセット1がサブセット2と比較してより低い推定計算電力使用を有すると(たとえば、電力プロファイルから)判断し、特徴サブセット1を特徴サブセット2の前にスケジュールする。サブセット1に基づいて分類してサブセット2(MFCC 2〜MFCC 13)のうちの1つまたは複数の計算を回避するとき、サブセット1をサブセット2の前に計算するようにスケジュールまたは順序付けすることで、電力節約がもたらされ得る。
【００９３】
ブロック820において、生のセンサデータの特徴サブセット1が、(たとえば、分類器モジュールによって)計算され得る。第1のMFCCは、静寂であるか、またはマイクロフォンデータからの考えられる音声が存在するかを区別するために有用であり得る。
【００９４】
ブロック825において、信頼度値が、(たとえば、分類器モジュールによって)計算され得る。信頼度値がしきい値(たとえば、デバイスまたは分類器モジュールはユーザ選好またはデフォルト値に基づいて信頼度しきい値を設定し得る)を超える場合、分類器モジュールは決定された分類を出力するために進む。一実施形態では、信頼度値は、2つの最寄りのクラスに対する統計的尤度L1およびL2に基づいて、上記で説明したように計算され得る。
【００９５】
ブロック830において、特徴サブセット1に対する信頼度しきい値を満たさなかった場合、次の特徴サブセットが、(たとえば、分類器モジュールによって)計算され得る。音声検出の場合、特徴サブセットは、計算のためのいくつかの追加のMFCC(たとえば、2〜13)のうちの1つであり得る。一実施形態では、ブロック825において次のMFCCの特徴が信頼度しきい値を満たしていない場合、分類器モジュールは、確定された出力が決定され得るまで、追加の特徴を計算することを継続し得る。
【００９６】
ブロック835において、前に計算された特徴に基づく生のセンサデータに対する分類が、出力され得る。たとえば、分類器モジュールが、高信頼度で1つのスピーカからの音声が検出されると判断する場合、その結果が、要求しているプログラムまたはアプリケーションに出力または送信される。
【００９７】
他の特徴が、本明細書で説明する電力効率の高い方法で計算され、スケジュールされ得ること、およびMFCCサブセットは、一実施形態を示すために本明細書の一例として使用されているにすぎないことは、当業者には認識されよう。
【００９８】
デバイス位置
別の実施形態では、デバイス位置データ(たとえば、加速度計140からのデータ)が、センサデータサンプルに対する分類を判断するために使用され得る。
【００９９】
図9は、デバイス位置を判断するために特徴をスケジュールするための方法900の一実施形態のフロー図を示す。ブロック905において、生データが、加速度計、たとえば加速度計140から(たとえば、分類器モジュールによって)読み取られ得る。
【０１００】
ブロック920において、生の加速度計センサデータの標準偏差が、(たとえば、分類器モジュールによって)計算され得る。
【０１０１】
ブロック925において、信頼度値が、(たとえば、分類器モジュールによって)計算され得る。標準偏差が大きく、信頼度しきい値を満たしていない場合、ブロック930において次の特徴が計算され得る。そうではなく、信頼度しきい値が満たされる(たとえば、標準偏差が小さく、デバイスが静止していることを示唆している)場合、ブロック935においてピッチおよび平均ロールが、(たとえば、分類器モジュールによって)計算され得る。
【０１０２】
ブロック930において、ブロック920で計算された標準偏差に対して、信頼度しきい値を満たさなかった場合、13個のMFCCが、(たとえば、分類器モジュールによって)計算され得る。13個のMFCCは、信号のスペクトル包絡線を特徴付け、デバイスが運動中であるときにデバイス位置を判断するために使用され得る。
【０１０３】
ブロック940において、前に計算された特徴に基づく生のセンサデータに対する分類が、(たとえば、分類器モジュールによって)出力され得る。
【０１０４】
他の特徴が、本明細書で説明する電力効率の高い方法での計算のために計算され、順序付けられ得ること、および上記で開示した特徴、センサおよび計算は、様々な実施形態を示すための数例にすぎないことは、当業者には認識されよう。他の実施形態では、複数の特徴および特徴計算の繰り返しが考えられる。
【０１０５】
さらに他の実施形態では、分類器モジュールは、分類を判断するために複数のセンサを使用し得る。複数のセンサが使用されると、センサデータは、上記で説明したように順次に活性化または処理され得、それによって電力集約的計算が戦略的に低減または最小化される。たとえば、第1の特徴が、第1のセンサからのデータの活性化および処理に基づいて計算され得る。第1のセンサデータおよび特徴計算が正確な分類を与え得る場合、他のセンサおよび関連する特徴は、バイパスされ得るかまたは未処理のままにされ得る。しかしながら、第1のセンサデータおよび特徴計算がターゲットの信頼度より低い分類を与えると判断される場合、他のセンサが追加のセンサデータを収集するために使用され得、関連する特徴が、追加のセンサデータに基づいて、および/またはいくつかの実施形態では第1のセンサデータに基づいて処理され得る。たとえば、スケジューリングモジュール295は、たとえば電力プロファイルモジュール290からの情報に基づいて、センサを利用するため、および/または測定値もしくはセンサデータを収集するための順序を決定し得る。いくつかの実施形態では、分類器モジュール299からの情報が、追加の情報を収集するかどうかおよび/またはどのセンサを使用するかを判断するために、スケジューリングモジュール295にフィードバックされ得る。
【０１０６】
図10は、特徴分類のための方法の一実施形態のフロー図を示す。ブロック1005において、スケジュールされた特徴(たとえば、加速度計からの生データの標準偏差またはマイクロフォンからの生データの第1のメル周波数ケプストラム係数)が、分類器モジュールによって計算され得る。スケジュールされた特徴は、前に説明したようにスケジュールされ得る(たとえば、電力消費に基づくスケジューリングモジュールによって、または開示した他のスケジューリングパラメータによって順次に順序付けされる)。
【０１０７】
ブロック1010において、終了条件が満たされたかどうかに関して判定が行われ得る。たとえば、ブロック1005からの特徴を計算した結果に基づいて、デバイス(または分類器モジュール)は、計算された第1の特徴に基づいて終了条件を評価し得る。たとえば、終了条件を評価するステップは、信頼度値(たとえば、上記で開示したように、信頼度は、統計的尤度、訓練データ、または他の計算に基づき得る)を計算するステップと、信頼度値がしきいの信頼度値より大きいときに終了条件が満たされたと判断するステップとを含み得る。一実施形態では、第1の特徴が高い信頼度値分類を与えると判断することは、最適化された分類器が(たとえば、残りのスケジュールされた特徴の計算をスキップして)抜け出て、分類を出力することを可能にする。
【０１０８】
ブロック1015において、信頼度しきい値を満たさなかった場合、計算すべき次の特徴が決定され得る。たとえば、分類器モジュールは、ターゲットデータを分類するために最も確からしい特徴がスケジュールされ得ると判断し得、または最も低い推定電力消費を有する特徴を決定し得る。他のスケジューリングオプションは、上記で説明されている。信頼度しきい値が満たされる場合、ブロック1020において分類が出力され得る。一実施形態では、分類器モジュールは、特徴を順次に計算し得、それによって、ひとたび特徴が信頼度しきい値を満たす結果を与えると、分類器モジュールは、残りのスケジュールされた特徴を計算することなく分類を出力し得る。たとえば、分類器モジュールは、10個の考えられる特徴のうちの2個を処理し、信頼度しきい値が満たされたと判断する前に、残りの7個の特徴計算をバイパスして分類を出力することができる。
【０１０９】
デバイスがモバイルデバイスまたはワイヤレスデバイスであるとき、それは、任意の適切なワイヤレス通信技術に基づくか、または場合によってはそれをサポートするワイヤレスネットワークにより、1つまたは複数のワイヤレス通信リンクを介して通信することができることを諒解されたい。たとえば、いくつかの態様では、コンピューティングデバイスまたはサーバは、ワイヤレスネットワークを含むネットワークと関連付けることができる。いくつかの態様では、ネットワークは、ボディエリアネットワークまたはパーソナルエリアネットワーク(たとえば、超広帯域ネットワーク)を備えることができる。いくつかの態様では、ネットワークは、ローカルエリアネットワークまたはワイドエリアネットワークを備えることができる。ワイヤレスデバイスは、たとえばCDMA、TDMA、OFDM、OFDMA、WiMAX、およびWi-Fiなどの様々なワイヤレス通信技術、プロトコル、または規格のうちの1つまたは複数をサポートするか、または場合によっては使用することができる。同様に、ワイヤレスデバイスは、様々な対応する変調または多重化方式のうちの1つまたは複数をサポートするか、または場合によっては使用することができる。モバイルワイヤレスデバイスは、他のモバイルデバイス、携帯電話、他の有線およびワイヤレスのコンピュータ、インターネットウェブサイトなどとワイヤレスに通信することができる。
【０１１０】
本明細書の教示は、様々な装置(たとえば、デバイス)に組み込む(たとえば、それらの装置内に実装するか、またはそれらの装置によって実施する)ことができる。たとえば、本明細書で教示された1つまたは複数の態様は、電話(たとえば、携帯電話)、携帯情報端末(「PDA」)、タブレット、モバイルコンピュータ、ラップトップコンピュータ、タブレット、エンターテインメントデバイス(たとえば、音楽デバイスもしくはビデオデバイス)、ヘッドセット(たとえば、ヘッドフォン、イヤピースなど)、医療用デバイス(たとえば、生体センサ、心拍数モニタ、歩数計、心電図検査(EKG)デバイスなど)、ユーザI/Oデバイス、コンピュータ、サーバ、POSデバイス、エンターテインメントデバイス、セットトップボックス、または任意の他の適切なデバイスに組み込むことができる。これらのデバイスは、異なる電力要件およびデータ要件を有し、各特徴または特徴のセットに対して生成される異なる電力プロファイルをもたらすことがある。
【０１１１】
いくつかの態様では、ワイヤレスデバイスは、通信システム用のアクセスデバイス(たとえば、Wi-Fiアクセスポイント)を備えることができる。そのようなアクセスデバイスは、たとえば、有線またはワイヤレスの通信リンクを介した、別のネットワーク(たとえば、インターネットまたはセルラーネットワークなどのワイドエリアネットワーク)への接続を提供することができる。したがって、アクセスデバイスは、別のデバイス(たとえば、Wi-Fi局)が他のネットワークまたは何らかの他の機能にアクセスすることを可能にすることができる。さらに、デバイスのうちの1つまたは両方は携帯型であるか、または場合によっては比較的非携帯型であり得ることを諒解されたい。
【０１１２】
情報および信号は、様々な異なる技術および技法のいずれかを使用して表され得ることを、当業者は理解されよう。たとえば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。
【０１１３】
本明細書で開示した実施形態に関連して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得ることが、当業者にはさらに諒解されよう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップを、上記では概してそれらの機能に関して説明した。そのような機能がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、具体的な適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明された機能を具体的な適用例ごとに様々な方法で実装することができるが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈されるべきではない。
【０１１４】
本明細書に開示される実施形態に関連して説明される様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理デバイス、個別のゲートもしくはトランジスタ論理、個別のハードウェア構成要素、または本明細書に説明される機能を実行するように設計されているそれらの任意の組合せを用いて実装または実行され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つもしくは複数のマイクロプロセッサ、または任意の他のそのような構成として実装され得る。
【０１１５】
本明細書で開示された実施形態に関して記載された方法またはアルゴリズムのステップは、直接ハードウェアで具現化されるか、プロセッサによって実行されるソフトウェアモジュールで具現化されるか、またはその2つの組合せで具現化され得る。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野で知られている任意の他の形態の記憶媒体中に存在し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、かつ記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体は、プロセッサと一体であり得る。プロセッサおよび記憶媒体はASIC内に存在することができる。ASICは、ユーザ端末内に常駐し得る。代替として、プロセッサおよび記憶媒体は、ユーザ端末中に個別構成要素として常駐し得る。
【０１１６】
1つまたは複数の例示的な実施形態では、説明される機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せにおいて実装され得る。コンピュータプログラム製品としてソフトウェアに実装された場合、機能は、1つまたは複数の命令またはコードとして、非一時的コンピュータ可読媒体上に記憶されるか、または非一時的コンピュータ可読媒体を介して送信され得る。コンピュータ可読媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、コンピュータ記憶媒体と通信媒体の両方を含み得る。記憶媒体は、コンピュータによってアクセス可能である任意の入手可能な媒体とすることができる。限定ではなく例として、そのような非一時的コンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、命令もしくはデータ構造の形態の所望のプログラムコードを搬送もしくは記憶するために使用することができ、コンピュータによってアクセス可能であり得る任意の他の媒体を含み得る。同様に、いかなる接続も適切にコンピュータ可読媒体と称される。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用する場合、ディスク(disk)およびディスク(disc)は、コンパクトディスク(CD)、レーザーディスク(登録商標)、光ディスク、デジタル多用途ディスク(DVD)、フロッピー(登録商標)ディスク、およびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生し、ディスク(disc)は、レーザーで光学的にデータを再生する。上記の組合せも非一時的コンピュータ可読媒体の範囲内に含めるべきである。
【０１１７】
開示された実施形態の上記の説明は、任意の当業者が本発明を作製または使用することを可能にするために提供される。これらの実施形態への様々な修正が当業者には容易に明らかになり、本明細書に定義された一般原理は、本発明の趣旨または範囲を逸脱することなしに他の実施形態に適用することができる。したがって、本発明は、本明細書に示す実施形態に限定されるものではなく、本明細書に開示の原理および新規の特徴に一致する最大の範囲を与えられるものである。
【符号の説明】
【０１１８】
100  デバイス
101  プロセッサ
105  メモリ
110  ネットワークインターフェース
115  ワイヤレスサブシステム
120  ディスプレイ
121  電源デバイス
125  I/Oコントローラ
130  近接センサ
135  照度センサ(ALS)
140  加速度計
145  ジャイロスコープ
150  磁力計
151  温度センサ
155  気圧センサ
160  全地球測位センサ(GPS)
165  マイクロフォン
170  カメラ
171  処理モジュール
285  センサ
290  電力プロファイルモジュール
291  アプリケーション
295  スケジューリングモジュール
299  分類器モジュール
505  クラスA
510  クラスB
515  クラスC
【図１】
0006379099.tif 000004
【図２】
0006379099.tif 000005
【図３】
0006379099.tif 000006
【図４】
0006379099.tif 000007
【図５】
0006379099.tif 000008
【図６】
0006379099.tif 000009
【図７】
0006379099.tif 000010
【図７Ｂ】
0006379099.tif 000011
【図８】
0006379099.tif 000012
【図９】
0006379099.tif 000013
【図１０】
0006379099.tif 000014