【新規性喪失の例外の表示】特許法第30条第2項適用 平成28年2月22日 http://db−event.jpn.org/deim2016/proceedings/proceedings.zip、http://www.tkl.iis.u−tokyo.ac.jp/deim2016/proceedings.zip、http://www.cs.tsukuba.ac.jp/▲〜▼amagasa//deim2016/proceedings.zipを通じて発表、平成28年2月29日〜3月2日 一般社団法人電子情報通信学会、日本データベース学会及び一般社団法人情報処理学会主催の「第8回データ工学と情報マネジメントに関するフォーラム(第14回日本データベース学会年次大会)」において文書をもって発表、平成28年3月31日 http://db−event.jpn.org/deim2016/papers/138.pdfを通じて発表、平成28年6月4日 アカデミック・リソース・ガイド株式会社(ARG)発行の「ARG Webインテリジェンスとインタラクション研究会予稿集(第8回研究会)、ARG WI2 No.8,2016」に発表、平成28年6月4日〜6月5日 アカデミック・リソース・ガイド株式会社(ARG)及びWebインテリジェンスとインタラクション研究会主催の「第8回WI2研究会」において文書をもって発表、平成28年6月11日 http://www.ieice.org/ken/program/index.php?tgs_regid=75e06610f126305723b1103736701bc3a273e380cc7561d25bfc5eb9a59037a9&tgid=IEICE−DE&lang=を通じて発表、平成28年6月11日 一般社団法人電子情報通信学会発行の「電子情報通信学会技術研究報告、信学技報Vol.116 No.105」に発表、平成28年6月18日 日本データベース学会及び一般社団法人電子情報通信学会主催の「第7回ソーシャルコンピューティングシンポジウム」において文書をもって発表
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0028】
以下、投稿情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素、ステップは同様の動作を行うので、再度の説明を省略する場合がある。
【0029】
本実施の形態において、2以上のユーザが行う対話を支援できる対話システム100について説明する。
【0030】
図1は、本実施の形態における対話システム100の概念図である。対話システム100は、投稿情報処理装置1、2以上のユーザ端末2を備える。投稿情報処理装置1は、2以上の各ユーザ端末2の各々と、例えば、LAN、インターネット等のネットワーク、有線または無線の通信回線などを介して通信可能に接続される。投稿情報処理装置1は、例えば、本対話システム100を運営する団体のサーバであるが、例えば、インターネット上のクラウドサーバなどでもよく、そのタイプや所在は問わない。2以上の各ユーザ端末2(以下、単に“ユーザ端末2”と記す場合がある)は、通常、本対話システム100を利用してチャット等の対話を行うユーザの携帯端末(スマートフォン、タブレット端末、携帯電話機等)やPCなどであるが、そのタイプや所在は問わない。
【0031】
図2は、投稿情報処理装置1のブロック図である。投稿情報処理装置1は、格納部11、受信部12、処理部13、および送信部14を備える。格納部11は、ユーザ静的プロファイル格納部111、ユーザ動的プロファイル格納部112、および投稿情報格納部113を備える。受信部12は、投稿情報受信部121、および指示受信部122を備える。処理部13は、投稿情報蓄積部131、閲覧履歴蓄積部132、動的プロファイル情報生成部133、およびリンク生成部134を備える。送信部14は、投稿情報送信部141、および補助情報送信部142を備える。
【0032】
格納部11は、各種の情報を格納し得る。各種の情報とは、例えば、静的プロファイル情報、動的プロファイル情報、投稿情報、ユーザ識別子、端末識別子、補助情報識別子、用語データベースなどである。静的プロファイル情報、動的プロファイル情報、および投稿情報については後述する。
【0033】
ユーザ識別子とは、対話を行っている2以上の各ユーザを識別する識別子である。ユーザ識別子は、例えば、メールアドレス、電話番号、IDなどであるが、ユーザを識別し得る情報であれば何でもよい。端末識別子とは、対話を行っている2以上の各ユーザのユーザ端末2を識別する識別子である。端末識別子は、例えば、MACアドレス、IPアドレスなどであるが、ユーザ端末2を識別し得る情報であれば何でもよい。なお、ユーザが保有するユーザ端末2の端末識別子を当該ユーザのユーザ識別子として用いることも可能である。
【0034】
補助情報とは、対話を補助するための情報である。補助情報のデータタイプや内容等は問わない。補助情報は、例えば、ウェブページ、一のユーザに類似する他のユーザのユーザ情報、一の投稿情報を含む一連の投稿情報に類似する他の一連の投稿情報、または一の投稿情報を含む一連の投稿情報に類似する他の一連の投稿情報が有するリンクの先の補助情報、のうちのいずれか1以上である。
【0035】
補助情報は、例えば、知識支援情報であってもよいし、興味喚起支援情報であってもよい。知識支援情報とは、ユーザによる知識の習得を支援する情報である。このため、知識支援情報は、通常、重要度(例えば出現頻度)の低い用語とリンクされる。重要度の低い用語とは、例えば、重要度が閾値以下または閾値より低い用語、重要度が下位N(Nは1以上の自然数)の用語である。興味喚起支援情報とは、ユーザの興味を喚起する情報である。興味喚起支援情報は、例えば、投稿情報を受信する側のユーザから送信する側のユーザへ周知させたくなる情報である。興味喚起支援情報は、興味喚起による会話の促進を目的としているため、通常、重要度の高い用語とリンクされる。重要度の高い用語とは、例えば、重要度が閾値以上または閾値より高い用語、重要度が上位N(Nは1以上の自然数)の用語である。
【0036】
ウェブページとは、例えば、ウェブ検索により取得した情報であり、例えば、講義の映像である講義映像、講義の補足資料などであるが、その内容等は問わない。一のユーザに類似する他のユーザのユーザ情報とは、例えば、かかるユーザ(類似ユーザ)のユーザ情報を記載したウェブページや類似ユーザの情報が格納されたデータベースの情報等であるが、メールアドレスなどでもよい。なお、類似ユーザについては後述する。
【0037】
一の投稿情報とは、2以上のユーザの一連の発言で構成される情報であり、例えば、チャットやSNS等のコンテンツである。チャットは、例えば、Line、ChatPad等である。SNSは、例えば、facebook(登録商標)、インスタグラム(登録商標)、TWITTER(登録商標)等である。
【0038】
一の投稿情報を含む一連の投稿情報に類似する他の一連の投稿情報とは、例えば、かかる一連の投稿情報(コンテンツ)に類似するコンテンツ(類似コンテンツ)である。なお、類似コンテンツについては後述する。一の投稿情報を含む一連の投稿情報に類似する他の一連の投稿情報が有するリンクの先の補助情報とは、かかる類似コンテンツにリンクされた補助情報である。投稿情報が文字列の場合、一連の投稿情報と他の一連の投稿情報とが類似するか否かは、例えば、文字列の集合が類似するか否かにより判断される。かかる技術は公知技術である。
【0039】
また、補助情報は、通常、補助情報識別子に対応付いている。補助情報識別子とは、補助情報を識別する識別子である。補助情報識別子は、例えば、上記のような映像、資料、ユーザ情報、コンテンツなどを有するウェブページのURL、ユーザのメールアドレスなどであるが、その種類は問わない。
【0040】
用語データベースとは、2以上の用語が登録されたデータベースである。用語データベースには、通常、予め選定された2以上の用語が登録されている。用語データベースの各用語には、例えば、当該用語が検索される頻度などに基づく重要度が予め対応付けられていてもよい。用語とは、通常、単語であるが句や文を含んでも良い。
【0041】
ユーザ静的プロファイル格納部111には、ユーザ識別子と静的プロファイル情報との対が、2以上、格納される。静的プロファイル情報とは、当該ユーザの静的なプロファイルを示す情報である。静的プロファイル情報とは、例えば、ある頻度以上、頻繁に変化がないユーザの特性を示す情報である、と言える。静的ロプファイル情報は、例えば、当該ユーザの氏名、住所、連絡先、学年、クラス、受講状況、習熟度などであるが、その種類は問わない。
【0042】
ユーザ動的プロファイル格納部112は、ユーザ識別子と静的プロファイル情報との対が、2以上、格納される。なお、動的プロファイル情報については後述する。
【0043】
投稿情報格納部113には、ユーザ識別子と投稿情報との対が、2以上、格納される。投稿情報は、対になるユーザ識別子で識別されるユーザによって投稿された情報である。投稿とは、ユーザの発言をいう。投稿情報は、通常、文字列であるが、画像や音声データであっても良い。投稿情報のデータタイプは問わない。本実施の形態でいう投稿は、通常、一のユーザによる1回の発言である。これに対して、2以上のユーザによる一連の発言は“対話”という。以下では、一連の発言に対応する一連の投稿情報を“対話情報”と記す場合がある。
【0044】
投稿情報格納部113において、ユーザ識別子と投稿情報との対は、通常、時系列に格納されるが、これに代えて、またはこれに加えて、時刻情報に対応付けて格納されてもよい。時刻情報は、当該投稿情報が投稿された時刻を示す情報である。時刻は、時分秒に加えて、日付(年月日)も含んでよい(以下同様)。なお、対応付けて格納することは、ユーザ識別子と投稿情報との対が時刻情報を有する場合も含む。
【0045】
受信部12は、各種の情報を受信する。各種の情報とは、例えば、ユーザ端末2からの投稿情報、投稿情報に付加されたリンクに対応する補助情報の出力の指示(以下、“リンクへの指示”と記す場合がある)、一のユーザの投稿情報に対する他のユーザのアクションなどである。リンクへの指示は、通常、投稿情報識別子と文字列とを有する。リンクへの指示は、例えば、投稿情報識別子とリンクに対応する文字列の位置を特定する情報(例えば、当該文字列の開始オフセットと終了オフセット)である。投稿情報識別子とは、投稿情報を識別する識別子である。文字列とは、投稿情報を構成する文字列であり、リンクが付加された文字列(例えば用語)である。ただし、リンクへの指示のデータ構造は問わない。アクションは、通常、投稿情報識別子とアクション識別子とを有する。アクション識別子は、アクションを識別する識別子である。ただし、アクションのデータ構造は問わない。受信部12は、アクションをユーザ識別子と対に受信する。なお、具体的なアクションについては後述する。
【0046】
投稿情報受信部121は、2以上のユーザ端末2から投稿情報を受信する。投稿情報受信部121は、投稿情報を、通常、ユーザ識別子と対に受信する。なお、対に受信することは、投稿情報がユーザ識別子を有する場合も含む。
【0047】
指示受信部122は、ユーザ端末2からリンクへの指示を受信する。指示受信部122は、通常、リンクへの指示を、ユーザ識別子と対に受信する。
【0048】
処理部13は、各種の処理を行う。各種の処理とは、後述する投稿情報蓄積部131、閲覧履歴蓄積部132、動的プロファイル情報生成部133、およびリンク生成部134の処理、およびフローチャートで説明する各種の判断その他の処理である。
【0049】
投稿情報蓄積部131は、投稿情報受信部121が受信した投稿情報を投稿情報格納部113に蓄積する。投稿情報蓄積部131は、投稿情報を、通常、ユーザ識別子に対応付けて、時系列に蓄積する。
【0050】
閲覧履歴蓄積部132は、閲覧履歴を蓄積する。閲覧履歴とは、リンクへの指示に応じて出力された補助情報の閲覧に関する履歴である。閲覧履歴は、例えば、ユーザ識別子と、補助情報識別子と、時刻情報とを有する。時刻情報は、当該補助情報が閲覧された時刻を示す情報である。ただし、閲覧履歴のデータ構造は問わない。
【0051】
動的プロファイル情報生成部133は、生成対象を用いて、一のユーザ識別子で識別されるユーザの動的プロファイル情報を生成する。生成対象とは、動的プロファイル情報を生成するために使用する情報である。
【0052】
生成対象は、例えば、投稿情報格納部113に格納されている投稿情報であり、一のユーザ識別子と対になる1以上の投稿情報である。生成対象は、一のユーザ識別子と対になる1以上の投稿情報、当該一のユーザの投稿情報に対応する他のユーザの1以上の投稿情報も含む対話情報、一のユーザがリンクを指示した際に出力された補助情報、用語データベースのうちの1または2種類以上の情報である。
【0053】
動的プロファイル情報とは、一のユーザの動的なプロファイルを示す情報である。動的プロファイル情報は、例えば、一のユーザ識別子に対応する1以上の投稿情報で使用されている2以上の用語(例えば特徴語)の重要度の集合であるが、これに限らない。なお、以下では、かかる2以上の用語の重要度の集合を“用語のベクトル”または“特徴ベクトル”と記す場合がある。また、生成とは、既存の動的プロファイル情報の一部または全部を更新する処理でもよい。なお、動的プロファイル情報生成部133が動的プロファイル情報を生成するタイミングは問わない。
【0054】
動的プロファイル情報生成部133は、投稿情報格納部113に格納されている投稿情報であり、一のユーザ識別子と対になる1以上の投稿情報を用いて、当該一のユーザ識別子で識別されるユーザの動的プロファイル情報を生成する。
【0055】
動的プロファイル情報生成部133は、少なくとも一のユーザが投稿した1以上の投稿情報を構成する2以上の用語を用いて、当該一のユーザの動的プロファイル情報を生成してもよい。
【0056】
動的プロファイル情報生成部133は、一のユーザの1以上の投稿情報に加えて、例えば、当該一のユーザの投稿情報に対応する他のユーザの1以上の投稿情報も含む対話情報を用いて、当該一のユーザの動的プロファイル情報を生成してよい。一のユーザの投稿情報に対応する他のユーザの1以上の投稿情報とは、一連の投稿情報の中の投稿情報であってもよいし、当該一のユーザの投稿情報の直前の他ユーザの投稿情報であってもよいし、当該一のユーザの投稿情報の直後の他ユーザの投稿情報であってもよいし、直前および直後の他ユーザの投稿情報であっても構わない。
【0057】
または、動的プロファイル情報生成部133は、一のユーザの1以上の投稿情報に加えて、当該一のユーザがリンクを指示した際に出力された補助情報も用いて、動的プロファイル情報を生成してよい。動的プロファイル情報生成部133は、1以上の投稿情報、対話情報、および補助情報を用いて、動的プロファイル情報を生成しても構わない。
【0058】
動的プロファイル情報の生成とは、通常、生成対象からから1以上の用語を抽出し、用語と重要度との対の集合を求める処理である。
【0059】
動的プロファイル情報生成部133は、例えば、用語データベースを参照して、1以上の投稿情報から1以上の用語を抽出し、用語と重要度との対の集合を含む動的プロファイル情報を生成してもよい。動的プロファイル情報を構成する用語は、特徴語であることが望ましい。特徴語とは、当該ユーザの発言に特徴的に出現する用語である。特徴語は、例えば、出現頻度の閾値より高い用語、または閾値より低い用語である。特徴語は、例えば、出現頻度の高い上位N(Nは1以上の自然数)位までの用語、または出現頻度の低い上位M位(Mは1以上の自然数)までの用語であるが、これに限らない。
【0060】
動的プロファイル情報生成部133は、例えば、生成対象から1以上の用語を抽出した後、当該1以上の各用語の出現頻度を求め、求めた出現頻度を用いて、当該1以上の用語の中から1以上の特徴語を抽出し、特徴語と出現頻度との対の集合(以下“特徴ベクトル”と記す場合がある)を含む動的プロファイル情報を生成してもよい。出現頻度とは、全用語の総出現回数に対する当該用語の出現回数をいう。出現頻度は、例えば、TF値、IDF値、TF−IDF値などにより数値化された情報である。TF(Term frequency)値は、例えば、当該用語の全投稿情報中での出現頻度を示す値である。IDF(Inverse Document Frequency)値は、当該用語がいくつの投稿情報で共通して使われているかに関係する値であり、通常、当該用語の出現する投稿情報の数が多いほど、小さい値を示す。TF-IDF値は、例えば、TF値とIDF値との積である。ただし、これらは例示に過ぎず、出現頻度の種類や算出方法は問わない。
【0061】
また、動的プロファイル情報生成部133は、一のユーザの投稿情報に対応する他のユーザのアクションに関するアクション情報をも用いて、動的プロファイル情報を生成してよい。一のユーザの投稿情報に対応する他のユーザのアクション(以下、単に“アクション”と記す場合がある)とは、例えば、一のユーザの発言に対して他のユーザが行うアクションである。アクションは、例えば、投稿情報に対するユーザの操作または動作であり、例えば、投稿情報と対に表示される「いいね」、「シェアする」といったボタンの押下であるが、これに限らない。アクション情報は、通常、アクションの回数を示す情報を含む。アクションの回数を示す情報は、例えば、「いいね」の押下回数、「シェアする」の押下回数などを示す情報であるが、アクションの回数に関する情報であれば何でもよい。
【0062】
リンク生成部134は、予め決められた条件を満たす場合に、2以上のユーザ端末2間での対話を補助する補助情報へのリンクを生成する。予め決められた条件は、例えば、文字列に対する条件でもよいし、ユーザに対する条件でもよいし、一連の投稿情報に対する条件でもよい。予め決められた条件を持たす場合とは、例えば、動的プロファイル情報が構成できたことでもよいし、ユーザに類似する他のユーザ(類似ユーザ)が見つかったことでもよいし、類似する一連の投稿情報(類似コンテンツ)が存在することでもよく、リンク生成のトリガとなり得る条件であれば何でもよい。
【0063】
文字列に対する好ましい条件の1つは、文字列で構成される用語の重要度が“第一閾値以上または第一閾値より大である”という条件である。文字列に対する好ましい条件の他の1つは、文字列で構成される用語の重要度が“第二閾値以下または第二閾値より小である”という条件である。
【0064】
類似ユーザとは、その動的プロファイル情報が、所定の条件を満たすほど、当該ユーザと類似するユーザである。類似コンテンツとは、そこに出現する用語のベクトルが、所定の条件を満たすほど、当該コンテンツと類似する一連の投稿情報である。
【0065】
一般に、リンクとは、ある情報の中に記述された、別の情報の所在を表す情報であり、リンクを生成することは、ある情報の中に、別の情報へのリンクを付加することを含む。そして、本実施の形態におけるリンクの生成は、ユーザ端末2が出力する情報の中に、補助情報へのリンクを付加することである。ユーザ端末2が出力する情報とは、通常、投稿情報であるが、例えば、イーラニングの画面、電子メールの画面などでもよく、そのタイプは問わない。リンクは、通常、投稿情報を構成する文字列に対して付加されるが、画面に含まれる画像に付加されてもよいし、画面単位で付加されても構わない。また、リンクが付加されるリンク個所(文字列等)は、ユーザごとに異なっていてもよい。さらには、同じ個所にリンクが付加された場合でも、そのリンク先(文字列等にリンクされた補助情報)がユーザによって異なっていてもよい。
【0066】
すなわち、リンク生成部134は、例えば、投稿情報を出力するユーザ端末2またはユーザに応じて、受信部12が受信した投稿情報の中で、予め決められた条件を満たす文字列であり、異なる文字列に対して、補助情報へのリンクを生成してもよい。また、リンク生成部134は、例えば、投稿情報を出力するユーザ端末2またはユーザに応じて、異なる補助情報へのリンクを生成してもよい。
【0067】
リンク生成部134は、例えば、動的プロファイル情報を用いて、リンクを生成する対象の文字列を決定する。具体的には、リンク生成部134は、投稿情報の中で、重要度が閾値以上または重要度が閾値より大きい用語に対して、補助情報へのリンクを生成してもよい。または、リンク生成部134は、投稿情報の中で、重要度が閾値以下または重要度が閾値未満の用語に対して、補助情報へのリンクを生成してもよい。
【0068】
リンク生成部134は、例えば、他のユーザの投稿情報であり、一のユーザのユーザ端末2に出力される投稿情報の中の文字列に対して補助情報へのリンクを生成することは好適である。また、リンク生成部134は、例えば、自分が投稿した投稿情報の中の文字列に対して、リンクを生成しないことは好適である。つまり、上記の投稿情報の中であることは、他人の投稿情報の中であることが好適である。
【0069】
また、リンク生成部134は、自分の投稿した投稿情報であるか、他ユーザが投稿した投稿情報であるかを問わず、投稿情報の中で、重要度が第一閾値以上または重要度が第一閾値より大きい用語に対して第一補助情報へのリンクを生成しても構わない。また、リンク生成部134は、自分の投稿した投稿情報であるか、他ユーザが投稿した投稿情報であるかを問わず、投稿情報の中で、重要度が第二閾値以下または重要度が第二閾値より小さい用語に対して第二補助情報へのリンクを生成しても構わない。
【0070】
リンク生成部134は、静的プロファイル情報も用いて、リンクを生成しても良い。リンク生成部134は、静的プロファイル情報に応じたリンク先へのリンクを生成することが望ましい。静的プロファイル情報に応じたリンク先とは、例えば、学年、クラス等に応じた講義映像、受講状況、習熟度等に応じた補足資料などであるが、これに限らない。
【0071】
リンク生成部134は、現在、対話を行っている最中の一連の投稿情報を取得し、当該一連の投稿情報と類似する他の一連の投稿情報を投稿情報格納部113から検索し、当該類似する他の一連の投稿情報を補助情報とするリンクを生成しても良い。かかる場合、リンク元は、現在、対話を行っている最中の一連の投稿情報でも良いし、画面でも良い。リンク元が画面である場合、リンク生成部134は、類似する他の一連の投稿情報を呼び出すためのボタン等のリンクを生成しても良い。
【0072】
また、リンク生成部134は、一のユーザの動的プロファイル情報との類似度が閾値以上または閾値より大きい動的プロファイル情報を検出し、当該動的プロファイル情報に対応する他のユーザの情報を補助情報とするリンクを生成しても良い。なお、他のユーザの情報とは、例えば、当該ユーザのユーザ識別子、ユーザの静的プロファイル情報等である。かかる場合、リンク元は、画面でも良い。リンク元が画面である場合、リンク生成部134は、他のユーザの情報を呼び出すためのボタン等のリンクを生成しても良い。
【0073】
送信部14は、各種の情報を送信する。各種の情報とは、例えば、前述した投稿情報などである。
【0074】
投稿情報送信部141は、投稿情報受信部121が受信した投稿情報であり、リンク生成部134が生成したリンクを有する投稿情報を送信する。ただし、投稿情報送信部141が送信する投稿情報の一部は、リンクを有さない投稿情報であってもよい。投稿情報送信部141は、投稿情報を、通常、当該投稿情報の送信元であるユーザ端末2を除く1以上の各ユーザ端末2に送信する。なお、この1以上の各ユーザ端末2は、投稿情報の送信元であるユーザ端末2と対話を行うユーザのユーザ端末2である。また、投稿情報送信部141は、投稿情報を、当該投稿情報の送信元であるユーザ端末2にも送信しても良い。
【0075】
補助情報送信部142は、指示受信部122が受信したリンクへの指示に対応する補助情報(以下、“リンク先の補助情報”と記す場合がある)を送信する。補助情報送信部142は、リンク先の補助情報を、通常、指示の送信元であるユーザ端末2に送信する。
【0076】
図3は、ユーザ端末2のブロック図である。ユーザ端末2は、端末格納部21、端末受付部22、端末処理部23、端末送信部24、端末受信部25、および端末出力部26を備える。
【0077】
端末格納部21は、各種の情報を格納し得る。各種の情報とは、例えば、当該ユーザ端末2の端末識別子、当該ユーザ端末2を保有するユーザのユーザ識別子などである。
【0078】
端末受付部22は、各種の情報を受け付ける。各種の情報とは、例えば、投稿情報、投稿情報に付加されたリンクに対応する補助情報の出力の指示(リンクへの指示)、アクションなどである。
【0079】
端末処理部23は、各種の処理を行う。各種の処理とは、例えば、端末受付部22が投稿情報やリンク先への指示を受け付けたか否かの判断などである。各種の処理とは、例えば、端末受付部22が受け付けた情報を送信するデータ構造に変換する処理等である。
【0080】
端末送信部24は、各種の情報を送信する。各種の情報とは、例えば、投稿情報、リンク先への指示、アクションなどである。
【0081】
端末受信部25は、各種の情報を受信する。各種の情報とは、例えば、投稿情報、補助情報などである。端末受信部25が受信する補助情報は、通常、リンクを有する補助情報であるが、リンクを有さない補助情報でもよい。
【0082】
端末出力部26は、各種の情報を出力する。各種の情報とは、例えば、投稿情報、補助情報などである。端末出力部26が出力する補助情報は、通常、リンクを有する補助情報であるが、リンクを有さない補助情報でもよい。出力とは、ディスプレイへの表示、スピーカーからの音出力、外部の装置への送信、記録媒体への蓄積、プリンタでの印字、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
【0083】
格納部11、ユーザ静的プロファイル格納部111、ユーザ動的プロファイル格納部112、投稿情報格納部113、および端末格納部21は、例えば、ハードディスクなどの不揮発性の記録媒体が好適であるが、RAMなど揮発性の記録媒体でも実現可能である。
【0084】
格納部11等に各種の情報が記憶される過程は問わない。例えば、DVDやメモリカードなどの着脱可能な記録媒体を介して情報が格納部11等で記憶されるようになってもよく、ネットワークや通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。入力デバイスは、例えば、キーボードやマウスやタッチパネルによるもの等、何でもよい。
【0085】
端末受付部22は、かかる入力手段のデバイスドライバによって、または入力デバイスとそのデバイスドライバ等とで実現され得る。
【0086】
受信部12、投稿情報受信部121、指示受信部122、および端末受信部25は、通信モジュールまたは放送受信モジュールのうち1以上のハードウェアを含むと考えても、含まないと考えてもよい。受信部12等は、通信モジュール等のデバイスドライバによって、または通信モジュール等とそのデバイスドライバ等とで実現可能である。
【0087】
処理部13、投稿情報蓄積部131、閲覧履歴蓄積部132、動的プロファイル情報生成部133、リンク生成部134、および端末処理部23は、通常、MPUやメモリ等から実現され得る。処理部13等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。ただし、処理部13等は、ハードウェア(専用回路)で実現してもよい。
【0088】
送信部14、投稿情報送信部141、補助情報送信部142、および端末送信部24は、通信モジュールまたは放送モジュールのうち1以上のハードウェアを含むと考えても、含まないと考えてもよい。送信部14等は、通信モジュール等のデバイスドライバによって、または通信モジュール等とそのデバイスドライバ等とで実現可能である。
【0089】
端末出力部26は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えてもよい。端末出力部26等は、出力デバイスのドライバーソフトによって、または出力デバイスとそのドライバーソフト等とで実現され得る。
【0090】
次に、対話システム100の動作について、
図4〜
図7のフローチャートを用いて説明する。なお、記述の事項に関する説明は、省略または簡略化している。
【0091】
図4は、投稿情報処理装置1の動作を説明するフローチャートである。
【0092】
(ステップS101)処理部13は、投稿情報受信部121が投稿情報をユーザ識別子と対に受信したか否かを判別する。投稿情報受信部121が投稿情報をユーザ識別子と対に受信した場合はステップS102に進み、受信していない場合はステップS106に進む。
【0093】
(ステップS102)投稿情報蓄積部131は、投稿情報受信部121が受信した投稿情報をユーザ識別子に対応付けて投稿情報格納部113に蓄積する。
【0094】
(ステップS103)動的プロファイル情報生成部133は、当該ユーザ識別子に対応する動的プロファイル情報を生成する処理である動的プロファイル情報生成処理を実行する。なお、動的プロファイル情報生成処理については、
図5のフローチャートを用いて説明する。
【0095】
(ステップS104)リンク生成部134は、補助情報へのリンクを生成する処理であるリンク生成処理を実行する。なお、リンク生成処理については、
図6のフローチャートを用いて説明する。
【0096】
(ステップS105)投稿情報送信部141は、投稿情報受信部121が受信した投稿情報であり、リンク生成部134が生成したリンクを有する投稿情報またはリンクを有さない投稿情報を、当該投稿情報の送信元であるユーザ端末2を除く1以上の各ユーザ端末2(他のユーザ端末2)に送信する。例えば、格納部11に、一の対話に参加している2以上のユーザに対応する一群のユーザ識別子が格納されており、投稿情報送信部141は、当該一群のユーザ識別子のうち、当該投稿情報と対に受信されたユーザ識別子を除く他のユーザ識別子を宛て先として、当該投稿情報を送信すればよい。その後、ステップS101に戻る。
【0097】
(ステップS106)処理部13は、指示受信部122がリンクへの指示をユーザ識別子と対に受信したか否かを判別する。指示受信部122がリンクへの指示をユーザ識別子と対に受信した場合はステップS107に進み、受信していない場合はステップS109に進む。
【0098】
(ステップS107)処理部13は、指示受信部122が受信したリンクへの指示に対応する補助情報(リンク先の補助情報)を取得する。そして、補助情報送信部142は、取得された補助情報を、当該指示の送信元であるユーザ端末2に送信する。
【0099】
(ステップS108)処理部13は、当該補助情報を識別する補助情報識別子を有する閲覧履歴を、当該端末識別子に対応付けて格納部11に蓄積する。ステップS101に戻る。なお、閲覧履歴は、閲覧時間も含み得る。閲覧時間とは、当該補助情報を閲覧した時間である。処理部13は、例えば、当該補助情報を送信してから、別の補助情報やその他の情報を送信するまでの時間を、閲覧時間と見なしてもよい。投稿情報処理装置1は、ユーザ端末から閲覧時間を受信し、処理部13は当該閲覧時間を取得しても良い。ただし、閲覧時間の取得方法は問わない。
【0100】
(ステップS109)処理部13は、受信部12がユーザの投稿情報に対する他のユーザのアクションを受信したか否かを判別する。受信部12がかかるアクションを受信した場合はステップS110に進み、受信していない場合はステップS101に戻る。
【0101】
(ステップS110)処理部13は、当該アクションの回数(例えば「いいね」等の押下回数)を含むアクション情報を、当該投稿情報に対応するユーザ識別子に対応付けて蓄積する。その後、ステップS101に戻る。
【0102】
なお、
図4のフローチャートにおいて、動的プロファイル情報生成処理、リンク生成処理の実行タイミングは問わない。
【0103】
また、
図4のフローチャートにおいて、例えば、投稿情報処理装置1の電源オンに応じて処理は開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始および終了のトリガは問わない。
【0104】
図5は、動的プロファイル生成処理を説明するフローチャートである。
【0105】
(ステップS201)動的プロファイル情報生成部133は、投稿情報等の生成対象から用語の抽出を行う。なお、用語の抽出は、例えば、生成対象の文字列を形態素解析し、当該形態素から自立語の用語、または特定の品詞(例えば、名詞、名詞句)の用語を抽出する処理である。また、用語の抽出は、例えば、用語データベースを参照し、用語データベースに含まれる用語を生成対象から検索処理により取得する。
【0106】
(ステップS202)動的プロファイル情報生成部133は、当該投稿情報から1以上の用語が抽出されたか否かを判別する。1以上の用語が抽出された場合はステップS202に進み、1つの用語も抽出されていない場合は上位処理にリターンする。
【0107】
(ステップS203)動的プロファイル情報生成部133は、変数iに初期値“1”をセットする。変数iは、抽出された1以上の用語のうち、未処理の用語を順番に示す変数である。
【0108】
(ステップS204)動的プロファイル情報生成部133は、i番目の用語があるか否かを判別する。i番目の用語がある場合はステップS205に進み、ない場合はステップS207に進む。
【0109】
(ステップS205)動的プロファイル情報生成部133は、当該ユーザ識別子に対応する1以上の投稿情報と、履歴情報またはアクション情報のうち1以上とを用いて、i番目の用語の重要度を取得する。
【0110】
(ステップS206)動的プロファイル情報生成部133は、変数iをインクリメントする。その後、ステップS204に戻る。
【0111】
(ステップS207)動的プロファイル情報生成部133は、取得した1以上の用語の重要度の集合で構成される動的プロファイル情報を、当該ユーザ識別子に対応付けて、ユーザ動的プロファイル格納部112に蓄積する。その後、上位処理にリターンする。
【0112】
図6は、リンク生成処理を説明するフローチャートである。
【0113】
(ステップS301)リンク生成部134は、当該投稿情報を受信するユーザを識別するユーザ識別子を格納部11から取得する。
【0114】
(ステップS302)リンク生成部134は、当該ユーザ識別子に対応する動的プロファイル情報をユーザ動的プロファイル格納部112から取得する。
【0115】
(ステップS303)リンク生成部134は、変数iに初期値“1”をセットする。
【0116】
(ステップS304)リンク生成部134は、i番目の用語があるか否かを判別する。i番目の用語がある場合はステップS305に進み、ない場合は上位処理にリターンする。
【0117】
(ステップS305)リンク生成部134は、i番目の用語の重要度が条件を満たすか否かを判別する。i番目の用語の重要度が条件を満たす場合はステップS306に進み、満たさない場合はステップS308に進む。
【0118】
(ステップS306)リンク生成部134は、i番目の用語に対応する補助情報を識別する補助情報識別子を格納部11から取得する。
【0119】
(ステップS307)リンク生成部134は、i番目の用語から当該補助情報へのリンクを生成する。その後、ステップS317に進む。
【0120】
(ステップS308)リンク生成部134は、i番目の用語がユーザ名か否かを判別する。i番目の用語がユーザ名である場合はステップS309に進み、そうでない場合はステップS313に進む。
【0121】
(ステップS309)リンク生成部134は、ユーザ間の類似度を算出する。
【0122】
(ステップS310)リンク生成部134は、算出した類似度を用いて、当該ユーザに類似する他のユーザ(類似ユーザ)があるか否かを判別する。類似ユーザがある場合はステップS311に進み、ない場合はステップS313に進む。
【0123】
(ステップS311)リンク生成部134は、類似ユーザに対応する補助情報を識別する補助情報識別子を格納部11から取得する。
【0124】
(ステップS312)リンク生成部134は、当該補助情報へのリンクを生成する。
【0125】
(ステップS313)リンク生成部134は、一連の投稿情報(コンテンツ)間の類似度を算出する。
【0126】
(ステップS314)リンク生成部134は、算出した類似度を用いて、当該一連の投稿情報に類似する他の一連の投稿情報(類似コンテンツ)があるか否かを判別する。類似コンテンツがある場合はステップS315に進み、ない場合はステップS317に進む。
【0127】
(ステップS315)リンク生成部134は、類似コンテンツに対応する補助情報を識別する補助情報識別子を格納部11から取得する。
【0128】
(ステップS316)リンク生成部134は、当該補助情報へのリンクを生成する。
【0129】
(ステップS317)リンク生成部134は、変数iをインクリメントする。その後、ステップS304に戻る。
【0130】
なお、当該投稿情報を受信するユーザの数が2以上である場合は、
図6のフローチャートに従う処理を、2以上の各ユーザについて行うことで、ユーザによって異なるリンクが生成される。ユーザによって異なるリンクとは、リンクが設定される用語(文字列)が異なる場合、またはユーザによってリンク先の補助情報が異なる場合、のうち1以上の場合を含む。
【0131】
また、
図6のフローチャートでは、リンク生成部134は、動的プロフィル情報を用いてリンクを生成しているが、これを用いずにリンクを生成することも可能である。例えば、リンク生成部134は、用語データベースに登録されている用語が投稿情報に出現したとき、当該用語と対に登録されている既存の重要度のみを用いてリンクを生成してもよいし、または、何ら重要度を参照せず、どの用語についてもリンクを生成して構わない。さらには、リンク生成部134は、用語データベースも参照せず、例えば、投稿情報に出現した名詞をウェブ検索して、検索結果に含まれるウェブページへのリンクを生成してもよい。
【0132】
図7は、ユーザ端末2の動作を説明するフローチャートである。
【0133】
(ステップS401)端末処理部23は、端末受付部22が投稿情報を受け付けたか否かを判別する。端末受付部22が投稿情報を受け付けた場合はステップS402に進み、受け付けていない場合はステップS403に進む。
【0134】
(ステップS402)端末送信部24は、当該投稿情報をユーザ識別子と対に、投稿情報処理装置1に送信する。その後、ステップS401に戻る。
【0135】
(ステップS403)端末処理部23は、端末受信部25が投稿情報を受信したか否かを判別する。端末受信部25が投稿情報を受信した場合はステップS404に進み、受信していない場合はステップS405に進む。
【0136】
(ステップS404)端末出力部26は、当該投稿情報をディスプレイ等の出力デバイスを介して出力する。その後、ステップS401に戻る。
【0137】
(ステップS405)端末処理部23は、端末受付部22が当該投稿情報に対するアクションを受け付けたか否かを判別する。端末受付部22が当該投稿情報に対するアクションを受け付けた場合はステップS406に進み、受け付けていない場合はステップS407に進む。
【0138】
(ステップS406)端末送信部24は、当該アクションをユーザ識別子と対に、投稿情報処理装置1に送信する。その後、ステップS401に戻る。
【0139】
(ステップS407)端末処理部23は、端末受付部22がリンクへの指示を受け付けたか否かを判別する。端末受付部22がリンクへの指示を受け付けた場合はステップS408に進み、受け付けていない場合はステップS409に進む。
【0140】
(ステップS408)端末送信部24は、当該リンクへの指示をユーザ識別子と対に、投稿情報処理装置1に送信する。その後、ステップS401に戻る。
【0141】
(ステップS409)端末処理部23は、端末受信部25が補助情報を受信したか否かを判別する。端末受信部25が補助情報を受信した場合はステップS410に進み、受信していない場合はステップS401に戻る。
【0142】
(ステップS410)端末出力部26は、当該補助情報をディスプレイ等の出力デバイスを介して出力する。その後、ステップS401に戻る。
【0143】
なお、
図7のフローチャートにおいて、例えば、ユーザ端末2の電源オンに応じて処理は開始し、電源オフや処理終了の割り込みにより処理は終了する。ただし、処理の開始および終了のトリガは問わない。
【0144】
以下、本実施の形態における対話システム100の具体的な動作例について説明する。なお、以下の説明は、例示であり、本発明を限定するものではなく、各種の変更が可能であることはいうまでもない。また、既出の事項に関する説明は、簡略化または省略している。
【0145】
対話システム100の概念図は
図1である。対話システム100を運営する団体は、大学である。対話システム100を利用するユーザは、大学の学生である。大学は、教室以外でも受講できるオンライン学習サイトを開設している。学生は、ユーザ端末2を利用してオンライン学習サイトを受講する際に、チャット等の対話を行う。対話システムは、オンライン学習サイト上で、2以上のユーザによる対話を実現すると共に、教室での講義の映像、類似ユーザのユーザ情報、類似コンテンツといった補助情報を用いて対話を支援する。
【0146】
投稿情報処理装置1を構成する格納部11には、重要度付きの用語を、2以上、登録した用語データベースが格納されている。ユーザ静的プロファイル格納部111には、ユーザXXの静的プロファイル情報と、ユーザYYの静的プロファイル情報とを含む2以上の静的プロフィル情報が格納されている。格納部11には、ユーザXXの閲覧履歴と、ユーザXXの閲覧履歴とを含む2以上の閲覧履歴も格納されている。
【0147】
投稿情報格納部113には、ユーザXXおよびユーザYYを含む2以上のユーザによって過去に投稿された2以上の投稿情報が格納されている。
【0148】
ユーザ動的プロファイル格納部112には、投稿情報格納部113に格納されている過去の2以上の投稿情報から生成された2以上の動的プロファイル情報が既に格納されている。格納されている2以上の動的プロファイル情報は、ユーザXXの動的プロファイル情報と、ユーザYYの動的プロファイル情報とを含む。
【0149】
図8は、動的プロファイル情報のデータ構造図の例である。動的プロファイル情報は、ID(例えば1,2,…)に対応付いている。ID“1”に対応する動的プロファイル情報(以下“動的プロファイル情報1”)は、ユーザ識別子“XX”に対応づいた用語および重要度の対を、1以上、有する。ユーザ識別子“XX”に対応づいた用語および重要度の対とは、例えば、用語“ZZ”および重要度“1.1”の対、用語“試験範囲”および重要度“1.6”の対、用語“Cプログラミング”および重要度“0.7”の対、用語“試験”および重要度“1.7”の対、などである。同様に、ID“2”に対応する動的プロファイル情報(以下“動的プロファイル情報2”)は、ユーザ識別子“YY”に対応づいた用語および重要度の対を、1以上、有する。ユーザ識別子“YY”に対応づいた用語および重要度の対とは、例えば、用語“ZZ”および重要度“1.0”の対、用語“Cプログラミング”および重要度“0.4”の対、用語“試験”および重要度“1.6”の対、用語“試験範囲”および重要度“1.4”の対、などである。
【0150】
いま、ユーザXXおよびユーザYYが対話システム100を利用して対話を行っている。まず、ユーザXXのユーザ端末2において、端末受付部22が投稿情報“Cプログラミング難しい”を受け付けると、端末出力部26は、投稿情報“Cプログラミング難しい”をディスプレイ等の出力デバイスを介して出力する。また、端末送信部24は、投稿情報“Cプログラミング難しい”をユーザ識別子“XX”と対に送信する。
【0151】
投稿情報処理装置1において、投稿情報受信部121が投稿情報“Cプログラミング難しい”をユーザ識別子“XX”と対に受信すると、投稿情報蓄積部131は、投稿情報“Cプログラミング難しい”をユーザ識別子“XX”に対応付けて投稿情報格納部113に蓄積する。動的プロファイル情報生成部133は、例えば次の手順で、当該ユーザ識別子に対応する動的プロファイル情報を生成する。
【0152】
動的プロファイル情報生成部133は、用語データベースを参照して、投稿情報“Cプログラミング難しい”から用語の抽出を行う。用語データベースには“Cプログラミング”がその重要度と共に登録されており、投稿情報“Cプログラミング難しい”からは、この用語“Cプログラミング”がその重要度と共に抽出される。動的プロファイル情報生成部133は、用語“Cプログラミング”の重要度を取得し、さらに、例えば、数1および数2を用いて、用語“Cプログラミング”のTF値およびIDF値を取得する。
[数1]
【0153】
TF=(用語iの重要度)/(用語iが出現した投稿情報の数)
[数2]
【0154】
IDF=(投稿情報の総数)/(用語iが出現した投稿情報の数)
【0155】
ここで、投稿情報の総数は、ユーザ識別子“XX”に対応する1以上の投稿情報の総数である。また、用語iが出現した投稿情報の数は、ユーザ識別子“XX”に対応する1以上の投稿情報のうち、用語iが出現した投稿情報の数である。
【0156】
なお、用語iが出現した投稿情報の数を算出する場合に、対象となる投稿情報は、通常、投稿情報処理装置1が管理しているすべての投稿情報である。ただし、投稿情報処理装置1が管理しているすべての投稿情報の中の条件に合致する一部(例えば、過去1年間の投稿情報、現在の対話中の投稿情報など)でも良い。投稿情報の総数を算出する対象の投稿情報も同様である。
【0157】
動的プロファイル情報生成部133は、例えば、数1および数2で求めたTF値およびIDF値を乗算して得られるTF−IDF値を、用語“Cプログラミング”の新たな重要度とする。動的プロファイル情報生成部133は、ユーザ識別子“XX”に対応する1以上の投稿情報に出現する1以上の各用語について、同様の手順で重要度を求め、用語と重要度との対の集合を構成する。動的プロファイル情報生成部133は、こうして構成した用語と重要度との対の集合を用いて、ユーザXXに対応する既存の動的プロファイル情報を更新する。
【0158】
または、動的プロファイル情報生成部133は、例えば、数3で計算した結果を、ユーザXXの動的プロファイル情報としてもよい。
【数3】
【0159】
ここで、TF1iは、ユーザXXの投稿情報から抽出した用語iのTF値である。TF2iは、ユーザXXおよびユーザYYの対話(一連の投稿情報)から抽出した用語iのTF値である。TF3iは、ユーザXXの閲覧履歴から抽出した用語iのTF値である。
【0160】
数3では、TF1iに重みαを乗算し、TF2iに重みβを乗算し、TF3iに重みγを乗算し、3つの乗算結果を合計することで、用語iに対応する重要度を求めている。そして、用語0から用語nまでのn+1個の各用語に対応する重要度を合計し、動的プロフィル情報としている。
【0161】
その後、リンク生成部134が、例えば次の手順で、補助情報へのリンクを生成する。最初、リンク生成部134は、投稿情報“Cプログラミング”を受信するユーザを識別するユーザ識別子“YY”を格納部11から取得する。次に、リンク生成部134は、当該ユーザ識別子“YY”に対応する動的プロファイル情報2をユーザ動的プロファイル格納部112から取得する。次に、リンク生成部134は、動的プロファイル情報2における用語“Cプログラミング”の重要度“0.4”が条件を満たすか否かを判別する。
【0162】
ここで、条件は、当該用語の重要度が「第一閾値“1.5”以上である」という第一条件、および当該用語の重要度が「第二閾値“0.5”以下である」という第二条を含む。リンク生成部134は、用語“Cプログラミング”の重要度“0.4”が第二条件を満たすため、例えば、補助情報識別子“http://…c_programming…”で識別される補助情報へのリンクを生成する。補助情報識別子“http://…c_programming…”は、例えば、用語“Cプログラミング”に対応付けて、格納部11に予め格納されていてもよいし、検索サイトを利用した検索により、外部の装置から取得されても構わない。
【0163】
リンク生成部134は、投稿情報“Cプログラミング難しい”に対応付けて、用語“Cプログラミング”および補助情報識別子“http://…c_programming…”を投稿情報格納部113に蓄積する。これによって、投稿情報“Cプログラミング難しい”を構成する用語“Cプログラミング”から、補助情報識別子“http://…c_programming…”で識別される補助情報へのリンクが生成される。
【0164】
図9は、リンクを有する投稿情報のデータ構造図である。リンクを有する投稿情報は、例えば、投稿情報、用語、および補助情報識別子の組で構成される。投稿情報格納部113には、ID(例えば1,2,…)に対応付けて、リンクを有する又は有さない投稿情報が格納される。
【0165】
この時点で、投稿情報格納部113には、ID“1”に対応する投稿情報(以下“投稿情報1”)が格納されている。投稿情報1は、投稿情報“Cプログラミング難しい”、用語“Cプログラミング”、および補助情報識別子“http://…c_programming…”の組で構成されている。補助情報識別子“http://…c_programming…”で識別される補助情報は、対応する用語“Cプログラミング”の重要度が0.4や0.7であることから、知識支援情報の一種と考えてよい。投稿情報送信部141は、こうして生成されたリンクを有する投稿情報“Cプログラミング難しい”を、ユーザYYのユーザ端末2に送信する。
【0166】
ユーザYYのユーザ端末2において、端末受信部25がリンクを有する投稿情報“Cプログラミング難しい”を受信すると、端末出力部26は、リンクを有する投稿情報“Cプログラミング難しい”を、ディスプレイ等の出力デバイスを介して出力する。
【0167】
これによって、例えば
図10に示すように、ユーザXXのユーザ端末2のディスプレイには、リンクを有さない投稿情報“Cプログラミング難しい”が表示される一方、ユーザYYのユーザ端末2のディスプレイには、リンクを有する投稿情報“Cプログラミング難しい”が表示される結果となる。
【0168】
引き続き、ユーザXXのユーザ端末2において、端末受付部22が投稿情報“もうすぐ試験やのに”を受け付けると、端末出力部26は、投稿情報“もうすぐ試験やのに”をディスプレイ等の出力デバイスを介して出力する。また、端末送信部24は、投稿情報“もうすぐ試験やのに”をユーザ識別子“XX”と対に送信する。
【0169】
投稿情報処理装置1において、動的プロファイル情報生成部133が、上記と同様の手順で、投稿情報“もうすぐ試験やのに”から用語“試験”を抽出し、用語“試験”の重要度を取得し、これらの対を用いてユーザXXの動的プロファイル情報を更新する。リンク生成部134は、投稿情報“もうすぐ試験やのに”を受信するユーザYYの動的プロファイル情報を取得し、用語“試験”に対応する重要度が条件を満たすか否かを判別する。用語“試験”に対応する重要度“1.6”は、第二条件「第一閾値“1.5”以上である」を満たすため、動的プロファイル情報生成部133は、例えば、補助情報識別子“http://…kougi_eizou…”で識別される補助情報へのリンクを生成する。補助情報識別子“http://…kougi_eizou…”は、例えば、用語“試験”に対応付けて、格納部11に予め格納されていてもよい。
【0170】
この時点で、投稿情報格納部113には、ID“2”に対応する投稿情報(以下“投稿情報2”)が格納されている。投稿情報2は、投稿情報“もうすぐ試験やのに”、用語“試験”、および補助情報識別子“http://…kougi_eizou…”で構成されている。補助情報識別子“http://…kougi_eizou…”で識別される補助情報は、対応する用語“試験”の重要度が1.6や1.7であることから、興味喚起支援情報の一種と考えてよい。投稿情報送信部141は、こうして生成されたリンクを有する投稿情報“もうすぐ試験やのに”を、ユーザYYのユーザ端末2に送信する。
【0171】
ユーザYYのユーザ端末2において、端末受信部25がリンクを有する投稿情報“もうすぐ試験やのに”を受信すると、端末出力部26は、リンクを有する投稿情報“もうすぐ試験やのに”を、ディスプレイ等の出力デバイスを介して出力する。
【0172】
これによって、例えば、
図10に示すように、ユーザXXのユーザ端末2のディスプレイには、リンクを有さない投稿情報“もうすぐ試験やのに”が表示される一方、ユーザYYのユーザ端末2のディスプレイには、リンクを有する投稿情報“もうすぐ試験やのに”が表示される結果となる。なお、例えば、
図10のユーザ端末2における投稿情報の表示態様は問わない。例えば、
図10のユーザXXのユーザ端末2における、ユーザXX(自分)の投稿情報は画面の右側、ユーザYY(相手)の投稿情報は画面の左側に表示される等しても良い。
【0173】
その後、ユーザYYのユーザ端末2において、端末受付部22が投稿情報“試験範囲発表したらしいで”を受け付けると、端末出力部26は、投稿情報“試験範囲発表したらしいで”をディスプレイ等の出力デバイスを介して出力する。また、端末送信部24は、投稿情報“試験範囲発表したらしいで”をユーザ識別子“YY”と対に送信する。
【0174】
投稿情報処理装置1において、動的プロファイル情報生成部133が、上記と同様に用語データベースを参照して、投稿情報“試験範囲発表したらしいで”から用語“試験範囲”を抽出し、用語“試験範囲”の重要度を取得し、これらの対を用いてユーザYYの動的プロファイル情報を更新する。なお、用語データベースに用語“発表”が登録されている場合、動的プロファイル情報生成部133は、投稿情報“試験範囲発表したらしいで”から“発表”をも抽出し、リンク生成部134は、用語“発表”についても下記と同様の処理を行う。ただし、本例では、用語“試験範囲”のみが抽出されたとする。リンク生成部134は、投稿情報“試験範囲発表したらしいで”を受信するユーザXXの動的プロファイル情報を取得し、用語“試験範囲”に対応する重要度が条件を満たすか否かを判別する。用語“試験範囲”に対応する重要度“1.4”は、いずれの条件も満たさないため、リンク生成部134は、用語“試験範囲”がユーザ名であるか否かを判別する。用語“試験範囲”はユーザ名でないため、リンク生成部134は、一連の投稿情報間(コンテンツ間)の類似度を算出して、当該コンテンツに類似する類似コンテンツがあるか否かを判別する。そして、類似コンテンツがある場合、リンク生成部134は、当該類似コンテンツに対応する補助情報を識別する補助情報識別子“http://…chat_content…”を取得して、用語“試験範囲”から、補助情報識別子“http://…chat_content…”で識別される補助情報へのリンクを生成する。なお、リンク生成部134は、こうして用語“試験範囲”をリンク元とする代わりに、例えば、補助情報識別子“http://…chat_content…”で識別される補助情報にリンクされたボタン「類似するチャットがあります」を生成してもよい。
【0175】
この時点で、投稿情報格納部113には、ID“3”に対応する投稿情報(以下“投稿情報3”)が格納されている。投稿情報3は、投稿情報“試験範囲発表したらしいで”、用語“試験範囲”、および補助情報識別子“http://…chat_content…”の組で構成されている。補助情報識別子“http://…kougi_eizou…”で識別される補助情報は、対応する用語“試験範囲”の重要度が1.4や1.6であることから、興味喚起支援情報の一種と考えてもよいが、知識支援情報に分類されても構わない。投稿情報送信部141は、こうして生成されたリンクを有する投稿情報“試験範囲発表したらしいで”を、ユーザXXのユーザ端末2に送信する。
【0176】
ユーザXXのユーザ端末2において、端末受信部25がリンクを有する投稿情報“試験範囲発表したらしいで”を受信すると、端末出力部26は、リンクを有する投稿情報“試験範囲発表したらしいで”を、ディスプレイ等の出力デバイスを介して出力する。
【0177】
これによって、例えば、
図10に示すように、ユーザYYのユーザ端末2のディスプレイには、リンクを有さない投稿情報“試験範囲発表したらしいで”が表示される一方、ユーザXXのユーザ端末2のディスプレイには、リンクを有する投稿情報“試験範囲発表したらしいで”が表示される結果となる。なお、リンク元は、本例では“試験範囲”であるが、例えば、上述したボタン「類似するチャットがあります」でも構わない。
【0178】
その後、ユーザXXのユーザ端末2において、端末受付部22が投稿情報“誰か知ってるかな?”を受け付けると、端末出力部26は、投稿情報“誰か知ってるかな?”をディスプレイ等の出力デバイスを介して出力する。また、端末送信部24は、投稿情報“誰か知ってるかな?”をユーザ識別子“XX”と対に送信する。
【0179】
投稿情報処理装置1において、投稿稿情報“誰か知ってるかな?”は、用語データベースのどの用語も含んでおらず、1つの用語も抽出されないため、どの補助情報へのリンクも生成されない。
【0180】
この時点で、投稿情報格納部113には、ID“4”に対応する投稿情報(以下“投稿情報4”)が格納されている。投稿情報4は、投稿情報“誰か知ってるかな?”、用語“−”、および補助情報識別子“−”の組で構成されている。なお、“−”は、当該要素が存在しないことを示している。投稿情報送信部141は、こうして生成されたリンクを有する投稿情報“誰か知ってるかな?”を、ユーザXXのユーザ端末2に送信する。
【0181】
ユーザXXのユーザ端末2において、端末受信部25がリンクを有さない投稿情報“誰か知ってるかな?”を受信すると、端末出力部26は、リンクを有さない投稿情報“誰か知ってるかな?”を、ディスプレイ等の出力デバイスを介して出力する。
【0182】
これによって、例えば
図10に示すように、ユーザYYのユーザ端末2のディスプレイ、およびユーザXXのユーザ端末2のディスプレイのいずれにも、リンクを有さない投稿情報“誰か知ってるかな?”が表示される結果となる。
【0183】
その後、ユーザYYのユーザ端末2において、端末受付部22が投稿情報“ZZに聞いてみる”を受け付けると、端末出力部26は、投稿情報“ZZに聞いてみる”をディスプレイ等の出力デバイスを介して出力する。また、端末送信部24は、投稿情報“ZZに聞いてみる”をユーザ識別子“YY”と対に送信する。
【0184】
投稿情報処理装置1において、投稿情報“ZZに聞いてみる”から用語“ZZ”が抽出され、ユーザXXの動的プロファイル情報1から用語“ZZ”に対応する重要度“1.1”が取得される。この重要度はどの条件も満たさないため、リンク生成部134は、用語“ZZ”がユーザ名であるか否かを判別する。用語“ZZ”はユーザ名であるため、リンク生成部134は、ユーザ間の類似度を、例えば数4で算出し、当該ユーザに類似する類似ユーザがあるか否かを判別する。
【数4】
【0185】
数式4において、|V|は特徴ベクトルの次元数(例えば、用語データベースに登録されている用語の数)であり、iは用語を順番に示す変数であり、x
iはユーザXXに関するi番目の用語の重要度であり、y
iはユーザYYに関するi番目の用語の重要度である。リンク生成部134は、数式4の計算結果が所定の閾値以上または所定の閾値より大である場合、ユーザYYはユーザXXに類似していると判断し、数式4の計算結果が所定の閾値以下または所定の閾値より小である場合、ユーザYYはユーザXXに類似していないと判断する。ここでは、ユーザYYはユーザXXに類似していないが、同様の処理により、ユーザAAがユーザXXに類似していると判断されたとする。
【0186】
そして、類似ユーザAAがある場合、リンク生成部134は、当該類似ユーザAAに対応する補助情報を識別する補助情報識別子“AA@abc…”を取得して、当該補助情報識別子“AA@abc…”で識別される補助情報にリンクされたボタン「AAさんがあなたに類似しています」を生成する。
【0187】
この時点で、投稿情報格納部113には、ID“5”に対応する投稿情報(以下“投稿情報5”)が格納されている。投稿情報5は、投稿情報“ZZに聞いてみる”、用語“−”、および補助情報識別子“AA@abc…”の組で構成されている。補助情報識別子“AA@abc…”で識別される補助情報は、用語の重要度とは無関係であり、通常、興味喚起支援情報に分類される。投稿情報送信部141は、リンクを有さない投稿情報“ZZに聞いてみる”と、補助情報識別子“AA@abc…”で識別される補助情報にリンクされたボタン「AAさんがあなたに類似しています」とを、ユーザXXのユーザ端末2に送信する。
【0188】
ユーザXXのユーザ端末2において、端末受信部25がリンクを有さない投稿情報“ZZに聞いてみる”等を受信すると、端末出力部26は、リンクを有さない投稿情報“ZZに聞いてみる”と、リンクを有するボタン「AAさんがあなたに類似しています」とを、ディスプレイ等の出力デバイスを介して出力する。
【0189】
これによって、例えば
図10に示すように、ユーザYYのユーザ端末2のディスプレイには、リンクを有さない投稿情報“ZZに聞いてみる”が表示される一方、ユーザXXのユーザ端末2のディスプレイには、リンクを有さない投稿情報“ZZに聞いてみる” と、リンクを有するボタン「AAさんがあなたに類似しています」とが表示される結果となる。
【0190】
なお、例えば、この後、投稿情報処理装置1において、リンク生成部134が、数4と同様の数式により、ユーザXXとユーザBBとの類似を検出したとすると、補助情報送信部142は、ユーザBBのユーザ情報へのリンクを有する補助情報“BBさんがあなたに類似しています”を、ユーザXXのユーザ端末2に送信する。ユーザXXのユーザ端末2において、端末受信部25が、かかるリンクを有する補助情報“BBさんがあなたに類似しています”を受信し、端末出力部26は、“BBさんがあなたに類似しています”が記載されたボタンを、ディスプレイ等の出力デバイスを介してさらに出力してもよい。なお、当該ボタンの構成は、投稿情報処理装置1が行っても良いし、ユーザ端末2が行っても良い。
【0191】
このボタン「AAさんがあなたに類似しています」が押下されると、当該ユーザ端末2から投稿情報処理装置1に、ボタンの押下を示す情報が送信され、これに応じて、投稿情報処理装置1から当該ユーザ端末2に、ユーザAAのユーザ情報が送信される結果、ユーザXXのユーザ端末2のディスプレイに、ユーザAAのユーザ情報が表示される。
【0192】
また、例えば、ユーザYYのユーザ端末2において、端末受付部22が、リンクを有する投稿情報“Cプログラミング難しい”におけるリンクへの指示を受け付けたとすると、端末送信部24は、当該リンクへの指示をユーザ識別子“YY”と対に、投稿情報処理装置1に送信する。
【0193】
投稿情報処理装置1において、かかるリンクへの指示が指示受信部122によってユーザ識別子“YY”と対に受信されると、閲覧履歴蓄積部132は、当該補助情報を識別する補助情報識別子“http://…c_programming…”を有する閲覧履歴を、端末識別子“YY”に対応付けて格納部11に蓄積する。また、補助情報送信部142は、当該リンクへの指示に対応する補助情報“Cプログラミング入門”を、当該指示の送信元であるユーザYYのユーザ端末2に送信する。
【0194】
ユーザYYのユーザ端末2において、端末受信部25が補助情報“Cプログラミング入門”を受信すると、端末出力部26は、当該補助情報“Cプログラミング入門”をディスプレイ等の出力デバイスを介して出力する。その結果、ユーザYYのユーザ端末2のディスプレイには、例えば、
図11に示すような補助情報“Cプログラミング入門”が表示される。かかる補助情報“Cプログラミング入門”の画面に対し、例えば“いいね”の押下といったアクションが行われ、端末受付部22がこれを受け付けると、端末送信部24は、当該アクションをユーザ識別子“YY”と対に送信する。
【0195】
投稿情報処理装置1において、受信部12がアクションをユーザ識別子“YY”と対に受信すると、処理部13は、当該アクションの回数を含むアクション情報をユーザ識別子“YY”に対応付けて格納部11に蓄積する。当該アクション情報は、ユーザYYの動的プロファイル情報を生成する際に利用される。
【0196】
また、例えば、ユーザXXのユーザ端末2において、端末受付部22が、リンクを有する投稿情報“試験範囲発表したらしいで”におけるリンクへの指示を受け付けたとすると、端末送信部24は、当該リンクへの指示をユーザ識別子“XX”と対に、投稿情報処理装置1に送信する。
【0197】
投稿情報処理装置1において、かかるリンクへの指示が指示受信部122によってユーザ識別子“XX”と対に受信されると、閲覧履歴蓄積部132は、当該補助情報を識別する補助情報識別子“http://…chat_content”を有する閲覧履歴を、端末識別子“XX”に対応付けて格納部11に蓄積する。また、補助情報送信部142は、当該リンクへの指示に対応する補助情報“類似コンテンツ”を、当該指示の送信元であるユーザXXのユーザ端末2に送信する。
【0198】
ユーザXXのユーザ端末2において、端末受信部25が補助情報“類似コンテンツ”を受信すると、端末出力部26は、当該補助情報“類似コンテンツ”をディスプレイ等の出力デバイスを介して出力する。その結果、ユーザXXのユーザ端末2のディスプレイには、例えば、
図12に示すような補助情報“類似コンテンツ”、つまり、
図10に示した一連の投稿情報に類似する一連の投稿情報が表示される。
【0199】
以上、本実施の形態によれば、2以上のユーザ端末2からの投稿である投稿情報を受信する投稿情報受信部121と、予め決められた条件を満たす場合に、2以上のユーザ端末2間での対話を補助する補助情報へのリンクを生成するリンク生成部134と、リンクを有する投稿情報を送信する投稿情報送信部141とを具備する投稿情報処理装置1により、補助情報を用いて対話を支援できる。
【0200】
また、上記投稿情報処理装置1において、リンク生成部134は、投稿情報を出力するユーザ端末2またはユーザに応じて、投稿情報受信部121が受信した投稿情報の中で、予め決められた条件を満たす文字列であり、異なる文字列に対して、補助情報へのリンクを生成することにより、ユーザに応じたリンクを利用して、ユーザに応じた対話支援ができる。
【0201】
また、上記投稿情報処理装置1において、リンク生成部134は、投稿情報を出力するユーザ端末2またはユーザに応じて、異なる補助情報へのリンクを生成することにより、ユーザによって異なる補助情報を用いて、ユーザに応じた対話支援ができる。
【0202】
また、上記投稿情報処理装置1において、投稿情報受信部121は、ユーザを識別するユーザ識別子と投稿情報とを受信し、ユーザ識別子と対になる1以上の投稿情報を用いて、ユーザ識別子で識別される一のユーザの動的なプロファイル情報である動的プロファイル情報を生成する動的プロファイル情報生成部133をさらに具備し、リンク生成部134は、動的プロファイル情報を用いて、リンクを生成する対象の文字列を決定することにより、ユーザの投稿情報に応じた対話支援ができる。
【0203】
また、上記投稿情報処理装置1において、動的プロファイル情報生成部133は、一のユーザの投稿情報に対応する他のユーザの1以上の投稿情報も含む対話情報、または一のユーザがリンクを指示した際に出力された補助情報のうちのいずれか1以上の情報をも用いて、動的プロファイル情報を生成することにより、ユーザの投稿情報等に応じた対話支援ができる。
【0204】
また、上記投稿情報処理装置1において、動的プロファイル情報生成部133は、一のユーザの投稿情報に対応する他のユーザのアクションに関するアクション情報をも用いて、動的プロファイル情報を生成することにより、他のユーザの投稿情報に対するアクションも考慮した対話支援ができる。
【0205】
また、上記投稿情報処理装置1において、動的プロファイル情報は、2以上の用語の重要度の集合であるベクトルであり、動的プロファイル情報生成部133は、少なくとも一のユーザが投稿した1以上の投稿情報を構成する2以上の用語を用いて、一のユーザの動的プロファイル情報を生成し、リンク生成部134は、投稿情報の中で、重要度が閾値以上または重要度が閾値より大きい用語に対して、補助情報へのリンクを生成することにより、ユーザの投稿情報等に応じた対話支援ができる。
【0206】
また、上記投稿情報処理装置1において、動的プロファイル情報は、2以上の用語の重要度の集合であるベクトルであり、動的プロファイル情報生成部133は、少なくとも一のユーザが投稿した1以上の投稿情報を構成する2以上の用語を用いて、一のユーザの動的プロファイル情報を生成し、リンク生成部134は、投稿情報の中で、重要度が閾値以下または重要度が閾値未満の用語に対して、補助情報へのリンクを生成することにより、ユーザの投稿情報等に応じた対話支援ができる。
【0207】
また、上記投稿情報処理装置1において、補助情報は、ウェブ検索により取得したウェブページ、一のユーザに類似する他のユーザのユーザ情報、一の投稿情報を含む一連の投稿情報に類似する他の一連の投稿情報、または一の投稿情報を含む一連の投稿情報に類似する他の一連の投稿情報が有するリンクの先の補助情報のうちのいずれか1以上であることにより、適切な補助情報を用いて対話支援ができる。
【0208】
さらに、本実施の形態における処理は、ソフトウェアで実現してもよい。そして、このソフトウェアをソフトウェアダウンロード等により配布してもよい。また、このソフトウェアをCD−ROMなどの記録媒体に記録して流布してもよい。なお、このことは、後述する変形例においても該当する。
【0209】
本実施の形態における投稿情報処理装置1を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、2以上のユーザ端末2からの投稿である投稿情報を受信する投稿情報受信部121と、予め決められた条件を満たす場合に、2以上のユーザ端末2間での対話を補助する補助情報へのリンクを生成するリンク生成部134と、リンクを有する投稿情報を送信する投稿情報送信部141として機能させるためのプログラムである。
【0210】
なお、本実施の形態において、投稿情報処理装置1で行っているリンク生成処理を、ユーザ端末2で行うことも可能である。
【0212】
本変形例において、リンク生成処理をユーザ端末2で行う場合の対話システム100について説明する。対話システムの概念図は
図1である。投稿情報処理装置1のブロック図は
図2である。ユーザ端末2のブロック図は
図3である。ただし、投稿情報処理装置1を構成する処理部13からは、リンク生成部134が削除される。そして、ユーザ端末2を構成する端末処理部23に、リンク生成部134の機能が追加される。
【0213】
端末処理部23は、端末受信部25が受信した投稿情報または端末受付部22が受け付けた投稿情報の中で、予め決められた条件を満たす文字列に、2以上のユーザ端末2間での対話を補助する補助情報へのリンクを生成する。端末送信部24は、端末処理部23が生成したリンク付きの投稿情報を投稿情報処理装置1に送信する。
【0214】
投稿情報処理装置1のフローチャートは、
図4〜
図6である。ユーザ端末2のフローチャートは、
図7である。ただし、
図4のフローチャートからは、リンク生成処理(ステップS104)が削除される。
図7のフローチャートには、ステップS403とステップS404の間に、ステップS104に対応するリンク生成処理が追加される。
【0215】
本変形例によれば、1以上の他のユーザ端末2からの投稿である投稿情報を受信する端末受信部25と、ユーザの投稿情報を受け付ける端末受付部22と、端末受信部25が受信した投稿情報または端末受付部22が受け付けた投稿情報の中で、予め決められた条件を満たす文字列に、1以上の他のユーザ端末2と間での対話を補助する補助情報へのリンクを生成する端末処理部23と、端末受付部が受け付けた投稿情報を送信する端末送信部24とを具備するユーザ端末2により、補助情報を用いて対話を支援できる。
【0216】
本変形例におけるユーザ端末2を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、ユーザ端末2のコンピュータを、1以上の他のユーザ端末2からの投稿である投稿情報を受信する端末受信部25と、ユーザの投稿情報を受け付ける端末受付部22と、端末受信部25が受信した投稿情報または端末受付部22が受け付けた投稿情報の中で、予め決められた条件を満たす文字列に、1以上の他のユーザ端末2と間での対話を補助する補助情報へのリンクを生成する端末処理部23と、端末受付部22が受け付けた投稿情報を送信する端末送信部24として機能させるためのプログラムである。
【0217】
図13は、本実施の形態(変形例も含む)におけるプログラムを実行して、投稿情報処理装置1等を実現するコンピュータシステム900の外観の一例を示す図である。本実施の形態は、コンピュータハードウェアおよびその上で実行されるコンピュータプログラムによって実現され得る。
図13において、コンピュータシステム900は、ディスクドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、ディスプレイ904とを備える。なお、キーボード902やマウス903やディスプレイ904をも含むシステム全体をコンピュータと呼んでもよい。
【0218】
図14は、コンピュータシステム900の内部構成の一例を示す図である。
図14において、コンピュータ901は、ディスクドライブ905に加えて、MPU911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM913と、アプリケーションプログラム、システムプログラム、およびデータを記憶するストレージ914と、MPU911、ROM912等を相互に接続するバス915と、外部ネットワークや内部ネットワーク等のネットワークへの接続を提供するネットワークカード916と、を備える。ストレージ914は、例えば、ハードディスク、ソリッドステートドライブ、フラッシュメモリなどである。
【0219】
コンピュータシステム900に、投稿情報処理装置1等の機能を実行させるプログラムは、例えば、DVD、CD−ROM等のディスク921に記憶されて、ディスクドライブ905に挿入され、ストレージ914に転送されてもよい。これに代えて、そのプログラムは、ネットワークを介してコンピュータ901に送信され、ストレージ914に記憶されてもよい。プログラムは、実行の際にRAM913にロードされる。なお、プログラムは、ディスク921、またはネットワークから直接、ロードされてもよい。また、ディスク921に代えて他の着脱可能な記録媒体(例えば、DVDやメモリカード等)を介して、プログラムがコンピュータシステム900に読み込まれてもよい。
【0220】
プログラムは、コンピュータの詳細を示す901に、投稿情報処理装置1等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能やモジュールを呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。なお、上記プログラムにおいて、情報を送信する送信ステップや、情報を受信する受信ステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
【0221】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【0222】
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(受信部12、送信部14など)は、物理的に一の媒体で実現されてもよいことはいうまでもない。
【0223】
また、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【0224】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることはいうまでもない。