JP6959152B2 - 情報処理装置、情報処理方法、及び情報処理プログラム - Google Patents

情報処理装置、情報処理方法、及び情報処理プログラム Download PDF

Info

Publication number
JP6959152B2
JP6959152B2 JP2018007393A JP2018007393A JP6959152B2 JP 6959152 B2 JP6959152 B2 JP 6959152B2 JP 2018007393 A JP2018007393 A JP 2018007393A JP 2018007393 A JP2018007393 A JP 2018007393A JP 6959152 B2 JP6959152 B2 JP 6959152B2
Authority
JP
Japan
Prior art keywords
information
text
information processing
question
predetermined
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
JP2018007393A
Other languages
English (en)
Other versions
JP2019125317A (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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2018007393A priority Critical patent/JP6959152B2/ja
Publication of JP2019125317A publication Critical patent/JP2019125317A/ja
Application granted granted Critical
Publication of JP6959152B2 publication Critical patent/JP6959152B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。
近年、インターネットを使ったユーザ同士の情報共有サービスが盛んになっている。このようなサービスでは、ユーザ(質問者)が投稿した質問文に対して、他のユーザ(回答者)が回答文を投稿することで、ユーザ間で知識や知恵の共有を行う。
特開平06−274539号公報
サービスが活発に利用されるようにするためには、多くのユーザに質問に回答してもらうことが望ましい。しかし、回答文を書くには、単に答えを知っている以上の深い知識や細かな知識が必要である。一部のユーザは、回答ができるかもしれないと思いながらも、回答文を書くことなくサービスから離脱する。
本願は、上記に鑑みてなされたものであって、質問に回答するユーザへの適切な支援を実現できるようにすることを目的とする。
本願に係る情報処理装置は、質問文を取得する第1の取得部と、質問文の属性に関する属性情報に基づいて質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成する生成部と、を備える。
実施形態の一態様によれば、質問に回答するユーザへの適切な支援を実現できるようにすることができる。
図1は、実施形態に係る情報処理システムの動作を示す図である。 図2は、情報処理サーバの処理の流れを示す図である。 図3は、スコア情報の一例を示す図である。 図4は、情報処理サーバが質問文から重要語及び重要文を抽出する様子を示す図である。 図5は、実施形態に係る情報処理サーバの構成例を示す図である。 図6は、質問情報データベースに登録される情報の一例を示す図である。 図7は、モデルデータベースに登録される情報の一例を示す図である。 図8は、実施形態に係る端末装置の構成例を示す図である。 図9は、情報送信処理の一例を示すフローチャートである。 図10は、情報処理サーバの機能を実現するコンピュータの一例を示すハードウェア構成図である。
以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、以下の実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
〔1.情報処理装置の動作〕
最初に、情報処理装置の一例である情報処理サーバ10を備える情報処理システム1を例に、情報処理装置の動作を説明する。
〔1−1.情報処理システムについて〕
図1は、実施形態に係る情報処理システム1の動作を示す図である。情報処理システム1は、情報処理サーバ10と、サービス提供サーバ20〜20と、端末装置100〜100と、を備える。なお、図1の例では、サービス提供サーバが3つしか示されていないが、サービス提供サーバは3つより少なくてもよいし、3つより多くてもよい。以下の説明では、サービス提供サーバ20〜20等を総称してサービス提供サーバ20と記載することがある。また、図1の例では、端末装置が2つしか示されていないが、端末装置は2つより少なくてもよいし、2つより多くてもよい。以下の説明では、端末装置100〜100等を総称して端末装置100と記載することがある。
情報処理サーバ10は、クライアント端末に対して各種サービスを提供するサーバ用ホストコンピュータである。情報処理サーバ10は、端末装置100にコンテンツを配信する。例えば、情報処理サーバ10は、ポータルサイト、ゲーム情報配信サイト、ニュースサイト、オークションサイト、天気予報サイト、ショッピングサイト、ファイナンス(株価)サイト、路線検索サイト、地図提供サイト、旅行サイト、飲食店紹介サイト、掲示板サイト、ウェブブログなどに関連する情報がタイル状に配置されたコンテンツを端末装置100に配信する。本実施形態の情報処理サーバ10は、ユーザ同士で質問及び回答を行うことが可能な情報共有サービスを提供する。
サービス提供サーバ20は、クライアント端末に対して各種サービスを提供するサーバ用ホストコンピュータである。例えば、サービス提供サーバ20は、情報検索サービス、SNS(Social Networking Service)、ニュース配信サービス、情報まとめサービス、インターネット百科事典サービス、インターネット辞書サービス、ブログサービス等の情報の発信サービス(以下、情報サービスという。)を提供するサーバである。サービス提供サーバ20は、情報サービスの1つであるサービスY1(例えば、ニュース配信サービス)を提供するサーバである。また、サービス提供サーバ20は、情報サービスの1つであるサービスY2(例えば、インターネット百科事典サービス)を提供するサーバである。また、サービス提供サーバ20は、情報サービスの1つであるサービスY3(例えば、情報検索サービス)を提供するサーバである。
端末装置100は、スマートフォンやタブレット等のスマートデバイスであり、3G(3rd Generation)やLTE(Long Term Evolution)等の無線通信網を介して任意のサーバ装置と通信を行うことができる携帯端末装置である。なお、端末装置100は、スマートデバイスのみならず、デスクトップPC(Personal Computer)やノートPC等の情報処理装置であってもよい。
〔1−2.情報共有サービスについて〕
上述したように、情報処理サーバ10は、情報共有サービスを提供する。情報共有サービスは、ユーザ(質問者)が投稿した質問文に対して、他のユーザ(回答者)が回答文を投稿することで、ユーザ間で知識や知恵の共有を行う。情報処理サーバ10は、端末装置100からの要求に応じて、質問文を投稿するためのコンテンツ(以下、質問投稿コンテンツという。)や質問への回答文を投稿するためのコンテンツ(以下、回答投稿コンテンツという。)を端末装置100に配信するよう構成されている。端末装置100は、コンテンツの配信を受けて、画面に質問投稿コンテンツや回答投稿コンテンツを表示する。図1の例では、ユーザU1の端末装置100に質問投稿コンテンツであるコンテンツC1が表示されており、ユーザU2の端末装置100に回答投稿コンテンツであるコンテンツC2が表示されている。コンテンツC1、C2は、例えば、ウェブページやアプリの画面である。図1の例の場合、ユーザU1が質問者であり、ユーザU2が回答者である。
コンテンツC1には、質問文を入力するためのテキストボックスTB1が配置されている。ユーザU1がテキストボックスTB1に質問文を入力して投稿ボタンを押すと、情報処理サーバ10に質問文が送信される。また、コンテンツC2には、回答文を入力するためのテキストボックスTB2が配置されている。ユーザU2がテキストボックスTB2に回答文を入力して投稿ボタンを押すと、情報処理サーバ10に回答文が送信される。
〔1−3.情報処理システムの動作〕
以下、情報処理システム1の動作について説明する。
まず、情報処理サーバ10は、端末装置100(図1の例では端末装置100)から質問投稿コンテンツの配信要求を受け付ける。質問投稿コンテンツの配信要求を受け付けたら、情報処理サーバ10は、質問コンテンツの配信要求を行った端末装置100に対して、質問投稿コンテンツであるコンテンツC1を配信する。ユーザがテキストボックスTB1に質問文を入力して投稿ボタンを押すと、端末装置100は情報処理サーバ10に対して質問文を送信する(ステップS1)。情報処理サーバ10は、端末装置100から質問文を取得したら、質問者の情報(例えば、ユーザID)とともに質問文をデータベースに登録する。データベースには複数の質問文が登録される。
また、情報処理サーバ10は、端末装置100(図1の例では端末装置100)から回答投稿コンテンツの配信要求を受け付ける(ステップS2)。情報処理サーバ10は、回答投稿コンテンツの配信要求を受け付けたら、データベースから配信対象となる質問文を取得する。
そして、情報処理サーバ10は、ステップS2で取得した質問文の属性情報を取得する(ステップS3)。属性情報は質問文の属性に関する情報である。質問文の属性とは、例えば、質問文の内容が学術的か、日常的か、時事ネタか等、質問文の持つ特徴や性質のことである。本実施形態では、情報処理サーバ10は、質問文と複数の属性それぞれとの関連の強度を示す強度情報(第1の強度情報)を属性情報として取得する。このとき、強度情報は、数値であってもよいし、A、B、C等のランクであってもよい。
図2は、情報処理サーバ10の処理の流れを示す図である。図2の例では、質問文の属性毎に複数のクラスが用意されている。図2に示すクラスX1、X2、X3等が質問文を属性毎に分類したクラスである。クラスX1は、例えば、質問文の内容が時事ネタであることを示すクラスである。クラスX2は、例えば、質問文の内容が日常的であることを示すクラスである。クラスX3は、例えば、質問文の内容が学術的であることを示すクラスである。各クラスの横に付された数字が、質問文と属性との関連の強度を示す強度情報である。図2の例では、質問文は「初めまして。高校生ですが、質問です。棋士Hと棋士Fどっちがすごいですか?」である。この質問文の場合、質問文とクラスX1と関連の強度は0.9であり、質問文とクラスX2と関連の強度は0.3であり、質問文とクラスX3との関連の強度は0.1である。図2の例では、質問文はクラスX1(例えば、時事ネタを示す属性)との関連が強いことが分かる。
情報処理サーバ10は、このような属性情報を、モデルM1を用いて生成してもよい。モデルM1は、第1のテキストと第1のテキストの属性を示す情報との組のデータを学習データとして、質問文を入力した時に当該質問文の属性情報を出力するよう学習した学習済みモデルである。ここで「第1のテキスト」は、例えば、情報処理サーバ10を運営する運営者が提供する情報共有サービスで、過去、ユーザが行った質問の質問文である。また、「第1のテキストの属性を示す情報」は、例えば、運営者(或いは運営者の従業員)が第1のテキストを見て判断した属性(第1のテキストの内容が学術的か、日常的か、時事ネタか等の情報)である。情報処理サーバ10は、図2に示すように、モデルM1に質問文を入力することにより属性情報を生成する。なお、質問文の属性情報の生成に必ずしもモデルを使用する必要はない。情報処理サーバ10は、他の様々な方法を使用して質問文の属性を判別してもよい。
次に、情報処理サーバ10は、属性情報に基づいて質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成する(ステップS4)。本実施形態では、情報処理サーバ10は、質問文と複数の情報サービスそれぞれとの関連の強度を示す強度情報を関連度情報として取得する。このとき、強度情報は、数値であってもよいし、A、B、C等のランクであってもよい。
本実施形態では、情報処理サーバ10には、複数の情報サービスが登録されている。図2に示すサービスY1、Y2、Y3、Y4等が情報サービスである。サービスY1は、例えば、ニュース配信サービスである。サービスY2は、例えば、インターネット百科事典サービスである。サービスY3は、例えば、情報検索サービスである。サービスY4は、例えば、ブログサービスである。各サービスの横に付された数字が、質問文と情報サービスとの関連の強度を示す強度情報である。図2に示す質問文の場合、質問文とサービスY1と関連の強度は1.1であり、質問文とサービスY2との関連の強度は0.7であり、質問文とサービスY3との関連の強度は0.1であり、質問文とサービスY4との関連の強度は−0.1である。図2の例では、質問文はサービスY1(例えば、ニュース配信サービス)との関連が強いことが分かる。
情報処理サーバ10は、このような関連度情報を、スコア情報を用いて生成してもよい。スコア情報は、複数の属性それぞれと複数の情報サービスそれぞれとの関連の強度を示すスコア(第2の強度情報)が記録された情報である。スコア情報は、人が質問文の属性と情報サービスとの関連の強さを1つ1つ判断することにより生成されてもよいし、質問文の属性と情報サービスとの関連の強さを学習した学習モデルを用いて生成されてもよい。
図3は、スコア情報の一例を示す図である。スコア情報には、「クラス」、「サービス」、及び「スコア」といった項目を有する情報が登録される。「クラス」は、質問文の複数の属性を識別するための情報である。「サービス」は、情報処理サーバ10に登録された複数の情報サービスを識別するための情報である。「スコア」は、クラスの項目で特定される属性とサービスの項目で特定される情報サービスとの関連の強度を示す強度情報である。スコアは、例えば、0.0〜1.0の範囲の数値である。勿論、スコアの数値範囲はこれ以外の範囲であってもよい。
図3に示す例では、クラス「X1」、サービス「Y1」、及びスコア「Z11」といった情報が対応付けて登録されている。このような情報は、例えば、クラス「X1」が示す属性とサービス「Y1」が示す情報サービスとの関連の強度を示すスコアが「Z11」であることを示す。なお、図3に示す例では、スコア情報に登録される情報として、「X11〜X3」、「Y1〜Y4」、「Z11〜Z34」といった概念的な情報を示したが、実際には、テキストデータやバイナリデータが登録されることとなる。
情報処理サーバ10は、例えば、ステップS3で取得した属性情報と、スコア情報と、に基づいて関連度情報を生成する。より具体的には、情報処理サーバ10は、属性情報に記録された強度情報(第1の強度情報)と、スコア情報に記録されたスコア(第2の強度情報)と、に基づいて関連度情報を生成する。
例えば、情報処理サーバ10が、図2に示す質問文とサービスY1との関連の強度を算出するとする。この場合、情報処理サーバ10は、まず、属性情報から、質問文と、質問文の属性を示す各クラスと、の関連の強度の情報を取得する。上述したように、図2の例では、質問文とクラスX1と関連の強度は0.9であり、質問文とクラスX2と関連の強度は0.3であり、質問文とクラスX3との関連の強度は0.1である。さらに、情報処理サーバ10は、サービスY1と各クラスとの関連の強度を示すスコアを取得する。図3に示すように、クラスX1とサービスY1との関連の強度を示すスコアはZ11であり、クラスX2とサービスY1との関連の強度を示すスコアはZ21であり、クラスX3とサービスY1との関連の強度を示すスコアはZ31である。情報処理サーバ10は、例えば、質問文とクラスX1と関連の強度である0.9とクラスX1とサービスY1との関連の強度であるZ11とを乗じた値と、質問文とクラスX2と関連の強度である0.3とクラスX2とサービスY1との関連の強度であるZ21とを乗じた値と、質問文とクラスX3と関連の強度である0.1とクラスX3とサービスY1との関連の強度であるZ31とを乗じた値と、を加算した値を質問文とサービスY1との関連の強度を示す強度情報として算出する。情報処理サーバ10は、この処理を全ての情報処理サービスについて実行する。これにより、関連度情報を生成する。なお、上記はあくまで一例である。情報処理サーバ10は、様々な方法を使用して関連度情報を算出可能である。
次に、情報処理サーバ10は、複数の情報サービスの中から関連度情報に基づき所定の情報サービスを選択する(ステップS5)。例えば、情報処理サーバ10は、関連度情報に基づいて複数の情報サービスの中から質問文との関連度が高い順に1又は複数の情報サービスを選択する。例えば、情報処理サーバ10は、質問文と情報サービスとの関連の強度を示す値が所定の閾値以上の情報サービスを選択する。図2の例で説明すると、情報処理サーバ10は、質問文と情報サービスとの関連の強度を示す値が0以上となっているサービスY1、Y2、Y3の3つを選択する。情報処理サーバ10は、選択した情報サービスの情報(以下、選択情報という。)を記憶部に記憶する。
次に、情報処理サーバ10は、質問文から所定のテキストを抽出する(ステップS6)。このとき、情報処理サーバ10は、質問文に含まれる所定のワード(単語)或いは所定のセンテンス(文)を所定のテキストとして抽出してもよい。所定のワードは、質問文に含まれる単語であり、例えば、質問文に含まれる重要語である。また、所定のセンテンスは、質問文に含まれる文であり、例えば、質問文に含まれる重要語である。例えば、処理対象の質問文が「初めまして。高校生ですが、質問です。棋士Hと棋士Fどっちがすごいですか?」であるとする。このとき、情報処理サーバ10は、例えば、「棋士H」と「棋士F」を所定のワード(重要語)として抽出する。また、情報処理サーバ10は、例えば、「棋士Hと棋士Fどっちがすごいですか?」を所定のセンテンス(重要文)として抽出する。
情報処理サーバ10は、重要語及び重要文を、モデルM2を用いて抽出してもよい。図4は、情報処理サーバ10が質問文から重要語及び重要文を抽出する様子を示す図である。モデルM2は、第1のテキストと第1のテキストに含まれる重要語及び重要文の少なくとも1つである第2のテキストとに基づく学習により生成されたモデルである。例えば、モデルM2は、第1のテキスト(質問文)が入力された場合に、第1のテキスト(質問文)に含まれる第2のテキスト(質問文に含まれる重要語及び/又は重要文)を出力するよう学習した学習済みモデルである。ここで「第1のテキスト」は、例えば、運営者が提供する情報共有サービスでユーザが過去行った質問の質問文である。また、「第2のテキスト」は、例えば、運営者(或いは運営者の従業員)が第1のテキストを見て判断した第1のテキスト中の重要語及び/又は重要文である。情報処理サーバ10は、図4に示すように、モデルM2に質問文を入力することにより質問文に含まれる所定のワード(重要語)或いは所定のセンテンス(重要文)を抽出する。なお、重要語及び重要文の抽出に必ずしもモデルを使用する必要はない。情報処理サーバ10は、他の様々な方法を使用して重要語及び重要文を抽出可能である。
情報処理サーバ10は、ステップS5で選択した情報サービスからステップS6で抽出した所定のテキスト(重要語及び/又は重要文)に関連する情報(以下、関連情報という。)を取得する(ステップS7a、S7b、S7c)。例えば、ステップS6で重要語として「棋士H」と「棋士F」が抽出されたとする。このとき、情報処理サーバ10は、ステップS5で選択した情報サービス(例えば、情報検索サービス)を使って、重要語に関する情報を取得する。例えば、情報処理サーバ10は、重要語を検索クエリとして検索した結果を関連情報として取得する。また、ステップS6で重要文として「棋士Hと棋士Fどっちがすごいですか?」が抽出されたとする。このとき、情報処理サーバ10は、ステップS5で選択した情報サービス(例えば、SNS)を使って、重要文に関する情報を取得する。例えば、情報処理サーバ10は、重要文と類似する文をSNSから取得する。
なお、ステップS5で複数の情報サービスが選択されたのであれば、情報処理サーバ10は、複数の情報サービスそれぞれから関連情報を取得してもよい。このとき、情報処理サーバ10は、取得する関連情報の情報量が、質問文との関連度が高い情報サービスほど多くなるよう構成されていてもよい。
次に、情報処理サーバ10は、端末装置100に送信するためのコンテンツC2を生成する。コンテンツC2は、質問文に関するコンテンツであって関連情報に関する情報を含むコンテンツである。より具体的には、コンテンツC2は、質問文へ回答するためのコンテンツ(回答投稿コンテンツ)であって関連情報或いは関連情報を表示するためのリンクを含むコンテンツである。図1の例では、端末装置100に表示されているコンテンツがコンテンツC2である。コンテンツC2には、回答文を入力するためのテキストボックスTB2に加えて、関連情報R1、R2が表示されている。
情報処理サーバ10は、生成したコンテンツC2を端末装置100に送信する(ステップS8)。ユーザがテキストボックスTB2に回答文を入力して投稿ボタンを押すと、端末装置100は情報処理サーバ10に対して回答文を送信する(ステップS9)。
本実施形態によれば、情報処理サーバ10は、質問文の属性に関する属性情報に基づいて質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成するよう構成されている。そのため、情報処理サーバ10は、どの情報サービスから質問文に関連する情報を取得すれば適切な情報を得ることができるか分かるので、質問に回答するユーザへの適切な支援を実現できる。
〔2.情報処理システムの構成例〕
以上、本実施形態の情報処理システム1の動作を述べたが、以下、本実施形態の情報処理装置の一例である情報処理サーバ10を備える情報処理システム1の構成を説明する。上述したように、情報処理システム1は、端末装置100と、情報処理サーバ10と、サービス提供サーバ20と、を備える。サービス提供サーバ20は、クライアント端末(情報処理サーバ10を含む。)に対して各種サービスを提供するサーバ用ホストコンピュータである。
〔2−1.情報処理サーバの構成例〕
情報処理サーバ10は、端末装置100等のクライアントコンピュータからの要求を処理するサーバ用ホストコンピュータ(以下、単に「サーバ」という。)である。情報処理サーバ10は、PCサーバであってもよいし、ミッドレンジサーバであってもよいし、メインフレームサーバであってもよい。また、情報処理サーバ10は、1つのサーバにより構成されていてもよいし、協働して処理を実行する複数のサーバにより構成されていてもよい。情報処理サーバ10が複数のサーバで構成される場合、これらサーバの設置場所は離れていてもよい。設置場所が離れていたとしても、協働して処理を実行するのであれば、これらサーバは1つの情報処理装置(情報処理サーバ)とみなすことができる。
上述したように、情報処理サーバ10は、サービス提供サーバ20及び端末装置100とネットワークを介して接続されている。ネットワークは、LAN(Local Area Network)、WAN(Wide Area Network)、電話網(携帯電話網、固定電話網等)、地域IP(Internet Protocol)網、インターネット等の通信ネットワークである。ネットワークには、有線ネットワークが含まれていてもよいし、無線ネットワークが含まれていてもよい。
図5は、実施形態に係る情報処理サーバ10の構成例を示す図である。情報処理サーバ10は、通信部11と、記憶部12と、制御部13と、を備える。なお、図5に示した構成は機能的な構成であり、ハードウェア構成はこれとは異なっていてもよい。
通信部11は、外部の装置と通信する通信インタフェースである。通信部11は、ネットワークインタフェースであってもよいし、機器接続インタフェースであってもよい。例えば、通信部11は、NIC(Network Interface Card)等のLANインタフェースであってもよいし、USB(Universal Serial Bus)ホストコントローラ、USBポート等により構成されるUSBインタフェースであってもよい。また、通信部11は、有線インタフェースであってもよいし、無線インタフェースであってもよい。通信部11は、情報処理サーバ10の通信手段として機能する。通信部11は、制御部13の制御に従ってサービス提供サーバ20及び端末装置100と通信する。
記憶部12は、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)、フラッシュメモリ、ハードディスク等のデータ読み書き可能な記憶装置である。記憶部12は、情報処理サーバ10の記憶手段として機能する。記憶部12は、質問情報データベース121、及びモデルデータベース122を記憶する。
質問情報データベース121には、質問情報が登録される。図6は、質問情報データベース121に登録される情報の一例を示す図である。質問情報データベース121には、「質問ID(Identifier)」、「カテゴリ」、「質問文」、「質問者情報」、および「回答」といった項目を有する情報が登録される。
「質問ID」は、質問サイトでなされた質問を識別するための識別子である。また、「カテゴリ」は、質問IDで識別される質問のカテゴリである。例えば、「カテゴリ」は、音楽、健康、ビジネスといった質問の分類である。また、「質問文」は、質問IDで識別される質問の質問文である。「質問者情報」は、質問IDで識別される質問者の情報である。例えば、「質問者情報」は、質問者の識別情報(例えば、ユーザID)やユーザ属性情報(例えば、デモグラフィック情報やサイコグラフィック情報)である。具体例を挙げると、ユーザ属性情報は、ユーザ(例えば質問者や回答者)の年齢、職業、収入、資産、住所、勤務先の住所、使用言語数、家族構成、友人関係、ライフサイクル、価値観、ライフスタイル、性格、好み、及びこれらの変化の情報である。また、ユーザ属性情報には、ユーザの検索履歴やサービス利用履歴が含まれていてもよい。勿論、ユーザ属性情報は上記の情報に限定されない。
また、「回答」は、質問IDで識別される質問への回答の情報である。「回答」の項目には、「回答文」、「回答者情報」、および「評価」といった項目を有する情報が登録される。「回答文」は、質問IDで識別される質問への回答文である。「回答者情報」は、回答文を投稿した回答者の情報である。例えば、「回答者情報」は、回答者の識別情報(例えば、ユーザID)や属性情報(例えば、デモグラフィック情報やサイコグラフィック情報)である。また、「評価」は、回答者が行った回答への評価の情報である。例えば、評価は、ベストアンサーを得たか否か、回答の優良度を示すスコア(例えば、評価を示す星の数や“いいね”の数等)である。なお、図6の例では、1つの質問につき1つの「回答」の項目しか設けられていないが、1つの質問につき複数の「回答」の情報が設けられていてもよい。
例えば、図6に示す例では、質問ID「Q21」、カテゴリ「CT1」、質問文「TQ21」、質問者情報「UQ21」、回答文「TA21」、回答者情報「UA21」、及び評価「E21」といった情報が対応付けて登録されている。このような情報は、例えば、質問ID「Q21」が示す質問情報に、「CT1」が示すカテゴリと、「TQ21」が示す質問文と、「UQ21」が示す質問者情報と、「TA21」が示す回答文と、「UA21」が示す回答者情報と、「E21」が示す評価と、が含まれる旨を示す。なお、図6に示す例では、質問情報データベース121に登録される情報として、「Q21〜Q23」、「CT1〜CT3」、「TQ21〜TQ23」、「UQ21〜UQ23」、「TA21〜TA23」、「UA21〜UA23」、「E21〜E23」といった概念的な情報を示したが、実際には、テキストデータやバイナリデータが登録されることとなる。
図5に戻り、モデルデータベース122には、情報処理サーバ10が有するモデルのデータが登録される。図7は、モデルデータベース122に登録される情報の一例を示す図である。図7に示す例では、モデルデータベース122には、「モデルID」、および「モデルデータ」といった情報が登録されている。
ここで、「モデルID」は、各モデルを識別するための情報である。また、「モデルデータ」は、対応付けられた「モデルID」が示すモデルのデータであり、例えば、各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報である。
例えば、図7に示す例では、モデルID「4001」およびモデルデータ「M1」といった情報が対応付けて登録されている。このような情報は、例えば、「4001」が示すモデルのデータが「M1」である旨を示す。なお、図7に示す例では、モデルデータベース122に登録される情報として、「M1〜M3」といった概念的な情報を記載したが、実際には、モデルの構造や接続係数を示す文字列や数値等が登録されることとなる。以下、M1〜M3等を総称してモデルMという。
モデルMは、第1のテキスト(質問文)と第1のテキストに含まれる第2のテキスト(重要語及び/又は重要文)との組のデータを学習データとして、質問文を入力した時に質問文に含まれるワード(重要語)及び/又はセンテンス(重要文)を出力するよう学習したモデルである。このとき、教師ラベルとなる第2のテキストは、第1のテキスト(質問文)の中から人の手により抽出された重要語及び/又は重要文であってもよい。このようなモデルMは、質問文を入力する入力層と、当該質問文に含まれるワード(重要語)及び/又はセンテンス(重要文)を出力する出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重み(すなわち、接続係数)とに基づく演算を行うことにより、入力層に入力された質問文に応じて、当該質問文に含まれるワード(重要語)及び/又はセンテンス(重要文)を出力層から出力するよう、コンピュータを機能させるためのモデルである。
また、モデルMは、第1のテキスト(質問文)と第1のテキストの属性を示す情報との組のデータを学習データとして、質問文を入力した時に当該質問文の属性情報を出力するよう学習したモデルであってもよい。このようなモデルMは、質問文を入力する入力層と、該質問文の属性情報を出力する出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重み(すなわち、接続係数)とに基づく演算を行うことにより、入力層に入力された質問文に応じて、当該質問文の属性情報を出力層から出力するよう、コンピュータを機能させるためのモデルである。
ここで、モデルMが「y=a1*x1+a2*x2+・・・+ai*xi」で示す回帰モデルで実現されるとする。この場合、モデルMが含む第1要素は、x1やx2等といった入力データ(xi)に対応する。また、第1要素の重みは、xiに対応する係数aiに対応する。ここで、回帰モデルは、入力層と出力層とを有する単純パーセプトロンと見做すことができる。各モデルを単純パーセプトロンと見做した場合、第1要素は、入力層が有するいずれかのノードに対応し、第2要素は、出力層が有するノードと見做すことができる。
また、モデルMがDNN(Deep Neural Network)等、1つまたは複数の中間層を有するニューラルネットワークで実現されるとする。この場合、モデルMが含む第1要素は、入力層または中間層が有するいずれかのノードに対応する。また、第2要素は、第1要素と対応するノードから値が伝達されるノードである次段のノードに対応する。また、第1要素の重みは、第1要素と対応するノードから第2要素と対応するノードに伝達される値に対して考慮される重みである接続係数に対応する。
情報処理サーバ10は、上述した回帰モデルやニューラルネットワーク等、任意の構造を有するモデルを用いて、出力する情報の算出を行う。具体的には、モデルMは、第1のテキスト(質問文)が入力された場合に、第1のテキスト(質問文)に含まれる第2のテキスト(質問文に含まれる重要語及び/又は重要文)を出力するように係数が設定される。例えば、情報処理サーバ10は、第1のテキスト(質問文)に含まれる第2のテキスト(質問文に含まれる重要語及び/又は重要文)と、第1のテキストをモデルMに入力して得られるテキストと、の類似度に基づいて係数を設定する。情報処理サーバ10は、このようなモデルMを用いて、質問文から当該質問文に含まれるワード(重要語)及び/又はセンテンス(重要文)を抽出する。
或いは、モデルMは、第1のテキスト(質問文)が入力された場合に、第1のテキストの属性情報を出力するように係数が設定される。例えば、情報処理サーバ10は、第1のテキスト(質問文)の属性を示す値と、第1のテキストをモデルMに入力して得られる値と、が近づくよう係数を設定する。情報処理サーバ10は、このようなモデルMを用いて、質問文から当該質問文の属性情報を生成する。
なお、上記例では、モデルMが、質問文が入力された場合に、当該質問文に含まれる重要語及び/又は重要文を出力するモデル(以下、モデルV1という。)である例を示した。或いは、上記例では、モデルMが、質問文が入力された場合に、当該質問文の属性情報を出力するモデル(以下、モデルV2という。)である例を示した。しかし、実施形態に係るモデルMは、モデルV1或いはモデルV2にデータの入出力を繰り返すことで得られる結果に基づいて生成されるモデルであってもよい。
また、情報処理サーバ10がGAN(Generative Adversarial Networks)を用いた学習処理或いは生成処理を行う場合、モデルMは、GANの一部を構成するモデルであってもよい。
図5に戻り、制御部13は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、情報処理サーバ10内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部13は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
また、制御部13は、記憶部12に記憶されるモデルMに従った情報処理により、モデルMの入力層に入力されたデータ(質問文)に対し、モデルMが有する係数(すなわち、モデルMが学習した各種の特徴に対応する係数)に基づく演算を行い、モデルMの出力層からテキスト(例えば、質問文に含まれる重要語及び/又は重要文)或いは質問文の属性情報を出力する。
制御部13は、図5に示すように、質問文取得部131と、学習部132と、生成部133と、抽出部134と、選択部135と、関連情報取得部136と、送信部137と、を備える。制御部13を構成するブロック(質問文取得部131〜送信部137)はそれぞれ制御部13の機能を示す機能ブロックである。これら機能ブロックはソフトウェアブロックであってもよいし、ハードウェアブロックであってもよい。例えば、上述の機能ブロックが、それぞれ、ソフトウェア(マイクロプログラムを含む。)で実現される1つのソフトウェアモジュールであってもよいし、半導体チップ(ダイ)上の1つの回路ブロックであってもよい。勿論、各機能ブロックがそれぞれ1つのプロセッサ或いは1つの集積回路であってもよい。機能ブロックの構成方法は任意である。なお、制御部13は上述の機能ブロックとは異なる機能単位で構成されていてもよい。
質問文取得部131は、端末装置100或いは記憶部12から質問文を取得する。質問文取得部131は、情報処理サーバ10の第1の取得部として機能する。
学習部132は、モデルMの学習を行い、学習したモデルMをモデルデータベース122に格納する。より具体的には、学習部132は、質問文をモデルMに入力した際に、モデルMが所定のテキスト(例えば、質問文に含まれるワード(重要語)及び/又はセンテンス(重要文))を出力するように、モデルMの接続係数の設定を行う。すなわち、学習部132は、質問文をモデルMに入力した際に、モデルMが、質問文に含まれるワード(重要語)及び/又はセンテンス(重要文)を出力するように、モデルMの学習を行う。或いは、学習部132は、質問文入力した際に、モデルMが当該質問文の属性情報を出力するように、モデルMの接続係数の設定を行う。
例えば、学習部132は、モデルMが有する入力層のノードに第1のテキスト(質問文)を入力し、各中間層を辿ってモデルMの出力層までデータを伝播させることで、所定のテキスト(例えば、質問文に含まれるワード(重要語)及び/又はセンテンス(重要文))を出力させる。そして、学習部132は、モデルMが実際に出力したテキストと、学習データに含まれる第2のテキスト(重要語及び/又は重要文)との差に基づいて、モデルMの接続係数を修正する。例えば、学習部132は、バックプロパゲーション等の手法を用いて、接続係数の修正を行ってもよい。このとき、学習部132は、第2のテキストの分散表現となるベクトルと、モデルMが実際に出力したテキストの分散表現となるベクトルとのコサイン類似度に基づいて、接続係数の修正を行ってもよい。
また、学習部132は、モデルMが有する入力層のノードであって、入力層に入力される情報と対応する特徴を学習したエンコーダの入力層と対応するノードに第1のテキスト(質問文)を入力し、各中間層を辿ってモデルMの出力層までデータを伝播させることで、第1のテキストの属性情報を出力させる。そして、学習部132は、モデルMが実際に出力した値と、学習データに含まれる第1のテキストの属性を示す値との差に基づいて、モデルMの接続係数を修正する。例えば、学習部132は、バックプロパゲーション等の手法を用いて、接続係数の修正を行ってもよい。
なお、学習部132は、いかなる学習アルゴリズムを用いてモデルMを学習してもよい。例えば、学習部132は、ニューラルネットワーク、サポートベクターマシン(support vector machine)、クラスタリング、強化学習等の学習アルゴリズムを用いて、モデルMを学習してよい。
生成部133は、質問文の属性に関する属性情報に基づいて質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成する。例えば、生成部133は、質問文と複数の属性それぞれとの関連の強度を示す第1の強度情報を属性情報として取得する。さらに、生成部133は、複数の属性それぞれと複数の情報サービスそれぞれとの関連の強度を示す第2の強度情報を取得する。そして、生成部133は、第1の強度情報と第2の強度情報に基づいて関連度情報を生成する。
抽出部134は、質問文から所定のテキストを抽出する。例えば、抽出部134は、質問文に含まれる所定のワード或いは所定のセンテンスを所定のテキストとして抽出する。このとき、抽出部134は、モデルM1を用いて質問文から質問文に含まれるワード或いはセンテンスを抽出してもよい。モデルM1は、第1のテキストと第1のテキストに含まれる重要語及び重要文の少なくとも1つである第2のテキストとに基づく学習により生成されたモデルであってもよい。
選択部135は、複数の情報サービスの中から関連度情報に基づき所定の情報サービスを選択する。例えば、選択部135は、関連度情報に基づいて複数の情報サービスの中から質問文との関連度が高い順に所定数の情報サービスを選択する。
関連情報取得部136は、所定の情報サービスから所定のテキストに関連する関連情報を取得する。例えば、関連情報取得部136は、所定数の情報サービスそれぞれから関連情報を取得する。関連情報取得部136は、情報処理サーバ10の第2の取得部として機能する。
送信部137は、質問文に関するコンテンツであって関連情報に関する情報を含むコンテンツを送信する。例えば、送信部137は、質問文へ回答するためのコンテンツであって関連情報或いは関連情報を表示するためのリンクを含むコンテンツを送信する。
〔2−2.端末装置の構成例〕
次に、端末装置100の構成について説明する。端末装置100は、ユーザがコンテンツの閲覧に使用する情報表示装置である。端末装置100は、例えば、スマートフォン、タブレット、携帯電話等の通信端末である。通信機能を備えるのであれば、端末装置100は、パーソナルコンピュータ(ノートPC、デスクトップPC)、PDA(Personal Digital Assistant)等の情報処理端末であってもよい。この場合、情報処理端末も通信端末の一種である。端末装置100は、ネットワークを介して情報処理サーバ10と接続する。
図8は、実施形態に係る端末装置100の構成例を示す図である。端末装置100は、通信部110と、入力部120と、記憶部130と、出力部140と、制御部150と、を備える。なお、図8に示した構成は機能的な構成であり、ハードウェア構成はこれとは異なっていてもよい。
通信部110は、外部の装置と通信する通信インタフェースである。通信部110は、ネットワークインタフェースであってもよいし、機器接続インタフェースであってもよい。例えば、通信部110は、NIC等のLANインタフェースであってもよいし、USBホストコントローラ、USBポート等により構成されるUSBインタフェースであってもよい。また、通信部110は、有線インタフェースであってもよいし、無線インタフェースであってもよい。通信部110は、端末装置100の通信手段として機能する。通信部110は、制御部150の制御に従って情報処理サーバ10と通信する。
入力部120は、外部から各種入力を受け付ける入力装置である。例えば、入力部120は、キーボードやマウスや操作キー等、ユーザが各種操作を行うための操作装置である。入力部120は、端末装置100の入力手段として機能する。なお、端末装置100にタッチパネルが採用される場合には、タッチパネルも入力部120に含まれる。この場合、ユーザは、指やスタイラスで画面をタッチすることにより各種操作を行う。
記憶部130は、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)、フラッシュメモリ、ハードディスク等のデータ読み書き可能な記憶装置である。記憶部130は、端末装置100の記憶手段として機能する。記憶部130は、アプリケーションのデータが格納されている。アプリケーションのデータは、ウェブブラウザのデータであってもよい。
出力部140は、音、光、振動、画像等、外部に各種出力を行う装置である。出力部140は、端末装置100の出力手段として機能する。出力部140は、各種情報を表示する表示装置を備える。表示装置は、例えば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイである。なお、端末装置100にタッチパネルが採用される場合には、表示装置(以下、画面という。)は入力部120と一体であってもよい。出力部140は、制御部150の制御に従って、画面に画像を表示する。
制御部150は、コントローラであり、例えば、CPU、MPU等のプロセッサによって、端末装置100内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部150は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現されてもよい。
制御部150は、図8に示すように、表示部151と、表示制御部152と、を備える。制御部150を構成するブロック(表示部151と、表示制御部152)はそれぞれ制御部150の機能を示す機能ブロックである。これら機能ブロックはソフトウェアブロックであってもよいし、ハードウェアブロックであってもよい。例えば、上述の機能ブロックが、それぞれ、ソフトウェア(マイクロプログラムを含む。)で実現される1つのソフトウェアモジュールであってもよいし、半導体チップ(ダイ)上の1つの回路ブロックであってもよい。勿論、各機能ブロックがそれぞれ1つのプロセッサ或いは1つの集積回路であってもよい。機能ブロックの構成方法は任意である。なお、制御部150は上述の機能ブロックとは異なる機能単位で構成されていてもよい。
表示部151は、情報処理サーバ10から送信されたコンテンツC1或いはコンテンツC2を画面に表示する。
表示制御部152は、情報処理サーバ10から送信された制御情報に従って画面に表示されたコンテンツC1或いはC2の態様を変更する。
〔3.情報処理サーバの処理フロー〕
次に、情報処理サーバ10が実行する処理の手順について説明する。図9は、情報送信処理の一例を示すフローチャートである。
まず、情報処理サーバ10は、ユーザが操作する端末装置100から質問に回答するためのコンテンツC2の配信要求を受信したか判別する(ステップS11)。配信要求を受信していない場合(ステップS11:No)、情報処理サーバ10は、配信要求を受信するまでステップS11を繰り返す。
配信要求を受信した場合(ステップS11:Yes)、情報処理サーバ10は、質問情報データベース121から質問文を取得する(ステップS12)。そして、情報処理サーバ10は、質問文の属性情報を生成する(ステップS13)。
続いて、情報処理サーバ10は、ステップS12で取得した質問文と情報サービスとの関連を示す関連度情報を生成する(ステップS14)。そして、情報処理サーバ10は、関連度情報に基づいて複数の情報サービスの中から情報サービスを選択する(ステップS15)。
続いて、情報処理サーバ10は、質問文に含まれる所定のテキスト(重要語及び/又は重要文)を抽出する(ステップS16)。そして、情報処理サーバ10は、ステップS14で選択した情報サービスから関連情報を取得する(ステップS17)。
続いて、情報処理サーバ10は、ステップS17で取得した関連情報が含まれるコンテンツC2を生成する(ステップS18)。情報処理サーバ10は、端末装置100にコンテンツC2を送信する(ステップS19)。
送信が完了したら、情報処理サーバ10は、ステップS11に戻り、端末装置100からコンテンツの配信要求を受信するまで待機する。
〔4.変形例〕
上述の実施形態は一例を示したものであり、種々の変更及び応用が可能である。
例えば、上述の実施形態では、情報処理サーバ10は、コンテンツC2に単に関連情報を配置するだけであった。しかし、情報処理サーバ10は、関連度情報に基づいて関連情報の表示順序や関連情報の表示数を変更してもよい。例えば、情報処理サーバ10は、関連度が高い情報サービスから取得した関連情報ほど、ページの上側に表示してもよい。或いは、情報処理サーバ10は、関連度が高い情報サービスから取得した関連情報の表示割合を多くしてもよい。例えば、質問文とサービスY1の関連度が1.1で、質問文とサービスY2の関連度が0.7なのであれば、情報処理サーバ10は、サービスY1から取得した関連情報の数とサービスY2から取得した関連情報の数との比が11対7となるよう、コンテンツC2を生成する。
また、上述の実施形態(ステップS6)では、質問文から抽出される所定のテキストは、質問文に含まれる所定のワード(例えば、重要語)、或いは質問文に含まれる所定のセンテンス(例えば、重要文)であるものとした。しかし、情報処理サーバ10は、質問文から抽出された抽出テキスト(所定のワード及び/又は所定のセンテンス)に内容が類似する類似テキストを所定のテキストとして取得してもよい。例えば、情報処理サーバ10は、質問文から抽出される重要語の類似語を所定のテキストとして取得してもよい。例えば、質問文が「棋士Fと棋士Hどっちがすごい?」であり、重要語として「棋士F」、「棋士H」が抽出されたとする。このとき、情報処理サーバ10は、棋士Fと棋士Hのいずれか或いは双方と関係が深い人物を示す単語である「棋士K」を類似語として取得する。
なお、類似テキストを生成する手法は種々の方法を使用可能である。例えば、情報処理サーバ10は、予め作成しておいた知識ベース(Knowledge Base)を使って抽出テキストから類似テキストを生成してもよい。知識ベースとは、事実、常識、経験等の知識をコンピュータが解読できる形にしてデータベースにしたものである。例えば、知識ベースは、人間関係や人の属性等の知識を組織化したものである。一例として、知識ベースは、エンティティをノードとし、エンティティとエンティティの関係や、エンティティの属性等を関係グラフで示したものである。ここで、エンティティとは、意味のまとまりのことであり、例えば、人、組織、団体、場所、物、事柄などの実体のことである。質問文から「棋士F」や「棋士H」が重要語として抽出されたのであれば、情報処理サーバ10は、「棋士F」や「棋士H」を示すエンティティを知識ベース内で特定するとともに、該当エンティティから一定の距離(一定の関係度)の範囲内にあるエンティティ(例えば人物名)を類似語として判別する。勿論、類似テキストを生成する方法は上記に限定されない。例えば、情報処理サーバ10は、エンティティとエンティティとの関係性に基づく学習により生成された学習済みモデルを使って抽出テキストから類似テキストを生成してもよい。
類似テキストの生成が完了したら、情報処理サーバ10は、生成した類似テキストを所定のテキストとし、上述のステップS7a、S7b、S7cで説明したのと同様に、所定のテキスト(例えば、重要語の類似語)に関連する関連情報を、ステップS5で選択した情報サービスから取得する。これにより、情報処理サーバ10は、さらに充実した支援が可能になる。例えば、情報処理サーバ10は、「棋士Fと棋士Hどっちがすごい?」という質問に対して「棋士Hが強いよ、あと他にも昔だったら棋士Kとかもすごく強かったよ」といった回答が生まれるような支援が可能になる。
本実施形態の情報処理サーバ10を制御する制御装置は、専用のコンピュータシステムによって実現してもよいし、通常のコンピュータシステムにより実現してもよい。例えば、上述の動作を実行するためのプログラムまたはデータ(例えば、モデルM)を、光ディスク、半導体メモリ、磁気テープ、フレキシブルディスク等のコンピュータ読み取り可能な記録媒体に格納して配布し、該プログラムまたはデータをコンピュータにインストールし、上述の処理を実行することによって制御装置を構成してもよい。制御装置は、情報処理サーバ10の外部の装置(例えば、パーソナルコンピュータ)であってもよいし、内部の装置(例えば、制御部13)であってもよい。また、上記プログラムをインターネット等のネットワーク上のサーバ装置が備えるディスク装置に格納しておき、コンピュータにダウンロード等できるようにしてもよい。また、上述の機能を、OS(Operating System)とアプリケーションソフトとの協働により実現してもよい。この場合には、OS以外の部分を媒体に格納して配布してもよいし、OS以外の部分をサーバ装置に格納しておき、コンピュータにダウンロード等できるようにしてもよい。
また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
〔5.ハードウェア構成〕
実施形態及び変形例に係る情報処理サーバ10は、例えば図10に示すような構成のコンピュータ1000によっても実現可能である。図10は、情報処理サーバ10の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU(Central Processing Unit)1100、RAM1200、ROM1300、HDD(Hard Disk Drive)1400、通信インタフェース(I/F)1500、入出力インタフェース(I/F)1600、及びメディアインタフェース(I/F)1700を有する。
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インタフェース1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。
CPU1100は、入出力インタフェース1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インタフェース1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インタフェース1600を介して出力装置へ出力する。
メディアインタフェース1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインタフェース1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係る情報処理サーバ10として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムまたはデータ(例えば、モデルM)に基づいた処理を実行することにより、制御部13を実現する。コンピュータ1000のCPU1100は、これらのプログラムまたはデータ(例えば、モデルM)を記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムまたはデータ(例えば、モデルM)を取得してもよい。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔6.効果〕
本実施形態によれば、情報処理サーバ10は、質問文を取得する。そして、情報処理サーバ10は、質問文の属性に関する属性情報に基づいて質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成する。これにより、情報処理サーバ10は、どの情報サービスから質問文に関連する情報を取得すればよいか分かるので、質問に回答するユーザへの適切な支援を実現できる。
情報処理サーバ10は、質問文から所定のテキストを抽出する。そして、情報処理サーバ10は、複数の情報サービスの中から関連度情報に基づき所定の情報サービスを選択する。そして、情報処理サーバ10は、所定の情報サービスから所定のテキストに関連する関連情報を取得する。これにより、情報処理サーバ10は、単に質問文の全文をクエリとするのではなく、質問文から抽出されたテキストをクエリとできるので、ユーザの回答支援のためのさらに適切な情報を得ることができる。
情報処理サーバ10は、質問文に含まれる所定のワード或いは所定のセンテンスを所定のテキストとして抽出する。これにより、情報処理サーバ10は、質問文から抽出されたワード或いはセンテンスに基づいてユーザの回答支援に適切な情報を得ることができる。
情報処理サーバ10は、第1のテキストと第1のテキストに含まれる重要語及び重要文の少なくとも1つである第2のテキストとに基づく学習により生成されたモデルを用いて質問文から質問文に含まれる所定のワード或いは所定のセンテンスを抽出する。これにより、情報処理サーバ10は、質問文から抽出された重要語或いは重要文に基づいてユーザの回答支援に適切な情報を得ることができる。
情報処理サーバ10は、関連度情報に基づいて複数の情報サービスの中から質問文との関連度が高い順に1又は複数の情報サービスを選択する。そして、情報処理サーバ10は、選択された情報サービスから関連情報を取得する。これにより、情報処理サーバ10は、質問文に適合した情報サービスから関連情報を取得できるので、質問に回答するユーザへの適切な支援を実現できる。
情報処理サーバ10は、質問文に関するコンテンツであって関連情報に関する情報を含むコンテンツを送信する。これにより、情報処理サーバ10は、質問に回答するユーザへの適切な支援を実現できる。
情報処理サーバ10は、質問文へ回答するためのコンテンツであって関連情報或いは関連情報を表示するためのリンクを含むコンテンツを送信する。これにより、情報処理サーバ10は、質問に回答するユーザへの適切な支援を実現できる。
情報処理サーバ10は、質問文と複数の属性それぞれとの関連の強度を示す第1の強度情報を属性情報として取得する。そして、情報処理サーバ10は、複数の属性それぞれと複数の情報サービスそれぞれとの関連の強度を示す第2の強度情報を取得する。そして、情報処理サーバ10は、第1の強度情報と第2の強度情報に基づいて関連度情報を生成する。これにより、情報処理サーバ10は、質問文に適合した情報サービスから関連情報を取得できるので、質問に回答するユーザへの適切な支援を実現できる。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、生成部は、生成手段や生成回路に読み替えることができる。
1…情報処理システム
10…情報処理サーバ
11、110…通信部
12、130…記憶部
121…質問情報データベース
122…モデルデータベース
13、150…制御部
131…質問文取得部
132…学習部
133…生成部
134…抽出部
135…選択部
136…関連情報取得部
137…送信部
20…サービス提供サーバ
100…端末装置
120…入力部
140…出力部
151…表示部
152…表示制御部
C1、C2…コンテンツ
M1、M2…モデル

