JP7009840B2 - 情報処理装置、情報処理方法及び対話制御システム - Google Patents

情報処理装置、情報処理方法及び対話制御システム Download PDF

Info

Publication number
JP7009840B2
JP7009840B2 JP2017165209A JP2017165209A JP7009840B2 JP 7009840 B2 JP7009840 B2 JP 7009840B2 JP 2017165209 A JP2017165209 A JP 2017165209A JP 2017165209 A JP2017165209 A JP 2017165209A JP 7009840 B2 JP7009840 B2 JP 7009840B2
Authority
JP
Japan
Prior art keywords
generation unit
web page
unit
information processing
text display
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.)
Active
Application number
JP2017165209A
Other languages
English (en)
Other versions
JP2019045937A (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 JP2017165209A priority Critical patent/JP7009840B2/ja
Priority to US16/114,361 priority patent/US11170051B2/en
Publication of JP2019045937A publication Critical patent/JP2019045937A/ja
Application granted granted Critical
Publication of JP7009840B2 publication Critical patent/JP7009840B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/313Selection or weighting of terms for indexing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、ウェブページを自動対話に適用する技術に関する。
対話形式で自動的にウェブページを読み上げるようにすれば、例えば多くのウェブページを提供するニュースサイトを活用して、幅広い分野に関して聴覚による情報提供を行える。
一般的に、ウェブページは、ブラウザによって表示されることを前提として作成されている。表示されたイメージに複数のテキスト表示領域が含まれる場合、閲覧者は、領域の配置や文字の大きさなども考慮して、興味に応じて読むべき領域を直感的に把握して、テキストを読み進める。
一方、自動対話において、ウェブページから抽出されたテキストをマシンターンにおいて自動的に読み上げる場合に、読み上げるテキストの順番が妥当でなければ、聞き手の理解を促すことにならない。
しかし、ウェブページから抽出されたテキストを読み上げる対話用の制御データを作成する準備段階で、作成者がその都度に聞き手の理解に配慮して読み上げる順を指示することは困難である。
特開2013-218627号公報 特開2004-303097号公報 特表2015-502603号公報 特開2012-027852号公報
本発明の目的は、一側面では、同種のウェブページを情報源とした自動対話を簡単に準備できるようにすることである。
一態様に係る情報処理装置は、(A)第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成する第1生成部と、(B)特性データに基づいて、第2ウェブページに含まれるテキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する第2生成部とを有する。
一側面としては、同種のウェブページを情報源とした自動対話を簡単に準備できるようになる。
図1は、対話制御テーブルの構成例を示す図である。 図2は、ウェブページの表示イメージ例を示す図である。 図3は、特性テーブルの構成例を示す図である。 図4は、フェーズを示す図である。 図5は、ネットワーク構成例を示す図である。 図6は、対話サーバのモジュール構成例を示す図である。 図7は、第1準備処理フローを示す図である。 図8は、領域名設定処理フローを示す図である。 図9は、操作画面の例を示す図である。 図10は、領域処理フローを示す図である。 図11は、領域名の入力ウィンドウの例を示す図である。 図12は、次候補設定処理(A)フローを示す図である。 図13は、テキスト表示領域間のドラッグ操作の例を示す図である。 図14は、契機文言設定処理(A)フローを示す図である。 図15は、契機文言の入力ウィンドウの例を示す図である。 図16は、契機文言設定処理(A)フローを示す図である。 図17は、第2準備処理(A)フローを示す図である。 図18は、第2準備処理(A)フローを示す図である。 図19は、選択条件設定処理(A)フローを示す図である。 図20は、選択条件設定処理(A)フローを示す図である。 図21は、提供処理(A)フローを示す図である。 図22は、ユーザ端末のモジュール構成例を示す図である。 図23は、対話処理フローを示す図である。 図24は、適用処理フローを示す図である。 図25は、適用処理フローを示す図である。 図26は、適用処理フローを示す図である。 図27は、既定テーブルの例を示す図である。 図28は、次候補設定処理(B)フローを示す図である。 図29は、契機文言設定処理(B)フローを示す図である。 図30は、次候補設定処理(C)フローを示す図である。 図31は、契機文言設定処理(C)フローを示す図である。 図32は、次候補設定処理(D)フローを示す図である。 図33は、選択条件設定処理(B)フローを示す図である。 図34は、実施の形態6における対話制御テーブルの例を示す図である。 図35は、第2準備処理(B)フローを示す図である。 図36は、第2準備処理(B)フローを示す図である。 図37Aは、第2準備処理(C)フローを示す図である。 図37Bは、第2準備処理(C)フローを示す図である。 図38は、提供処理(B)フローを示す図である。 図39Aは、第2準備処理(D)フロー例を示す図である。 図39Bは、第2準備処理(D)フロー例を示す図である。 図40は、コンピュータの機能ブロック図である。
[実施の形態1]
まず、ユーザ端末においてユーザとの自動対話の制御に用いる対話制御テーブルについて説明する。図1に、対話制御テーブルの構成例を示す。対話制御テーブルは、ユーザ端末が発話する内容(発話コンテンツ)を含む対話制御データの例である。
対話制御テーブルは、ヘッダにページURL(Uniform Resource Locator)を設定するためのフィールドを有している。ページURLは、対話制御テーブルの基礎となったウェブページの格納位置を示す。図2に、ページURLから取得されたウェブページの表示イメージの例を示す。このようなウェブページからテキストを抽出して発話内容として利用する。
対話制御テーブルは、発話内容に対応するレコードを有している。対話制御テーブルのレコードは、発話内容IDが設定されるフィールドと、テキストデータが設定されるフィールドと、領域名が設定されるフィールドと、選択条件が設定されるフィールドと、リンク先のフィールドとを有している。
発話内容IDは、発話内容を識別する。テキストデータは、発話内容に相当する。領域名は、当該テキストデータの抽出元となったテキスト表示領域の名前である。選択条件は、自動対話において当該発話内容が選択される条件である。選択条件が設定されるフィールドは、契機文言が設定されるフィールドと、次選択対象のフィールドと含んでいる。
契機文言は、ユーザの発言に含まれることを想定して、発話内容が選択される契機となるものである。次選択対象のフィールドには、当該テキストデータを読み上げたマシンターンの次のマシンターンにおいて読み上げられるテキストデータを特定する発話内容IDである。リンク先のフィールドには、抽出元のテキスト表示領域がクリックされた場合のリンク先のURLが設定される。
図示した1番目のレコードは、発話内容ID:T1で特定されるテキストデータ「クマの子供、映像公開」は、領域名がタイトルであるテキスト表示領域から抽出されたことを示している。更に、1番目のレコードは、自動対話におけるユーザの発言に「要約」又は「大まかに」の契機文言が含まれていた場合に、次のマシンターンにおいて発話内容ID:T2の発話内容が選択されることを示している。つまり、ユーザ端末が「クマの子供、映像公開」という音声を出力した後に、ユーザが「大まかに」と発言すれば、続けてユーザ端末が「動物園は、生後2ヶ月を迎えたクマの子供の映像を公開した。」という文を発することになる。
上述した対話制御テーブルは、ウェブページの他に、当該ウェブページの特性を示すテーブルを参照して生成される。図3に、特性テーブルの構成例を示す。特性テーブルは、特性データの例である。特性テーブルは、ヘッダにドメイン名を設定するためのフィールドを有している。ドメイン名は、ウェブページを提供するサイトを特定する。つまり、当該特性テーブルは、当該ドメイン名を含むURLから取得したウェブページに適用されることを示している。
特性テーブルは、発話内容を抽出するテキスト表示領域に対応するレコードを有している。特性テーブルのレコードは、領域名が設定されるフィールドと、タグ条件が設定されるフィールドと、契機文言が設定されるフィールドと、次候補のフィールドとを有している。
領域名は、発話内容を抽出する元となるテキスト表示領域の名前である。タグ条件は、当該テキスト表示領域に関する構成要素、つまり構造化文書における記述部分を区切る階層的タグによって特定される。契機文言は、当該テキスト表示領域から抽出されたテキストデータが音声出力される契機となる文言である。次候補のフィールドには、当該テキストデータの音声出力の次のマシンターンで選択される発話内容の元となるテキスト表示領域の名前が設定される。
図示した1番目のレコードは、Body > div#main > div#titleのタグで特定される構成要素は、タイトルという名前のテキスト表示領域に関する記述部分であることを示している。また、1番目のレコードは、このテキスト表示領域から抽出されるテキストデータは、「話題」と言う文言を含むユーザの発言の後に音声出力することに適していることを示している。更に、1番目のレコードは、このテキスト表示領域から抽出される内容を発した後に、概要のテキスト表示領域から抽出される発話内容又は本文のテキスト表示領域から抽出される発話内容に移ることを想定していることを示している。
図4に、本実施の形態におけるフェーズを示す。また、図5に、ネットワーク構成例を示す。この例で、対話サーバ501、Webサーバ503及びユーザ端末505は、いずれもインターネットに接続している。
第1準備フェーズ(S401)では、対話サーバ501において第1準備処理を行う。第1準備処理では、上述した特性テーブル(図3)が生成される。第1準備処理は、例えば新たに利用するサイトを設定した場合に起動される。或いは、対象のサイトにおけるデータ更新を検出した場合に第1準備処理を起動するようにしてもよい。また、定期的に第1準備処理を起動するようにしてもよい。
第2準備フェーズ(S403)では、対話サーバ501において第2準備処理を行う。第2準備処理では、上述した対話制御テーブル(図1)が生成される。第2準備フェーズ(S403)は、第1準備フェーズ(S401)に直ぐに続いてもよく、第1準備フェーズ(S401)に続かなくてもよい。第2準備処理は、対象のサイトにおけるデータ更新を検出した場合に起動されるようにしてもよい。また、定期的に第2準備処理を起動するようにしてもよい。或いは、対話フェーズ(S405)の直前に、第2準備処理を起動するようにしてもよい。
対話フェーズ(S405)では、ユーザ端末505が対話サーバ501から対話制御テーブル(図1)を取得して、ユーザとの自動対話を行う。
図6に、対話サーバ501のモジュール構成例を示す。対話サーバ501は、取得部601、第1生成部603、第2生成部605及び提供部607を有する。
取得部601は、サイト内のウェブページを取得する。取得部601は、ウェブスクレイピングの技術を用いるようにしてもよい。第1生成部603は、特性テーブルを生成する。第2生成部605は、対話制御テーブルを生成する。提供部607は、ユーザ端末505に対話制御テーブルを提供する。提供部607は、受信部611、特定部613及び送信部615を含む。受信部611は、ユーザ端末505から対話制御テーブルの要求を受信する。特定部613は、要求に応じて対話制御テーブルを特定する。送信部615は、対話制御テーブルをユーザ端末505宛に送信する。
対話サーバ501は、更に、DOM(Document Object Model)解析部621、形態素解析部623及びブラウザ625を有する。DOM解析部621は、DOM解析処理を行う。形態素解析部623は、形態素解析処理を行う。ブラウザ625は、構造化文書を解析してイメージを表示する。
対話サーバ501は、更に、検証部631及び修正部633を有する。検証部631は、生成した対話制御テーブルをチェックして、対話制御テーブルの生成が失敗したか否かを判定する。修正部633は、特性テーブルを修正する。
対話サーバ501は、更に、サイト記憶部641、ウェブページ記憶部643、特性データ記憶部645、制御データ記憶部647、単語データベース649、既定テーブル記憶部651及びクリック履歴記憶部653を有する。サイト記憶部641は、ウェブページ取得の対象となるサイトのドメイン名を記憶する。ウェブページ記憶部643は、ウェブページを記憶する。特性データ記憶部645は、特性テーブルを記憶する。制御データ記憶部647は、対話制御テーブルを記憶する。単語データベース649は、単語間の関連度、単語の特徴度及び単語の分類などに関するデータを提供する。既定テーブル記憶部651は、既定テーブルを記憶する。既定テーブルについては、図27を用いて後述する。クリック履歴記憶部653は、テキスト表示領域がクリックされた履歴(クリック履歴)を記憶する。
上述した取得部601、第1生成部603、第2生成部605、提供部607、受信部611、特定部613、送信部615、DOM解析部621、形態素解析部623、検証部631及び修正部633は、ハードウエア資源(例えば、図40)と、以下で述べる処理を例えばCPU(Central Processing Unit)に実行させるプログラムとを用いて実現される。
上述したサイト記憶部641、ウェブページ記憶部643、特性データ記憶部645、制御データ記憶部647、単語データベース649、既定テーブル記憶部651及びクリック履歴記憶部653は、ハードウエア資源(例えば、図40)を用いて実現される。
続いて、第1準備処理について説明する。図7に、第1準備処理フローを示す。取得部601は、サイト記憶部641に記憶されているドメイン名に基づいて、所定サイトからサンプルとなるウェブページを取得する(S701)。サンプルとなるウェブページは、任意である。ウェブページは、例えばHTML(HyperText Markup Language)文書やXML(eXtensible Markup Language)文書のような構造化文書の形式であるものとする。
第1生成部603は、ヘッダにドメイン名を設定した新しい特性テーブルを生成する(S703)。この段階で、特性テーブルには、未だレコードが設けられていない。
第1生成部603は、DOM解析部621によるDOM解析処理を実行させる(S705)。DOM解析部621は、当該ウェブページに関するDOM解析処理において、構造化されたタグに基づいて、構造化文書であるウェブページに含まれるDOM要素を特定する。DOM要素は、構成要素の例である。
第1生成部603は、テキスト表示領域に相当するDOM要素(テキスト表示に関する記述を含む構成要素)を特定する(S707)。そして、第1生成部603は、特性テーブルに当該テキスト表示領域に対応するレコードを設ける(S709)。
第1生成部603は、当該レコードに、構成要素を特定するタグ条件を設定する(S711)。そして、第1生成部603は、領域名設定処理を実行する(S713)。第1生成部603は、領域名設定処理において、S709で設けられたレコードに領域名を設定する。
図8に、領域名設定処理フローを示す。第1生成部603は、ブラウザ625から、展開されたウェブページのイメージを取得する(S801)。第1生成部603は、イメージにおけるテキスト表示領域に太枠を重ねて、操作画面を表示する(S803)。図9に、このとき表示される操作画面の例を示す。
第1生成部603は、テキスト表示領域内のクリック操作を検出したか否かを判定する(S805)。テキスト表示領域内のクリック操作を検出したと判定した場合には、第1生成部603は、当該テキスト表示領域に対応するレコードに領域名が設定されているか否かを判定する(S807)。当該テキスト表示領域に対応するレコードに領域名が既に設定されていると判定した場合には、S805の処理に戻る。
一方、当該テキスト表示領域に対応するレコードに未だ領域名が設定されていないと判定した場合には、第1生成部603は、領域処理を実行する(S809)。第1生成部603は、領域処理において、クリックされたテキスト表示領域に関する領域名を受け付ける。
図10に、領域処理フローを示す。第1生成部603は、領域名の入力ウィンドウを表示する(S1001)。図11に、領域名の入力ウィンドウの例を示す。
第1生成部603は、ユーザ操作によって入力された領域名を受け付けて、入力ウィンドウを消去する(S1003)。第1生成部603は、受け付けた領域名を、当該テキスト表示領域に対応するレコードに設定する(S1005)。そして、第1生成部603は、テキスト表示領域に網掛けパターンを重ねて表示する(S1007)。領域処理を終えると、呼び出し元の領域名設定処理に復帰する。
図8の説明に戻る。領域処理を終えると、S805の処理に戻る。
一方、S805においてテキスト表示領域内のクリック操作を検出していないと判定した場合には、第1生成部603は、取消ボタンをクリックされたか否かを判定する(S811)。取消ボタンをクリックされたと判定した場合には、第1生成部603は、特性テーブルに設定されている各領域名をクリアし(S813)。各網掛けパターンの表示を終える(S815)。そして、S805に示した処理に戻って、上述した処理を繰り返す。
一方、取消ボタンをクリックされていないと判定した場合には、第1生成部603は、確定ボタンをクリックされたか否かを判定する(S817)。確定ボタンをクリックされていないと判定した場合には、S805に示した処理に戻って、上述した処理を繰り返す。
一方、確定ボタンをクリックされたと判定した場合には、第1生成部603は、領域名が設定されていないレコードを削除する(S819)。以降、領域名が設定されたテキスト表示領域は発話内容を抽出する対象として選択されたものとして扱われ、それ以外のテキスト表示領域は発話内容を抽出する対象として選択されなかったものとして扱われる。
領域名設定処理を終えると、呼び出し元の第1準備処理に復帰する。
図7の説明に戻る。第1生成部603は、次候補設定処理を実行する(S715)。第1生成部603は、次候補設定処理において、S709で設けられたレコードに次候補の領域名を設定する。
本実施の形態では、次候補設定処理(A)が実行される。図12に、次候補設定処理(A)フローを示す。第1生成部603は、展開されたウェブページのイメージを取得する(S1201)。第1生成部603は、イメージに含まれるテキスト表示領域のうち、先に選択されたテキスト表示領域に太枠を重ねて、操作画面を表示する(S1203)。先に表示した操作画面を利用する場合には、S1201及びS1203の処理を省くようにしてもよい。
第1生成部603は、或るテキスト表示領域から別のテキスト表示領域に到るドラッグ操作を検出したか否かを判定する(S1205)。図13に、テキスト表示領域間のドラッグ操作の例を示す。矢印1301は、ドラッグ操作における検出点の軌跡を表している。この例で、1番目のテキスト表示領域が開始点を含み、2番目のテキスト表示領域が終了点を含む。
テキスト表示領域間のドラッグ操作を検出したと判定した場合には、第1生成部603は、開始点を含むテキスト表示領域に対応するレコードを特定する(S1207)。そして、第1生成部603は、当該レコードの次候補のフィールドに、終了点を含むテキスト表示領域の領域名を設定する(S1209)。
一方、S1205において、テキスト表示領域間のドラッグ操作を検出していないと判定した場合には、第1生成部603は、取消ボタンをクリックされたか否かを判定する(S1211)。取消ボタンをクリックされたと判定した場合には、第1生成部603は、第1生成部603は、特性テーブルにおける各次候補のフィールドをクリアする(S1213)。そして、S1205に示した処理に戻って、上述した処理を繰り返す。
一方、取消ボタンをクリックされなかったと判定した場合には、第1生成部603は、確定ボタンをクリックされたか否かを判定する(S1215)。確定ボタンをクリックされなかったと判定した場合には、S1205に示した処理に戻って、上述した処理を繰り返す。一方、確定ボタンをクリックされたと判定した場合には、次候補設定処理(A)を終え、呼び出し元の第1準備処理に復帰する。
図7の説明に戻る。第1生成部603は、契機文言設定処理を実行する(S717)。第1生成部603は、契機文言設定処理において、S709で設けられたレコードに契機文言を設定する。
本実施の形態では、契機文言設定処理(A)が実行される。図14に、契機文言設定処理(A)フローを示す。第1生成部603は、展開されたウェブページのイメージを取得する(S1401)。第1生成部603は、イメージに含まれるテキスト表示領域のうち、選択されたテキスト表示領域に太枠を重ねて、操作画面を表示する(S1403)。先に表示した操作画面を利用する場合には、S1401及びS1403の処理を省くようにしてもよい。
第1生成部603は、特性テーブルのレコードを1つ特定する(S1405)。第2生成部605は、例えば先頭から順番にレコードを1つ特定する。
第1生成部603は、当該レコードで特定されるテキスト表示領域に重ねて、契機文言の入力ウィンドウを表示する(S1407)。図15に、契機文言の入力ウィンドウの例を示す。
第1生成部603は、ユーザ操作によって入力された契機文言を受け付けて、入力ウィンドウを消去する(S1409)。第1生成部603は、受け付けた契機文言を、当該レコードに設定する(S1411)。第1生成部603は、当該テキスト表示領域に網掛けパターンを重ねて表示する(S1413)。
第1生成部603は、特性テーブルにおいて、未特定のレコードがあるか否かを判定する(S1415)。未特定のレコードがあると判定した場合には、S1405に示した処理に戻って、上述した処理を繰り返す。一方、未特定のレコードがないと判定した場合には、端子Aを介して、図16に示したS1601の処理に移る。
第1生成部603は、取消ボタンをクリックされたか否かを判定する(S1601)。取消ボタンをクリックされたと判定した場合には、第1生成部603は、特性テーブルに設定されている各契機文言をクリアし(S1603)、各網掛けパターンの表示を終える(S1605)。そして、端子Bを介して、図14に示したS1405の処理に戻る。
一方、取消ボタンをクリックされていないと判定した場合には、第1生成部603は、確定ボタンをクリックされたか否かを判定する(S1607)。確定ボタンをクリックされていないと判定した場合には、S1601の処理に戻る。
一方、確定ボタンをクリックされたと判定した場合には、契機文言設定処理を終え、呼び出し元の第1準備処理に復帰する。
図7に示すように、契機文言設定処理から復帰すると、第1準備処理を終える。この段階で、所定サイトに関する特性テーブルが完成する。
続いて、第2準備処理について説明する。本実施の形態では、第2準備処理(A)が実行される。図17に、第2準備処理(A)フローを示す。取得部601は、サイト内のウェブページを1つ取得する(S1701)。取得するウェブページの範囲は、任意である。取得部601は、サイトで保持するすべてのウェブページを取得するようにしてもよい。或るいは、取得部601は、一部のウェブページを取得するようにしてもよい。
第2生成部605は、ヘッダにページURLを設定した新しい対話制御テーブルを生成する(S1703)。この段階で、対話制御テーブルには、未だレコードが設けられていない。
第2生成部605は、特性テーブルのレコードを1つ特定する(S1705)。第2生成部605は、例えば先頭から順番にレコードを1つ特定する。
第2生成部605は、S1701で取得したウェブページから、当該レコードに設定されているタグ条件に合致する構成要素を抽出する(S1707)。このとき、ウェブページに関してDOM解析部621によるDOM解析処理を行って、第2生成部605は、DOM解析処理の結果に基づいて、タグ条件に合致するDOM要素を特定するようにしてもよい。
第2生成部605は、対話制御テーブルに当該構成要素に対応するレコードを設ける(S1709)。第2生成部605は、発話内容IDを割り当て、当該レコードに設定する(S1711)。
次に、第2生成部605は、当該構成要素に含まれるテキストデータを抽出する(S1713)。この抽出されるテキストデータは、当該構成要素におけるテキスト表示の記述に従って表示されるテキストに相当する。端子Cを介して、図18に示したS1801の処理に移る。
第2生成部605は、図17のS1709で設けた対話制御テーブルのレコードに、抽出したテキストデータを設定する(S1801)。更に、第2生成部605は、S1705で特定した特性テーブルのレコードに設定されている領域名を、対話制御テーブルの当該レコードに設定する(S1803)。
次に、第2生成部605は、当該構成要素にリンク先のURLが含まれるか否かを判定する(S1805)。例えば、領域名:関連ニュースの構成要素の場合には、当該ニュースのウェブページへリンクするためのURLが記述されている。
当該構成要素にリンク先のURLが含まれると判定した場合には、第2生成部605は、図17のS1709で設けた対話制御テーブルのレコードにおけるリンク先のフィールドに、当該URLを設定する(S1807)。S1805において、当該構成要素にリンク先のURLが含まれないと判定した場合には、そのままS1809の処理に移る。
第2生成部605は、特性テーブルにおいて、未特定のレコードがあるか否かを判定する(S1809)。未特定のレコードがあると判定した場合には、端子Dを介して、図17に示したS1705の処理に戻る。
一方、未特定のレコードがないと判定した場合には、第2生成部605は、選択条件設定処理を実行する(S1811)。第2生成部605は、選択条件設定処理を実行して、選択条件を設定する。
本実施の形態では、選択条件設定処理(A)が実行される。図19に、選択条件設定処理(A)フローを示す。第2生成部605は、対話制御テーブルのレコードを1つ特定する(S1901)。第2生成部605は、例えば先頭から順番にレコードを1つ特定する。その場合、最初に発話内容ID:T1のレコードが特定される。
第2生成部605は、当該レコードに設定されている領域名を読む(S1903)。例えば発話内容ID:T1のレコードの場合には、領域名:タイトルが読まれる。
第2生成部605は、特性テーブルから当該領域名に対応する次候補を読む(S1905)。具体的には、第2生成部605は、当該領域名が設定されているレコードを特定し、当該レコードの次候補のフィールドに設定されている領域名を読む。例えば領域名:タイトルの場合、領域名の「概要」及び「本文」が読まれる。そして、端子Fを介して、図20に示したS2001の処理に移る。
第2生成部605は、S1905で読んだ次候補の領域名のうち、未処理の領域名があるか否かを判定する(S2001)。未処理の次候補(領域名)があると判定した場合には、第2生成部605は、未処理の次候補(領域名)を1つ特定する(S2003)。そして、第2生成部605は、特性テーブルにおいて、当該次候補(領域名)が設定されているレコードを特定する(S2005)。例えば、次候補の領域名:概要が特定された場合には、図3に示した特性テーブルの第2レコードが特定される。
第2生成部605は、当該レコードに設定されている契機文言を読み(S2007)、S1901で特定した対話制御テーブルのレコードに当該契機文言を設定する(S2009)。例えば図3に示した特性テーブルの第2レコードに設定されている契機文言:「要約」及び「大まかに」が、図1に示した対話制御テーブルの第1レコードに設定される。
第2生成部605は、対話制御テーブルにおいて、S2003で特定した次候補(領域名)に対応する発話内容IDを特定する(S2011)。例えば次候補(領域名)が概要であれば、図1に示した対話制御テーブルにおいて領域名のフィールドに概要が設定されている第2レコードの発話内容ID:T2が特定される。
そして、第2生成部605は、S1901で特定した対話制御テーブルのレコードにおいて、S2009で設定した契機文言に対応する次選択対象のフィールドに、当該発話内容IDを設定する(S2013)。そして、S2001に示した処理に戻って、上述した処理を繰り返す。例えば、契機文言:「要約」及び「大まかに」に対応する次選択対象として発話内容ID:T2が設定される。
S2001において、未処理の次候補(領域名)がないと判定した場合には、第2生成部605は、対話制御テーブルにおいて、未特定のレコードがあるか否かを判定する(S2015)。未特定のレコードがあると判定した場合には、端子Gを介して、図19に示したS1901の処理に戻る。
一方、対話制御テーブルにおいて、未特定のレコードがないと判定した場合には、選択条件設定処理を終え、呼び出し元の第2準備処理に復帰する。
図18の説明に戻る。選択条件設定処理から復帰すると、第2生成部605は、未取得のウェブページがあるか否かを判定する(S1813)。未取得のウェブページがあると判定した場合には、端子Eを介して、図17に示したS1701の処理に戻る。
一方、未取得のウェブページがないと判定した場合には、第2準備処理を終える。この段階で、所定サイトのウェブページに基づく対話制御テーブルの生成が完了する。
続いて、対話フェーズ(S405)における対話サーバ501の処理について説明する。
対話フェーズ(S405)において、提供部607は、提供処理を実行する。本実施の形態では、提供処理(A)が実行される。図21に、提供処理(A)フローを示す。受信部611は、ユーザ端末505から対話制御テーブルの要求を受信する(S2101)。上述した通り、対話制御テーブルの要求をテーブル要求という。テーブル要求には、文字列が付加されている場合と、ページURLが付加されている場合と、文字列とページURLとのいずれも付加されていない場合があるものとする。
特定部613は、受信したテーブル要求に文字列が付加されているか否かを判定する(S2103)。当該テーブル要求に文字列が付加されていると判定した場合には、特定部613は、当該文字列との関連度が高い対話制御テーブルを特定する(S2105)。例えば、特定部613は、単語データベース649を参照して当該文字列に含まれる特徴語を特定し、当該特徴語と関連度の高い単語を含むテキストデータを有する対話制御テーブルを選択する。
一方、当該テーブル要求に文字列が付加されていないと判定した場合には、特定部613は、当該テーブル要求にページURLが付加されているか否かを判定する(S2107)。当該テーブル要求にページURLが付加されていると判定した場合には、特定部613は、ページURLに対応する対話制御テーブルを特定する(S2109)。
一方、当該テーブル要求にページURLが付加されていないと判定した場合には、特定部613は、推奨する対話制御テーブルを特定する(S2111)。推奨する対話制御テーブルを特定する方法は、任意である。例えば、最新の対話制御テーブルを推奨するようにしてもよい。
送信部615は、特定した対話制御テーブルを要求元であるユーザ端末505宛に送信する(S2113)。そして、S2101に示した処理に戻って、上述した処理を繰り返す。
続いて、対話フェーズにおけるユーザ端末505の動作について説明する。図22に、ユーザ端末505のモジュール構成例を示す。ユーザ端末505は、音声入力部2201、音声認識部2203、対話制御部2205、音声合成部2207及び音声出力部2209を有する。
音声入力部2201は、ユーザ音声を入力する。音声認識部2203は、ユーザ音声を認識してテキストを出力する。対話制御部2205は、ユーザとの自動対話を制御する。対話制御部2205は、送信部2221、受信部2223及び適用部2225を有する。送信部2221は、テーブル要求を送信する。受信部2223は、対話制御テーブルを受信する。適用部2225は、受信した対話制御テーブルに基づく自動対話を行う。音声合成部2207は、テキストに基づいて人工音声を合成する。音声出力部2209は、合成された人工音声を出力する。
上述した音声入力部2201、音声認識部2203、対話制御部2205、音声合成部2207、音声出力部2209、送信部2221、受信部2223及び適用部2225は、ハードウエア資源(例えば、図40)と、以下で述べる処理を例えばCPUに実行させるプログラムとを用いて実現される。
対話制御部2205による対話処理について説明する。図23に、対話処理フローを示す。音声認識部2203は、音声入力部2201で入力した音声について音声認識処理を実行し、対話制御部2205は、音声認識部2203からユーザ発言の文字列を取得する(S2301)。
送信部2221は、ユーザ発言の文字列を付加したテーブル要求を、対話サーバ501宛に送信する(S2303)。
受信部2223は、取得部601から対話制御テーブルを受信すると(S2305)、適用部2225は、適用処理を実行する(S2307)。適用部2225は、適用処理において、対話制御テーブルを適用した自動対話を行い、更に次の対話制御テーブルを取得部601に求める処理も行う。
図24に、適用処理フローを示す。適用部2225は、対話制御テーブルにおける1番目のレコードを特定する(S2401)。この例では、1番目の発話内容からマシン発話を開始するが、1番目以外の発話内容からマシン発話を開始するようにしてもよい。つまり、最初に特定するレコードを他の方法で決めるようにしてもよい。
適用部2225は、当該レコードに設定されているテキストデータを読む(S2403)。適用部2225は、当該テキストデータに基づいて音声合成部2207による音声合成処理を実行し、合成された人工音声を音声出力部2209において出力する(S2405)。そして、端子Hを介して、図25に示したS2501の処理に移る。
音声認識部2203は、音声入力部2201で入力した音声について音声認識処理を実行し、適用部2225は、音声認識部2203からユーザ発言の文字列を取得する(S2501)。
適用部2225は、対象となっている対話制御テーブルのレコードに設定されている契機文言を読む(S2503)。そして、適用部2225は、ユーザ発言の文字列にいずれかの契機文言が含まれているか否かを判定する(S2505)。
ユーザ発言の文字列にいずれかの契機文言が含まれていると判定した場合には、適用部2225は、当該契機文言に対応する次選択対象の発話内容IDを特定する(S2507)。そして、適用部2225は、当該発話内容IDのレコードに設定されているテキストデータを読む(S2509)。そして、適用部2225は、当該テキストデータに基づいて音声合成部2207による音声合成処理を実行し、音声出力部2209において人工音声を出力する(S2511)。
そして、S2501に示した処理に戻って、上述した処理を繰り返す。以降のS2503の処理においては、S2507で特定された発話内容IDのレコードを対象として処理を行うようにする。
S2505において、ユーザ発言の文字列にいずれの契機文言も含まれていないと判定した場合には、端子Iを介して、図26に示したS2601の処理に移る。
適用部2225は、ユーザ発言の文字列に進行指示の文言が含まれているか否かを判定する(S2601)。進行指示の文言は、例えば「続けて」又は「進んで」のような文言である。
ユーザ発言の文字列に進行指示の文言が含まれていると判定した場合には、適用部2225は、対象となっている対話制御テーブルのレコードにリンク先のURLが設定されているか否かを判定する(S2603)。対象のレコードにリンク先のURLが設定されていると判定した場合には、適用部2225は、当該リンク先のURL(ページURLに相当する)を付加したテーブル要求を対話サーバ501宛に送信する(S2605)。そして、適用処理を終えて、呼び出し元の対話処理に復帰する。
一方、S2601においてユーザ発言の文字列に進行指示の文言が含まれていないと判定した場合及びS2603において対象のレコードにリンク先のURLが設定されていないと判定した場合には、適用部2225は、ユーザ発言の文字列を付加したテーブル要求を対話サーバ501宛に送信する(S2607)。そして、適用処理を終えて、呼び出し元の対話処理に復帰する。
図23の説明に戻る。適用処理を終えると、S2305に示した処理に戻って、上述した処理を繰り返す。
本実施の形態によれば、同種のウェブページを情報源とした自動対話を簡単に準備できる。
また、特性テーブルに基づいて対話制御テーブルに契機文言を設定するので、聞き手の興味に応じたマシン発話に資する。
[実施の形態2]
本実施の形態では、予め用意されている既定テーブルを参照して、領域名に応じて自動的に次候補及び契機文言を設定する例について説明する。
図27に、既定テーブルの例を示す。既定テーブルは、想定される領域名に対応するレコードを有している。既定テーブルのレコードは、領域名が設定されるフィールドと、契機文言が設定されるフィールドと、次候補のフィールドとを有している。既定テーブルの各レコードは、領域名と契機文言とを対応付けていると共に、領域名と次候補となる領域名とを対応付けている。これらの対応付けは、想定に基づくものであってもよい。
本実施の形態では、次候補設定処理(A)に代えて、次候補設定処理(B)を実行する。図28に、次候補設定処理(B)フローを示す。第1生成部603は、特性テーブルのレコードを1つ特定する(S2801)。
第1生成部603は、当該レコードに設定されている領域名を読み(S2803)、既定テーブルから当該領域名に対応する次候補の領域名を取得する(S2805)。そして、第1生成部603は、取得した次候補の領域名を当該レコードの次候補のフィールドに設定する(S2807)。
第1生成部603は、特性テーブルにおいて、未特定のレコードがあるか否かを判定する(S2809)。未特定のレコードがあると判定した場合には、S2801に示した処理に戻って、上述した処理を繰り返す。
一方、未特定のレコードがないと判定した場合には、次候補設定処理(B)を終え、呼び出し元の第1準備処理に復帰する。
また、本実施の形態では、契機文言設定処理(A)に代えて、契機文言設定処理(B)を実行する。図29に、契機文言設定処理(B)フローを示す。第1生成部603は、特性テーブルのレコードを1つ特定する(S2901)。
第1生成部603は、当該レコードに設定されている領域名を読み(S2903)、既定テーブルから当該領域名に対応する契機文言を取得する(S2905)。そして、第1生成部603は、取得した契機文言を当該レコードの次候補に設定する(S2907)。
第1生成部603は、特性テーブルにおいて、未特定のレコードがあるか否かを判定する(S2909)。未特定のレコードがあると判定した場合には、S2901に示した処理に戻って、上述した処理を繰り返す。
一方、未特定のレコードがないと判定した場合には、契機文言設定処理(B)を終え、呼び出し元の第1準備処理に復帰する。
本実施の形態によれば、領域名に応じて自動的に次候補を設定するので、ユーザ操作によって次候補を設定する手間が省ける。
また、領域名に応じて自動的に契機文言を設定するので、ユーザ操作によって契機文言を設定する手間が省ける。
[実施の形態3]
本実施の形態では、他のサイトに関する特性テーブルを参照して、領域名に応じて自動的に次候補の領域名及び契機文言を設定する例について説明する。
本実施の形態では、次候補設定処理(A)に代えて、次候補設定処理(C)を実行する。図30に、次候補設定処理(C)フローを示す。第1生成部603は、特性テーブルのレコードを1つ特定する(S3001)。
第1生成部603は、当該レコードに設定されている領域名を読み(S3003)、他の特性テーブルから当該領域名に対応する次候補の領域名を取得する(S3005)。そして、第1生成部603は、取得した次候補の領域名を当該レコードの次候補のフィールドに設定する(S3007)。
第1生成部603は、特性テーブルにおいて、未特定のレコードがあるか否かを判定する(S3009)。未特定のレコードがあると判定した場合には、S3001に示した処理に戻って、上述した処理を繰り返す。
一方、未特定のレコードがないと判定した場合には、次候補設定処理(C)を終え、呼び出し元の第1準備処理に復帰する。
また、本実施の形態では、契機文言設定処理(A)に代えて、契機文言設定処理(C)を実行する。図31に、契機文言設定処理(C)フローを示す。第1生成部603は、特性テーブルのレコードを1つ特定する(S3101)。
第1生成部603は、当該レコードに設定されている領域名を読み(S3103)、他の特性テーブルから当該領域名に対応する契機文言を取得する(S3105)。そして、第1生成部603は、取得した契機文言を当該レコードの次候補に設定する(S3107)。
第1生成部603は、特性テーブルにおいて、未特定のレコードがあるか否かを判定する(S3109)。未特定のレコードがあると判定した場合には、S3101に示した処理に戻って、上述した処理を繰り返す。
一方、未特定のレコードがないと判定した場合には、契機文言設定処理(C)を終え、呼び出し元の第1準備処理に復帰する。
本実施の形態によれば、領域名に応じて自動的に次候補を設定するので、ユーザ操作によって次候補を設定する手間が省ける。
また、領域名に応じて自動的に契機文言を設定するので、ユーザ操作によって契機文言を設定する手間が省ける。
[実施の形態4]
本実施の形態では、テキスト表示領域に対するクリック履歴に基づいて次候補を設定する例について説明する。
本実施の形態では、次候補設定処理(A)に代えて、次候補設定処理(D)を実行する。図32に、次候補設定処理(D)フローを示す。第1生成部603は、クリック履歴記憶部653に基づいて、テキスト表示領域のうち、クリック回数が最多のものを選択する(S3201)。
第1生成部603は、特性テーブルのレコードのうち、当該テキスト表示領域以外のレコードにおける次候補のフィールドに当該テキスト表示領域の領域名を設定する(S3203)。そして、次候補設定処理(D)を終え、呼び出し元の第1準備処理に復帰する。次候補設定処理(D)は、次候補設定処理(A)乃至(C)のいずれかと併せて実行されるようにしてもよい。
本実施の形態によれば、次候補を設定する手間が省ける。
[実施の形態5]
本実施の形態では、発話内容に基づいて契機文言を設定する例について説明する。
本実施の形態では、選択条件設定処理(A)に代えて、選択条件設定処理(B)を実行する。図33に、選択条件設定処理(B)フローを示す。S1901の処理は、図19の場合と同様である。
第2生成部605は、形態素解析処理によって、S1901で特定されたレコードに設定されているテキストデータに含まれる単語を特定する(S3301)。
第2生成部605は、特定した単語の中からキーワードを選択する(S3303)。例えば、第2生成部605は、単語データベース649を参照して特徴度の高い単語を選択する。
第2生成部605は、当該キーワードをS1901で特定されたレコードにおける契機文言のフィールドに設定する(S3305)。
その他の処理は、選択条件設定処理(A)の場合と同様である。
本実施の形態によれば、発話内容に基づいて契機文言を特定するので、発話内容に即した契機文言を設定することができる。
[実施の形態6]
本実施の形態では、構成要素から抽出されたテキストデータを分割して、分割されたテキストデータに前後関係に基づく契機文言を設定する例について説明する。
図34に、実施の形態6における対話制御テーブルの例を示す。この例では、本文のテキストデータ「動物園によると、クマの子供は、体長約××センチ、体重約××××グラムになった。公開された映像では、母親に抱かれ、順調に成長する様子がうかがえる。飼育員は、『母子ともに健康である。』と話している。」が所定の文字数を超えていると判定された。そして、本文のテキストデータは、所定の文字数以下のブロック「動物園によると、クマの子供は、体長約××センチ、体重約××××グラムになった。公開された映像では、母親に抱かれ、順調に成長する様子がうかがえる。」とブロック「飼育員は、『母子ともに健康である。』と話している。」に分割されている。
分割されたブロック、つまり部分的なテキストデータは、1つの発話内容として扱われる。但し、ブロックの前後関係を考慮した選択条件が設定されている。例えば、ユーザが「次に」と発言すれば、次のブロックが読み上げられるようになっている。また、ユーザが「前に」と発言すれば、前のブロックが読み上げられるようになっている。
本実施の形態では、第2準備処理(A)に代えて、第2準備処理(B)を実行する。図35に、第2準備処理(B)フローを示す。S1701乃至S1707の処理は、図17の場合と同様である。
第2生成部605は、S1707で抽出された構成要素に対応するレコードの数を特定する(S3501)。具体的には、第2生成部605は、当該構成要素に含まれるテキストデータの文字数が所定値を超える場合に、当該所定値以下の文字数のブロックに、テキストデータを文単位で分割する。そして、第2生成部605は、分割したブロックの数をレコードの数とする。
レコードの数が2つ以上である場合、S1709の処理において、第2生成部605は、当該数のレコードを設けるようにする。
レコードの数が2つ以上である場合、S1711の処理において、第2生成部605は、各レコードに異なる発話内容IDを割り当てるようにする。
レコードの数が2つ以上である場合、S1713の処理において、第2生成部605は、抽出したテキストデータから分割されたブロックを各レコードに割り当てる。
図36の説明に移る。レコードの数が2つ以上である場合、S1801の処理において、第2生成部605は、割り当てたブロックを各レコードにおけるテキストデータのフィールドに設定する。
レコードの数が2つ以上である場合、S1803の処理において、第2生成部605は、各レコードに同様の領域名を設定する。尚、第2生成部605は、領域名にブロックの順番を表す数字を付加するようにしてもよい。
レコードの数が2つ以上である場合、S1811の処理において、各レコードに同様の選択条件を設定する。
同じ領域名のレコードの数が2つ以上である場合、第2生成部605は、選択条件を追加する(S3601)。
具体的には、第2生成部605は、最後のレコード以外のレコードについて、選択条件を追加する。追加される選択条件の契機文言には、例えば「次に」が設定される。また、次選択対象のフィールドには、次レコードを特定する発話内容IDが設定される。第2生成部605は、更に最初のレコード以外のレコードについて、選択条件を追加する。追加される選択条件の契機文言には、例えば「前に」が設定される。また、次選択対象のフィールドには、前レコードを特定する発話内容IDが設定される。
S1813の処理は、図18の場合と同様である。
本実施の形態によれば、長いテキストを段階的にマシン発話できるようになる。
[実施の形態7]
本実施の形態では、リンク先のURLからウェブページを取得して、対話制御テーブルを生成する例について説明する。
本実施の形態では、第2準備処理(A)に代えて、第2準備処理(C)を実行する。第2準備処理(C)において、図17と同様の処理を行う。
続いて、図37Aに示したS1801乃至S1811の処理を行う。S1801乃至S1811の処理は、図18の場合と同様である。S1811の処理を終えると、端子Jを介して、図37Bに示したS3701の処理に移る。
第2生成部605は、S1807で設定したリンク先のURLと同じページURLの対話制御テーブルがあるか否かを判定する(S3701)。リンク先のURLと同じページURLの対話制御テーブルがあると判定した場合には、S1813の処理に移る。
一方、リンク先のURLと同じページURLの対話制御テーブルがないと判定した場合には、取得部601がリンク先のURLからウェブページを取得して、第2生成部605は、リンク先のURLに対応する対話制御テーブルを生成する(S3703)。対話制御テーブルを生成する処理は、図17のS1703乃至図18のS1811に示した処理と同様である。
本実施の形態によれば、リンク先のURLから取得したウェブページに関する対話制御テーブルを用意するので、自動対話における話題の展開に資する。
[実施の形態8]
本実施の形態では、ユーザ端末505が指定したページURLからウェブページを取得して、対話制御テーブルを生成する例について説明する。
本実施の形態では、提供処理(A)に代えて、提供処理(B)を実行する。図38に、提供処理(B)フローを示す。S2101乃至S2107の処理は、図21の場合と同様である。
S2107において、S2101で受信したテーブル要求にページURLが付加されていると判定した場合には、特定部613は、ページURLに対応する対話制御テーブルがあるか否かを判定する(S3801)。ページURLに対応する対話制御テーブルがあると判定した場合には、S2109の処理に移る。S2109の処理は、図21の場合と同様である。
一方、ページURLに対応する対話制御テーブルがないと判定した場合には、取得部601がページURLからウェブページを取得して、第2生成部605は、対話制御テーブルを生成する(S3803)。対話制御テーブルを生成する処理は、図17のS1703乃至図18のS1811に示した処理と同様である。そして、S2113において、送信部615は、生成した対話制御テーブルを要求元であるユーザ端末505宛に送信する。
S2111の処理は、図21の場合と同様である。
本実施の形態によれば、指定されたページURLに従って対話制御テーブルを用意するので、話題の展開に資する。
[実施の形態9]
本実施の形態では、対話制御テーブルの生成が失敗したか否かを判定して、対話制御テーブルの生成が失敗したと判定した場合に、特性テーブルを修正する例について説明する。
本実施の形態では、第2準備処理(A)に代えて、第2準備処理(D)を実行する。第2準備処理(D)において、図17と同様の処理を行う。
続いて、図39Aに示したS1801乃至S1813の処理を行う。S1801乃至S1813の処理は、図18の場合と同様である。S1813の処理を終えると、端子Kを介して、図39Bに示したS3901の処理に移る。
検証部631は、生成した対話制御テーブルをチェックして、対話制御テーブルの生成が失敗したか否かを判定する(S3901)。例えば、検証部631は、対話制御テーブルの何れかのレコードに設定されているテキストデータの文字数が所定値を下回るか否かを判定する。そして、検証部631は、当該文字数が所定値以下である場合に、対話制御テーブルの生成が失敗したと判定する。一方、当該文字数が所定値以下ではない場合には、対話制御テーブルの生成が成功したと判定する。
修正部633は、対話制御テーブルの生成が失敗したか否かによって処理を分岐させる(S3903)。対話制御テーブルの生成が失敗していない場合には、そのまま第2準備処理(D)を終える。
一方、対話制御テーブルの生成が失敗している場合には、修正部633は、特性テーブルを修正する(S3905)。例えば、失敗した対話制御テーブルの基礎であるウェブページのURLと同じページURLに対応する対話制御テーブルが存在する場合には、過去のウェブページ、つまり現在構成と異なる構成に係るウェブページに関して正しく対話制御テーブルを導けたことを意味する。修正部633は、正しく導けた過去の対話制御テーブルに基づいて、特性テーブルを修正する。
具体的には、修正部633は、過去の対話制御テーブルに設定されているテキストデータと同様のテキストデータを含む構成要素を、現在のウェブページの構成要素の中から特定する。そして、修正部633は、過去の対話制御テーブルにおけるタグ条件を、特定した現在の構成要素を特定するタグの条件に書き換えることによって、現在の構成に従った特性テーブルに修正することができる。尚、この修正は、ウェブページの構成のみが変更になり、表示されるテキスト自体は変更になっていないことを前提としている。
修正部633は、失敗した対話制御テーブルを削除する(S3907)。修正部633は、エラー出力を行って(S3909)、第2準備処理(D)を終える。エラー出力を行った場合には、自動的に再度第2準備処理(D)を実行するようにしてもよい。
本実施の形態によれば、ウェブページの構成変更に対応することができる。
尚、対話サーバ501とユーザ端末505とは、一体の装置であってもよい。その場合に、対話サーバ501の提供部607と、ユーザ端末505の対話制御部2205は、ネットワークを介さずに内部的にデータを引き渡すようにしてもよい。
以上本発明の実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上述の機能ブロック構成はプログラムモジュール構成に一致しない場合もある。
また、上で説明した各記憶領域の構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ、処理の順番を入れ替えることや複数の処理を並列に実行させるようにしても良い。
なお、上で述べた対話サーバ501及びユーザ端末505は、コンピュータ装置であって、図40に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本発明の実施の形態をまとめると、以下のようになる。
本実施の形態に係る情報処理装置は、(A)第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成する第1生成部と、(B)特性データに基づいて、第2ウェブページに含まれるテキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する第2生成部とを有する。
このようにすれば、同種のウェブページを情報源とした自動対話を簡単に準備できる。
更に、上記第1生成部は、第1前後関係を適用する契機となる文言を特性データに設定するようにしてもよい。また、上記第2生成部は、自動認識したユーザ発言に当該文言が含まれる場合に、第1前後関係に基づく第2前後関係を適用して次に読み上げるテキストを選択する条件を対話制御データに設定するようにしてもよい。
このようにすれば、聞き手の興味に応じたマシン発話に資する。
更に、上記第1生成部は、テキスト表示領域の名前に応じて第1前後関係を設定するようにしてもよい。
このようにすれば、第1前後関係を設定する手間が省ける。
更に、上記第1生成部は、テキスト表示領域の名前に応じて上記文言を設定するようにしてもよい。
このようにすれば、上記文言を設定する手間が省ける。
更に、上記第1生成部は、テキスト表示領域に対するユーザ指示の履歴に基づいて第1前後関係を設定するようにしてもよい。
このようにすれば、第1前後関係を設定する手間が省ける。
更に、上記第2生成部は、上記構成要素から抽出されたテキストに基づいて上記文言を特定するようにしてもよい。
このようにすれば、テキストに即した文言を設定することができる。
更に、上記第2生成部は、上記構成要素から抽出されたテキストを分割して、分割されたテキスト間に第3前後関係を設定するようにしてもよい。
このようにすれば、長いテキストを段階的にマシン発話できるようになる。
更に、上記情報処理装置は、上記構成要素にリンク先が設定されている場合に、当該リンク先から第2ウェブページを取得する取得部を有するようにしてもよい。
このようにすれば、自動対話における話題の展開に資する。
更に、上記情報処理装置は、格納位置が指定されて対話制御データを要求された場合に、当該格納位置から第2ウェブページを取得する取得部を有するようにしてもよい。
このようにすれば、自動対話における話題の展開に資する。
更に、上記情報処理装置は、対話制御データの生成が失敗したか否かを判定する判定部を有するようにしてもよい。また、上記情報処理装置は、対話制御データの生成が失敗したと判定した場合に、特性データを修正する修正部を有するようにしてもよい。
このようにすれば、ウェブページの構成変更に対応することができる。
なお、上で述べた情報処理装置による処理をコンピュータに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD-ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納されるようにしてもよい。尚、中間的な処理結果は、一般的にメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成する第1生成部と、
前記特性データに基づいて、第2ウェブページに含まれるテキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する第2生成部と
を有する情報処理装置。
(付記2)
前記第1生成部は、前記第1前後関係を適用する契機となる文言を前記特性データに設定し、
前記第2生成部は、自動認識したユーザ発言に当該文言が含まれる場合に、前記第1前後関係に基づく前記第2前後関係を適用して次に読み上げる前記テキストを選択する条件を前記対話制御データに設定する
付記1記載の情報処理装置。
(付記3)
前記第1生成部は、前記テキスト表示領域の名前に応じて前記第1前後関係を設定する
付記1又は2記載の情報処理装置。
(付記4)
前記第1生成部は、前記テキスト表示領域の名前に応じて前記文言を設定する
付記2記載の情報処理装置。
(付記5)
前記第1生成部は、前記テキスト表示領域に対するユーザ指示の履歴に基づいて前記第1前後関係を設定する
付記1又は2記載の情報処理装置。
(付記6)
前記第2生成部は、前記構成要素から抽出された前記テキストに基づいて前記文言を特定する
付記2記載の情報処理装置。
(付記7)
前記第2生成部は、前記構成要素から抽出された前記テキストを分割して、分割されたテキスト間に第3前後関係を設定する
付記1乃至6のいずれか1つ記載の情報処理装置。
(付記8)
更に、
前記構成要素にリンク先が設定されている場合に、当該リンク先から前記第2ウェブページを取得する取得部
を有する付記1乃至7のいずれか1つ記載の情報処理装置。
(付記9)
更に、
格納位置が指定されて前記対話制御データを要求された場合に、当該格納位置から前記第2ウェブページを取得する取得部
を有する付記1乃至7のいずれか1つ記載の情報処理装置。
(付記10)
更に、
前記対話制御データの生成が失敗したか否かを判定する判定部と、
前記対話制御データの生成が失敗したと判定した場合に、前記特性データを修正する修正部と
を有する付記1乃至9のいずれか1つ記載の情報処理装置。
(付記11)
第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成し、
前記特性データに基づいて、第2ウェブページに含まれる前記テキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する
処理を含み、コンピュータにより実行される情報処理方法。
(付記12)
第1情報処理装置と第2情報処理装置とを含む対話制御システムであって、
前記第1情報処理装置は、
第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成する第1生成部と、
前記特性データに基づいて、第2ウェブページに含まれる前記テキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する第2生成部と
を有し、
前記第2情報処理装置は、
前記対話制御データに基づいて自動対話を行う制御部
を有する対話制御システム。
501 対話サーバ 503 Webサーバ
505 ユーザ端末 601 取得部
603 第1生成部 605 第2生成部
607 提供部 611 受信部
613 特定部 615 送信部
621 DOM解析部 623 形態素解析部
625 ブラウザ 631 検証部
633 修正部 641 サイト記憶部
643 ウェブページ記憶部 645 特性データ記憶部
647 制御データ記憶部 649 単語データベース
651 既定テーブル記憶部 653 クリック履歴記憶部
2201 音声入力部 2203 音声認識部
2205 対話制御部 2207 音声合成部
2209 音声出力部 2221 送信部
2223 受信部 2225 適用部

Claims (10)

  1. 第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成する第1生成部と、
    前記特性データに基づいて、前記第1ウェブページのサイトと同一サイトに含まれるか又は前記第1ウェブページと同種の第2ウェブページに含まれるテキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する第2生成部と
    を有する情報処理装置。
  2. 前記第1生成部は、前記第1前後関係に従ってあるテキスト表示領域から他のテキスト表示領域へ遷移させる契機となる文言を前記特性データに設定し、
    前記第2生成部は、
    前記特性データの前記第1前後関係における前記あるテキスト表示領域に対応し且つ前記第2ウェブページに含まれるテキスト表示領域の第1テキストから、前記第1前後関係における前記他のテキスト表示領域に対応し且つ前記第2ウェブページに含まれるテキスト表示領域の第2テキストへ遷移させる第2前後関係について、前記第1テキストから前記第2のテキストへ遷移させる契機となる文言として、前記特性データに設定された前記文言を、前記対話制御データに設定する
    請求項1記載の情報処理装置。
  3. 前記第1生成部は、前記テキスト表示領域の名前に応じて前記第1前後関係を設定する
    請求項1又は2記載の情報処理装置。
  4. 前記第1生成部は、前記テキスト表示領域の名前に応じて前記文言を設定する
    請求項2記載の情報処理装置。
  5. 前記第1生成部は、前記テキスト表示領域に対するユーザ指示の履歴に基づいて前記第1前後関係を設定する
    請求項1又は2記載の情報処理装置。
  6. 前記第2生成部は、前記構成要素から抽出された前記テキストに基づいて前記文言を特定する
    請求項2記載の情報処理装置。
  7. 前記第2生成部は、前記構成要素から抽出された前記テキストを分割して、分割されたテキスト間に第3前後関係を設定する
    請求項1乃至6のいずれか1つ記載の情報処理装置。
  8. 更に、
    前記構成要素にリンク先が設定されている場合に、当該リンク先から第3ウェブページを取得する取得部
    を有し、
    前記第2生成部が、前記第3ウェブページについて対話制御データを生成する
    請求項1乃至7のいずれか1つ記載の情報処理装置。
  9. 第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成し、
    前記特性データに基づいて、前記第1ウェブページのサイトと同一サイトに含まれるか又は前記第1ウェブページと同種の第2ウェブページに含まれる前記テキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する
    処理を含み、コンピュータにより実行される情報処理方法。
  10. 第1情報処理装置と第2情報処理装置とを含む対話制御システムであって、
    前記第1情報処理装置は、
    第1ウェブページの表示イメージに含まれるテキスト表示領域間について第1前後関係を設定した特性データを生成する第1生成部と、
    前記特性データに基づいて、前記第1ウェブページのサイトと同一サイトに含まれるか又は前記第1ウェブページと同種の第2ウェブページに含まれる前記テキスト表示領域の構成要素から抽出されたテキスト間に第2前後関係を設定した対話制御データを生成する第2生成部と
    を有し、
    前記第2情報処理装置は、
    前記対話制御データに基づいて自動対話を行う制御部
    を有する対話制御システム。
JP2017165209A 2017-08-30 2017-08-30 情報処理装置、情報処理方法及び対話制御システム Active JP7009840B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017165209A JP7009840B2 (ja) 2017-08-30 2017-08-30 情報処理装置、情報処理方法及び対話制御システム
US16/114,361 US11170051B2 (en) 2017-08-30 2018-08-28 Information processing device, information processing method, and dialog control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017165209A JP7009840B2 (ja) 2017-08-30 2017-08-30 情報処理装置、情報処理方法及び対話制御システム

Publications (2)

Publication Number Publication Date
JP2019045937A JP2019045937A (ja) 2019-03-22
JP7009840B2 true JP7009840B2 (ja) 2022-01-26

Family

ID=65437470

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017165209A Active JP7009840B2 (ja) 2017-08-30 2017-08-30 情報処理装置、情報処理方法及び対話制御システム

Country Status (2)

Country Link
US (1) US11170051B2 (ja)
JP (1) JP7009840B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10789940B2 (en) * 2018-03-27 2020-09-29 Lenovo (Singapore) Pte. Ltd. Dynamic wake word identification
JP7383456B2 (ja) * 2019-11-12 2023-11-20 ユーソナー株式会社 情報管理システム、識別情報付与モジュール及び情報管理方法
WO2021106051A1 (ja) * 2019-11-25 2021-06-03 株式会社オープンエイト サーバおよびデータ割り当て方法
CN112463282B (zh) * 2020-12-14 2023-02-24 网易(杭州)网络有限公司 界面显示方法、装置、存储介质和电子装置
CN116563869B (zh) * 2023-07-10 2023-09-19 平安银行股份有限公司 页面图像文字处理方法、装置、终端设备和可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000181474A (ja) 1998-12-10 2000-06-30 Nec Software Okinawa Ltd 文書データ音声合成方式
JP3163623B2 (ja) 1990-08-27 2001-05-08 セイコーエプソン株式会社 情報機器
JP2002091473A (ja) 2000-06-30 2002-03-27 Fujitsu Ltd 情報処理装置
JP2002342212A (ja) 2001-04-27 2002-11-29 Internatl Business Mach Corp <Ibm> 情報アクセス方法、情報アクセスシステムおよびプログラム
JP2008171356A (ja) 2007-01-15 2008-07-24 Ricoh Co Ltd 画像処理装置、画像形成装置、画像処理方法、画像処理プログラムおよび記録媒体

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6199076B1 (en) * 1996-10-02 2001-03-06 James Logan Audio program player including a dynamic program selection controller
JP3789614B2 (ja) * 1997-10-02 2006-06-28 日本電信電話株式会社 ブラウザシステム、音声プロキシサーバ、リンク項目の読み上げ方法及びリンク項目の読み上げプログラムを格納した記憶媒体
US6751593B2 (en) 2000-06-30 2004-06-15 Fujitsu Limited Data processing system with block attribute-based vocalization mechanism
US6983250B2 (en) * 2000-10-25 2006-01-03 Nms Communications Corporation Method and system for enabling a user to obtain information from a text-based web site in audio form
US7194411B2 (en) * 2001-02-26 2007-03-20 Benjamin Slotznick Method of displaying web pages to enable user access to text information that the user has difficulty reading
US7185276B2 (en) * 2001-08-09 2007-02-27 Voxera Corporation System and method for dynamically translating HTML to VoiceXML intelligently
JP2004303097A (ja) 2003-03-31 2004-10-28 Fujitsu Ltd 構造化文書の部分文書抽出プログラムおよび部分文書抽出方法
US7577568B2 (en) * 2003-06-10 2009-08-18 At&T Intellctual Property Ii, L.P. Methods and system for creating voice files using a VoiceXML application
JP5520732B2 (ja) 2010-07-27 2014-06-11 日本電信電話株式会社 本文抽出方法、本文抽出装置、本文抽出プログラム
US9152730B2 (en) 2011-11-10 2015-10-06 Evernote Corporation Extracting principal content from web pages
JP2013218627A (ja) 2012-04-12 2013-10-24 Nippon Telegr & Teleph Corp <Ntt> 構造化文書からの情報抽出方法、装置、及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3163623B2 (ja) 1990-08-27 2001-05-08 セイコーエプソン株式会社 情報機器
JP2000181474A (ja) 1998-12-10 2000-06-30 Nec Software Okinawa Ltd 文書データ音声合成方式
JP2002091473A (ja) 2000-06-30 2002-03-27 Fujitsu Ltd 情報処理装置
JP2002342212A (ja) 2001-04-27 2002-11-29 Internatl Business Mach Corp <Ibm> 情報アクセス方法、情報アクセスシステムおよびプログラム
JP2008171356A (ja) 2007-01-15 2008-07-24 Ricoh Co Ltd 画像処理装置、画像形成装置、画像処理方法、画像処理プログラムおよび記録媒体

Also Published As

Publication number Publication date
US20190065623A1 (en) 2019-02-28
US11170051B2 (en) 2021-11-09
JP2019045937A (ja) 2019-03-22

Similar Documents

Publication Publication Date Title
JP7009840B2 (ja) 情報処理装置、情報処理方法及び対話制御システム
EP0954856B1 (en) Context dependent phoneme networks for encoding speech information
JP3519015B2 (ja) ネットワーク話し言葉語彙システム
US8015012B2 (en) Data-driven global boundary optimization
JP4189369B2 (ja) 構造化文書検索装置及び構造化文書検索方法
CN106384593A (zh) 一种语音信息转换、信息生成方法及装置
CN109036425A (zh) 用于操作智能终端的方法和装置
JP4722195B2 (ja) データベース・メッセージ分析支援プログラム、方法及び装置
JP2021504784A (ja) 文書構造抽出に基づいた多言語文書の検索
WO2017044415A1 (en) System and method for eliciting open-ended natural language responses to questions to train natural language processors
EP1334435A2 (en) Adding data to text pages by an intermediary proxy
CN110692040A (zh) 在网络***中激活远程设备
CN109254921A (zh) 应用版本验证方法、装置、计算机设备以及存储介质
US20120120436A1 (en) Remote printing
KR20170008357A (ko) 크라우드 소싱을 이용한 웹툰 언어 자동 번역 방법
CN101576885B (zh) 提取动态生成网页内容的技术方案
SE0201898D0 (sv) A method and an apparatus for styling a web service
JP6095487B2 (ja) 質問応答装置、及び質問応答方法
CN111354344A (zh) 语音识别模型的训练方法、装置、电子设备及存储介质
CN116863910A (zh) 一种语音数据的合成方法、装置、电子设备及存储介质
CN113870830A (zh) 基于人工智能的语音合成方法、装置、设备及存储介质
CN103533009A (zh) 一种基于Web技术实现音视频推荐的方法和***
JP2010230948A (ja) コンテンツ配信システムおよびテキスト表示方法
KR101837341B1 (ko) 비디오 콘텐츠를 분할하는 방법 및 시스템
Król Comparative analysis of selected online tools for JavaScript code minification. A case study of a map application

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200611

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210709

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211227

R150 Certificate of patent or registration of utility model

Ref document number: 7009840

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150