JP2013089086A - 話題推薦装置及び方法及びプログラム - Google Patents

話題推薦装置及び方法及びプログラム Download PDF

Info

Publication number
JP2013089086A
JP2013089086A JP2011230032A JP2011230032A JP2013089086A JP 2013089086 A JP2013089086 A JP 2013089086A JP 2011230032 A JP2011230032 A JP 2011230032A JP 2011230032 A JP2011230032 A JP 2011230032A JP 2013089086 A JP2013089086 A JP 2013089086A
Authority
JP
Japan
Prior art keywords
user
topic
communication
probability
holding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011230032A
Other languages
English (en)
Other versions
JP5730741B2 (ja
Inventor
Yuki Kurauchi
雄貴 蔵内
Takeshi Kurashima
健 倉島
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011230032A priority Critical patent/JP5730741B2/ja
Publication of JP2013089086A publication Critical patent/JP2013089086A/ja
Application granted granted Critical
Publication of JP5730741B2 publication Critical patent/JP5730741B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】 ユーザグループの嗜好に合致し、かつ、ユーザグループが実際にコミュニケーションを始め、コミュニケーションが長く続くような『盛り上がる話題』を推薦する。
【解決手段】 本発明は、コミュニケーションをしたことがない、またはコミュニケーションをほとんどしたことがないユーザ同士に対して話題が推薦できない問題を解決するため、入力ユーザと似たユーザのコミュニケーションログからコミュニケーションの盛り上がりを抽出し、推薦する。また、入力ユーザと似たユーザを求めるための計算量が膨大であるという問題を解決するため、ユーザをグループ化してコミュニケーションログをまとめる処理を行う。入力ユーザと似たユーザグループのコミュニケーションログからコミュニケーションの盛り上がりを抽出し、推薦する。
【選択図】 図1

Description

本発明は、話題推薦装置及び方法及びプログラムに係り、特に、電話、メール、ソーシャルメディア、現実などにおいてコミュケーションをとるユーザグループに対して、ユーザグループが盛り上がる話題を予測し、推薦するための話題推薦装置及び方法及びプログラムに関する。
第1の従来技術として、ユーザの回答の量から、ユーザの該当の質問への嗜好を推定することによって、1人のユーザの嗜好に合った質問を推薦することができる質問推薦装置がある(例えば、特許文献1参照)。
また、第2の従来技術として、ユーザの過去の発話データベースを元に、協調フィルタリングを行うことによって、 1人のユーザの嗜好に合った発話内容を予測することができる対話システムがある。この予測した発話内容をシステムが発話することで、ユーザとシステムの間の共感を生んでいた(例えば、特許文献2参照)。
第3の従来技術として、友人関係が近いユーザ同士はアイテムに対する嗜好が近いと仮定し、入力されたユーザと友人関係が近いユーザの嗜好をもとに、入力された1人のユーザの嗜好を補完して高精度に推定することができるアイテム推薦装置がある。これによって、高精度にユーザが購入するアイテムを予測し、推薦していた(例えば、非特許文献1参照)。
第4の従来技術として、1人のユーザのログから1人のユーザの嗜好を学習した後、複数人のユーザの嗜好を組み合わせることでユーザグループの嗜好を間接的に推定し、それをもとにユーザグループに対してアイテムを推薦できるアイテム推薦装置がある(例えば、非特許文献2参照)。
特開2011−2872号公報 特開2011−108055号公報
S.H. Yang, B. Long, A. Smola, N. Sadagopan, Z. Zheng, and H. Zha. Like like alike: joint friendship and interest propagation in social networks. In Proceedings of the 20th international conference on World wide web, pages 537-546. ACM, 2011. M. Gartrell, X. Xing, Q. Lv, A. Beach, R. Han, S. Mishra, and K. Seada. Enhancing group recommendation by incorporating social relationship interactions. In Proceedings of the 16th ACM international conference on Supporting group work, pages 97-106. ACM, 2010.
第1〜第3の従来技術のそれぞれと同様の手法を用いることで、1人のユーザの嗜好に合った話題を推薦することができると考えられるが、ユーザグループの嗜好にあった話題を推薦することはできなかった。
第4の従来技術はその課題に対し、ユーザグループの嗜好を間接的に推定したものであるが、ユーザグループの嗜好に合うアイテムを推薦できるかという観点からの精度が低いという問題がある。また、コミュニケーションが盛り上がるかという観点では推薦ができなかった。
本発明は、上記の点に鑑みなされたものであり、ユーザグループの嗜好に合致し、かつ、ユーザグループが実際にコミュニケーションを始め、コミュニケーションが長く続くような『盛り上がる話題』を推薦することが可能な話題推薦装置及び方法及びプログラムを提供することを目的とする。
上記の課題を解決するため、本発明(請求項1)は、複数人のコミュニケーションログに基づいて、入力ユーザ集合が各話題で盛り上がる確率を算出するための話題推薦装置であって、
コミュニケーションログ記憶手段のコミュニケーションログからユーザ毎の特徴量を抽出し、ユーザ特徴量記憶手段に格納する特徴量抽出手段と、
前記ユーザ特徴量記憶手段の前記入力ユーザ毎の特徴量とコミュニケーションログ記憶手段に格納されている各保持ユーザの特徴量に基づいて、入力ユーザと各保持ユーザの類似度を算出するユーザ類似度算出手段と、
前記コミュニケーションログの各話題候補によってコミュニケーションがとられた回数に基づいて、部分保持ユーザ集合において各話題によってコミュニケーションされた確率を算出するユーザ間コミュニケーション解析手段と、
前記入力ユーザと保持ユーザの類似度及び、前記部分保持ユーザ集合において各話題によってコミュニケーションされる確率に基づいて、入力ユーザ集合が各話題で盛り上がる確率を算出する話題決定手段と、を有する。
また、本発明(請求項2)は、前記ユーザ類似度算出手段に、
前記コミュニケーションログ記憶手段に格納されている各保持ユーザのコミュニケーションログから抽出した、各保持ユーザの特徴量に基づいて、保持ユーザをグループ化するユーザグループ生成手段を含み、
前記ユーザ間コミュニケーション解析手段に、
前記コミュニケーションログの各話題候補によってコミュニケーションがとられた回数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出する第1の話題確率算出手段を含む。
また、本発明(請求項3)は、前記ユーザグループ間コミュニケーション解析手段に、
各話題候補を話題としてコミュニケーションしたユーザの組の数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出する第2の話題確率算出手段、
または、
各話題候補によってコミュニケーションされる回数と各話題候補によってコミュニケーションがとられた回数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出する第3の話題確率算出手段を含む。
本発明によれば、ユーザグループのコミュニケーションログに基づいて話題を推薦することにより、ユーザグループの嗜好を直接的に推定することができ、ユーザグループの嗜好に合うアイテムを推薦できるかという観点での精度が上昇する。
また、コミュニケーションの盛り上がりを、コミュニケーションが続く回数や、その話題についてコミュニケーションしたユーザの組の数として定式化することによって、どんな人とどんな人がどんな話題で盛り上がったかをコミュニケーションログから学習することが可能となる。
また、コミュニケーションの盛り上がりをコミュニケーションログから抽出することで、ユーザグループが実際にコミュニケーションを始め、コミュニケーションが長く続くような、「盛り上がる話題」を推薦することを可能とし、コミュニケーション活性化の効果が向上する。
入力ユーザと似たユーザのコミュニケーションログを利用することによって、コミュニケーションをしたことがない、またはコミュニケーションをほとんどしたことがないユーザ同士に対しても話題を推薦でき、より多くのユーザに話題を推薦できる。
更に、ユーザをグループ化し、入力のユーザとグループの類似度を算出することによって、全てのユーザとの類似度を算出する必要をなくし、計算量を削減することができる。
本発明の第1の実施の形態における話題推薦装置の構成図である。 本発明の第1の実施の形態におけるコミュニケーションログ記憶部の例である。 本発明の第1の実施の形態におけるコミュニケーションログ記憶部に含まれる友人情報の例である。 本発明の第1の実施の形態におけるユーザ特徴量記憶部のデータ例である。 本発明の第1の実施の形態におけるユーザ類似度記憶部のデータ例である。 本発明の第1の実施の形態におけるユーザ間コミュニケーション解析部の処理のフローチャートである。 本発明の第1の実施の形態におけるユーザ間話題確率記憶部のデータ例である。 本発明の第1の実施の形態における推論部の動作のフローチャートである。 本発明の第1の実施の形態におけるユーザ間コミュニケーション解析部の出力例(話題候補集合)である。 本発明の第2の実施の形態における話題推薦装置の構成図である。 本発明の第2の実施の形態におけるユーザグループ生成部の動作のフローチャートである。 本発明の第2の実施の形態におけるユーザグループ情報記憶部のデータ例である。 本発明の第2の実施の形態におけるユーザグループ特徴量記憶部のデータ例である。 本発明の第2の実施の形態におけるユーザグループ間コミュニケーション解析部の動作のフローチャートである。 本発明の第2の実施の形態におけるユーザグループ間確率記憶部のデータ例である。 本発明の第2の実施の形態における推論部の動作のフローチャートである。
以下図面と共に、本発明の実施の形態を説明する。
まず、本発明の概要を説明する。
本発明では、ユーザグループの嗜好に合致し、かつ、ユーザグループが実際にコミュニケーションを始め、コミュニケーションが長く続くような、「盛り上がる話題」を推薦するために、以下のような手法をとる。コミュニケーションの盛り上がりを、コミュニケーションが続く回数や、その話題についてコミュニケーションしたユーザの組の数として定式化し、実際に行われたコミュニケーションを含むデータ、すなわちコミュニケーションログから、どんな人とどんな人がどんな話題で盛り上がったかを学習する。そして、ユーザのコミュニケーションログからコミュニケーションの盛り上がりを抽出し、それをもとに推薦する。
この手法をとる中で生じる二つの問題を解決するため、以下の第1、第2の実施の形態に示す手法をとる。
[第1の実施の形態]
以下の第1の実施の形態では、コミュニケーションをしたことがない、またはコミュニケーションをほとんどしたことがないユーザ同士に対して話題が推薦できない問題を解決するため、入力ユーザと似たユーザのコミュニケーションログからコミュニケーションの盛り上がりを抽出し、推薦する。
以下、本装置の第1の実施の形態について図面を参照して説明する。
図1は、本発明の第1の実施の形態における話題推薦装置のブロック図を示す。
同図に示す話題推薦装置は、学習部と推論部から構成されている。学習部は、コミュニケーションログ記憶部9、特徴量抽出部2、ユーザ特徴量記憶部3、ユーザ類似度算出部4、ユーザ類似度記憶部5、ユーザ間コミュニケーション解析部10、ユーザ間話題確率記憶部6から構成されている。推論部は、受付部1、特徴量抽出部2、ユーザ特徴量記憶部3、ユーザ類似度算出部4、ユーザ類似度記憶部5、ユーザ間話題確率記憶部6、話題決定部7、出力部8から構成されている。
●学習部
学習部では、3つのデータを算出し格納しておく。一つは、入力ユーザがコミュニケーションログ記憶部9に含まれていた際に利用する、ユーザ類似度であり、ユーザ類似度記憶部4に格納する。もう一つは、入力ユーザがコミュニケーションログ記憶部9に含まれていなかった際に、ユーザ類似度を算出するために利用する、ユーザ特徴量であり、ユーザ特徴量記憶部3に格納する。最後は、入力ユーザに適した話題を推薦する際に利用する、ユーザ間話題確率であり、ユーザ間話題確率記憶部6に格納する。
以下に各構成について説明する。
■コミュニケーションログ記憶部9:
コミュニケーションログ記憶部9では、保持ユーザ集合Vのコミュニケーションログを格納する。コミュニケーションログは、投稿そのものの識別番号である投稿ID、この投稿が返信した投稿の識別番号である返信先投稿ID、投稿したユーザの識別番号である投稿元ユーザIDと、投稿されたユーザの識別番号である投稿先ユーザID、投稿内容を含む情報である。また、コミュニケーションログは、投稿内容の投稿時間、投稿場所、ハイパーリンクのような記述内容への補足情報といった情報を含んでもよい。また、コミュニケーションログは、全てが返信先投稿IDや投稿先ユーザIDを持つ必要はなく、全てが返信されている必要もない。投稿内容は、文書、画像、映像、"共感情報"、"レーティング情報"などといった内容のいずれでも良い。"共感情報"とは、facebook(登録商標)などにおける、『いいね!』ボタンなどのような、共感を示す情報を表す。"レーティング情報"とは、『食べログ』などにおける評価点のような、投稿内容に対する評価点を示す情報を表す。返信された投稿の識別番号である返信先投稿ID、投稿したユーザの識別番号である投稿元ユーザIDと、投稿されたユーザの識別番号である投稿先ユーザIDは、投稿内容に一定のフォーマットで含まれていてもよい。投稿場所は、緯度経度情報でも、地名でもよい。
当該コミュニケーションログ記憶部9は、これらの情報が保存され、復元可能なものであればなんでもよい。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるもの、もしくは、Webページを保持するWebサーバや、データベースを具備するデータベースサーバ等である。
コミュニケーションログ記憶部9に格納されるデータの例を図2に示す。返信先投稿IDと投稿先ユーザIDは、単数でも複数でもよく、特定のユーザに向けていないものは「−」と表している。
また、コミュニケーションログ記憶部9は、保持ユーザ集合Vの友人情報を含んでもよい。友人情報とは、どのユーザがどのユーザを友人として登録しているかの情報である。友人情報は、片側からの登録であっても、両側からの登録に限るものであってもよい。友人情報の例を図3に示す。
■特徴量抽出部2:
特徴量抽出部2では、以下のような処理を行う。
コミュニケーションログ記憶部9から投稿内容集合Dが入力された場合、保持ユーザ集合Vに含まれる保持ユーザvに関する投稿内容集合Dvから、保持ユーザvに関する特徴量dvの抽出を行い、ユーザ特徴量記憶部3へ格納する。これを、保持ユーザ集合Vに含まれる全ての保持ユーザvについて行う。
ユーザxに関する特徴量dxは、投稿内容集合Dxの投稿内容、作成時間、作成場所などを表すものが考えられる。例えば、投稿内容が文書だった場合、投稿内容を表す特徴量は、投稿内容集合Dに対して形態素解析を行い、出現するm個の単語w1,w2,…,wmを求める。次に、TF-IDFなどの手法を用いて各単語の各ユーザにおける重要度d1x,d2x,…,dmxを求め、これを要素としたベクトルdx=[d1x,d2x,…,dmx]などが考えられる。また、単語を特定の品詞に絞った同様のベクトルや、次元削減を行ったベクトルや、各品詞を含む数などの情報を含むものでも良い。また、特徴量を算出する投稿内容集合Dは、最近1ヶ月に絞るなど、時間によって絞り込むほか、関東地区に絞るなど、場所によって絞り込んだものとしてもよい。また、投稿内容が画像や映像だった場合は、SURF(Speeded Up Robust Features)特徴量やbag of visual wordsなどの画像特徴量や、オプティカルフローといった映像特徴量を算出し、それをユーザxに関する特徴量dxとする。
■ユーザ特徴量記憶部3:
ユーザ特徴量記憶部3は、特徴量抽出部2から入力された、保持ユーザvの特徴量dvを格納する。
ユーザ特徴量記憶部3は、これらの情報が保存され、復元可能なものであればなんでもよい。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるものなどである。ユーザ特徴量記憶部3に格納されるデータの例を図4に示す。
このユーザ特徴量記憶部3は、実施の形態によっては不要であり、ユーザ類似度算出部4からリクエストが来た際に、特徴量抽出部2が、コミュニケーションログ記憶部9から入力された保持ユーザvの投稿内容集合Dvにもとづいて特徴量dvを算出し、ユーザ類似度算出部4へと出力するものでもよい。
■ユーザ類似度算出部4:
ユーザ類似度算出部4では、以下のような処理を行う。
ユーザ特徴量記憶部3に格納された、保持ユーザv、v'に関する特徴量dv、dv'から、保持ユーザvと保持ユーザv'間の類似度S(v,v')を算出し、ユーザ類似度記憶部5に格納する。これを、保持ユーザ集合Vに含まれる全ての保持ユーザv、v'の組み合わせについて行う。
ユーザxと保持ユーザyの類似度S(x,y)の算出方法としては、以下の式(1)によって求められるコサイン類似度を利用する方法などが考えられる。
Figure 2013089086
■ユーザ類似度記憶部5:
ユーザ類似度記憶部5は、ユーザ類似度算出部4から入力された、保持ユーザvと保持ユーザv'間の類似度S(v,v')を格納する。
ユーザ類似度記憶部5は、これらの情報が保存され、復元可能なものであれば何でもよい。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるものなどである。ユーザ類似度記憶部5に格納されるデータの例を図5に示す。
このユーザ類似度記憶部5は、実施の形態によっては不要であり、受付部1からリクエストが来た際に、ユーザ類似度算出部4が、ユーザ特徴量記憶部3から入力された保持ユーザv、v'に関する特徴量dv,dv'に基づいて保持ユーザvと保持ユーザv'の類似度S(v、 v')を算出し、ユーザ類似度算出部4へと出力するものでもよい。
■ユーザ間コミュニケーション解析部10:
ユーザ間コミュニケーション解析部10は、話題候補抽出部11と、話題確率算出部12から構成されている。そのフローチャートを図6に示す。
ユーザ間コミュニケーション解析部10では、コミュニケーションログ記憶部9に格納されたコミュニケーションログを入力とし(ステップ101)、部分ユーザ集合V'のコミュニケーションログを抽出し(ステップ102)、固有名詞や、ほかのユーザの文書集合、画像、映像などや、これらを統合して扱えるURLなどの話題候補集合Iに変換し(ステップ103)、保持ユーザ集合Vの部分ユーザ集合V'にて各話題iでコミュニケーションされた確率P(i | V')を後述する式(2)より求め(ステップ104)、ユーザ間話題確率記憶部6に格納する(ステップ105)。これを、保持ユーザ集合Vに含まれる全ての部分ユーザ集合V'について行う。コミュニケーションログは、最近1ヶ月に絞るなど、時間によって絞り込んでもよい。
ここで、3人のユーザ間コミュニケーションを解析する場合の解析対象は、2人ずつのコミュニケーションログを組み合わせたものでも、3人が投稿元もしくは投稿先として関連したコミュニケーションログに限るものでもよい。例えば、ユーザa、b、cのユーザ間コミュニケーションを解析する場合、a−b間、a−c間、b−c間のログを組み合わせたものを対象としてもよく、a、b、cが同時に会話をしたログのみに絞ったものを対象としてもよい。4人以上の場合についても、同様である。
■話題候補抽出部11:
話題候補抽出部11では、コミュニケーションログ記憶部9のコミュニケーションログから、話題候補集合Iを抽出し、話題確率算出部12に対して出力する。話題の候補は、固有名詞や、保持ユーザvの投稿内容集合Dv、画像、映像などや、これらを統合して扱えるURLなどが考えられる。
■話題確率算出部12:
話題確率算出部12では、話題候補抽出部11から入力された話題候補集合Iに対し、部分ユーザ集合V'において各話題iでコミュニケーションされた確率P(i | V')を算出し、ユーザ間話題確率記憶部6に格納する。
部分ユーザ集合V'において各話題iでコミュニケーションされた確率P(i | V')の算出方法としては、以下の方法が考えられる。
Figure 2013089086
ここで、 W(V',i)は、部分ユーザ集合V'に含まれるユーザ同士において、話題iを含む投稿に対して返信が行われた回数の合計を表す。
また、その集団に特有な話題が高い確率値をとるよう、保持ユーザ集合Vにおいてその話題で会話される頻度の逆数によって重みづけをしてもよい。また、めったに返信しないユーザが返信した際に高い確率値をとるよう、ユーザが返信する頻度によって重みづけをしてもよい。
■ユーザ間話題確率記憶部6:
ユーザ間話題確率記憶部6では、話題確率算出部12から入力された、部分ユーザ集合V'にて各話題iでコミュニケーションされた確率P(i | V')を格納する。
ユーザ間話題確率記憶部6は、これらの情報が保存され、復元可能なものであれば何でもよい。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるものなどである。ユーザ間話題確率記憶部6に格納されるデータの例を図7に示す。
このユーザ間話題確率記憶部6は、実施の形態によっては不要であり、話題確率算出部12は、話題決定部7からリクエストがあった際にユーザ間話題確率を算出し、話題決定部7へ出力してもよい。
●推論部
推論部では、大きく分けて、以下の2つの処理を行う。まず、保持ユーザの中で入力ユーザに類似したユーザの算出である。次に、その類似ユーザ同士が盛り上がった話題の推薦である。そのフローチャートを図8に示す。
入力ユーザに類似したユーザの算出は、以下のような流れで行う。入力ユーザがコミュニケーションログに含まれていれば、学習部にて先に算出しておいたユーザ間類似度記憶部5のユーザ間類似度をそのまま利用する。入力ユーザがコミュニケーションログに含まれていなければ、入力ユーザの特徴量を算出し、学習部にて先に算出しておいたユーザ特徴量記憶部3のユーザ特徴量と比較することで、ユーザ間類似度を算出する。
類似ユーザ同士が盛り上がった話題の推薦は、上記のように算出したユーザ間類似度と、学習部にて先に算出しておいたユーザ間話題確率から求める。
■受付部1:
受付部1では、推薦サービスを利用するユーザからの入力を受け付け、適した入力への変換を行う。
入力は、入力ユーザ集合Uである。各入力ユーザ情報としては、入力ユーザuのユーザIDであるIDuまたは入力ユーザuの投稿内容集合Duを受け付ける。各入力ユーザ情報に対して、推論部として以下の処理を行う。
各入力が入力ユーザuのユーザIDであるIDuであった場合(ステップ201、Yes)、ユーザ類似度記憶部5に対して、入力ユーザuと保持ユーザvの類似度S(u,v)を格納しているかの問い合わせを行う。ユーザ類似度記憶部5に入力ユーザuと保持ユーザvの類似度S(u,v)が格納されていた場合(ステップ202,Yes)、話題決定部7へと入力ユーザuと保持ユーザvの類似度S(u,v)を出力する。これを、保持ユーザ集合Vに含まれる全ての保持ユーザvについて行う。入力ユーザuと保持ユーザvの類似度S(u,v)が格納されていなかった場合は(ステップ201,No)、入力ユーザuの投稿内容集合Duの入力を求める画面へと遷移する(ステップ203)。
ただし、上記のように各入力が入力ユーザuのユーザIDであるIDuであった場合、問い合わせる対象をユーザ特徴量記憶部3としても良い。この場合、以下のような流れとなる。ユーザ特徴量記憶部3に入力ユーザuの特徴量duが格納されていた場合、ユーザ類似度算出部4へとユーザ特徴量duを出力し(ステップ205)、ユーザ類似度算出部4において入力ユーザuと保持ユーザvの類似度S(u,v)を算出し、話題決定部7へと出力する(ステップ206)。これを、保持ユーザ集合Vに含まれる全ての保持ユーザvについて行う。入力ユーザuの特徴量duが格納されていなかった場合は、入力ユーザuの投稿内容集合の入力を求める画面へと遷移する。
各入力が入力ユーザuの投稿内容集合Duであった場合、特徴量抽出部2に対して投稿内容集合Duをそのまま出力する。
■特徴量抽出部2:
学習部でも利用した特徴量抽出部2において、以下のような処理を行う。
受付部1から入力ユーザuに関する投稿内容集合Duを入力された場合(ステップ204)、入力ユーザuに関する投稿内容集合Duから、入力ユーザuに関する特徴量duの抽出を行い、ユーザ類似度算出部4へ出力する。これ(ステップ205)を、入力ユーザ集合Uに含まれる全ての入力ユーザuについて行う。
■ユーザ類似度算出部4:
学習部でも利用したユーザ類似度算出部4において、以下のような処理を行う。
特徴量抽出部2またはユーザ特徴量記憶部3から入力された、入力ユーザuに関する特徴量duと、ユーザ特徴量記憶部3に格納された、保持ユーザvに関する特徴量dvから、入力ユーザuと保持ユーザvの類似度S(u,v)を算出し(ステップ206)、話題決定部7に対して出力する(ステップ206)。これを、入力ユーザ集合Uに含まれる全ての入力ユーザuおよび保持ユーザ集合Vに含まれる全ての保持ユーザvについて行う。
■話題決定部7:
話題決定部7では、ユーザ類似度算出部4またはユーザ類似度記憶部5から入力された、入力ユーザuと保持ユーザvの類似度S(u,v)と、ユーザ間話題確率記憶部6から入力された、部分ユーザ集合V'において各話題iでコミュニケーションされた確率P(i | V')から、入力ユーザ集合Uに対して話題iを出力する確率P(i|U)を算出し、出力部に対して出力する(ステップ207)。
入力ユーザ集合Uに対して話題iを出力する確率P(i|U)を求める基本アイデアは、各入力ユーザと似たユーザをそれぞれ探し出し、似たユーザ同士が盛り上がった話題を推薦する、というものである。
例えば、入力ユーザ集合Uにユーザaとユーザbが含まれていた場合、以下のような式となる。
Figure 2013089086
ここで、ユーザx、x'におけるP(x'|x)は以下のような求め方が考えられる。
Figure 2013089086
また、例えば、入力ユーザ集合Uにユーザa、ユーザb、ユーザcが含まれていた場合、以下のような式となる。
Figure 2013089086
以降、入力ユーザ集合Uに含まれるユーザ数|U|が増えた場合も、同様の式によって算出する(ステップ208)。
この際、入力ユーザと保持ユーザが等しい場合、例えば、a=a'のような場合は、入力ユーザaに対し、自らの過去のコミュニケーションログを元に推薦されることとなるが、この場合は、a=a'を考慮しても、a=a'を考慮しないようa≠a'という条件を付加してもよい。また、保持ユーザ同士が同一である場合、例えば、P(i|a',a')のような場合は、この確率値を算出することはできないので、除外される。
■出力部8:
出力部8では、話題決定部7から入力された、入力ユーザ集合Uに対して話題iを出力する確率P(i | U)に基づき、推薦する話題を出力する。
ここで、出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部装置への送信等を含む概念である。出力部は、ディスプレイやスピーカ等の出力デバイスを含むと考えても含まないと考えてもよい。出力部は、出力デバイスのドライバソフトまたは、出力デバイスのドライバソフトと出力デバイス等で実現され得る。
《具体例》
以下、具体的な例を用いて第1の実施の形態の処理について説明する。ここでは、入力ユーザa、bのユーザIDであるIDa,IDbが入力された場合について説明する。
まず、特徴量抽出部2において、コミュニケーションログ記憶部9に保持されていた保持ユーザa,b,a',b'のコミュニケーションログを抽出し、形態素解析をかけ、各名詞の重要度を算出しベクトル化することで、図4のような保持ユーザa,b,a',b'に関する特徴ベクトルda,db,da',db'が得られる。この特徴ベクトルはユーザ特徴量記憶部3に格納される。
次に、ユーザ類似度算出部4において、保持ユーザa,b,a',b'に関する特徴ベクトルda,db,da',db'の類似度を求めることによって、保持ユーザa,b,a',b'の類似度S(a,a')、S(a,b'),S(b, b'),S(b, a'),…が得られる。例えば、図5の例では、ユーザaとユーザa'の類似度S(a,a')は0.994905781、ユーザaとユーザb'の類似度S(a,b')は0.488810967、ユーザbとユーザb'の類似度S(b,b')は0.996243092、ユーザbとユーザa'の類似度S(b,a')は0.503198715となる。このユーザ類似度は、ユーザ類似度記憶部5に格納される。そして、受付部1において、入力ユーザa,bのユーザIDであるIDa、IDbが入力された際に、S(a,a'),S(a,b'),S(b,b'),S(b,a')が話題決定部7に対して出力される。
一方、ユーザ間ユーザコミュニケーション解析部10においては、入力ユーザ集合Uに含まれるユーザ数|U|が2であるので、2人のユーザ間でのコミュニケーションを解析の対象とする。例えば、保持ユーザa'と保持ユーザb'に関するコミュニケーションログは、図2において、投稿IDが1,2,3,5,6であるものが該当する。このコミュニケーションログに対して形態素解析をかけ、名詞とURLを抽出すると、保持ユーザa'と保持ユーザb'に関する話題候補集合Iは図9のようになる。
次に、話題確率算出部12においては、式(2)によって部分ユーザ集合V'において各話題iでコミュニケーションされた確率P(i | V')を算出するが、ここでは例として、V'に保持ユーザa'と保持ユーザb'が含まれている場合における話題確率P(i|V')の、話題iが"カレー"という名詞であった場合の算出方法を説明する。
保持ユーザa'と保持ユーザb'において、"カレー"についてコミュニケーションされた回数は2回であるので、W(V',"カレー")は2となる。また、保持ユーザa'と保持ユーザb'において、全ての話題についてコミュニケーションされた回数は13回であるので、
Figure 2013089086
は13となる。結果、P("カレー"|V')は0.153846154となる。これにより、部分ユーザ集合V'において、より頻繁または長くコミュニケーションされる話題iが高い確率値を持つ。
次に、話題決定部7について、例として、入力ユーザがaとb、保持ユーザがa'とb'のみであったとして、話題iが"カレー"という名詞であった場合の話題iを出力する確率P(i |U)の算出方法を説明する。
式(3)によって話題iを出力する確率P(i |U)=P(i|a、b)を算出するが、
P(i|U) = P(a,a') P(b,b') P(i|a',b') + P(a,b') P(b,a')P(i|a',b')
+P(a,a') P(b,a') P(i|a',a') + P(a,b') P(b,b')P(i|b',b')
と表すことができる。しかし、P(i|a',a')とP(i|b',b')は算出できないため、前二項を考慮すればよい。よって、P("カレー"|U)は、0.190328779と算出できる。これによって、入力ユーザと似ている保持ユーザが盛り上がった話題を推薦でき、入力ユーザと保持ユーザが似ているほど、また、保持ユーザ同士が盛り上がった話題ほど、高い確率値となる。
[第2の実施の形態]
本実施の形態では、入力ユーザと似たユーザを求めるための計算量が膨大であるという問題を解決するため、ユーザをグループ化してコミュニケーションログをまとめる処理を行う。入力ユーザと似たユーザグループのコミュニケーションログからコミュニケーションの盛り上がりを抽出し、推薦する。
以下、本装置の第2の実施の形態について図面を参照して説明する。
図10は、本発明の第2の実施の形態における話題推薦装置のブロック図を示す。同図に示す話題推薦装置は、学習部と推論部から構成されている。学習部は、コミュニケーションログ記憶部9、特徴量抽出部2、ユーザグループ生成部30、ユーザグループ情報記憶部27、ユーザグループ特徴量記憶部25、ユーザグループ間コミュニケーション解析部20、ユーザ間話題確率記憶部6から構成されている。推論部は、受付部1、特徴量抽出部2、ユーザグループ情報記憶部27、ユーザグループ特徴量記憶部25、ユーザグループ推定部28、ユーザグループ間話題確率記憶部26、話題決定部7、出力部8から構成されている。
●学習部
学習部では、3つのデータを算出し格納しておく。一つは、入力ユーザがコミュニケーションログ記憶部9に含まれていた際に利用する、ユーザグループ情報であり、もう一つは、入力ユーザがコミュニケーションログ記憶部9に含まれていなかった際に、ユーザグループ情報を算出するために利用する、ユーザグループ特徴量である。最後は、入力ユーザに適した話題を推薦する際に利用する、ユーザグループ間話題確率である。
■特徴量抽出部2:
特徴量抽出部2では、以下のような処理を行う。
コミュニケーションログ記憶部9から投稿内容集合Dを入力された場合、保持ユーザvに関する投稿内容集合Dvから、保持ユーザvに関する特徴量dvの抽出を行い、ユーザグループ生成部30へと出力する。これを、保持ユーザ集合Vに含まれる全ての保持ユーザvについて行う。
ユーザxに関する特徴量dxは、第1の実施の形態と同様である。
■ユーザグループ生成部30:
ユーザグループ生成部30の動作のフローチャートを図11に示す。ユーザグループ生成部30では、特徴量抽出部2から保持ユーザ集合Vに含まれる保持ユーザvに関する特徴量dvが入力されると(ステップ302)、当該特徴量dvから、ユーザグループ集合Gを生成し、3つの出力を行う(ステップ303〜306)一つは、ユーザグループ間コミュニケーション解析部20に対し、後述するユーザグループ情報を出力する。もう一つは、ユーザグループ情報記憶部27に、入力ユーザuのユーザグループ情報を格納する。最後に、ユーザグループ特徴量記憶部25に対し、ユーザグループgの特徴量dgを出力する。
■クラスタリング部31:
クラスタリング部31では、特徴量抽出部2から入力された、保持ユーザ集合Vに含まれる保持ユーザvに関する特徴量dvをもとに、ユーザをクラスタリングし、ユーザグループ情報を特徴量集計部32およびユーザグループ間コミュニケーション解析部20およびユーザグループ情報記憶部27に対して出力する。
この際、ユーザが一つだけのユーザグループに属するよう、ハードクラスタリング手法を利用しても、複数のユーザグループに属するよう、ソフトクラスタリング手法を利用しても良い。前者であれば、各ユーザがどのユーザグループに属するのかの情報を、後者であれば、各保持ユーザvが各ユーザグループgに属する確率P(g|v)を出力する(ステップ303)。また、クラスタリングの際には、ユーザ間のコミュニケーション数を教師情報として用いるなどの方法を組み合わせても良い。クラスタリングに利用する単語wは、最近1ヶ月に絞るなど、時間によって絞り込んだものなどとしてもよい。
ソフトクラスタリングの例として、文献1(T.Hofmann. Probabilistic Latent Semantic Analysis. In Proceedings of Uncertainty in Artificial Intelligence, UAI' 99, pages 21-28, 1999.)にあげるPLSAの場合、以下の式(6)によってP(g|v)を算出する。
Figure 2013089086
■特徴量集計部32:
特徴量集計部32では、特徴量抽出部2から入力された保持ユーザvに関する特徴量dvと、クラスタリング部31から入力されたユーザグループ情報から、各ユーザグループの特徴量dgを算出し(ステップ305)、ユーザグループ特徴量記憶部25に格納する(ステップ306)。
ここで、クラスタリング部31にてソフトクラスタリング手法を適用した場合は、ユーザグループgに含まれるユーザを絞り込む必要があるが、この場合は、確率に閾値を設ける方法のほか、確率が大きい順に固定の人数とするなどの方法が考えられる。
■ユーザグループ情報記憶部27:
ユーザグループ情報記憶部27では、入力ユーザuのユーザグループ情報を格納する。ユーザグループ情報記憶部27に格納されるデータの例を図12に示す。同図に示すように、ユーザグループ情報記憶部27には、ユーザID毎にユーザグループID及びユーザがグループに属する確率が格納される。
ユーザグループ情報記憶部27は、これらの情報が保存され、復元可能なものであればなんでもよい。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるものなどである。
このユーザグループ情報記憶部27は、実施の形態によっては不要であり、受付部1からリクエストが来た際に、ユーザグループ生成部30が話題決定部7に対して入力ユーザuのユーザグループ情報を出力してもよい。
■ユーザグループ特徴量記憶部25:
ユーザグループ特徴量記憶部25では、各ユーザグループの特徴量dgを格納する。ユーザグループ特徴量記憶部25に格納されるデータの例を図13に示す。同図に示すように、ユーザグループ特徴量記憶部25は、ユーザグループIDと特徴ベクトルを格納する。
ユーザグループ特徴量記憶部25は、これらの情報が保存され、復元可能なものであればなんでもよい。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるものなどである。
このユーザグループ特徴量記憶部25は、実施の形態によっては不要であり、ユーザグループ推定部28からリクエストが来た際に、ユーザグループ生成部30がユーザグループgの特徴量dgを出力してもよい。
■ユーザグループ間コミュニケーション解析部20:
ユーザグループ間コミュニケーション解析部20は、話題候補抽出部21と、話題確率算出部22から構成されている。そのフローチャートを図14に示す。
ユーザグループ間コミュニケーション解析部20では、コミュニケーションログ記憶部9に格納されたコミュニケーションログと、クラスタリング部31から入力されたユーザグループ情報を入力とし(ステップ401)、ユーザグループ間話題確率記憶部26に対し、ユーザグループ集合Gの部分ユーザグループ集合G'において各話題iでコミュニケーションされた確率P(i | G')を格納する(ステップ402〜405)。これを、ユーザグループ集合Gに含まれる全ての部分ユーザグループ集合G'について行う。コミュニケーションログは、最近1ヶ月に絞るなど、時間によって絞り込んでもよい。
ここで、3人のユーザグループ間コミュニケーションを解析する場合の解析対象は、2グループずつのコミュニケーションログを組み合わせたものでも、3グループが投稿元もしくは投稿先として関連したコミュニケーションログに限るものでもよい。例えば、グループa、b、cのユーザグループ間コミュニケーションを解析する場合、a,b間、a,c間、b,c間のログを組み合わせたものを対象としてもよく、a,b,cが同時に会話をしたログのみに絞ったものを対象としてもよい。4人以上の場合についても、同様である。
ここで、部分ユーザグループ集合G'には、同一のグループが含まれていてもよい。例えば、ユーザグループg同士において話題iでコミュニケーションされた確率P(i | g,g)は、算出することができ、出力される。
■話題候補抽出部21:
話題候補抽出部21であh、コミュニケーションログ記憶部9から入力されたコミュニケーションログLと、クラスタリング部31から入力されたユーザグループ集合Gを取得して、部分ユーザグループG'に属するユーザのコミュニケーションログを抽出する(ステップ402)。そして、固有名詞や、他のユーザの文書集合、画像、映像などや、これらを統合して扱えるURLなどの話題候補集合Iに変換し、話題確率算出部22に出力する。
■話題確率算出部22:
話題確率算出部22では、話題候補抽出部11から入力された話題候補集合Iに対し、部分ユーザグループ集合G'にて各話題iでコミュニケーションされた確率P(i | G')を算出し、ユーザグループ間話題確率記憶部26に格納する。
部分ユーザグループ集合G'にて各話題iでコミュニケーションされた確率P(i | G')の算出方法としては、以下の方法が考えられる。
Figure 2013089086
ここで、 W(G', i)は、部分ユーザグループ集合G'に含まれるグループgに属するユーザ同士において、話題iを含む投稿に対して返信が行われた回数の合計を表す。
ここで、特徴量集計部32と同様に、クラスタリング部31にてソフトクラスタリング手法を適用した場合は、ユーザグループgに含まれるユーザを絞り込む必要があるが、この場合は、確率に閾値を設ける方法のほか、確率が大きい順に固定の人数とするなどの方法が考えられる。
また、その集団に特有な話題が高い確率値をとるよう、部分ユーザグループ集合G'においてその話題で会話される頻度によって重みづけをしてもよい。また、めったに返信しないユーザが返信した際に高い確率値をとるよう、ユーザが返信する頻度によって重みづけをしてもよい。
■ユーザグループ間話題確率記憶部26:
ユーザグループ間話題確率記憶部26では、話題確率算出部22から入力された、部分ユーザグループ集合G'にて各話題iでコミュニケーションされた確率P(i | G')を格納する。
ユーザグループ間話題確率記憶部26は、これらの情報が保存され、復元可能なものであればなんでもよい。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるものなどである。ユーザグループ間話題確率記憶部26に格納されるデータの例を図15に示す。同図に示すように、ユーザグループ間話題確率記憶部26には、コミュニケーションしたユーザグループID、話題、確率が格納される。
このユーザグループ間話題確率記憶部26は、実施の形態によっては不要であり、話題確率算出部22は、話題決定部7からリクエストがあった際にユーザグループ間話題確率を算出し、話題決定部7へ出力してもよい。
●推論部
推論部では、大きく分けて、以下の2つの処理を行う。まず、入力ユーザが属するユーザグループの算出である。次に、そのユーザグループ同士が盛り上がった話題の推薦である。そのフローチャートを図16に示す。
入力ユーザが属するユーザグループの算出は、以下のような流れで行う。入力ユーザがコミュニケーションログに含まれていれば、学習部にて先に算出しておいたユーザグループ情報をそのまま利用する。入力ユーザがコミュニケーションログに含まれていなければ、入力ユーザの特徴量を算出し、学習部にて先に算出しておいたユーザグループ特徴量と比較することで、ユーザグループ情報を算出する。
ユーザグループ同士が盛り上がった話題の推薦は、上記のように算出したユーザグループ情報と、学習部にて先に算出しておいたユーザグループ間話題確率から求める。
■受付部1:
受付部1では、推薦サービスを利用するユーザからの入力を受け付け、適した入力への変換を行う。
入力は、入力ユーザ集合Uである。各入力ユーザ情報としては、入力ユーザuのユーザIDであるIDuまたは入力ユーザuの投稿内容集合Duを受け付ける。各入力ユーザ情報に対して、以下の処理を行う。
各入力が入力ユーザuのユーザIDであるIDuであった場合(ステップ501、Yes)、ユーザグループ情報記憶部27に対して、後述する入力ユーザuのユーザグループ情報を格納しているかの問い合わせを行う。ユーザグループ情報記憶部27に入力ユーザuのユーザグループ情報が格納されていた場合(ステップ502、Yes)、話題決定部7へと入力ユーザuのユーザグループ情報を出力する。これを、保持ユーザ集合Vに含まれる全ての保持ユーザvについて行う。入力ユーザuのユーザグループ情報が格納されていなかった場合は(ステップ502、No)、入力ユーザuの投稿内容集合Duの入力を求める画面へと遷移する(ステップ503)。
但し、各入力が入力ユーザuのユーザIDであるIDuであった場合、問い合わせる対象を、第1の実施の形態におけるユーザ特徴量記憶部3としても良い。この場合、以下のような流れとなる。ユーザ特徴量記憶部3に入力ユーザuの特徴量duが格納されていた場合、ユーザグループ推定部へとユーザ特徴量duを出力し(ステップ505,506)、ユーザグループ推定部28において入力ユーザuがユーザグループgに属する確率P(g|u)を話題決定部7へと出力する(ステップ506,507)。これを、ユーザグループ集合Gに含まれる全てのユーザグループgについて行う。入力ユーザuの特徴量duが格納されていなかった場合は、入力ユーザuの投稿内容集合の入力を求める画面へと遷移する。
各入力が入力ユーザuの投稿内容集合Duであった場合、特徴量抽出部2に対して投稿内容集合Duをそのまま出力する。
■特徴抽出部2:
学習部でも利用した特徴量抽出部2において、以下のような処理を行う。
受付部1から入力ユーザuに関する投稿内容集合Duを入力された場合、入力ユーザuに関する投稿内容集合Duから、入力ユーザuに関する特徴量duの抽出を行い、ユーザグループ推定部28へ出力する(ステップ504)。これを、入力ユーザ集合Uに含まれる全ての入力ユーザuについて行う。
■ユーザグループ推定部28:
ユーザグループ推定部28では、特徴量抽出部2から入力された特徴量duと、ユーザグループ特徴量記憶部25に格納された特徴量dgから、入力ユーザuとユーザグループgの類似度S(u、g)を算出し(ステップ506)、それをもとに入力ユーザuがユーザグループgに属する確率P(g|u)を算出し(ステップ507)、話題決定部7に対して出力する。これを、入力ユーザ集合Uに含まれる全ての入力ユーザuおよびユーザグループ集合Gに含まれる全てのユーザグループgについて行う。
ユーザxとグループyの類似度S(x,y)は、式(1)によって求められる。入力ユーザxがユーザグループyに属する確率P(y|x)は、式(4)と同様に求められる。
■話題決定部7:
話題決定部7では、ユーザグループ推定部28またはユーザグループ情報記憶部27から入力されたユーザグループ情報と、ユーザグループ間話題確率記憶部26から入力された、部分ユーザグループ集合G'にて各話題iでコミュニケーションされた確率P(i | G')から、入力ユーザ集合Uに対して話題iを出力する確率P(i | U)を算出し、出力部に対して出力する。
クラスタリング部31にてハードクラスタリング手法を適用した場合は、入力ユーザuが属するグループgが与えられるため、入力ユーザ集合Uに対して話題iを出力する確率P(i | U)は部分ユーザグループ集合G'にて各話題iでコミュニケーションされた確率P(i | G')と等しいものとなる。
クラスタリング部31にてソフトクラスタリング手法を適用した場合は、入力ユーザuが各グループgに属する確率P(g | u)が入力される。ここでの入力ユーザ集合Uに対して話題iを出力する確率P(i | U)を求める基本アイデアは、各入力ユーザが属するユーザグループをそれぞれ探し出し、属するユーザグループ同士が盛り上がった話題を推薦する、というものである。
例えば、入力ユーザ集合Uにユーザaとユーザbが含まれていた場合、以下のような式となる。
Figure 2013089086
また、例えば、入力ユーザ集合Uにユーザaとユーザb、ユーザcが含まれていた場合、以下のような式となる。
Figure 2013089086
以降、入力ユーザ集合Uに含まれるユーザ数|U|が増えた場合も、同様の式によって算出する。この際、ユーザグループ同士が同一である場合、例えば、P(i|g,g)のような場合であっても、この確率値は算出することができるため、正しく推薦される。
《具体例》
以下、具体的な例を用いて第2の実施の形態の処理について説明する。ここでは、入力ユーザa、bのユーザIDであるIDa、IDbが入力された場合について説明する。
ユーザグループ生成部30のクラスタリング部31においては、保持ユーザvの特徴ベクトルdvに対してPLSA(Probabilistic Latent Semantic Analysis)を適用することによって、保持ユーザvがユーザグループgに属する確率P(g|v)を求められる。例えば、ユーザa'がユーザグループgに属する確率P(g|a')が0.9、ユーザa'がユーザグループg'に属する確率P(g'|a')が0.4、ユーザb'がユーザグループgに属する確率P(g|b')が0.5、ユーザb'がユーザグループg'に属する確率P(g'|b')が0.9、ユーザc'がユーザグループgに属する確率P(g|c')が0.8、ユーザc'がユーザグループg'に属する確率P(g'|c')が0.3とする。
ユーザグループ生成部30の特徴量集計部32においては、クラスタリング部31から入力された保持ユーザa',b',c'がユーザグループg,g'に属する確率P(g|a'),P(g|b'),P(g|c')P(g'|a'),P(g'|b')P(g'|c')から、各ユーザグループの特徴ベクトルを算出する。例えば、閾値を0.7に設定した場合、ユーザグループgに属するユーザはa'とc'、ユーザグループg'に属するユーザはb'となる。例えば、図13の例の場合、ユーザグループgの特徴ベクトルdgは、ユーザa'の特徴ベクトルda'とユーザc'の特徴ベクトルdc'の平均をとったものとなる。
ユーザグループ推定部28においては、前もって算出しユーザグループ特徴量記憶部25に格納されていた、ユーザグループg,g'の特徴ベクトルdg、dg'と入力ユーザa,bに関する特徴ベクトルda、dbの類似度を求めることによって、入力ユーザa,bがユーザグループg、g'に属する確率P(g|a),P(g|b),P(g'|a),P(g'|b)を求められる。例えば、図13の例では、ユーザaがユーザグループgに属する確率P(g|a)は0.994905781、ユーザaがユーザグループg'に属する確率P(g'|a)は0.488810967、ユーザbがユーザグループg'に属する確率P(g'|b)は0.996243092、ユーザbがユーザグループgに属する確率P(g|b)は0.503198715となる。
ユーザグループ間コミュニケーション解析部20においては、クラスタリング部31から入力された保持ユーザa',b',c'がユーザグループg,g'に属する確率P(g|a'),P(g|b'),P(g|c')P(g'|a'),P(g'|b')P(g'|c')から、各グループ間における話題確率を算出する。例えば、閾値を0.7に設定した場合、ユーザグループgに属するユーザはa'とc'、ユーザグループg'に属するユーザはb'となる。
話題確率算出部22においては、前述の式(3)によって部分ユーザグループ集合G'において各話題iでコミュニケーションされた確率P(i | G')を算出するが、ここでは例として、G'にユーザグループg,g'が含まれており、ユーザグループgには保持ユーザa'とc'が、ユーザグループg'には保持ユーザb'が含まれている場合における話題確率P(i|G')の、話題iが"カレー"という名詞であった場合の算出方法を説明する。
保持ユーザa'と保持ユーザb'、保持ユーザc'と保持ユーザb'において、"カレー"についてコミュニケーションされた回数は2回であるので、W(g,g',"カレー")は2となる。また、保持ユーザa'と保持ユーザb'、 保持ユーザc'と保持ユーザb'において、全ての話題についてコミュニケーションされた回数は13回であるので、
Figure 2013089086
は13となる。結果、P("カレー"|g,g')は0.153846154となる。保持ユーザa'と保持ユーザc'において、"カレー"についてコミュニケーションされた回数は1回であるので、W(g,g,"カレー")は1となる。また、保持ユーザa'と保持ユーザc'において、全ての話題についてコミュニケーションされた回数は8回であるので、
Figure 2013089086
は8となる。結果、P("カレー"|g,g)は0.125となる。これにより、部分ユーザグループ集合G'において、より頻繁または長くコミュニケーションされる話題iが高い確率値を持つ。
次に、話題決定部7について、例として、入力ユーザがaとb、保持ユーザがa'とb'のみであった場合の話題iを出力する確率P(i |U)の、話題iが"カレー"という名詞であった場合の算出方法を説明する。
前述の式(8)によって話題iを出力する確率P(i |U)を算出するが、この場合、
P(i|U) = P(g|a)P(g|b)P(i|g,g) + P(g|a) P(g'|b)P(i|g,g')
+ P(g'|a)P(g|b)P(i|g',g) + P(g'|a)P(g'|b)P(i|g',g')
と表すことができる。よって、P("カレー"|U)は、0.344970911と算出できる。これによって、入力ユーザと似ているユーザグループが盛り上がった話題を推薦でき、入力ユーザとユーザグループが似ているほど、また、ユーザグループ同士が盛り上がった話題ほど、高い確率値となる。
[第3の実施の形態]
本実施の形態では、第1の実施の形態の話題確率算出部12、第2の実施の形態の話題確率算出部22とは異なる確率の算出方法について説明する。
話題確率算出部22において、部分ユーザグループ集合G'にて各話題iでコミュニケーションされた確率P(i| G')の算出方法としては、以下の方法が考えられる。
Figure 2013089086
ここで、C(G', i)は、部分ユーザグループ集合G'に含まれるユーザグループ同士で、話題iについてコミュニケーションをしたユーザの組の数を表す。
《具体例》
話題確率算出部22について、ここでは例として、G'にユーザグループg,g'が含まれており、ユーザグループgには保持ユーザa'とc'が、ユーザグループg'には保持ユーザb'が含まれている場合における話題確率P(i|G')の、話題iが"カレー"という名詞であった場合の算出方法を説明する。
保持ユーザa'と保持ユーザb'、 保持ユーザc'と保持ユーザb'において、"カレー"についてコミュニケーションしたユーザの組の数は2であるので、C(g,g',"カレー")は2となる。また、保持ユーザa'と保持ユーザb'、保持ユーザc'と保持ユーザb'において、全ての話題についてコミュニケーションしたユーザの組の数は11であるので、
Figure 2013089086
は11となる。結果、P("カレー"|g,g')は0.181818182となる。保持ユーザa'と保持ユーザc'において、"カレー"についてコミュニケーションしたユーザの組の数は1であるので、W(g,g,"カレー")は1となる。また、保持ユーザa'と保持ユーザc'において、全ての話題についてコミュニケーションしたユーザの組の数は8であるので、
Figure 2013089086
は8となる。結果、P("カレー"|g,g)は0.125となる。これにより、部分ユーザグループ集合G'において、より多くのユーザによってコミュニケーションされる話題iが高い確率値を持つ。
その他の構成は、前述の第1、第2の実施の形態と同様であるので、その説明を省略する。
[第4の実施の形態]
本実施の形態では、第2の実施の形態の話題確率算出部22とは異なる確率の算出方法について説明する。
話題確率算出部22において、各ユーザグループ間において各話題iでコミュニケーションされる確率P(i | G')の算出方法としては、以下の方法が考えられる。
Figure 2013089086
ここで、 WC(G',i)は、部分ユーザグループ集合G'に含まれるユーザ同士において、話題iを含む投稿に対して投稿が行われた回数を重みとした、話題iについてコミュニケーションをしたユーザの組の数を表す。
《具体例》
話題確率算出部22について、ここでは例として、G'にユーザグループg,g'が含まれており、ユーザグループgには保持ユーザa'とc'が、ユーザグループg'には保持ユーザb'が含まれている場合における話題確率P(i|G')の、話題iが"カレー"という名詞であった場合の算出方法を説明する。
保持ユーザa'と保持ユーザb'、 保持ユーザc'と保持ユーザb'において、"カレー"についてコミュニケーションしたユーザの組の数は2で、それぞれのコミュニケーションが続いた回数は2回であるので、WC(g,g',"カレー")は4となる。これを全ての話題について合計すると21であるので、
Figure 2013089086
は21となる。結果、P("カレー"|g,g')は0.19047619となる。保持ユーザa'と保持ユーザc'において、"カレー"についてコミュニケーションしたユーザの組の数は1で、それぞれのコミュニケーションが続いた回数は2回であるので、WC(g,g,"カレー")は2となる。これを全ての話題について合計すると8であるので、
Figure 2013089086
は8となる。結果、P("カレー"|g,g)は0.25となる。これにより、部分ユーザグループ集合G'において、より頻繁または長くコミュニケーションされる話題iが高い確率値を持つ。
その他の構成は、前述の第1、第2の実施の形態と同様であるので、その説明を省略する。
なお、前述の図1、図10に示す話題推薦装置の構成要素の各動作をプログラムとして構築し、話題推薦装置として利用されるコンピュータにインストールする、または、ネットワークを介して流通させることが可能である。
また、構築されたプログラムをハードディスクや、フレキシブルディスク・CD−ROM等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
1 受付部
2 特徴量抽出部
3 ユーザ特徴量記憶部
4 ユーザ類似度算出部
5 ユーザ類似度記憶部
6 ユーザ間話題確率記憶部
7 話題決定部
8 出力部
9 コミュニケーションログ記憶部
10 ユーザ間コミュニケーション解析部
11 話題候補抽出部
12 話題確率算出部
20 ユーザグループ間コミュニケーション解析部
21 話題候補抽出部
22 話題確率算出部
25 ユーザグループ特徴量記憶部
26 ユーザグループ間話題確率記憶部
27 ユーザグループ情報記憶部
30 ユーザグループ生成部
31 クラスタリング部
32 特徴量集計部

Claims (7)

  1. 複数人のコミュニケーションログに基づいて、入力ユーザ集合が各話題で盛り上がる確率を算出するための話題推薦装置であって、
    コミュニケーションログ記憶手段のコミュニケーションログからユーザ毎の特徴量を抽出し、ユーザ特徴量記憶手段に格納する特徴量抽出手段と、
    前記ユーザ特徴量記憶手段の前記入力ユーザ毎の特徴量とコミュニケーションログ記憶手段に格納されている各保持ユーザの特徴量に基づいて、入力ユーザと各保持ユーザの類似度を算出するユーザ類似度算出手段と、
    前記コミュニケーションログの各話題候補によってコミュニケーションがとられた回数に基づいて、部分保持ユーザ集合において各話題によってコミュニケーションされた確率を算出するユーザ間コミュニケーション解析手段と、
    前記入力ユーザと保持ユーザの類似度及び、前記部分保持ユーザ集合において各話題によってコミュニケーションされる確率に基づいて、入力ユーザ集合が各話題で盛り上がる確率を算出する話題決定手段と、
    を有することを特徴とする話題推薦装置。
  2. 前記ユーザ類似度算出手段は、
    前記コミュニケーションログ記憶手段に格納されている各保持ユーザのコミュニケーションログから抽出した、各保持ユーザの特徴量に基づいて、保持ユーザをグループ化するユーザグループ生成手段を含み、
    前記ユーザ間コミュニケーション解析手段は、
    前記コミュニケーションログの各話題候補によってコミュニケーションがとられた回数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出する第1の話題確率算出手段を含む、
    請求項1記載の話題推薦装置。
  3. 前記ユーザグループ間コミュニケーション解析手段は、
    各話題候補を話題としてコミュニケーションしたユーザの組の数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出する第2の話題確率算出手段、
    または、
    各話題候補によってコミュニケーションされる回数と各話題候補によってコミュニケーションがとられた回数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出する第3の話題確率算出手段を含む
    請求項2記載の話題推薦装置。
  4. 複数人のコミュニケーションログに基づいて、入力ユーザ集合が各話題で盛り上がる確率を算出するための話題推薦方法であって、
    特徴量抽出手段が、コミュニケーションログ記憶手段のコミュニケーションログからユーザ毎の特徴量を抽出し、ユーザ特徴量記憶手段に格納する特徴量抽出ステップと、
    ユーザ類似度算出手段が、前記ユーザ特徴量記憶手段の前記入力ユーザ毎の特徴量とコミュニケーションログ記憶手段に格納されている各保持ユーザの特徴量に基づいて、入力ユーザと各保持ユーザの類似度を算出するユーザ類似度算出ステップと、
    ユーザ間コミュニケーション解析手段が、前記コミュニケーションログの各話題候補によってコミュニケーションがとられた回数に基づいて、部分保持ユーザ集合において各話題によってコミュニケーションされた確率を算出するユーザ間コミュニケーション解析ステップと、
    話題決定手段が、前記入力ユーザと保持ユーザの類似度及び、前記部分保持ユーザ集合において各話題によってコミュニケーションされる確率に基づいて、入力ユーザ集合が各話題で盛り上がる確率を算出する話題決定ステップと、
    を行うことを特徴とする話題推薦方法。
  5. 前記ユーザ類似度算出ステップにおいて、
    前記コミュニケーションログ記憶手段に格納されている各保持ユーザのコミュニケーションログから抽出した、各保持ユーザの特徴量に基づいて、保持ユーザをグループ化するユーザグループ生成ステップを含み、
    前記ユーザ間コミュニケーション解析ステップにおいて、
    前記コミュニケーションログの各話題候補によってコミュニケーションがとられた回数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出するユーザグループ間コミュニケーション解析ステップを含む、
    請求項4記載の話題推薦方法。
  6. 前記ユーザグループ間コミュニケーション解析ステップにおいて、
    各話題候補を話題としてコミュニケーションしたユーザの組の数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出するステップ、
    または、
    各話題候補によってコミュニケーションされる回数と各話題候補によってコミュニケーションがとられた回数に基づいて、部分ユーザグループ集合において各話題によってコミュニケーションされた確率を算出するステップ、
    のいずれかを行う請求項5記載の話題推薦方法。
  7. コンピュータを、
    請求項1乃至3記載のいずれか1項に記載の話題推薦装置の各手段として機能させるための話題推薦プログラム。
JP2011230032A 2011-10-19 2011-10-19 話題推薦装置及び方法及びプログラム Active JP5730741B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011230032A JP5730741B2 (ja) 2011-10-19 2011-10-19 話題推薦装置及び方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011230032A JP5730741B2 (ja) 2011-10-19 2011-10-19 話題推薦装置及び方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2013089086A true JP2013089086A (ja) 2013-05-13
JP5730741B2 JP5730741B2 (ja) 2015-06-10

Family

ID=48532918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011230032A Active JP5730741B2 (ja) 2011-10-19 2011-10-19 話題推薦装置及び方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5730741B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016157372A (ja) * 2015-02-26 2016-09-01 三菱重工メカトロシステムズ株式会社 交通流制御装置、交通流制御システム、携帯型記録装置、交通流制御方法及びプログラム
JP2017027102A (ja) * 2015-07-15 2017-02-02 Kddi株式会社 偏向グループ抽出装置、偏向グループ抽出方法及びコンピュータプログラム
CN107103049A (zh) * 2017-03-31 2017-08-29 努比亚技术有限公司 一种推荐方法及网络设备
JP2018503158A (ja) * 2014-11-10 2018-02-01 北京字節跳動網絡技術有限公司Beijing Bytedance Network Technology Co., Ltd. ソーシャルプラットフォームに基づくデータマイニング方法及び装置
CN112703526A (zh) * 2018-07-26 2021-04-23 全球文档系统股份有限公司 基于相似性群组的用户管理内容和广告递送
JP2022528021A (ja) * 2018-09-14 2022-06-08 ライク,フィリップ 交流推薦システム
JP7332739B1 (ja) 2022-03-23 2023-08-23 楽天グループ株式会社 投稿管理装置、投稿管理プログラム、および、投稿管理方法
JP7495842B2 (ja) 2020-07-31 2024-06-05 株式会社Nttドコモ レコメンド装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143875A (ja) * 1997-11-10 1999-05-28 Nec Corp 単語自動分類装置及び単語自動分類方法
JP2003108507A (ja) * 2001-09-27 2003-04-11 Sony Communication Network Corp ユーザマッチング方法および装置
JP2003216564A (ja) * 2001-10-15 2003-07-31 Matsushita Electric Ind Co Ltd コミュニケーション支援方法、これを用いたコミュニケーションサーバ及びコミュニケーション支援システム
JP2005235118A (ja) * 2004-02-23 2005-09-02 Nippon Telegr & Teleph Corp <Ntt> 情報抽出方法およびその装置
WO2009122745A1 (ja) * 2008-04-02 2009-10-08 パナソニック株式会社 コミュニケーション支援装置、コミュニケーション支援方法およびコミュニケーション支援プログラム
JP2011108055A (ja) * 2009-11-19 2011-06-02 Nippon Telegr & Teleph Corp <Ntt> 対話システム、対話方法、対話プログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143875A (ja) * 1997-11-10 1999-05-28 Nec Corp 単語自動分類装置及び単語自動分類方法
JP2003108507A (ja) * 2001-09-27 2003-04-11 Sony Communication Network Corp ユーザマッチング方法および装置
JP2003216564A (ja) * 2001-10-15 2003-07-31 Matsushita Electric Ind Co Ltd コミュニケーション支援方法、これを用いたコミュニケーションサーバ及びコミュニケーション支援システム
US20040098469A1 (en) * 2001-10-15 2004-05-20 Toshiki Kindo Communication support method, communication server comprising it, and communication support system
JP2005235118A (ja) * 2004-02-23 2005-09-02 Nippon Telegr & Teleph Corp <Ntt> 情報抽出方法およびその装置
WO2009122745A1 (ja) * 2008-04-02 2009-10-08 パナソニック株式会社 コミュニケーション支援装置、コミュニケーション支援方法およびコミュニケーション支援プログラム
JP2011108055A (ja) * 2009-11-19 2011-06-02 Nippon Telegr & Teleph Corp <Ntt> 対話システム、対話方法、対話プログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNG201001090006; 稲葉 通将、外2名: '語の共起情報を用いた対話における盛り上がりの自動判定' 電子情報通信学会論文誌 第J94-D巻,第1号, 20110101, p.59-67, 社団法人電子情報通信学会 *
JPN6014037922; 稲葉 通将、外2名: '語の共起情報を用いた対話における盛り上がりの自動判定' 電子情報通信学会論文誌 第J94-D巻,第1号, 20110101, p.59-67, 社団法人電子情報通信学会 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018503158A (ja) * 2014-11-10 2018-02-01 北京字節跳動網絡技術有限公司Beijing Bytedance Network Technology Co., Ltd. ソーシャルプラットフォームに基づくデータマイニング方法及び装置
JP2016157372A (ja) * 2015-02-26 2016-09-01 三菱重工メカトロシステムズ株式会社 交通流制御装置、交通流制御システム、携帯型記録装置、交通流制御方法及びプログラム
JP2017027102A (ja) * 2015-07-15 2017-02-02 Kddi株式会社 偏向グループ抽出装置、偏向グループ抽出方法及びコンピュータプログラム
CN107103049A (zh) * 2017-03-31 2017-08-29 努比亚技术有限公司 一种推荐方法及网络设备
CN112703526A (zh) * 2018-07-26 2021-04-23 全球文档系统股份有限公司 基于相似性群组的用户管理内容和广告递送
JP2022528021A (ja) * 2018-09-14 2022-06-08 ライク,フィリップ 交流推薦システム
JP7278213B2 (ja) 2018-09-14 2023-05-19 ライク,フィリップ 交流推薦システム
JP7495842B2 (ja) 2020-07-31 2024-06-05 株式会社Nttドコモ レコメンド装置
JP7332739B1 (ja) 2022-03-23 2023-08-23 楽天グループ株式会社 投稿管理装置、投稿管理プログラム、および、投稿管理方法
JP2023141026A (ja) * 2022-03-23 2023-10-05 楽天グループ株式会社 投稿管理装置、投稿管理プログラム、および、投稿管理方法

Also Published As

Publication number Publication date
JP5730741B2 (ja) 2015-06-10

Similar Documents

Publication Publication Date Title
JP5730741B2 (ja) 話題推薦装置及び方法及びプログラム
CN108304526B (zh) 一种数据处理方法、装置及服务器
CN106874435B (zh) 用户画像构建方法和装置
CN112771564B (zh) 生成网站的语义方向以自动实体寻的到映射身份的人工智能引擎
CN111931062A (zh) 一种信息推荐模型的训练方法和相关装置
CN111061946A (zh) 场景化内容推荐方法、装置、电子设备及存储介质
CN105574067A (zh) 项目推荐装置以及项目推荐方法
CN104615767A (zh) 搜索排序模型的训练方法、搜索处理方法及装置
CN109978020B (zh) 一种基于多维特征的社交网络账号马甲身份辨识方法
CN110955750A (zh) 评论区域和情感极性的联合识别方法、装置、电子设备
CN109062914A (zh) 用户推荐方法和装置,存储介质和服务器
WO2018068648A1 (zh) 一种信息匹配方法及相关装置
CN108401005B (zh) 一种表情推荐方法和装置
CN116595398A (zh) 基于元宇宙的资源智能匹配方法及相关装置
WO2015131306A1 (en) Dynamics of tie strength from social interaction
CN109241120A (zh) 一种用户推荐方法及装置
CN110633410A (zh) 信息处理方法及装置、存储介质、电子装置
Shaukat et al. Domain specific lexicon generation through sentiment analysis
JP5791565B2 (ja) ユーザ属性推定装置、ユーザ属性推定方法、及びプログラム
CN110110218A (zh) 一种身份关联方法及终端
Park et al. Effects of knowledge sharing and social presence on the intention to continuously use social networking sites: The case of twitter in Korea
JP5197491B2 (ja) 行動推薦装置及び方法及びプログラム
CN116561271A (zh) 问答处理方法及装置
CN112257517B (zh) 一种基于景点聚类和群体情感识别的旅游景点推荐系统
CN104503959B (zh) 预测用户情感倾向的方法和设备

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20131004

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140225

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140909

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150408

R150 Certificate of patent or registration of utility model

Ref document number: 5730741

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150