(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025155596
(43)【公開日】2025-10-14
(54)【発明の名称】ロボット制御装置及びその制御方法
(51)【国際特許分類】
G06F 16/33 20250101AFI20251002BHJP
【FI】
G06F16/33
【審査請求】未請求
【請求項の数】18
【出願形態】OL
(21)【出願番号】P 2024172451
(22)【出願日】2024-10-01
(31)【優先権主張番号】10-2024-0043456
(32)【優先日】2024-03-29
(33)【優先権主張国・地域又は機関】KR
(71)【出願人】
【識別番号】591251636
【氏名又は名称】現代自動車株式会社
【氏名又は名称原語表記】HYUNDAI MOTOR COMPANY
【住所又は居所原語表記】12, Heolleung-ro, Seocho-gu, Seoul, Republic of Korea
(71)【出願人】
【識別番号】500518050
【氏名又は名称】起亞株式会社
【氏名又は名称原語表記】KIA CORPORATION
【住所又は居所原語表記】12, Heolleung-ro, Seocho-gu, Seoul, Republic of Korea
(74)【代理人】
【識別番号】110000051
【氏名又は名称】弁理士法人共生国際特許事務所
(72)【発明者】
【氏名】金 寶 攬
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA01
5B175GB03
5B175HA01
5B175HB03
(57)【要約】
【課題】使用者に個人化された案内を提供するロボット制御装置及びその制御方法を提供する。
【解決手段】本発明のロボット制御装置は、コンピュータで実行可能な命令語を格納したメモリと、メモリにアクセスして命令語を実行する少なくとも1つ以上のプロセッサと、を備え、少なくとも1つ以上のプロセッサは、使用者の要求事項が含まれる入力文章を識別したことに基づいて、入力文章から入力文章によるサービスを使用者に提供するための特徴ベクトルを獲得し、特徴ベクトル及び予め決定されたデータベースに格納された候補ベクトルに基づいて候補ベクトルのスコアを獲得し、候補ベクトルのスコアを介して対象ベクトルが決定されたことに基づいて、対象ベクトルにペアリングされた入力文章によるサービスである対象サービスを提供する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
コンピュータで実行可能な命令語(computer-executable instructions)を格納したメモリと、
前記メモリにアクセス(access)して前記命令語を実行する少なくとも1つ以上のプロセッサと、を備え、
前記少なくとも1つ以上のプロセッサは、
使用者の要求事項が含まれる入力文章を識別したことに基づいて、前記入力文章から前記入力文章によるサービスを前記使用者に提供するための特徴ベクトル(feature vector)を獲得し、
前記特徴ベクトル及び予め決定された(predetermined)データベースに格納された候補ベクトル(candidate vector)に基づいて前記候補ベクトルのスコアを獲得し、
前記候補ベクトルのスコアを介して対象ベクトル(target vector)が決定されたことに基づいて、前記対象ベクトルにペアリングされた(paired)前記入力文章によるサービスである対象サービスを提供することを特徴とするロボット制御装置。
【請求項2】
前記少なくとも1つ以上のプロセッサは、
前記入力文章の言語(language)が予め決定された対象言語ではないことに基づいて、前記入力文章の言語を前記対象言語に翻訳することを介して前記入力文章の言語の翻訳を遂行し、
前記入力文章の不用語(stopword)の除去を遂行することにより前記入力文章から少なくとも1つ以上のキーワードを獲得し、
前記少なくとも1つ以上のキーワード及び類似語マッピング(synonyms mapping)に関する第1サービステーブルに基づいて前記第1サービステーブルから前記入力文章の対象キーワードを獲得することを特徴とする請求項1に記載のロボット制御装置。
【請求項3】
前記少なくとも1つ以上のプロセッサは、
サービスマッピング(service mapping)に関する第2サービステーブルに基づいて前記対象キーワードに対応する案内文章を獲得し、
前記案内文章を文章の特徴を抽出するように学習された特徴抽出モデルに適用して前記特徴ベクトルを獲得することを特徴とする請求項2に記載のロボット制御装置。
【請求項4】
前記少なくとも1つ以上のプロセッサは、
少なくとも1つ以上の文章を含む文書を含むコーパス(corpus)から単語トークン化(word tokenization)を遂行してトークン(token)を獲得し、
前記コーパスに基づいて前記トークンが前記コーパスに含まれる頻度(term frequency)に関する前記トークンの第1頻度値を決定し、
前記コーパスに基づいて前記トークンが前記文書に含まれる頻度(inverse document frequency)に関する前記トークンの第2頻度値を決定し、
前記第1頻度値及び前記第2頻度値に基づいて前記トークンの対象加重値を決定し、
前記トークンの対象加重値に基づいて前記トークンが含まれる文章の前記候補ベクトルを決定することを特徴とする請求項1に記載のロボット制御装置。
【請求項5】
前記少なくとも1つ以上のプロセッサは、前記特徴ベクトル及び前記候補ベクトルをユークリッドスカラー積(Euclidean scalar product)に基づいて類似度に関するスコアを抽出するように学習されたスコア算出モデルに適用して前記候補ベクトルのスコアを獲得することを特徴とする請求項1に記載のロボット制御装置。
【請求項6】
前記少なくとも1つ以上のプロセッサは、
前記候補ベクトルが格納された前記データベースから少なくとも1つ以上のベクトルを識別し、
前記特徴ベクトル及び前記少なくとも1つ以上のベクトルのそれぞれに基づいて前記少なくとも1つ以上のベクトルのそれぞれのスコアを獲得し、
前記少なくとも1つ以上のベクトルのそれぞれのスコア及び予め決定されたスコアに基づいて前記対象ベクトルを決定することを特徴とする請求項1に記載のロボット制御装置。
【請求項7】
前記少なくとも1つ以上のプロセッサは、
前記少なくとも1つ以上のベクトルのそれぞれのスコアと予め決定されたスコアとの比較を介して、前記予め決定されたスコアを超過した前記対象ベクトルを含む出力ベクトルグループを決定し、
前記出力ベクトルグループに含まれるそれぞれのベクトルにペアリングされたサービスを提供することを特徴とする請求項6に記載のロボット制御装置。
【請求項8】
前記少なくとも1つ以上のプロセッサは、
前記入力文章を識別した時点の後に前記使用者の追加的な要求事項が含まれる追加入力文章を識別したことに基づいて、前記追加入力文章から追加特徴ベクトルを獲得し、
前記追加特徴ベクトル及び前記候補ベクトルに基づいて前記候補ベクトルのスコアを獲得し、
前記候補ベクトルのスコアを介して前記対象ベクトルが決定されたことに基づいて、前記対象ベクトルにペアリングされた前記追加入力文章によるサービスを提供することを特徴とする請求項1に記載のロボット制御装置。
【請求項9】
前記少なくとも1つ以上のプロセッサは、前記特徴ベクトルと前記入力文章によるサービスとをペアリングさせることにより前記特徴ベクトルにペアリングされた前記入力文章によるサービスを前記データベースに格納することを特徴とする請求項1に記載のロボット制御装置。
【請求項10】
少なくとも一つ以上のプロセッサで実行されるロボット制御装置のロボット制御方法であって、
使用者の要求事項が含まれる入力文章を識別したことに基づいて、前記入力文章から前記入力文章によるサービスを前記使用者に提供するための特徴ベクトル(feature vector)を獲得する段階と、
前記特徴ベクトル及び予め決定された(predetermined)データベースに格納された候補ベクトル(candidate vector)に基づいて前記候補ベクトルのスコアを獲得する段階と、
前記候補ベクトルのスコアを介して対象ベクトル(target vector)が決定されたことに基づいて、前記対象ベクトルにペアリングされた(paired)前記入力文章によるサービスである対象サービスを提供する段階と、を有することを特徴とするロボット制御方法。
【請求項11】
前記特徴ベクトルを獲得する段階は、
前記入力文章の言語(language)が予め決定された対象言語ではないことに基づいて、前記入力文章の言語を前記対象言語に翻訳することを介して前記入力文章の言語の翻訳を遂行する段階と、
前記入力文章の不用語(stopword)の除去を遂行することにより前記入力文章から少なくとも1つ以上のキーワードを獲得する段階と、
前記少なくとも1つ以上のキーワード及び類似語マッピング(synonyms mapping)に関する第1サービステーブルに基づいて前記第1サービステーブルから前記入力文章の対象キーワードを獲得する段階と、を含むことを特徴とする請求項10に記載のロボット制御方法。
【請求項12】
前記特徴ベクトルを獲得する段階は、
サービスマッピング(service mapping)に関する第2サービステーブルに基づいて前記対象キーワードに対応する案内文章を獲得する段階と、
前記案内文章を文章の特徴を抽出するように学習された特徴抽出モデルに適用して前記特徴ベクトルを獲得する段階と、を含むことを特徴とする請求項11に記載のロボット制御方法。
【請求項13】
前記候補ベクトルのスコアを獲得する段階は、
少なくとも1つ以上の文章を含む文書を含むコーパス(corpus)から単語トークン化(word tokenization)を遂行してトークン(token)を獲得する段階と、
前記コーパスに基づいて前記トークンが前記コーパスに含まれる頻度(term frequency)に関する前記トークンの第1頻度値を決定する段階と、
前記コーパスに基づいて前記トークンが前記文書に含まれる頻度(inverse document frequency)に関する前記トークンの第2頻度値を決定する段階と、
前記第1頻度値及び前記第2頻度値に基づいて前記トークンの対象加重値を決定する段階と、
前記トークンの対象加重値に基づいて前記トークンが含まれる文章の前記候補ベクトルを決定する段階と、を含むことを特徴とする請求項10に記載のロボット制御方法。
【請求項14】
前記候補ベクトルのスコアを獲得する段階は、前記特徴ベクトル及び前記候補ベクトルをユークリッドスカラー積(Euclidean scalar product)に基づいて類似度に関するスコアを抽出するように学習されたスコア算出モデルに適用して前記候補ベクトルのスコアを獲得する段階を含むことを特徴とする請求項10に記載のロボット制御方法。
【請求項15】
前記対象サービスを提供する段階は、
前記候補ベクトルが格納された前記データベースから少なくとも1つ以上のベクトルを識別する段階と、
前記特徴ベクトル及び前記少なくとも1つ以上のベクトルのそれぞれに基づいて前記少なくとも1つ以上のベクトルのそれぞれのスコアを獲得する段階と、
前記少なくとも1つ以上のベクトルのそれぞれのスコア及び予め決定されたスコアに基づいて前記対象ベクトルを決定する段階と、を含むことを特徴とする請求項10に記載のロボット制御方法。
【請求項16】
前記対象サービスを提供する段階は、
前記少なくとも1つ以上のベクトルのそれぞれのスコアと予め決定されたスコアとの比較を介して、前記予め決定されたスコアを超過した前記対象ベクトルを含む出力ベクトルグループを決定する段階と、
前記出力ベクトルグループに含まれるそれぞれのベクトルにペアリングされたサービスを提供する段階と、を含むことを特徴とする請求項15に記載のロボット制御方法。
【請求項17】
前記対象サービスを提供する段階は、
前記入力文章を識別した時点の後に前記使用者の追加的な要求事項が含まれる追加入力文章を識別したことに基づいて、前記追加入力文章から追加特徴ベクトルを獲得する段階と、
前記追加特徴ベクトル及び前記候補ベクトルに基づいて前記候補ベクトルのスコアを獲得する段階と、
前記候補ベクトルのスコアを介して前記対象ベクトルが決定されたことに基づいて、前記対象ベクトルにペアリングされた前記追加入力文章によるサービスを提供する段階と、を含むことを特徴とする請求項10に記載のロボット制御方法。
【請求項18】
前記対象サービスを提供する段階は、前記特徴ベクトルと前記入力文章によるサービスとをペアリングさせることにより前記特徴ベクトルにペアリングされた前記入力文章によるサービスを前記データベースに格納する段階を含むことを特徴とする請求項10に記載のロボット制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット制御装置及びその制御方法に関し、より詳細には、使用者に個人化された案内メニューを提供するための技術に関する。
【背景技術】
【0002】
一般的に、車両購買或いは車両の管理を希望する場合、車両販売代理店及び/又はモータースタジオなどのような展示場或いは整備所に訪問して、使用者が関心を持つ対象を確認することができる。具体的に、サービスロボットは、使用者が関心を持つ対象に対する案内を提供することができる。
【0003】
但し、サービスロボットは、大部分が一般的で標準化された内容で使用者に案内を提供する。更に、サービスロボットは、新たな情報を受信する度毎にデータベースに新たな情報を格納するために、新たな分類政策を設定しなければならない。
【0004】
このようなサービスロボットの動作により、使用者は、画一的に分類された案内を介して時間を浪費して関心を失うことがある。また、サービスロボットを介して案内を提供する提供者は、新たな情報を管理するために、データベースに新たな分類政策を設定することにより、コスト対比効率性を減少させることができる。
【0005】
このような技術背景に対する問題点を解決するためには、使用者に個人化された案内を提供する技術及びデータベースに標準化された政策でデータを管理する技術の開発が必要である。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
本発明は、上記従の問題点に鑑みてなされたものであって、本発明目的は、使用者に個人化された案内を提供するロボット制御装置及びその制御方法を提供することにある。
【課題を解決するための手段】
【0008】
上記目的を達成するためになされた本発明の一態様によるロボット制御装置は、コンピュータで実行可能な命令語(computer-executable instructions)を格納したメモリと、前記メモリにアクセス(access)して前記命令語を実行する少なくとも1つ以上のプロセッサと、を備え、前記少なくとも1つ以上のプロセッサは、使用者の要求事項が含まれる入力文章を識別したことに基づいて、前記入力文章から前記入力文章によるサービスを前記使用者に提供するための特徴ベクトル(feature vector)を獲得し、前記特徴ベクトル及び予め決定された(predetermined)データベースに格納された候補ベクトル(candidate vector)に基づいて前記候補ベクトルのスコアを獲得し、前記候補ベクトルのスコアを介して対象ベクトル(target vector)が決定されたことに基づいて、前記対象ベクトルにペアリングされた(paired)前記入力文章によるサービスである対象サービスを提供する。
【0009】
一実施形態において、前記少なくとも1つ以上のプロセッサは、前記入力文章の言語(language)が予め決定された対象言語ではないことに基づいて、前記入力文章の言語を前記対象言語に翻訳することを介して前記入力文章の言語の翻訳を遂行し、前記入力文章の不用語(stopword)の除去を遂行することにより前記入力文章から少なくとも1つ以上のキーワードを獲得し、前記少なくとも1つ以上のキーワード及び類似語マッピング(synonyms mapping)に関する第1サービステーブルに基づいて前記第1サービステーブルから前記入力文章の対象キーワードを獲得する。
一実施形態において、前記少なくとも1つ以上のプロセッサは、サービスマッピング(service mapping)に関する第2サービステーブルに基づいて前記対象キーワードに対応する案内文章を獲得し、前記案内文章を文章の特徴を抽出するように学習された特徴抽出モデルに適用して前記特徴ベクトルを獲得する。
一実施形態において、前記少なくとも1つ以上のプロセッサは、少なくとも1つ以上の文章を含む文書を含むコーパス(corpus)から単語トークン化(word tokenization)を遂行してトークン(token)を獲得し、前記コーパスに基づいて前記トークンが前記コーパスに含まれる頻度(term frequency)に関する前記トークンの第1頻度値を決定し、前記コーパスに基づいて前記トークンが前記文書に含まれる頻度(inverse document frequency)に関する前記トークンの第2頻度値を決定し、前記第1頻度値及び前記第2頻度値に基づいて前記トークンの対象加重値を決定し、前記トークンの対象加重値に基づいて前記トークンが含まれる文章の前記候補ベクトルを決定する。
一実施形態において、前記少なくとも1つ以上のプロセッサは、前記特徴ベクトル及び前記候補ベクトルをユークリッドスカラー積(Euclidean scalar product)に基づいて類似度に関するスコアを抽出するように学習されたスコア算出モデルに適用して前記候補ベクトルのスコアを獲得する。
一実施形態において、前記少なくとも1つ以上のプロセッサは、前記候補ベクトルが格納された前記データベースから少なくとも1つ以上のベクトルを識別し、前記特徴ベクトル及び前記少なくとも1つ以上のベクトルのそれぞれに基づいて前記少なくとも1つ以上のベクトルのそれぞれのスコアを獲得し、前記少なくとも1つ以上のベクトルのそれぞれのスコア及び予め決定されたスコアに基づいて前記対象ベクトルを決定する。
一実施形態において、前記少なくとも1つ以上のプロセッサは、前記少なくとも1つ以上のベクトルのそれぞれのスコアと予め決定されたスコアとの比較を介して、前記予め決定されたスコアを超過した前記対象ベクトルを含む出力ベクトルグループを決定し、前記出力ベクトルグループに含まれるそれぞれのベクトルにペアリングされたサービスを提供する。
一実施形態において、前記少なくとも1つ以上のプロセッサは、前記入力文章を識別した時点の後に前記使用者の追加的な要求事項が含まれる追加入力文章を識別したことに基づいて、前記追加入力文章から追加特徴ベクトルを獲得し、前記追加特徴ベクトル及び前記候補ベクトルに基づいて前記候補ベクトルのスコアを獲得し、前記候補ベクトルのスコアを介して前記対象ベクトルが決定されたことに基づいて、前記対象ベクトルにペアリングされた前記追加入力文章によるサービスを提供する。
一実施形態において、前記少なくとも1つ以上のプロセッサは、前記特徴ベクトルと前記入力文章によるサービスとをペアリングさせることにより前記特徴ベクトルにペアリングされた前記入力文章によるサービスを前記データベースに格納する。
【0010】
上記目的を達成するためになされた本発明の一態様による少なくとも一つ以上のプロセッサで実行されるロボット制御装置のロボット制御方法は、使用者の要求事項が含まれる入力文章を識別したことに基づいて、前記入力文章から前記入力文章によるサービスを前記使用者に提供するための特徴ベクトル(feature vector)を獲得する段階と、前記特徴ベクトル及び予め決定された(predetermined)データベースに格納された候補ベクトル(candidate vector)に基づいて前記候補ベクトルのスコアを獲得する段階と、前記候補ベクトルのスコアを介して対象ベクトル(target vector)が決定されたことに基づいて、前記対象ベクトルにペアリングされた(paired)前記入力文章によるサービスである対象サービスを提供する段階と、を有する。
【0011】
一実施形態において、前記特徴ベクトルを獲得する段階は、前記入力文章の言語(language)が予め決定された対象言語ではないことに基づいて、前記入力文章の言語を前記対象言語に翻訳することを介して前記入力文章の言語の翻訳を遂行する段階と、前記入力文章の不用語(stopword)の除去を遂行することにより前記入力文章から少なくとも1つ以上のキーワードを獲得する段階と、前記少なくとも1つ以上のキーワード及び類似語マッピング(synonyms mapping)に関する第1サービステーブルに基づいて前記第1サービステーブルから前記入力文章の対象キーワードを獲得する段階と、を含む。
一実施形態において、前記特徴ベクトルを獲得する段階は、サービスマッピング(service mapping)に関する第2サービステーブルに基づいて前記対象キーワードに対応する案内文章を獲得する段階と、前記案内文章を文章の特徴を抽出するように学習された特徴抽出モデルに適用して前記特徴ベクトルを獲得する段階と、を含む。
一実施形態において、前記候補ベクトルのスコアを獲得する段階は、少なくとも1つ以上の文章を含む文書を含むコーパス(corpus)から単語トークン化(word tokenization)を遂行してトークン(token)を獲得する段階と、前記コーパスに基づいて前記トークンが前記コーパスに含まれる頻度(term frequency)に関する前記トークンの第1頻度値を決定する段階と、前記コーパスに基づいて前記トークンが前記文書に含まれる頻度(inverse document frequency)に関する前記トークンの第2頻度値を決定する段階と、前記第1頻度値及び前記第2頻度値に基づいて前記トークンの対象加重値を決定する段階と、前記トークンの対象加重値に基づいて前記トークンが含まれる文章の前記候補ベクトルを決定する段階と、を含む。
一実施形態において、前記候補ベクトルのスコアを獲得する段階は、前記特徴ベクトル及び前記候補ベクトルをユークリッドスカラー積(Euclidean scalar product)に基づいて類似度に関するスコアを抽出するように学習されたスコア算出モデルに適用して前記候補ベクトルのスコアを獲得する段階を含む。
一実施形態において、前記対象サービスを提供する段階は、前記候補ベクトルが格納された前記データベースから少なくとも1つ以上のベクトルを識別する段階と、前記特徴ベクトル及び前記少なくとも1つ以上のベクトルのそれぞれに基づいて前記少なくとも1つ以上のベクトルのそれぞれのスコアを獲得する段階と、前記少なくとも1つ以上のベクトルのそれぞれのスコア及び予め決定されたスコアに基づいて前記対象ベクトルを決定する段階と、を含む。
一実施形態において、前記対象サービスを提供する段階は、前記少なくとも1つ以上のベクトルのそれぞれのスコアと予め決定されたスコアとの比較を介して、前記予め決定されたスコアを超過した前記対象ベクトルを含む出力ベクトルグループを決定する段階と、前記出力ベクトルグループに含まれるそれぞれのベクトルにペアリングされたサービスを提供する段階と、を含む。
一実施形態において、前記対象サービスを提供する段階は、前記入力文章を識別した時点の後に前記使用者の追加的な要求事項が含まれる追加入力文章を識別したことに基づいて、前記追加入力文章から追加特徴ベクトルを獲得する段階と、前記追加特徴ベクトル及び前記候補ベクトルに基づいて前記候補ベクトルのスコアを獲得する段階と、前記候補ベクトルのスコアを介して前記対象ベクトルが決定されたことに基づいて、前記対象ベクトルにペアリングされた前記追加入力文章によるサービスを提供する段階と、を含む。
一実施形態において、前記対象サービスを提供する段階は、前記特徴ベクトルと前記入力文章によるサービスとをペアリングさせることにより前記特徴ベクトルにペアリングされた前記入力文章によるサービスを前記データベースに格納する段階を含む。
【発明の効果】
【0012】
本発明によるロボット制御装置及びその制御方法の効果について説明すると、次のとおりである。
【0013】
本発明のロボット制御装置及びその制御方法によると、使用者の要求事項が含まれる入力文章から決定された対象ベクトルを介して対象サービスを提供することにより、使用者に個人化された案内を提供して使用者の便宜性を増加させることができる。
【0014】
また、本発明によると、入力文章の言語が予め決定された対象言語ではないことに基づいて入力文章の言語を対象言語に翻訳を遂行することにより、使用者に個人化された案内を提供する動作の正確度を増加させることができる。
【0015】
また、本発明によると、コーパスから獲得されたトークンの第1頻度値及びトークンの第2頻度値に基づいてトークンが含まれる文章の候補ベクトルを決定することにより、データベースに標準化された政策でデータを管理することができる。
【0016】
この他、本明細書を介して直接的又は間接的に把握される多様な効果が提供さる。
【図面の簡単な説明】
【0017】
【
図1】本発明の一実施形態によるロボット制御装置を示した図である。
【
図2】本発明の一実施形態によるロボット制御方法を説明するためのフローチャートである。
【
図3】本発明の一実施形態によるロボット制御装置における対象サービスを提供する方法を説明するためのフローチャートである。
【
図4】本発明の一実施形態によるロボット制御装置における入力文章から対象サービスを提供するために特徴ベクトルを獲得する方法を説明するためのフローチャートである。
【
図5】本発明の一実施形態によるロボット制御装置における特徴ベクトルから対象サービスを提供する方法を説明するためのフローチャートである。
【
図6】本発明の一実施形態によるロボット制御装置におけるデータベースに格納された候補ベクトルを決定する方法を説明するためのフローチャートである。
【
図7】本発明の一実施形態によるロボット制御装置又はロボット制御方法に関するコンピュータシステムを示した図である。
【発明を実施するための形態】
【0018】
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。
【0019】
各図面の構成要素に参照符号を付加する際に、同一の構成要素に対してはたとえ他の図面上に表示されたとしても可能な限り同一の符号を有するようにしていることに留意しなければならない。また、本発明の実施形態を説明する際に、関連する公知構成又は機能に対する具体的な説明が本発明の実施形態に対する理解を曖昧にすると判断される場合には、その詳細な説明は省略する。特に、本発明の多様な実施形態が図面を参照して記載される。しかし、これは、本明細書に記載された技術を特定の実施形態に対して限定しようとするものではなく、本発明の実施形態の多様な変更(modifications)、均等物(equivalents)、及び/又は代替物(alternatives)を含むものとして理解されなければならない。図面の説明に関して、類似した構成要素に対しては類似した参照符号が用いられる。
【0020】
本発明の実施形態の構成要素を説明する際に、第1、第2、A、B、(a)、(b)などの用語を用いる。このような用語はその構成要素を他の構成要素と区別するためのものであるだけであり、その用語により該当構成要素の本質や順番又は順序などが限定されない。また、異なって定義されない限り、技術的であるか科学的な用語を含め、ここで用いられる全ての用語は、本発明が属する技術分野における通常の知識を有する者により一般的に理解されるものと同一の意味を有する。一般的に用いられる辞典に定義されているような用語は、関連技術の文脈上有する意味と一致する意味を有するものと解釈されなければならず、本明細書で明白に定義しない限り、理想的であるか過度に形式的な意味として解釈されない。例えば、本明細書で用いられた「第1」、「第2」、「第一」、又は「第二」などの表現は、多様な構成要素を、順序及び/又は重要度に関係なく修飾し、一構成要素を他の構成要素と区分するために用いられるだけであって、該当構成要素を限定しない。例えば、第1使用者機器と第2使用者機器とは、順序又は重要度に関係なく、互いに異なる使用者機器を示す。例えば、本明細書に記載された権利範囲を外れることなく、第1の構成要素は第2の構成要素と命名され、同様に第2の構成要素も第1の構成要素に変えて命名される。
【0021】
本明細書において、「有する」、「有することができる」、「含む」、又は「含むことができる」などの表現は、該当の特徴(例:数値、機能、動作、又は部品などの構成要素)の存在を示し、追加的な特徴の存在を排除しない。
【0022】
ある構成要素(例:第1構成要素)が他の構成要素(例:第2構成要素)に「(機能的に又は通信的に)連結されて((operatively or communicatively)coupled with/to)」いるか又は「接続されて(connected to)」いると言及した場合には、ある構成要素が他の構成要素に直接的に連結されるか、他の構成要素(例:第3構成要素)を介して連結されると理解されなければならない。一方で、ある構成要素(例:第1構成要素)が他の構成要素(例:第2構成要素)に「直接連結されて」いるか又は「直接接続されて」いると言及した場合には、ある構成要素と他の構成要素との間に他の構成要素(例:第3構成要素)が存在しないものと理解される。
【0023】
本明細書で用いられた表現「~するように構成された(又は設定された)(configured to)」は、状況に応じて、例えば「~に好適な(suitable for)」、「~する能力を有する(having the capacity to)」、「~するように設計された(designed to)」、「~するように変更された(adapted to)」、「~させられた(made to)」、又は「~ができる(capable of)」に代えて用いられる。
【0024】
用語「~するように構成された(又は設定された)」は、ハードウェア的に「特別に設計された(specifically designed to)」ものだけを必ずしも意味しない。その代わりに、ある状況では、「~するように構成された装置」という表現は、その装置が他の装置又は部品と共に「~することができる」ことを意味する。例えば、文句「A、B、及びCを遂行するように構成された(又は設定された)プロセッサ」は、該当動作を遂行するための専用プロセッサ(例:エンベデッドプロセッサ)、又はメモリ装置に格納された1つ以上のソフトウェアプログラムを実行することにより、該当動作を遂行する汎用プロセッサ(generic-purpose processor)(例:CPU又はapplication processor)を意味する。本明細書で用いられた用語は、単に特定の実施形態を説明するために用いられたものであり、他の実施形態の範囲を限定しようとする意図ではない。単数の表現は、文脈上明白に異なって意味しない限り、複数の表現を含む。技術的であるか科学的な用語を含め、ここで用いられる用語は、本明細書に記載された技術分野における通常の知識を有する者により一般的に理解されるものと同一の意味を有する。本明細書に用いられた用語のうち、一般的な辞典に定義された用語は、関連技術の文脈上有する意味と同一又は類似した意味に解釈され、本明細書で明白に定義されない限り、理想的であるか過度に形式的な意味に解釈されない。場合に応じて、本明細書で定義された用語であっても本発明の実施形態を排除して解釈することはできない。
【0025】
本明細書において、「A又はB」、「A又は/及びBのうちの少なくとも1つ」、又は「A又は/及びBのうち1つ又はそれ以上」などの表現は、共に列挙された項目の全ての可能な組み合せを含む。例えば、「A又はB」、「A及びBのうちの少なくとも1つ」、又は「A又はBのうちの少なくとも1つ」は、(1)少なくとも1つのAを含む、(2)少なくとも1つのBを含む、又は(3)少なくとも1つのA及び少なくとも1つのBの両方を含む場合を全て指称する。また、本発明の実施形態の構成要素を説明する際に、「A又はB」、「A及びBのうちの少なくとも1つ」、「A又はBのうちの少なくとも1つ」、「A、B又はC」、「A、B及びCのうちの少なくとも1つ」、「A、B、又はCのうちの少なくとも1つ」、及び「A、B、C、又はこれらのどの組み合せ中の少なくとも1つ」のような文句のそれぞれは、その文句のうちの該当する文句に共に列挙された項目のうちのいずれか1つ、又はその全ての可能な組み合せを含む。特に、「A、B、C、又はこれらのいずれかの組み合せのうちの少なくとも1つ」のような文句は、A又はB又はC又はこれらの組み合せであるAB又はABCなどを含む。
【0026】
以下、
図1~
図7を参照して本発明の実施形態を具体的に説明する。
【0027】
図1は、本発明の一実施形態によるロボット制御装置を示した図である。
【0028】
本実施形態によるロボット制御装置100は、プロセッサ110、及び命令語122を含むメモリ120を含む。
【0029】
ロボット制御装置100は、車両代理店のような車両に関するサービスを提供する空間に位置するロボットを介して使用者(例:訪問顧客)に個人化された案内サービスを提供する装置を表す。
【0030】
ロボット制御装置100は、例示的に使用者からの要求事項が含まれる音声、要求事項が含まれる入力文章、又はこれらのいずれかの組み合せのうちの少なくとも1つ以上を識別する。ロボット制御装置100は、音声、入力文章、又はこれらのいずれかの組み合せのうちの少なくとも1つ以上を識別したことに基づいて、少なくとも1つ以上の動作を遂行することにより使用者に対象サービスを提供する。ここで、対象サービスは、音声、入力文章、又はこれらのいずれかの組み合せのうちの少なくとも1つ以上によるサービスを表す。但し、ロボット制御装置100が使用者に案内メニューを提供する方法は、これに制限されるものではない。例えば、ロボット制御装置100は、ロボットを介さずに出力部(例:ディスプレイ又はスピーカー)を介して使用者に直接的に個人化された案内サービスを提供することができる。
【0031】
プロセッサ110は、ソフトウェアを実行して、プロセッサ110に連結された少なくとも1つの他の構成要素(例:ハードウェア又はソフトウェア構成要素)を制御する。プロセッサ110は、これ以外にも多様なデータ処理又は演算を遂行する。例えば、プロセッサ110は、音声、入力文章、対象サービス、又はこれらのいずれかの組み合せのうちの少なくとも1つ以上をメモリ120に格納する。
【0032】
参考として、プロセッサ110は、ロボット制御装置100が遂行する全ての動作を実行する。したがって、本明細書では、説明の便宜のために、ロボット制御装置100の遂行する動作は、プロセッサ110が実行する動作であることを主に説明する。また、本明細書では、説明の便宜のために、プロセッサ110は、1つのプロセッサであるものとして主に説明するが、これに制限されない。例えば、ロボット制御装置100は少なくとも1つ以上のプロセッサを含む。少なくとも1つ以上のプロセッサのそれぞれは、個人化された案内サービスを提供する動作に関する全ての動作を遂行する。
【0033】
例示的に、プロセッサ110は、第1プロセッサ111、第2プロセッサ113、第3プロセッサ115、第4プロセッサ117、及び通信プロセッサ119を含む。
【0034】
第1プロセッサ111は、個人化された案内サービスを提供するために必要な使用者データ(例:入力文章)を収集及び/又は識別する。例示的に、第1プロセッサ111は、ロボット又はロボット制御装置100に装着されたディスプレイを介して入力された使用者データを収集及び/又は識別する。
【0035】
第2プロセッサ113は、収集及び/又は識別された使用者データを分析して使用者の特性に関するデータを決定する。例示的に、第2プロセッサ113は、データ分析技法(例:自然語処理技法)を介して使用者データの特徴を抽出する。
【0036】
第3プロセッサ115は、第2プロセッサ113により抽出された使用者データの特徴に基づいて、個人化された案内サービスを提供する。例示的に、第3プロセッサ115は、抽出された使用者データの特徴を活用して、使用者の特性により案内サービスを提供する。
【0037】
第4プロセッサ117は、個人化された案内サービスを提供するためのデータを分析或いは管理する。例示的に、第4プロセッサ117は、データベースを管理するプロセッサを表す。
【0038】
通信プロセッサ119は、個人化された案内サービスを提供するために必要な使用者データを受信する。また、通信プロセッサ119は、第1プロセッサ111~第4プロセッサ117の動作により算出された結果を使用者に提供する。例示的に、通信プロセッサ119は、ロボット制御装置100とロボットとの間の通信遂行を支援する。例えば、通信プロセッサ119は、ロボット制御装置100とロボットとの間の通信をさせる1つ以上の構成要素を含む。例えば、通信プロセッサ119は、近距離通信部(Short range wireless communication unit)、マイクロフォンなどを含む。ここで、近距離通信技術には、無線LAN(Wi-Fi)、ブルートゥース(登録商標)、ジグビー(登録商標)、WFD((Wi-Fi Direct)、UWB(ultra-wideband)、赤外線通信(IrDA:infrared Data Association)、BLE(Bluetooth(登録商標) Low Energy)、NFC(Near Field Communication)などがあるが、これらに制限されるものではない。
【0039】
メモリ120は、個人化された案内サービスを提供する動作を遂行するために要求される多様なデータ及び/又は情報を一時的に及び/又は恒久的に格納する。例えば、メモリ120は、音声、入力文章、対象サービス、又はこれらのいずれかの組み合せのうちの少なくとも1つ以上を格納する。
【0040】
図2は、本発明の一実施形態によるロボット制御方法を説明するためのフローチャートである。
【0041】
本実施形態によるロボット制御装置(例:
図1のロボット制御装置100)は、段階210において、使用者の要求事項が含まれる入力文章を識別したことに基づいて、入力文章から、入力文章によるサービスを使用者に提供するための特徴ベクトル(feature vector)を獲得する。
【0042】
例えば、使用者の要求事項は、ロボットから出力を希望するサービス(例:展示場案内サービス、車両説明サービス、整備現況サービス、又はトイレ案内サービスなど)を含む。特徴ベクトルは、入力文章の固有の特性及び速成を有する予め決定された次元を含むベクトルを表す。ロボット制御装置は、入力文章を識別した後、特徴抽出モデルから特徴ベクトルを獲得する。これに関する詳細な説明は、下記
図3で後述する。
【0043】
ロボット制御装置は、段階220において、特徴ベクトル及び予め決定された(predetermined)データベースに格納された候補ベクトル(candidate vector)に基づいて候補ベクトルのスコアを獲得する。
【0044】
例えば、ロボット制御装置は、予め決定されたデータベースに格納された候補ベクトルを識別する。候補ベクトルは、入力文章を識別する時点の前に入力文章とは異なる文章の特徴が抽出されたベクトルを表す。ロボット制御装置は、特徴ベクトルと候補ベクトルとの比較を遂行する。ロボット制御装置は、特徴ベクトルと候補ベクトルとの比較を遂行することにより候補ベクトルのスコアを獲得する。候補ベクトルのスコアを獲得する詳細な方法は、下記
図3で後述する。
【0045】
ロボット制御装置は、段階230において、候補ベクトルのスコアを介して対象ベクトル(target vector)が決定されたことに基づいて、対象ベクトルにペアリングされた(paired)入力文章によるサービスである対象サービスを提供する。
【0046】
例えば、ロボット制御装置は、候補ベクトルのスコアが予め決定されたスコアを超過するか否かに基づいて、候補ベクトルを対象ベクトルとして決定する。ロボット制御装置は、候補ベクトルが対象ベクトルとして決定されたことに基づいて、対象サービスを、ロボットを介して使用者に提供する。
【0047】
更に、ロボット制御装置は、候補ベクトルのスコアが予め決定されたスコアを超過しないことに基づいて、候補ベクトルを対象ベクトルとして決定しない。この場合、ロボット制御装置は、予め決定されたデータベースで候補ベクトルとは異なるベクトルを識別することにより、候補ベクトルとは異なるベクトルのスコアを決定(例:段階220で説明した動作)する。
【0048】
ロボット制御装置は、対象サービスを使用者に提供したことに基づいて、入力文章及び特徴ベクトルをデータベースに格納する。例えば、ロボット制御装置は、特徴ベクトルと入力文章によるサービスとをペアリングさせることにより、特徴ベクトルにペアリングされた入力文章によるサービスをデータベースに格納する。このような動作を介して、ロボット制御装置は、データベースを管理する。
【0049】
図3は、本発明の一実施形態によるロボット制御装置における対象サービスを提供する方法を説明するためのフローチャートである。
【0050】
本実施形態によるロボット制御装置(例:
図1のロボット制御装置100)は、段階311において、入力文章を識別する。入力文章は、例示的に車両説明のサービス要請を含む。
【0051】
ロボット制御装置は、段階313において、追加入力文章の識別可否を判定する。例えば、ロボット制御装置は、段階311において入力文章を識別した時点の後に入力文章とは異なる追加入力文章を識別する。
【0052】
ロボット制御装置は、段階315において、追加入力文章が識別されないことに基づいて、入力文章の対象キーワードを獲得する。例えば、対象キーワードは、入力文章に含まれる使用者の意図或いは要求事項に関する情報を表す。具体的に、入力文章が車両説明に関するサービス要請を含む場合、ロボット制御装置は、入力文章から類似語マッピング(synonyms mapping)に関する第1サービステーブルを介して説明を対象キーワードとして獲得する。対象キーワードを獲得する詳細な方法は、下記
図4で後述する。
【0053】
ロボット制御装置は、段階317において、対象キーワードに対応する案内文章を特徴抽出モデルに適用して特徴ベクトルを獲得する。例えば、ロボット制御装置は、サービスマッピング(service mapping)に関する第2サービステーブルに基づいて、対象キーワードに対応する案内文章を獲得する。具体的に、入力文章が車両説明に関するサービス要請を含み、対象キーワードが説明である場合、ロボット制御装置は、第2サービステーブルに基づいて、対象キーワードに対応する展示場内の車両を説明するサービスに関する文章を案内文章として確保する。案内文章を獲得する詳細な方法は、下記
図4で後述する。
【0054】
ロボット制御装置は、特徴抽出モデルを学習させる。例示的に、特徴抽出モデルは、ニューラルネットワークを含む。ニューラルネットワークは複数のレイヤーを含み、各レイヤーは複数のノードを含む。ノードは、活性化関数(activation function)に基づいて決定されるノード値を有する。任意のレイヤーのノードは、他のレイヤーのノード(例:他のノード)に連結加重値(connection weight)を有するリンク(例:連結線(connection edge))を介して連結される。ノードのノード値は、リンクを介して他のノードに伝播される。ニューラルネットワークの推論動作では、ノード値が前のレイヤーから次のレイヤーの方向に順伝播(forward propagate)される。
【0055】
例示的に、特徴抽出モデルにおける順伝播演算は、特徴抽出モデルの入力レイヤーから出力レイヤーに向かう方向に、入力されたデータに基づいたノード値を伝播する演算を表す。即ち、ノードに連結線を介して連結された後、レイヤーのノード(例:次のノード)に該当ノードのノード値が伝播(例:順伝播)される。例えば、ノードは、連結線を介して連結された前のノード(例:複数のノード)から連結加重値により加重された(weighted)値を受信する。
【0056】
ノードのノード値は、前のノードから受信された加重された値の和(例:加重和)に活性化関数を適用したことに基づいて決定される。ニューラルネットワークのパラメータは、例示的に上述した連結加重値を含む。ニューラルネットワークのパラメータは、後述する目的関数値がターゲッティングされた方向(例:損失が最小化される方向)に変更されるようにアップデートされる。
【0057】
学習された特徴抽出モデルは、機械学習を介して学習されたモデルを示し、トレーニング入力(例:案内文章)からトレーニング出力(例:入力文章の特徴ベクトル)を出力する学習された機械学習モデルである。
【0058】
機械学習モデル(例えば、学習された特徴抽出モデル)は、機械学習を介して生成される。学習アルゴリズムは、例えば指導型学習(supervised learning)、非指導型学習(unsupervised learning)、準指導型学習(semi-supervised learning)、又は強化学習(reinforcement learning)を含むが、上述した例に限定されない。
【0059】
機械学習モデルは、複数の人工神経網レイヤーを含む。人工神経網は、深層神経網(DNN:deep neural network)、CNN(convolutional neural network)、U-net(U-Net for Image Segmentation)、RNN(recurrent neural network)、RBM(restricted boltzmann machine)、DBN(deep belief network)、BRDNN(bidirectional recurrent deep neural network)、深層Q-ネットワーク(deep Q-networks)、又はこれらの組み合わせのうちの少なくとも1つの組み合わせであるが、上述した例に限定されない。
【0060】
指導型学習の場合、上述した機械学習モデルは、トレーニング入力及び該当のトレーニング入力にマッピングされたトレーニング出力の対を含むトレーニングデータに基づいて学習される。例えば、機械学習モデルは、トレーニング入力からトレーニング出力を出力するように学習される。学習中の機械学習モデルは、トレーニング入力に応答して臨時出力を生成し、臨時出力とトレーニング出力(例えば、トレーニングのターゲット)との間の損失が最小化されるように学習される。学習過程の間、機械学習モデルのパラメータ(例えば、ニュ-ロルネットワークにおけるノード/レイヤー間の連結加重値)が損失によりアップデートされる。このような学習は、例えば機械学習モデルが遂行されるロボット制御装置自体で遂行されるか、或いは別途のサーバーを介して遂行される。学習が完了した機械学習モデル(例えば、学習された特徴抽出モデル)は、メモリ(例:
図1のメモリ120)に格納される。
【0061】
ロボット制御装置は、段階319において、特徴ベクトル及び候補ベクトルに基づいて候補ベクトルのスコアを獲得する。例えば、ロボット制御装置は、特徴ベクトルと候補ベクトルとの比較を遂行する。具体的に、ロボット制御装置は、特徴ベクトル及び候補ベクトルをユークリッドスカラー積(Euclidean scalar product)に基づいて類似度に関するスコアを抽出するように学習されたスコア算出モデルに適用して候補ベクトルのスコアを獲得する。ユークリッドスカラー積の演算は、下記数式1を介してスコア算出モデル(又はロボット制御装置)により遂行される。
【0062】
【0063】
ここで、Aiは特徴ベクトルを意味し、Biは候補ベクトルを意味し、nは特徴ベクトル及び候補ベクトルの要素の数を意味し、similarityは候補ベクトルの類似度(即ち、候補ベクトルと特徴ベクトルとの類似度を数値化した値)を表す。
【0064】
ロボット制御装置は、段階321において、候補ベクトルのスコアを介して対象ベクトルが決定されたことに基づいて、対象サービスを提供する。例えば、ロボット制御装置は、候補ベクトルを含むデータベースから第1ベクトル及び第2ベクトルを識別する。ロボット制御装置は、段階319において説明した方法を介して第1ベクトルのスコア及び第2ベクトルのスコアを決定する。ロボット制御装置は、第1ベクトルのスコア、第2ベクトルのスコア、及び候補ベクトルのスコアを比較することにより、最も高いスコアを有するベクトルを識別する。例示的に、第1ベクトルのスコア、第2ベクトルのスコア、及び候補ベクトルのスコアのうちで、候補ベクトルのスコアが最も高い場合、ロボット制御装置は、候補ベクトルを対象ベクトルとして決定する。ロボット制御装置は、候補ベクトルが対象ベクトルとして決定されたことに基づいて、対象ベクトルにペアリングされた入力文章によるサービスである対象サービスを提供する。
【0065】
ロボット制御装置は、段階323において、追加入力文章を識別したことに基づいて、追加入力文章をメタデータに累積する。例示的に、メタデータは、データベースに格納されたデータを表す。その後、ロボット制御装置は、段階325において、追加入力文章によるサービスを提供する。
【0066】
ロボット制御装置は、具体的に、入力文章を識別した時点の後に使用者の更なる要求事項が含まれる追加入力文章を識別したことに基づいて、追加入力文章から追加特徴ベクトルを獲得する。ロボット制御装置は、追加特徴ベクトル及び候補ベクトルに基づいて候補ベクトルのスコアを獲得する。ロボット制御装置は、候補ベクトルのスコアを介して対象ベクトルが決定されたことに基づいて、対象ベクトルにペアリングされた追加入力文章によるサービスを提供する。
【0067】
図4は、本発明の一実施形態によるロボット制御装置における入力文章から対象サービスを提供するために特徴ベクトルを獲得する方法を説明するためのフローチャートである。
【0068】
本実施形態によるロボット制御装置(例:
図1のロボット制御装置100)は、段階410において、入力文章を識別する。但し、これに制限されるものではなく、ロボット制御装置は、入力文章、音声、又はこれらのいずれかの組み合せのうちの少なくとも1つ以上を含む使用者の要求事項を含む対象を識別することができる。従って、本明細書では、説明の便宜のために、ロボット制御装置が使用者にサービスを提供するために識別することは、入力文章を識別するものとして説明する。
【0069】
ロボット制御装置は、段階420において、入力文章の言語を識別する。例えば、ロボット制御装置は、入力文章の言語が予め決定された対象言語(例:英語)ではないことに基づいて、入力文章の言語を対象言語に翻訳することを介して入力文章の言語の翻訳を遂行する。ロボット制御装置は、入力文章の言語を対象言語に翻訳することにより、案内サービスの正確度を改善することができる。
【0070】
ロボット制御装置は、段階430において、入力文章の前処理を介して対象キーワードを獲得する。ここで、入力文章は、対象言語に翻訳された文章を表す。具体的に、ロボット制御装置は、入力文章の不用語(stopword)の除去を遂行することにより、入力文章から少なくとも1つ以上のキーワードを獲得する。例示的に、ロボット制御装置は、「describe about car」のような入力文章において、不用語である「about」を除去することにより「describe」キーワード及び「car」キーワードを獲得する。
【0071】
ロボット制御装置は、少なくとも1つ以上のキーワード及び類似語マッピングに関する第1サービステーブルに基づいて入力文章の対象キーワードを獲得する。第1サービステーブルは、例示的に下記表1のような内容を含む。
【0072】
【0073】
例えば、ロボット制御装置は、「describe」キーワード、「car」キーワード、及び第1サービステーブルに基づいて、入力文章の対象キーワードを、「explain」として決定する。
【0074】
ロボット制御装置は、段階440において、入力文章の対象キーワードを決めたことに基づいて、サービスマッピング(service mapping)に関する第2サービステーブルを参照して対象キーワードに対応する案内文章を獲得する。例えば、第2サービステーブルは、例示的に下記表2のような内容を含む。
【0075】
【0076】
例えば、ロボット制御装置は、「explain」が対象キーワードとして決定され、上記表1の対象キーワードのバリュー(value)が「1」であることに基づいて、第2サービステーブルを介して対象キーワードに対応する案内文章を「展示場内の車両を説明するサービス」として獲得する。
【0077】
ロボット制御装置は、段階450において、案内文章(例:「展示場内の車両を説明するサービス」)を、文章の特徴を抽出するように学習された特徴抽出モデルに適用して特徴ベクトルを獲得する。
【0078】
図5は、本発明の一実施形態によるロボット制御装置における特徴ベクトルから対象サービスを提供する方法を説明するためのフローチャートである。
【0079】
本実施形態によるロボット制御装置(例:
図1のロボット制御装置100)は、段階510において、対象キーワードに対応する案内文章を特徴抽出モデルに適用して特徴ベクトルを獲得する。特徴ベクトルを獲得する詳細な説明は、
図4で説明したため、
図5では省略する。
【0080】
ロボット制御装置は、段階520において、特徴ベクトル及び候補ベクトルをスコア算出モデルに適用して候補ベクトルのスコアを獲得する。スコア算出モデルは、上記数式1で説明した動作に基づいて候補ベクトルのスコアを算出するように学習されたモデルを表す。
【0081】
ロボット制御装置は、段階530において、候補ベクトルのスコアと予め決定されたスコアとの比較を介して対象ベクトルを決定する。ロボット制御装置は、候補ベクトルが格納されたデータベースから少なくとも1つ以上のベクトルを識別する。ロボット制御装置は、特徴ベクトル及び少なくとも1つ以上のベクトルのそれぞれに基づいて少なくとも1つ以上のベクトルのそれぞれのスコアを獲得する。ロボット制御装置は、少なくとも1つ以上のベクトルのそれぞれのスコア及び予め決定されたスコアに基づいて対象ベクトルを決定する。
【0082】
ロボット制御装置は、段階540において、対象ベクトルにペアリングされた入力文章によるサービスである対象サービスを提供する。例えば、ロボット制御装置は、少なくとも1つ以上のベクトルのそれぞれのスコアと予め決定されたスコアとの比較を介して、予め決定されたスコアを超過した対象ベクトルを含む出力ベクトルグループを決定する。出力ベクトルグループに含まれるベクトルにペアリングされたサービスは、入力文章に含まれる使用者の要求事項を解決するのに好適なサービスを表す。ロボット制御装置は、出力ベクトルグループに含まれるそれぞれのベクトルにペアリングされたサービスを提供することにより、入力文章によるサービスを提供する。
【0083】
図6は、本発明の一実施形態によるロボット制御装置におけるデータベースに格納された候補ベクトルを決定する方法を説明するためのフローチャートである。
【0084】
本実施形態によるロボット制御装置(例:
図1のロボット制御装置100)は、段階610において、データベースに格納された候補ベクトルを決定するために、コーパス(corpus)から単語トークン化を遂行してトークンを獲得する。例えば、ロボット制御装置は、少なくとも1つ以上の文章を含む文書を含むコーパスから単語トークン化(word tokenization)を遂行してトークン(token)を獲得する。
【0085】
即ち、トークンは、文章に含まれる単語を表す。
【0086】
ロボット制御装置は、段階620において、トークンの第1頻度値を決定する。例えば、ロボット制御装置は、コーパスに基づいてトークンがコーパスに含まれる頻度(term frequency)に関するトークンの第1頻度値を決定する。
【0087】
ロボット制御装置は、段階630において、トークンの第2頻度値を決定する。例えば、ロボット制御装置は、コーパスに基づいてトークンが文書に含まれる頻度(inverse document frequency)に関するトークンの第2頻度値を決定する。第2頻度値は、下記数式2により決定される。
【0088】
【0089】
ここで、Nは文章全体の数を意味し、DF(W)は算出されたトークンWの第1頻度値を意味し、IDF(W)は算出されたトークンWの第2頻度値を意味する。
【0090】
ロボット制御装置は、段階640において、第1頻度値及び第2頻度値に基づいて決定されたトークンの対象加重値を介してトークンが含まれる文章の候補ベクトルを決定する。対象加重値は、第1頻度値及び第2頻度値に基づいて決定される。例示的に、ロボット制御装置は、第1頻度値及び第2頻度値の合算に基づいて対象加重値を決定するが、これに制限されるものではない。ロボット制御装置は、トークンが含まれる文章の候補ベクトルを決めたことに基づいて、データベースに含まれた候補ベクトルの文章とは異なる文章のベクトルを決定することができる。
【0091】
図7は、本発明の一実施形態によるロボット制御装置又はロボット制御方法に関するコンピュータシステムを示した図である。
【0092】
図7を参照すると、ロボット制御装置又はロボット制御方法に関するコンピュータシステム1000は、バス1200を介して連結される少なくとも1つのプロセッサ1100、メモリ1300、使用者インターフェース入力装置1400、使用者インターフェース出力装置1500、ストレージ(storage)1600、及びネットワークインターフェース1700を含む。
【0093】
プロセッサ1100は、中央処理装置(CPU)又はメモリ1300及び/又はストレージ(storage)1600に格納された命令語に対する処理を実行する半導体装置である。メモリ1300及びストレージ(storage)1600は、多様な種類の揮発性又は不揮発性記録媒体を含む。例えば、メモリ1300は、ROM(read only memory)及びRAM(random access memory)を含む。
【0094】
したがって、本明細書に開示した実施形態に関して説明した方法又はアルゴリズムの各段階は、プロセッサ1100により実行されるハードウェア、ソフトウェアモジュール、又はそれらの2つの結合により直接具現される。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、着脱型ディスク、CD-ROMのような記録媒体(即ち、メモリ1300及び/又はストレージ(storage)1600)に常駐する。
【0095】
例示的な記録媒体は、プロセッサ1100にカップリングされ、そのプロセッサ1100は、記録媒体から情報を読み取り、記録媒体に情報を書き込む。他の方法として、記録媒体は、プロセッサ1100と一体型である。プロセッサ及び記録媒体は、注文型集積回路(ASIC)内に常駐することもできる。ASICは、使用者端末機内に常駐することもできる。他の方法として、プロセッサ及び記録媒体は、使用者端末機内に個別コンポーネントとして常駐することもできる。
【0096】
以上の説明は、本発明の技術思想を例示的に説明したものに過ぎないものであって、本発明が属する技術分野における通常の知識を有する者であれば、本発明の本質的な特性から逸脱しない範囲で多様な修正及び変形が可能である。
【0097】
以上で説明した実施形態は、ハードウェア構成要素、ソフトウェア構成要素、及び/又はハードウェア構成要素及びソフトウェア構成要素の組み合せで具現される。例えば、本実施形態で説明した装置、方法、及び構成要素は、例えばプロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ(digital signal processor)、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、又は命令(instruction)を実行して応答する他の装置のように、汎用コンピュータ又は特殊目的コンピュータを用いて具現される。処理装置は、運営体制(OS)及び運営体制上で遂行されるソフトウェアアプリケーションを遂行する。また、処理装置は、ソフトウェアの実行に応答して、データにアクセス、格納、操作、処理、及び生成する。理解の便宜のために、処理装置は、1つが用いられるものとして説明した場合もあるが、当該技術分野における通常の知識を有する者は、処理装置が複数個の処理要素(processing element)及び/又は複数類型の処理要素を含むことが分かる。例えば、処理装置は、複数個のプロセッサ又は1つのプロセッサ及び1つのコントローラを含む。また、並列プロセッサ(parallel processor)のような、他の処理構成(processing configuration)も可能である。ソフトウェアは、コンピュータプログラム(computer program)、コード(code)、命令(instruction)、又はこれらのうち1つ以上の組み合せを含み、望むとおりに動作するように処理装置を構成するか、或いは独立的に又は結合的に(collectively)処理装置に命令する。ソフトウェア及び/又はデータは、処理装置により解釈されるか、或いは処理装置に命令又はデータを提供するために、ある類型の機械、構成要素(component)、物理的装置、仮想装置(virtual equipment)、コンピュータ格納媒体又は装置、或いは伝送される信号波(signal wave)により、恒久的に又は一時的に具体化(embody)される。ソフトウェアは、ネットワークで連結されたコンピュータシステム上に分散されて、分散された方法で格納されるか又は実行される。ソフトウェア及びデータは、コンピュータ読み取り可能な記録媒体に格納される。
【0098】
本実施形態による方法は、多様なコンピュータ手段を介して遂行されるプログラム命令形態に具現されてコンピュータ読み取り可能な記録媒体に記録される。コンピュータ読み取り可能な記録媒体は、プログラム命令、データファイル、データ構造などを単独で又は組み合わせて含み、記録媒体に記録されるプログラム命令は、本実施形態のために特別に設計されて構成されたものであるか、又はコンピュータソフトウェアの当業者に公知されて使用可能なものである。コンピュータ読み取り可能な記録媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク、及び磁気テープのような磁気媒体(magnetic media)、CD-ROM、DVDのような光記録媒体(optical media)、フロプティカルディスク(floptical disk)のような磁気-光媒体(magneto-optical media)、及びロム(ROM)、ラム(RAM)、フラッシュメモリなどのようなプログラム命令を格納して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例としては、コンパイラにより作られるような機械語コードだけではなく、インタプリタなどを用いてコンピュータにより実行される高級言語コードを含む。
【0099】
以上で説明したハードウェア装置は、本実施形態の動作を遂行するために1つ又は複数のソフトウェアモジュールとして作動するように構成されるか、又はその逆も同様である。
【0100】
以上のように、本実施形態を限定された図面により説明したが、当該技術分野における通常の知識を有する者であれば、これに基づいて多様な技術的修正及び変形を適用することができる。例えば、説明した技術が説明した方法とは異なる順序で遂行されるか、及び/又は説明したシステム、構造、装置、回路などの構成要素が説明した方法とは異なる形態で結合又は組み合わされるか、他の構成要素又は均等物により代替されるか又は置換されたとしても適切な結果が達成される。
【0101】
そのために、他の具現、他の実施形態、及び特許請求の範囲と均等なものなども特許請求の範囲に属する。
【0102】
したがって、本明細書に開示した実施形態は、本発明の技術思想を限定するためのものではなく説明するためのものであって、このような実施形態により本発明の技術思想の範囲が限定されるものではない。本発明の保護範囲は、特許請求の範囲により解釈されなければならず、それと均等な範囲内にある全ての技術思想は、本発明の権利範囲に含まれるものと解釈されるべきである。
【符号の説明】
【0103】
100 ロボット制御装置 110 プロセッサ
111、113、115、117 第1~第4プロセッサ
119 通信プロセッサ
120 メモリ
122 命令語
1000 コンピューティングシステム
1100 プロセッサ
1200 バス
1300 メモリ
1310 ROM
1320 RAM
1400 使用者インターフェース入力装置
1500 使用者インターフェース出力装置
1600 ストレージ
1700 ネットワークインターフェース