JP2018147145A - コミュニケーションロボット、制御方法および制御プログラム - Google Patents

コミュニケーションロボット、制御方法および制御プログラム Download PDF

Info

Publication number
JP2018147145A
JP2018147145A JP2017040189A JP2017040189A JP2018147145A JP 2018147145 A JP2018147145 A JP 2018147145A JP 2017040189 A JP2017040189 A JP 2017040189A JP 2017040189 A JP2017040189 A JP 2017040189A JP 2018147145 A JP2018147145 A JP 2018147145A
Authority
JP
Japan
Prior art keywords
utterance
topic
sentence
input image
vector
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.)
Granted
Application number
JP2017040189A
Other languages
English (en)
Other versions
JP6798698B2 (ja
Inventor
隆佑 戸塚
Ryusuke Tozuka
隆佑 戸塚
聡 佐竹
Satoshi Satake
聡 佐竹
神田 崇行
Takayuki Kanda
崇行 神田
今井 倫太
Michita Imai
倫太 今井
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.)
ATR Advanced Telecommunications Research Institute International
Original Assignee
ATR Advanced Telecommunications Research Institute International
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 ATR Advanced Telecommunications Research Institute International filed Critical ATR Advanced Telecommunications Research Institute International
Priority to JP2017040189A priority Critical patent/JP6798698B2/ja
Publication of JP2018147145A publication Critical patent/JP2018147145A/ja
Application granted granted Critical
Publication of JP6798698B2 publication Critical patent/JP6798698B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

【課題】 景色や風景から連想可能な自然な発話で人と対話できるコミュニケーションロボットを提供する。【解決手段】 コミュニケーションロボット(10)はスピーカ(20)およびカメラ(22)を備え、CPU(24)は、カメラからの画像データを取り込み(S41)、その画像の構成要素を抽出して特徴ベクトルを生成する(S43)。次元圧縮用のトピックパラメータを用いて、N次元の入力画像ベクトルを生成し(S47)、他方、発話コンテンツ中の全ての発話文について、発話用インデックスとの類似度をそれぞれ計算し(S49)、最大の類似度を示す発話文を選択して発話する(S51、S53)。したがって、入力画像と適合した発話をすることができる。【選択図】 図7

Description