Claims (10)

  1. 質問文を取得する第1の取得部と、
    前記質問文の属性に関する属性情報に基づいて前記質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成する生成部と、
    前記質問文から所定のテキストを抽出する抽出部と、
    前記複数の情報サービスの中から前記関連度情報に基づき所定の情報サービスを選択する選択部と、
    前記所定の情報サービスから前記所定のテキストに関連する関連情報を取得する第2の取得部と、
    前記質問文に関するコンテンツであって前記関連情報に関する情報を含むコンテンツを送信する送信部と、を備え、
    前記送信部は、前記関連度情報に基づいて前記関連情報の表示順序又は関連情報の表示数を変更する、
    とを特徴とする情報処理装置。
  2. 前記送信部は、関連度が高い前記情報サービスから取得した前記関連情報ほど前記コンテンツ中の配置を上側にする、
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記送信部は、関連度が高い前記情報サービスから取得した前記関連情報ほど前記コンテンツ中の表示割合を多くする、
    ことを特徴とする請求項1に記載の情報処理装置。
  4. 前記抽出部は、前記質問文に含まれる所定のワード或いは所定のセンテンスを前記所定のテキストとして抽出する、
    ことを特徴とする請求項に記載の情報処理装置。
  5. 前記抽出部は、第1のテキストと前記第1のテキストに含まれる重要語及び重要文の少なくとも1つである第2のテキストとに基づく学習により生成されたモデルを用いて前記質問文から前記質問文に含まれる前記所定のワード或いは前記所定のセンテンスを抽出する、
    ことを特徴とする請求項に記載の情報処理装置。
  6. 前記選択部は、前記関連度情報に基づいて前記複数の情報サービスの中から前記質問文との関連度が高い順に1又は複数の情報サービスを選択し、
    前記第2の取得部は、前記選択部で選択された情報サービスから前記関連情報を取得する、
    ことを特徴とする請求項のいずれか1項に記載の情報処理装置。
  7. 前記送信部は、前記質問文へ回答するためのコンテンツであって前記関連情報或いは前記関連情報を表示するためのリンクを含むコンテンツを送信する、
    ことを特徴とする請求項1〜6のいずれか1項に記載の情報処理装置。
  8. 前記生成部は、
    前記質問文と複数の属性それぞれとの関連の強度を示す第1の強度情報を前記属性情報として取得し、
    前記複数の属性それぞれと前記複数の情報サービスそれぞれとの関連の強度を示す第2の強度情報を取得し、
    前記第1の強度情報と前記第2の強度情報に基づいて前記関連度情報を生成する、
    ことを特徴とする請求項1〜7のいずれか1項に記載の情報処理装置。
  9. 情報処理装置が実行する情報処理方法であって、
    質問文を取得する第1の取得工程と、
    前記質問文の属性に関する属性情報に基づいて前記質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成する生成工程と、
    前記質問文から所定のテキストを抽出する抽出工程と、
    前記複数の情報サービスの中から前記関連度情報に基づき所定の情報サービスを選択する選択工程と、
    前記所定の情報サービスから前記所定のテキストに関連する関連情報を取得する第2の取得工程と、
    前記質問文に関するコンテンツであって前記関連情報に関する情報を含むコンテンツを送信する送信工程と、を含み、
    前記送信工程では、前記関連度情報に基づいて前記関連情報の表示順序又は関連情報の表示数を変更する、
    とを特徴とする情報処理方法。
  10. 質問文を取得する第1の取得手順と、
    前記質問文の属性に関する属性情報に基づいて前記質問文と複数の情報サービスそれぞれとの関連を示す関連度情報を生成する生成手順と、
    前記質問文から所定のテキストを抽出する抽出手順と、
    前記複数の情報サービスの中から前記関連度情報に基づき所定の情報サービスを選択する選択手順と、
    前記所定の情報サービスから前記所定のテキストに関連する関連情報を取得する第2の取得手順と、
    前記質問文に関するコンテンツであって前記関連情報に関する情報を含むコンテンツを送信する送信手順と、をコンピュータに実行させ
    前記送信手順では、前記関連度情報に基づいて前記関連情報の表示順序又は関連情報の表示数を変更する、
    ことを特徴とする情報処理プログラム。
