(57)【特許請求の範囲】
【請求項１】
第１キーワード及び第２キーワードの組を複数組取得するキーワード取得部と、
複数の第２キーワードのそれぞれを、複数のトピックのそれぞれに分類する分類部と、
複数の前記組のそれぞれについて、第１キーワードを、第２キーワードが分類されたトピックに関連する関連キーワード、及び、関連しない混入キーワードのいずれであるかを推定する推定部と、
関連キーワードであると推定された第１キーワードを同じ前記組の第２キーワードが分類されたトピックに優先的に割り当て、混入キーワードであると推定された第１キーワードを分類対象となるトピックのうちのいずれかに割り当てる割当部と、
を備える情報処理装置。
【請求項２】
前記割当部は、
第２キーワードが各トピックに分類される割合に応じて、関連キーワードであると推定された同じ組の第１キーワードをどのトピックに割り当てるかを決定し、
混入キーワードであると推定された第１キーワードを、前記割合に依らずどのトピックに割り当てるかを決定する、
請求項１に記載の情報処理装置。
【請求項３】
前記キーワード取得部は、ユーザが作成した１以上の前記第１キーワードを含む第１文書情報、及び、１以上の第２キーワードを含む第２文書情報を取得する、
請求項１又は２に記載の情報処理装置。
【請求項４】
前記推定部は、前記第１キーワードに割り当てられた第１トピック、及び、前記第２キーワードに割り当てられた第２トピックに基づいて、前記第１キーワードが前記関連キーワード、及び、前記混入キーワードのいずれであるかを推定する、
請求項３に記載の情報処理装置。
【請求項５】
前記推定部は、
前記第１キーワードについて前記第１トピックを取得するトピック取得部と、
前記第１トピックと１以上の第２キーワードに割り当てられた前記第２トピックのうち、前記第１トピックと同一であるトピックの割合であるトピック合致度を算出する合致度算出部と、
全てのユーザの前記第１文書情報に含まれる前記第１キーワードのうち前記混入キーワードであると推定されたものの割合である混入割合を取得する混入割合取得部と、
前記トピック合致度及び前記混入割合に基づいて前記第１キーワードが混入キーワードである混入確率を算出する混入確率算出部と、
を有する請求項４に記載の情報処理装置。
【請求項６】
前記推定部は、
前記混入確率に基づいて、前記第１キーワードが関連キーワード又は混入キーワードであると決定する混入決定部を更に有する、
請求項５に記載の情報処理装置。
【請求項７】
全てのユーザの前記第１文書情報において、ｋ番目の前記トピックｋ（ｋは１以上の予め定められた整数）におけるｔ番目の前記第１キーワードｔ（ｔは１以上の整数）の出現しやすさΨｋｔを算出する第１出現度算出部をさらに備える、
請求項４から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記第２文書情報ｄ（ｄは１以上かつ第２文書情報の総数以下の整数）におけるｋ番目の前記トピックｋのそれぞれを生成する確率θｄｋを生成するトピック確率生成部を更に備える、
請求項７に記載の情報処理装置。
【請求項９】
一の第２文書情報ｄにおいてトピックｋごとのθｄｋΨｋｔを合算することにより、前記一の第２文書情報ｄにおいて第１キーワードｔが付与される第１キーワード生成確率Ｐ（ｔ｜ｄ，Ｄ）を算出する第１生成確率算出部を更に備える請求項８に記載の情報処理装置。
【請求項１０】
コンピュータにより実行される、
第１キーワード及び第２キーワードの組を複数組取得するキーワード取得段階と、
複数の第２キーワードのそれぞれを、複数のトピックのそれぞれに分類する分類段階と、
複数の前記組のそれぞれについて、第１キーワードを、第２キーワードが分類されたトピックに関連する関連キーワード、及び、関連しない混入キーワードのいずれであるかを推定する推定段階と、
関連キーワードであると推定された第１キーワードを同じ前記組の第２キーワードが分類されたトピックに優先的に割り当て、混入キーワードであると推定された第１キーワードをいずれかのトピックに割り当てる割当段階と、
を備える情報処理方法。
【請求項１１】
コンピュータを、情報処理装置として機能させるプログラムであって、
実行されると当該コンピュータを、
第１キーワード及び第２キーワードの組を複数組取得するキーワード取得部と、
複数の第２キーワードのそれぞれを、複数のトピックのそれぞれに分類する分類部と、
複数の前記組のそれぞれについて、第１キーワードを、第２キーワードが分類されたトピックに関連する関連キーワード、及び、関連しない混入キーワードのいずれであるかを推定する推定部と、
関連キーワードであると推定された第１キーワードを同じ前記組の第２キーワードが分類されたトピックに優先的に割り当て、混入キーワードであると推定された第１キーワードをいずれかのトピックに割り当てる割当部と、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及び、プログラムに関する。
【背景技術】
【０００２】
ソーシャルメディアサービスの多くは、アカウントごとにコンテンツの内容を紹介し、購読を促すことを目的としたプロフィール等の概要欄を提供する。概要欄に記載されるキーワードは、収集の対象となりマーケティング等に利用されることもある。しかし、概要欄にほとんど記述がないアカウントが多数存在し、ユーザ情報を概要欄から網羅的に収集・分析する妨げとなっている。
【０００３】
この問題を解決するために、コンテンツ中のキーワードと概要中のキーワードとの共起関係を学習して、コンテンツ中のキーワードから概要中のキーワードの内容を推定する方法が知られている（例えば、非特許文献１）。
【０００４】
ところが、ユーザがコンテンツの内容に対応して概要欄を記述するとは限らず、概要中のキーワードの一部がコンテンツの内容と対応していない場合がある。例えば、あるユーザが概要欄に「趣味は読書とスポーツです」と記述しながら、コンテンツでは「読書」についてのみ記述し、「スポーツ」について全く記述しない場合がある。この場合、概要中のキーワードは、コンテンツの内容と対応する関連キーワード（読書）及びコンテンツの内容と対応しない混入キーワード（スポーツ）の両方を含むことになるが、混入キーワードは共起関係の学習の妨げとなる。
【０００５】
これに対し、キーワードとトピックとを関連づけるトピックモデルを導入し、混入キーワードに対して実質的に混入キーワード専用のトピックを割り当てることで、混入キーワードを関連キーワードから除外する方法が知られている（例えば、非特許文献２）。
【０００６】
この方法によると、「お気に入り」及び「あとで読む」等のコンテンツの内容とは直接関係ないが多くのユーザで共通して用いられるキーワードを混入キーワードとして除外する。しかし、この方法では、「スポーツ」等の他の一部のユーザにとっては関連キーワードとなり得るキーワードを、全ユーザに対する混入キーワードとして扱ってしまう。このため、従来、あるユーザに対して混入キーワードとして判断されたキーワードが他のユーザにとって関連キーワードとなりえる状況を適切に処理することができず、コンテンツ中のキーワードと概要中のキーワードとの共起関係の学習精度を十分に向上させることができなかった。
［非特許文献１］David Blei and Michael Jordan. "Modeling annotated data." Proc. of ACM SIGIR 2003
［非特許文献２］Tohoharu Iwata, Takeshi Yamada, Naonori Ueda, "Modeling Noisy Annotated Data with Application to Social Annotation," IEEE Transactions on Knowledge and Data Engineering, vol.25, no.7, pp.1601-1613, 2013.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
関連キーワードにも混入キーワードにもなり得る概要中のキーワードを適切に処理することにより、コンテンツ中のキーワードと概要中のキーワードとの共起関係を適切に学習させることを課題とする。
【課題を解決するための手段】
【０００８】
本発明の第１の態様においては、第１キーワード及び第２キーワードの組を複数組取得するキーワード取得部と、複数の第２キーワードのそれぞれを、複数のトピックのそれぞれに分類する分類部と、複数の組のそれぞれについて、第１キーワードを、第２キーワードが分類されたトピックに関連する関連キーワード、及び、関連しない混入キーワードのいずれであるかを推定する推定部と、関連キーワードであると推定された第１キーワードを同じ組の第２キーワードが分類されたトピックに優先的に割り当て、混入キーワードであると推定された第１キーワードを分類対象となるトピックのうちのいずれかに割り当てる割当部と、を備える情報処理装置を提供する。
【０００９】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の情報処理装置１０のブロック図を示す。
【図２】本実施形態の情報処理装置１０の処理フローを示す。
【図３】キーワード取得部１００が取得する第１文書情報及び第２文書情報の一例を示す。
【図４】記憶部１０２が保持する第１ユーザデータの一例を示す。
【図５】記憶部１０２が保持する第２ユーザデータの一例を示す。
【図６】混入割合取得部１２６が取得する第３全体データλの一例を示す。
【図７】トピック確率生成部１６０が生成する第１全体データΨの一例を示す。
【図８】トピック確率生成部１６０が生成する第２全体データΦの一例を示す。
【図９】トピック確率生成部１６０が生成する第３ユーザデータθの一例を示す。
【図１０】第１生成確率算出部１８０が生成する第１キーワード生成確率の一例を示す。
【図１１】本実施形態に係るトピックモデルの一例を示す。
【図１２】本実施形態の情報処理装置１０の効果を示す。
【図１３】コンピュータ１９００のハードウェア構成の一例を示す。
【発明を実施するための形態】
【００１１】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１２】
図１は、本実施形態の情報処理装置１０のブロック図を示す。本実施形態の情報処理装置１０は、ソーシャルメディアサービス等の概要欄及びコンテンツの組を取得し、概要欄に含まれる第１キーワード、及び、コンテンツに含まれる第２キーワードの共起関係を学習する。
【００１３】
情報処理装置１０は、トピックモデルに基づいて、第１キーワード及び第２キーワードの共起関係を学習する。例えば、情報処理装置１０は、第１キーワード及び第２キーワードにトピックを割り当てる。トピックは、文書情報中に共に出現する可能性が高い複数のキーワードをグループ化する単位であってよく、例えば、複数のキーワードに共通するテーマ、又は、話題等に対応するものであってよい。
【００１４】
情報処理装置１０は、キーワード取得部１００、記憶部１０２、初期化部１１０、分類部１１２、推定部１２０、割当部１４０、第１出現度算出部１５０、トピック確率生成部１６０、混入関連割合算出部１７０、及び、第１生成確率算出部１８０を備える。
【００１５】
キーワード取得部１００は、複数のアカウントについて、ユーザが作成した１以上の第１キーワードを含むソーシャルメディアサービス等の概要欄等である第１文書情報を取得し、１以上の第２キーワードを含む当該概要欄に対応するコンテンツである第２文書情報を取得する。キーワード取得部１００は、第１文書情報から第１キーワードを抽出し、当該第１文書情報に対応する第２文書情報から第２キーワードを抽出することにより、第１キーワード及び第２キーワードの組を複数組取得する。
【００１６】
キーワード取得部１００は、各アカウントについて、第１文書情報から１以上の第１キーワードを抽出し、第１文書情報に対応する第２文書情報から第２キーワードを抽出して、両者の組を生成して取得する。キーワード取得部１００は、第１キーワード及び第２キーワードの組を初期化部１１０に供給する。
【００１７】
記憶部１０２は、情報処理装置１０が処理に用いるデータを記憶する。例えば、記憶部１０２は、各ユーザにおける第１キーワードに対するトピックの割当状況及び第１キーワードが混入キーワード／関連キーワードであることを示す第１ユーザデータ、各ユーザにおける第２キーワードに対するトピックの割当状況を示す第２ユーザデータ、各ユーザにおけるトピックの生成確率を示す第３ユーザデータθ、全ユーザにおいて各トピックに対する第１キーワードの生成確率を示す第１全体データΨ、全ユーザにおいて各トピックに対する第２キーワードの生成確率を示す第２全体データΦ、全ユーザの全ての第１キーワードにおける混入キーワードの割合を示す第３全体データλ、及び、第２文書情報に対する第１キーワードの生成確率を示す第１キーワード生成確率を格納する。
【００１８】
初期化部１１０は、情報処理装置１０の処理開始時に、第１キーワード及び第２キーワードに予め定められたルール（例えば、ランダム）でトピックを割り当てて、初期化された第１ユーザデータ及び第２ユーザデータを生成する。初期化部１１０は、生成した第１ユーザデータ及び第２ユーザデータを記憶部１０２に格納する。
【００１９】
分類部１１２は、複数の第２キーワードのそれぞれを、複数のトピックのそれぞれに分類する。例えば、分類部１１２は、第２ユーザデータを記憶部１０２から取得し、第２ユーザデータにおいて複数の第２キーワードをユーザごとに複数のトピックに再分類し、再分類した結果を記憶部１０２に第２ユーザデータとして格納する。
【００２０】
推定部１２０は、キーワード取得部１００から受け取った複数の組のそれぞれについて、第１キーワードを、第２キーワードが分類されたトピックに関連する関連キーワード、及び、関連しない混入キーワードのいずれであるかを推定する。例えば、推定部１２０は、第１キーワードに割り当てられた第１トピック、及び、第２キーワードに割り当てられた第２トピックに基づいて、第１キーワードが関連キーワード、及び、混入キーワードのいずれであるかを推定する。推定部１２０は、トピック取得部１２２、合致度算出部１２４、混入割合取得部１２６、混入確率算出部１２８、及び、混入決定部１３０を有する。
【００２１】
トピック取得部１２２は、記憶部１０２の第１ユーザデータを参照することにより、ユーザの第１キーワードについて現在割り当てられている第１トピックを取得する。
【００２２】
合致度算出部１２４は、記憶部１０２の第２ユーザデータを参照することにより、ユーザの第２キーワードに現在割り当てられた第２トピックのうち、第１トピックと同一であるトピックの割合であるトピック合致度を算出する。
【００２３】
混入割合取得部１２６は、記憶部１０２の第３全体データλに基づいて、全てのユーザの第１文書情報に含まれる第１キーワードのうち混入キーワードであると推定されたものの割合である混入割合を取得する。
【００２４】
混入確率算出部１２８は、合致度算出部１２４が算出したトピック合致度、及び、混入割合取得部１２６が取得した混入割合に基づいて、第１キーワードが混入キーワードである混入確率、及び、第１キーワードが関連キーワードである関連確率を算出する。混入確率算出部１２８による具体的な算出方法は後述する。
【００２５】
混入決定部１３０は、混入確率算出部１２８が算出した混入確率、及び、関連確率に基づいて、第１キーワードが関連キーワード又は混入キーワードであると決定する。例えば、混入決定部１３０は、混入確率に等しい確率で第１キーワードが混入キーワードであると決定し、関連確率に等しい確率で第１キーワードが関連キーワードであると決定する。混入決定部１３０は、第１キーワードを関連キーワード又は混入キーワードと決定した結果に基づき、記憶部１０２の第１ユーザデータを更新する。
【００２６】
割当部１４０は、関連キーワードであると推定された第１キーワードを、同じ組の第２キーワードが分類されたトピックに優先的に割り当て、混入キーワードであると推定された第１キーワードを分類対象となるトピックのうちのいずれかに割り当てる。例えば、割当部１４０は、記憶部１０２から第２ユーザデータを取得し、第２ユーザデータに基づいて、第１キーワードにトピックを割り当ててよい。割当部１４０によるトピックの割り当ての具体的な内容は後述する。割当部１４０は、第１キーワードに割り当てられたトピックを反映させて、記憶部１０２の第１ユーザデータを更新する。
【００２７】
第１出現度算出部１５０は、全てのユーザの第１文書情報において、各トピックにおける第１キーワードの出現しやすさを算出する。第１出現度算出部１５０は、第１キーワードの出現しやすさをトピックごとに記録した第１全体データΨを記憶部１０２に格納する。
【００２８】
トピック確率生成部１６０は、各ユーザの第２文書情報における各トピックのそれぞれを生成する確率を生成する。トピック確率生成部１６０は、トピックの生成確率をユーザごとに記録した第３ユーザデータθを記憶部１０２に格納する。
【００２９】
また、トピック確率生成部１６０は、全てのユーザの第２文書情報において、各第２トピックにおける第２キーワードの出現しやすさを算出する。トピック確率生成部１６０は、第２キーワードの出現しやすさを第２トピックごとに記録した第２全体データΦを記憶部１０２に格納する。
【００３０】
混入関連割合算出部１７０は、全ユーザの全ての第１キーワードにおける混入キーワードの割合を示す第３全体データλを生成して、記憶部１０２に格納する。
【００３１】
第１生成確率算出部１８０は、第２文書情報において第１キーワードが付与される確率を表す第１キーワード生成確率を算出する。例えば、第１生成確率算出部１８０は、第３ユーザデータθ及び第１全体データΨに基づいて、第１キーワード生成確率を算出する。第１生成確率算出部１８０は、第１キーワード生成確率を記憶部１０２に格納する。
【００３２】
このように本実施形態の情報処理装置１０は、第１生成確率算出部１８０が算出した第１キーワード生成確率により、コンテンツに対応する概要等で使用される第１キーワードを推定することができる。ここで、情報処理装置１０は、第１キーワードが混入キーワードである場合に、第１キーワードに混入キーワード専用のトピックを割り当てずに、いずれかのトピックを第１キーワードに割り当てる。
【００３３】
これにより、情報処理装置１０は、第１キーワードがあるユーザにとって混入キーワードであり別のユーザにとって関連キーワードである場合にも、第１キーワードに適切なトピックを割り当てることができるので、精度よく第１キーワードを推定することができる。
【００３４】
図２は、本実施形態の情報処理装置１０の処理フローを示す。本実施形態において、情報処理装置１０は、Ｓ１００〜Ｓ２４０の処理を実行する。
【００３５】
まず、Ｓ１００において、キーワード取得部１００が第１キーワード及び第２キーワードの組を複数組取得する。例えば、キーワード取得部１００は、記憶部１０２又は情報処理装置１０の外部のデータベース等から、ユーザがソーシャルメディアサービス、ブログサイト、及び／又はその他の投稿サイト等に投稿した投稿情報を取得する。
【００３６】
次に、キーワード取得部１００は、投稿情報から概要欄、及び、プロフィール等のコンテンツ又はユーザを紹介する文書を第１文書情報として取得し、コンテンツを第２文書情報として取得する。
【００３７】
図３に、キーワード取得部１００が取得する第１文書情報及び第２文書情報の一例を示す。図示するように、キーワード取得部１００は、複数のユーザについて、第１文書情報及び第２文書情報を含む文書を取得する。図示するように、キーワード取得部１００は、ユーザＡ〜Ｃがソーシャルメディアサービスに投稿した、概要欄（第１文書情報）及び、コンテンツ（第２文書情報）を含む文書ｄ１〜ｄ３を取得する。
【００３８】
キーワード取得部１００は、第１文書情報に含まれる単語を第１キーワードとして取得する。例えば、図示するように、キーワード取得部１００は、ユーザＡの第１文書情報として「育児と仕事に奮闘中の二児の母です」というテキストを取得した場合、第１キーワードとして「育児」、「仕事」、「奮闘中」、「二児」、及び「母」を取得してよい。なお、第１文書情報がタグ等の単語の羅列である場合、キーワード取得部１００は、タグのそれぞれをそのまま第１キーワードとして取得してよい。
【００３９】
キーワード取得部１００は、第２文書情報に含まれる単語を第２キーワードとして取得する。例えば、図示するように、キーワード取得部１００は、ユーザＡの第２文書情報として「○○町の保育園を見てきました。」というテキストを取得した場合、第２キーワードとして「○○町」、及び「保育園」を取得してよい。
【００４０】
キーワード取得部１００は、一のユーザから取得した第１キーワード及び第２キーワードから組を形成して取得する。例えば、キーワード取得部１００は、ユーザＡの文書ｄ１について取得した「育児」等の第１キーワードと「○○町」等の第２キーワードとを組にして取得する。キーワード取得部１００は、複数の第１キーワード及び第２キーワードの組を分類部１１２、推定部１２０、及び、初期化部１１０に供給する。
【００４１】
図２に戻り、次に、Ｓ１１０において、初期化部１１０は、第１ユーザデータ及び第２ユーザデータを初期化する。例えば、初期化部１１０は、キーワード取得部１００から取得した第１キーワードの各々にランダムにＫ個（Ｋは予め定められた２以上の整数）のトピックのうちの１つを割り当てて、各第１キーワードにランダムに関連キーワード又は混入キーワードを割り当てた第１ユーザデータを生成する。
【００４２】
また、初期化部１１０は、処理に用いる調整用のパラメータを予め定められた、又は、情報処理装置１０のユーザから与えられた値に設定する。例えば、初期化部１１０は、パラメータα、β、γ、及び、ηの値を設定してよい。
【００４３】
また、例えば、初期化部１１０は、情報処理装置１０の処理開始時において、キーワード取得部１００から取得した第２キーワードの各々にランダムにＫ個のトピックのうちの１つを割り当てた第２ユーザデータを生成する。初期化部１１０は、生成した第１ユーザデータ及び第２ユーザデータを記憶部１０２に格納する。
【００４４】
図４に、記憶部１０２が保持する第１ユーザデータの一例を示す。図示するように記憶部１０２は、ユーザＡ〜Ｃごとに、１以上の第１キーワード、当該第１キーワードに割り当てられたトピック、及び、当該第１キーワードが関連キーワード又は混入キーワードであるかを示す情報を有する、第１ユーザデータを格納する。
【００４５】
例えば、図示するように、記憶部１０２は、１番目の文書（ユーザＡ）に係る第１キーワード「野球」が２番目のトピックに割り当てられた混入キーワードであることを示すレコードを、第１ユーザデータとして保持する。なお、図４は、説明のために２番目のトピックが「趣味」に関するものであることを示すが、情報処理装置１０は各トピックの意味に関する情報を取得及び保持しなくてよい。
【００４６】
図５に、記憶部１０２が保持する第２ユーザデータの一例を示す。図示するように記憶部１０２は、ユーザＡ〜Ｃごとに、１以上の第２キーワード、及び、当該第２キーワードに割り当てられたトピックを有する、第２ユーザデータを格納する。
【００４７】
例えば、図示するように、記憶部１０２は、１番目の文書（ユーザＡ）に第２キーワード「公園」が１番目のトピックに割り当てられたことを示すレコードを第２ユーザデータとして保持する。
【００４８】
図２に戻り、次に、Ｓ１２０において、情報処理装置１０は、Ｓ１３０〜Ｓ２３０までの処理を含む第１ループ処理を予め定められた回数実行する。
【００４９】
第１ループ処理内のＳ１３０において、情報処理装置１０は、Ｓ１４０〜Ｓ２２０までの処理を含む第２ループ処理を第１キーワード及び第２キーワードの組ごとに実行する。すなわち、情報処理装置１０は、対象となるユーザごとに第２ループ処理を実行する。ここでは、ｄ番目のユーザｄについて第２ループ処理を実行するものとして説明する。
【００５０】
情報処理装置１０は、一のユーザが複数の第１文書情報及び第２文書情報の組を生成する場合（例えば、単一のユーザが複数のアカウントでブログ記事を生成することを想定する場合等）は、第１文書情報及び第２文書情報の組ごとに第２ループ処理を実行してよい。すなわち、この場合、情報処理装置１０は、一のユーザに対して複数回第２ループ処理を実行する。
【００５１】
第２ループ処理内のＳ１４０において、情報処理装置１０は、Ｓ１５０の処理を含む第３ループ処理を第２キーワードごとに実行する。ここでは、ｊ番目の第２キーワードｗｊについて第３ループ処理を実行するものとして説明する。
【００５２】
第３ループ処理内のＳ１５０において、分類部１１２は、処理対象のユーザｄについて、第２キーワードｗｊを、複数のトピックのそれぞれに分類することで、第２キーワードｗｊに割り当てられる第２トピックｚｊを決定する。例えば、分類部１１２は、図３のユーザＡに係る第２キーワードｗ１「○○町」に割り当てられる第２トピックｚ１を決定し、第２キーワードｗ２「保育園」に割り当てられる第２トピックｚ２を決定する。
【００５３】
分類部１１２は、対象となるユーザの第２キーワードｗｊのうち第２トピックとしてある一のトピックに割り当てられた数、対象となるユーザの第２キーワードの数、一の第２キーワードが当該一のトピックに割り当てられた数、当該一のトピックに割り当てられた第２キーワードの数、及び、全ユーザの第２キーワードの総数に基づいて、当該一の第２キーワードが当該一のトピックに割り当てられるか否かを決定する。
【００５４】
一例として、分類部１１２は、記憶部１０２から第１ユーザデータ及び第２ユーザデータを取得し、数式（１）に基づいてトピックｚｊを決定する。即ち、分類部１１２は、数式（１）の右辺の式に比例する左辺Ｐ（ｚｊ＝ｋ｜Ｗ，Ｔ，Ｚ＼ｊ，Ｃ，Ｒ）の確率で、ｊ番目の第２キーワードｗｊにｋ番目（１≦ｋ≦Ｋ）のトピックを第２トピックｚｊとして割り当てる。
【数１】
0005975470.tif 000002
なお、Ｎｋｄ＼ｊは、ｄ番目のユーザｄの第２文書情報中の第２キーワード（ただし、ｊ番目の第２キーワードｗｊは除く）によりｋ番目のトピックｋが生成された回数を表し、Ｎｄ＼ｊは、ユーザｄの第２文書情報の第２キーワード（ただし、ｊ番目の第２キーワードｗｊは除く）の総数を表す。また、Ｎｋｗｊ＼ｊは、ｋ番目のトピックｋがｊ番目の第２キーワードｗｊを生成した回数を表し、Ｎｋ＼ｊはトピックｋが生成した第２キーワード（ただし、ｊ番目の第２キーワードｗｊは除く）の総数を表し、Ｗは全ユーザの第２キーワードの異なり数を表す。
【００５５】
数式（１）は、数式（２）〜（７）に基づき、非特許文献２と同様の方法により導出される。
【数２】
0005975470.tif 000003
【数３】
0005975470.tif 000004
Ｎｋｄは、ｄ番目のユーザｄの第２文書情報中の第２キーワードによりｋ番目のトピックｋが生成された回数を表し、Ｋはトピックの総数を表し、Ｎｄはユーザｄの第２文書情報の第２キーワードの総数を表す。
【数４】
0005975470.tif 000005
Ｎｋｗは、ｋ番目のトピックｋがｗ番目の第２キーワードｗを生成した回数を表し、Ｎｋはトピックｋが生成した第２キーワードの総数を表す。
【数５】
0005975470.tif 000006
Ｍｋ，ｔはｔ番目の第１キーワードがｋ番目のトピックｋから生成された回数を表し、Ｍｋはｋ番目のトピックｋが生成した第１キーワードの総数を表し、Ｔは全ユーザの第１キーワードの異なり数を表す。なお、当該数式（５）と対応する非特許文献２における数式（４）は、数式（５）と異なる。これは、非特許文献２においては、通常のＫ個のトピックに加え、混入キーワード用のトピックが存在することによるものである。
【数６】
0005975470.tif 000007
Ｍは第１キーワードの総数を表し、Ｍ０は全ユーザの第１キーワードにおける混入キーワードの数を表し、ηは予め定められたパラメータを表す。
【数７】
0005975470.tif 000008
Ｍ（ｋ）０，ｄはｄ番目のユーザｄの第２文書情報中でｋ番目のトピックｋから生成された混入キーワードの数を表し、Ｍ（ｋ）１，ｄはｄ番目のユーザｄの第２文書情報中でｋ番目のトピックｋから生成された関連キーワードの数を表す。なお、当該数式（７）と対応する非特許文献２における数式（６）は、数式（７）と異なる。これは、非特許文献２においては、関連／混入キーワードの判定結果Ｒが、第１キーワードＴの生成に直接影響を与える、という前提であったのに対し、本発明では第１キーワードのトピックＣに影響を与えるという前提になっているためである。
【００５６】
第２ループ処理内のＳ１６０において、情報処理装置１０は、Ｓ１７０〜Ｓ２２０の処理を含む第４ループ処理を第１キーワードごとに実行する。ここでは、ｊ番目の第１キーワードｔｊについて第４ループ処理を実行するものとして説明する。
【００５７】
第４ループ処理において、推定部１２０は、第１キーワードｔｊが関連キーワード、及び、関連しない混入キーワードのいずれであるかを推定し、推定結果に基づき割当部１４０が第１キーワードｔｊをいずれかのトピックに割り当てる。
【００５８】
第４ループ処理内のＳ１７０において、トピック取得部１２２は、対象となるユーザｄの第１キーワードｔｊについて第１トピックを取得する。例えば、トピック取得部１２２は、記憶部１０２の第１ユーザデータを参照することにより、対象となるユーザｄの第１キーワードｔｊに現在割り当てられているトピックの番号を第１トピックとして取得する。一例として、トピック取得部１２２は、第１キーワードｔｊに対してｃｊ番目のトピックを取得したときは、第１トピックｃｊを取得する。
【００５９】
次に、Ｓ１８０において、合致度算出部１２４は、ユーザｄの第２キーワードに割り当てられた第２トピックのうち、第１トピックｃｊと同一であるトピックの割合であるトピック合致度を算出する。例えば、合致度算出部１２４は、記憶部１０２の第２ユーザデータを参照することにより、ユーザｄの複数の第２キーワードに現在割り当てられているトピックを第２トピックとして取得し、ユーザｄに係る第２キーワードに割り当てられた第２トピックのうち第１トピックｃｊと同一である割合をトピック合致度として算出する。
【００６０】
次に、Ｓ１９０において、混入割合取得部１２６は、全てのユーザの第１文書情報に含まれる第１キーワードが混入キーワードを含む割合である混入割合を取得する。例えば、混入割合取得部１２６は、記憶部１０２の第３全体データから全ユーザの第１キーワードのうち混入キーワードを含む割合と相関する混入割合、及び、全ユーザの第１キーワードのうち関連キーワードを含む割合と相関する関連割合を取得する。
【００６１】
例えば、混入割合取得部１２６は、全ユーザの第１キーワード（但し、ｊ番目の第１キーワードｔｊを除く）に含まれる混入キーワードの総数Ｍ０＼ｊにパラメータηを加算した値を分子とし、全ユーザの第１キーワードの総数Ｍ＼ｊ（但し、ｊ番目の第１キーワードｔｊを除く）に２ηを加算した値を分母とする混入割合を取得する。
【００６２】
また、混入割合取得部１２６は、全てのユーザの第１文書情報に含まれる第１キーワードが関連キーワードを含む割合である関連割合を取得する。例えば、混入割合取得部１２６は、全ユーザの第１キーワード（但し、ｊ番目の第１キーワードｔｊを除く）に含まれる関連キーワードの総数を表す、Ｍ＼ｊからＭ０＼ｊを減じた値にηを加算した値を分子とし、Ｍ＼ｊに２ηを加算した値を分母とする関連割合を取得する。
【００６３】
図６に、混入割合取得部１２６が取得する第３全体データλの一例を示す。図示するように、記憶部１０２は、全ユーザの第１キーワードにおける混入キーワードの総数、及び、関連キーワードの総数を含む第３全体データλを格納してよい。ここで、記憶部１０２は、ηを含む／ηを含まない混入キーワードの混入割合を含む第３全体データλを格納してよい。
【００６４】
図２に戻り、Ｓ２００において、混入確率算出部１２８は、Ｓ１８０で合致度算出部１２４が算出したトピック合致度、及び、Ｓ１９０で混入割合取得部１２６が取得した混入割合等に基づいて、第１キーワードｔｊが混入キーワードである混入確率、及び、第１キーワードｔｊが関連キーワードである関連確率を算出する。
【００６５】
混入確率算出部１２８は、全ユーザの第１キーワードに含まれる混入キーワードの総数、全ユーザの第１キーワードの総数、ｄ番目のユーザｄの第２キーワードの総数、ｄ番目のユーザｄの第１トピックが割り当てられた第１キーワードの総数、及び、トピックの総数に基づいて、第１キーワードの混入確率及び関連確率を算出してよい。
【００６６】
一例として、混入確率算出部１２８は、記憶部１０２から第１ユーザデータ及び第２ユーザデータを取得して、数式（８）及び数式（９）に基づいて、ｊ番目の第１キーワードｔｊが混入確率を決定する。例えば、混入確率算出部１２８は、数式（８）の右辺、及び、数式（９）の右辺を算出し、両者の和を１に正規化することにより、第１キーワードｔｊが混入キーワードである混入確率Ｐ（ｒｊ＝０｜Ｚ，Ｗ，Ｔ，Ｃ，Ｒ＼ｊ；α，β，γ，η）、及び、第１キーワードｔｊが関連キーワードである関連確率Ｐ（ｒｊ＝１｜Ｚ，Ｗ，Ｔ，Ｃ，Ｒ＼ｊ；α，β，γ，η）を算出してよい。
【数８】
0005975470.tif 000009
【数９】
0005975470.tif 000010
Ｍは第１キーワードの総数を表し、Ｍ０は全ユーザの第１キーワードにおける混入キーワードの数を表し、ηは予め定められたパラメータを表す。Ｍ０＼ｊは全ユーザの第１キーワード（但し、ｊ番目の第１キーワードｔｊを除く）に含まれる混入キーワードの総数を表し、Ｍ＼ｊは全ユーザの第１キーワード（但し、ｊ番目の第１キーワードｔｊを除く）の総数を表し、ｃｊはＳ１７０でトピック取得部１２２が取得した第１トピックの番号を表す。
【００６７】
ここで、数式（８）の（Ｍ０＼ｊ＋η）／（Ｍ＼ｊ＋２η）の項は、Ｓ１９０で混入割合取得部１２６が算出した混入割合に対応し、数式（９）の（Ｍ＼ｊ−Ｍ０＼ｊ＋η）／（Ｍｄ＼ｊ＋２η）の項は関連割合に対応する。また、数式（９）のＮｃｊ，ｄは、ｄ番目のユーザｄの第２キーワードの中でトピックｃｊが生成された総数を表し、Ｎｃｊ，ｄ／ＮｄはＳ１８０で合致度算出部１２４が算出したトピック合致度に対応する。
【００６８】
次にＳ２１０において、混入決定部１３０は、混入確率算出部１２８が算出した混入確率、及び、関連確率に基づいて、第１キーワードｔｊが関連キーワード又は混入キーワードであると決定する。例えば、混入決定部１３０は、混入確率に等しい確率で第１キーワードｔｊが混入キーワードであると決定し、関連確率に等しい確率で第１キーワードｔｊが関連キーワードであると決定する。
【００６９】
次にＳ２２０において、割当部１４０は、関連キーワードであると推定された第１キーワードｔｊを、同じ組の（すなわち、同じユーザｄの）第２キーワードが分類されたトピックに優先的に割り当て、混入キーワードであると推定された第１キーワードｔｊをいずれかのトピックに割り当てる。
【００７０】
例えば、割当部１４０は、第２ユーザデータにおける第２キーワードが各トピックに分類される割合に応じて、関連キーワードであると推定された同じ組の第１キーワードｔｊをどのトピックに割り当てるかを決定してよい。
【００７１】
また、例えば、割当部１４０は、混入キーワードであると推定された第１キーワードｔｊを、第２ユーザデータにおける第２キーワードが各トピックに分類される割合に依らずどのトピックに割り当てるかを決定してよい。
【００７２】
一例として、割当部１４０は、記憶部１０２から第２ユーザデータを取得し、数式（１０）及び数式（１１）に基づいて、第１キーワードｔｊに新しく割り当てるトピックｃｊを決定してよい。すなわち、第１キーワードｔｊが関連キーワードである場合、割当部１４０は、数式（１０）の右辺の式に比例する左辺Ｐ（ｃｊ＝ｋ｜ｒｊ＝１，Ｚ，Ｗ，Ｔ，Ｃ＼ｊ，Ｒ＼ｊ；α，β，γ，η）の確率で、第１キーワードｔｊにｋ番目（１≦ｋ≦Ｋ）のトピックを新しい第１トピックｃｊとして割り当てる。
【数１０】
0005975470.tif 000011
Ｍｋ，ｔｊ＼ｊは全ユーザーの中で第１キーワードｔｊと同じ第１キーワード（ただし、ｔｊ自身を除く）にｋ番目のトピックｋが割り当てられた数を表し、Ｍｋ＼ｊは全ユーザーの全ての第１キーワード（ただし、第１キーワードｔｊを除く）の中でｋ番目のトピックｋが割り当てられた数を表し、Ｔは全ユーザの第１キーワードの総異なり数を表す。パラメータγは全第１キーワードに対して予め与えられた共通の値であってよく、これに代えて第１キーワードごとに予め設定された値γｔであってもよい。
【００７３】
第１キーワードｔｊが関連キーワードである場合、数式（１０）のＮｋ，ｄ／Ｎｄの項が示すように、第１キーワードｔｊと組となる第２キーワードに多く割り当てられるトピックは、割当部１４０が新しい第１トピックとして割り当てる確率が大きくなる。従って、第１キーワードｔｊが関連キーワードである場合、新しい第１トピックは、第２キーワードが割り当てられたトピックの数（すなわち、コンテンツ等の第２文書情報の内容）に依存する。
【００７４】
また、第１キーワードｔｊが混入キーワードである場合、割当部１４０は、数式（１１）の右辺の式に比例する左辺Ｐ（ｃｊ＝ｋ｜ｒｊ＝０，Ｚ，Ｗ，Ｔ，Ｃ＼ｊ，Ｒ＼ｊ；α，β，γ，η）の確率で、第１キーワードｔｊにｋ番目（１≦ｋ≦Ｋ）のトピックを新しい第１トピックｃｊとして割り当てる。
【数１１】
0005975470.tif 000012
【００７５】
数式（１１）はＮｋ，ｄ／Ｎｄの項の項を含まない。従って、第１キーワードｔｊが混入キーワードである場合、新しい第１トピックは、第２キーワードが割り当てられたトピックの数（すなわち、コンテンツ等の第２文書情報の内容）に依存せず、第１キーワードｔｊに新しい第１トピックを割り当てる。
【００７６】
ここで、割当部１４０がユーザｄの第１キーワードｔｊに割り当てた第１トピックｃｊは、混入キーワード専用のトピックではないので、関連キーワードである他のユーザの第１キーワードｔｉに当該第１トピックｃｊと同じトピックが第１トピックｃｉとして割り当てられ得る。従って、割当部１４０は、あるユーザにとって混入キーワードであるが、他のユーザにとっては関連キーワードとなり得る第１キーワードに適切にトピックを割り当てることができる。割当部１４０は、第１キーワードに割り当てられたトピックを反映させて、記憶部１０２の第１ユーザデータを更新する。
【００７７】
第１ループ処理内のＳ２３０において、情報処理装置１０は、第１全体データ、第２全体データ、第３全体データ、及び、第３ユーザデータを更新する。
【００７８】
例えば、第１出現度算出部１５０は、全てのユーザの第１文書情報において、各トピックにおける第１キーワードの出現しやすさを算出する。第１出現度算出部１５０は、第１キーワードの出現しやすさをトピックごとに記録した第１全体データΨを記憶部１０２に格納する。
【００７９】
一例として、第１出現度算出部１５０は、全てのユーザの第１文書情報において、ｋ番目のトピックｋ（ｋは１以上Ｋ以下の予め定められた整数）におけるｔ番目の第１キーワードｔ（ｔは１以上の整数）の出現しやすさを示す実数値Ψｋ，ｔを数式（１２）により算出し、ｋ＝１〜Ｋ及びｔ＝１〜ＴのΨｋ，ｔからＴ次元の実数値ベクトルＫ個の集合を第１全体データΨとして生成する。
【数１２】
0005975470.tif 000013
【００８０】
図７に、第１出現度算出部１５０が生成する第１全体データΨの一例を示す。図示するように、第１出現度算出部１５０は、トピックごとに、第１キーワードの生成される確率を表す第１全体データΨを生成してよい。
【００８１】
例えば、第１出現度算出部１５０は、トピック１（例えば、育児に関するトピック）が第１キーワード「教育」を生成する確率が３０％で、トピック１が第２キーワード「育児」を生成する確率が２５％で、トピック１が第１キーワード「保活」を生成する確率が１０％で、トピック１が第１キーワード「子供」を生成する確率が８％であることを示す第１全体データΨを生成してよい。なお、第１全体データΨは、第１キーワードが生成する確率でなくてもよく、他の第１キーワードの生成しやすさを表す指標値であってよい。
【００８２】
図２に戻り、Ｓ２３０において、トピック確率生成部１６０は、全てのユーザの第２文書情報において、各第２トピックにおける第２キーワードの出現しやすさを算出する。トピック確率生成部１６０は、第２キーワードの出現しやすさを第２トピックごとに記録した第２全体データΦを記憶部１０２に格納する。
【００８３】
一例として、トピック確率生成部１６０は、ｋ番目のトピックｋにおけるｗ番目の第２キーワードの出現しやすさを表す実数値φｋ，ｗを数式（１３）により算出し、ｋ＝１〜Ｋ及びｗ＝１〜Ｗのφｋ，ｗからＷ次元の実数値ベクトルＫ個の集合を第２全体データφとして生成する。
【数１３】
0005975470.tif 000014
βは全第２キーワードに対して予め与えられた共通のパラメータであってよく、これに代えて第２キーワードごとに予め設定されたパラメータβｗが用いられてもよい。
【００８４】
図８に、トピック確率生成部１６０が生成する第２全体データφの一例を示す。図示するように、トピック確率生成部１６０は、トピックごとに、第２キーワードの生成される確率を表す第２全体データΦを生成してよい。例えば、トピック確率生成部１６０は、トピック１（例えば、育児に関するトピック）が第２キーワード「育児」を生成する確率が４５％で、トピック１が第２キーワード「教育」を生成する確率が２２％で、トピック１が第２キーワード「保活」を生成する確率が１５％で、トピック１が第２キーワード「子供」を生成する確率が７％であることを示す第２全体データφを生成してよい。なお、第２全体データφは、第２キーワードが生成する確率でなくてもよく、他の第２キーワードの生成しやすさを表す指標値であってよい。
【００８５】
また、図２のＳ２３０において、トピック確率生成部１６０は、各ユーザの第２文書情報における各トピックのそれぞれを生成する確率を生成する。トピック確率生成部１６０は、トピックの生成確率をユーザごとに記録した第３ユーザデータθを記憶部１０２に格納する。
【００８６】
例えば、トピック確率生成部１６０は、ｄ番目のユーザに係る第２文書情報ｄ（ｄは１以上かつ第２文書情報の総数Ｄ以下の整数）におけるｋ番目のトピックｋのそれぞれを生成する確率θｄ，ｋを数式（１４）により算出し、ｋ＝１〜Ｋ及びｄ＝１〜Ｄのθｄ，ｋからＫ次元の実数値ベクトルＤ個の集合を第３ユーザデータθとして生成する。なお、数式（１４）の導出過程は、非特許文献２に記載される。
【数１４】
0005975470.tif 000015
αは全トピックに対して予め与えられた共通のパラメータであってよく、これに代えてトピックごとに予め設定されたパラメータαｋが用いられてもよい。
【００８７】
図９に、トピック確率生成部１６０が生成する第３ユーザデータθの一例を示す。図示するように、トピック確率生成部１６０は、ユーザごとに、第２文書情報における各トピックの生成される確率を表す第３ユーザデータθを生成してよい。例えば、トピック確率生成部１６０は、ユーザＡがトピック１を生成する確率が２０％で、トピック２を生成する確率が４５％で、トピック３を生成する確率が１０％で、トピック４を生成する確率が１８％であることを示す第３ユーザデータθを生成してよい。なお、第３ユーザデータθは、トピックを生成する確率でなくてもよく、他のトピックの生成しやすさを表す指標値であってよい。
【００８８】
更に、図２のＳ２３０において、混入関連割合算出部１７０は、全ユーザの全ての第１キーワードにおける混入キーワードの割合を示す第３全体データλを生成する。例えば、混入関連割合算出部１７０は、第１ユーザデータから、全ユーザの第１キーワードのうち関連キーワードとされている数、及び、全ユーザの第１キーワードのうち混入キーワードとされている第１キーワードの数、及び、全ユーザの第１キーワードの合計のうち混入キーワードの割合を算出した０〜１の範囲の実数値を第３全体データλとする。混入関連割合算出部１７０は、第３全体データλを記憶部１０２に格納する。
【００８９】
Ｓ２４０において、第１生成確率算出部１８０は、第２文書情報において第１キーワードが付与される確率を表す第１キーワード生成確率を算出する。例えば、第１生成確率算出部１８０は、第３ユーザデータθ及び第１全体データΨに基づいて、第１キーワード生成確率を算出する。
【００９０】
一例として、第１生成確率算出部１８０は、ｄ番目のユーザに係る第２文書情報ｄにおいてトピックｋごとのθｄｋΨｋｔを合算することにより、当該第２文書情報ｄにおいてｔ番目の第１キーワードが付与される第１キーワード生成確率Ｐ（ｔ｜ｄ，Ｄ）を数式（１５）に基づいて算出する。
【数１５】
0005975470.tif 000016
【００９１】
すなわち、第１生成確率算出部１８０は、ユーザｄがｋ番目のトピックｋを生成する確率θｄ，ｋ、及び、ｋ番目のトピックｋにおけるｔ番目の第１キーワードの出現しやすさΨｋ，ｔを乗じた値をｋ＝１，...，Ｋについて算出して総和を得ることにより、第１キーワード生成確率Ｐ（ｔ｜ｄ，Ｄ）を生成する。第１生成確率算出部１８０は、第１キーワード生成確率を記憶部１０２に格納する。
【００９２】
図１０は、第１生成確率算出部１８０が生成する第１キーワード生成確率の一例を示す。図示するように、第１生成確率算出部１８０は、ユーザごとの各第１キーワードの生成確率を含む第１キーワード生成確率を生成してよい。例えば、第１生成確率算出部１８０は、ユーザＡの第２文書情報から第１キーワード「教育」が９５％の確率で生成し、第１キーワード「職場」が４％の確率で生成し、ユーザＢの第２文書情報から第１キーワード「スポーツ」が４０％の確率で生成し、第１キーワード「子供」が３０％の確率で生成することを示す第１キーワード生成確率を生成してよい。
【００９３】
このように、本実施形態の情報処理装置１０は、第１キーワード及び第２キーワードにトピックを暫定的に割り当てて初期化した後に、ユーザごとに第１キーワード及び第２キーワードのトピックの割り当てを更新する第２ループ処理を第１ループ処理内で繰り返し実行する。これにより、情報処理装置１０は、第１キーワード及び第２キーワードに対するトピックの割当の精度を向上させることができる。
【００９４】
また、情報処理装置１０は、第１キーワードが混入キーワードである場合に、第１キーワードに混入キーワード専用のトピックを割り当てずに、関連キーワードである第１キーワードに割り当てられ得るトピックを第１キーワードに割り当てる。これにより、情報処理装置１０は、第１キーワードが、あるユーザにとって混入キーワードであり別のユーザにとって関連キーワードである場合にも、第１キーワードに適切なトピックを割り当てることができる。
【００９５】
図１１は、本実施形態に係るトピックモデルの一例を示す。図１１（ａ）は非特許文献２の手法におけるトピックモデルを示し、図１１（ｂ）は本実施形態におけるトピックモデルを示す。
【００９６】
ここで、ｚは第２キーワードを生成するトピックに係る。ｒは第１キーワードが１〜Ｋ番のいずれかのトピックから生成される関連キーワードのときに１となり、ノイズ用の０番のトピックから生成される混入キーワードのときに０となるフラグを示す。ｃはｒが１のときに第１キーワードを生成するトピックに係る１〜Ｋの整数値である。ｗは、ある第２文書情報Ｎから抽出された第２キーワードであり、ｔはある第１文書情報Ｍから抽出される第１キーワードである。
【００９７】
また、θはユーザＤのトピック生成確率（トピック数Ｋ次元の実数値ベクトル）を示し、λは全ての第１キーワードにおける混入キーワードの割合（０〜１の実数値）を示し、φは全ユーザの各トピックが各第２キーワードを生成する確率（全第２キーワードの数Ｗ次元の実数値ベクトル×トピック数Ｋ個）を示し、Ψは全ユーザの各トピックが第１キーワードを生成する確率（全第１キーワードの数Ｔ次元の実数値ベクトル×Ｋ個又はＫ＋１個）を示す。
【００９８】
図１１（ａ）及び（ｂ）に示すように、パラメータαは第３ユーザデータθに影響を与え、パラメータηは第３全体データλに影響を与え、パラメータβは第２全体データΦに影響を与え、パラメータγは第１全体データΨに影響を与える。図示するように第２キーワードｗはトピックｚから生成され、トピックｃはトピックｚから生成さる。
【００９９】
ここで、図１１（ａ）に示す非特許文献２に係るモデルでは、第１キーワードｔはトピックｃ及びフラグｒから生成される。すなわち、第１キーワードｔはフラグｒ（ｒ＝０）から生成される混入キーワード又はフラグｒ（ｒ＝１）及びトピックｃ（ｃ＝１〜Ｋ）から生成される関連キーワードとなる。
【０１００】
一方で、図１１（ｂ）に示すように、本実施形態に係るモデルでは、第１キーワードｔはトピックｃ生成され、トピックｃはフラグｒ及びトピックｚから生成される。すなわち、第１キーワードｔが混入キーワードであるか関連キーワードであるかにかかわらず第１キーワードｔには必ず１〜Ｋのいずれかとなるトピックｃが与えられる。
【０１０１】
ここで、本実施形態の情報処理装置１０は、ソーシャルメディアサービス等のコンテンツからユーザに付与すべきタグ等の第１キーワードを推定するだけなく、ＦＡＱ検索に利用することができる。例えば、情報処理装置１０は、「Ｘ社の端末に機種変更するにはどうしたらよいですか？」等の質問を第２文書情報として取得し、当該第２文書情報に対応する第１キーワードを取得し、第１キーワードを含むＦＡＱ文書を検索することで、質問に対応する回答が記載されるＦＡＱ文書を出力することができる。
【０１０２】
また、例えば、情報処理装置１０は、質問文Ｑを第１文書情報（又は第１キーワード）、回答Ａを第２文書情報（又は第２キーワード）として取得することで、回答Ａから対応する質問文Ｑ（又は質問文Ｑに使用されるキーワード）を推定することができる。
【０１０３】
図１２は、本実施形態の情報処理装置１０の効果を示す。図１２は、予め関連キーワード及び混入キーワードが判明している第１文書情報及び第２文書情報の組を、本実施形態の情報処理装置１０による方法、及び、非特許文献２の方法により処理し、第２文書情報から対応する第１キーワードを推定させた結果を示す。
【０１０４】
グラフの縦軸は、第１キーワードの推定精度を示し、数値が低いほど第１キーワードの推定精度が高いことを表す。グラフの横軸は、処理対象の第１文書情報及び第２文書情報の組における、混入キーワードが含まれる割合を示す。図中の○プロットは情報処理装置１０による方法の結果を示し、△プロットは非特許文献２の方法による結果を示す。
【０１０５】
図１２に示されるように、情報処理装置１０によると全体的に非特許文献２の方法よりも高い第１キーワードの推定精度を示す。すなわち、情報処理装置１０によると第２文書情報と当該第２文書情報に対応する第１キーワードとをより高い精度で学習させることができる。特に、情報処理装置１０によると、混入キーワードの割合が２割から９割の範囲となる場合において顕著に優れた効果を得られた。
【０１０６】
図１３は、情報処理装置１０として機能するコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、及び表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、及びＣＤ−ＲＯＭドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０を有するレガシー入出力部を備える。
【０１０７】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００及びグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０及びＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【０１０８】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０を接続する。通信インターフェイス２０３０は、有線又は無線によりネットワークを介して他の装置と通信する。また、通信インターフェイスは、通信を行うハードウェアとして機能する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ２０６０は、ＣＤ−ＲＯＭ２０９５からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【０１０９】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、及び入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、及び／又は、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラム又はデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続するとともに、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【０１１０】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＣＤ−ＲＯＭ２０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【０１１１】
コンピュータ１９００にインストールされ、コンピュータ１９００を情報処理装置１０として機能させるプログラムは、キーワード取得モジュール、記憶モジュール、分類モジュール、初期化モジュール、推定モジュール、トピック取得モジュール、合致度算出モジュール、混入割合取得モジュール、混入確率算出モジュール、混入決定モジュール、割当モジュール、第１出現度算出モジュール、トピック確率生成モジュール、混入関連割合算出モジュール、第１生成確率算出モジュールを備える。これらのプログラム又はモジュールは、ＣＰＵ２０００等に働きかけて、コンピュータ１９００を、キーワード取得部１００、記憶部１０２、分類部１１２、初期化部１１０、推定部１２０、トピック取得部１２２、合致度算出部１２４、混入割合取得部１２６、混入確率算出部１２８、混入決定部１３０、割当部１４０、第１出現度算出部１５０、トピック確率生成部１６０、混入関連割合算出部１７０、第１生成確率算出部１８０としてそれぞれ機能させてよい。
【０１１２】
これらのプログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段であるキーワード取得部１００、記憶部１０２、分類部１１２、初期化部１１０、推定部１２０、トピック取得部１２２、合致度算出部１２４、混入割合取得部１２６、混入確率算出部１２８、混入決定部１３０、割当部１４０、第１出現度算出部１５０、トピック確率生成部１６０、混入関連割合算出部１７０、第１生成確率算出部１８０として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ１９００の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の情報処理装置１０が構築される。
【０１１３】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、又はＣＤ−ＲＯＭ２０９５等の記憶部１０２として機能してよい記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置又は通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【０１１４】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＣＤ−ＲＯＭドライブ２０６０（ＣＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の記憶部１０２として機能してよい外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０及び外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。
【０１１５】
本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、及び／又は記憶装置に含まれるものとする。
【０１１６】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすか否かを判断し、条件が成立した場合（又は不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【０１１７】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【０１１８】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【０１１９】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【０１２０】
１０  情報処理装置、１００  キーワード取得部、１０２  記憶部、１１０  初期化部、１１２  分類部、１２０  推定部、１２２  トピック取得部、１２４  合致度算出部、１２６  混入割合取得部、１２８  混入確率算出部、１３０  混入決定部、１４０  割当部、１５０  第１出現度算出部、１６０  トピック確率生成部、１７０  混入関連割合算出部、１８０  第１生成確率算出部、１９００  コンピュータ、２０００  ＣＰＵ、２０１０  ＲＯＭ、２０２０  ＲＡＭ、２０３０  通信インターフェイス、２０４０  ハードディスクドライブ、２０５０  フレキシブルディスク・ドライブ、２０６０  ＣＤ−ＲＯＭドライブ、２０７０  入出力チップ、２０７５  グラフィック・コントローラ、２０８０  表示装置、２０８２  ホスト・コントローラ、２０８４  入出力コントローラ、２０９０  フレキシブルディスク、２０９５  ＣＤ−ＲＯＭ
【図１】
0005975470.tif 000017
【図２】
0005975470.tif 000018
【図３】
0005975470.tif 000019
【図４】
0005975470.tif 000020
【図５】
0005975470.tif 000021
【図６】
0005975470.tif 000022
【図７】
0005975470.tif 000023
【図８】
0005975470.tif 000024
【図９】
0005975470.tif 000025
【図１０】
0005975470.tif 000026
【図１１】
0005975470.tif 000027
【図１２】
0005975470.tif 000028
【図１３】
0005975470.tif 000029