この発明はコミュニケーションロボット、制御方法および制御プログラムに関し、特にたとえば、人と対話する、コミュニケーションロボット、制御方法および制御プログラムに関する。
人とロボットの対話を制御する1つの方法として、非特許文献1に示すような、場所ごとに定義された発話を実現する方法が提案されている。
M. Shiomi, T. Kanda, H. Ishiguro, and N. Hagita, Interactive Humanoid Robots for a Science Museum, IEEE Intelligent Systems, vol. 22, pp. 25-32, 2007
非特許文献1の方法では、定義していない場所では適切な発話を選択することはできなかった。しかも、非特許文献1では、各場所に応じて、人間が手動で発話コンテンツの対応づけを行う必要があるため、発話コンテンツの作成に時間が掛かるという問題もあった。
それゆえに、この発明の主たる目的は、新規な、コミュニケーションロボット、制御方法および制御プログラムを提供することである。
この発明の他の目的は、画像に適合した自然な会話をすることができる、コミュニケーションロボット、制御方法および制御プログラムを提供することである。
第1の発明は、複数の発話文を発話コンテンツとして登録する発話コンテンツ登録部、各々が画像データと発話文データとを含む複数のデータセットから、同時発生確率の高い単語の特徴ベクトルをN次元に圧縮したトピックパラメータを登録するトピックパラメータ登録部、発話コンテンツ中の各発話文の特徴ベクトルをN次元に圧縮した発話用インデックスを登録する発話用インデックス登録部、入力された画像から抽出した単語の特徴ベクトルをN次元に圧縮した入力画像ベクトルを生成する入力画像ベクトル生成部、発話用インデックスと入力画像ベクトルとの類似度に応じて発話コンテンツから発話文を選択する選択部、および選択された発話文を出力する発話部を備える、コミュニケーションロボットである。
第1の発明によれば、発話用インデックスと入力画像ベクトルとの類似度に応じて発話コンテンツの中から発話文を選択して発話するので、入力画像に適合した発話文を出力することができる。
第2の発明は、第1の発明に従属し、カメラをさらに備え、画像はカメラが撮影した画像である、コミュニケーションロボットである。
第2の発明によれば、入力画像としてカメラでリアルタイムに撮影したカメラ画像を用いるので、人と共通の風景を見ながらその風景に適した発話を行うことができる。
第3の発明は、第1または第2の発明に従属し、発話用インデックス登録部および入力画像ベクトル生成部は、それぞれトピックパラメータを用いてN次元圧縮を行う、コミュニケーションロボットである。
第3の発明では、同じトピックパラメータを用いるので、発話用インデックスや入力画像ベクトルの計算が簡単に行える。
第4の発明は、各々が画像データと発話文データとを含む複数のデータセットから、同時発生確率の高い単語の特徴ベクトルをN次元に圧縮したトピックパラメータおよび発話コンテンツ中の各発話文の特徴ベクトルをN次元に圧縮した発話用インデックスを利用して、発話コンテンツから発話文を選択して発話する、コミュニケーションロボットのコンピュータが入力された画像から抽出した単語の特徴ベクトルをトピックパラメータを用いてN次元に圧縮した入力画像ベクトルを生成する入力画像ベクトル生成ステップ、発話用インデックスと入力画像ベクトルとの類似度に応じて発話コンテンツから発話文を選択する選択ステップ、および選択された発話文を出力する発話ステップを実行する、コミュニケーションロボットの制御方法である。
第5の発明は、各々が画像データと発話文データとを含む複数のデータセットから、同時発生確率の高い単語の特徴ベクトルをN次元に圧縮したトピックパラメータおよび発話コンテンツ中の各発話文の特徴ベクトルをN次元に圧縮した発話用インデックスを利用して、発話コンテンツから発話文を選択して発話する、コミュニケーションロボットのコンピュータによって実行される制御プログラムであって、制御プログラムは、コンピュータを入力された画像から抽出した単語の特徴ベクトルをトピックパラメータを用いてN次元に圧縮した入力画像ベクトルを生成する入力画像ベクトル生成部、発話用インデックスと入力画像ベクトルとの類似度に応じて発話コンテンツから発話文を選択する選択部、および選択された発話文を出力する発話部として機能させる、コミュニケーションロボットの制御プログラム。
第4または第5の発明でも第1の発明と同様の効果が期待できる。
この発明によれば、画像から連想可能な発話を選択することができるので、たとえば風景をカメラで撮影した画像を用いるとした場合、風景に適合した自然な会話を実現することができる。そのため、この発明のコミュニケーションロボットは、散歩などの歩行(同行)パートナとしてより適したロボットである。
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
図1はこの発明の一実施例のコミュニケーションロボットの外観の一例を示す図解図である。 図2は図1実施例のコミュニケーションロボットの電気的な構成を示すブロック図である。 図3は図2に示すメモリのメモリマップの一例を示す図解図である。 図4はデータセットの一例を示す図解図である。 図5は図1実施例におけるトピックパラメータを作成する動作の一例を示すフロー図である。 図6は図1実施例における発話用インデックスを作成する動作の一例を示すフロー図である。 図7は図1実施例における発話動作の一例を示すフロー図である。 図8は図7実施例における次元圧縮すなわち連想情報の抽出の一例を示すフロー図である。 図9は図7の発話動作における発話コンテンツの計算方法の一例を示す図解図である。 図10はトピックベクトルを例示する図解図である。 図11は図7実施例における次元圧縮動作の他の例を示すフロー図である。 図12は図7実施例における発話文の選択を示すグラフである。 図13は図12のグラフに示す4つの画像を示す図解図である。
図1を参照して、この実施例のコミュニケーションロボット(以下、単に「ロボット」ということがある。)10は、一例として、人の肩に載せられて、その人と一緒に移動することができるロボットである。人の肩に載せるために、ロボット10は彎曲した支持板12を含み、この支持板12の彎曲した部分が肩(図示せず)の上に載せられる。
支持板12の前端上面には、胴体に相当する支持部14が取り付けられ、この支持部14の上方には首に相当する支柱18を介して、顔(頭)に相当するハウジング16が、左右に旋回可能に、設けられる。
ハウジング16には、人の顔の口に相当する位置にスピーカ20が内蔵されていて、眼に相当する位置に、カメラ22が内蔵されている。ただし、スピーカ20を胴体すなわち支持部14内に設けたり、カメラ22を口に相当する位置に設けたりする、任意の変更が可能である。
スピーカ20はこのロボット10を載せて移動している人(図示せず)に対して発話するために用いられ、カメラ22は、人とともに移動しているときに風景を撮影して話題にするために用いられる。
なお、カメラ22で撮影するときにはロボット10の顔は進行方向に向けられるが、スピーカ20から発話するときには、上述の支柱の旋回機能を利用して、顔を人(ロボット10を肩に載せている人)に向けるようにしてもよい。
また、カメラ22は両眼に設けられる両眼カメラであってもよいが、実施例では単眼カメラを用いる。この場合なら、カメラ22は1つでよい。
ロボット10は、図2に示すように、ロボット10の全体制御を司るCPU24を備える。CPU24は、バス26を通して通信モジュール28に接続され、したがって、CPU24は、必要なとき、通信モジュール28を介して、ネットワーク(図示せず)に通信可能に接続される。
CPU24はまた、バス26を通してメモリ30にアクセスでき、このメモリ30に設定されているプログラムやデータ(図3:後述)に従って、人と対話することができる。そのために、CPU24は発話データを音声インタフェース32を通して、スピーカ20に音声信号として与える。CPU24はまた、カメラ22からの画像データを、カメラインタフェース34を通して取得する。
ロボット10のメモリ30は、たとえばRAMやHDDであり、図3に示すように、プログラム領域36およびデータ領域38を含む。
プログラム領域36には、トピックパラメータ作成プログラム36aが記憶される。ここで、たとえば図4に示すような、画像とその画像に応じた発話文を大量に集めたデータセットをコーパスと呼び、トピックパラメータは、そのコーパスから同時発生確率の高い構成要素(単語)をまとめた(連想構造を抽出した)ベクトルの集合である。プログラム領域36には、さらに、発話用インデックス作成プログラム36bおよび会話プログラム36cが記憶される。発話用インデックスとは、記憶領域38aから発話すべき発話コンテンツを読み出すための、検索用ベクトルの集合である。会話プログラム36cは、音声合成プログラムを含み、CPU24は、発話のために、データ領域38の記憶領域38aに記憶されている発話コンテンツデータを読み出して、発話データを音声インタフェース32に出力する。
プログラム領域36にはさらに、画像解析プログラム36dが予め設定されている。この画像解析プログラム36dは、たとえばGoogle Cloud Vision API(商品名)のような視覚モジュールであり、この画像解析プログラム36bは、取り込んだ画像からその画像の構成要素を単語として抽出する。
データ領域38は、上述の発話コンテンツを記憶している領域38aを含み、さらに、記憶領域38b‐38gを含む。記憶領域38bには、トピックベクトルコーパス作成のためのデータセットすなわちコーパスが予め大量に記憶される。
データセットとは、前述したように、風景の画像と、その画像から想起できる発話文のセットのことである。たとえば図4のデータセットでは、左側に「木や芝生のある庭」の画像があり、それとの関連で「Have you ever gone a camp?(キャンプに行ったことがありますか?)」という発話文が右側にセットされている。データセットはこのような画像と発話文とのセットであり、上述の記憶領域38bに記憶される。
ただし、データセットは必要なトピックパラメータを作成した後には記憶領域38bから削除されてもよい。
さらに、データセットは、ロボット10のメモリ30にではなく、別のデータベース(図示せず)に記憶しておいて、トピックパラメータ作成時にのみそのデータベースから読み出すようにしてもよい。
記憶領域38cには、このようなデータセットから上述のトピックパラメータ作成プログラム36aでトピックパラメータを作成する際に除外する、発話文の単語および画像の構成要素(単語)のリストが予め記憶される。これらの単語を除外する理由は、それらの単語が一般的であり特徴的ではないので、コーパス作成処理の計算負荷を可及的軽減するために、ストップワードとして除外するのである。発話文でいえば、たとえば「a」、「an」のような不定冠詞「the」のような定冠詞、「I」、「is」などを例示できる。これらの単語は、文章や文書の性質に拘わらず共通して現れる単語であり、これらの単語の数を数えても連想の類似性を計算するのに役立つわけではなく、計算の結果をゆがませるだけである。このような除外単語として、画像の構成要素でいえば、「floor(床)」、「property(属性)」などが挙げられる。
データ領域38の記憶領域38dには、上述のトピックパラメータ作成プログラム36aで作成したトピックパラメータが記憶される。記憶領域38eには、上述の発話用インデックス作成プログラム36bで作成した発話用インデックスが記憶される。
データ領域38の記憶領域38fは、カメラ22から入力した画像の画像データを一時的に記憶し、記憶領域38gは、前述の画像解析プログラム36bで抽出した構成要素を一時的に記憶する。
図5を参照して、まず、トピックパラメータ作成プログラム36aによるトピックパラメータ作成処理(連想情報の抽出処理)について説明する。なお、発明者等の実験では上述のように言語として英語を用いたので、以下の説明でも英語を用いる場合があることを予め指摘しておく。
最初のステップS1では、抽出する連想情報の数Nを読み込む。この連想情報数Nは、圧縮次元数であり、今回の実施例では50‐100程度に設定される。ただし、この次元数Nは用意するデータセットの量に応じて適した値が変わるので、もっと小さい値の場合もあり、もっと大きい場合もある。つまり、データセットの数(コーパスの大きさ)と圧縮結果などから適した次元数を決めればよい。
次のステップS3では、発話文における除外リストおよび画像の構成要素における除外リストに設定されている除外単語(ストップワード)を、記憶領域38cから読み込む。
ステップS5では、先に図4で説明したようなデータセットを記憶領域38bから読み込む。
そして、ステップS7すなわちステップS9‐S13において、データセット中の全ての基本セット(1つのデータセット)Eiについて、特徴ベクトルViを作成する。
詳しく説明すると、ステップS9において、基本セットEiのための特徴ベクトルViを初期化する。ステップS11において、基本セットEiの発話文を文節に区切り、除外リスト(記憶領域38c)にない単語をその特徴ベクトルに追加する。ステップS13では、画像解析プログラム36dによって、基本セットEiの画像の画像要素を抽出し、除外リストにない単語を同じ特徴ベクトルViに追加する。
図4の基本セットを参照して説明すると、ステップS11では、発話文「Have you ever gone to a camp?」から、「have」、「you」、「ever」、「gone」、「to」、「a」、「camp(キャンプ)」が抜き出されるが、「you」、「to」、「a」が除外単語なので、図4の基本セットEiの発話文からは単語「have」、「ever」、「gone」、「camp」が特徴ベクトルViに加えられる。他方、画像解析プログラム36dで基本セットEiの画像を解析すると、「property」、「lawn(芝生)」、「cottage(小屋)」、「pasture(牧草、牧草地)」、「area(領域、場所)」、「farm(農場)」が抽出されるが、「property」が除外単語なので、図4の基本セットEiの画像からは、単語「lawn」、「cottage」、「pasture」、「area」、「farm」が特徴ベクトルViに追加される。
このようなステップS7での特徴ベクトル作成処理が、記憶領域38bに記憶されているデータセット(コーパス)中の全ての基本セットに対して実行される。そうすると、基本セットの数に相当する非常に多数の次元の特徴ベクトルがこの時点で作成される。
そして、ステップS15で、CPU24は、全ての基本セットに対するすべての特徴ベクトルから、同時発生確率(共起確率)の高い構成要素をまとめて、すなわち連想構造を抽出することによって、N次元に圧縮するためのトピックパラメータP_topicを抽出する。トピックパラメータP_topicは、画像と同時に発話し易い単語の組み合わせパターンすなわちトピックベクトルの集合である。
ただし、このステップS15では、同時発生確率の高い要素をまとめるために、特徴ベクトルの集合に対して、LDAや主成分分析を適用する。
LDA(Latent Dirichlet Allocation:潜在的ディリクレ配分法)は、一般的には、文書中の単語の「トピック」を確率的に求める言語モデルであるといわれていて、各単語が「隠れトピック」(話題、カテゴリ)から生成されていると想定して、そのトピックを文書集合から教師なしで推定する。簡単に言えば、それぞれの単語は潜在的なトピックを持ち、同じトピックを持つ単語は同じ文章に出現しやすい、という事実に着目したものである。詳しくは、[Blei+ 2003]に示される。
LDAを使用するのは次元圧縮のためである。単語ベクトルの次元は非常に大きいが、はるかに小さな次元のベクトルで情報を表現することができる。これは、単語の共起に偏りがあるためである。つまり、いくつかの用語が他の用語より頻繁に共起する。たとえば、「海」と「水泳」はしばしば一緒に現れることが予想される。LDAは、話題として一緒に共起することが多い各用語群を表し、高次元の単語ベクトルを低次元のトピックベクトルに変換する。
LDAでは、文書内に存在する単語の発生確率を、ディリクレ分布でモデル化する。ディリクレ分布では、K個の潜在的なトピック(=圧縮したい次元数)が事前に与えられている。各トピックは、θとφという、2種類の確率パラメータから構成される。θは、全文書の中でそのトピックが発生する確率である。たとえば、全トピックの中で、店舗に関連する話題の発生確率が高く、車に関連する話題の発生確率が低い場合、店舗(shop)に関連するトピック(θ_shop)には高い値が与えられ、駐車場(parking)に関連するトピック(θ_parking)には低いθが与えられる。理解を助けるため、便宜的に、店舗(shop)や車(car)という人間に分かりやすいラベルを与えている。実際のLDAでは、人間がラベルを与える必要はなく、トピックの番号が与えられる。φは、そのトピックで使用される単語の発生確率を示したものであり、ベクトル(トピックベクトル)φ_k={π_k,1、π_k,2 ...、π_k,v}で表現される。ただし、kはトピックの番号を意味し、π_k,iはトピックに含まれるi番目の単語の発生確率を示す。たとえば、駐車場に関連するベクトル(φ_parking)において、「車(car)」という単語が高い確率で使われる場合、「車」に対応するπ_parking,carには高い値が設定される。結果、LDAでは、同じトピックを構成する主要な単語集合は、(そのトピックにおいて)高い共起確率を持つことになり、ともに高いπ_k,iが与えられる。
LDAは、事前に与えられたトピック数Kに基づき、コーパスCに最も適合するよう、全てのトピックk(k = 1、 2、 …、K)に対する単語分布φkおよびトピック分布θdを推定する。今回は、パラメータ推定を行う方法を行う方法として、オンライン変分ベイズアルゴリズムを使用した。LDAの詳細は、上述の文献(Blei+ 2003)に見出すことができるが、LDAを実装するために、発明者等は、Gensim (R. Rehurek and P. Sojka, Software Framework for Topic Modelling with Large Corpora, Proceedings of the LREC 2010 Workshop on New Challenges for NLP Frameworks, pp. 45-50, 2010)というライブラリを使用した。
LDAによって得られたトピックベクトルを基底ベクトルと使用することで、各文書をK次元のトピックベクトル空間上へ射影可能となる。トピックベクトル空間では、各トピックと、文書の関連度合が、ベクトルの要素として表現される。たとえば、ある文書で、駐車場に関するトピックと関連性が高ければ、φ_parkingに対応する値が大きくなる。一方、店舗に関するトピックとの関連性が低ければ、φ_shopに対応する値が小さくなる。このようにトピックベクトル空間では、各文書のベクトル表現は各トピックの混合比率となる。
このようにして、図5のステップS15で、LDAを利用して、次元圧縮用のトピックパラメータP_topicを抽出する。
このステップS7を各データセットEiについて繰り返し実行することによって、全てのデータセットに対してトピックパラメータP_topicが登録される。
次に、図6に示すフロー図を参照して、発話用インデックス作成プログラム36bに従った処理を説明する。ステップS21で、まず、使用する発話コンテンツをデータ領域の記憶領域38aからすべて読み込む。この発話文は、先のデータセットとは別に、たとえばキー入力や音声入力によって、予め作成して登録しておく。
そして、次のステップS23で、発話文の除外単語をデータ領域38の記憶領域38cから読み込む。
続くステップS25すなわちステップS27‐S33で、全ての発話文Uiに関して、発話用インデックスV_index,iを作成する。
詳しくいうと、ステップS27で、発話文Uiのための特徴ベクトルViを初期化し、ステップS29で、発話文Uiを文節毎に区切り、除外単語ではない単語を特徴ベクトルViに加える。
次のステップS31で、トピックパラメータP_topic(図5:ステップS15)を使用して、特徴ベクトルViをN次元に圧縮したベクトルV_index,iを生成する。これは、特徴ベクトルViの次元をトピック空間へ射影したものである。
なお、このステップS31での次元圧縮には、上述のLDAの他、LSA(Latent Semantic Analysis:潜在意味解析)、主成分分析などの手法が利用可能である。
ステップS33で、ステップS31で作成したベクトルV_index,iを、発話文Uiの発話用インデックスとして、データ領域38の記憶領域38eに登録する。
このステップS25を各発話文Uiについて繰り返し実行することによって、発話コンテンツの全ての発話文Uに対して発話用インデックスV_index,iが登録される。
次に実際にカメラ22で風景を撮影したときの発話動作を、図7を用いて説明する。この図7の動作を開始する前提として、図5のトピックパラメータPおよび図6の発話用インデックスVがそれぞれデータ領域38に登録されている。つまり、データ領域38の記憶領域38dがトピックパラメータ登録部として機能し、記憶領域38eが発話用インデックス登録部として機能
図1に示すロボット10を、肩に装着して人がたとえば散歩に出る。ステップS41では、CPU24は、カメラ22からの画像データをカメラインタフェース34を通して取得する。そして、ステップS43で、プログラム領域36の画像解析プログラム36d(たとえば、Google Cloud Vision:https//cloud.google.com/vision/)を用いて、その画像データからすべての構成要素を抽出して、特徴ベクトルV_sightを生成する。
ステップS45では、そのようにして生成した特徴ベクトルV_sightの要素数が「1」以上かどうか、つまり、そのときの画像データが解析するに値する画像のものかどうか、判断する。もし、カメラ22の故障や不作動によって、ちゃんとした画像がない場合、たとえば全黒画像であったり、ピンぼけ画像であったりする場合、そのような画像から連想する発話コンテンツを選択することはできないからである。
ステップS45で“NO”なら、ステップS41に戻って別の画像データを取り込む。
ステップS45で“YES”を判断したとき、すなわち、画像の構成要素の特徴ベクトルV_sightの要素数が1以上あると判断したとき、次のステップS47で、先のトピックパラメータP_topicを用いて、特徴ベクトルV_sightをN次元に圧縮したベクトルV_topic,sightを生成する。このステップS47でも、LDA、LSA、あるいは主成分分析などの手法が利用可能である。このベクトルV_topic,sightは、そのとき入力された(たとえばカメラから)画像の構成要素の特徴ベクトルをN次元に圧縮したベクトルであるので、便宜上、入力画像特徴ベクトルと呼ぶことにする。
図8に、参考のために、LSAによるベクトルV_topic,sightの生成について示す。
図8のLSAでは、ステップS61で、N個のトピックベクトルV_topicを読み込む。LSAでは、同時に発生する単語(構成要素)をN個のトピックベクトルV_topicとして表現される。各トピックベクトルV_topicの要素は、同時発生確率(共起確率)が高い組み合わせほど高い値を持つ。
LDAはコーパス中の単語の出現確率の偏りをトピックとして扱い、図9の表に示すような各トピックにおける各単語の出現確率を算出する。ステップS61で新たに取得する画像は、LDAによってラベル(構成要素:単語)から各トピックに属している確率が計算され、それがトピックベクトルとなる。
トピックベクトルV_topicについて説明すると、図9の表は、買い物関連(shop-like)、車関連(car-like)、自然関連(nature-like)、と名付けた3つのトピックの単語分布φ_kの例を示している。この表でいえば、画像から抽出した構成要素がたとえば「property」、「lawn」、「cottage」、「pasture」、「area」、「farm」、「have」、「you」、「ever」、「gone」、「to」、「camp」である場合を想定する。
この場合、表に示す「φ_shop-like」では、発話文Uiに含まれる単語「pedestrian」、「shopping」、「road」、「city」、「crowd」、「street」、「shopping-mall」などの単語について、それぞれ「.062」、「.053」、「.045」、「.042」、「.040」、「.037」、「.030」などの確率が計算される。
表に示す「φ_car-like」、「φ_nature-like」についても同様である。
図10(a)に示す画像についてさらに説明すると、この画像からは図10(b)に示すラベル(単語)が抽出できる。その結果、図10(c)に示すトピックベクトルが「φ_shop-like」、「φ_car-like」、「φ_nature-like」について、それぞれ、「0.52」、「0.22」、「0.02」となる。画像が繁華街を撮影したものであるので、この「φ_shop-like」のトピックベクトルV_topicが画像を最もよく表現したものということができる。
次のステップS67すなわちステップS69‐S71を実行して、出力ベクトルV_out、この場合には、圧縮ベクトルV_topic,sightを出力する。
詳しく説明すると、N個のトピックベクトV_topic,iに対して、まずステップS69で、トピックベクトルV_topicと、特徴ベクトルV_inの内積innerを計算し、ステップS71で、出力ベクトルV_outのi番目の要素にこのinnerを設定する。各トピックベクトルV_topic,iに対してこれらのステップS69およびS71を繰り返し実行することによって、ステップS73で、次元圧縮された特徴ベクトルV_out、すなわち、次元圧縮ベクトルV_topic,sightを出力して、図7のステップS49にリターンする。
図7のステップS47をLDAで実施する場合、図11のステップS81において、図5のステップS15で作成したトピックパラメータP_topicを読み込む。LDAでは、各トピックは、単語の同時出現頻度を示す確率分布として表現される。また、各特徴ベクトルはこのトピック毎の隔離分布関数の組み合わせ(比率による混合)として表現する。パラメータの算出時には、データセットからこの確率分布が次元圧縮用のパラメータとして抽出される。
ステップS83で、次元圧縮の対象となる特徴ベクトルV_in、この場合には構成要素の特徴ベクトルV_sightを読み込む。次のステップS85で、出力ベクトルV_out、この場合には、圧縮ベクトルV_topic,sightを初期化する。
そして、ステップS89で、V_outすなわちV_topic,sightを出力し、図7のステップS49にリターンする。
図7に戻って、ステップS49では、全ての発話文Uiに関して、その発話用インデックスV_index(図6)と、ステップS47で生成したベクトルV_topic,sightの類似度Sim_sight,iを計算する。この類似度の計算としては、コサイン類似度や内積等が利用可能であるが、実施例ではコサイン類似度を使用した。
そして、全ての発話文Uiの中で、類似度Sim_sight,iが最大となる発話文Uiを選択し、ステップS53で、その発話文をスピーカ20から出力させる。このときの発話文は、ステップS43データ抽出したカメラ画像の構成要素と最も高い類似度を持つ(ステップS51)のであるから、カメラ画像と最も適合する発話文であるといえる。
図12のグラフにおけるU1、U2はロボット10がデータ領域38に予め設定されている発話コンテンツであり、P1‐P4は図13に示す画像であり、これらをたとえばLDAと呼ばれるトピックモデルを用いて、図9で示すように単語の集合をラベル化したものとの類似度を計算することが可能となり、類似度の計算にはコサイン類似度を用いる。
図12および図13の実施例でいえば、画像P1、P3のように車や駐車場が認識できる風景画像に対しては、より類似度の大きい(コサイン類似度は2つのベクトルが作る角度によって計算されるので、図12のグラフ上で近い点になる。)発話文U1(車のトピック)が選択され、画像P2、P4のように店舗や人混みが認識できる画像に対しては発話文U2(買い物のトピック)を選択する。
上述の実施例によれば、画像と発話文のデータセットからコーパス(N次元の特徴ベクトル)を登録しておき、他方別に入力した発話コンテンツを検索するためのN次元の発話用インデックスを登録しておくことで、発話コンテンツの中から、入力された画像から連想できる発話文を選択することができ、たとえばカメラがリアルタイムに撮影した風景に適合した自然な対話を実現することができる。このような対話ロボットは、たとえば人の散歩のパートナとして適したものとなる。
さらに、発話コンテンツは画像とは別にメモリ(データベース)に登録しておけばよいだけなので、発話コンテンツを場所や風景とは独立して登録でき、さらに場所や風景との関連付けを手動で行わなくてもよいので、人と対話するロボットの開発の効率が向上する。
なお、上述の実施例では、人の肩に装着された結果人と同行するロボット10を用いて説明した。しかしながら、ロボット10としては、車輪移動できるロボット、2足歩行できるロボットなど、自律的にもしくは遠隔操作によって移動できるロボットであってもよい。また、遠隔操作はロボットと同道する人が実行してもよいし、他の人がモニタを見ながら実行してもよい。
肩に装着する場合には、ロボットとして移動機構を持たなくてもよいので、安価かつ簡単な構造で実現できる。しかしながら、特に高齢者などでは肩に装着して歩行する体力やバランス感覚のない人もいるので、そのような人には、人と並んで移動するようなロボットが好適する。
さらに、上述の実施例では、発話コンテンツは、ロボット10のメモリ30に登録しておくこととして説明した。しかしながら、この発話コンテンツのデータは、別のデータベース(図示せず)に登録しておくようにしてもよい。この場合、発話用インデックスの作成処理は、その別のデータベースから発話文を読み出して、ロボット10のCPU24とは別のコンピュータを用いて、予め計算して登録しておくようにしてもよい。
さらに、この場合、発話文を発話コンテンツから選択して読み出す必要があれば、必要の都度、通信モジュール28を通してそのようなデータベースにアクセスしてそこから読み出すようにしてもよい。このとき、発話用インデックスについてもそのデータベースに併せて登録ようにしてもよい。
10 …コミュニケーションロボット
20 …スピーカ
22 …カメラ
24 …CPU
30 …メモリ
36 …プログラム領域
38 …データ領域

Claims (5)

  1. 複数の発話文を発話コンテンツとして登録する発話コンテンツ登録部、
    各々が画像データと発話文データとを含む複数のデータセットから、同時発生確率の高い単語の特徴ベクトルをN次元に圧縮したトピックラメータを登録するトピックパラメータ登録部、
    前記発話コンテンツ中の各発話文の特徴ベクトルをN次元に圧縮した発話用インデックスを登録する発話用インデックス登録部、
    入力された画像から抽出した単語の特徴ベクトルをN次元に圧縮した入力画像ベクトルを生成する入力画像ベクトル生成部、
    前記発話用インデックスと前記入力画像ベクトルとの類似度に応じて前記発話コンテンツから発話文を選択する選択部、および
    前記選択された発話文を出力する発話部を備える、コミュニケーションロボット。
  2. カメラをさらに備え、前記画像は前記カメラが撮影した画像である、請求項1記載のコミュニケーションロボット。
  3. 前記発話用インデックス登録部および入力画像ベクトル生成部は、それぞれ前記トピックパラメータを用いてN次元圧縮を行う、請求項1または2記載のコミュニケーションロボット。
  4. 各々が画像データと発話文データとを含む複数のデータセットから、同時発生確率の高い単語の特徴ベクトルをN次元に圧縮したトピックパラメータおよび発話コンテンツ中の各発話文の特徴ベクトルをN次元に圧縮した発話用インデックスを利用して、発話コンテンツから発話文を選択して発話する、コミュニケーションロボットのコンピュータが、
    入力された画像から抽出した単語の特徴ベクトルを前記トピックパラメータを用いてN次元に圧縮した入力画像ベクトルを生成する入力画像ベクトル生成ステップ、
    前記発話用インデックスと前記入力画像ベクトルとの類似度に応じて前記発話コンテンツから発話文を選択する選択ステップ、および
    前記選択された発話文を出力する発話ステップを実行する、コミュニケーションロボットの制御方法。
  5. 各々が画像データと発話文データとを含む複数のデータセットから、同時発生確率の高い単語の特徴ベクトルをN次元に圧縮したトピックパラメータおよび発話コンテンツ中の各発話文の特徴ベクトルをN次元に圧縮した発話用インデックスを利用して、発話コンテンツから発話文を選択して発話する、コミュニケーションロボットのコンピュータによって実行される制御プログラムであって、
    前記制御プログラムは、前記コンピュータを
    入力された画像から抽出した単語の特徴ベクトルを前記トピックパラメータを用いてN次元に圧縮した入力画像ベクトルを生成する入力画像ベクトル生成部、
    前記発話用インデックスと前記入力画像ベクトルとの類似度に応じて前記発話コンテンツから発話文を選択する選択部、および
    前記選択された発話文を出力する発話部
    として機能させる、コミュニケーションロボットの制御プログラム。
JP2017040189A 2017-03-03 2017-03-03 コミュニケーションロボット、制御方法および制御プログラム Active JP6798698B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017040189A JP6798698B2 (ja) 2017-03-03 2017-03-03 コミュニケーションロボット、制御方法および制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017040189A JP6798698B2 (ja) 2017-03-03 2017-03-03 コミュニケーションロボット、制御方法および制御プログラム

Publications (2)

Publication Number Publication Date
JP2018147145A true JP2018147145A (ja) 2018-09-20
JP6798698B2 JP6798698B2 (ja) 2020-12-09

Family

ID=63591287

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017040189A Active JP6798698B2 (ja) 2017-03-03 2017-03-03 コミュニケーションロボット、制御方法および制御プログラム

Country Status (1)

Country Link
JP (1) JP6798698B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001188780A (ja) * 1999-12-28 2001-07-10 Sony Corp 情報処理装置および方法、並びに記録媒体
JP2004193932A (ja) * 2002-12-11 2004-07-08 Matsushita Electric Ind Co Ltd ロボットと、それを首周辺部に固定する機構を備えたネックコミュニケーション装置
CN101187990A (zh) * 2007-12-14 2008-05-28 华南理工大学 一种会话机器人系统
JP2009037050A (ja) * 2007-08-02 2009-02-19 Toyota Motor Corp 対話装置と対話用プログラム
JP2015148842A (ja) * 2014-02-04 2015-08-20 株式会社東芝 対話装置、方法およびプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001188780A (ja) * 1999-12-28 2001-07-10 Sony Corp 情報処理装置および方法、並びに記録媒体
JP2004193932A (ja) * 2002-12-11 2004-07-08 Matsushita Electric Ind Co Ltd ロボットと、それを首周辺部に固定する機構を備えたネックコミュニケーション装置
JP2009037050A (ja) * 2007-08-02 2009-02-19 Toyota Motor Corp 対話装置と対話用プログラム
CN101187990A (zh) * 2007-12-14 2008-05-28 华南理工大学 一种会话机器人系统
JP2015148842A (ja) * 2014-02-04 2015-08-20 株式会社東芝 対話装置、方法およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
石黒 勝彦、外1名: "パターン認識研究者のためのトピックモデリング概観", 電子情報通信学会技術研究報告, vol. 第115巻,第388号, JPN6017041653, 14 December 2015 (2015-12-14), JP, pages 13 - 24, ISSN: 0004364717 *

Also Published As

Publication number Publication date
JP6798698B2 (ja) 2020-12-09

Similar Documents

Publication Publication Date Title
Dube et al. SegMap: Segment-based mapping and localization using data-driven descriptors
Kanade et al. First-person vision
Burger et al. Two-handed gesture recognition and fusion with speech to command a robot
Aditya et al. From images to sentences through scene description graphs using commonsense reasoning and knowledge
Wazalwar et al. Interpretation of sign language into English using NLP techniques
US20220292752A1 (en) Method and device for synthesizing motion sequence of virtual object
CN112738556B (zh) 视频处理方法及装置
Tapu et al. A computer vision-based perception system for visually impaired
Camgöz et al. Sign language recognition for assisting the deaf in hospitals
Zraqou et al. Real-time objects recognition approach for assisting blind people
Sharma et al. Visual speech recognition using optical flow and hidden Markov model
Annapoorani et al. Blind-Sight: Object Detection with Voice Feedback
CN108305629B (zh) 一种场景学习内容获取方法、装置、学习设备及存储介质
Dewan et al. A deep learning pipeline for Indian dance style classification
JP6798698B2 (ja) コミュニケーションロボット、制御方法および制御プログラム
Ziaei et al. Prof-Life-Log: Audio Environment Detection for Naturalistic Audio Streams.
Choe et al. Semantic video event search for surveillance video
Mustafa et al. Intelligent Glasses for Visually Impaired People
Shirkey et al. An image mining system for gender classification & age prediction based on facial features
Mocanu et al. An obstacle categorization system for visually impaired people
Khalifa et al. Hand motion modeling for psychology analysis in job interview using optical flow-history motion image: OF-HMI
Roy Learning from multimodal observations
Subramanian et al. Autonomous Obstacle and Object Detection for Visually Impaired With Audio Aid
Emanuel et al. Feasibility study of scripting Indonesian traditional dance motion in XML format
Shrawankar et al. Framing sentences from sign language symbols using NLP

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201013

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201022

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: 20201110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201112

R150 Certificate of patent or registration of utility model

Ref document number: 6798698

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250