行動評価装置
【課題】被験体に対する検出手段として加速度センサのみを含む簡単かつ安価な構成で、被験体がした動作又は行動についての評価の精度を高めることができる行動評価装置を提供すること。
【解決手段】加速度センサと、加速度センサの出力を記憶するメモリを備える。第1のニューラルネットワークは、予め、被験体がした動作又は行動を認識する学習を済ませ、その学習後は、加速度センサの出力に基づいて、リアルタイムで被験体がした動作又は行動を認識する。第2のニューラルネットワークは、指示に基づいて、第1のニューラルネットワークを通して認識された動作又は行動に対応する加速度センサの出力を、メモリから読み出して手本として学習し、その学習後は、第1のニューラルネットワークを通して認識された動作又は行動が手本に近い程度を表す近似度を出力する。
【解決手段】加速度センサと、加速度センサの出力を記憶するメモリを備える。第1のニューラルネットワークは、予め、被験体がした動作又は行動を認識する学習を済ませ、その学習後は、加速度センサの出力に基づいて、リアルタイムで被験体がした動作又は行動を認識する。第2のニューラルネットワークは、指示に基づいて、第1のニューラルネットワークを通して認識された動作又は行動に対応する加速度センサの出力を、メモリから読み出して手本として学習し、その学習後は、第1のニューラルネットワークを通して認識された動作又は行動が手本に近い程度を表す近似度を出力する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は行動評価装置に関し、より詳しくは、加速度センサを用いて、被験体の動作又は行動を認識して評価する行動評価装置に関する。
【0002】
ここで、「被験体」とは、代表的には人間を指すが、動物であっても良い。
【0003】
また、「動作」とは、被験体の動きを指す。「行動」とは、意識的なものも含まれる動きや行いを指す。本明細書では、簡単のため、動作と行動とを併せて、適宜「動作」と呼ぶ。
【0004】
この発明の行動評価装置は、典型的には、歩数計・活動量計、携帯電話、モバイルコンピュータなどに組み込んで用いられ得る。
【背景技術】
【0005】
従来、例えば特許文献1(特開平10−113343号公報)には、被験体の動作又は行動に伴う状態変化を観測する計測手段と、前記観測結果における特徴量を抽出する特徴量抽出手段と、当該認識装置により認識すべき動作又は行動についての特徴量を記憶する記憶手段と、前記観測結果から抽出した特徴量と記憶してある特徴量とから、前記被験体の動作又は行動を認識する認識手段とを備えたシステムが開示されている。さらに、同文献には、事故などにより足などに障害を受けた場合のリハビリテーションに利用するために、標準的な動作(障害を受ける前の歩行動作等)と計測動作(障害を受けている現在の被験者の歩行動作等)の違いを、観測波形の周波数スペクトルの差分として視覚的に示すことが記載されている。また、標準動作特徴量データベースには、被験者の事故前の標準動作の特徴量を抽出して登録しておくのが最適であるが、それがない場合には、多数の被験者の平均的な動作から求めた特徴量を標準動作として用いてもよい旨が述べられている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平10−113343号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、事故に遭うことを前提として、被験者が標準動作特徴量データベースに標準的な動作を登録しておくようなことは、通常は有り得ない。また、多数の被験者の平均的な動作から求めた特徴量を標準動作として用いる場合、評価の精度が落ちるという問題がある。
【0008】
そこで、この発明の課題は、被験体に対する検出手段として加速度センサのみを含む簡単かつ安価な構成で、被験体がした動作又は行動についての評価の精度を高めることができる行動評価装置を提供することにある。
【課題を解決するための手段】
【0009】
上記課題を解決するため、この発明の行動評価装置は、
被験体に取り付けられるべき加速度センサと、
上記加速度センサの出力を記憶するメモリと、
上記加速度センサの出力から、手本となる動作又は行動を認識する学習を済ませたニューラルネットワークとを備えて、
上記被験体に取り付けられた上記加速度センサの出力から、上記ニューラルネットワークを通して上記被験体がした動作又は行動を認識するとともに、認識された動作又は行動が上記手本に近い程度を評価する行動評価装置において、
上記ニューラルネットワークは、
予め、上記被験体がした複数種類の動作又は行動と上記被験体に取り付けられた上記加速度センサの出力との間のそれぞれの対応関係に基づいて、上記被験体がした動作又は行動を認識する学習を済ませ、その学習後は、上記加速度センサの出力に基づいて、リアルタイムで上記被験体がした動作又は行動を認識する第1のニューラルネットワークと、
指示に基づいて、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を、上記メモリから読み出して手本として学習し、その学習後は、上記第1のニューラルネットワークを通して認識された動作又は行動が上記手本に近い程度を表す近似度を出力する第2のニューラルネットワークとを
含むことを特徴とする。
【0010】
この発明の行動評価装置では、第1のニューラルネットワークは、予め、上記被験体がした複数種類の動作又は行動と上記被験体に取り付けられた上記加速度センサの出力との間のそれぞれの対応関係に基づいて、上記被験体がした動作又は行動を認識する学習を済ませ、その学習後は、上記加速度センサの出力に基づいて、リアルタイムで上記被験体がした動作又は行動を認識する。第2のニューラルネットワークは、指示に基づいて、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を、上記メモリから読み出して手本として学習する。したがって、使用者(この行動評価装置を操作する者を指す。典型的には被験体であるが、別の者であっても良い。以下同様。)は、上記指示を入力することによって、上記第2のニューラルネットワークに、例えばスポーツやダンスなどにおいて被験体の調子が良かったときの動きを、上記手本として学習させることができる。上記第2のニューラルネットワークは、その学習後は、上記第1のニューラルネットワークを通して認識された動作又は行動が上記手本に近い程度を表す近似度を出力する。この近似度に基づいて、使用者は、上記被験体がした動作又は行動が上記手本に近い程度を知ることができる。
【0011】
この行動評価装置では、使用者が上記指示を入力することによって、第2のニューラルネットワークに所望のタイミングで適切な手本を学習させることができる。したがって、この行動評価装置によれば、従来に比して、被験体がした動作又は行動についての評価の精度を高めることができる。また、上記行動評価装置は、被験体に対する検出手段として加速度センサのみを備えているので、簡単かつ安価に構成され得る。
【0012】
一実施形態の行動評価装置では、
上記指示を入力するための指示スイッチと、
上記指示スイッチによって上記指示が入力された時、上記メモリ内で、現時点から遡った直近の、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を探索し、探索した上記加速度センサの出力を上記メモリから読み出して、学習のために上記第2のニューラルネットワークに入力する制御を行う制御部とを備えたことを特徴とする。
【0013】
この一実施形態の行動評価装置では、使用者が上記指示スイッチによって上記指示を入力する。上記指示スイッチによって上記指示が入力された時、制御部は、上記メモリ内で、現時点から遡った直近の、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を探索し、探索した上記加速度センサの出力を上記メモリから読み出して、学習のために上記第2のニューラルネットワークに入力する制御を行う。したがって、使用者は、上記第2のニューラルネットワークに所望のタイミングで適切な手本を学習させることができる。
【0014】
一実施形態の行動評価装置では、上記第2のニューラルネットワークの出力層は単一の素子のみを含むことを特徴とする。
【0015】
この一実施形態の行動評価装置では、上記第2のニューラルネットワークの出力層は単一の素子のみを含むから、その単一の素子の出力から得られた近似度は、被験体がした或る動作又は行動が上記手本に近い程度を1つの数値で明確に表すことができる。
【0016】
一実施形態の行動評価装置では、上記近似度は数値であることを特徴とする。
【0017】
この一実施形態の行動評価装置では、上記近似度は数値であるから、使用者は、被験体がした或る動作又は行動が上記手本に近い程度を明確に知ることができる。
【0018】
一実施形態の行動評価装置では、上記動作又は行動はゴルフスイングを含むことを特徴とする。
【0019】
この一実施形態の行動評価装置では、上記動作又は行動はゴルフスイングを含む。したがって、使用者は、上記指示を入力することによって、上記第2のニューラルネットワークに、例えば被験体がナイスショットをしたときのスイングやゴルフコーチがお手本ショットをしたときのスイングを、上記手本として学習させることができる。この結果、行動の評価段階で、使用者は、被験体がしたスイングが、被験体自身が調子の良いとき(ナイスショットをしたとき)のスイングにどれだけ近いか、またはゴルフコーチがお手本ショットをしたときのスイングにどれだけ近いか、を知ることができる。
【発明の効果】
【0020】
以上より明らかなように、この発明の行動評価装置によれば、被験体に対する検出手段として加速度センサのみを含む簡単かつ安価な構成で、被験体がした動作又は行動についての評価の精度を高めることができる。
【図面の簡単な説明】
【0021】
【図1】図1(A)は、この発明の一実施形態の行動評価装置の外観を正面から見たところを示す図である。図1(B)は、上記行動評価装置を右側方から見たところを示す図である。図1(C)は、上記行動評価装置を分解状態で右側方から見たところを示す図である。図1(D)は、上記行動評価装置に含まれた部品を示す図である。図1(E)は、被験体としての人が上記行動評価装置を装着した態様を示す図である。
【図2】上記行動評価装置に含まれた演算装置のブロック構成を示す図である。
【図3】上記演算装置に含まれた第1のニューラルネットワークの構成を例示する図である。
【図4】上記演算装置に含まれた第2のニューラルネットワークの構成を例示する図である。
【図5】被験体としての人が「スイングA」を行っている様子を示す図である。
【図6】被験体が図5の運動を行っている時の、上記行動評価装置に含まれた加速度センサの出力を示す図である。
【図7】上記第1のニューラルネットワークの出力層の各ニューロンと、上記被験体としての人の動作状態との間の対応を例示する図である。
【図8】図8(A)は、上記第2のニューラルネットワークの出力層が単一の素子からなる場合のニューロンの出力を例示する図である。図8(B)は、上記第2のニューラルネットワークの出力層が2つの出力素子からなる場合の各ニューロンの出力を例示する図である。
【図9】図9(A)は、上記行動評価装置における概略的な処理フローを示す図である。図9(B)は、上記行動評価装置における「お手本の収録」段階の処理フローを示す図である。
【図10】図10(A)は、上記第1のニューラルネットワークの学習段階の処理フローを示す図である。図10(B)は、上記第1のニューラルネットワークの認識段階の処理フローを示す図である。
【図11】図11(A)は、上記第1のニューラルネットワークの認識動作を模式的に説明する図である。図11(B)は、上記第2のニューラルネットワークの評価動作を模式的に説明する図である。
【図12】図12(A)は、上記第2のニューラルネットワークの学習段階の処理フローを示す図である。図12(B)は、上記第2のニューラルネットワークの評価段階の処理フローを示す図である。
【発明を実施するための形態】
【0022】
以下、この発明の一実施形態の行動評価装置について、図面を参照しながら詳細に説明する。
【0023】
図1(A)に示すように、この発明の一実施形態の行動評価装置1は、本体ケーシング7と、この本体ケーシング7の前面部7Aに設けられたLCD(液晶表示素子)からなるディスプレイ部3と、指示スイッチとして働くノーマリオープン型のボタンスイッチ11と、スライド式の電源スイッチ42とを備えている。
【0024】
図1(B)(行動評価装置1を右側方から見たところに相当する)に示すように、本体ケーシング7の後面部7Bには、この行動評価装置1を被験体(この例では人)90に装着するためのクリップ8が設けられている。具体的には、クリップ8は、蝶番9を介して後面部7Bに取り付けられており、クリップ8の先端8aが後面部7Bに近づくように、図示しないばねによって付勢されている。これにより、図1(E)に示すように、行動評価装置1は、被験体90の腰の横に容易に装着され得る(例えば、被験体90が着けている図示しないベルトにクリップ8を引っ掛ければ良い。)。
【0025】
図1(C)および図1(D)によって分かるように、ケーシング7の内部には、電子回路基板10と、この電子回路基板10へ電力を供給するための充電可能な電池6とが収容されている。電源スイッチ42のオン(ON)、オフ(OFF)に応じて、電池6から電子回路基板10へ電力が供給され、または非供給になる。
【0026】
電子回路基板10には、無線通信装置4と、加速度センサ2と、演算装置5とが搭載されている。
【0027】
無線通信装置4は、この行動評価装置1の近傍に存在する携帯電話やパーソナルコンピュータ等との間で、Bluetooth(ブルートゥース)規格によって無線通信を行う公知の装置である。この無線通信装置4により、この行動評価装置1による評価結果(後述)を上記携帯電話やパーソナルコンピュータ等へ送信することが可能となる。
【0028】
加速度センサ2は、X軸・Y軸・Z軸の3軸方向の加速度を、この例では±2Gの範囲で検知可能な半導体式の公知のものである。この加速度センサ2は、10ミリ秒周期でX,Y,Z方向の加速度をそれぞれ計測して出力する。加速度センサ2が出力した値は、次に述べる制御部50に内蔵されたメモリ54(図2参照)に順次格納され、少なくとも5秒間保持される。
【0029】
演算装置5は、図2に示すように、この演算装置5全体の動作を制御するCPU(中央演算処理装置)からなる制御部50と、加速度センサ2の出力を受けて処理する入力処理部51と、第1のニューラルネットワーク52と、第2のニューラルネットワーク55と、第1のニューラルネットワーク52および第2のニューラルネットワーク55の出力を受けて処理する出力処理部53と、データを一時的に格納し得るメモリ54とを備えている。
【0030】
入力処理部51は、制御部50による制御下で、加速度センサ2の出力に対して信号処理を施して、人90の動きを表す特徴データとして複数種類の統計データを生成する。具体的には、入力処理部51は、次のような統計データを生成する。
【0031】
まず、現在の時刻(人90の動作状態の認識を行う時刻に相当)をt1とし、そこから5秒前の時刻をt0とする。入力処理部51は、時刻t0からt1までの5秒間にメモリ54に格納された加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)の平均値をそれぞれ統計データとして算出する。算出された平均値を、それぞれ特徴データX1,Y1,Z1とする。
【0032】
また、入力処理部51は、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向の出力の標準偏差を統計データとして算出する。算出された標準偏差を、それぞれ特徴データX2,Y2,Z2とする。
【0033】
また、入力処理部51は、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向それぞれの出力の最大値と最小値とを探索して、上記最大値と最小値との間の差をそれぞれ統計データとして算出する。算出された上記最大値と最小値との間の差を、それぞれ特徴データX3,Y3,Z3とする。
【0034】
また、入力処理部51は、時刻t0からt1までの5秒間において加速度センサ2のX,Y,Z方向の出力が0になった回数(以下「ゼロクロス回数」という。)をそれぞれカウントして統計データとして求める。求められたゼロクロス回数を、それぞれX4,Y4,Z4とする。
【0035】
このように、入力処理部51は、12種類の統計データである特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成する。入力処理部51による特徴データX1〜X4,Y1〜Y4,Z1〜Z4の生成は、100ミリ秒周期で行われる。1つの軸方向、例えばX軸方向に関して言えば、メモリ54に格納された500個の1種類のデータ(5秒間にわたる加速度センサ2の出力値)から、入力処理部51によって4種類の特徴データX1〜X4が100ミリ秒毎に生成される、ということになる。
【0036】
第1のニューラルネットワーク52は、この例では図3に示すように、12個の入力素子i1,i2,…,i12を含む入力層52iと、7個の素子m1,m2,…,m7を含む中間層52mと、7個の出力素子n1,n2,…,n7を含む出力層52nとの3層から構成されている。この第1のニューラルネットワーク52は、この例では逆誤差伝搬法(Back Propagation algorithm)と呼ばれる学習法によって、入力層52iの入力素子i1,i2,…,i12に入力された入力から、出力層52nの出力素子n1,n2,…,n7に正しい出力が得られるような学習を行えるように構成されている。
【0037】
具体的には、まず、入力素子i1,i2,…,i12に対する入力にそれぞれ重み係数wj1,wj2,…,wj12(j=1,2,…,7とする。)を乗算し、次のようにそれらの入力と重み係数との積の線形和ujを求める。
【0038】
出力素子n1,n2,…,n7の出力を、次のようにその線形和ujのシグモイド関数f(uj)であるものとする。
f(uj)=1/(1+exp(−uj))
【0039】
次に、入力素子i1,i2,…,i12に或る入力データセットが入力されたときの出力素子n1,n2,…,n7の出力と、正しい解答を表す教師データとの間の誤差を求める。
【0040】
出力素子n1,n2,…,n7の出力とその教師データとの間の誤差が解消するように、上記重み係数wj1,wj2,…,wj12を変更してゆく。誤差の元となった中間層の出力も順次調整してゆく。
【0041】
このようにして学習を行ってゆくと、或る入力データセットに対して出力層52nの出力素子n1,n2,…,n7のうち、1つの出力素子のみが反応し(値が1になり)、残りの出力素子の値は略0になるようになる。第1のニューラルネットワーク52は、このような逆誤差伝搬法による学習を行えるように構成されている。
【0042】
第2のニューラルネットワーク55は、この例では図4に示すように、12個の入力素子i1,i2,…,i12を含む入力層55iと、7個の素子m1,m2,…,m7を含む中間層55mと、1個の出力素子n1を含む出力層55nとの3層から構成されている。この第2のニューラルネットワーク52は、第1のニューラルネットワーク52と同様に、この例では逆誤差伝搬法によって、入力層55iの入力素子i1,i2,…,i12に入力された入力から、出力層55nの出力素子n1に正しい出力が得られるような学習を行えるように構成されている。
【0043】
図2中の出力処理部53は、制御部50による制御下で、第1のニューラルネットワーク52の出力層52nおよび第2のニューラルネットワーク55の出力層55nの出力を受けて、それに応じた認識・評価結果を画像として出力する処理を行う。この認識・評価結果は、行動評価装置1のディスプレイ部3に表示される。
【0044】
上述の入力処理部51、第1のニューラルネットワーク52、第2のニューラルネットワーク55、出力処理部53は、ソフトウェアによって構成されている。この行動評価装置1は、被験体90に対する検出手段として加速度センサ2のみを備えているので、簡単かつ安価に構成され得る。
【0045】
図9(A)に示すように、この行動評価装置1は、制御部50による制御によって、大別して、ステップS101に示す「お手本の収録」段階の処理と、ステップS102に示す「行動の評価」段階の処理とを実行する。
【0046】
図9(B)は、上記「お手本の収録」段階の処理(ステップS101)を、より具体的に示している。この例では、電源スイッチ42がオンされている動作期間中に、使用者がボタンスイッチ11を3秒間以上押し続けたとき、この「お手本の収録」段階の処理を開始するものとする。
【0047】
制御部50は、まずステップS201で、例えばディスプレイ部3に「認識の学習をしますか?」と表示して、第1のニューラルネットワーク52に対する学習指示(これを「第1の学習指示」と呼ぶ。)があるか無いかを判断する。第1の学習指示は、この例では使用者がボタンスイッチ11を1回(3秒間未満)押すことにより入力されるものとする。所定期間(例えば5秒間)内に第1の学習指示があれば(ステップS201でYES)、ステップS202に進んで第1のニューラルネットワーク52の学習の処理を行う。予め第1のニューラルネットワーク52の学習が完了していてステップS201では第1の学習指示が無かったとき(ステップS201でNO)、またはステップS202の学習後に、ステップS203へ進む。ステップS203では、第1のニューラルネットワーク52による認識の処理を開始する。
【0048】
この第1のニューラルネットワーク52による認識をリアルタイムで行っている期間中に、制御部50は、ステップS204で、例えばディスプレイ部3に「評価の学習をしますか?」と表示して、第2のニューラルネットワーク55に対する学習指示(これを「第2の学習指示」と呼ぶ。)があるか無いかを判断する。第2の学習指示は、この例では第1の学習指示と同様に、使用者がボタンスイッチ11を1回(3秒間未満)押すことにより入力されるものとする。所定期間(例えば5秒間)内に第2の学習指示があれば(ステップS204でYES)、ステップS205に進んで第2のニューラルネットワーク55の学習の処理を行う。予め第2のニューラルネットワーク55の学習が完了していてステップS205では第2の学習指示が無かったとき(ステップS204でNO)、またはステップS205の学習後に、この「お手本の収録」の処理を終了する。
【0049】
次に、被験体90が複数種類の動作を行う場合を想定して、行動評価装置1における第1のニューラルネットワーク52の学習段階の処理(図9(B)中のステップS202)について、図10(A)を参照しながら具体的に説明する。この例では、複数種類の動作とは、図7中の「動作状態」欄に示すように、「休止」、「歩行A」、「歩行B」、「走行A」、「走行B」、「スイングA」、「スイングB」という7種類の動作を指すものとする(動作の種類数は、第1のニューラルネットワーク52の出力素子n1,n2,…,n7の個数に対応している。)。ここで、「休止」は被験体90が静止している状態を指す。「歩行A」は被験体90がゆっくり歩いている状態を指し、「歩行B」は被験体90が速く歩いている状態を指す。「走行A」は被験体90がゆっくり走っている状態を指し、「走行B」は被験体90が速く走っている状態を指す。「スイングA」は被験体90が長いシャフトのゴルフクラブ(例えば1番ウッド)をフラットにスイングしている状態(水平面に対するスイングプレーンの傾斜角が小)を指し、「スイングB」は被験体90が短いシャフトのゴルフクラブ(例えば9番アイアン)をアップライトにスイングしている状態(水平面に対するスイングプレーンの傾斜角が大)を指す。なお、スイングの範疇には、「スイングA」、「スイングB」に加えて、さらに別のタイプの「スイングC」、「スイングD」、…を含んでいても良い。
【0050】
図10(A)中のステップS1に示すように、まず、被験体90が行動評価装置1を装着し、行動評価装置1(の第1のニューラルネットワーク52)に学習させたい7種類の動作を順次行う。これにより、行動評価装置1の加速度センサ2は、上記7種類の動作に対応する加速度データをそれぞれ実測して取得する。既述のように、加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)が、メモリ54に格納される。これとともに、入力処理部51は、既述の12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成する。例えば、被験体90が図5中の矢印91で示すように「スイングA」をしている時、X,Y,Z方向の出力の平均値X1,Y1,Z1は、図6中のデータ12,13,14のように得られる。
【0051】
次に、図10(A)中のステップS2に示すように、上記7種類の動作の各々において特徴的な部分を抽出する。図6の例では、被験体90が「スイングA」をしている時に特徴的なデータを表す期間15のデータを抽出する。このようにした場合、学習の精度を高めることができ、結果として誤認識の防止につながり、有意義である。なお、図6の例では、平均値X1,Y1,Z1のみを示しているが、標準偏差X2,Y2,Z2、最大値と最小値との間の差X3,Y3,Z3、またはゼロクロス回数X4,Y4,Z4について、それぞれ特徴的なデータを表す期間があれば、その期間のデータを抽出するのが望ましい。
【0052】
次に、図10(A)中のステップS3に示すように、正しい解答(動作)を表す教師データを作成する。この教師データは、被験体90が或る動作をした時に、入力処理部51によって生成された12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4が第1のニューラルネットワーク52に入力された場合に相当するものとする。被験体90が「スイングA」をした例では、出力素子n1,n2,n3,n4,n5,n6,n7の出力に対して、教師データは0,0,0,0,0,1,0となる。
【0053】
次に、図10(A)中のステップS4に示すように、上記教師データを用いて、第1のニューラルネットワーク52に、逆誤差伝搬法によって学習を行わせる。すなわち、図3に示した第1のニューラルネットワーク52の入力素子i1,i2,…,i12に或る入力データセットとして特徴データX1〜X4,Y1〜Y4,Z1〜Z4が入力されたときの出力素子n1,n2,…,n7の出力と、正しい解答を表す教師データとの間の誤差を求める。そして、出力素子n1,n2,…,n7の出力とその教師データとの間の誤差が解消するように、フィードバックを行って、上記重み係数wj1,wj2,…,wj12を変更して調整してゆく。誤差の元となった中間層の出力も順次調整してゆく。これにより、図10(A)中のステップS5,S6に示すように、被験体90の動作状態判別のための重み係数wj1,wj2,…,wj12を得て、第1のニューラルネットワーク52にそれらの重み係数を組み込む。このことは、第1のニューラルネットワーク52を構成するソフトウェア上では、入力データセットから出力データセットを得るための計算式(アルゴリズム)を確立することと等価である。
【0054】
このようにして学習を行ってゆくと、或る運動を表す入力データセットに対して、出力層52nの出力素子n1,n2,…,n7のうち、1つの出力素子のみが反応し(値が1になり)、残りの出力素子は反応しない(値が略0になる)ようになる。この例では、図7に示すように、n1が反応したときは「休止」、n2が反応したときは「歩行A」、n3が反応したときは「歩行B」、n4が反応したときは「走行A」、n5が反応したときは「走行B」、n6が反応したときは「スイングA」、n7が反応したときは「スイングB」という動作状態を表すようになる。
【0055】
このようにして、第1のニューラルネットワーク52の学習段階では、被験体90がした複数種類(この例では7種類)の動作又は行動と被験体90に取り付けられた加速度センサ2の出力との間のそれぞれの対応関係に基づいて、加速度センサ2の出力から被験体90がした動作又は行動を認識する学習を済ませる。
【0056】
次に、行動評価装置1における第1のニューラルネットワーク52の認識段階の処理(図9(B)中のステップS203)について、図10(B)を参照しながら具体的に説明する。被験体90は、行動評価装置1を装着して、図7中の7種類の動作の中の或る動作を行うものとする。
【0057】
図10(B)中のステップS11に示すように、まず、行動評価装置1の加速度センサ2は、上記7種類の動作に対応する加速度データをそれぞれ実測して取得する。既述のように、加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)が、メモリ54に格納される。これとともに、ステップS12に示すように、入力処理部51は、既述の12種類の統計データである特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成する。
【0058】
次に、ステップS13に示すように、第1のニューラルネットワーク52の入力素子i1,i2,…,i12に、上記12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を含む入力データセットが入力される。すると、ステップS14に示すように、第1のニューラルネットワーク52の出力層52n(出力素子n1,n2,…,n7)に、結果を表すデータが出力される。ステップS15に示すように、その結果から、出力処理部53は、被験体90が現在行っている動作が何であるかを認識する。
【0059】
そして、ステップS16に示すように、出力処理部53による認識結果がディスプレイ部3に表示される。
【0060】
この行動評価装置1は、電源スイッチ42がオンされている動作期間内で、第1のニューラルネットワーク52の学習段階の処理(図9(B)中のステップS202)や第2のニューラルネットワーク55の学習段階の処理(図9(B)中のステップS205)を行っている期間以外は、ステップS11〜S16の処理を100ms周期で繰り返す。これにより、被験体90の動作状態の認識を実質的にリアルタイムで常時行う。
【0061】
例えば図11(A)に模式的に示すように、時間tが経過するにつれて、メモリ54に格納された加速度センサ2の測定データ21から、その時々の被験体90の動作状態がリアルタイムで順次認識される(認識結果を符号22で示す。)。この例では、「休止」、「休止」、「歩行A」、「休止」、「スイングA」、「歩行A」、「歩行A」、「休止」がこの順に認識されている。メモリ54には、加速度センサ2の出力に対応づけて、この動作状態の認識結果22が順次格納される。
【0062】
なお、第1のニューラルネットワーク52の学習段階の処理(図9(B)中のステップS202)や第2のニューラルネットワーク55の学習段階の処理(図9(B)中のステップS205)を行っている期間は、例えばディスプレイ部3に「学習中」と表示して、被験体90の動作状態の認識や行動の評価を行っていないことを明示する。
【0063】
次に、行動評価装置1における第2のニューラルネットワーク55の学習段階の処理(図9(B)中のステップS205)について、具体的に説明する。
【0064】
まず、被験体90が行動評価装置1を装着し、行動評価装置1(の第2のニューラルネットワーク55)に評価させたい動作を行う。この例では、使用者としての被験体90が、「スイングA」をする、すなわちゴルフクラブとして1番ウッドをスイングしてゴルフボールを打つものとする。
【0065】
被験体90にとって満足のいくナイスショットが打てたら、被験体90は、この例では使用者として、そのスイング後30秒以内にボタンスイッチ11を1回(3間秒未満)押す。すなわち、既述の第2の学習指示を入力する(図9(B)中のステップS204)。これにより、図12(A)に示す第2のニューラルネットワーク55の学習段階の処理に入る。
【0066】
ボタンスイッチ11が押された時、図12(A)中のステップS21に示すように、制御部50は、メモリ54内で、現時点t1から遡った直近の、第1のニューラルネットワーク52を通して認識された動作又は行動を探索する。この例では、制御部50は、第1のニューラルネットワーク52が学習を済ませた複数種類の動作又は行動のうちスイングを探索するように設定されている。探索対象の期間の長さは、現時点t1から遡った直近の1分間として設定されている。
【0067】
制御部50は、メモリ54内を探索して、動作状態の認識結果22の中に或るスイングを発見できたら(ステップS22でYES)、それを被験体90がナイスショットをしたときのスイングであると判断して、ステップS23に示すように、それに対応する加速度センサ2の出力(測定データ)をメモリ54から読み出す。図11(A)の例では、「スイングA」に対応する加速度センサ2の出力21Fを読み出す。
【0068】
次に、制御部50は、図12(A)中のステップS24に示すように、読み出した加速度センサ2の出力21Fを、学習のために第2のニューラルネットワーク55の入力層55iに入力する。具体的には、測定データ21Fとしての、入力処理部51によって生成された12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を、第2のニューラルネットワーク55の入力素子i1,i2,…,i12に入力データセットとして入力する。これとともに、制御部50は、第2のニューラルネットワーク55の出力層55n(出力素子n1)に、教師データとして数値「1」を与える。
【0069】
これにより、第2のニューラルネットワーク55に、第1のニューラルネットワーク52におけるのと同様に、逆誤差伝搬法によって学習を行わせる。すなわち、図4に示した第2のニューラルネットワーク55の入力素子i1,i2,…,i12に或る入力データセットとして特徴データX1〜X4,Y1〜Y4,Z1〜Z4が入力されたときの出力素子n1の出力と、正しい解答を表す教師データとの間の誤差を求める。そして、出力素子n1の出力とその教師データとの間の誤差が解消するように、フィードバックを行って、上記重み係数wj1,wj2,…,wj12を変更して調整してゆく。誤差の元となった中間層の出力も順次調整してゆく。これにより、図12(A)中のステップS25,S26に示すように、被験体90の「スイングA」を評価するための重み係数wj1,wj2,…,wj12を得て、第2のニューラルネットワーク55にそれらの重み係数を組み込む。
【0070】
このようにして学習を行ってゆくと、被験体90がナイスショットをしたときの「スイングA」を表す入力データセットに対して、出力層55nの出力素子n1の値が1になり、ミスショットをしたときのスイングや別の「スイングB」、「スイングC」、…を表す入力データセットに対して出力素子n1の値が小さくなる(0に近くなる)ようになる。
【0071】
このようにして、第2のニューラルネットワーク55の学習段階では、被験体90がナイスショットをしたときの「スイングA」と被験体90に取り付けられた加速度センサ2の出力との間の対応関係に基づいて、加速度センサ2の出力から被験体90がしたスイングを評価するための学習を済ませる。
【0072】
上の例では、被験体90がナイスショットをしたときのスイングに対応する加速度センサ2の出力を、第2のニューラルネットワーク55の学習のための入力データセットとした。当然ながら、これに限られるものではなく、例えばゴルフコーチがお手本ショットをしたときのスイングに対応する加速度センサ2の出力を、第2のニューラルネットワーク55の学習のための入力データセットとしても良い。
【0073】
いずれにしても、この行動評価装置1では、使用者がボタンスイッチ11を押すことによって、第2のニューラルネットワーク55に所望のタイミングで適切な手本を学習させることができる。
【0074】
次に、行動評価装置1における「行動の評価」段階の処理(図9(A)中のステップS102)について、具体的に説明する。
【0075】
この「行動の評価」段階では、第1のニューラルネットワーク52は、被験体90の動作状態の認識をリアルタイムで常時行っている。例えば図11(B)に模式的に示すように、時間tが経過するにつれて、メモリ54に格納された加速度センサ2の測定データ23から、その時々の被験体90の動作状態がリアルタイムで順次認識される(認識結果を符号24で示す。)。この例では、「休止」、「休止」、「歩行A」、「休止」、「スイングA」、「歩行A」、「歩行A」、「休止」がこの順に認識されている。メモリ54には、加速度センサ2の出力に対応づけて、この動作状態の認識結果24が順次格納されている。
【0076】
図12(B)中のステップS31に示すように、制御部50は、メモリ54内における動作状態の認識結果24に或るスイングが含まれているか否かをリアルタイムで常時探索する。動作状態の認識結果24にスイングが含まれていれば(ステップS32でYES)、制御部50は、ステップS33に示すように、そのスイングに対応する加速度センサ2の出力をメモリ54から読み出す。図11(A)の例では、「スイングA」に対応する加速度センサ2の出力(測定データ)23Fを読み出す。
【0077】
次に、制御部50は、図12(B)中のステップS34に示すように、読み出した加速度センサ2の出力(測定データ)23Fを、行動の評価のために第2のニューラルネットワーク55の入力層55iに入力する。具体的には、測定データ23Fとしての入力処理部51によって生成された12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を、第2のニューラルネットワーク55の入力素子i1,i2,…,i12に入力データセットとして入力する。すると、ステップS35に示すように、第2のニューラルネットワーク55の出力層55n(出力素子n1)に、結果を表すデータが出力される。すなわち、お手本(図9(B)中のステップS205で学習したもの)に近い程度を表す近似度(0から1までの数値)が出力される。例えば図8(A)に例示するように、近似度として出力素子n1に0.80という数値が出力される。この例では、第2のニューラルネットワーク55の出力層55nが単一の出力素子n1のみを含むので、被験体90がした或るスイングが手本に近い程度を1つの数値で明確に表すことができる。
【0078】
そして、図12(B)中のステップS36に示すように、出力処理部53によってスイングの評価結果がディスプレイ部3に表示される。この例では、出力処理部53は、近似度の数値を100倍して、100点満点の点数Pを算出する。P=80の場合は「さっきのスイングは80点」というように表示を行う。
【0079】
このように、この行動評価装置1によれば、近似度に基づく点数表示によって、使用者は、被験体90がしたスイングが手本に近い程度、すなわち、被験体90自身が調子の良いとき(ナイスショットをしたとき)のスイングにどれだけ近いか、またはゴルフコーチがお手本ショットをしたときのスイングにどれだけ近いか、を明確に知ることができる。
【0080】
この行動評価装置1は、「行動の評価」段階の処理を行っている期間は、ステップS31〜S36の処理を100ms周期で繰り返す。これにより、被験体90がしたスイングの評価を実質的にリアルタイムで常時行うことができる。
【0081】
この例では、電源スイッチ42がオフされたとき、または、電源スイッチ42がオンされている動作期間中に、使用者がボタンスイッチ11を3秒間以上押し続けたとき、この「行動の評価」段階の処理を終了するものとする。
【0082】
以上より明らかなように、この実施形態の行動評価装置1では、使用者がボタンスイッチ11を押して第2の学習指示を入力することによって、第2のニューラルネットワーク55に所望のタイミングで適切な手本を学習させることができる。したがって、この行動評価装置1によれば、「行動の評価」段階で、従来に比して、被験体90がした動作又は行動についての評価の精度を高めることができる。
【0083】
なお、この実施形態では、使用者がボタンスイッチ11を押して第1、第2の学習指示を入力するものとしたが、これに限られるものではない。無線通信装置4は、この行動評価装置1の近傍に存在する携帯電話やパーソナルコンピュータから無線通信装置4を介して、第1、第2の学習指示を入力するようにしても良い。
【0084】
また、この実施形態では、第1のニューラルネットワーク52の学習段階(図9(B)中のステップS202)で、被験体90が行動評価装置1を装着し、加速度データを実測して、第1のニューラルネットワーク52に学習させるべき入力データを得た。しかしながら、第1のニューラルネットワーク52は、大まかな動作状態の認識を行うだけであるから、必ずしも被験体90からの実測データを入力データとする必要はない。第1のニューラルネットワーク52の学習は、この行動評価装置1の近傍に存在するパーソナルコンピュータ等から無線通信装置4を介して、予め学習用に用意された入力データを入力し、学習アルゴリズムを実行することによって行っても良い。
【0085】
また、上述の実施形態では、第1のニューラルネットワーク52は、3層からなり、12個の入力素子、7個の出力素子を備えたものとした。また、第2のニューラルネットワーク55は、3層からなり、12個の入力素子、1個の出力素子を備えたものとした。しかしながら、これに限られるものではなく、第1のニューラルネットワーク52、第2のニューラルネットワーク55は、さらに多層で、多くの入力素子、出力素子を備えても良い。
【0086】
特に、第2のニューラルネットワーク55の出力層55nの出力素子は、お手本の数だけあっても良い。例えば「スイングA」についてのお手本データと、「スイングB」についてのお手本データとがある場合、図8(B)中に例示するように、第2のニューラルネットワーク55の出力層55nを2つの出力素子n1,n2を含むものとする。この場合、第2のニューラルネットワーク55の学習段階で、「スイングA」に応じたお手本の入力データセットを入力したときは、教師データとしてn1に数値「1」を与え、n2に数値「0」を与える。一方、「スイングB」に応じたお手本の入力データセットを入力したときは、教師データとしてn1に数値「0」を与え、n2に数値「1」を与える。このようにして、学習を済ませる。すると、「行動の評価」段階では、例えば被験体90がお手本に近い「スイングA」をしたとき、図8(B)中に例示するように、例えば出力素子n1に数値「0.90」が出力され、出力素子n2に数値「0.10」が出力される。この出力結果は、n1,n2の中でn1の値が最も大きいことから、被験体90がしたスイングは「スイングA」であることを示している。また、被験体90がした「スイングA」のお手本の「スイングA」に対する近似度が、0.90(100点満点で90点)であることを示している。
【0087】
このように、第2のニューラルネットワーク55の出力層55nが複数の出力素子を含む場合、複数のタイプのスイングを評価することができる。
【0088】
また、上述の実施形態では、加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)から、入力処理部51によって、既述の12種類の統計データである特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成した。しかしながら、これに限られるものではない。例えば標準偏差X2,Y2,Z2に代えて、またはそれに加えて、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向の出力の「分散」を、特徴データとして生成して用いても良い。または、最大値と最小値との間の差X3,Y3,Z3に代えて、またはそれに加えて、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向の出力の「最大値」および「最小値」を、特徴データとして抽出して用いても良い。要するに、この実施形態で挙げた特徴データのうち、少なくとも2種類の特徴データを用いれば、本発明を実施することができる。当然ながら、この実施形態で挙げた特徴データの全部を用いても良い。
【0089】
また、この実施形態では、行動評価装置1は、携帯電話101や、歩数計・活動量計、モバイルコンピュータなどの電子機器に、一体に組み込んで構成され得る。これにより、ユーザの利便性を高めることができる。
【0090】
一方、加速度センサ2を本体ケーシング7とは別体に構成して、加速度センサ2(およびそれに付随した無線通信装置)のみが被験体90に装着されるようにしても良い。この場合、加速度センサ2と本体とは無線通信装置を介して通信する。
【0091】
また、この実施形態では、行動評価装置1は、ゴルフのスイングを評価する例について述べたが、当然ながら、これに限られるものではない。例えばダンスなどにおいては、指導者の動きをお手本として行動評価装置1にデータ入力してもらうことにより、被験体90の動きがお手本にどれだけ近づいているか、ということを評価できる。
【0092】
なお、上記行動評価装置1が対象とする被験体90は、冒頭に述べたように、代表的には人間を指すが、動物も含む。この行動評価装置1は、使用者が被験体90としての動物に芸を仕込む場合にも、好ましく適用できる。
【符号の説明】
【0093】
1 行動評価装置
2 加速度センサ
3 ディスプレイ部
4 無線通信装置
5 演算装置
6 電池
7 本体ケーシング
41 指示スイッチ
50 制御部
51 入力処理部
52 第1のニューラルネットワーク
53 出力処理部
54 メモリ
55 第2のニューラルネットワーク
【技術分野】
【0001】
この発明は行動評価装置に関し、より詳しくは、加速度センサを用いて、被験体の動作又は行動を認識して評価する行動評価装置に関する。
【0002】
ここで、「被験体」とは、代表的には人間を指すが、動物であっても良い。
【0003】
また、「動作」とは、被験体の動きを指す。「行動」とは、意識的なものも含まれる動きや行いを指す。本明細書では、簡単のため、動作と行動とを併せて、適宜「動作」と呼ぶ。
【0004】
この発明の行動評価装置は、典型的には、歩数計・活動量計、携帯電話、モバイルコンピュータなどに組み込んで用いられ得る。
【背景技術】
【0005】
従来、例えば特許文献1(特開平10−113343号公報)には、被験体の動作又は行動に伴う状態変化を観測する計測手段と、前記観測結果における特徴量を抽出する特徴量抽出手段と、当該認識装置により認識すべき動作又は行動についての特徴量を記憶する記憶手段と、前記観測結果から抽出した特徴量と記憶してある特徴量とから、前記被験体の動作又は行動を認識する認識手段とを備えたシステムが開示されている。さらに、同文献には、事故などにより足などに障害を受けた場合のリハビリテーションに利用するために、標準的な動作(障害を受ける前の歩行動作等)と計測動作(障害を受けている現在の被験者の歩行動作等)の違いを、観測波形の周波数スペクトルの差分として視覚的に示すことが記載されている。また、標準動作特徴量データベースには、被験者の事故前の標準動作の特徴量を抽出して登録しておくのが最適であるが、それがない場合には、多数の被験者の平均的な動作から求めた特徴量を標準動作として用いてもよい旨が述べられている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開平10−113343号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、事故に遭うことを前提として、被験者が標準動作特徴量データベースに標準的な動作を登録しておくようなことは、通常は有り得ない。また、多数の被験者の平均的な動作から求めた特徴量を標準動作として用いる場合、評価の精度が落ちるという問題がある。
【0008】
そこで、この発明の課題は、被験体に対する検出手段として加速度センサのみを含む簡単かつ安価な構成で、被験体がした動作又は行動についての評価の精度を高めることができる行動評価装置を提供することにある。
【課題を解決するための手段】
【0009】
上記課題を解決するため、この発明の行動評価装置は、
被験体に取り付けられるべき加速度センサと、
上記加速度センサの出力を記憶するメモリと、
上記加速度センサの出力から、手本となる動作又は行動を認識する学習を済ませたニューラルネットワークとを備えて、
上記被験体に取り付けられた上記加速度センサの出力から、上記ニューラルネットワークを通して上記被験体がした動作又は行動を認識するとともに、認識された動作又は行動が上記手本に近い程度を評価する行動評価装置において、
上記ニューラルネットワークは、
予め、上記被験体がした複数種類の動作又は行動と上記被験体に取り付けられた上記加速度センサの出力との間のそれぞれの対応関係に基づいて、上記被験体がした動作又は行動を認識する学習を済ませ、その学習後は、上記加速度センサの出力に基づいて、リアルタイムで上記被験体がした動作又は行動を認識する第1のニューラルネットワークと、
指示に基づいて、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を、上記メモリから読み出して手本として学習し、その学習後は、上記第1のニューラルネットワークを通して認識された動作又は行動が上記手本に近い程度を表す近似度を出力する第2のニューラルネットワークとを
含むことを特徴とする。
【0010】
この発明の行動評価装置では、第1のニューラルネットワークは、予め、上記被験体がした複数種類の動作又は行動と上記被験体に取り付けられた上記加速度センサの出力との間のそれぞれの対応関係に基づいて、上記被験体がした動作又は行動を認識する学習を済ませ、その学習後は、上記加速度センサの出力に基づいて、リアルタイムで上記被験体がした動作又は行動を認識する。第2のニューラルネットワークは、指示に基づいて、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を、上記メモリから読み出して手本として学習する。したがって、使用者(この行動評価装置を操作する者を指す。典型的には被験体であるが、別の者であっても良い。以下同様。)は、上記指示を入力することによって、上記第2のニューラルネットワークに、例えばスポーツやダンスなどにおいて被験体の調子が良かったときの動きを、上記手本として学習させることができる。上記第2のニューラルネットワークは、その学習後は、上記第1のニューラルネットワークを通して認識された動作又は行動が上記手本に近い程度を表す近似度を出力する。この近似度に基づいて、使用者は、上記被験体がした動作又は行動が上記手本に近い程度を知ることができる。
【0011】
この行動評価装置では、使用者が上記指示を入力することによって、第2のニューラルネットワークに所望のタイミングで適切な手本を学習させることができる。したがって、この行動評価装置によれば、従来に比して、被験体がした動作又は行動についての評価の精度を高めることができる。また、上記行動評価装置は、被験体に対する検出手段として加速度センサのみを備えているので、簡単かつ安価に構成され得る。
【0012】
一実施形態の行動評価装置では、
上記指示を入力するための指示スイッチと、
上記指示スイッチによって上記指示が入力された時、上記メモリ内で、現時点から遡った直近の、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を探索し、探索した上記加速度センサの出力を上記メモリから読み出して、学習のために上記第2のニューラルネットワークに入力する制御を行う制御部とを備えたことを特徴とする。
【0013】
この一実施形態の行動評価装置では、使用者が上記指示スイッチによって上記指示を入力する。上記指示スイッチによって上記指示が入力された時、制御部は、上記メモリ内で、現時点から遡った直近の、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を探索し、探索した上記加速度センサの出力を上記メモリから読み出して、学習のために上記第2のニューラルネットワークに入力する制御を行う。したがって、使用者は、上記第2のニューラルネットワークに所望のタイミングで適切な手本を学習させることができる。
【0014】
一実施形態の行動評価装置では、上記第2のニューラルネットワークの出力層は単一の素子のみを含むことを特徴とする。
【0015】
この一実施形態の行動評価装置では、上記第2のニューラルネットワークの出力層は単一の素子のみを含むから、その単一の素子の出力から得られた近似度は、被験体がした或る動作又は行動が上記手本に近い程度を1つの数値で明確に表すことができる。
【0016】
一実施形態の行動評価装置では、上記近似度は数値であることを特徴とする。
【0017】
この一実施形態の行動評価装置では、上記近似度は数値であるから、使用者は、被験体がした或る動作又は行動が上記手本に近い程度を明確に知ることができる。
【0018】
一実施形態の行動評価装置では、上記動作又は行動はゴルフスイングを含むことを特徴とする。
【0019】
この一実施形態の行動評価装置では、上記動作又は行動はゴルフスイングを含む。したがって、使用者は、上記指示を入力することによって、上記第2のニューラルネットワークに、例えば被験体がナイスショットをしたときのスイングやゴルフコーチがお手本ショットをしたときのスイングを、上記手本として学習させることができる。この結果、行動の評価段階で、使用者は、被験体がしたスイングが、被験体自身が調子の良いとき(ナイスショットをしたとき)のスイングにどれだけ近いか、またはゴルフコーチがお手本ショットをしたときのスイングにどれだけ近いか、を知ることができる。
【発明の効果】
【0020】
以上より明らかなように、この発明の行動評価装置によれば、被験体に対する検出手段として加速度センサのみを含む簡単かつ安価な構成で、被験体がした動作又は行動についての評価の精度を高めることができる。
【図面の簡単な説明】
【0021】
【図1】図1(A)は、この発明の一実施形態の行動評価装置の外観を正面から見たところを示す図である。図1(B)は、上記行動評価装置を右側方から見たところを示す図である。図1(C)は、上記行動評価装置を分解状態で右側方から見たところを示す図である。図1(D)は、上記行動評価装置に含まれた部品を示す図である。図1(E)は、被験体としての人が上記行動評価装置を装着した態様を示す図である。
【図2】上記行動評価装置に含まれた演算装置のブロック構成を示す図である。
【図3】上記演算装置に含まれた第1のニューラルネットワークの構成を例示する図である。
【図4】上記演算装置に含まれた第2のニューラルネットワークの構成を例示する図である。
【図5】被験体としての人が「スイングA」を行っている様子を示す図である。
【図6】被験体が図5の運動を行っている時の、上記行動評価装置に含まれた加速度センサの出力を示す図である。
【図7】上記第1のニューラルネットワークの出力層の各ニューロンと、上記被験体としての人の動作状態との間の対応を例示する図である。
【図8】図8(A)は、上記第2のニューラルネットワークの出力層が単一の素子からなる場合のニューロンの出力を例示する図である。図8(B)は、上記第2のニューラルネットワークの出力層が2つの出力素子からなる場合の各ニューロンの出力を例示する図である。
【図9】図9(A)は、上記行動評価装置における概略的な処理フローを示す図である。図9(B)は、上記行動評価装置における「お手本の収録」段階の処理フローを示す図である。
【図10】図10(A)は、上記第1のニューラルネットワークの学習段階の処理フローを示す図である。図10(B)は、上記第1のニューラルネットワークの認識段階の処理フローを示す図である。
【図11】図11(A)は、上記第1のニューラルネットワークの認識動作を模式的に説明する図である。図11(B)は、上記第2のニューラルネットワークの評価動作を模式的に説明する図である。
【図12】図12(A)は、上記第2のニューラルネットワークの学習段階の処理フローを示す図である。図12(B)は、上記第2のニューラルネットワークの評価段階の処理フローを示す図である。
【発明を実施するための形態】
【0022】
以下、この発明の一実施形態の行動評価装置について、図面を参照しながら詳細に説明する。
【0023】
図1(A)に示すように、この発明の一実施形態の行動評価装置1は、本体ケーシング7と、この本体ケーシング7の前面部7Aに設けられたLCD(液晶表示素子)からなるディスプレイ部3と、指示スイッチとして働くノーマリオープン型のボタンスイッチ11と、スライド式の電源スイッチ42とを備えている。
【0024】
図1(B)(行動評価装置1を右側方から見たところに相当する)に示すように、本体ケーシング7の後面部7Bには、この行動評価装置1を被験体(この例では人)90に装着するためのクリップ8が設けられている。具体的には、クリップ8は、蝶番9を介して後面部7Bに取り付けられており、クリップ8の先端8aが後面部7Bに近づくように、図示しないばねによって付勢されている。これにより、図1(E)に示すように、行動評価装置1は、被験体90の腰の横に容易に装着され得る(例えば、被験体90が着けている図示しないベルトにクリップ8を引っ掛ければ良い。)。
【0025】
図1(C)および図1(D)によって分かるように、ケーシング7の内部には、電子回路基板10と、この電子回路基板10へ電力を供給するための充電可能な電池6とが収容されている。電源スイッチ42のオン(ON)、オフ(OFF)に応じて、電池6から電子回路基板10へ電力が供給され、または非供給になる。
【0026】
電子回路基板10には、無線通信装置4と、加速度センサ2と、演算装置5とが搭載されている。
【0027】
無線通信装置4は、この行動評価装置1の近傍に存在する携帯電話やパーソナルコンピュータ等との間で、Bluetooth(ブルートゥース)規格によって無線通信を行う公知の装置である。この無線通信装置4により、この行動評価装置1による評価結果(後述)を上記携帯電話やパーソナルコンピュータ等へ送信することが可能となる。
【0028】
加速度センサ2は、X軸・Y軸・Z軸の3軸方向の加速度を、この例では±2Gの範囲で検知可能な半導体式の公知のものである。この加速度センサ2は、10ミリ秒周期でX,Y,Z方向の加速度をそれぞれ計測して出力する。加速度センサ2が出力した値は、次に述べる制御部50に内蔵されたメモリ54(図2参照)に順次格納され、少なくとも5秒間保持される。
【0029】
演算装置5は、図2に示すように、この演算装置5全体の動作を制御するCPU(中央演算処理装置)からなる制御部50と、加速度センサ2の出力を受けて処理する入力処理部51と、第1のニューラルネットワーク52と、第2のニューラルネットワーク55と、第1のニューラルネットワーク52および第2のニューラルネットワーク55の出力を受けて処理する出力処理部53と、データを一時的に格納し得るメモリ54とを備えている。
【0030】
入力処理部51は、制御部50による制御下で、加速度センサ2の出力に対して信号処理を施して、人90の動きを表す特徴データとして複数種類の統計データを生成する。具体的には、入力処理部51は、次のような統計データを生成する。
【0031】
まず、現在の時刻(人90の動作状態の認識を行う時刻に相当)をt1とし、そこから5秒前の時刻をt0とする。入力処理部51は、時刻t0からt1までの5秒間にメモリ54に格納された加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)の平均値をそれぞれ統計データとして算出する。算出された平均値を、それぞれ特徴データX1,Y1,Z1とする。
【0032】
また、入力処理部51は、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向の出力の標準偏差を統計データとして算出する。算出された標準偏差を、それぞれ特徴データX2,Y2,Z2とする。
【0033】
また、入力処理部51は、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向それぞれの出力の最大値と最小値とを探索して、上記最大値と最小値との間の差をそれぞれ統計データとして算出する。算出された上記最大値と最小値との間の差を、それぞれ特徴データX3,Y3,Z3とする。
【0034】
また、入力処理部51は、時刻t0からt1までの5秒間において加速度センサ2のX,Y,Z方向の出力が0になった回数(以下「ゼロクロス回数」という。)をそれぞれカウントして統計データとして求める。求められたゼロクロス回数を、それぞれX4,Y4,Z4とする。
【0035】
このように、入力処理部51は、12種類の統計データである特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成する。入力処理部51による特徴データX1〜X4,Y1〜Y4,Z1〜Z4の生成は、100ミリ秒周期で行われる。1つの軸方向、例えばX軸方向に関して言えば、メモリ54に格納された500個の1種類のデータ(5秒間にわたる加速度センサ2の出力値)から、入力処理部51によって4種類の特徴データX1〜X4が100ミリ秒毎に生成される、ということになる。
【0036】
第1のニューラルネットワーク52は、この例では図3に示すように、12個の入力素子i1,i2,…,i12を含む入力層52iと、7個の素子m1,m2,…,m7を含む中間層52mと、7個の出力素子n1,n2,…,n7を含む出力層52nとの3層から構成されている。この第1のニューラルネットワーク52は、この例では逆誤差伝搬法(Back Propagation algorithm)と呼ばれる学習法によって、入力層52iの入力素子i1,i2,…,i12に入力された入力から、出力層52nの出力素子n1,n2,…,n7に正しい出力が得られるような学習を行えるように構成されている。
【0037】
具体的には、まず、入力素子i1,i2,…,i12に対する入力にそれぞれ重み係数wj1,wj2,…,wj12(j=1,2,…,7とする。)を乗算し、次のようにそれらの入力と重み係数との積の線形和ujを求める。
【0038】
出力素子n1,n2,…,n7の出力を、次のようにその線形和ujのシグモイド関数f(uj)であるものとする。
f(uj)=1/(1+exp(−uj))
【0039】
次に、入力素子i1,i2,…,i12に或る入力データセットが入力されたときの出力素子n1,n2,…,n7の出力と、正しい解答を表す教師データとの間の誤差を求める。
【0040】
出力素子n1,n2,…,n7の出力とその教師データとの間の誤差が解消するように、上記重み係数wj1,wj2,…,wj12を変更してゆく。誤差の元となった中間層の出力も順次調整してゆく。
【0041】
このようにして学習を行ってゆくと、或る入力データセットに対して出力層52nの出力素子n1,n2,…,n7のうち、1つの出力素子のみが反応し(値が1になり)、残りの出力素子の値は略0になるようになる。第1のニューラルネットワーク52は、このような逆誤差伝搬法による学習を行えるように構成されている。
【0042】
第2のニューラルネットワーク55は、この例では図4に示すように、12個の入力素子i1,i2,…,i12を含む入力層55iと、7個の素子m1,m2,…,m7を含む中間層55mと、1個の出力素子n1を含む出力層55nとの3層から構成されている。この第2のニューラルネットワーク52は、第1のニューラルネットワーク52と同様に、この例では逆誤差伝搬法によって、入力層55iの入力素子i1,i2,…,i12に入力された入力から、出力層55nの出力素子n1に正しい出力が得られるような学習を行えるように構成されている。
【0043】
図2中の出力処理部53は、制御部50による制御下で、第1のニューラルネットワーク52の出力層52nおよび第2のニューラルネットワーク55の出力層55nの出力を受けて、それに応じた認識・評価結果を画像として出力する処理を行う。この認識・評価結果は、行動評価装置1のディスプレイ部3に表示される。
【0044】
上述の入力処理部51、第1のニューラルネットワーク52、第2のニューラルネットワーク55、出力処理部53は、ソフトウェアによって構成されている。この行動評価装置1は、被験体90に対する検出手段として加速度センサ2のみを備えているので、簡単かつ安価に構成され得る。
【0045】
図9(A)に示すように、この行動評価装置1は、制御部50による制御によって、大別して、ステップS101に示す「お手本の収録」段階の処理と、ステップS102に示す「行動の評価」段階の処理とを実行する。
【0046】
図9(B)は、上記「お手本の収録」段階の処理(ステップS101)を、より具体的に示している。この例では、電源スイッチ42がオンされている動作期間中に、使用者がボタンスイッチ11を3秒間以上押し続けたとき、この「お手本の収録」段階の処理を開始するものとする。
【0047】
制御部50は、まずステップS201で、例えばディスプレイ部3に「認識の学習をしますか?」と表示して、第1のニューラルネットワーク52に対する学習指示(これを「第1の学習指示」と呼ぶ。)があるか無いかを判断する。第1の学習指示は、この例では使用者がボタンスイッチ11を1回(3秒間未満)押すことにより入力されるものとする。所定期間(例えば5秒間)内に第1の学習指示があれば(ステップS201でYES)、ステップS202に進んで第1のニューラルネットワーク52の学習の処理を行う。予め第1のニューラルネットワーク52の学習が完了していてステップS201では第1の学習指示が無かったとき(ステップS201でNO)、またはステップS202の学習後に、ステップS203へ進む。ステップS203では、第1のニューラルネットワーク52による認識の処理を開始する。
【0048】
この第1のニューラルネットワーク52による認識をリアルタイムで行っている期間中に、制御部50は、ステップS204で、例えばディスプレイ部3に「評価の学習をしますか?」と表示して、第2のニューラルネットワーク55に対する学習指示(これを「第2の学習指示」と呼ぶ。)があるか無いかを判断する。第2の学習指示は、この例では第1の学習指示と同様に、使用者がボタンスイッチ11を1回(3秒間未満)押すことにより入力されるものとする。所定期間(例えば5秒間)内に第2の学習指示があれば(ステップS204でYES)、ステップS205に進んで第2のニューラルネットワーク55の学習の処理を行う。予め第2のニューラルネットワーク55の学習が完了していてステップS205では第2の学習指示が無かったとき(ステップS204でNO)、またはステップS205の学習後に、この「お手本の収録」の処理を終了する。
【0049】
次に、被験体90が複数種類の動作を行う場合を想定して、行動評価装置1における第1のニューラルネットワーク52の学習段階の処理(図9(B)中のステップS202)について、図10(A)を参照しながら具体的に説明する。この例では、複数種類の動作とは、図7中の「動作状態」欄に示すように、「休止」、「歩行A」、「歩行B」、「走行A」、「走行B」、「スイングA」、「スイングB」という7種類の動作を指すものとする(動作の種類数は、第1のニューラルネットワーク52の出力素子n1,n2,…,n7の個数に対応している。)。ここで、「休止」は被験体90が静止している状態を指す。「歩行A」は被験体90がゆっくり歩いている状態を指し、「歩行B」は被験体90が速く歩いている状態を指す。「走行A」は被験体90がゆっくり走っている状態を指し、「走行B」は被験体90が速く走っている状態を指す。「スイングA」は被験体90が長いシャフトのゴルフクラブ(例えば1番ウッド)をフラットにスイングしている状態(水平面に対するスイングプレーンの傾斜角が小)を指し、「スイングB」は被験体90が短いシャフトのゴルフクラブ(例えば9番アイアン)をアップライトにスイングしている状態(水平面に対するスイングプレーンの傾斜角が大)を指す。なお、スイングの範疇には、「スイングA」、「スイングB」に加えて、さらに別のタイプの「スイングC」、「スイングD」、…を含んでいても良い。
【0050】
図10(A)中のステップS1に示すように、まず、被験体90が行動評価装置1を装着し、行動評価装置1(の第1のニューラルネットワーク52)に学習させたい7種類の動作を順次行う。これにより、行動評価装置1の加速度センサ2は、上記7種類の動作に対応する加速度データをそれぞれ実測して取得する。既述のように、加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)が、メモリ54に格納される。これとともに、入力処理部51は、既述の12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成する。例えば、被験体90が図5中の矢印91で示すように「スイングA」をしている時、X,Y,Z方向の出力の平均値X1,Y1,Z1は、図6中のデータ12,13,14のように得られる。
【0051】
次に、図10(A)中のステップS2に示すように、上記7種類の動作の各々において特徴的な部分を抽出する。図6の例では、被験体90が「スイングA」をしている時に特徴的なデータを表す期間15のデータを抽出する。このようにした場合、学習の精度を高めることができ、結果として誤認識の防止につながり、有意義である。なお、図6の例では、平均値X1,Y1,Z1のみを示しているが、標準偏差X2,Y2,Z2、最大値と最小値との間の差X3,Y3,Z3、またはゼロクロス回数X4,Y4,Z4について、それぞれ特徴的なデータを表す期間があれば、その期間のデータを抽出するのが望ましい。
【0052】
次に、図10(A)中のステップS3に示すように、正しい解答(動作)を表す教師データを作成する。この教師データは、被験体90が或る動作をした時に、入力処理部51によって生成された12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4が第1のニューラルネットワーク52に入力された場合に相当するものとする。被験体90が「スイングA」をした例では、出力素子n1,n2,n3,n4,n5,n6,n7の出力に対して、教師データは0,0,0,0,0,1,0となる。
【0053】
次に、図10(A)中のステップS4に示すように、上記教師データを用いて、第1のニューラルネットワーク52に、逆誤差伝搬法によって学習を行わせる。すなわち、図3に示した第1のニューラルネットワーク52の入力素子i1,i2,…,i12に或る入力データセットとして特徴データX1〜X4,Y1〜Y4,Z1〜Z4が入力されたときの出力素子n1,n2,…,n7の出力と、正しい解答を表す教師データとの間の誤差を求める。そして、出力素子n1,n2,…,n7の出力とその教師データとの間の誤差が解消するように、フィードバックを行って、上記重み係数wj1,wj2,…,wj12を変更して調整してゆく。誤差の元となった中間層の出力も順次調整してゆく。これにより、図10(A)中のステップS5,S6に示すように、被験体90の動作状態判別のための重み係数wj1,wj2,…,wj12を得て、第1のニューラルネットワーク52にそれらの重み係数を組み込む。このことは、第1のニューラルネットワーク52を構成するソフトウェア上では、入力データセットから出力データセットを得るための計算式(アルゴリズム)を確立することと等価である。
【0054】
このようにして学習を行ってゆくと、或る運動を表す入力データセットに対して、出力層52nの出力素子n1,n2,…,n7のうち、1つの出力素子のみが反応し(値が1になり)、残りの出力素子は反応しない(値が略0になる)ようになる。この例では、図7に示すように、n1が反応したときは「休止」、n2が反応したときは「歩行A」、n3が反応したときは「歩行B」、n4が反応したときは「走行A」、n5が反応したときは「走行B」、n6が反応したときは「スイングA」、n7が反応したときは「スイングB」という動作状態を表すようになる。
【0055】
このようにして、第1のニューラルネットワーク52の学習段階では、被験体90がした複数種類(この例では7種類)の動作又は行動と被験体90に取り付けられた加速度センサ2の出力との間のそれぞれの対応関係に基づいて、加速度センサ2の出力から被験体90がした動作又は行動を認識する学習を済ませる。
【0056】
次に、行動評価装置1における第1のニューラルネットワーク52の認識段階の処理(図9(B)中のステップS203)について、図10(B)を参照しながら具体的に説明する。被験体90は、行動評価装置1を装着して、図7中の7種類の動作の中の或る動作を行うものとする。
【0057】
図10(B)中のステップS11に示すように、まず、行動評価装置1の加速度センサ2は、上記7種類の動作に対応する加速度データをそれぞれ実測して取得する。既述のように、加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)が、メモリ54に格納される。これとともに、ステップS12に示すように、入力処理部51は、既述の12種類の統計データである特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成する。
【0058】
次に、ステップS13に示すように、第1のニューラルネットワーク52の入力素子i1,i2,…,i12に、上記12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を含む入力データセットが入力される。すると、ステップS14に示すように、第1のニューラルネットワーク52の出力層52n(出力素子n1,n2,…,n7)に、結果を表すデータが出力される。ステップS15に示すように、その結果から、出力処理部53は、被験体90が現在行っている動作が何であるかを認識する。
【0059】
そして、ステップS16に示すように、出力処理部53による認識結果がディスプレイ部3に表示される。
【0060】
この行動評価装置1は、電源スイッチ42がオンされている動作期間内で、第1のニューラルネットワーク52の学習段階の処理(図9(B)中のステップS202)や第2のニューラルネットワーク55の学習段階の処理(図9(B)中のステップS205)を行っている期間以外は、ステップS11〜S16の処理を100ms周期で繰り返す。これにより、被験体90の動作状態の認識を実質的にリアルタイムで常時行う。
【0061】
例えば図11(A)に模式的に示すように、時間tが経過するにつれて、メモリ54に格納された加速度センサ2の測定データ21から、その時々の被験体90の動作状態がリアルタイムで順次認識される(認識結果を符号22で示す。)。この例では、「休止」、「休止」、「歩行A」、「休止」、「スイングA」、「歩行A」、「歩行A」、「休止」がこの順に認識されている。メモリ54には、加速度センサ2の出力に対応づけて、この動作状態の認識結果22が順次格納される。
【0062】
なお、第1のニューラルネットワーク52の学習段階の処理(図9(B)中のステップS202)や第2のニューラルネットワーク55の学習段階の処理(図9(B)中のステップS205)を行っている期間は、例えばディスプレイ部3に「学習中」と表示して、被験体90の動作状態の認識や行動の評価を行っていないことを明示する。
【0063】
次に、行動評価装置1における第2のニューラルネットワーク55の学習段階の処理(図9(B)中のステップS205)について、具体的に説明する。
【0064】
まず、被験体90が行動評価装置1を装着し、行動評価装置1(の第2のニューラルネットワーク55)に評価させたい動作を行う。この例では、使用者としての被験体90が、「スイングA」をする、すなわちゴルフクラブとして1番ウッドをスイングしてゴルフボールを打つものとする。
【0065】
被験体90にとって満足のいくナイスショットが打てたら、被験体90は、この例では使用者として、そのスイング後30秒以内にボタンスイッチ11を1回(3間秒未満)押す。すなわち、既述の第2の学習指示を入力する(図9(B)中のステップS204)。これにより、図12(A)に示す第2のニューラルネットワーク55の学習段階の処理に入る。
【0066】
ボタンスイッチ11が押された時、図12(A)中のステップS21に示すように、制御部50は、メモリ54内で、現時点t1から遡った直近の、第1のニューラルネットワーク52を通して認識された動作又は行動を探索する。この例では、制御部50は、第1のニューラルネットワーク52が学習を済ませた複数種類の動作又は行動のうちスイングを探索するように設定されている。探索対象の期間の長さは、現時点t1から遡った直近の1分間として設定されている。
【0067】
制御部50は、メモリ54内を探索して、動作状態の認識結果22の中に或るスイングを発見できたら(ステップS22でYES)、それを被験体90がナイスショットをしたときのスイングであると判断して、ステップS23に示すように、それに対応する加速度センサ2の出力(測定データ)をメモリ54から読み出す。図11(A)の例では、「スイングA」に対応する加速度センサ2の出力21Fを読み出す。
【0068】
次に、制御部50は、図12(A)中のステップS24に示すように、読み出した加速度センサ2の出力21Fを、学習のために第2のニューラルネットワーク55の入力層55iに入力する。具体的には、測定データ21Fとしての、入力処理部51によって生成された12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を、第2のニューラルネットワーク55の入力素子i1,i2,…,i12に入力データセットとして入力する。これとともに、制御部50は、第2のニューラルネットワーク55の出力層55n(出力素子n1)に、教師データとして数値「1」を与える。
【0069】
これにより、第2のニューラルネットワーク55に、第1のニューラルネットワーク52におけるのと同様に、逆誤差伝搬法によって学習を行わせる。すなわち、図4に示した第2のニューラルネットワーク55の入力素子i1,i2,…,i12に或る入力データセットとして特徴データX1〜X4,Y1〜Y4,Z1〜Z4が入力されたときの出力素子n1の出力と、正しい解答を表す教師データとの間の誤差を求める。そして、出力素子n1の出力とその教師データとの間の誤差が解消するように、フィードバックを行って、上記重み係数wj1,wj2,…,wj12を変更して調整してゆく。誤差の元となった中間層の出力も順次調整してゆく。これにより、図12(A)中のステップS25,S26に示すように、被験体90の「スイングA」を評価するための重み係数wj1,wj2,…,wj12を得て、第2のニューラルネットワーク55にそれらの重み係数を組み込む。
【0070】
このようにして学習を行ってゆくと、被験体90がナイスショットをしたときの「スイングA」を表す入力データセットに対して、出力層55nの出力素子n1の値が1になり、ミスショットをしたときのスイングや別の「スイングB」、「スイングC」、…を表す入力データセットに対して出力素子n1の値が小さくなる(0に近くなる)ようになる。
【0071】
このようにして、第2のニューラルネットワーク55の学習段階では、被験体90がナイスショットをしたときの「スイングA」と被験体90に取り付けられた加速度センサ2の出力との間の対応関係に基づいて、加速度センサ2の出力から被験体90がしたスイングを評価するための学習を済ませる。
【0072】
上の例では、被験体90がナイスショットをしたときのスイングに対応する加速度センサ2の出力を、第2のニューラルネットワーク55の学習のための入力データセットとした。当然ながら、これに限られるものではなく、例えばゴルフコーチがお手本ショットをしたときのスイングに対応する加速度センサ2の出力を、第2のニューラルネットワーク55の学習のための入力データセットとしても良い。
【0073】
いずれにしても、この行動評価装置1では、使用者がボタンスイッチ11を押すことによって、第2のニューラルネットワーク55に所望のタイミングで適切な手本を学習させることができる。
【0074】
次に、行動評価装置1における「行動の評価」段階の処理(図9(A)中のステップS102)について、具体的に説明する。
【0075】
この「行動の評価」段階では、第1のニューラルネットワーク52は、被験体90の動作状態の認識をリアルタイムで常時行っている。例えば図11(B)に模式的に示すように、時間tが経過するにつれて、メモリ54に格納された加速度センサ2の測定データ23から、その時々の被験体90の動作状態がリアルタイムで順次認識される(認識結果を符号24で示す。)。この例では、「休止」、「休止」、「歩行A」、「休止」、「スイングA」、「歩行A」、「歩行A」、「休止」がこの順に認識されている。メモリ54には、加速度センサ2の出力に対応づけて、この動作状態の認識結果24が順次格納されている。
【0076】
図12(B)中のステップS31に示すように、制御部50は、メモリ54内における動作状態の認識結果24に或るスイングが含まれているか否かをリアルタイムで常時探索する。動作状態の認識結果24にスイングが含まれていれば(ステップS32でYES)、制御部50は、ステップS33に示すように、そのスイングに対応する加速度センサ2の出力をメモリ54から読み出す。図11(A)の例では、「スイングA」に対応する加速度センサ2の出力(測定データ)23Fを読み出す。
【0077】
次に、制御部50は、図12(B)中のステップS34に示すように、読み出した加速度センサ2の出力(測定データ)23Fを、行動の評価のために第2のニューラルネットワーク55の入力層55iに入力する。具体的には、測定データ23Fとしての入力処理部51によって生成された12種類の特徴データX1〜X4,Y1〜Y4,Z1〜Z4を、第2のニューラルネットワーク55の入力素子i1,i2,…,i12に入力データセットとして入力する。すると、ステップS35に示すように、第2のニューラルネットワーク55の出力層55n(出力素子n1)に、結果を表すデータが出力される。すなわち、お手本(図9(B)中のステップS205で学習したもの)に近い程度を表す近似度(0から1までの数値)が出力される。例えば図8(A)に例示するように、近似度として出力素子n1に0.80という数値が出力される。この例では、第2のニューラルネットワーク55の出力層55nが単一の出力素子n1のみを含むので、被験体90がした或るスイングが手本に近い程度を1つの数値で明確に表すことができる。
【0078】
そして、図12(B)中のステップS36に示すように、出力処理部53によってスイングの評価結果がディスプレイ部3に表示される。この例では、出力処理部53は、近似度の数値を100倍して、100点満点の点数Pを算出する。P=80の場合は「さっきのスイングは80点」というように表示を行う。
【0079】
このように、この行動評価装置1によれば、近似度に基づく点数表示によって、使用者は、被験体90がしたスイングが手本に近い程度、すなわち、被験体90自身が調子の良いとき(ナイスショットをしたとき)のスイングにどれだけ近いか、またはゴルフコーチがお手本ショットをしたときのスイングにどれだけ近いか、を明確に知ることができる。
【0080】
この行動評価装置1は、「行動の評価」段階の処理を行っている期間は、ステップS31〜S36の処理を100ms周期で繰り返す。これにより、被験体90がしたスイングの評価を実質的にリアルタイムで常時行うことができる。
【0081】
この例では、電源スイッチ42がオフされたとき、または、電源スイッチ42がオンされている動作期間中に、使用者がボタンスイッチ11を3秒間以上押し続けたとき、この「行動の評価」段階の処理を終了するものとする。
【0082】
以上より明らかなように、この実施形態の行動評価装置1では、使用者がボタンスイッチ11を押して第2の学習指示を入力することによって、第2のニューラルネットワーク55に所望のタイミングで適切な手本を学習させることができる。したがって、この行動評価装置1によれば、「行動の評価」段階で、従来に比して、被験体90がした動作又は行動についての評価の精度を高めることができる。
【0083】
なお、この実施形態では、使用者がボタンスイッチ11を押して第1、第2の学習指示を入力するものとしたが、これに限られるものではない。無線通信装置4は、この行動評価装置1の近傍に存在する携帯電話やパーソナルコンピュータから無線通信装置4を介して、第1、第2の学習指示を入力するようにしても良い。
【0084】
また、この実施形態では、第1のニューラルネットワーク52の学習段階(図9(B)中のステップS202)で、被験体90が行動評価装置1を装着し、加速度データを実測して、第1のニューラルネットワーク52に学習させるべき入力データを得た。しかしながら、第1のニューラルネットワーク52は、大まかな動作状態の認識を行うだけであるから、必ずしも被験体90からの実測データを入力データとする必要はない。第1のニューラルネットワーク52の学習は、この行動評価装置1の近傍に存在するパーソナルコンピュータ等から無線通信装置4を介して、予め学習用に用意された入力データを入力し、学習アルゴリズムを実行することによって行っても良い。
【0085】
また、上述の実施形態では、第1のニューラルネットワーク52は、3層からなり、12個の入力素子、7個の出力素子を備えたものとした。また、第2のニューラルネットワーク55は、3層からなり、12個の入力素子、1個の出力素子を備えたものとした。しかしながら、これに限られるものではなく、第1のニューラルネットワーク52、第2のニューラルネットワーク55は、さらに多層で、多くの入力素子、出力素子を備えても良い。
【0086】
特に、第2のニューラルネットワーク55の出力層55nの出力素子は、お手本の数だけあっても良い。例えば「スイングA」についてのお手本データと、「スイングB」についてのお手本データとがある場合、図8(B)中に例示するように、第2のニューラルネットワーク55の出力層55nを2つの出力素子n1,n2を含むものとする。この場合、第2のニューラルネットワーク55の学習段階で、「スイングA」に応じたお手本の入力データセットを入力したときは、教師データとしてn1に数値「1」を与え、n2に数値「0」を与える。一方、「スイングB」に応じたお手本の入力データセットを入力したときは、教師データとしてn1に数値「0」を与え、n2に数値「1」を与える。このようにして、学習を済ませる。すると、「行動の評価」段階では、例えば被験体90がお手本に近い「スイングA」をしたとき、図8(B)中に例示するように、例えば出力素子n1に数値「0.90」が出力され、出力素子n2に数値「0.10」が出力される。この出力結果は、n1,n2の中でn1の値が最も大きいことから、被験体90がしたスイングは「スイングA」であることを示している。また、被験体90がした「スイングA」のお手本の「スイングA」に対する近似度が、0.90(100点満点で90点)であることを示している。
【0087】
このように、第2のニューラルネットワーク55の出力層55nが複数の出力素子を含む場合、複数のタイプのスイングを評価することができる。
【0088】
また、上述の実施形態では、加速度センサ2のX,Y,Z方向の出力(10ミリ秒周期の値)から、入力処理部51によって、既述の12種類の統計データである特徴データX1〜X4,Y1〜Y4,Z1〜Z4を生成した。しかしながら、これに限られるものではない。例えば標準偏差X2,Y2,Z2に代えて、またはそれに加えて、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向の出力の「分散」を、特徴データとして生成して用いても良い。または、最大値と最小値との間の差X3,Y3,Z3に代えて、またはそれに加えて、時刻t0からt1までの5秒間における加速度センサ2のX,Y,Z方向の出力の「最大値」および「最小値」を、特徴データとして抽出して用いても良い。要するに、この実施形態で挙げた特徴データのうち、少なくとも2種類の特徴データを用いれば、本発明を実施することができる。当然ながら、この実施形態で挙げた特徴データの全部を用いても良い。
【0089】
また、この実施形態では、行動評価装置1は、携帯電話101や、歩数計・活動量計、モバイルコンピュータなどの電子機器に、一体に組み込んで構成され得る。これにより、ユーザの利便性を高めることができる。
【0090】
一方、加速度センサ2を本体ケーシング7とは別体に構成して、加速度センサ2(およびそれに付随した無線通信装置)のみが被験体90に装着されるようにしても良い。この場合、加速度センサ2と本体とは無線通信装置を介して通信する。
【0091】
また、この実施形態では、行動評価装置1は、ゴルフのスイングを評価する例について述べたが、当然ながら、これに限られるものではない。例えばダンスなどにおいては、指導者の動きをお手本として行動評価装置1にデータ入力してもらうことにより、被験体90の動きがお手本にどれだけ近づいているか、ということを評価できる。
【0092】
なお、上記行動評価装置1が対象とする被験体90は、冒頭に述べたように、代表的には人間を指すが、動物も含む。この行動評価装置1は、使用者が被験体90としての動物に芸を仕込む場合にも、好ましく適用できる。
【符号の説明】
【0093】
1 行動評価装置
2 加速度センサ
3 ディスプレイ部
4 無線通信装置
5 演算装置
6 電池
7 本体ケーシング
41 指示スイッチ
50 制御部
51 入力処理部
52 第1のニューラルネットワーク
53 出力処理部
54 メモリ
55 第2のニューラルネットワーク
【特許請求の範囲】
【請求項1】
被験体に取り付けられるべき加速度センサと、
上記加速度センサの出力を記憶するメモリと、
上記加速度センサの出力から、手本となる動作又は行動を認識する学習を済ませたニューラルネットワークとを備えて、
上記被験体に取り付けられた上記加速度センサの出力から、上記ニューラルネットワークを通して上記被験体がした動作又は行動を認識するとともに、認識された動作又は行動が上記手本に近い程度を評価する行動評価装置において、
上記ニューラルネットワークは、
予め、上記被験体がした複数種類の動作又は行動と上記被験体に取り付けられた上記加速度センサの出力との間のそれぞれの対応関係に基づいて、上記被験体がした動作又は行動を認識する学習を済ませ、その学習後は、上記加速度センサの出力に基づいて、リアルタイムで上記被験体がした動作又は行動を認識する第1のニューラルネットワークと、
指示に基づいて、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を、上記メモリから読み出して手本として学習し、その学習後は、上記第1のニューラルネットワークを通して認識された動作又は行動が上記手本に近い程度を表す近似度を出力する第2のニューラルネットワークとを
含むことを特徴とする行動評価装置。
【請求項2】
請求項1に記載の行動評価装置において、
上記指示を入力するための指示スイッチと、
上記指示スイッチによって上記指示が入力された時、上記メモリ内で、現時点から遡った直近の、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を探索し、探索した上記加速度センサの出力を上記メモリから読み出して、学習のために上記第2のニューラルネットワークに入力する制御を行う制御部とを備えたことを特徴とする行動評価装置。
【請求項3】
請求項1または2に記載の行動評価装置において、
上記第2のニューラルネットワークの出力層は単一の素子のみを含むことを特徴とする行動評価装置。
【請求項4】
請求項1から3までのいずれか一つに記載の行動評価装置において、
上記近似度は数値であることを特徴とする行動評価装置。
【請求項5】
請求項1から4までのいずれか一つに記載の行動評価装置において、
上記動作又は行動はゴルフスイングを含むことを特徴とする行動評価装置。
【請求項1】
被験体に取り付けられるべき加速度センサと、
上記加速度センサの出力を記憶するメモリと、
上記加速度センサの出力から、手本となる動作又は行動を認識する学習を済ませたニューラルネットワークとを備えて、
上記被験体に取り付けられた上記加速度センサの出力から、上記ニューラルネットワークを通して上記被験体がした動作又は行動を認識するとともに、認識された動作又は行動が上記手本に近い程度を評価する行動評価装置において、
上記ニューラルネットワークは、
予め、上記被験体がした複数種類の動作又は行動と上記被験体に取り付けられた上記加速度センサの出力との間のそれぞれの対応関係に基づいて、上記被験体がした動作又は行動を認識する学習を済ませ、その学習後は、上記加速度センサの出力に基づいて、リアルタイムで上記被験体がした動作又は行動を認識する第1のニューラルネットワークと、
指示に基づいて、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を、上記メモリから読み出して手本として学習し、その学習後は、上記第1のニューラルネットワークを通して認識された動作又は行動が上記手本に近い程度を表す近似度を出力する第2のニューラルネットワークとを
含むことを特徴とする行動評価装置。
【請求項2】
請求項1に記載の行動評価装置において、
上記指示を入力するための指示スイッチと、
上記指示スイッチによって上記指示が入力された時、上記メモリ内で、現時点から遡った直近の、上記第1のニューラルネットワークを通して認識された動作又は行動に対応する上記加速度センサの出力を探索し、探索した上記加速度センサの出力を上記メモリから読み出して、学習のために上記第2のニューラルネットワークに入力する制御を行う制御部とを備えたことを特徴とする行動評価装置。
【請求項3】
請求項1または2に記載の行動評価装置において、
上記第2のニューラルネットワークの出力層は単一の素子のみを含むことを特徴とする行動評価装置。
【請求項4】
請求項1から3までのいずれか一つに記載の行動評価装置において、
上記近似度は数値であることを特徴とする行動評価装置。
【請求項5】
請求項1から4までのいずれか一つに記載の行動評価装置において、
上記動作又は行動はゴルフスイングを含むことを特徴とする行動評価装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2012−238072(P2012−238072A)
【公開日】平成24年12月6日(2012.12.6)
【国際特許分類】
【出願番号】特願2011−105135(P2011−105135)
【出願日】平成23年5月10日(2011.5.10)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
【公開日】平成24年12月6日(2012.12.6)
【国際特許分類】
【出願日】平成23年5月10日(2011.5.10)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
[ Back to top ]