(57)【特許請求の範囲】
【請求項１】
会話ログ記憶手段に格納されているユーザ間の会話ログと、ユーザ属性記憶手段に格納されているユーザ属性が既知であるユーザ集合の属性集合とに基づいて、ユーザ属性が未知である入力ユーザのユーザ属性を推定するためのユーザ属性推定装置であって、
前記ユーザ属性記憶手段に格納されているユーザ集合から特定の属性を持つユーザ集合を抽出するユーザ集合抽出手段と、
前記特定の属性を持つユーザ集合と前記会話ログ記憶手段に格納されている各会話ログに基づいて、特定の属性を持つユーザ集合において特徴的に表れる特徴量を抽出し、各特徴量が各ユーザ属性に属する確率である属性確率を算出し、属性確率記憶手段に格納する属性確率算出手段と、
前記会話ログ記憶手段に格納されている各会話ログに基づいて、前記入力ユーザと各近隣ユーザ間の親密度を算出する親密度算出手段と、
前記親密度と前記属性確率記憶手段に格納されている各特徴量の属性確率に基づいて、近隣ユーザの各属性を前記入力ユーザに伝搬させる伝搬確率を算出する伝搬確率算出手段と、
を有することを特徴とするユーザ属性推定装置。
【請求項２】
前記伝搬確率算出手段により算出された結果に基づいて、属性名に含まれる複数の属性値のうち、最も伝搬確率の高い属性値を前記入力ユーザの当該属性名における属性値として出力する出力手段
を更に有することを特徴とする請求項１に記載のユーザ属性推定装置。
【請求項３】
前記伝搬確率算出手段は、前記入力ユーザと各近隣ユーザの会話において特徴量が含まれる確率と特徴量の属性確率とをかけて得られた確率に前記親密度をかけることにより伝搬確率を算出する
ことを特徴とする請求項１又は２に記載のユーザ属性推定装置。
【請求項４】
会話ログ記憶手段に格納されているユーザ間の会話ログと、ユーザ属性記憶手段に格納されているユーザ属性が既知であるユーザ集合の属性集合とに基づいて、ユーザ属性が未知である入力ユーザのユーザ属性を推定するためのユーザ属性推定装置が実行するユーザ属性推定方法であって、
前記ユーザ属性記憶手段に格納されているユーザ集合から特定の属性を持つユーザ集合を抽出するユーザ集合抽出ステップと、
前記特定の属性を持つユーザ集合と前記会話ログ記憶手段に格納されている各会話ログに基づいて、特定の属性を持つユーザ集合において特徴的に表れる特徴量を抽出し、各特徴量が各ユーザ属性に属する確率である属性確率を算出し、属性確率記憶手段に格納する属性確率算出ステップと、
前記会話ログ記憶手段に格納されている各会話ログに基づいて、前記入力ユーザと各近隣ユーザ間の親密度を算出する親密度算出ステップと、
前記親密度と前記属性確率記憶手段に格納されている各特徴量の属性確率に基づいて、近隣ユーザの各属性を前記入力ユーザに伝搬させる伝搬確率を算出する伝搬確率算出ステップと、
を有することを特徴とするユーザ属性推定方法。
【請求項５】
前記伝搬確率算出ステップにより算出された結果に基づいて、属性名に含まれる複数の属性値のうち、最も伝搬確率の高い属性値を前記入力ユーザの当該属性名における属性値として出力する出力ステップ
を更に有することを特徴とする請求項４に記載のユーザ属性推定方法。
【請求項６】
前記伝搬確率算出ステップにおいて、前記ユーザ属性推定装置は、前記入力ユーザと各近隣ユーザの会話において特徴量が含まれる確率と特徴量の属性確率とをかけて得られた確率に前記親密度をかけることにより伝搬確率を算出する
ことを特徴とする請求項４又は５に記載のユーザ属性推定方法。
【請求項７】
コンピュータを、請求項１ないし３のうちいずれか１項に記載のユーザ属性推定装置におけるユーザ集合抽出手段、属性確率算出手段、親密度算出手段、伝搬確率算出手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザ属性を推定するための技術に係り、特に、ソーシャルネットワークにおいてユーザ属性を公開していないユーザの属性を推定するための技術に関する。
【背景技術】
【０００２】
ユーザ属性を推定するための第１の従来技術として、地理属性とユーザ属性の関係を学習し利用することで、地理属性から未知のユーザ属性を推定するユーザ属性推定装置がある（例えば、特許文献１参照）。
【０００３】
また、第２の従来技術として、ソーシャルネットワーク上における近さを定義し、近いユーザから属性を伝搬させることによって、未知のユーザ属性を推定するユーザ属性推定装置がある（例えば、非特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−２３８１６９号公報
【非特許文献】
【０００５】
【非特許文献１】Alan Mislove, Bimal Viswanath, Krishna P. Gummadi, Peter Druschel, "You are who you know: inferring user profiles in online social networks". In Proceedings of the third ACM international conference on Web search and data mining, pages 251-260, 2010.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
第１の従来技術と同様の手法を用いることで、ユーザが使う単語や、地理情報、時間情報などの特徴量をもとに、ユーザ属性を推定することができる。しかし、これらの情報を持たないような活発でないユーザに対してはユーザ属性を推定することができなかった。
【０００７】
第２の従来技術はその課題に対し、ソーシャルネットワーク上で近いユーザの属性を利用し伝搬させることによって、活発でないユーザに対してもユーザ属性の推定を可能としている。しかし、近いユーザから全ての属性を伝搬させているため、伝搬される側のユーザが持たない属性も同時に伝搬させてしまうという問題点があった。
【０００８】
本発明は、上記の点に鑑みなされたものであり、伝搬される側のユーザが持つ属性に絞ってユーザ属性を伝搬することで、高精度に未知のユーザ属性を推定することを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明は、会話ログ記憶手段に格納されているユーザ間の会話ログと、ユーザ属性記憶手段に格納されているユーザ属性が既知であるユーザ集合の属性集合とに基づいて、ユーザ属性が未知である入力ユーザのユーザ属性を推定するためのユーザ属性推定装置であって、
前記ユーザ属性記憶手段に格納されているユーザ集合から特定の属性を持つユーザ集合を抽出するユーザ集合抽出手段と、
前記特定の属性を持つユーザ集合と前記会話ログ記憶手段に格納されている各会話ログに基づいて、特定の属性を持つユーザ集合において特徴的に表れる特徴量を抽出し、各特徴量が各ユーザ属性に属する確率である属性確率を算出し、属性確率記憶手段に格納する属性確率算出手段と、
前記会話ログ記憶手段に格納されている各会話ログに基づいて、前記入力ユーザと各近隣ユーザ間の親密度を算出する親密度算出手段と、
前記親密度と前記属性確率記憶手段に格納されている各特徴量の属性確率に基づいて、近隣ユーザの各属性を前記入力ユーザに伝搬させる伝搬確率を算出する伝搬確率算出手段と、を有することを特徴とするユーザ属性推定装置として構成される。
【００１０】
前記ユーザ属性推定装置は、前記伝搬確率算出手段により算出された結果に基づいて、属性名に含まれる複数の属性値のうち、最も伝搬確率の高い属性値を前記入力ユーザの当該属性名における属性値として出力する出力手段を更に有してもよい。
【００１１】
前記伝搬確率算出手段は、例えば、前記入力ユーザと各近隣ユーザの会話において特徴量が含まれる確率と特徴量の属性確率とをかけて得られた確率に前記親密度をかけることにより伝搬確率を算出する。
【００１２】
また、本発明は、前記ユーザ属性推定装置が実行するユーザ属性推定方法として構成することもできる。また、本発明は、コンピュータを、前記ユーザ属性推定装置におけるユーザ集合抽出手段、属性確率算出手段、親密度算出手段、伝搬確率算出手段として機能させるためのプログラムとして構成することもできる。
【発明の効果】
【００１３】
本発明によれば、会話ログと学習ユーザ集合のユーザ属性に基づいて、伝搬する側のユーザが持つ属性を伝搬する際に、伝搬される側のユーザが持つ属性に絞ることができるので、伝搬される側のユーザが持たない属性も同時に伝搬させてしまうという問題を解決し、高精度に未知のユーザ属性を推定することが可能となる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施の形態におけるユーザ属性推定装置１００の構成図である。
【図２】本発明の実施の形態における学習部１１０の動作のフローチャートである。
【図３】本発明の実施の形態における推論部１２０の動作のフローチャートである。
【図４】本発明の実施の形態におけるユーザ属性記憶部１０に格納される情報の例である。
【図５】本発明の実施の形態における会話ログ記憶部２０に格納される情報の例である。
【図６】本発明の実施の形態における属性確率記憶部５０に記憶される情報の例である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。
【００１６】
（実施の形態の概要）
まず、本実施の形態の概要について説明する。本実施の形態に係る技術は、ソーシャルネットワーク上で関わりを持つ人同士は、全ての属性ではなく、一部の属性を共有している、という仮定と、2ユーザがソーシャルネットワーク上で会話する内容は2ユーザの共通性を含みやすい、という仮定に基づく。そして、会話ログの内容を解析することで、伝搬する側のユーザが持つ属性のうち、伝搬される側のユーザと共有する属性がどれであるのかを推定し、共有する属性に絞って伝搬を行うものである。
【００１７】
（ユーザ属性推定装置１００の構成）
図１は、会話ログと学習ユーザ集合のユーザ属性に基づいて、ユーザがある属性を持つ確率を算出するためのユーザ属性推定装置１００のブロック図を示す。
【００１８】
同図に示すように、ユーザ属性推定装置１００は、ユーザ属性記憶部１０、会話ログ記憶部２０、ユーザ集合抽出部３０、属性確率算出部４０、属性確率記憶部５０、入力部６０、親密度算出部７０、伝搬確率算出部８０、出力部９０を有する。
【００１９】
上記各機能部のうち、ユーザ属性記憶部１０、ユーザ集合抽出部３０、会話ログ記憶部２０、属性確率算出部４０、及び属性確率記憶部５０は、後述する学習の処理を行うものであり、学習部１１０を構成する。また、入力部６０、会話ログ記憶部２０、親密度算出部７０、ユーザ属性記憶部１０、属性確率記憶部５０、伝搬確率算出部８０、及び出力部９０は、後述する推論の処理を行うものであり、推論部１２０を構成する。
【００２０】
本実施の形態に係るユーザ属性推定装置１００は、各記憶部となる記憶装置（メモリ、ハードディスク等）を備えるコンピュータに、ユーザ集合抽出部３０、属性確率算出部４０、入力部６０、親密度算出部７０、伝搬確率算出部８０、出力部９０の処理に対応するプログラムを実行させることにより実現可能である。当該プログラムは、可搬メモリ等の記憶媒体に格納して配布し、上記コンピュータにインストールして用いてもよいし、ネットワーク上のサーバからダウンロードして上記コンピュータにインストールしてもよい。また、ユーザ属性記憶部１０、会話ログ記憶部２０、属性確率記憶部５０のいずれか又は全部を学習及び推論の処理を行うコンピュータ内に備えずに、当該コンピュータからネットワーク経由でアクセス可能な外部装置に備えてもよい。
【００２１】
（学習部１１０の処理内容）
以下、学習部１１０について詳述する。学習部１１０では、ユーザ属性記憶部１０に格納されているユーザ属性と会話ログ記憶部２０に格納されている会話ログに基づき、会話ログに含まれる各特徴量が各ユーザ属性に属する確率である属性確率を算出し、属性確率記憶部５０に格納する。
【００２２】
以下に学習部１１０の各構成・動作をより詳細に説明する。図２は、学習部１１０の動作を示すフローチャートであり、以下の説明において、対応する図２のステップ番号を適宜示すことにする。
【００２３】
＜ユーザ属性記憶部１０＞
ユーザ属性記憶部１０に格納されるデータの例を図４に示す。
【００２４】
ユーザ属性記憶部１０では、ユーザ集合Uの属性集合Aを格納する。属性Aは属性名aiと属性値aijの組である。属性名には、性別、年代、居住地、出身地、母国語、利用可能な言語、職業、勤務先、学歴情報（出身または在学中の大学、高校…など）、所属集団名、宗教、指示する政党、経験スポーツ、嗜好（好きな食べ物、好きな音楽、好きな本…など）、趣味…などが含まれる。例えば、図４に示す例では、IDがIDaのユーザについて、属性名が「職業」である属性の属性値が「学生」であることが示されている。
【００２５】
また、ユーザ属性記憶部１０は、ユーザ集合Uのプロフィール集合Pを格納するものでもよい。プロフィールPには、自己紹介文や、友人などからの紹介文などが含まれる。この場合は、前処理として、プロフィールを形態素解析し、形態素解析結果に属性名が含まれるかのマッチングなどによって、属性集合Aを抽出する。
【００２６】
当該ユーザ属性記憶部１０は、これらの情報が保存され、復元可能なものであればよく、特定のものに限定されない。例えば、データベースや、予め備えられた汎用的な記憶装置（メモリやハードディスク装置）の特定領域に記憶されるもの、もしくは、Webページを保持するWebサーバや、データベースを具備するデータベースサーバ等である。
【００２７】
＜会話ログ記憶部２０＞
会話ログ記憶部２０に格納されるデータの例を図５に示す。
【００２８】
会話ログ記憶部２０では、ユーザ集合Uの会話ログ集合Lを格納する。会話ログLは、投稿そのものの識別番号である投稿ID、その投稿が返信した投稿の識別番号である返信先投稿ID、投稿したユーザの識別番号である投稿元ユーザIDと、投稿されたユーザの識別番号である投稿先ユーザID、投稿内容を含む情報である。また、会話ログLは、投稿内容の投稿時間、投稿場所、ハイパーリンクのような記述内容への補足情報、友人情報といった情報を含んでもよい。なお、返信先投稿IDと投稿先ユーザIDは、単数でも複数でも値がなくともよい。これは、返信ではない投稿や返信されていない投稿も会話ログLに含まれることを意味する。投稿内容は、文章、文章の形態素解析結果、画像、映像、"共感情報"、"レーティング情報"などといった内容のいずれでも良い。"共感情報"とは、Facebook(登録商標)などにおける、『いいね！』ボタンなどのような、共感を示す情報を表す。"レーティング情報"とは、『食べログ（登録商標）』などにおける評価点のような、投稿内容に対する評価点を示す情報を表す。返信先投稿ID、投稿元ユーザID、投稿先ユーザIDなどは、投稿内容に一定のフォーマットで含まれていてもよい。投稿場所は、緯度経度情報でも、地名でもよい。友人情報は、Twitter（登録商標）のフォローのような友人登録の情報であり、片側からの登録であっても、両側からの登録であってもよい。
【００２９】
当該会話ログ記憶部２０は、これらの情報が保存され、復元可能なものであればよく、特定のものに限定されない。例えば、データベースや、予め備えられた汎用的な記憶装置（メモリやハードディスク装置）の特定領域に記憶されるもの、もしくは、Webページを保持するWebサーバや、データベースを具備するデータベースサーバ等である。
【００３０】
＜ユーザ集合抽出部３０＞
ユーザ集合抽出部３０では、ユーザ属性記憶部１０からユーザ集合Uの属性集合Aを入力として受け付ける。そして、各属性名aiについて属性値aijが等しい同属性ユーザ集合Uijを抽出し、属性確率算出部４０に出力する（図２のステップ２１）。
【００３１】
また、第１の従来技術と同様に、同属性ユーザ集合Uijが持つ投稿特徴量f'と属性値aijを学習データとして、会話ログ記憶部２０に含まれる特徴量と各属性の関係性を学習し、これを利用して未知のユーザ属性を推定することで、同属性ユーザ集合Uijの拡張を行ってもよい（図２のステップ２２、ステップ２３）。この際、用いる特徴量としては、各ユーザが投稿に使う単語、地理情報、時間情報、投稿の頻度、投稿の時間帯…などが考えられる。
【００３２】
＜属性確率算出部４０＞
属性確率算出部４０では、ユーザ集合抽出部３０から同属性ユーザ集合Uijと、会話ログ記憶部２０から同属性ユーザ集合Uijの会話ログ集合LUijを入力として受け付ける。そして、与えられた全ての特徴量集合Fに含まれる特徴量fが各ユーザ属性に属する確率である属性確率P(aij|f)を算出し、属性確率記憶部５０に格納する（図２のステップ２４）。特徴量fには、各2ユーザが会話で使う単語、地理情報、時間情報、会話の頻度、文字数、返信が続く回数、返信の時間帯、などが含まれる。属性確率P(aij|f)の算出方法は、以下の方法などが考えられる。
【００３３】
【数１】
0005791565.tif 000002
ただし、C(f, aij)は、特徴量fと属性値aijを同時に持つユーザの数である。
【００３４】
この処理を、全ての特徴量集合Fに対してではなく、一部に限ってもよい。全ての特徴量集合Fに対して検定などの処理を行うことで、同属性ユーザ集合Uijにおいて出現頻度が偏り特徴的に表れる特徴量を抽出できる。検定の方法としては、例えばχ2検定の式は下記で表される。
【００３５】
【数２】
0005791565.tif 000003
ただしここでO = 頻度の観測値、E = 帰無仮説から導かれる頻度の期待値（理論値）である。
【００３６】
＜属性確率記憶部５０＞
属性確率記憶部５０に格納されるデータの例を図６に示す。属性確率記憶部５０では、属性確率算出部４０から入力された属性確率を格納する。例えば、図６において、特徴量「期末試験」が、ユーザ属性「学生」に属する確率が0.7であることが示されている。
【００３７】
当該属性確率記憶部５０は、これらの情報が保存され、復元可能なものであればよく、特定のものに限定されない。例えば、データベースや、予め備えられた汎用的な記憶装置（メモリやハードディスク装置）の特定領域に記憶されるもの、もしくは、Webページを保持するWebサーバや、データベースを具備するデータベースサーバ等である。
【００３８】
（推論部１２０の処理内容）
以下、推論部１２０について詳述する。推論部１２０では、ユーザ属性記憶部１０に格納されているユーザ属性と会話ログ記憶部２０に格納されている会話ログと属性確率記憶部５０に格納されている属性確率に基づき、ユーザ属性を伝搬することで未知のユーザ属性を推定し、出力する。
【００３９】
以下に推論部１２０の各構成・動作をより詳細に説明する。図３は、推論部１２０の動作を示すフローチャートであり、以下の説明において、対応する図３のステップ番号を適宜示すことにする  
＜入力部６０＞
入力部６０では、予測したいユーザの情報を入力として受け付ける。そして、ユーザIDへの変換を行い、親密度算出部７０へと出力する（図３のステップ３１）。
【００４０】
＜親密度算出部７０＞
親密度算出部７０は、入力部６０からユーザIDと、会話ログ記憶部２０から会話ログ集合Lを入力として受け付ける。そして、まず、入力ユーザuのソーシャルネットワークにおける近隣ユーザ集合Suを抽出する（図３のステップ３２）。次に、入力ユーザuと近隣ユーザu'間の親密度wuu'をそれぞれ算出し、伝搬確率算出部８０に出力する（図３のステップ３３）。
【００４１】
入力ユーザuのソーシャルネットワークにおける近隣ユーザ集合Suとは、会話ログ中で会話したことがあるユーザとしてもよく、会話ログの友人情報から友人関係を持つユーザを抜き出して用いてもよい。2ユーザ間の親密度wuu'の算出方法は、会話の頻度、文字数、返信が続く回数、返信が行われるまでにかかる時間、共通の友人数などを特徴量として算出する方法が考えられる。例えば、第２の従来技術においては、下記の式によって求められるが、下記の式に上記の特徴量の全てまたは一部を加えた方法であってもよい。また、wuu'を近隣ユーザ集合Suについて足し合わせると1になるよう正規化を行う。
【数３】
0005791565.tif 000004
【００４２】
ここで、distは下記の関数である。
【数４】
0005791565.tif 000005
【００４３】
ただし、Kは、ユーザuとユーザu'およびその共通の近隣ユーザを経由した経路集合であるとする。また、strengthは下記の関数である。
【数５】
0005791565.tif 000006
【００４４】
ここで、X'ijは下記のように求める。
【００４５】
【数６】
0005791565.tif 000007
ただし、Xijはユーザiとユーザjが過去に会話した回数であるとする。
【００４６】
＜伝搬確率算出部８０＞
伝搬確率算出部８０では、親密度算出部７０から親密度wuu'と、ユーザ属性記憶部１０から近隣ユーザ集合Suの属性集合ASuと、会話ログ記憶部２０からユーザuと近隣ユーザ集合Suの会話ログ集合LuSuと、属性確率記憶部５０から属性確率P(aij|f)を入力として受け付ける。そして、会話ログ集合LuSuをもとにユーザuと近隣各ユーザu'の会話において特徴量fが含まれる確率P(f|u,u')を算出したのち（図３のステップ３４、ステップ３５）、伝搬確率P(aij|u,u')を算出する（図３のステップ３６）。伝搬確率に基づいて近隣ユーザ集合Suから属性を伝搬することによって、入力ユーザuが各属性を持つ確率P(aij|u)を算出し、出力部９０へと出力する（図３のステップ３７）。
【００４７】
ユーザuと近隣各ユーザu'の会話において特徴量fが含まれる確率P(f|u,u')の算出方法は、以下の方法が考えられる。
【００４８】
【数７】
0005791565.tif 000008
ただし、C(f,u,u')は、ユーザu,u'の会話において特徴量fが含まれた回数を表す。
【００４９】
伝搬確率の算出方法は、以下の方法などが考えられる。
【００５０】
【数８】
0005791565.tif 000009
伝搬を行う際には、下式のようにユーザu'が持つ属性値aijについて入力ユーザuが各属性を持つ確率P(aij|u)を算出する方法などが考えられる。
【００５１】
【数９】
0005791565.tif 000010
この際、ユーザu'が持つ全ての属性値を伝搬確率P(aij|u)に基づき伝搬してもよく、ユーザu'が持つ属性値のうち、最も伝搬確率P(aij|u)が高い属性値に絞って伝搬してもよい。
【００５２】
＜出力部９０＞
出力部９０では、伝搬確率算出部８０から入力ユーザuが各属性を持つ確率を入力として受け付ける。そして、伝搬された属性値aijのうち、属性名aiに含まれる属性値aijのうち最も確率の高い属性値をユーザuの属性名aiにおける属性値aijとして出力する（図３のステップ３８）。
【００５３】
ここで、出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部装置への送信等を含む概念である。出力部９０は、ディスプレイやスピーカ等の出力デバイスを含むと考えても含まないと考えてもよい。出力部９０は、出力デバイスのドライバソフトまたは、出力デバイスのドライバソフトと出力デバイス等で実現され得る。
【００５４】
（具体例）
以下、具体的な例を用いて本実施の形態の処理について説明する。ここでは、下記のような条件における具体例を説明する。
【００５５】
・入力は入力ユーザuである
・属性名aiには職業と居住地が含まれる
・属性値a職業jには学生と会社員が含まれる
・属性値a居住地jには東京と神奈川が含まれる
・ユーザ属性記憶部１０にはプロフィールが格納されている
・会話ログには形態素解析された投稿内容、時間情報、友人情報が含まれる
ユーザ集合抽出部３０において、プロフィールに「学生」という文字を含むユーザを抽出することで、職業の属性値が学生であるユーザ集合U職業:学生を抽出し、同様にU職業:会社員、U居住地:東京、U居住地:神奈川を抽出する。そして、会話ログ記憶部２０に問い合わせ、それぞれのユーザ集合に含まれるユーザの会話ログを抽出する。抽出した会話ログに含まれる特徴量について検定を行うことによって、U職業:学生の会話ログには「期末試験」「部活」などの単語が有意に含まれている他、「16時台に多く投稿が行われている」という特徴量を得る。そして、例えば、「期末試験」という単語を利用したユーザが5000人おり、「期末試験」という単語を利用し、かつ、職業:学生という人数が500人いたとすれば、P(職業:学生|期末試験)は0.1と算出できる。すると、ユーザが特徴量fを含む確率P(f|u)と特徴量fが属性aに属する確率P(a|f)をかけ合わせることによってユーザuがある属性aを持つ確率P(a|u)が算出できる。例えば、あるユーザが「期末試験」という単語を100回に1回使っているとすれば、0.01×0.1=0.001となる。これを全ての特徴量集合Fについて足し合わせればよい。各特徴量が独立である場合の以上のプロセスにより、各ユーザがU職業:学生に属する確率を算出することで、プロフィールに「学生」という文字が含まれていなくとも、U職業:学生を得ることができ、また、プロフィールに「学生」という文字が含まれていても、U職業:学生でないユーザを排除することができる。
【００５６】
次に、属性確率算出部４０において、先のステップで得たユーザ集合から、会話ログ記憶部２０に問い合わせ、U職業:学生に含まれるユーザ間の会話ログを抽出する。ユーザ間の会話に含まれる特徴量について検定を行うことによって、U職業:学生同士の会話には「文化祭」などの単語や顔文字が有意に含まれている他、「文字数が少ない」「返信が続く回数が多い」などの特徴量を得る。そして、ユーザ集合抽出部３０と同様に特徴量fが属性aに属する確率P(a|f)を算出し、属性確率記憶部５０へと格納する。
【００５７】
親密度算出部７０では、会話ログに問い合わせ、ユーザuの友人集合Suを抽出し、近隣ユーザu'とのそれぞれの親密度を算出する。親密度の算出は、2ユーザの全ての共通の友人について、共通の友人間における会話回数をホップ数でわったものを全て足し合わせることで行う。例えば、共通の友人がua、ubであり、ユーザuとユーザu'は5回、ユーザuとユーザuaは3回、ユーザu'とユーザuaは1回、ユーザuとユーザubは4回、ユーザu'とユーザubは6回会話していたとすると、5+(3+1)/2+(4+6)/2=12となる。これを正規化することで、例えば0.6となったとする。
【００５８】
伝搬確率算出部８０では、ユーザuとユーザu'において、ユーザu'が持つ属性値のうち、どの属性値を伝搬すべきかを算出する。まず、ユーザ属性記憶部１０に問い合わせ、友人集合Suの属性を抽出する。会話ログ記憶部２０に問い合わせ、ユーザuと友人集合Suの会話ログを抽出する。P(職業:学生|u)は、P(16時に会話|u,u')P(職業:学生|16時に会話)といった各特徴量ごとの属性確率を、全ての特徴量について足し合わせることによって算出する。そして、各属性値に対する確率値のうち、ユーザuとユーザu'の間で最も高いもののみをユーザu'からユーザuへ伝搬する。例えば、P(職業:学生|u,u')が0.8、P(職業:会社員|u,u')が0.2、P(居住地:東京|u,u')が0.4、P(居住地:神奈川|u,u')が0.6だったとする。この場合、最も確率値の高い「職業:学生」のみを伝搬し、次に確率値の高い「居住地:神奈川」は全く伝搬しないという方法でも、全ての属性を確率値に基づき伝搬するという方法でもよい。伝搬の際には、前に算出した親密度と確率値をかけ合わせ、全ユーザについて足し合わせる。つまり、ユーザu'からユーザuに職業:学生という属性値が伝搬する確率は、0.6×0.8=0.48となる。これを全てのユーザについて足し合わせればよく、結果、P(職業:学生|u)は0.7などとなる。同様に、P(職業:会社員|u)は0.3、P(居住地:東京|u)は0.6、P(居住地:神奈川|u)は0.4のように算出できる。
【００５９】
出力部９０では、属性名aiそれぞれの属性値aijのうち、最も確率が高いものを出力する。例えば、ユーザuの職業は、会社員よりも学生の属性値の方が高い確率を持つため、ユーザuの職業は学生であるとして出力する。以上の方法により、たとえユーザuが東京に住んでいるが、神奈川の学校に通っているため友人の中に神奈川に住む人が多かったとしても、それらの友人からは学校という属性値のみを伝搬し、過去に通っていた学校の友人などから東京という属性値が伝搬されることで、東京という正しい属性値を推定することができる。
【００６０】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００６１】
１０  ユーザ属性記憶部
２０  会話ログ記憶部
３０  ユーザ集合抽出部
４０  属性確率算出部
５０  属性確率記憶部
６０  入力部
７０  親密度算出部
８０  伝搬確率算出部
９０  出力部
１００  ユーザ属性推定装置
１１０  学習部
１２０  推論部
【図１】
0005791565.tif 000011
【図２】
0005791565.tif 000012
【図３】
0005791565.tif 000013
【図４】
0005791565.tif 000014
【図５】
0005791565.tif 000015
【図６】
0005791565.tif 000016