JP2018007393A 2018-01-19 2018-01-19 情報処理装置、情報処理方法、及び情報処理プログラム Active JP6959152B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018007393A JP6959152B2 (ja) 2018-01-19 2018-01-19 情報処理装置、情報処理方法、及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018007393A JP6959152B2 (ja) 2018-01-19 2018-01-19 情報処理装置、情報処理方法、及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2019125317A JP2019125317A (ja) 2019-07-25
JP6959152B2 true JP6959152B2 (ja) 2021-11-02

Family

ID=67398903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018007393A Active JP6959152B2 (ja) 2018-01-19 2018-01-19 情報処理装置、情報処理方法、及び情報処理プログラム

Country Status (1)

Country Link
JP (1) JP6959152B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7575983B2 (ja) 2021-03-30 2024-10-30 日立建機株式会社 対話制御システム、および対話制御方法
JP7351944B2 (ja) * 2022-01-20 2023-09-27 ヤフー株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
JP7372372B2 (ja) * 2022-02-18 2023-10-31 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
JP7532629B1 (ja) 2023-12-07 2024-08-13 株式会社アシュアード 情報処理装置及び情報処理方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004240150A (ja) * 2003-02-05 2004-08-26 Nippon Telegr & Teleph Corp <Ntt> 音声対話装置、音声対話装置選択方法、プログラム及び記録媒体
JP2008251051A (ja) * 2008-07-07 2008-10-16 Okwave:Kk 管理サーバ
JP2013167985A (ja) * 2012-02-15 2013-08-29 Nomura Research Institute Ltd 談話要約生成システムおよび談話要約生成プログラム
JP2016212541A (ja) * 2015-05-01 2016-12-15 株式会社ATR−Trek 対話装置、対話方法、及びそのコンピュータプログラム

