JP3884160B2 - 用語付きデータを扱うデータ処理方法,データ処理装置およびプログラム記憶媒体 - Google Patents

用語付きデータを扱うデータ処理方法,データ処理装置およびプログラム記憶媒体 Download PDF

Info

Publication number
JP3884160B2
JP3884160B2 JP04662598A JP4662598A JP3884160B2 JP 3884160 B2 JP3884160 B2 JP 3884160B2 JP 04662598 A JP04662598 A JP 04662598A JP 4662598 A JP4662598 A JP 4662598A JP 3884160 B2 JP3884160 B2 JP 3884160B2
Authority
JP
Japan
Prior art keywords
data
term
database
feature
sensor data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP04662598A
Other languages
English (en)
Other versions
JPH11203264A (ja
Inventor
実 関口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP04662598A priority Critical patent/JP3884160B2/ja
Publication of JPH11203264A publication Critical patent/JPH11203264A/ja
Priority to US10/246,637 priority patent/US7143045B2/en
Application granted granted Critical
Publication of JP3884160B2 publication Critical patent/JP3884160B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Manipulator (AREA)
  • User Interface Of Digital Computer (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は,例えばロボット等に用いられているセンサからのデータの処理技術および人間がロボットや機器等に命令を与える場合の言語処理インターフェースの構築技術に係り,特にセンサデータから状況判断を容易にするセンサデータの分類法と記憶法および記憶したデータの利用法を提供し,また,例えば人間が用いる言葉をロボットの行動あるいは操作に結合させる手段とその記憶方法,および記憶したデータの利用法を提供する用語付きデータを扱う方法と装置に関するものである。
【0002】
【従来の技術】
一般的なセンサデータの処理方法では,センサデータにある数値的な加工を行って何らかの特徴を抽出し,その特徴に応じて,次の処理方法を決定あるいは変更するという手順が取られている。この際,センサデータから得られる特徴量から何らかの状況判断を行い,次の処理方法を決定するのであるが,次の処理で期待される特徴量とその値や分類はあらかじめ決まっているので,決められた手順以外では状況判断をすることはできなかった。
【0003】
また,ロボット等に用いられているセンサは,ある種の状態や状態の変化を測定するための機器であり,得られたセンサデータからは,その場の状況や状態が正しく判断できることが望ましい。しかし,一般にセンサデータは膨大であるし,ノイズ等の影響で誤差を多く含んでいる場合がほとんどであり,センサデータの数値の羅列から簡単に状況判断を行うことは非常に困難であった。
【0004】
一方,ロボット等の機器を操作する際に与える命令は,一般に,速度を1m/s に設定するとか,1rad/s で回転するとか,位置(100, 200)に移動するとかのように,ある速度や位置を直接数値で指定する場合がほとんどである。また,エアコン等の家電製品では,温度を20度に設定するとか,決められた設定値になるような「ドライモード」や「お休みモード」などの設定方法しかなかった。
【0005】
しかし,人間が人間に何らかの命令を与える場合,このような命令を与えることはしない。人間が人間に与える命令は,単に「歩け」とか「もっと早く歩け」とかいった具体的な速度や足の角度などを指定しない抽象的な命令が一般的である。また,エアコン等の家電製品では,「もっと温度を高く」とか,「涼しく」などの命令を与えられたほうが,20度とかの数値で温度を指定するよりも,人間に違和感を与えずに機械に命令できる。
【0006】
もし,ロボットや家電等の機器にもこのような表現で命令を与えることができれば,人と機械との自然なインターフェースが可能になると期待できる。
加えて,このような自然言語を利用して機器に命令を与える際に問題となるのは,温度を上げることなどに対する命令が人によってさまざまに変ることである。例えば,ある人は「もっと温度を高く」と命令するが,ある人は,「温度を上げろ」と命令するかもしれない。また,「暖かく」でも,同じ効果になるようにして欲しい人もいるかもしれない。
【0007】
この問題に対処するために,従来例では,さまざまな命令形態をあらかじめ想定して,それを列挙し記憶していたので,こういう命令を理解するシステムを作ることは大変な手間と膨大な記憶容量が必要になり実際的ではなかった。
【0008】
つまり,従来技術では「暖かく」とか「歩く」という意味が具体的にどうすることなのかという対応関係を学習し記憶する手段を持たないため,このような命令に柔軟に対応できるシステムが実現できなかった。
【0009】
【発明が解決しようとする課題】
以上のように,センサデータはある種の状態量や状態の変化を測定できるものでありながら,人間がセンサデータを見てもそれは適当に分類されていないので,それを見ただけではどのような状況なのか判断することは難しかった。また,センサデータから得られる特徴量には系統的な名称を付与することはなく,仮に名称を付与することがあったとしてもそれは機械的な意味の無い名称であるため,人間がその名称からすぐにセンサデータが表す状態を連想することができないという欠点があった。
【0010】
また,人間がロボットや機器に命令する場合,機器が人間の言葉と自身の行動パターン,または変化させるべき値の対応関係を学習する手段を持たないため,人間と機器のインターフェースは,直接的な値を設定するような命令形態しかとれないという欠点があった。
【0011】
本発明は,上記問題点の解決を図り,人間がロボット等の機器を利用するときに,自然言語に基づいて,そのロボット等の機器のセンサデータの表す状態を容易に把握でき,また,人間にとって自然な命令語で機器の操作ができるようにすることを目的とする。
【0012】
すなわち,本発明は,センサデータの新しい分類手段を提供し,膨大なデータを効率よく簡略化して記憶し,状況判断が必要になったときに取り出して比較することにより,容易に状況判断を行い,状況に応じた処理を実行できるようにすることを目的とし,また,人間の命令と機器の動作との対応関係を学習記憶し,人間があいまいに与えた命令でもそれに対応する命令を学習し,正しい動作を記憶するための言語処理および機器操作手段を堤供することを目的とする。
【0013】
【課題を解決するための手段】
上記課題を解決するため,本発明は,例えば図1ないし図3に示すような構成をとる。
【0014】
図1は,本発明に係るセンサデータ処理装置の構成例を示す。
特徴抽出手段2は,センサ等の情報入力装置1から得られるセンサデータから特徴を抽出する。特徴比較・分類手段3は,特徴抽出手段2により抽出した特徴Tと用語付きデータベース6に用語付きで登録されたデータ群とを比較し,類似するデータ群があればその用語を状況判断手段4に通知し,類似するデータ群がなければ,その特徴Tを用語未決定データベース7に分類されているデータ群の一つに分類するか,または新しい分類を作成して,用語未決定データベース7に保存する。
【0015】
状況判断手段4は,特徴Tが一致するデータ群の用語に基づいて,その状況を判断する。用語Bを持つデータ群8は,特徴Tが一致するとみなされたデータ群である。
【0016】
用語付与手段5は,用語未決定データベース7のデータ群に,人間が理解できる用語を付与し,用語付きデータベース6に登録する。データ群削除手段10は,一定期間が経過しても用語が付与されなかった不要と考えられるデータ群を用語未決定データベース7から削除する。
【0017】
用語未決定データベース7は,用語付きデータベース6に登録されている用語付きのデータ群と一致しなかった特徴Tを用語が付与されるまで,または所定の期間が経過するまで保存するデータベースである。生データ保存用データベース9は,情報入力装置1から入力したデータをそのまま記憶し保存しておくデータベースである。なお,生データ保存用データベース9に特徴抽出手段2が抽出した特徴量を,生データとともに記憶するようにしてもよい。
【0018】
情報入力装置1は,1種類であっても複数種類であってもよく,また,これらから入力され特徴量抽出の対象となるデータは,ある1時点におけるデータでも,時系列のデータの並びであってもよい。
【0019】
用語付与手段5は,ユーザからの指示により起動されるか,または所定の契機で自動的に起動され,用語未決定データベース7に保存されている用語が付与されていないセンサデータのデータ群に用語を付与するために,ユーザに適当な用語を提示するように質問し,ユーザからの入力によってデータ群に用語を付与する。用語が付与されるまでは,用語未決定データベース7に保存するデータ群に仮の名称となる符号を付与し,ユーザからの入力によって先に付与した符号を入力された用語に変更する。
【0020】
また,用語付与手段5は,ユーザに適当な用語を提示するように質問する際に,そのデータ群が静的な特徴量に関するものである場合には,名詞を付与することを示唆する情報を表示し,そのデータ群が例えば時系列データであって,動的な特徴量または状態変化を表す特徴量に関するものである場合には,動詞を付与することを示唆する情報を表示する。さらに,何らかの状態を表すセンサデータの特徴量に対しては,例えば形容詞の用語を付与することをユーザに勧めるようにしてもよい。
【0021】
以上の各処理手段を計算機によって実現するためのプログラムは,計算機が読み取り可能な可搬媒体メモリ,半導体メモリ,ハードディスクなどの適当な記憶媒体に格納することができる。
【0022】
特徴抽出手段2は,一般的な計算機とソフトウェアプログラムによって構成することもできるが,これらの一部または全部を,入力と出力が同一の値をとる多段の階層型ニューラルネットを用いて構成することもできる。このとき,特徴量の抽出のため,センサデータをその階層型ニューラルネットに入力し,その入力と出力層以外の中間層からの出力パターンによってセンサデータを分類する。
【0023】
図1に示す装置の作用は,以下のとおりである。
センサ等の情報入力装置1から得られるセンサデータは,特徴抽出手段2においてセンサデータの持つ種々の特徴(例えば,形状や色など)が抽出される。抽出した特徴Tは,用語付きデータベース6に登録されたデータ群と特徴比較・分類手段3において比較される。用語付きデータベース6のデータ群には,適当な用語(用語A)が付与されている。
【0024】
仮に,特徴Tと用語付きデータベース6に登録されているいずれかのデータ群とがある基準に従って一致するとみなされる場合,一致ありのほうに分岐して,そのセンサが示す状態あるいは状況を状況判断手段4を用いて判断する。図1では,用語Bで示されるデータ群8と一致したものとされている。
【0025】
特徴比較・分類手段3で特徴Tが用語付きデータベース6のどのデータ群にも一致しないとみなされた場合には,特徴Tは用語未決定データベース7に登録される。このとき,用語未決定データベース7中に特徴Tと一致するものがあればそのデータ群に追加され,もし一致するものがなければ新たなデータ群として登録される。
【0026】
用語未決定データベース7中のデータ群は,ある一定の基準で用語付与手段5によって適当な用語が付与される。用語付与手段5は,ユーザ(オペレータ)に質問をしたりすることにより,用語未決定のデータ群に対して,その特徴を最もよく表すような適当な用語を付与する。用語を付与されたデータ群は,用語付きデータベース6に登録される。
【0027】
付与する用語の決定に際しては,データ群の特徴に応じて用語が付与される。データ群が静的な特徴量(時間変化しない状態など)を持つデータの集合である場合には,名詞的な用語を提示するようにユーザに指示する。データ群が状態変化を伴うような動的な特徴量を持つデータの集合(移動する物体の位置変化など)である場合には,動詞的な用語を提示するようにユーザに指示する。また物体の状態を表すような特徴量を持つデータの集合(色や重さなど)である場合には,形容詞的な用語を提示するようにユーザに指示する。
【0028】
上記の処理を通じて,本装置は,情報入力装置1から得られたセンサデータを,人間にとって意味のある名称(用語)で分類することにより,センサデータからの状況判断を容易にすることが可能となる。具体的には,この用語によって実行すべき命令を決定するためのプログラミングを容易に行うことができ,また音声その他により状況を知らせるというようなことも可能になり,センサデータに基づいて何らかの動作を決定することが容易に行えるようになる。
【0029】
図2および図3は,本発明に係る言語処理インターフェースを有する機器操作装置の構成例を示す。図2および図3において,同一の機能を持つ手段には同一の番号を付して表している。図3は,図2に示す構成例に,センサ50,判定基準データベース51,判定基準作成手段54を付加したものを示している。
【0030】
入出力装置40は,例えばマイクロフォン,キーボード,スピーカ,ディスプレイというような入出力機器である。
入力処理手段41は,人間等から発せられる音声等やキーボード等から入力される記号などの言葉Wを,入出力装置40から入力すると,計算機で処理できるような記号列に置き換え,これを言葉データWdとし,さらに,元の言葉Wと言葉データWdを言語データベース42へ保存し,比較手段43を起動する。
【0031】
比較手段43は,言葉データWdを用語付き行動データベース49に格納された用語付き行動データの言葉データWd′と比較し,一致する場合には,行動実行手段46を起動して用語付き行動データの行動パターンを実行させ,一致しない場合には,行動選択手段44を起動する。
【0032】
行動選択手段44は,複数の可能な行動パターンAを蓄積した行動データベース45から,ある基準に従って一つの行動パターンAを選択し,選択した行動パターンを実行するよう行動実行手段46を起動する。
【0033】
また,選択した行動パターンを行動実行手段46で実行し,実行結果を判定手段47で判定する。その結果,実行した行動パターンがある基準に適合しないと判定された場合には,先に実行した行動パターンAと異なる行動パターンBをある基準で選択し,選択した行動パターンを実行するよう行動実行手段46を起動する。選択する行動がない場合には終了する。また,ある所定回数の行動パターンを実行しても,ある基準に適合する判定結果が得られなかった場合には行動の実行を中断するか,人間等に質問を発する質問手段52を起動する。あるいは,選択可能な行動パターンすべてを実行し,そのうち,最もよいと思われる行動パターンAmを人間が選択してもよい。
【0034】
行動実行手段46は,行動選択手段44で選択された行動パターンAを実行し,判定手段47を起動する。比較手段43から行動パターンAが与えられた場合には,それを実行し,終了する。
【0035】
判定手段47は,言葉データWdと行動パターンAについて,人間から指示される判定入力手段53からの指示によって判定し,OK(適合する)と判定される場合には用語付与手段48を起動し,NG(適合しない)と判定される場合には行動選択手段44を起動する。
【0036】
用語付与手段48は,判定手段47である基準に適合した行動パターンAに言葉データWdを付与し,用語付き行動データベース49に行動パターンAと言葉データWdを保存する。
【0037】
用語付き行動データベース49は,行動パターンAと,その行動パターンAに付与した言葉データWdの組を,ある形式で記憶しておくデータベースである。あるいは,行動パターンAと,行動パターンAを実行中にセンサ50により取得したセンサデータと,それらのデータに付与した言葉データWdとを組にして,それらをある形式で記憶しておくデータベースである。
【0038】
図3のセンサ50は,行動実行手段46がある行動パターンAを実行中に,その実行状況を測定するためのセンサである。
質問手段52は,数回の行動パターン実行の結果,与えられた言葉Wにうまく適合する行動が選択できなかった場合に,適切な行動は何かを人間に質問するものである。質問は,スピーカやディスプレイ等の入出力装置40を用いて,音声やメニュー等によって行われる。
【0039】
判定入力手段53は,与えられた言葉Wに対して,選択された行動パターンが適切な行動であるかどうかを判定する基準が,判定基準データベース51にない場合に,人間が直接その判定(OK/NG)を入力するものである。
【0040】
判定基準作成手段54は,人間から与えられた判定基準を判定基準データベース51に保存するものである。あるいは,人間から直接判定が行われるときに,適当な判定基準を作るために,センサデータから何らかの特徴を抽出し,それを判定基準として保存する。
【0041】
以上の各処理手段を計算機によって実現するためのプログラムは,計算機が読み取り可能な可搬媒体メモリ,半導体メモリ,ハードディスクなどの適当な記憶媒体に格納することができる。
【0042】
図2または図3に示す装置の作用は,以下のとおりである。
人間等から与えられる言葉W(命令)は,入力処理手段41によって処理され,計算機が理解できる言葉データWd(命令データ)に変換される。言葉W(命令)は,例えば,もっと速度を上げろとか右に回転しろなどの言葉による命令であり,実際の値で示される必要はない。言葉Wと首葉データWdは,それらの対応がわかるような形式で,言語データベース42に格納される。言葉Wが例えば音声信号であれば,入力処理手段41は,マイクロフォン等の音声収集装置から入力した音声信号を蓄積し,またはその特徴を抽出し,抽出されたデータを言葉データWdとするものである。
【0043】
通常,言葉Wは自然言語であるが,言葉データWdは言葉Wに対応する単なる計算機の内部コードであり,自然言語としての意味を持たない。言葉Wの意味について,計算機は事前に知識を持つ必要はない。入力処理手段41中に音声認識機能を設け,音声入力をキーボード等からの文字入力と同様に扱うことも可能である。また,例えば類義語辞書等を用意し,入力した言葉Wを同じ意味を持つ他の言葉W′に変換し,その言葉W′に対する言葉データを以後の処理で用いるようにしてもよい。
【0044】
入力処理手段41によって処理された後の言葉データWdは,用語付き行動データベース49に格納されたデータと比較手段43において比較される。もし,用語付き行動データベース49になんのデータもなければ比較は行われず,直ちに行動選択手段44が起動される。
【0045】
用語付き行動データベース49に用語付き行動データがあり,かつ言葉データWdと用語付き行動データのどれかが一致する場合には,その行動パターンが行動実行手段46によって実行され,実行終了後に,その命令は終了する。
【0046】
一方,言葉データWdが用語付き行動データのどれとも一致しない場合には,行動選択手段44が起動される。行動選択手段44は,行動データベース45にあらかじめ蓄えられた,その装置が可能な行動パターン(例えば,速度を一定量増やすとか方向を一定量変えるとか,温度を一定量変えるとか,従来の命令形態で実現できる命令方式全般)の中から,適当なものを選択し,その行動パターンの実行を行動実行手段46に依頼する。行動実行手段46は,依頼された行動パターンを実行する。
【0047】
行動結果は,原則として人間が判定する。判定は機器の選択した行動が自分の与えた命令にあっていればOK,間違っていればNGの指示を判定入力手段53を介して入力する。判定入力手段53は,実行結果が良い,悪い程度の簡単な入力とし,キーボードやスイッチ等の入出力装置40から入力する。なお,行動終了後,一定時間待って人間から入力処理手段41を通じて良いとか悪いという言葉を入力してもらい,行動の良し悪しを決定してもよい。この場合の行動データは先の行動を良いと判定せよなどにすればよい。
【0048】
この判定方法では,人間が常時機器の行動状態を監視していなければならないので面倒である。そこで,判定基準を人間があらかじめ作成して,それに適合したなら判定OKとする方法があると便利である。そのため,質問手段52から人間に判定基準を質問する。得られた判定基準は,判定基準データベース51に蓄積される。判定手段47は,与えられた判定基準に合うような状態になったとき,OKと判定することになる。この場合には,判定はセンサデータを比較することによって判定する。したがって,判定基準もセンサデータから得られるようなものとなる。例えば,速度Vを上げろという命令が与えられた場合なら,センサ50の出力から検出した加速度α>0が判定基準となる。
【0049】
判定基準は,行動データベース45に格納された行動パターンがどうなれば良いかを基準に設定できる。例えば,速度Vを変えるという行動パターンがあると,その判定基準は加速度αが正または負になれば良いので,判定基準は,「加速度α>0」または「加速度α<0」のいずれかである。
【0050】
人間等が判定基準を用いずに直接判定を行った場合,その判定基準があいまいである。そこで,OKとなった行動実行時に得られたセンサデータから適当な特徴量,例えば,平均速度,加速度などを計算し,それを判定基準として判定基準データベース51に保存しておく。
【0051】
判定の結果OKと判断された場合には用語付与手段48が起動され,とった行動と与えられた言葉による命令の言葉データWdとを結合して,用語付き行動データとして用語付き行動データベース49に蓄える。すなわち,「命令:速度を上げろ→行動:加速度α>0」のようなデータを格納する。
【0052】
一方,NGと判定された場合には次の行動を選択実行すべく,行動選択手段44が起動される。このとき,行動選択手段44は先に実行したもの以外の行動を選択実行する。
【0053】
さらに,用語が付与された行動データをOKと判定した判定基準に対し,その用語との対応がとれるよう判定基準データベース51にも保存する。こうすると,ある命令がきたときにどの判定基準を用いるかが逐次学習できるので,人間に常に質問することなく判定基準が自動的に利用できるようになる。
【0054】
図4は,本発明に係るセンサデータ処理装置を実現するためのハードウェア構成例を示す。
図1に示す情報入力装置1として例えばセンサ111があり,センサ信号は,計算機112で取得する。取得したデータおよび特徴量,用語付きデータベース6,用語未決定データベース7などは,ハードディスク等の記憶装置113に蓄えられる。特徴抽出,特徴分類,状況判断等の処理は,計算機112内で行う。状況判断結果は,ディスプレイ装置114や音声合成装置115等で人間に提示される。状況判断結果によってアクチュエータ116を制御する場合には,状況判断結果によって選択された制御情報により,例えば前進,後退,回転等の何らかの作業が行われる。
【0055】
また,ディスプレイ装置114や音声合成装置115等は,用語付与時に人間に質問する際にも利用される。人間が用語を入力するときには,キーボードやマウス,音声認識装置等から入力することが考えられるが,これは,一種のセンサといえるので,これら計算機112への入力デバイスは,すべてセンサ111として示している。
【0056】
計算機112は,1または複数のプロセッサ(CPU)とプログラムや制御用のデータが格納されたメモリとから構成される。計算機112内に,階層型ニューラルネット等のニューロコンピュータを含んでいてもよい。
【0057】
図5は,本発明に係る言語処理インターフェースを有する機器操作装置を実現するためのハードウェア構成例を示す。
入力装置121は,マイクロフォンやキーボード等の人間の命令の入力機器,さらにスイッチ等の判定の入力機器である。入力データは,計算機123に送られる。センサ122は,行動実行中の状況を測定するためのセンサであり,データは計算機123により取得される。
【0058】
計算機123は,本発明のプログラムの実行,および入力された音声信号の処理やセンサ信号の処理を行ったり,処理結果を記憶装置124に記憶させたりするものである。
【0059】
記憶装置124は,各種データベースおよび本発明のプログラムを格納しておくもので,ハードディスクや半導体メモリ等で構成されている。音声合成装置125は,行動パターンとして,音声を発するような命令がある場合に音声を発したり,人間に対して質問する場合に音声を合成し発するものである。
【0060】
ディスプレイ126も同様な用途に用いたり,各種の処理を実行する途中の処理状態を表示したりするものである。機器127は,例えば,ロボットやアクチュエータ,エアコン等の機器であり,人間が与える命令は,これを操作するためのものである。入力装置121からディスプレイ装置126までを,機器127と別に設けるのではなく,人間が命令を与える機器の中にこれらのすべてを組み込むようなハードウェア構成例とすることもできる。
【0061】
【発明の実施の形態】
以下,本発明の実施の形態を,移動ロボットに適用した例について図面を用いて説明する。
【0062】
1.センサデータ処理装置
はじめに,本発明に係るセンサデータ処理装置について説明する。
図6は,超音波センサを持つ移動ロボットがある環境に置かれている図を示している。ここでは,超音波センサデータのみを考えるが,本発明におけるセンサデータは,同一種類のものに限る必要はない。例えば,ロボット30の位置(X,Y)やその方向θを含んだセンサデータでも構わない。この移動ロボット30は,図1の情報入力装置1として超音波センサ31を備えていることになる。超音波センサ31は外周に例えば8個付いており,センサ位置からある物体までの距離を測定することが可能である。
【0063】
この例でのロボット30が置かれている環境は,壁32で挟まれた廊下33があり,廊下33の端部に右コーナ34,T字路35,左コーナ36,行き止まり37等がある。
【0064】
8個の超音波センサ31を用いて,ある位置で測定したセンサの値をUとする。Uは8個の距離データからなるベクトルである。ロボット30を移動させて,あるサンプリング時間間隔で超音波センサ31の値を測定する。
【0065】
超音波センサ31から得られる距離データは,廊下のような場所では左右の距離が短く,前後の距離が長いので,超音波センサ31の出力もそのような状態になるはずである。廊下を通る間,ロボット30は同じような状態の超音波センサデータをたくさん取得することになる。
【0066】
図7は,超音波センサデータの一例を表している。
1から8までの各方向の物体までの距離を計測する超音波センサが8個あり,各々が10メートルまでの距離を測定できるものと想定する。例えば,図7(a)に示した幅2メートル,前後20メートルの長方形空間では,図のA,B,Cの位置に対応する超音波センサデータは,図7(b)のようになる。この場合において,ロボットの半径は0.4メートルとし,超音波センサはロボットの表面に設置されているものとした。
【0067】
次に,本発明を構成する各処理機構の具体例を詳しく説明する。
〔1〕情報入力装置
情報入力装置1(この実施の形態では,超音波センサ31)からデータ入力があると,データは,特徴抽出手段2に送られる。特徴抽出手段2内に,もし,あらかじめ決められた特徴抽出手法が指定されているならば,それに沿った特徴抽出が行われる。特徴を抽出する前の生データは捨てられるか,または生データ保存用データベース9に保存される。時系列データから特徴を抽出するような場合もあるので,保存しておいた方が望ましく,基本的には生データ保存用データベース9に入力データを保存する。
【0068】
〔2〕特徴抽出手段
特徴抽出手段2には,あらかじめ指定された特徴抽出手法が用意されている。この特徴抽出手段2のフローチャートを図8に示す。特徴抽出手法は二つ以上あってもよい。その場合,抽出される特徴量はべクトル量となる。T0 からTn-1 までのn個の特徴量を抽出するものとすると,まずセンサデータを入力し(図8のS1),iを0に初期化する(S2)。その後,特徴量Ti を抽出し(S4),iをインクリメントしながら(S5),特徴量の抽出を繰り返して,iがnになったら終了する(S3)。
【0069】
この際,何ら特徴を抽出せず,入力されたデータそのものを特徴抽出結果とすることも考えられる。この場合には,センサデータそのものが特徴となる。ただし,保存するデータ容量が大きくなるので効率的でない。したがって,ここでは,前後の距離が長くて,左右が短いといったセンサの特徴を抽出するものとする。これには,図7における超音波センサデータの前後の距離と左右の距離の比を特徴量として用いる。この特徴量Tは,例えば,次式のようなものを用いる。
【0070】
T=(U1+U5)/(U3+U7)
Unは,n番目の超音波センサのデータを示す。図7(b)のデータを代入すると,Aの位置における特徴量TA は12.2,Bの位置における特徴量TB は16.0,またCの位置における特徴量TC は12.2となる。十字路や広い部屋の真ん中にいるときには,前後,左右の距離がほぼ等しく,特徴量Tはほぼ1に近い値となる。したがって,例えばT>10というような基準で元の超音波センサデータを分類すると,ロボットが廊下にいるのかそうでないかを判断する基準となる特徴量Tが得られる。ここで,得られた特徴量Tは,特徴比較・分類手段3に送られる。
【0071】
次に,また新たなセンサ入力が得られると,先と同じ方法で,特徴抽出が行われ,抽出された特徴量Tは,特徴比較・分類手段3に送られる。一方,生データは,生データ保存用データベース9に保存される。なお,特徴量についても,生データとともに生データ保存用データベース9に保存してもよい。
【0072】
特徴抽出手段2で抽出する特徴量は,対象とするデータから得られる何らかの特性を抽出したものなら何でもよく,もし,適当な特徴量が得られない場合には,データそのものを特徴量とすればよい。
【0073】
センサデータには,時間に依存しない静的なデータと,時間に依存して変化する時系列データがある。
時間に依存して変化しない静的なデータでは,そのデータ単一での特徴を扱う。一般にデータの特徴量は,画像などでは,画像全体に占めるRGBの比率や,2値化したときの面積,画像中のエッジの数などさまざまなものが考えられる。また,前後左右の4方向にある超音波センサに対しては,先に述べたように,各々の方向での距離の比率,例えば,前後方向が左右方向に比べて長いとか,前方向のみ距離が長く,その他は距離が短いなどの前後方向対左右方向の距離比率などが特徴量として挙げられる。以上が静的データの特徴抽出方法の例である。
【0074】
時系列データの場合には,得られたデータの時間変化を特徴量として抽出する。これには,時々刻々に得られるセンサデータの時間差分を用いる。例えば,時刻tとt+Δtに得られた画像間の画像全体に占めるRGBの比率の差分や,2値化したときの面積の差分,画像中のエッジの数の差分などである。超音波センサからの入力についても,状態変化に着目するときには,時刻tとt+Δtに得られたセンサデータの差分を取る。あるいは,ロボットが移動する際の速度や加速度など(これらはすでに時間要素を含んでいる)を特徴量として用いる。
【0075】
〔3〕特徴比較・分類手段
特徴比較・分類手段3は,大きく分けて用語付きデータベース6に登録されている用語付きのデータ群と比較する特徴比較部と,用語付きのデータ群に一致するものがない場合に用語未決定データベース7に登録するために分類する特徴分類部とからなる。
【0076】
〔3−1〕特徴比較部
特徴比較部は,特徴抽出された特徴量Ti (i=0,…,n−1),または特別な特徴抽出をしない場合には,超音波センサデータそのものを受け取って,それが用語付きデータベース6中のk個のデータ群と一致するかどうかの比較を行う部分である。k個のデータ群は,それぞれmg 個の要素を持つ。なお,mg は必ずしも一定の数でなくてもよい。図9は,この処理の流れを示したフローチャートである。
【0077】
特徴の比較では,まず特徴量Ti を入力する(図9のS11)。次に,用語付きデータベース6中のデータ群の個数kをカウントするループ変数gを0に初期化設定する(S12)。その後,変数gがk以上になるまで(S13),gを1ずつインクリメントしながら(S21),iが0から(n−1)までの特徴量Ti と,jが0から(mg −1)までの特徴量Tj との類似性を比較する(S14〜S20)。ここで,Tj は用語付きデータベース6中のg番目のデータ群にあるj番目の特徴量である。
【0078】
初期化時には,用語付きデータベース6には何らデータが蓄積されていないので(k=0),比較対象がなく,比較結果は「一致なし」として,特徴量Tは,特徴分類部にそのまま送られる。用語付きデータベース6に何らかのデータがある場合には,特徴量同士の類似性を計算し,一致判定を行う。特徴量Tの類似性は,例えばその値間の距離Lを用いて計算する。
【0079】
L=(Ti −Tj 2 (i≠j)
特徴量がベクトルで表されている場合には,その各々の成分ごとの距離の総和を距離Lとする。距離Lがある閾値εよりも小さければ,それらのセンサデータは「一致あり」とみなされる。「一致あり」と判定された特徴量Ti は,用語付きデータベース6の該当するデータ群に蓄積されるとともに状況判断手段4に送られる。「一致なし」と判定された特徴量は特徴分類部に送られる。
【0080】
生データを用いる場合の具体的な類似性判定方法については,超音波センサのデータを例にとって説明する。超音波センサデータは8つの成分からなるベクトル量とする。まず,入力された超音波センサデータをD1とする。D1と類似したデータを検索するため,検索対象となるデータを一つ選択する。それをDtとする。D1とDtの類似度は,例えば,次式のような距離計算によって算出する。
【0081】
L=(D1−Dt)2
距離Lが小さいほどそれらは類似したデータであると推定できる。超音波でないセンサデータについても同様に処理をすることができる。各種センサについても,各成分の並びを同一にすれば,同じ方法で類似性の判定が可能である。
【0082】
[特徴量T>α (αは定数)]というような基準で分類されたデータ群との比較では,T>αであるかどうかをそのまま判定すればよい。
〔3−2〕特徴分類部
特徴比較・分類手段3の特徴分類部では,ある分類基準に従って,用語未決定データベース7から特徴量Tに類似するものがないか検索する。特徴分類部の処理手順は,図9で示したフローチャートとまったく同じであるが,比較する特徴量Tj は用語未決定データベース7から選ぶこととなる。用語未決定データベース7には,何らかの特徴量によって分類されたデータ群が存在する。各データ群を構成する任意のデータについて類似性判定を行う。ここで,すべてのデータについて比較しても構わない。類似性の判定には,例えば,その値間の距離Lを用いる。
【0083】
L=(Ti −Tj 2 (i≠j)
距離Lがある閾値εよりも小さければ,それらの特徴量は類似しているとみなされる。あるデータ群に属する任意のデータに対し,「類似している」という判定であれば,新しいデータをそのデータ群に登録する。もし,「類似していない」という判定がされると新しいデータは新たなデータ群として登録される。
【0084】
特徴抽出をしていない生データの分類についても,特徴比較部で用いたセンサの各成分毎の距離計算によって類似性の判定が可能である。
別の分類法では,特徴量Tがどのような値の範囲にあるかを基準として分類する。例えば[特徴量T>α (αは定数)]というような基準で分類することもできる。これは,例えば速度が正なら前進,負なら後退,ゼロなら停止などと分類する際に用いる分類基準である。
【0085】
〔4〕用語付与手段
用語付与手段5は,一定データ量に達した用語未決定データベース7内のデータ群に対し,用語を付与する手段を提供する。図10は,用語付与手段5のフローチャートである。用語未決定データベース7内のあるデータ群は,センサデータが入力されるに従い,徐々にその構成データ数が増える。データ数がある一定量βを超えた場合,該データには適当な用語が付けられる。用語を付与するには,例えば,人間にセンサデータを示して,このようなセンサデータが示す状態(ロボットの例ではロボットのいる場所)があるが,これをどう名付けるかを聞くことにする。
【0086】
すなわち,用語付与手段5は,図10(a)に示すように,用語未決定データベース7内の1番目からk番目までのデータ群の要素の個数mg がある一定量βより大きいかどうかを調べ(S31〜S34),大きいものがあった場合には,図10(b)に示す質問ルーチンを起動する(S35)。
【0087】
質問ルーチンでは,人間が側にいるかどうかを判断し(S41),人間が側にいない場合には処理を終了する。人間が側にいる場合には,質問を提示し(S42),用語を入力してもらう(S43)。入力した用語をデータ群に付与し(S44),それを用語付きデータベース6へ登録する(S45)。S42の質問の提示では,例えば図11に示すようなユーザインターフェースを用いてデータ内容を表示し,用語の入力を行う。
【0088】
この用語の付与についてさらに詳しく説明する。用語を付与する際は,できるだけ人間が使っている言葉で用語を付けることが望ましいが,データにそのような名前を自動的に付与するには,あらかじめ装置側がそのような知識を持っていなければ困難である。そこで,図11に示すようなユーザインターフェースを用いて装置側が適宜人間に質問を行うことで,そのデータ群に用語を付与する。
【0089】
装置は,あらかじめ分類しておいたデータ群について,その分類基準とデータ内容を提示し,人間に用語の付与を依頼する。分類基準は,例えば,ロボットの回転スピードという特徴量Δθ/Δtに対し,Δθ/Δt>0という基準で選んだ特徴である場合,Δθ/Δt>0といったものが分類基準となる。さらに,これは時系列的な特徴であることから,「これには動詞を付与するのが適当と思われます」等のアドバイスをユーザインターフェースに付与する。
【0090】
人間は,この分類基準から,このデータに「回転する」という用語を与える。ここでは,Δθ/Δt>0に対しては,より適切には「左に回転する」であるが,このとき一般に,人間には「左に」を付けた方がより適切であるとは思い付かない。この後,Δθ/Δt<0という分類基準が提示されたときには,「回転する」という用語を再び付けようとする。しかし,この「回転する」という用語はすでに別のデータに付与されているので,装置は,これはすでにΔθ/Δt>0という特徴を持つデータに付いていますというアドバイスを提示することによって,人間にΔθ/Δt>0とΔθ/Δt<0という2種類のデータ群があることを示唆することができる。この時点でΔθ/Δt>0に対しては,「左に曲がる」,Δθ/Δt<0に対しては,「右に曲がる」のようにより厳密な用語を付与することができる。
【0091】
さらに,装置は,これら二つの用語に人間が同一の用語を付与しようとしたことが分かるので,これらの間に何か関係がありそうだと推論できる。そこで,装置は,さらにこれらのデータ群をまとめる用語を付与するかどうかを質問することが可能である。しかもこのとき,人間は,最初二つの異なるデータ群に対し「回転する」という用語を付与しようとしたので,これがこれらのデータ群に対する共通の用語だと推論できることとなる。そこで,装置は,「これらに『回転する』という用語を付与しますか?」と質問することができる。人間がこれらの質問にOKを答えれば,これら二つの用語に「回転する」という用語が付与される。OKしないなら,別の用語付与を求める。
【0092】
以降,この二つのデータ群を特定するための分類基準は,Δθ/Δt>0とΔθ/Δt<0となる。
人間に聞けない場合には,まず適当な符号を付与しておいて,あとで必要に応じて人間に尋ね,あとから改名する。側に人間がいない場合,適当な用語を装置が勝手に付与しておく。もちろんこの場合,何の用語も付与しないというのでも構わない。側に人間がいるかどうかは,質問を発してからの経過時間で判断したり,赤外線等のセンサを利用して人間の存在を確認することができる。
【0093】
次に,人間が側にいることがわかった場合には,前に質問できなかったデータ群に対する用語付与の質問を起動し,人間に用語を付与してもらう。
用語を付与されたデータ群は,用語未決定データベース7から用語付きデータベース6に移動し,保存される。また,生データ保存用データベース9に保存されている生データに対しては,それがどのデータ群に属しているかがわかるような符号が付けられる。
【0094】
以上のようにして,取得された特徴量は,用語を付与されたデータベースに逐次分類,登録されることとなる。
用語を付与する際に,適当なユーザインターフェース等を用いて,用語を付与するが,そのときデータの特徴に応じて「名詞」,「動詞」,「形容詞」等を付ける。以下はその際の基準を示す。
【0095】
(1)名詞の付与
物の名前はあるものの静的な状態を表すものであるので,名詞は,静的な特徴量に基づいて分類されたデータ,すなわち時系列でないデータに付けられる。
【0096】
(2)動詞の付与
動詞は,時間的に変化するものや動作を表すものであるので,時系列の特徴量に基づいて分類されたデータに付けられる。
【0097】
(3)形容詞の付与
形容詞は,ある特徴に対して,その量や性質を述べたものである。すなわち,動作が速いとか,量が多いなどである。したがって,ある特徴量があってその性質の違いを記述する場合には形容詞を用いる。ここで,ロボットが移動する場合を考えてみる。このとき,ΔDir/Δtが並進の特徴量を表すことにする。ある一つのセンサ信号系列から得られるΔDir/Δtが別のセンサ信号系列から得られるΔDir/Δtよりも大きい場合,前者は後者よりも速度が「速い」と名付ける。逆に後者は,前者よりも「遅い」と名付ける。また,ある一定の閾値を設け,この値よりもΔDir/Δtが大きいときには「速い」とし,遅いときには「遅い」と用語を与えてもよい。
【0098】
さらに,ファジィ理論を用いて用語を付与することもできる。この場合,「速い」,「普通」,「遅い」に対応するメンバシップ関数を定義し,その度合いによって付与する用語を決める。このとき,特徴量はΔDir/Δtだけでなく,メンバシップ関数の定義も特徴量として加える。
【0099】
〔5〕状況判断手段
状況判断手段4は,判定中の特徴量とそれが一致する用語付きデータベース6のデータ群に付けられた用語を参照し,その内容によって現在の状況を判断する。例えば,「廊下」の用語を持つデータ群を参照し,現在の特徴量が「廊下」に一致すると判断した場合,状況を「廊下」にいると判断する。すなわち,入力データの判断を,用語付きデータベース6にあるデータと比較することによって行い,さらにその用語データに付けられた名前を用いて入力データの状況を判断する。
【0100】
図12は,状況判断手段のフローチャートを示したものである。
用語付きデータベース6から一致した特徴量リストのデータ名(用語)を取得する(S51)。取得したデータ名で現在の状況を表し(S52),状況を表示する(S53)。必要に応じて状況に応じた処理を行う(S54)。例えばロボットの超音波センサから得たデータの特徴量が「左コーナ」であれば,「左へ90度回転した後,前進。」というような制御を行う。
【0101】
〔6〕データ群削除手段
ある期間経過後,用語未決定データベース7に蓄えられたデータのうち,一定期間を経過しても所定のデータ数に達しないデータは,何らかの原因,おそらくノイズ等によって大きな誤差を含んだデータである可能性が高い。そのようなデータは,用語を付与するほどの信頼性を持ったデータとは言い難いので,削除する。これをデータ群削除手段10が行う。あるいは,何らかの特異な性質をもつデータかもしれないので,このような際には,データは削除しなくてもよい。
【0102】
〔7〕生データ保存用データベース
図13は,生データ保存用データベースが保存するデータ形式の例を示す。
生データ保存用データベース9は,情報入力装置1から得たデータをそのまま保存しておくためのデータベースで,例えば図13に示すように,システムが自動的に付与するデータの識別番号,データの取得時刻,センサの種類,データの内容が格納される。また,この例では,特徴量の種類と特徴量も生データ保存用データベース9に格納されるようになっている。センサデータが時系列の場合にも,同様にデータの識別番号,データの取得時刻,センサの種類,データ内容が格納される。また,特徴量の種類,特徴量についても同様に保存しておくことができる。
【0103】
〔8〕用語未決定データベース,用語付きデータベース
図14(a)は,用語未決定データベースのデータ形式の例を示す。
用語未決定データベース7には,分類されたデータ群(グループ)の識別番号,グループに属するデータ数,グループに付けられた仮の用語,用語の仮の品詞,分類基準となる特徴量の種類,分類基準およびこのグループに属するデータの識別番号が格納される。グループに付けられる仮の用語およびその用語の仮の品詞は,装置がセンサまたはデータの状況によって自動的に付与する。
【0104】
図14(b)は,用語付きデータベースのデータ形式の例を示す。
用語付きデータベース6には,用語未決定データベース7のデータのグループに対して用語付与手段5が用語を付与したものが登録される。データ形式は,用語未決定データベース7と同様であるが,仮の用語,仮の品詞ではなく,用語付与手段5によって付与された用語,品詞の情報を持つ。
【0105】
〔9〕階層型ニューラルネットを用いた実現例
次に,階層型ニューラルネットを用いて特徴抽出を行う例について説明する。特徴抽出手段2は,汎用のプロセッサを用いて実現することもできるが,以下のように階層型ニューラルネットのニューロコンピュータを用いて実現することもできる。
【0106】
図15は,5層のニューラルネットを用いて,特徴抽出する方法を示したものである。
この階層型ニューラルネットには,入力と出力が同じ値になるように教師データを与えて学習させる。すなわち,恒等写像を学習させる。図6に示した8個の超音波センサからなるロボット30では,超音波センサからの8個の値をニューラルネットへの入力とし,この入力とまったく同じ8個の超音波センサの値を教師データとして,入力と出力の値が常に同じになるように学習させる。このとき,ニューラルネットのある中間層の出力をそのデータの特徴量とする。
【0107】
ニューラルネットの各ユニットの出力値は,±1の範囲になるように調節してある。ここでは,3層目の出力を用いることとする。中間層は複数ある場合が一般的なので,特徴量としては,それらの出力のベクトルとなる。図15の例では,3層目の出力ユニットは,二つにしてあり,この各々のユニット(unit0,unit1)の出力を特徴量とする。特徴量の類似性は,前述した距離Lで求める。
【0108】
図16は,図6における移動ロボットがさまざまな廊下(12種類:(A)〜(M))に置かれた場合の状態を示している。また,図17は,ロボットに搭載された8個の超音波センサの値を示している。
【0109】
図17に示す12種類のデータを,図15のニューラルネットに学習させ,第3層の中間層の出力値を,unit0を横軸,unit1を縦軸にとってプロットしたものが図18である。図18を見ると,12種類のセンサデータが適当な位置に分散していることがわかる。したがって,各点からの距離を,例えば0.2としてその範囲内にあるデータを分類することができる。そのときの各ユニットの出力値は,図19に示した通りである。
【0110】
図20は,ロボットを,図6に示した廊下の範囲内で適当に移動させ,その時の超音波センサデータを取得して,すでに学習済みのニューラルネットに入力したときの第3層の出力を図18と同様にプロットしたものである。学習データに対応する出力は黒丸(●)で,新たに分類したデータは菱形(◇)で示してある。この結果,分類対象のデータは,一部のデータを除いて,0.2という距離内にあることがわかる。したがって,学習したデータに付けられた名前,例えば,(A)なら「十字路」,(B)なら「廊下」といった名前による状況判断ができる。
【0111】
この実施の形態の場合には,用語付きデータベース6に入るべきデータ(最初の12種類のデータに相当)をあらかじめ人間が指定し,その用語にも名前を付けてあるので,効率的な用語設定と状況判断が可能である。
【0112】
〔10〕時系列データを特徴量として用いる場合の例
次に,時系列データを特徴量として用いる場合の実施の形態を,移動ロボットの移動時における例に基づいて説明する。移動ロボットは通常,前進後退と回転(操舵)の2種類のモータを有することが多い。この2種類のモータにその回転を検出できるセンサ,例えばエンコーダを備えているものとする。このとき,ロボットに移動命令を与えて移動させ,その移動中にロボットの位置を逐次測定する。
【0113】
前進後退用のモータが回転するとエンコーダの値も変化するので,この変化する状態を検出する。すなわち,特徴抽出手段2で,エンコーダの変化の状態を特徴量として抽出する。この特徴量は,前進後退の方向によって,前進がプラス,後退がマイナスとなるようにすることができる。また,その変化の割合,すなわち速度も特徴量として検出できる。つまり,ここで検出した特徴量は,速度とその符号である。
【0114】
これらを特徴比較・分類手段3に送る。用語付きデータベース6を参照して速度に関するデータ群との比較を行い,符号がプラスかマイナスかによって前進,後退という用語が選択できるように用語を付与しておく。こうすれば,状況判断時に前進するとか後退するといった状況判断が可能である。
【0115】
具体的に説明する。ロボットの位置データは,ロボットが移動するにつれて変化するので,時系列的に得られる。得られたデータ群をS1,... Snとすると,これらは,ある時間間隔Δtにおいて得られた時系列データである。このとき,各データ間の差分ΔSを考える。
【0116】
ΔSi =(Si −Si-1 )/Δt i=1,... , n
ΔSi は,ロボットがΔtの間に位置がどれだけ変化したかを表す。これを特徴量として,先のデータ分類法に従ってデータを分類する。位置データにロボットの姿勢も考慮し,Sの成分をx,y,θとする。x,yは2次元平面内の移動量を表し,θはロボットの回転量を表す。ΔSは,θだけが変化するような場合には,回転している状態を意味し,x,yだけが変化するような場合には,並進運動をしていることを意味する。すなわち,類似データをΔθ>0というような基準で選択すると,これは,左回転中と判断でき,そのデータ集合に対して用語を例えば「左に曲がる」と命名する。Δθ<0なら「右に曲がる」とする。
【0117】
次に,Δθ=0の場合を考える。このとき,ロボットの進行方向は,Dir=ATAN(y/x)で表され,ΔDir>0なら,ロボットは「前に進む」状態にあり,ΔDir<0なら,ロボットは「後ろに進む」状態にあると判断できる。Δθ=0,Δx=0,Δy=0なら,ロボットは停止中,両方ともある値を持つならロボットは並進しながら,回転しているという状態,つまり,カーブを曲がっていることになる。
【0118】
以上のような方法で,データ間の類似度を計算し,類似性があると認められる場合には,それぞれのデータにある種のフラグを付ける。このフラグは後から検索したときに,それらのデータが同じグループに属することがわかるような形で付けておく。類似性が認められない場合には,最初に得られた特徴量とは別のフラグを付ける。
【0119】
このようにして,センサ入力がある度に特徴抽出を行って,その特徴を分類し保存する。
以上,主として本発明を移動ロボットに適用した例について説明したが,もちろん,本発明は移動ロボットに限らず,センサからの入力によって何らかの処理または判断を行うシステムに,同様に適用することができる。
【0120】
2.言語処理インターフェースを有する機器操作装置
続いて,本発明に係る言語処理インターフェースを有する機器操作装置について,図21を用いて説明する。
【0121】
ここでは,移動ロボットに「速度を上げろ」という命令を人間が言葉で与える場合の処理を例にとって説明する。
人間が発した言葉は,マイクロフォン等の入出力装置40で音声データが収集され,計算機に送られる。計算機では,入力処理手段41がそのデータを処理する。音声データの場合は,その音声の特徴,例えば音声の帯域別パワースペクトルや声紋などを言語データベース42に記録する。この記憶したデータ名をWdとする。Wdは,用語付き行動データベース49に蓄えられた行動データと比較される。
【0122】
比較は,声紋であればその声紋の類似度を声紋間の距離などを用いて行う。比較の結果,一致するものがないかまたは用語付き行動データベース49内にデータがない場合には,行動選択手段44が起動される。一致するものがあれば,用語付き行動データベース49から用語を選択し,結合された行動を実行する。
【0123】
例えば,「速度を上げろ」という命令に一致する行動が加速度α=1[メートル毎秒毎秒]だとするとこの行動が選択され,実行され,速度が徐々に増大する。比較の結果,一致するものがなかった場合,行動選択手段44が起動され,行動データベース45 に蓄えられた行動データ,例えば加速度α=−1[メートル毎秒毎秒],加速度α=0[メートル毎秒毎秒],加速度α=1[メートル毎秒毎秒]などから適当な行動が選択される。
【0124】
選択方法は,行動データベース45中の行動データを最初から順に選んでもいいし,ランダムに選んでもよい。ここでは,記述された行動データの最初から順に選ぶものとする。まず,加速度α=−1[メートル毎秒毎秒]が選択される。この行動を実行すると,移動ロボットは,速度が遅くなるか後ろ向きに進んでしまう。これは,人間が与えた命令「速度を上げろ」に反するので,人間の判定は,NGを入力する。NGが入力されたので,行動は中止され,新しい行動開始前の状態に戻すか,動作を停止する。さらに,行動選択手段44では,先の行動とは異なる命令,加速度α=0[メートル毎秒毎秒]を選択し,実行する。これは速度が一定となり,人間が与えた命令「速度を上げろ」に反するので,人間の判定では,NGを入力する。NGが入力されたので,次の行動が再度選択される。加速度α=1[メートル毎秒毎秒]が選択され,実行されると速度は徐々に上がるので,今度は,人間の判定がOKとなる。
【0125】
OKとなった行動,加速度α=1[メートル毎秒毎秒]と与えられた命令「速度を上げろ」は,用語付与手段48によって結合され,「命令:速度を上げろ→行動:加速度α=1[メートル毎秒毎秒]」のようなデータ,あるいはデータ名Wdを使って,「命令:Wd→行動:加速度α=1[メートル毎秒毎秒]」として,用語付き行動データベース49に保存される。
【0126】
以上の手順で,命令「速度を上げろ」と正しい行動「加速度α=1[メートル毎秒毎秒]」が結合できる。
「速度を上げろ」という命令に類似しているが,言葉が異なる命令,例えば,「もっと速く」が命令された場合の処理を説明する。現在,用語付き行動データベース49には,「命令:速度を上げろ→行動:加速度α=1[メートル毎秒毎秒]」というデータが格納されているものとする。「もっと速く」という命令が与えられるとデータ比較が行われるが,一致するデータはないので,行動選択が行われる。この時,α=−1から始まって,順に判定が行われ,結局,α=1でOKの判定が得られるはずなので,命令「もっと速く」もα=1に結合され,用語付き行動データベース49には,「命令:もっと速く→行動:加速度α=1[メートル毎秒毎秒]」が格納される。これで,用語付き行動データベース49は,2つの命令を記憶したことになる。
【0127】
一方,「回転せよ」といった命令を与えた場には,行動データベース45に回転に関する行動パターンがない場合には,すべての行動を試しても,良い判定は得られない。この場合は,加速度をいろいろ変えたあと,結局,うまく行かないので,質問手段52を介して人間に質問を発する。例えば,「適当な行動がありません。適切な行動を指示してください」といった質問を発する。
【0128】
このとき,人間は,回転速度=1rad/s というような行動パターンを行動データベース45に追加することによって,この質問に対処できる。
また,行動実行時の速度データをセンサ50によって取得しておき,その変化パターンを行動と一緒に,またはセンサデータのパターンのみを命令と一緒に用語付き行動データベース49に保存してもよい。この場合,ある命令を与えた場合に,命令に一致する行動のセンサデータのパターンを人間に提示することによって,どのように機器の状態が変化するかわかるので,人間が安心して命令を与えられる効果がある。
【0129】
以下,このようにして,順次命令を与えていくと,速度の増減に関するさまざまな用語と行動の関係が構築でき,人間が発するさまざまなパターンの命令に対処できるようになる。
【0130】
各手段は,次のように処理を行う。
図22は,比較手段43のフローチャートである。
比較手段43は,用語付き行動データベース49中に,入力した用語と未照合の用語付きデータがない場合,すなわち以下のステップS63,S64で照合した結果,入力した用語と一致する用語付きデータが得られなかった場合(S61),行動選択手段44を起動して行動選択処理を依頼する(S62)。用語付きデータベース49中に未照合の用語付きデータがある場合には,用語付き行動データベース49から未照合の用語(命令)を選択し(S63),入力した用語と一致するかどうかを調べる(S64)。用語が一致するならば,行動実行手段46を起動して行動実行処理を依頼する(S65)。用語が一致しないならば,ステップS61へ戻り,照合を繰り返す。
【0131】
図23は,行動選択手段44のフローチャートである。
行動選択手段44は,これまでの行動の選択回数が,あらかじめ定められた指定回数になったかどうかを調べ(S71),指定回数になったならば,ステップS73へ進む。まだ,指定回数になっていなければ,行動データベース45に未実行行動データがあるかどうかを調べ(S72),ない場合にはステップS73へ進む。ある場合には,ステップS76へ進む。
【0132】
選択回数が指定回数になるか,行動データベース45中の行動をすべて実行した場合には,質問を発行するかどうかを判断し(S73),質問を発行するならば質問手段52を起動して質問処理を行い(S74),質問を発行しないならば終了する(S75)。
【0133】
一方,選択回数がまだ指定回数にならず,行動データベース45中に未実行行動データがあれば,未実行の行動を選択して(S76),その行動の実行済みフラグをONにする(S77)。次に,選択回数をプラス1して(S78),行動実行手段46を起動し,選択した行動の実行を依頼する(S79)。
【0134】
図24は,判定手段47のフローチャートである。
判定手段47は,判定基準データベース51中に判定基準があるかどうかを調べ(S81),判定基準があれば,判定基準データベース51から判定基準を抽出し,その判定基準と照合する(S82)。判定基準がなければ,判定入力手段53からの判定入力を待つ(S83)。
【0135】
判定基準の照合または判定入力の結果,判定がOKならば(S84),用語付与手段48を起動して用語付与処理を依頼する(S85)。判定がOKでなければ,行動選択手段44を起動して行動選択処理を依頼する(S86)。
【0136】
【発明の効果】
以上説明したように,本発明によれば,センサデータの処理について,センサからの入力データを分類し保存する機構と,これらの分類されたデータ群に適当な用語を与える機構を有することで,得られたセンサデータからその場の状況や状態を正しく判断することが可能となる。また,膨大なデータを効率よく簡略化して記憶し,状況判断が必要になったときに取り出して比較できることから,よりよいデータの利用技術を提供することが可能となる。
【0137】
また,本発明によれば,人間が与える言葉による命令について,それにふさわしい行動パターンを選択実行する機構とそれらを結合記憶する機構を有することで,人間のさまざまに変化する命令を吸収でき,しかも,人間にとって,わかりやすいインターフェースを堤供できることから,よりよい言語処理インターフェースを有する機器操作装置を構築することが可能となる。
【図面の簡単な説明】
【図1】本発明に係るセンサデータ処理装置の構成例を示す図である。
【図2】本発明に係る言語処理インターフェースを有する機器操作装置の構成例を示す図である。
【図3】本発明に係る言語処理インターフェースを有する機器操作装置の構成例を示す図である。
【図4】本発明に係るセンサデータ処理装置を実現するためのハードウェア構成例を示す図である。
【図5】本発明に係る言語処理インターフェースを有する機器操作装置を実現するためのハードウェア構成例を示す図である。
【図6】超音波センサをもつ移動ロボットがある環境に置かれている例を示す図である。
【図7】センサデータの一例を示す図である。
【図8】特徴抽出手段のフローチャートである。
【図9】特徴比較・分類手段のフローチャートである。
【図10】用語付与手段のフローチャートである。
【図11】用語付与手段のユーザインターフェースを示す図である。
【図12】状況判断手段のフローチャートである。
【図13】データベースのデータ形式例を示す図である。
【図14】データベースのデータ形式例を示す図である。
【図15】ニューラルネットを用いた実施例を示す図である。
【図16】センサデータの特徴分類例を示す図である。
【図17】センサデータ例を示す図である。
【図18】ニューラルネットによる学習例を示す図である。
【図19】用例データ例を示す図である。
【図20】ニューラルネットによる分類結果を示す図である。
【図21】本発明に係る言語処理インターフェースを有する機器操作装置の実施の形態を説明する図である。
【図22】比較手段のフローチャートである。
【図23】行動選択手段のフローチャートである。
【図24】判定手段のフローチャートである。
【符号の説明】
1 情報入力装置
2 特徴抽出手段
3 特徴比較・分類手段
4 状況判断手段
5 用語付与手段
6 用語付きデータベース
7 用語未決定データベース
8 データ群
9 生データ保存用データベース
10 データ群削除手段
40 入出力装置
41 入力処理手段
42 言語データベース
43 比較手段
44 行動選択手段
45 行動データベース
46 行動実行手段
47 判定手段
48 用語付与手段
49 用語付き行動データベース
50 センサ
51 判定基準データベース
52 質問手段
53 判定入力手段
54 判定基準作成手段

Claims (5)

  1. センサから得られたデータを処理するセンサデータ処理装置が実行するセンサデータ処理方法であって,
    1または複数のセンサから入力されたセンサデータから,あらかじめ指定された特徴量に従って,センサデータの特徴量を抽出する特徴抽出過程と,
    用語付きデータベースに自然言語の用語付きで登録されたデータ群の各特徴量と前記センサデータから抽出した特徴量とを比較し,前記用語付きデータベースに登録された特徴量のいずれかと前記センサデータから抽出した特徴量とが,ある基準に従って一致するとみなされた場合,前記センサデータを,一致するとみなされた特徴量のデータを含むデータ群に付与された用語に対応付け,前記センサデータに対する判断を含む処理を前記対応付けた用語を用いて行わせ,前記センサデータから抽出した特徴量が前記用語付きデータベースに登録された特徴量のいずれとも一致しないとみなされた場合,前記センサデータから抽出した特徴量を所定の分類基準に従って分類し,当該センサデータを,特徴量によって分類されたデータ群を記憶する用語未決定データベースに登録する特徴比較・分類過程と,
    前記用語未決定データベースに登録された特徴量によって分類されたデータ群について,ユーザに用語の入力を促し,ユーザインタフェースを介して入力された用語を前記データ群に付与し,前記用語付きデータベースに前記データ群を用語付きで登録する用語付与過程とを有する
    ことを特徴とする用語付きデータを扱うデータ処理方法。
  2. センサから得られたデータを処理するセンサデータ処理装置であって,
    1または複数のセンサから入力されたセンサデータから,あらかじめ指定された特徴量に従って,センサデータの特徴量を抽出する特徴抽出手段と,
    用語付きデータベースに自然言語の用語付きで登録されたデータ群の各特徴量と前記センサデータから抽出した特徴量とを比較し,前記用語付きデータベースに登録された特徴量のいずれかと前記センサデータから抽出した特徴量とが,ある基準に従って一致するとみなされた場合,前記センサデータを,一致するとみなされた特徴量のデータを含むデータ群に付与された用語に対応付け,前記センサデータに対する判断を含む処理を前記対応付けた用語を用いて行わせ,前記センサデータから抽出した特徴量が前記用語付きデータベースに登録された特徴量のいずれとも一致しないとみなされた場合,前記センサデータから抽出した特徴量を所定の分類基準に従って分類し,当該センサデータを,特徴量によって分類されたデータ群を記憶する用語未決定データベースに登録する特徴比較・分類手段と,
    前記用語未決定データベースに登録された特徴量によって分類されたデータ群について,その分類基準とデータ内容とをユーザインタフェースを用いてユーザに提示し,ユーザに用語の入力を促し,ユーザインタフェースを介して入力された用語を前記データ群に付与し,前記用語付きデータベースに前記データ群を用語付きで登録する用語付与手段とを有する
    ことを特徴とする用語付きデータを扱うデータ処理装置。
  3. 請求項2に記載する用語付きデータを扱うデータ処理装置において,
    前記用語付与手段は,前記用語未決定データベースに登録された特徴量によって分類されたデータ群の構成データ数が一定量を超えたデータ群に対して,前記ユーザに対する用語の入力を促す処理を実行する
    ことを特徴とする用語付きデータを扱うデータ処理装置。
  4. 請求項2または請求項3に記載する用語付きデータを扱うデータ処理装置において,
    前記用語付与手段は,ユーザに用語の入力を促す際に,用語付与対象のデータ群が時系列ではない静的な特徴量に基づいて分類されたデータである場合に,名詞の用語付与をユーザに指示し,用語付与対象のデータ群が時系列の特徴量に基づいて分類されたデータで ある場合に,動詞の用語付与をユーザに指示する手段を有する
    ことを特徴とする用語付きデータを扱うデータ処理装置。
  5. センサから得られたデータを処理するセンサデータ処理装置のコンピュータに実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって,
    前記コンピュータを,
    1または複数のセンサから入力されたセンサデータから,あらかじめ指定された特徴量に従って,センサデータの特徴量を抽出する特徴抽出手段と,
    用語付きデータベースに自然言語の用語付きで登録されたデータ群の各特徴量と前記センサデータから抽出した特徴量とを比較し,前記用語付きデータベースに登録された特徴量のいずれかと前記センサデータから抽出した特徴量とが,ある基準に従って一致するとみなされた場合,前記センサデータを,一致するとみなされた特徴量のデータを含むデータ群に付与された用語に対応付け,前記センサデータに対する判断を含む処理を前記対応付けた用語を用いて行わせ,前記センサデータから抽出した特徴量が前記用語付きデータベースに登録された特徴量のいずれとも一致しないとみなされた場合,前記センサデータから抽出した特徴量を所定の分類基準に従って分類し,当該センサデータを,特徴量によって分類されたデータ群を記憶する用語未決定データベースに登録する特徴比較・分類手段と,
    前記用語未決定データベースに登録された特徴量によって分類されたデータ群について,その分類基準とデータ内容とをユーザインタフェースを用いてユーザに提示し,ユーザに用語の入力を促し,ユーザインタフェースを介して入力された用語を前記データ群に付与し,前記用語付きデータベースに前記データ群を用語付きで登録する用語付与手段として,
    機能させるためのプログラムを記憶した
    ことを特徴とする用語付きデータを扱うデータ処理装置のプログラム記憶媒体。
JP04662598A 1997-11-17 1998-02-27 用語付きデータを扱うデータ処理方法,データ処理装置およびプログラム記憶媒体 Expired - Fee Related JP3884160B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP04662598A JP3884160B2 (ja) 1997-11-17 1998-02-27 用語付きデータを扱うデータ処理方法,データ処理装置およびプログラム記憶媒体
US10/246,637 US7143045B2 (en) 1997-11-17 2002-09-19 Device and method for operating device for data analysis based on data associated with words

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP31469997 1997-11-17
JP9-314699 1997-11-17
JP04662598A JP3884160B2 (ja) 1997-11-17 1998-02-27 用語付きデータを扱うデータ処理方法,データ処理装置およびプログラム記憶媒体

Publications (2)

Publication Number Publication Date
JPH11203264A JPH11203264A (ja) 1999-07-30
JP3884160B2 true JP3884160B2 (ja) 2007-02-21

Family

ID=26386734

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04662598A Expired - Fee Related JP3884160B2 (ja) 1997-11-17 1998-02-27 用語付きデータを扱うデータ処理方法,データ処理装置およびプログラム記憶媒体

Country Status (2)

Country Link
US (1) US7143045B2 (ja)
JP (1) JP3884160B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003231176A1 (en) * 2002-04-29 2003-11-17 Laboratory For Computational Analytics And Semiotics, Llc Sequence miner
JP2004199478A (ja) * 2002-12-19 2004-07-15 Fuji Xerox Co Ltd 自然語入力装置及び自然語入力プログラム
US7266780B2 (en) * 2003-06-30 2007-09-04 Motorola, Inc. Method for combining deterministic and non-deterministic user interaction data input models
JP2005148789A (ja) * 2003-11-11 2005-06-09 Fanuc Ltd 音声入力によるロボット教示プログラム編集装置
US20080228492A1 (en) * 2003-12-05 2008-09-18 Kabushikikaisha Kenwood Device Control Device, Speech Recognition Device, Agent Device, Data Structure, and Device Control
WO2005062295A1 (ja) * 2003-12-05 2005-07-07 Kabushikikaisha Kenwood 機器制御装置、音声認識装置、エージェント装置及び機器制御方法
GB0505396D0 (en) * 2005-03-16 2005-04-20 Imp College Innovations Ltd Spatio-temporal self organising map
US7716169B2 (en) * 2005-12-08 2010-05-11 Electronics And Telecommunications Research Institute System for and method of extracting and clustering information
JP2008009934A (ja) * 2006-06-30 2008-01-17 Kagawa Univ データ処理装置,データ処理方法,作業機械の遠隔診断システム及び作業機械の遠隔診断方法
JP2008009935A (ja) * 2006-06-30 2008-01-17 Kagawa Univ データ処理装置,データ処理方法,作業機械の遠隔診断システム及び作業機械の遠隔診断方法
WO2009038525A1 (en) * 2007-09-17 2009-03-26 Capfinder Aktiebolag System for assisting in drafting applications
JP2009140348A (ja) * 2007-12-07 2009-06-25 Toyota Motor Corp 行動決定装置、行動学習装置、及びロボット装置
KR101186192B1 (ko) * 2008-12-08 2012-10-08 한국과학기술원 센서 스크립트를 이용한 센서 정보 인식 장치 및 그 방법과그를 이용한 로봇
US9015093B1 (en) 2010-10-26 2015-04-21 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US8775341B1 (en) 2010-10-26 2014-07-08 Michael Lamport Commons Intelligent control with hierarchical stacked neural networks
US9881072B2 (en) 2014-08-14 2018-01-30 McAFEE, LLC. Dynamic feature set management
KR102261833B1 (ko) * 2015-11-04 2021-06-08 삼성전자주식회사 인증 방법 및 장치, 및 인식기 학습 방법 및 장치
US11501765B2 (en) * 2018-11-05 2022-11-15 Dish Network L.L.C. Behavior detection

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4638445A (en) * 1984-06-08 1987-01-20 Mattaboni Paul J Autonomous mobile robot
US4896357A (en) * 1986-04-09 1990-01-23 Tokico Ltd. Industrial playback robot having a teaching mode in which teaching data are given by speech
US4827520A (en) * 1987-01-16 1989-05-02 Prince Corporation Voice actuated control system for use in a vehicle
JPH07109560B2 (ja) * 1990-11-30 1995-11-22 富士通テン株式会社 音声認識装置
US5345538A (en) * 1992-01-27 1994-09-06 Krishna Narayannan Voice activated control apparatus
US5388198A (en) * 1992-04-16 1995-02-07 Symantec Corporation Proactive presentation of automating features to a computer user
US5384892A (en) * 1992-12-31 1995-01-24 Apple Computer, Inc. Dynamic language model for speech recognition
US5852801A (en) * 1995-10-04 1998-12-22 Apple Computer, Inc. Method and apparatus for automatically invoking a new word module for unrecognized user input
US6064959A (en) * 1997-03-28 2000-05-16 Dragon Systems, Inc. Error correction in speech recognition
JP3605682B2 (ja) * 1996-05-16 2004-12-22 本田技研工業株式会社 音声入力制御装置
JP3702978B2 (ja) * 1996-12-26 2005-10-05 ソニー株式会社 認識装置および認識方法、並びに学習装置および学習方法

Also Published As

Publication number Publication date
US7143045B2 (en) 2006-11-28
JPH11203264A (ja) 1999-07-30
US20030018467A1 (en) 2003-01-23

Similar Documents

Publication Publication Date Title
JP3884160B2 (ja) 用語付きデータを扱うデータ処理方法,データ処理装置およびプログラム記憶媒体
Filliat A visual bag of words method for interactive qualitative localization and mapping
KR102211650B1 (ko) 인공지능 기반 상품 추천 방법 및 그 시스템
CN112463976B (zh) 一种以群智感知任务为中心的知识图谱构建方法
JPH0228725A (ja) エキスパートシステムにおける問題認識方式
KR102438784B1 (ko) 데이터를 난독화 및 복호화 하는 전자 장치 및 그의 제어 방법
CN111797078A (zh) 数据清洗方法、模型训练方法、装置、存储介质及设备
CN111191136A (zh) 一种信息推荐方法以及相关设备
US20220318311A1 (en) Retrieval-based dialogue system with relevant responses
WO2021190433A1 (zh) 更新物体识别模型的方法和装置
CN111651579B (zh) 信息查询方法、装置、计算机设备和存储介质
CN111738074B (zh) 基于弱监督学习的行人属性识别方法、***及装置
Luperto et al. Exploration of indoor environments through predicting the layout of partially observed rooms
WO2024120504A1 (zh) 一种数据处理方法及相关设备
CN117992594A (zh) 基于生成式ai的用户陪伴方法、***、设备及存储介质
Hassan et al. Istaqim: An Assistant Application to Correct Prayer for Arab Muslims
Kasprzak et al. Agent-based approach to the design of a multimodal interface for cyber-security event visualisation control
Ilyevsky et al. Talk the talk and walk the walk: Dialogue-driven navigation in unknown indoor environments
JP2006088251A (ja) ユーザ行動誘発システム及びその方法
CN110192208B (zh) 共享物理图形的信号片段
Perkins et al. Rule-based interpreting of aerial photographs using the Lockheed Expert System
KR20230169681A (ko) 인공지능과의 관계를 반영하여 사용자에 특화된 응답을 출력하는 방법 및 장치
Diallo An Intelligent System for Detecting People from Images and Videos Provided by IoT Devices
JP3718328B2 (ja) データ変換装置、データ変換方法及びデータ変換プログラムを記録した媒体
JP7485217B2 (ja) 分類装置、分類方法及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060524

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061116

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111124

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111124

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121124

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121124

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131124

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees