説明

脳情報出力装置、ロボット、および脳情報出力方法

【課題】脳活動データで種々の機器を制御する脳・機械インタフェース(BMI)において、試験者の意図検出の精度を高める。
【解決手段】一の意図の元にユーザが一連の行為であるトライアルを行った際に、1以上のセンサを用いて、前記ユーザの脳から脳活動を示す時系列データである学習データを取得する学習データ取得部112と、学習データの一部のデータである部分学習データを1以上取得する部分学習データ取得部113と、1以上の各部分学習データの特性値を取得し、当該特性値を用いて前記各部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを学習データから除いて正常学習データを取得する異常データ除去部114を有し、正常学習データを用いて意図判別を行う脳情報出力装置により、意図検出の精度を向上する。

【発明の詳細な説明】
【技術分野】
【0001】
近年、脳に対する生理学的な知見の充実、脳計測機器の発展、高性能なコンピュータのコストダウン、および機械学習の分野の進歩等に伴い、脳・機械インタフェース(Brain Machine Interface:BMI)に関する研究が注目を浴びてきている(非特許文献1)。BMIは、脳と機械をつなぐインタフェースである。BMIは、人が考えた時や、何らかの行動した際に生ずる脳活動の信号を計測し、その計測データに信号処理技術を施すことにより、ユーザの意図を汲み出すものである。
【0002】
BMIにおいて、意図の検出には、意図検出アルゴリズムを用いる。そして、その意図検出アルゴリズムには、事前に調整すべき各種のパラメータ(後述する学習特徴量群)がある。このパラメータの調整は、事前に取得したユーザの脳活動データを使って行われる。ここで、脳活動データとは、通常、複数のトライアルデータから構成される。トライアルデータとは、ユーザがある動作(例えば、体を動かしたり、想像したりなど)を一度行った際(1トライアルと呼ぶ)に取得される脳活動の一連の時系列的なデータである。なお、トライアルデータとは、後述する学習データである。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Toward Brain-Computer Interfacing (Neural Information Processing)、 MIT Press、 ISBN 978-0262042444
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、異常なセンサや異常なトライアルを含む脳活動データを使って、BMIの意図検出アルゴリズムのパラメータを調整した場合、BMIの性能が大幅に悪化する、という問題があった。
【0005】
また、従来、手動で異常センサや異常トライアルを選び出して除去していた為に、非常に作業効率が悪かった。
【0006】
さらに、手動で異常センサや異常トライアルを選び出して除去していた為に、主観等が混入するため、性能が安定しない等の問題があった。
【課題を解決するための手段】
【0007】
本第一の発明の脳情報出力装置は、ユーザの意図を識別する情報である意図識別子と、当該意図識別子で識別される意図の元にユーザが一連の行為であるトライアルを行った際に当該ユーザの脳から取得された学習データから、抽出された1以上の特徴量である学習特徴量群とを対に有する意図判別情報を、2以上格納し得る意図判別情報格納部と、一の意図の元にユーザが一連の行為であるトライアルを行った際に、1以上のセンサを用いて、当該センサごとに、前記ユーザの脳から脳活動を示す時系列データである学習データを取得する学習データ群取得部と、前記学習データの一部のデータである部分学習データを、1以上取得する部分学習データ取得部と、前記1以上の各部分学習データの特性値を取得し、当該特性値を用いて、前記各部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、前記学習データから除き、正常学習データを取得する異常データ除去部と、前記正常学習データから、1以上の特徴量である正常学習特徴量群を取得する学習特徴量群取得部と、前記正常学習特徴量群と、前記一の意図を識別する意図識別子とを有する意図判別情報を、前記意図判別情報格納部に蓄積する意図判別情報蓄積部と、ユーザから脳活動のデータである脳活動データを取得する脳活動データ取得部と、前記脳活動データから、1以上の特徴量である入力特徴量群を取得する特徴量群取得部と、前記入力特徴量群に対応する意図識別子を、前記意図判別情報格納部に格納されている2以上の意図判別情報から取得する意図識別子取得部と、前記意図識別子取得部が取得した意図識別子を出力する意図識別子出力部とを具備する脳情報出力装置である。
【0008】
かかる構成により、自動的に異常な学習データを除去できるため、意図検出の精度が向上する。
【0009】
また、本第二の発明の脳情報出力装置は、第一の発明に対して、前記意図識別子取得部は、前記意図判別情報格納部の2以上の意図判別情報を用いて、前記特徴量群取得部が取得した入力特徴量群が、前記2以上の意図判別情報に含まれる2以上の意図識別子の各々に対応する確率を、前記2以上の意図識別子ごとに算出する確率算出手段と、前記確率算出手段が算出した意図識別子ごとの確率から、最も大きい確率に対応する意図識別子を取得する意図識別子取得手段とを具備する脳情報出力装置である。
【0010】
かかる構成により、自動的に異常な学習データを除去できるため、意図検出の精度が向上する。
【0011】
また、本第三の発明の脳情報出力装置は、第一、第二いずれかの発明に対して、前記学習データ群取得部は、複数のトライアルを行った際に、1以上のセンサを用いて、トライアルごと、およびセンサごとに、前記ユーザの脳から脳活動を示す時系列データである学習データを取得し、前記部分学習データ取得部は、前記学習データから、前記トライアルごとに、部分学習データを取得し、前記異常データ除去部は、前記トライアルごとの部分学習データの特性値を取得し、当該特性値を用いて、前記部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、前記学習データから除き、正常学習データを取得する異常トライアル除去手段を具備する脳情報出力装置である。
【0012】
かかる構成により、自動的に異常なトライアルを検出し、当該トライアルの学習データを除去できるため、意図検出の精度が向上する。
【0013】
また、本第四の発明の脳情報出力装置は、第三の発明に対して、前記部分学習データの特性値は、前記学習データを構成する全データの平均値と標準偏差、または前記学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて算出される値であり、前記異常トライアル除去手段は、前記部分学習データの特性値から、前記部分学習データが、他のデータと比較して、一定以上のずれを有すると判断した場合、当該部分学習データを、前記学習データから除き、正常学習データを取得する脳情報出力装置である。
【0014】
かかる構成により、自動的に異常なトライアルを検出し、当該トライアルの学習データを除去できるため、意図検出の精度が向上する。
【0015】
また、本第五の発明の脳情報出力装置は、第四の発明に対して、前記異常トライアル除去手段は、前記部分学習データを構成する各センサのデータのうち、予め決められた以上の数のセンサのデータが、前記学習データを構成する全データの平均値と標準偏差、または前記学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて、一定以上のずれを有すると判断した場合に、当該部分学習データを、前記学習データから除き、正常学習データを取得する脳情報出力装置である。
【0016】
かかる構成により、自動的に異常なトライアルを検出し、当該トライアルの学習データを除去できるため、意図検出の精度が向上する。
【0017】
また、本第六の発明の脳情報出力装置は、第一から第五いずれかの発明に対して、前記部分学習データ取得部は、前記学習データから、前記センサごとに、部分学習データを取得し、前記異常データ除去部は、前記センサごとの部分学習データの特性値を取得し、当該特性値を用いて、前記部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、前記学習データから除き、正常学習データを取得する異常センサ除去手段を具備する脳情報出力装置である。
【0018】
かかる構成により、自動的に異常なセンサを検出し、当該センサの学習データを除去できるため、意図検出の精度が向上する。
【0019】
また、本第七の発明の脳情報出力装置は、第六の発明に対して、前記部分学習データの特性値は、前記センサごとの各部分学習データの平均値と標準偏差、または前記センサごとの各部分学習データの微分値の平均値と標準偏差のいずれか、または両方を用いて算出される値であり、前記異常センサ除去手段は、前記部分学習データの特性値から、前記部分学習データが、他のデータと比較して、一定以上のずれを有すると判断した場合、当該部分学習データを、前記学習データから除き、正常学習データを取得する脳情報出力装置である。
【0020】
かかる構成により、自動的に異常なセンサを検出し、当該センサの学習データを除去できるため、意図検出の精度が向上する。
【0021】
また、本第八の発明の脳情報出力装置は、第七の発明に対して、前記異常センサ除去手段は、前記部分学習データを構成する各トライアルのデータのうち、予め決められた以上の数のトライアルのデータが、前記学習データを構成する全データの平均値と標準偏差、または前記学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて、一定以上のずれを有すると判断した場合に、当該部分学習データを、前記学習データから除き、正常学習データを取得する脳情報出力装置である。
【0022】
かかる構成により、自動的に異常なセンサを検出し、当該センサの学習データを除去できるため、意図検出の精度が向上する。
【発明の効果】
【0023】
本発明による脳情報出力装置によれば、意図検出の精度を向上させることができる。
【図面の簡単な説明】
【0024】
【図1】本実施の形態1におけるロボットシステムの概念図
【図2】同ロボットシステムのブロック図
【図3】同脳情報出力装置の動作について説明するフローチャート
【図4】同異常データ除去処理の動作について説明するフローチャート
【図5】同脳情報出力装置の動作について説明するフローチャート
【図6】同意図識別子取得処理の動作について説明するフローチャート
【図7】同ロボットの動作について説明するフローチャート
【図8】同脳情報出力装置の動作を説明する概要図
【図9】同学習データの例を示す図
【図10】同異常データ除去処理の概念図
【図11】同意図判別情報の例を示す図
【図12】同実験結果を示す図
【図13】同コンピュータシステムの概観図
【図14】同コンピュータシステムのブロック図
【図15】同確率算出アルゴリズムを説明するための図
【図16】同確率算出アルゴリズムを説明するための図
【発明を実施するための形態】
【0025】
以下、脳情報出力装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【0026】
(実施の形態1)
本実施の形態において、1以上のセンサを有し、複数のトライアルにより複数の学習データを取得した場合、不適切な学習データを除去し、適切な学習データのみで、意図検出を行う脳情報出力装置について説明する。
【0027】
また、本実施の形態において、異常トライアルの学習データを除去したり、異常センサの学習データを除去したりすることにより、意図の検出精度を高めることができる脳情報出力装置について説明する。
【0028】
さらに、かかる脳情報出力装置から出力された意図識別子を受け付け、当該意図識別子に応じた動作を行うロボットについて説明する。
【0029】
図1は、本実施の形態におけるロボットシステム1の概念図である。ロボットシステム1は、脳情報出力装置11、ロボット12を具備する。脳情報出力装置11は、脳活動計測装置によって脳情報を取得し、ユーザの意図を検出し、当該意図を識別する意図識別子をロボット12に送付する。ロボット12は、脳情報出力装置11から意図識別子を受け付け、当該意図識別子に応じた動作を行う。ロボット12は、いわゆる人型の形状を有する電子機器でも良いが、他の形状を有する電子機器でも良い。ロボット12は、例えば、四輪車、二輪車、航空機、電車などの移動体でも良い。
【0030】
図2は、本実施の形態におけるロボットシステム1のブロック図である。ロボットシステム1を構成する脳情報出力装置11は、意図判別情報格納部111、学習データ取得部112、部分学習データ取得部113、異常データ除去部114、学習特徴量群取得部115、意図判別情報蓄積部116、脳活動データ取得部117、特徴量群取得部118、意図識別子取得部119、意図識別子出力部120を具備する。
【0031】
異常データ除去部114は、異常トライアル除去手段1141、異常センサ除去手段1142を具備する。
【0032】
意図識別子取得部119は、確率算出手段1191、意図識別子取得手段1192を具備する。
【0033】
ロボット12は、動作情報格納部121、意図識別子受付部122、実行部123を具備する。
【0034】
意図判別情報格納部111は、2以上の意図判別情報を格納し得る。意図判別情報は、意図識別子と学習特徴量群を有する。意図識別子は、ユーザの意図を識別する情報である。学習特徴量群は、意図識別子で識別される意図の元にユーザが一連の行為(トライアルという)を行った際に、ユーザの脳から取得された一のデータである学習データから抽出された1以上の特徴量である。
【0035】
ここで、意図とは、体の一部(例えば、右手、左手、舌、足など)を動かす行為や、特定のこと(例えば、右手を動かしていること、舌を出したこと、走っていることなど)を想像することなど、ユーザの脳の活動に反映されることである。また、意図識別子は、例えば、ユーザが動かす体の部分であり、例えば、「右手」「左手」「舌」「足」の4つである。また、意図識別子は、例えば、「右手」「左手」の2つであっても良い。意図識別子の数は問わないが、意図識別子の数は少ない方が、通常、脳情報出力装置11が出力する意図識別子がユーザの意図と合致している可能性は高い、と考えられる。学習特徴量群とは、学習データから抽出された1以上の特徴量の情報である。学習データとは、意図識別子で識別される意図の元にユーザが一連の行為を行った際に当該ユーザの脳から取得されたデータである。学習データは、ユーザの脳活動を示すデータであり、時系列的なデータである。学習データは、NIRS(近赤外分光分析)、fMRI(機能的MRI)、MEG(脳磁計)、EEG(脳波計)により取得されるデータなど、脳から取得される脳活動を示すデータであれば何でもよい。
【0036】
意図判別情報格納部111は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。意図判別情報格納部111に意図判別情報が記憶される過程は問わない。例えば、記録媒体を介して意図判別情報が意図判別情報格納部111で記憶されるようになってもよく、通信回線等を介して送信された意図判別情報が意図判別情報格納部111で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された意図判別情報が意図判別情報格納部111で記憶されるようになってもよい。
【0037】
学習データ取得部112は、トライアルを行った際に、1以上のセンサを用いて、当該センサごとに、ユーザの脳から脳活動を示す時系列データである学習データを取得する。通常、学習データ取得部112は、複数のトライアルを行った際に、1以上のセンサを用いて、トライアルごと、およびセンサごとに、ユーザの脳から学習データを取得する。なお、学習データ取得部112は、例えば、近赤外線光計測装置である。また、学習データ取得部112は、例えば、脳波計測装置である。また、学習データ取得部112は、例えば、機能的MRI(fMRI: functional Magnetic Resonance Imaging)や、PET(Positron Emission Tomography)なども良い。通常、学習データ取得部112と脳活動データ取得部117とは同じものである。また、学習データ取得部112は、通常、複数のセンサを有する。つまり、学習データは、脳活動計測装置に具備された複数のセンサからの時系列データで構成される。すなわち、通常、学習データは、(複数センサ×時系列×複数トライアル)の3次元データである。
【0038】
部分学習データ取得部113は、学習データの一部のデータである部分学習データを、1以上取得する。部分学習データ取得部113は、例えば、学習データから、トライアルごとに、部分学習データを取得する。また、部分学習データ取得部113は、例えば、学習データから、センサごとに、部分学習データを取得する。つまり、部分学習データとは、例えば、一トライアルの時系列的な複数センサのデータ群である。また、部分学習データとは、例えば、一センサが取得した複数トライアルの時系列的なデータ群である。また、部分学習データとは、例えば、一トライアルの一センサのある区間のデータ群でも良い。ある区間とは、例えば、データ取得開始から3秒後までの区間である。また、ある区間とは、例えば、データ取得終了の3秒前から終了までの区間である。また、部分学習データとは、例えば、一サンプルデータでも良い。
【0039】
部分学習データ取得部113は、通常、MPUやメモリ等から実現され得る。部分学習データ取得部113の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0040】
異常データ除去部114は、1以上の各部分学習データの特性値を取得し、当該特性値を用いて、各部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、学習データから除き、正常学習データを取得する。特性値とは、部分学習データの値そのものでも良いし、平均値や標準偏差などでも良い。
【0041】
また、特性値とは、例えば、学習データを構成する全データの平均値と標準偏差、または学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて、一定以上のずれを有すると判断したセンサのデータの数である。
【0042】
また、特性値とは、例えば、学習データを構成する全データの平均値と標準偏差、または前記学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて、一定以上のずれを有すると判断したトライアルの数である。
【0043】
また、異常データ除去部114は、後述する異常トライアル除去手段1141、異常センサ除去手段1142の両方を有することが好適であるが、その一方を有しても良い。また、異常データ除去部114は、異常トライアル除去手段1141、異常センサ除去手段1142の両方を有さず、学習データを構成する各データを検査し、例えば、学習データを構成する全データの平均値と標準偏差、または学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて、一定以上のずれを有すると判断したデータを個別に除去しても良い。
【0044】
異常データ除去部114は、通常、MPUやメモリ等から実現され得る。異常データ除去部114の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0045】
異常トライアル除去手段1141は、トライアルごとの部分学習データの特性値を取得し、当該特性値を用いて、部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データ(トライアルを構成するデータ全部)を、学習データから除き、正常学習データを取得する。なお、ここで取得された正常学習データから、さらに不適切なデータを除き、最終的な正常学習データが取得される場合もあり得る。
【0046】
異常トライアル除去手段1141は、トライアルごとの部分学習データの特性値から、部分学習データが、他のデータと比較して、一定以上のずれを有すると判断した場合、当該部分学習データを、学習データから除き、正常学習データを取得することは好適である。
【0047】
さらに具体的には、異常トライアル除去手段1141は、部分学習データを構成する各センサのデータのうち、予め決められた以上の数のセンサのデータが、一定以上のずれを有すると判断した場合に、当該部分学習データを、学習データから除き、正常学習データを取得することは好適である。部分学習データを構成する各センサのデータが一定以上のずれを有するか否かは、学習データを構成する全データの平均値と標準偏差、または学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて判断される。また、上記で除去される部分学習データは、異常であると判断されたトライアルの全データである。
【0048】
異常トライアル除去手段1141は、通常、MPUやメモリ等から実現され得る。異常トライアル除去手段1141の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0049】
異常センサ除去手段1142は、センサごとの部分学習データの特性値を取得し、当該特性値を用いて、部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、学習データから除き、正常学習データを取得する。
【0050】
異常センサ除去手段1142は、センサごとの部分学習データの特性値から、部分学習データが、他のデータと比較して、一定以上のずれを有すると判断した場合、当該部分学習データを、学習データから除き、正常学習データを取得する。
【0051】
さらに具体的には、異常センサ除去手段1142は、部分学習データを構成する各トライアルのデータのうち、予め決められた以上の数のトライアルのデータが、一定以上のずれを有すると判断した場合に、当該部分学習データを、学習データから除き、正常学習データを取得する。部分学習データを構成する各トライアルのデータが一定以上のずれを有するか否かは、学習データを構成する全データの平均値と標準偏差、または学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて判断される。また、上記で除去される部分学習データは、異常であると判断されたセンサの全データを除去である。
【0052】
異常センサ除去手段1142は、通常、MPUやメモリ等から実現され得る。異常センサ除去手段1142の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0053】
学習特徴量群取得部115は、異常データ除去部114が取得した正常学習データから、1以上の特徴量である正常学習特徴量群を取得する。学習特徴量群取得部115は、正常学習データに対して信号処理し、1以上の特徴量である正常学習特徴量群を取得する。ここで、信号処理は、例えば、バイアス補正、ベースライン補正、トレンド除去、平均値計算、ハイパスフィルターによる処理、ローパスフィルターによる処理、FFTによる処理、PCAによる処理、ICAによる処理、Phase Locking 値の算出、移動平均の算出、センサ選択、時間選択、リファレンス補正、ダウンサンプリング、アップサンプリング、パワー計算、包絡線計算(ヒルベルト変換)、空間フィルターによる処理、逆問題フィルターによる処理、などである。そして、特徴量とは、例えば、上記の信号処理により、算出されるデータであり、例えば、平均値、分散、Phase Locking 値などである。なお、正常学習特徴量群を構成する特徴量は、正常学習データの特性を示すデータであれば、何でも良い。また、学習特徴量群取得部115が行う信号処理の数は、複数でも良い。また、上記の各種の信号処理の例は、公知技術であるので詳細な説明を省略する。
【0054】
学習特徴量群取得部115は、通常、MPUやメモリ等から実現され得る。学習特徴量群取得部115の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0055】
意図判別情報蓄積部116は、正常学習特徴量群と、一の意図を識別する意図識別子とを有する意図判別情報を、意図判別情報格納部111に蓄積する。意図判別情報蓄積部116は、通常、少なくとも、すべての意図識別子に対応する意図判別情報を意図判別情報格納部111に蓄積する。
【0056】
意図判別情報蓄積部116は、通常、MPUやメモリ等から実現され得る。意図判別情報蓄積部116の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0057】
脳活動データ取得部117は、ユーザから脳活動のデータである脳活動データを取得する。脳活動データとは、NIRS(近赤外分光分析)、fMRI(機能的MRI)、MEG(脳磁計)、EEG(脳波計)により取得されるデータなど、脳から取得される脳活動を示すデータであれば何でもよい。脳活動データは学習データと同じ種類のデータである。
【0058】
脳活動データ取得部117は、例えば、近赤外線光計測装置、また脳波計測装置である。また、脳活動データ取得部117は、機能的MRI(fMRI: functional Magnetic Resonance Imaging)、またはPET(Positron Emission Tomography)などである。脳活動データ取得部117は、通常、学習データ取得部112と同じである。
【0059】
特徴量群取得部118は、脳活動データに対して信号処理し、1以上の特徴量である入力特徴量群を取得する。ここで、信号処理は、例えば、バイアス補正、ベースライン補正、トレンド除去、平均値計算、ハイパスフィルターによる処理、ローパスフィルターによる処理、FFTによる処理、PCAによる処理、ICAによる処理、Phase Locking 値の算出、移動平均の算出、センサ選択、時間選択、リファレンス補正、ダウンサンプリング、アップサンプリング、パワー計算、包絡線計算(ヒルベルト変換)、空間フィルターによる処理、逆問題フィルターによる処理、などである。そして、特徴量とは、例えば、上記の信号処理により、算出されるデータであり、例えば、平均値、分散、Phase Locking 値などである。なお、入力特徴量群を構成する特徴量は、脳活動データの特性を示すデータであれば、何でも良い。また、特徴量群取得部118が行う信号処理の数は、複数でも良い。また、上記の各種の信号処理の例は、公知技術であるので詳細な説明を省略する。なお、特徴量群取得部118は、通常、学習特徴量群取得部115と同一の手段である。
【0060】
特徴量群取得部118は、通常、MPUやメモリ等から実現され得る。特徴量群取得部118の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0061】
意図識別子取得部119は、入力特徴量群に対応する意図識別子を、意図判別情報格納部111に格納されている2以上の意図判別情報から取得する。意図識別子取得部119が意図識別子を取得するアルゴリズムは問わない。意図識別子取得部119は、例えば、入力特徴量群と、意図判別情報が有する正常学習特徴量群との距離を、意図識別子ごとに算出する。そして、意図識別子取得部119は、距離が最も小さい正常学習特徴量群に対応する意図識別子を取得しても良い。また、意図識別子取得部119は、2以上の意図判別情報を学習データとして、入力特徴量群を入力データとして、機械学習のアルゴリズムにより、意図識別子を取得することは好適である。意図識別子取得部119は、例えば、Sparse Logistic Regressionと呼ばれる弁別器である。Sparse Logistic Regressionは、URL「https://www.autonlab.org/autonweb/10400.html」に記載されている公知の技術である。また、機械学習のアルゴリズムは問わない。意図識別子取得部119は、例えば、SVM(2つの分別の場合)、SVR、決定木などの機械学習器などでも良い。意図識別子取得部119における意図識別子の取得アルゴリズムは問わない。意図識別子取得部119は、通常、MPUやメモリ等から実現され得る。意図識別子取得部119の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0062】
確率算出手段1191は、意図判別情報格納部111の2以上の意図判別情報を用いて、特徴量群取得部118が取得した入力特徴量群が、2以上の意図判別情報に含まれる2以上の意図識別子の各々に対応する確率を、2以上の意図識別子ごとに算出する。
【0063】
意図識別子が2つ(2種類)の場合、例えば、確率算出手段1191は、以下のように意図識別子ごとの確率を算出する。つまり、確率算出手段1191は、正常学習特徴量群から、2つのクラス(クラス1[第一の意図識別子]、またはクラス2[第二の意図識別子])に分けるための境界面の情報を得る。かかる概念を図15に示す。
次に、確率算出手段1191は、境界面からの入力特徴量群の距離を算出する(図16参照)。そして、確率算出手段1191は、当該距離をロジスティック関数(シグモイド関数)に入力し、0〜1の値に変換する。そして、確率算出手段1191は、当該変換した値(0〜1)を、第一の意図識別子の確率とする。そして、確率算出手段1191は、第二の意図識別子の確率を、「1−第一の意図識別子の確率」により算出する。
【0064】
また、意図識別子が4つ(4種類)の場合、例えば、確率算出手段1191は、以下のように意図識別子ごとの確率を算出する。つまり、上記2つの意図識別子の場合の処理を拡張する。まず、第一の意図識別子と他の意図識別子との2つのクラスが存在すると考え、確率算出手段1191は、正常学習特徴量群から、2つのクラス(クラス1[第一の意図識別子]、またはクラス2[第二の意図識別子または第三の意図識別子または第四の意図識別子)に分けるための境界面の情報を得る。次に、確率算出手段1191は、境界面からの入力特徴量群の距離を算出する。次に、確率算出手段1191は、当該距離をロジスティック関数(シグモイド関数)に入力し、0〜1の値に変換する。そして、確率算出手段1191は、当該変換した値(0〜1)を、第一の意図識別子の確率とする。次に、確率算出手段1191は、第二の意図識別子または第三の意図識別子または第四の意図識別子の確率を、「1−第一の意図識別子の確率」により算出する。
【0065】
そして、次に、第二の意図識別子と他の意図識別子との2つのクラスが存在すると考え、確率算出手段1191は、正常学習特徴量群から、2つのクラス(クラス1[第二の意図識別子]、またはクラス2[第一の意図識別子または第三の意図識別子または第四の意図識別子)に分けるための境界面の情報を得る。次に、確率算出手段1191は、境界面からの入力特徴量群の距離を算出する。次に、確率算出手段1191は、当該距離をロジスティック関数(シグモイド関数)に入力し、0〜1の値に変換する。そして、確率算出手段1191は、当該変換した値(0〜1)を、第二の意図識別子の確率とする。次に、確率算出手段1191は、第一の意図識別子または第三の意図識別子または第四の意図識別子の確率を、「1−第二の意図識別子の確率」により算出する。
【0066】
そして、次に、第三の意図識別子と他の意図識別子との2つのクラスが存在すると考え、確率算出手段1191は、正常学習特徴量群から、2つのクラス(クラス1[第三の意図識別子]、またはクラス2[第一の意図識別子または第二の意図識別子または第四の意図識別子)に分けるための境界面の情報を得る。次に、確率算出手段1191は、境界面からの入力特徴量群の距離を算出する。次に、確率算出手段1191は、当該距離をロジスティック関数(シグモイド関数)に入力し、0〜1の値に変換する。そして、確率算出手段1191は、当該変換した値(0〜1)を、第三の意図識別子の確率とする。次に、確率算出手段1191は、第一の意図識別子または第二の意図識別子または第四の意図識別子の確率を、「1−第三の意図識別子の確率」により算出する。
【0067】
そして、次に、第四の意図識別子と他の意図識別子との2つのクラスが存在すると考え、確率算出手段1191は、正常学習特徴量群から、2つのクラス(クラス1[第四の意図識別子]、またはクラス2[第一の意図識別子または第二の意図識別子または第三の意図識別子)に分けるための境界面の情報を得る。次に、確率算出手段1191は、境界面からの入力特徴量群の距離を算出する。次に、確率算出手段1191は、当該距離をロジスティック関数(シグモイド関数)に入力し、0〜1の値に変換する。そして、確率算出手段1191は、当該変換した値(0〜1)を、第四の意図識別子の確率とする。次に、確率算出手段1191は、第一の意図識別子または第二の意図識別子または第三の意図識別子の確率を、「1−第四の意図識別子の確率」により算出する。
【0068】
そして、確率算出手段1191は、上記で取得した確率をマージすることにより、第一の意図識別子から第四の意図識別子の確率を取得する。ここで、マージとは、前記の第一の意図識別子の確率(P1)、前記の第一以外の意図識別子の確率(P234)、前記の第二の意図識別子の確率(P2)、前記の第二以外の意図識別子の確率(P134)、前記の第三の意図識別子の確率(P3)、前記の第三以外の意図識別子の確率(P124)、前記の第四の意図識別子の確率(P4)、前記の第四以外の意図識別子の確率(P123)の8つの確率から求める操作のことを言う。マージした第一の意図識別子の確率はP1×P134×P124×P123、マージした第二の意図識別子の確率はP234×P2×P124×P123、マージした第三の意図識別子の確率はP234×P134×P3×P123、マージした第四の意図識別子はP234×P134×P124×P4のように求めることが好適である。なお、確率を正規化する操作を加えても良い。ここで、正規化とは、マージした第一の意図識別子の確率から第四の意図識別子の確率までを足した値でそれぞれの確率を割ることで、全てを足した確率が1になるようにする操作である。
【0069】
確率算出手段1191は、通常、MPUやメモリ等から実現され得る。確率算出手段1191の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0070】
意図識別子取得手段1192は、確率算出手段1191が算出した意図識別子ごとの確率から、最も大きい確率に対応する意図識別子を取得する。
【0071】
意図識別子取得手段1192は、通常、MPUやメモリ等から実現され得る。意図識別子取得手段1192の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0072】
意図識別子出力部120は、意図識別子取得部119が取得した意図識別子を出力する。ここで、出力とは、ロボット12への出力が好適であるが、ディスプレイへの表示や、音声出力などでも良い。意図識別子出力部120は、無線または有線の通信手段により実現され得る。
【0073】
動作情報格納部121は、2以上の動作情報を格納し得る。動作情報とは、意図識別子と当該意図識別子に対応する動作を行わせる動作モジュールとの組である。動作モジュールとは、ハードウェアで実現されていても良いし、ソフトウェアで実現されていても良いし、ハードウェアとソフトウェアで実現されていても良い。動作情報格納部121は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。動作情報格納部121に動作情報が記憶される過程は問わない。例えば、記録媒体を介して動作情報が動作情報格納部121で記憶されるようになってもよく、通信回線等を介して送信された動作情報が動作情報格納部121で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された動作情報が動作情報格納部121で記憶されるようになってもよい。
【0074】
意図識別子受付部122は、脳情報出力装置11から出力された意図識別子を受け付ける。受け付けとは、通信手段を用いた受信や、ソフトウェアによる情報(意図識別子)の引き渡し等である。
【0075】
実行部123は、意図識別子受付部122が受け付けた意図識別子に対応する動作モジュールを実行する。動作モジュールが実現する動作内容は何でも良い。実行部123は、通常、MPUやメモリ等から実現され得る。実行部123の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
【0076】
次に、ロボットシステム1の動作について説明する。まず、脳情報出力装置11が、異常な学習データを取り除いて、意図判別情報を蓄積する動作(学習動作)について、図3のフローチャートを用いて説明する。
【0077】
(ステップS301)学習データ取得部112は、学習データを取得するか否かを判断する。学習データを取得するのであればステップS302に行き、学習データを取得しないのであればステップS304に行く。なお、例えば、学習データを取得するために、図示しない出力手段が、ユーザに対して、意図に対応する動作(思考、想像なども含む)を行うことを示す指示を出力する。そして、かかる指示が出力された後、所定期間(例えば、10秒など)、学習データ取得部112は、学習データを取得する、と判断する。また、意図に対応する動作を行うことを示す指示とは、「右手を10秒間、振ってください。」「15秒間、足をばたつかせてください。」などの情報である。
【0078】
(ステップS302)学習データ取得部112は、学習データを取得する。
【0079】
(ステップS303)学習データ取得部112は、ステップS302で取得した学習データを、記録媒体に、少なくとも一時的に蓄積する。なお、学習データ取得部112は、通常、意図を識別する意図識別子と対にして、学習データを蓄積する。ステップS301に戻る。
【0080】
(ステップS304)学習データ取得部112は、学習データを取得する処理を終了するか否かを判断する。終了する場合はステップS305に行き、終了しない場合はステップS301に戻る。なお、学習データ取得部112は、例えば、すべての意図識別子に対応する学習データを取得した場合、学習データの取得処理を終了すると判断する。
【0081】
(ステップS305)部分学習データ取得部113、および異常データ除去部114は、異常データ除去処理を行う。異常データ除去処理について、図4のフローチャートを用いて説明する。
【0082】
(ステップS306)異常データ除去部114は、ステップS305において異常データ除去処理を行った結果である、正常学習データを一時蓄積する。一時蓄積する場所は、揮発性または不揮発性の記録媒体である。
【0083】
(ステップS307)学習特徴量群取得部115は、ステップS306で取得された正常学習データから、1以上の特徴量である正常学習特徴量群を取得する。
【0084】
(ステップS308)意図判別情報蓄積部116は、正常学習特徴量群と、一の意図を識別する意図識別子とを有する意図判別情報を構成する。なお、通常、意図識別子は、正常学習データと対応付けて管理されている。
【0085】
(ステップS309)意図判別情報蓄積部116は、ステップS308で構成した意図判別情報を、意図判別情報格納部111に蓄積する。処理を終了する。
【0086】
次に、ステップS305の異常データ除去処理について、図4のフローチャートを用いて説明する。
【0087】
(ステップS401)部分学習データ取得部113は、カウンタiに1を代入する。
【0088】
(ステップS402)部分学習データ取得部113は、i番目のセンサが存在するか否かを判断する。i番目のセンサが存在すればステップS403に行き、i番目のセンサが存在しなければステップS410に行く。
【0089】
(ステップS403)異常データ除去部114は、i番目のセンサが取得した全トライアルの全データの平均値、および標準偏差を取得する。なお、かかる場合、異常データ除去部114は、i番目のセンサについての、全時系列データでの平均値を基準点として定め、基準補正を行なうことは好適である。また、補正後波形から1サンプルごとに振幅の絶対値を取り、値の大きいものからx%(例えば、「x=5」)のサンプルは信頼区間から外れて発生したものと仮定して破棄することは好適である。
【0090】
(ステップS404)部分学習データ取得部113は、カウンタjに1を代入する。
【0091】
(ステップS405)部分学習データ取得部113は、j番目のトライアルが存在するか否かを判断する。j番目のトライアルが存在すればステップS406に行き、j番目のトライアルが存在しなければステップS409に行く。
【0092】
(ステップS406)部分学習データ取得部113は、i番目のセンサのj番目のトライアルの全サンプル(全データ)を取得する。
【0093】
(ステップS407)異常データ除去部114は、ステップS406で取得された各サンプル(データ)に対して、一定以上のずれが存在するか否かを判断する。そして、異常データ除去部114は、一定以上のずれが存在するサンプルに対しては、不適切データとして登録する。なお、異常データ除去部114は、例えば、1サンプルごとに、絶対値が標準偏差の何倍であるかを調べる。そして、異常データ除去部114は、例えば、絶対値が標準偏差の9倍以上のサンプルを不適切データと判断する。
【0094】
(ステップS408)異常データ除去部114は、カウンタjを1、インクリメントする。ステップS405に戻る。
【0095】
(ステップS409)異常データ除去部114は、カウンタiを1、インクリメントする。ステップS402に戻る。
【0096】
(ステップS410)異常センサ除去手段1142は、カウンタiに1を代入する。
【0097】
(ステップS411)異常センサ除去手段1142は、i番目のセンサが存在するか否かを判断する。i番目のセンサが存在すればステップS411に行き、i番目のセンサが存在しなければステップS416に行く。
【0098】
(ステップS412)異常センサ除去手段1142は、i番目のセンサが取得したデータの中で、不適切なデータの数を取得する。
【0099】
(ステップS413)異常センサ除去手段1142は、ステップS412で算出した不適切なデータの数が、予め決められた数(割合でも良い)以上であるか否かを判断する。予め決められた数以上であればステップS414に行き、予め決められた数以上でなければステップS416に行く。
【0100】
(ステップS414)異常センサ除去手段1142は、i番目のセンサはBad Sensorであるとし、i番目のセンサが取得したデータを消去する。
【0101】
(ステップS415)異常センサ除去手段1142は、カウンタiを1、インクリメントする。ステップS411に戻る。
【0102】
(ステップS416)異常トライアル除去手段1141は、カウンタjに1を代入する。
【0103】
(ステップS417)異常トライアル除去手段1141は、j番目のトライアルが存在するか否かを判断する。j番目のトライアルが存在すればステップS418に行き、j番目のトライアルが存在しなければ上位処理にリターンする。
【0104】
(ステップS418)異常トライアル除去手段1141は、j番目のトライアルに含まれるデータの中で、不適切なデータの数を取得する。
【0105】
(ステップS419)異常トライアル除去手段1141は、ステップS418で算出した不適切なデータの数が、予め決められた数(割合でも良い)以上であるか否かを判断する。予め決められた数以上であればステップS420に行き、予め決められた数以上でなければステップS421に行く
【0106】
(ステップS420)異常トライアル除去手段1141は、j番目のトライアルはBad Trialであるとし、j番目のトライアルの際に取得されたデータを消去する。
【0107】
(ステップS421)異常トライアル除去手段1141は、カウンタjを1、インクリメントする。ステップS417に戻る。
【0108】
なお、図4のフローチャートにおいて、異常トライアル、および異常センサのデータを除去するアルゴリズムは、上記に限られない。
【0109】
また、図4のフローチャートにおいて、異常トライアルの除去のみ、異常センサの除去のみでも良い。
【0110】
さらに、図4のフローチャートにおいて、異常トライアルの除去と異常センサの除去の順序は問わない。
【0111】
次に、脳情報出力装置11が、意図識別子を出力する動作について図5のフローチャートを用いて説明する。
【0112】
(ステップS501)脳活動データ取得部117は、脳活動データを取得したか否かを判断する。脳活動データを取得すればステップS502に行き、脳活動データを取得しなければステップS501に戻る。
【0113】
(ステップS502)特徴量群取得部118は、ステップS501で取得された脳活動データから、入力特徴量群を取得する。
【0114】
(ステップS503)意図識別子取得部119は、ステップS502で取得された入力特徴量群を入力として、当該入力特徴量群に対応する意図識別子を取得する。かかる意図識別子取得処理について、図6のフローチャートを用いて説明する。
【0115】
(ステップS504)意図識別子出力部120は、ステップS503で取得された意図識別子を、ロボット12に出力する。ステップS501に戻る。
【0116】
なお、図5のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0117】
次に、ステップS503の意図識別子取得処理の例について図6のフローチャートを用いて説明する。
【0118】
(ステップS601)意図識別子取得部119は、カウンタiを1に設定する。
【0119】
(ステップS602)意図識別子取得部119は、i番目の意図識別子が存在するか否かを判断する。i番目の意図識別子が存在すればステップS603に行き、i番目の意図識別子が存在しなければステップS608に行く。
【0120】
(ステップS603)意図識別子取得部119は、i番目の意図識別子に対応する学習特徴量群(ベクトル)を取得する。
【0121】
(ステップS604)意図識別子取得部119は、入力された特徴量群(ベクトル)を取得する。
【0122】
(ステップS605)意図識別子取得部119は、ステップS603で取得された学習特徴量群(ベクトル)と、ステップS604で取得された特徴量群(ベクトル)の距離を算出する。
【0123】
(ステップS606)意図識別子取得部119は、ステップS605で取得した距離と、i番目の意図識別子とを対応付けて、少なくとも一時的に記録媒体に蓄積する。
【0124】
(ステップS607)意図識別子取得部119は、カウンタiを1、インクリメントする。ステップS602に戻る。
【0125】
(ステップS608)意図識別子取得部119は、ステップS606で蓄積された距離を用いて、意図識別子を取得する。例えば、意図識別子取得部119は、最も小さい距離と対になる意図識別子を取得する。また、上述したように、意図識別子取得部119は、意図識別子ごとの確率を算出し、確率が最も大きい意図識別子を取得しても良い。上位処理にリターンする。
【0126】
なお、図6のフローチャートにおいて、ステップS604の動作は、ループ外に配置し、一度のみ行っても良い。
【0127】
次に、ロボット12の動作について、図7のフローチャートを用いて説明する。
【0128】
(ステップS701)意図識別子受付部122は、脳情報出力装置11から出力された意図識別子を受け付けたか否かを判断する。意図識別子を受け付ければステップS702に行き、意図識別子を受け付けなければステップS701に戻る。
【0129】
(ステップS702)実行部123は、ステップS701で受け付けられた意図識別子に対応する動作モジュールを、動作情報格納部121から読み出す。
【0130】
(ステップS703)実行部123は、ステップS702で読み出した動作モジュールを実行する。ステップS701に戻る。
【0131】
以上の処理により、ユーザが意図した行為(思考を含む)に対応する動作が、ロボット12により行われる。
【0132】
なお、図7のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【0133】
以下、本実施の形態におけるロボットシステム1の具体的な動作について説明する。ロボットシステム1の概念図は図1である。
【0134】
まず、脳情報出力装置11の動作の概要について説明する。図8は、脳情報出力装置11の動作を説明する概要図である。
【0135】
まず、脳情報出力装置11において、ユーザ(S11)の脳活動データを、複数のセンサ(S12)を具備した脳活動計測装置(S13)で計測し、生の脳活動データ1(計測データ1)を得る。ここで、脳活動計測装置(S13)は、学習データ取得部112である。なお、計測データ1は、ある動作(例えば、体を動かしたり、想像したりなど)を一度行った際の一連のトライアルデータの複数から構成される。また、脳活動データ1(計測データ1)は、例えば、脳波データである。また、トライアルデータは、脳活動計測装置S13に具備された複数センサ(S12)からの時系列データで構成される。その脳活動データ1のうち、外部ノイズや異常なノイズが入っているセンサを異常センサ除去装置(S14)で除去する。ここで、異常センサ除去装置(S14)は、異常センサ除去手段1142である。
【0136】
また、異常なノイズが複数入っているトライアルデータに関しては、異常トライアル除去装置(S15)で除去する。ここで、異常トライアル除去装置(S15)は、異常トライアル除去手段1141である。
【0137】
異常センサ除去装置(S14)と異常トライアル除去装置(S15)によって、異常なデータが除去され、正常な脳活動データ(正常データ3)を得る。正常データ3とは、正常学習データである。
【0138】
脳情報出力装置11において、正常データ3を意図検出用アルゴリズム(S16)に入れることで、意図検出アルゴリズム内の各種パラメータ(S17)を調整する。脳情報出力装置11では、調整したパラメータ(S17)と意図検出アルゴリズムS16により非常に性能の高い脳・機械インタフェースを提供する。なお、意図検出アルゴリズムとは、意図識別子取得部119に該当する。また、パラメータ(S17)は、学習特徴量群に該当する。
【0139】
今、学習データ取得部112は、複数のセンサを具備し、脳波データを、ユーザの脳から取得する、とする。つまり、学習データ取得部112は、脳波計測装置である。
【0140】
そして、学習データ取得部112は、図9に示す脳波データを取得した、とする。この脳波データは、6つのセンサから取得された脳波の時系列データである。そして、学習データ取得部112は、取得した学習データ(図9)を、記録媒体に一時的に蓄積する。
【0141】
次に、脳情報出力装置11は、図9の学習データから、異常データの除去処理を行う。つまり、部分学習データ取得部113、および異常データ除去部114は、例えば、以下のステップ((1)から(8))で、異常データの除去処理を行う。ここで、異常データ除去処理について、図10の概念図を用いて説明する。
(1)部分学習データ取得部113は、センサごとに、全時系列データを取得する。そして、異常データ除去部114は、センサごとに、全時系列データの平均値と標準偏差σを
算出する。ここで、全時系列データとは、全てのトライアルにまたがるデータのことを言う。
(2)異常データ除去部114は、各センサと各トライアルデータ(図10(a))に関して、その平均値を基準点として定め、脳波の時系列データに対して、基準補正を行い、全時系列データを2乗することで信号のパワーを計算する(図10(b))。取得されるデータは、(複数センサ×時系列×複数トライアル)の3次元データである。
(3)異常データ除去部114は、前記の信号のパワーに対して分布を計算する。なお、この分布は一般的にはχ二乗分布に従う。そして、値の大きいものから5%のサンプルを破棄する(図10(c))。値の大きい5%のサンプルは、通常の状態でも起こりえるノイズと仮定して破棄したものである。
(4)異常データ除去部114は、5%のサンプルを破棄し、残された各データの絶対値を用いて、最大のパワーP95を求める。
(5)異常データ除去部114は、各センサの各トライアルごとに、前記のP95を前記の標準偏差σで割ったmampを計算し、図10(d)のマトリクスを求める。
(6)異常データ除去部114は、事前に与えられた異常データ除去用の定数aと前記のマトリクスを比較し、aよりも大きいmampにチェックをする。定数aとしては、「9」が好適である。また、図10(d)において、マトリクス上に斜めの線が入ったデータが、不適切なデータとして除かれたサンプルである。
(7)異常データ除去部114は、各センサに対してトライアル方向に対して不適切データがいくつあるかを数える。この数をbsensorとする。ここで、各センサに対してトライアル方向に対して数えるとは、図10(d)において、横方向に斜めの線が入っている不適切データがいくつあるかを各センサごとに数えることである。また、異常データ除去部114は、各トライアルに対してセンサ方向に対して不適切データがいくつあるかを数える。この数をbtrialとする。ここで、各トライアルに対してセンサ方向に対して数えるとは、図10(d)において、縦方向に斜めの線が入っている不適切データがいくつあるかを各トライアルごとに数えることである。
(8)異常データ除去部114は、事前に与えられた異常データ除去用の定数csensorと前記のbsensorを比較し、bsensorがcsensorよりも大きい場合、そのセンサは異常があると判断し、異常センサとして除去する。ここで、事前に与える定数csensorは、全トライアル数の5%程度が好適である。また、異常データ除去部114は、事前に与えられた異常データ除去用の定数ctrialと前記のbtrialを比較し、btrialがctrialよりも大きい場合、そのトライアルは異常があると判断し、異常トライアルとして除去する。ここで、事前に与える定数ctrialは、全センサ数の5%程度が好適である。
なお、異常データ除去部114は、異常センサを除去後にbtrialを数えなおしたり、異常トライアル除去後にbsensorを数えなおしたりしても良い。その際、異常センサ除去と異常トライアル除去のどちらを先に行っても良いし、異常センサ除去と異常トライアル除去を複数回繰り返しても良い。
また、異常データ除去部114は、部分学習データ取得部113から得られたデータの微分値に対して前記の処理をしても良い。これは、突発のノイズ、すなわち微分値が非常に大きい値がある場合に異常データとみなすことに等しい。
【0142】
以上の処理により、異常データ除去部114は、学習データから異常なデータを除き、正常学習データを取得することができる。つまり、異常データ除去部114は、1以上の各部分学習データ(一センサのサンプルの集合や、一トライアルのサンプルの集合)の特性値(標準偏差のmamp倍を越えたサンプルの個数や、標準偏差のmdiff倍(境界値)を越えたサンプルの個数など)を取得し、当該特性値を用いて、各部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、学習データから除き、正常学習データを取得できた。次に、異常データ除去部114は、異常データ除去処理を行った結果である、正常学習データを一時蓄積する。
【0143】
次に、学習特徴量群取得部115は、取得された正常学習データから、1以上の特徴量である正常学習特徴量群を取得する。正常学習特徴量群は、例えば、平均値、分散値、phase locking値などである。
【0144】
次に、意図判別情報蓄積部116は、正常学習特徴量群と、一の意図を識別する意図識別子とを有する意図判別情報を構成し、意図判別情報格納部111に蓄積する。
【0145】
そして、上記の処理をすべての意図識別子に対して行い、意図判別情報蓄積部116は、図11に示す意図判別情報を意図判別情報格納部111に蓄積した、とする。なお、ここでは、意図識別子は、「右手」、「左手」、「舌」、「足」の4種類である、とする。
【0146】
次に、ユーザが、例えば、意図識別子「足」に対応する動作をロボット12に行わそうとして、ユーザが足を動かしたことを想像する、とする。
【0147】
そして、脳活動データ取得部117は、ユーザが足を動かした際の脳活動データを取得する。
【0148】
次に、特徴量群取得部118は、取得された脳活動データから、入力特徴量群を取得する。入力特徴量群は、例えば、平均値、分散値、phase locking値などである。
【0149】
つまり、確率算出手段1191は、意図識別子(「左手」「右手」「舌」「足」)ごとに、入力特徴量群が各意図識別子に対応する確率を算出する。算出アルゴリズムの例は、上述した通りである。
【0150】
そして、意図識別子取得手段1192は、算出された確率の中で、最も大きい確率に対応する意図識別子(例えば、「足」)を取得する。
【0151】
次に、意図識別子出力部120は、取得された意図識別子(例えば、「足」)をロボット12に出力する。
【0152】
そして、ロボット12の意図識別子受付部122は、意図識別子(例えば、「足」)を受け付ける。次に、実行部123は、意図識別子「足」に対応する動作モジュールを、動作情報格納部121から読み出す。次に、実行部123は、読み出した動作モジュールを実行する。
【0153】
以上のように処理により、実験日Aから実験日Hの8日間において、実験を行った。この実験結果を図12に示す。図12において、異常なセンサや異常なトライアルを除去したデータで意図検出アルゴリズムのパラメータを調整すると、除去しない場合より平均性能で3%程度上昇したことが分かる。また、図12によると、異常なセンサや異常なトライアルを除去した場合と、除去しない場合により、標準偏差で1%程度の減少が観察された。これは、本発明により、脳・機械インタフェースの性能向上が図られたことを意味する。
【0154】
以上、本実施の形態によれば、不適切なデータを除去した学習データを用いて、意図判別を行うことにより、精度高く、意図判別ができる。
【0155】
なお、本実施の形態によれば、異常センサの除去、異常トライアルの除去を行った。しかし、異常センサの除去、異常トライアルの除去のどちらか一方のみを行っても良い。また、本実施の形態において、異常センサの除去、異常トライアルの除去のアルゴリズムは問わない。なお、異常センサの除去とは、異常なセンサが取得したサンプルの除去である。また、異常トライアルの除去とは、異常なトライアルの際に取得されたサンプルの除去である。
【0156】
また、本実施の形態によれば、平均値と標準偏差を用いて、異常なデータを除去した。しかし、平均値のみを用いて、異常なデータを除去するなどしても良い。
【0157】
また、本実施の形態によれば、得られたデータの微分値を用いて異常データを除去するなどしても良い。
【0158】
さらに、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、〜。
【0159】
また、図13は、本明細書で述べたプログラムを実行して、上述した実施の形態の脳情報出力装置等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図13は、このコンピュータシステム340の概観図であり、図14は、コンピュータシステム340のブロック図である。
【0160】
図13において、コンピュータシステム340は、FDドライブ、CD−ROMドライブを含むコンピュータ341と、キーボード342と、マウス343と、モニタ344とを含む。
【0161】
図14において、コンピュータ341は、FDドライブ3411、CD−ROMドライブ3412に加えて、MPU3413と、CD−ROMドライブ3412及びFDドライブ3411に接続されたバス3414と、ブートアッププログラム等のプログラムを記憶するためのROM3415とに接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM3416と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3417とを含む。ここでは、図示しないが、コンピュータ341は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
【0162】
コンピュータシステム340に、上述した実施の形態の脳情報出力装置等の機能を実行させるプログラムは、CD−ROM3501、またはFD3502に記憶されて、CD−ROMドライブ3412またはFDドライブ3411に挿入され、さらにハードディスク3417に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ341に送信され、ハードディスク3417に記憶されても良い。プログラムは実行の際にRAM3416にロードされる。プログラムは、CD−ROM3501、FD3502またはネットワークから直接、ロードされても良い。
【0163】
プログラムは、コンピュータ341に、上述した実施の形態の脳情報出力装置等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム340がどのように動作するかは周知であり、詳細な説明は省略する。
【0164】
なお、上記プログラムにおいて、ハードウェアによって行われる処理、例えば、モデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
【0165】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【0166】
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【0167】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0168】
以上のように、本発明にかかる脳情報出力装置は、意図検出の精度を向上させることができる、という効果を有し、脳・機械インタフェース等として有用である。
【符号の説明】
【0169】
1 ロボットシステム
11 脳情報出力装置
12 ロボット
111 意図判別情報格納部
112 学習データ取得部
113 部分学習データ取得部
114 異常データ除去部
115 学習特徴量群取得部
116 意図判別情報蓄積部
117 脳活動データ取得部
118 特徴量群取得部
119 意図識別子取得部
120 意図識別子出力部
121 動作情報格納部
122 意図識別子受付部
123 実行部
1141 異常トライアル除去手段
1142 異常センサ除去手段
1191 確率算出手段
1192 意図識別子取得手段

【特許請求の範囲】
【請求項1】
ユーザの意図を識別する情報である意図識別子と、当該意図識別子で識別される意図の元にユーザが一連の行為であるトライアルを行った際に当該ユーザの脳から取得された学習データから、抽出された1以上の特徴量である学習特徴量群とを対に有する意図判別情報を、2以上格納し得る意図判別情報格納部と、
一の意図の元にユーザが一連の行為であるトライアルを行った際に、1以上のセンサを用いて、当該センサごとに、前記ユーザの脳から脳活動を示す時系列データである学習データを取得する学習データ群取得部と、
前記学習データの一部のデータである部分学習データを、1以上取得する部分学習データ取得部と、
前記1以上の各部分学習データの特性値を取得し、当該特性値を用いて、前記各部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、前記学習データから除き、正常学習データを取得する異常データ除去部と、
前記正常学習データから、1以上の特徴量である正常学習特徴量群を取得する学習特徴量群取得部と、
前記正常学習特徴量群と、前記一の意図を識別する意図識別子とを有する意図判別情報を、前記意図判別情報格納部に蓄積する意図判別情報蓄積部と、
ユーザから脳活動のデータである脳活動データを取得する脳活動データ取得部と、
前記脳活動データから、1以上の特徴量である入力特徴量群を取得する特徴量群取得部と、
前記入力特徴量群に対応する意図識別子を、前記意図判別情報格納部に格納されている2以上の意図判別情報から取得する意図識別子取得部と、
前記意図識別子取得部が取得した意図識別子を出力する意図識別子出力部とを具備する脳情報出力装置。
【請求項2】
前記意図識別子取得部は、
前記意図判別情報格納部の2以上の意図判別情報を用いて、前記特徴量群取得部が取得した入力特徴量群が、前記2以上の意図判別情報に含まれる2以上の意図識別子の各々に対応する確率を、前記2以上の意図識別子ごとに算出する確率算出手段と、
前記確率算出手段が算出した意図識別子ごとの確率から、最も大きい確率に対応する意図識別子を取得する意図識別子取得手段とを具備する請求項1記載の脳情報出力装置。
【請求項3】
前記学習データ群取得部は、
複数のトライアルを行った際に、1以上のセンサを用いて、トライアルごと、およびセンサごとに、前記ユーザの脳から脳活動を示す時系列データである学習データを取得し、
前記部分学習データ取得部は、
前記学習データから、前記トライアルごとに、部分学習データを取得し、
前記異常データ除去部は、
前記トライアルごとの部分学習データの特性値を取得し、当該特性値を用いて、前記部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、前記学習データから除き、正常学習データを取得する異常トライアル除去手段を具備する請求項1または請求項2記載の脳情報出力装置。
【請求項4】
前記部分学習データの特性値は、
前記学習データを構成する全データの平均値と標準偏差、または前記学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて算出される値であり、
前記異常トライアル除去手段は、
前記部分学習データの特性値から、前記部分学習データが、他のデータと比較して、一定以上のずれを有すると判断した場合、当該部分学習データを、前記学習データから除き、正常学習データを取得する請求項3記載の脳情報出力装置。
【請求項5】
前記異常トライアル除去手段は、
前記部分学習データを構成する各センサのデータのうち、予め決められた以上の数のセンサのデータが、前記学習データを構成する全データの平均値と標準偏差、または前記学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて、一定以上のずれを有すると判断した場合に、当該部分学習データを、前記学習データから除き、正常学習データを取得する請求項4記載の脳情報出力装置。
【請求項6】
前記部分学習データ取得部は、
前記学習データから、前記センサごとに、部分学習データを取得し、
前記異常データ除去部は、
前記センサごとの部分学習データの特性値を取得し、当該特性値を用いて、前記部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、前記学習データから除き、正常学習データを取得する異常センサ除去手段を具備する請求項1から請求項5いずれか記載の脳情報出力装置。
【請求項7】
前記部分学習データの特性値は、
前記センサごとの各部分学習データの平均値と標準偏差、または前記センサごとの各部分学習データの微分値の平均値と標準偏差のいずれか、または両方を用いて算出される値であり、
前記異常センサ除去手段は、
前記部分学習データの特性値から、前記部分学習データが、他のデータと比較して、一定以上のずれを有すると判断した場合、当該部分学習データを、前記学習データから除き、正常学習データを取得する請求項6記載の脳情報出力装置。
【請求項8】
前記異常センサ除去手段は、
前記部分学習データを構成する各トライアルのデータのうち、予め決められた以上の数のトライアルのデータが、前記学習データを構成する全データの平均値と標準偏差、または前記学習データを構成する全データの微分値の平均値と標準偏差のいずれか、または両方を用いて、一定以上のずれを有すると判断した場合に、当該部分学習データを、前記学習データから除き、正常学習データを取得する請求項7記載の脳情報出力装置。
【請求項9】
意図識別子と当該意図識別子に対応する動作を行わせる動作モジュールとの組である動作情報を2以上格納し得る動作情報格納部と、
請求項1から請求項7いずれか記載の脳情報出力装置から出力された意図識別子を受け付ける意図識別子受付部と、
前記意図識別子受付部が受け付けた意図識別子に対応する動作モジュールを実行する実行部とを具備するロボット。
【請求項10】
一の意図の元にユーザが一連の行為であるトライアルを行った際に、1以上のセンサを用いて、当該センサごとに、前記ユーザの脳から脳活動を示す時系列データである学習データを取得する学習データ群取得ステップと、
前記学習データの一部のデータである部分学習データを、1以上取得する部分学習データ取得ステップと、
前記1以上の各部分学習データの特性値を取得し、当該特性値を用いて、前記各部分学習データが正常であるか異常であるかを判断し、異常であると判断した部分学習データを、前記学習データから除き、正常学習データを取得する異常データ除去ステップと、
正常学習データから、1以上の特徴量である正常学習特徴量群を取得する学習特徴量群取得ステップと、
前記正常学習特徴量群と、前記一の意図を識別する意図識別子とを有する意図判別情報を、記憶媒体に蓄積する意図判別情報蓄積ステップと、
ユーザから脳活動のデータである脳活動データを取得する脳活動データ取得ステップと、
前記脳活動データから、1以上の特徴量である入力特徴量群を取得する特徴量群取得ステップと、
前記入力特徴量群に対応する意図識別子を、前記記憶媒体に格納されている2以上の意図判別情報から取得する意図識別子取得ステップと、
前記意図識別子取得ステップで取得した意図識別子を出力する意図識別子出力ステップとを具備する脳情報出力方法。

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図1】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−198236(P2010−198236A)
【公開日】平成22年9月9日(2010.9.9)
【国際特許分類】
【出願番号】特願2009−41340(P2009−41340)
【出願日】平成21年2月24日(2009.2.24)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【出願人】(393031586)株式会社国際電気通信基礎技術研究所 (905)