Also Published As

Publication number Publication date
JP2019125317A (ja) 2019-07-25

Similar Documents

Publication Publication Date Title
JP6986978B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Han et al. Mapping the manosphere. Categorization of reactionary masculinity discourses in digital environment
Lewis et al. ‘Friending’: London-based undergraduates’ experience of Facebook
Smith et al. How does brand-related user-generated content differ across YouTube, Facebook, and Twitter?
Cobos et al. A hybrid system of pedagogical pattern recommendations based on singular value decomposition and variable data attributes
Herrera Theorizing the lesbian hashtag: Identity, community, and the technological imperative to name the sexual self
JP6959152B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP7012599B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Kim et al. Personality structure of brands on social networking sites and its effects on brand affect and trust: evidence of brand anthropomorphization
JP6719399B2 (ja) 解析装置、解析方法、およびプログラム
JP2019511795A (ja) ソーシャルネットワーク上のオブジェクトの分析および探索のためのシステムならびにその方法
Piercy et al. A typology of job search sources: Exploring the changing nature of job search networks
CN105308591A (zh) 来自社交交互的关系强度的动态性
Kim et al. Emotion-based Hangul font recommendation system using crowdsourcing
Bai et al. Predicting personality traits of microblog users
KR102397009B1 (ko) 소셜 미디어 활동 분석을 통한 관계형성 서비스 제공방법 및 그 시스템
US9058328B2 (en) Search device, search method, search program, and computer-readable memory medium for recording search program
JP7080609B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
Kaur et al. A flexible approach towards effective teaching: Use of social media by teachers
Zhang et al. Characterizing and modeling the dynamics of activity and popularity
Brandstetter et al. Robots will dominate the use of our language
JP6983672B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2020047126A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
Chelaru et al. Recognizing skill networks and their specific communication and connection practices
Mukhopadhyay Chat GPT adoption in cultural domains in India: A diffusion of innovation analysis

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20191101

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20191108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210423

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211007

R150 Certificate of patent or registration of utility model

Ref document number: 6959152

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350