(57)【要約】【課題】人気度が高いユーザによって付与されたタグと、その付与頻度を考慮して新たなコンテンツに付与するタグを推薦するタグ推薦装置、タグ推薦方法及びタグ推薦プログラムを提供する。【解決手段】タグ推薦装置１０は、複数のユーザと複数のタグとの共起関係を、複数のユーザの人気度に応じて重み付けした第１数値と、複数のユーザと複数のタグとの共起関係を、複数のユーザが複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第２数値とに基づいて、複数のタグ間の共起関係を表す第３数値を算出する第１算出部１４と、第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、複数のタグの優先度を算出する第２算出部１５と、優先度に基づいて、複数のタグの中から、新たなコンテンツに付与する１又は複数のタグを推薦する推薦部１６と、を備える。【選択図】図１
2020149410.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザと複数のタグとの共起関係を、前記複数のユーザの人気度に応じて重み付けした第１数値と、前記複数のユーザと前記複数のタグとの共起関係を、前記複数のユーザが前記複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第２数値とに基づいて、前記複数のタグ間の共起関係を表す第３数値を算出する第１算出部と、
前記第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、前記複数のタグの優先度を算出する第２算出部と、
前記優先度に基づいて、前記複数のタグの中から、前記新たなコンテンツに付与する１又は複数のタグを推薦する推薦部と、
を備えるタグ推薦装置。
【請求項２】
前記第１算出部は、前記複数のコンテンツと前記複数のタグとの共起関係を、前記複数のコンテンツの人気度に応じて重み付けした第４数値と、前記複数のコンテンツと前記複数のタグとの共起関係を、前記複数のタグが前記複数のコンテンツに付与された頻度に応じて重み付けした第５数値と、に基づいて、前記複数のタグ間の共起関係を表す第６数値を算出し、
前記第２算出部は、前記第３数値、前記第６数値及び前記新たなコンテンツに付与された１又は複数のタグに基づいて、前記優先度を算出する、
請求項１に記載のタグ推薦装置。
【請求項３】
前記第３数値及び前記第６数値は、前記複数のタグの数の次元を有する正方行列であり、
前記第２算出部は、前記第３数値及び前記第６数値の要素積並びに前記新たなコンテンツに付与された１又は複数のタグに基づいて、前記優先度を算出する、
請求項２に記載のタグ推薦装置。
【請求項４】
前記第３数値及び前記第６数値は、前記複数のタグの数の次元を有する正方行列であり、
前記第２算出部は、前記第３数値及び前記第６数値の和並びに前記新たなコンテンツに付与された１又は複数のタグに基づいて、前記優先度を算出する、
請求項２に記載のタグ推薦装置。
【請求項５】
前記第１算出部は、前記複数のタグのうち、前記複数のユーザが所定の期間中に前記複数のコンテンツに付与した複数のタグに基づいて、前記第３数値を算出する、
請求項１から４のいずれか一項に記載のタグ推薦装置。
【請求項６】
前記第１算出部は、前記複数のユーザのうち、所定の地域に属する複数のユーザに基づいて、前記第３数値を算出する、
請求項１から５のいずれか一項に記載のタグ推薦装置。
【請求項７】
前記第１算出部は、前記複数のユーザのうち、所定の年代に属する複数のユーザに基づいて、前記第３数値を算出する、
請求項１から６のいずれか一項に記載のタグ推薦装置。
【請求項８】
前記第１算出部は、前記複数のユーザのうち、所定の性別に属する複数のユーザに基づいて、前記第３数値を算出する、
請求項１から７のいずれか一項に記載のタグ推薦装置。
【請求項９】
前記複数のユーザの人気度は、前記複数のユーザのＳＮＳにおけるフォロワーの数、前記複数のユーザにより投稿された前記複数のコンテンツが評価された数及び前記複数のユーザにより投稿された前記複数のコンテンツが閲覧された数の少なくともいずれかに基づいて算出される、
請求項１から８のいずれか一項に記載のタグ推薦装置。
【請求項１０】
タグ推薦装置に、
複数のユーザと複数のタグとの共起関係を、前記複数のユーザが前記複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第１数値と、前記複数のユーザと前記複数のタグとの共起関係を、前記複数のユーザの人気度に応じて重み付けした第２数値とに基づいて、前記複数のタグ間の共起関係を表す第３数値を算出することと、
前記第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、前記複数のタグの優先度を算出することと、
前記優先度に基づいて、前記複数のタグの中から、前記新たなコンテンツに付与する１又は複数のタグを推薦することと、
を実行させるタグ推薦方法。
【請求項１１】
タグ推薦装置に、
複数のユーザと複数のタグとの共起関係を、前記複数のユーザが前記複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第１数値と、前記複数のユーザと前記複数のタグとの共起関係を、前記複数のユーザの人気度に応じて重み付けした第２数値とに基づいて、前記複数のタグ間の共起関係を表す第３数値を算出することと、
前記第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、前記複数のタグの優先度を算出することと、
前記優先度に基づいて、前記複数のタグの中から、前記新たなコンテンツに付与する１又は複数のタグを推薦することと、
を実行させるタグ推薦プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タグ推薦装置、タグ推薦方法及びタグ推薦プログラムに関する。
【背景技術】
【０００２】
従来、タグは、画像や動画をコンテンツとするＳＮＳ（Social Networking Service）や、商品をコンテンツとする電子商取引サイトが広く用いられている。ＳＮＳや電子商取引サイトのユーザは、コンテンツに付与されたタグを用いて、コンテンツをテキスト検索する場合がある。ここで、コンテンツへのタグの付与は、コンテンツを投稿したユーザによって行われている。
【０００３】
タグの付与について、例えば、下記非特許文献１には、ユーザ、コンテンツ及びタグをノードとし、ノードの共起関係をリンクとする無向グラフを用いて、コンテンツに付与するタグを推薦する技術が記載されている。
【０００４】
また、下記非特許文献２には、ＳＮＳにおけるコンテンツの人気度とタグの共起関係に基づいて、投稿するコンテンツの人気度が高まるようにタグを推薦する技術が記載されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Andreas Hotho, Robert Jaschke, Christoph Schmitz, Gerd Stumme, "FolkRank: A Ranking Algorithm for Folksonomies", Lwa, Vol. 1, pp. 111-114 (2006)
【非特許文献２】T. Yamasaki, J. Hu, S. Sano, and K. Aizawa, "Folkpopularityrank: Tag recommendation for enhancing social popularity using text tags in content sharing services," Proceedings of the 26th International Joint Conference on Artificial Intelligence, pp.3231-3237, 2017
【発明の概要】
【発明が解決しようとする課題】
【０００６】
先行技術によって、人気のあるコンテンツに付与されたタグと、そのタグと共起するタグを重要視して、新たなコンテンツに付与するタグを推薦することができる。一方、ＳＮＳや電子商取引サイト等のコミュニティでは、人気度の高いユーザが大きな影響力を有しており、人気度が高いユーザが付与しているタグを新しいコンテンツに付与することで、そのコンテンツの人気度が向上することがある。しかしながら、人気度が高いユーザによってどのようなタグが付与されているか網羅的に把握することは難しく、頻繁に付与されているタグと稀にしか付与されていないタグとのバランスを取ることも難しい。
【０００７】
そこで、本発明は、人気度が高いユーザによって付与されたタグと、その付与頻度を考慮して新たなコンテンツに付与するタグを推薦するタグ推薦装置、タグ推薦方法及びタグ推薦プログラムを提供する。
【課題を解決するための手段】
【０００８】
本発明の一態様に係るタグ推薦装置は、複数のユーザと複数のタグとの共起関係を、複数のユーザの人気度に応じて重み付けした第１数値と、複数のユーザと複数のタグとの共起関係を、複数のユーザが複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第２数値とに基づいて、複数のタグ間の共起関係を表す第３数値を算出する第１算出部と、第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、複数のタグの優先度を算出する第２算出部と、優先度に基づいて、複数のタグの中から、新たなコンテンツに付与する１又は複数のタグを推薦する推薦部と、を備える。
【０００９】
この態様によれば、複数のタグ間の共起関係を表す第３数値を、ユーザがタグを付与した頻度と、ユーザの人気度とを用いて算出し、第３数値と、新たなコンテンツに予め付与された１又は複数のタグとに基づいて複数のタグの優先度を算出することで、人気度が高いユーザによって付与されたタグと、その付与頻度を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００１０】
上記態様において、第１算出部は、複数のコンテンツと複数のタグとの共起関係を、複数のコンテンツの人気度に応じて重み付けした第４数値と、複数のコンテンツと複数のタグとの共起関係を、複数のタグが複数のコンテンツに付与された頻度に応じて重み付けした第５数値と、に基づいて、複数のタグ間の共起関係を表す第６数値を算出し、第２算出部は、第３数値、第６数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、優先度を算出してもよい。
【００１１】
この態様によれば、複数のタグ間の共起関係を表す第６数値を、タグがコンテンツに付与された頻度と、コンテンツの人気度とを用いて算出し、第６数値と、新たなコンテンツに予め付与された１又は複数のタグとに基づいて複数のタグの優先度を算出することで、コンテンツの人気度を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００１２】
上記態様において、第３数値及び第６数値は、複数のタグの数の次元を有する正方行列であり、第２算出部は、第３数値及び第６数値の要素積並びに新たなコンテンツに付与された１又は複数のタグに基づいて、優先度を算出してもよい。
【００１３】
この態様によれば、ユーザの人気度及びコンテンツの人気度両方を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００１４】
上記態様において、第３数値及び第６数値は、複数のタグの数の次元を有する正方行列であり、第２算出部は、第３数値及び第６数値の和並びに新たなコンテンツに付与された１又は複数のタグに基づいて、優先度を算出してもよい。
【００１５】
この態様によれば、ユーザの人気度及びコンテンツの人気度両方を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００１６】
上記態様において、第１算出部は、複数のタグのうち、複数のユーザが所定の期間中に複数のコンテンツに付与した複数のタグに基づいて、第３数値を算出してもよい。
【００１７】
この態様によれば、所定の期間におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。
【００１８】
上記態様において、第１算出部は、複数のユーザのうち、所定の地域に属する複数のユーザに基づいて、第３数値を算出してもよい。
【００１９】
この態様によれば、所定の地域におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。
【００２０】
上記態様において、第１算出部は、複数のユーザのうち、所定の年代に属する複数のユーザに基づいて、第３数値を算出してもよい。
【００２１】
この態様によれば、所定の年代におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。
【００２２】
上記態様において、第１算出部は、複数のユーザのうち、所定の性別に属する複数のユーザに基づいて、第３数値を算出してもよい。
【００２３】
この態様によれば、所定の性別におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。
【００２４】
上記態様において、複数のユーザの人気度は、複数のユーザのＳＮＳにおけるフォロワーの数、複数のユーザにより投稿された複数のコンテンツが評価された数及び複数のユーザにより投稿された複数のコンテンツが閲覧された数の少なくともいずれかに基づいて算出されてもよい。
【００２５】
この態様によれば、目的に応じて適切な人気度を算出し、より魅力的なタグを推薦することができる。
【００２６】
本発明の他の態様に係るタグ推薦方法は、タグ推薦装置に、複数のユーザと複数のタグとの共起関係を、複数のユーザが複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第１数値と、複数のユーザと複数のタグとの共起関係を、複数のユーザの人気度に応じて重み付けした第２数値とに基づいて、複数のタグ間の共起関係を表す第３数値を算出することと、第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、複数のタグの優先度を算出することと、優先度に基づいて、複数のタグの中から、新たなコンテンツに付与する１又は複数のタグを推薦することと、を実行させる。
【００２７】
この態様によれば、複数のタグ間の共起関係を表す第３数値を、ユーザがタグを付与した頻度と、ユーザの人気度とを用いて算出し、第３数値と、新たなコンテンツに予め付与された１又は複数のタグとに基づいて複数のタグの優先度を算出することで、ユーザの人気度を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００２８】
本発明の他の態様に係るタグ推薦プログラムは、タグ推薦装置に、複数のユーザと複数のタグとの共起関係を、複数のユーザが複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第１数値と、複数のユーザと複数のタグとの共起関係を、複数のユーザの人気度に応じて重み付けした第２数値とに基づいて、複数のタグ間の共起関係を表す第３数値を算出することと、第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、複数のタグの優先度を算出することと、優先度に基づいて、複数のタグの中から、新たなコンテンツに付与する１又は複数のタグを推薦することと、を実行させる。
【００２９】
この態様によれば、複数のタグ間の共起関係を表す第３数値を、ユーザがタグを付与した頻度と、ユーザの人気度とを用いて算出し、第３数値と、新たなコンテンツに予め付与された１又は複数のタグとに基づいて複数のタグの優先度を算出することで、ユーザの人気度を考慮して新たなコンテンツに付与するタグを推薦することができる。
【発明の効果】
【００３０】
本発明によれば、人気度が高いユーザによって付与されたタグと、その付与頻度を考慮して新たなコンテンツに付与するタグを推薦するタグ推薦装置、タグ推薦方法及びタグ推薦プログラムを提供することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施形態に係るタグ推薦システムのネットワーク構成を示す図である。
【図２】本実施形態に係るタグ推薦装置の機能ブロックを示す図である。
【図３】本実施形態に係るタグ推薦装置の物理的構成を示す図である。
【図４】本実施形態に係るタグ推薦装置により算出される第１数値の一例を示す図である。
【図５】本実施形態に係るタグ推薦装置により算出される第２数値の一例を示す図である。
【図６】本実施形態に係るタグ推薦装置により実行されるタグ推薦処理の第１例のフローチャートである。
【図７】本実施形態に係るタグ推薦装置により算出される第４数値の一例を示す図である。
【図８】本実施形態に係るタグ推薦装置により算出される第５数値の一例を示す図である。
【図９】本実施形態に係るタグ推薦装置により実行されるタグ推薦処理の第２例のフローチャートである。
【図１０】本実施形態に係るタグ推薦装置により実行されるタグ推薦処理の第３例のフローチャートである。
【図１１】本実施形態に係るタグ推薦装置により推薦されたタグをコンテンツに付与した場合の実験結果を示す図である。
【発明を実施するための形態】
【００３２】
添付図面を参照して、本発明の実施形態について説明する。なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。
【００３３】
図１は、本発明の実施形態に係るタグ推薦システム１００のネットワーク構成を示す図である。タグ推薦システム１００は、タグ推薦装置１０、第１ユーザ端末２０、第２ユーザ端末３０及び第Ｎユーザ端末４０を含む。ここで、第１ユーザ端末２０、第２ユーザ端末３０及び第Ｎユーザ端末４０は、第１ユーザが用いるユーザ端末、第２ユーザが用いるユーザ及び第Ｎユーザが用いるユーザ端末を表している。以下では、第１ユーザ端末２０、第２ユーザ端末３０及び第Ｎユーザ端末４０を単にユーザ端末ともいう。
【００３４】
タグ推薦装置１０は、ユーザ端末から投稿するコンテンツを受け付けて、そのコンテンツに付与するタグを推薦する。コンテンツは、ＳＮＳに掲載する画像、動画、テキスト及びそれらの組み合わせであったり、電子商取引サイトに掲載する商品の画像、商品の動画、商品を説明するテキスト及びそれらの組み合わせであったりしてよい。以下では、ＳＮＳに画像を投稿する場合を例に説明する。
【００３５】
ユーザ端末は、汎用のコンピュータであり、例えば、スマートフォン、タブレットＰＣ（Personal Computer）又はデスクトップＰＣであってよい。複数のユーザ端末は、通信ネットワークＮを介してタグ推薦装置１０と通信可能に接続され、タグ推薦装置１０より、新たに投稿するコンテンツに付与するタグの推薦を受ける。ここで、通信ネットワークＮは、有線又は無線の通信網であり、インターネットやＬＡＮ（Local Area Network）であってよい。
【００３６】
図２は、本実施形態に係るタグ推薦装置１０の機能ブロックを示す図である。タグ推薦装置１０は、取得部１１、生成部１２、記憶部１３、第１算出部１４、第２算出部１５及び推薦部１６を備える。
【００３７】
取得部１１は、ユーザ端末から、新たに投稿するコンテンツを取得する。取得部１１は、特定のＳＮＳや電子商取引サイトと連携して、ユーザ端末からＳＮＳや電子商取引サイトにコンテンツの投稿が行われる場合に、投稿しようとしているコンテンツを取得してよい。
【００３８】
生成部１２は、新たなコンテンツを解析し、コンテンツの内容を説明するタグを生成する。ここで、コンテンツの内容を説明するタグは、複数のタグの候補の中から選択されてよい。例えば、コンテンツが画像である場合、生成部１２は、公知の画像認識技術を用いて、画像に写されている物の名前や画像に写されている状況を説明するタグを生成してよい。また、生成部１２は、コンテンツを、予め定められた複数のカテゴリの少なくともいずれかに分類し、コンテンツが属するカテゴリに応じて、タグを生成してもよい。生成部１２は、１つのコンテンツに対して、コンテンツの内容を説明する複数のタグを生成してよく、例えば、１０個のタグを生成してよい。
【００３９】
記憶部１３は、タグ情報１３ａ、ユーザ情報１３ｂ及びコンテンツ情報１３ｃを記憶している。タグ情報１３ａは、これまでにコンテンツに付与されたタグの履歴情報を含み、どのタグがどのコンテンツに、いつ、どの地域で、どの年代のユーザによって付与されているかを示す情報を含んでよい。また、ユーザ情報１３ｂは、コンテンツを投稿したユーザの人気度を含み、ユーザの居住する地域や年代といったプロフィール情報を含んでもよい。
【００４０】
ここで、ユーザの人気度は、ユーザのＳＮＳにおけるフォロワーの数、ユーザにより投稿された複数のコンテンツが評価された数及びユーザにより投稿された複数のコンテンツが閲覧された数の少なくともいずれかに基づいて算出されてよい。タグ推薦を受けるユーザは、どのような指標を用いてユーザの人気度を算出するか選択できてもよい。例えば、より閲覧数が増えるようにタグを付与したい場合、ユーザの人気度をユーザにより投稿された複数のコンテンツが閲覧された数に基づいて算出することとしてよい。このように、目的に応じて適切な人気度を算出し、より魅力的なタグを推薦することができる。
【００４１】
コンテンツ情報１３ｃは、投稿されたコンテンツの人気度を含み、いずれのユーザによって投稿されたコンテンツであるか示す情報を含んでもよい。コンテンツの人気度は、投稿された複数のコンテンツが評価された数及び投稿された複数のコンテンツが閲覧された数の少なくともいずれかに基づいて算出されてよい。
【００４２】
第１算出部１４は、複数のユーザと複数のタグとの共起関係を、複数のユーザの人気度に応じて重み付けした第１数値と、複数のユーザと複数のタグとの共起関係を、複数のユーザが複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第２数値とに基づいて、複数のタグ間の共起関係を表す第３数値を算出する。第１数値及び第２数値の具体例は、図４及び５を用いて詳細に説明する。
【００４３】
第２算出部１５は、第３数値及び新たなコンテンツに付与された１又は複数のタグに基づいて、複数のタグの優先度を算出する。ここで、新たなコンテンツに付与された１又は複数のタグは、生成部１２によって生成されたタグであってよい。タグの優先度については、後に図６を用いて詳細に説明する。
【００４４】
推薦部１６は、第２算出部１５により算出された優先度に基づいて、複数のタグの中から、新たなコンテンツに付与する１又は複数のタグを推薦する。推薦部１６は、推薦する１又は複数のタグを特定する情報を、ユーザ端末に送信してよい。ユーザ端末は、推薦された１又は複数のタグ全てを新たなコンテンツに付与してもよいし、推薦された１又は複数のタグのうち、新たなコンテンツに付与するタグの選択をユーザから受け付けて、選択されたタグを新たなコンテンツに付与してもよい。
【００４５】
図３は、本実施形態に係るタグ推薦装置１０の物理的構成を示す図である。タグ推薦装置１０は、演算部に相当するＣＰＵ（Central Processing Unit）１０ａと、記憶部に相当するＲＡＭ（Random Access Memory）１０ｂと、記憶部に相当するＲＯＭ（Read only Memory）１０ｃと、通信部１０ｄと、入力部１０ｅと、表示部１０ｆと、を有する。これらの各構成は、バスを介して相互にデータ送受信可能に接続される。なお、本例ではタグ推薦装置１０が一台のコンピュータで構成される場合について説明するが、タグ推薦装置１０は、複数のコンピュータが組み合わされて実現されてもよい。また、図３で示す構成は一例であり、タグ推薦装置１０はこれら以外の構成を有してもよいし、これらの構成のうち一部を有さなくてもよい。
【００４６】
ＣＰＵ１０ａは、ＲＡＭ１０ｂ又はＲＯＭ１０ｃに記憶されたプログラムの実行に関する制御やデータの演算、加工を行う制御部である。ＣＰＵ１０ａは、新たなコンテンツに付与するタグを推薦するプログラム（タグ推薦プログラム）を実行する演算部である。ＣＰＵ１０ａは、入力部１０ｅや通信部１０ｄから種々のデータを受け取り、データの演算結果を表示部１０ｆに表示したり、ＲＡＭ１０ｂやＲＯＭ１０ｃに格納したりする。
【００４７】
ＲＡＭ１０ｂは、記憶部のうちデータの書き換えが可能なものであり、例えば半導体記憶素子で構成されてよい。ＲＡＭ１０ｂは、ＣＰＵ１０ａが実行するプログラム、ユーザの人気度、タグの付与頻度及びコンテンツの人気度といったデータを記憶してよい。なお、これらは例示であって、ＲＡＭ１０ｂには、これら以外のデータが記憶されていてもよいし、これらの一部が記憶されていなくてもよい。
【００４８】
ＲＯＭ１０ｃは、記憶部のうちデータの読み出しが可能なものであり、例えば半導体記憶素子で構成されてよい。ＲＯＭ１０ｃは、例えばタグ推薦プログラムや、書き換えが行われないデータを記憶してよい。
【００４９】
通信部１０ｄは、タグ推薦装置１０を他の機器に接続するインターフェースである。通信部１０ｄは、インターネット等の通信ネットワークＮに接続されてよい。
【００５０】
入力部１０ｅは、ユーザからデータの入力を受け付けるものであり、例えば、キーボード及びタッチパネルを含んでよい。
【００５１】
表示部１０ｆは、ＣＰＵ１０ａによる演算結果を視覚的に表示するものであり、例えば、ＬＣＤ（Liquid Crystal Display）により構成されてよい。表示部１０ｆは、タグの優先度や推薦するタグを表示してよい。
【００５２】
タグ推薦プログラムは、ＲＡＭ１０ｂやＲＯＭ１０ｃ等のコンピュータによって読み取り可能な記憶媒体に記憶されて提供されてもよいし、通信部１０ｄにより接続される通信ネットワークを介して提供されてもよい。タグ推薦装置１０では、ＣＰＵ１０ａがタグ推薦プログラムを実行することにより、図２を用いて説明した様々な動作が実現される。なお、これらの物理的な構成は例示であって、必ずしも独立した構成でなくてもよい。例えば、タグ推薦装置１０は、ＣＰＵ１０ａとＲＡＭ１０ｂやＲＯＭ１０ｃが一体化したＬＳＩ（Large-Scale Integration）を備えていてもよい。
【００５３】
図４は、本実施形態に係るタグ推薦装置１０により算出される第１数値Ｕｐの一例を示す図である。第１数値Ｕｐは、コンテンツへの付与候補となる複数のタグの数の行と、複数のユーザの数の列を有する行列である。本例では、複数のタグの数が３であり、複数のユーザの数が３である場合について説明する。第１数値Ｕｐは、本発明の第１数値に相当し、複数のユーザと複数のタグとの共起関係を、複数のユーザの人気度に応じて重み付けした第１数値の一例である。
【００５４】
第１数値Ｕｐは、複数のユーザの数の次元を有する行ベクトルを、複数のタグの数だけ含む。以下では、第１数値Ｕｐに含まれる複数の行ベクトルを第ｉ行ベクトルと呼ぶ。ここで、ｉは、１からＭの値をとり、Ｍは複数のタグの数である。本例の場合、３次元の第１行ベクトルは、「ａ」という第１タグＴ１に対応し、第２行ベクトルは、「ｂ」という第２タグＴ２に対応し、第３行ベクトルは、「ｃ」という第３タグＴ３に対応する。また、本例において、第１ユーザの人気度は「１００」であり、第２ユーザの人気度は「２００」であり、第３ユーザの人気度は「３００」である。第１行ベクトルは、第１要素が１００／６００であり、第２要素が２００／６００であり、第３要素が３００／６００である。また、第２行ベクトルは、第１要素が１００／４００であり、第２要素が０であり、第３要素が３００／４００である。また、第３行ベクトルは、第１要素が１００／３００であり、第２要素が２００／３００であり、第３要素が０である。各行ベクトルは、Ｌ１ノルムが１となるように規格化されている。
【００５５】
第ｉ行ベクトルの値は、第ｊユーザ（ｊ＝１〜Ｎ、Ｎは複数のユーザの数）が第ｉタグをコンテンツに付与している場合にゼロでない値となり、第ｊユーザが第ｉタグをコンテンツに付与していない場合にゼロとなる。そして、第ｉ行ベクトルのゼロでない値は、第ｊユーザの人気度に比例するように定められる。本例の場合、第ｉ行ベクトルのゼロでない値は、第ｊユーザの人気度に比例し、かつ、第ｉ行ベクトルのＬ１ノルムが１となるよるように定められている。
【００５６】
本例の場合、第１タグＴ１は、第１ユーザ、第２ユーザ及び第３ユーザ全てによって何らかのコンテンツに付与された履歴があるため、第１行ベクトルの全ての要素がゼロでない値となっている。一方、第２タグＴ２は、第１ユーザ及び第３ユーザによって付与された履歴があるが、第２ユーザによっては付与されていないため、第２行ベクトルの第２要素はゼロとなっている。同様に、第３タグＴ３は、第１ユーザ及び第２ユーザによって付与された履歴があるが、第３ユーザによっては付与されていないため、第３行ベクトルの第３要素はゼロとなっている。
【００５７】
図５は、本実施形態に係るタグ推薦装置１０により算出される第２数値Ｕｔの一例を示す図である。第２数値Ｕｔは、コンテンツへの付与候補となる複数のタグの数の行と、複数のユーザの数の列を有する行列である。本例では、複数のタグの数が３であり、複数のユーザの数が３である場合について説明する。第２数値Ｕｔは、本発明の第２数値に相当し、複数のユーザと複数のタグとの共起関係を、複数のユーザが複数のタグを複数のコンテンツに付与した頻度に応じて重み付けした第２数値の一例である。
【００５８】
第２数値Ｕｔは、複数のタグの数の次元を有する列ベクトルを、複数のユーザの数だけ含む。以下では、第２数値Ｕｔに含まれる複数の列ベクトルを第ｋ列ベクトルと呼ぶ。ここで、ｋは、１からＮの値をとり、Ｎは複数のユーザの数である。本例の場合、３次元の第１列ベクトルは第１ユーザに対応し、第２列ベクトルは第２ユーザに対応し、第３行ベクトルは第３ユーザに対応する。例えば、第１列ベクトルは、第１要素が２／６であり、第２要素が１／６であり、第３要素が３／６である。また、第２列ベクトルは、第１要素が２／３であり、第２要素が０であり、第３要素が１／３である。また、第３行ベクトルは、第１要素が３／６であり、第２要素が３／６であり、第３要素が０である。各列ベクトルは、Ｌ１ノルムが１となるように規格化されている。
【００５９】
第ｋ列ベクトルの値は、第ｋユーザが第ｉタグをコンテンツに付与している場合にゼロでない値となり、第ｋユーザが第ｉタグをコンテンツに付与していない場合にゼロとなる。そして、第ｋ列ベクトルのゼロでない値は、第ｋユーザが第ｉタグを付与した回数に比例するように定められる。本例の場合、第ｋ列ベクトルのゼロでない値は、第ｋユーザが第ｉタグを付与した回数に比例し、かつ、第ｋ列ベクトルのＬ１ノルムが１となるように定められている。
【００６０】
本例の場合、第１ユーザは、第１タグを２回、第２タグを１回、第３タグを３回付与した履歴があるため、第１列ベクトルの全ての要素がゼロでない値となっている。一方、第２ユーザは、第１タグを２回、第２タグを０回、第３タグを１回付与した履歴があるため、第２列ベクトルの第２要素はゼロとなっている。同様に、第３ユーザは、第１タグを３回、第２タグを３回、第３タグを０回付与した履歴があるため、第３列ベクトルの第３要素はゼロとなっている。
【００６１】
図６は、本実施形態に係るタグ推薦装置１０により実行されるタグ推薦処理の第１例のフローチャートである。はじめに、タグ推薦装置１０は、ユーザが投稿するコンテンツを取得する（Ｓ１０）。そして、タグ推薦装置１０は、生成部１２によってコンテンツを説明するタグを生成し、優先ベクトルｐ1を決定する（Ｓ１１）。
【００６２】
優先ベクトルｐ1は、コンテンツに付与される候補となる複数のタグの数の次元を有するＭ次元ベクトルであり（Ｍは複数のタグの数）、生成部１２によって生成されたコンテンツを説明するタグに対応する要素がゼロでない値（例えば１）をとり、それ以外の要素についてゼロの値をとるベクトルであってよい。また、優先ベクトルｐ1は、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されていてよい。例えば、生成部１２によって生成されたコンテンツを説明するタグが、第１タグ及び第２タグである場合、優先ベクトルｐ1は、第１タグに対応する要素が１、第２タグに対応する要素が１であり、それ以外の要素がゼロであるベクトルであってよい。
【００６３】
その後、タグ推薦装置１０は、第１数値及び第２数値である行列Ｕｐ及びＵｔを算出し、第３数値ＡUP＝Ｕｐ×ＵｔTを算出する（Ｓ１２）。ここで、「Ｔ」は行列の転置を表す。第３数値ＡUPは、複数のタグの数の次元を有する正方行列である。第３数値ＡUPは、本発明の第３数値に相当し、複数のタグ間の共起関係を表す。
【００６４】
さらに、タグ推薦装置１０は、複数のタグの優先度ｒ1を、ｒ1＝αＡUPｒ1＋（１−α）ｐ1により算出する（Ｓ１３）。ここで、優先度ｒ1の算出式は再帰的に定義されている。また、αは、０から１の間の値である。ｒ1は、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されてよい。なお、ｒ1の初期値は、ｐ1であってよい。
【００６５】
また、タグ推薦装置１０は、基準優先度ｒ0を、ｒ0＝αＡUPｒ0＋（１−α）ｐ0により算出する（Ｓ１４）。ここで、ｐ0は、複数のタグの数の次元を有するＭ次元ベクトルであり（Ｍは複数のタグの数）、全ての要素が等しい値であり、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されているベクトルであってよい。すなわち、ｐ0は、全ての要素がｍ／Ｍであるベクトルであってよい。ｒ0は、Ｌ１ノルムがｍに規格化されてよい。なお、ｒ0の初期値は、ｐ0であってよい。
【００６６】
タグ推薦装置１０は、優先度ｒ1及び基準優先度ｒ0が収束したか判定する（Ｓ１５）。収束したか否かは、処理Ｓ１３及びＳ１４における更新で、優先度ｒ1及び基準優先度ｒ0が所定量以下しか変化しないか否か、又は予め指定した繰り返し演算回数を上回ったかによって判定してよい。処理Ｓ１３及びＳ１４における更新で、優先度ｒ1又は基準優先度ｒ0が所定量より大きく変化し、予め指定した繰り返し演算回数を上回っていない場合、すなわち優先度ｒ1及び基準優先度ｒ0が収束していない場合（Ｓ１５：ＮＯ）、タグ推薦装置１０は、処理Ｓ１３及びＳ１４を再び実行する。
【００６７】
一方、処理Ｓ１３及びＳ１４における更新で、優先度ｒ1又は基準優先度ｒ0が所定量以下しか変化しない場合、又は予め指定した繰り返し演算回数を上回った場合、すなわち優先度ｒ1及び基準優先度ｒ0が収束した場合（Ｓ１５：ＹＥＳ）、タグ推薦装置１０は、ｒ1−ｒ0の値により推薦する１又は複数のタグを決定する（Ｓ１６）。ｒ1−ｒ0は、複数のタグの数の次元を有するベクトルであり、各要素は複数のタグに対応する。タグ推薦装置１０は、ｒ1−ｒ0の要素の大きさが上位所定順位以内である１又は複数のタグを推薦してよい。以上により推薦処理の第１例が終了する。
【００６８】
このように、複数のタグ間の共起関係を表す第３数値ＡUPを、ユーザがタグを付与した頻度と、ユーザの人気度とを用いて算出し、第３数値と、新たなコンテンツに予め付与された１又は複数のタグとに基づいて複数のタグの優先度ｒ1を算出することで、人気度が高いユーザによって付与されたタグと、その付与頻度を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００６９】
図７は、本実施形態に係るタグ推薦装置１０により算出される第４数値Ｂｗの一例を示す図である。第４数値Ｂｗは、コンテンツへの付与候補となる複数のタグの数の行と、複数のコンテンツの数の列を有する行列である。本例では、複数のタグの数が３であり、複数のコンテンツの数が３である場合について説明する。第４数値Ｂｗは、本発明の第４数値に相当し、複数のコンテンツと複数のタグとの共起関係を、複数のコンテンツの人気度に応じて重み付けした第５数値の一例である。
【００７０】
第４数値Ｂｗは、複数のコンテンツの数の次元を有する行ベクトルを、複数のタグの数だけ含む。以下では、第４数値Ｂｗに含まれる複数の行ベクトルを第ｉ行ベクトルと呼ぶ。ここで、ｉは、１からＭの値をとり、Ｍは複数のタグの数である。本例の場合、３次元の第１行ベクトルは、「ａ」という第１タグＴ１に対応し、第２行ベクトルは、「ｂ」という第２タグＴ２に対応し、第３行ベクトルは、「ｃ」という第３タグＴ３に対応する。また、本例において、第１コンテンツの人気度は「４０」であり、第２コンテンツの人気度は「７」であり、第１コンテンツの人気度は「４」である。そして、第１行ベクトルは、第１要素が４０／５０であり、第２要素が７／５０であり、第３要素が３／５０である。また、第２行ベクトルは、第１要素が４０／４７であり、第２要素が７／４７であり、第３要素が０である。また、第３行ベクトルは、第１要素が０であり、第２要素が７／１０であり、第３要素が３／１０である。各行ベクトルは、Ｌ１ノルムが１となるように規格化されている。
【００７１】
第ｉ行ベクトルの値は、第ｍコンテンツ（ｍ＝１〜Ｃ、Ｃは複数のコンテンツの数）に第ｉタグが付与されている場合にゼロでない値となり、第ｍコンテンツに第ｉタグが付与されていない場合にゼロとなる。そして、第ｉ行ベクトルのゼロでない値は、第ｍコンテンツの人気度に比例するように定められる。本例の場合、第ｉ行ベクトルのゼロでない値は、第ｍコンテンツの人気度に比例し、かつ、第ｉ行ベクトルのＬ１ノルムが１となるよるように定められている。
【００７２】
本例の場合、第１タグＴ１は、第１コンテンツ、第２コンテンツ及び第３コンテンツ全てに付与された履歴があるため、第１行ベクトルの全ての要素がゼロでない値となっている。一方、第２タグＴ２は、第１コンテンツ及び第２コンテンツに付与された履歴があるが、第３コンテンツには付与されていないため、第２行ベクトルの第３要素はゼロとなっている。同様に、第３タグＴ３は、第２コンテンツ及び第３コンテンツに付与された履歴があるが、第１コンテンツには付与されていないため、第３行ベクトルの第１要素はゼロとなっている。
【００７３】
図８は、本実施形態に係るタグ推薦装置１０により算出される第５数値Ｂｔの一例を示す図である。第５数値Ｂｔは、コンテンツへの付与候補となる複数のタグの数の行と、複数のコンテンツの数の列を有する行列である。本例では、複数のタグの数が３であり、複数のコンテンツの数が３である場合について説明する。第５数値Ｂｔは、本発明の第５数値に相当し、複数のコンテンツと複数のタグとの共起関係を、複数のタグが複数のコンテンツに付与された頻度に応じて重み付けした第５数値の一例である。
【００７４】
第５数値Ｂｔは、複数のタグの数の次元を有する列ベクトルを、複数のコンテンツの数だけ含む。以下では、第５数値Ｂｔに含まれる複数の列ベクトルを第ｋ列ベクトルと呼ぶ。ここで、ｋは、１からＣの値をとり、Ｃは複数のコンテンツの数である。本例の場合、３次元の第１列ベクトルは第１コンテンツに対応し、第２列ベクトルは第２コンテンツに対応し、第３行ベクトルは第３コンテンツに対応する。例えば、第１列ベクトルは、第１要素が１／２であり、第２要素が１／２であり、第３要素が０である。また、第２列ベクトルは、第１要素が１／３であり、第２要素が１／３であり、第３要素が１／３である。また、第３行ベクトルは、第１要素が１／２であり、第２要素が０であり、第３要素が１／２である。各列ベクトルは、Ｌ１ノルムが１となるように規格化されている。
【００７５】
第ｋ列ベクトルの値は、第ｋコンテンツに第ｉタグが付与されている場合にゼロでない値となり、第ｋコンテンツに第ｉタグが付与されていない場合にゼロとなる。本例の場合、第ｋ列ベクトルのゼロでない値は、第ｋ列ベクトルのＬ１ノルムが１となるよるように均等に定められている。
【００７６】
本例の場合、第１コンテンツには、第１タグ及び第２タグが付与された履歴があるが、第３タグが付与された履歴がないため、第１列ベクトルの第３要素はゼロとなっている。一方、第２コンテンツには、第１タグ、第２タグ及び第３タグが付与された履歴があるため、第２列ベクトルの全ての要素はゼロでない値となっている。また、第３コンテンツには、第１タグ及び第３タグが付与された履歴があるが、第２タグが付与された履歴がないため、第３列ベクトルの第２要素はゼロとなっている。
【００７７】
図９は、本実施形態に係るタグ推薦装置１０により実行されるタグ推薦処理の第２例のフローチャートである。はじめに、タグ推薦装置１０は、ユーザが投稿するコンテンツを取得する（Ｓ２０）。そして、タグ推薦装置１０は、生成部１２によってコンテンツを説明するタグを生成し、優先ベクトルｐ1を決定する（Ｓ２１）。優先ベクトルｐ1は、コンテンツに付与される候補となる複数のタグの数の次元を有するＭ次元ベクトルであり（Ｍは複数のタグの数）、生成部１２によって生成されたコンテンツを説明するタグに対応する要素が１であり、それ以外の要素がゼロであるベクトルであってよい。また、優先ベクトルｐ1は、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されていてよい。
【００７８】
その後、タグ推薦装置１０は、第１数値及び第２数値である行列Ｕｐ及びＵｔを算出し、第３数値ＡUP＝Ｕｐ×ＵｔTを算出する（Ｓ２２）。第３数値ＡUPは、複数のタグの数の次元を有する正方行列である。第３数値ＡUPは、本発明の第３数値に相当し、複数のタグ間の共起関係を表す。
【００７９】
また、タグ推薦装置１０は、第４数値及び第５数値である行列Ｂｐ及びＢｔを算出し、第６数値ＡFP＝Ｂｐ×ＢｔTを算出する（Ｓ２３）。第６数値ＡFPは、複数のタグの数の次元を有する正方行列である。第６数値ＡFPは、本発明の第６数値に相当し、複数のタグ間の共起関係を表す。
【００８０】
タグ推薦装置１０は、第３数値ＡUP及び第６数値ＡFPに基づいて、第７数値ＡUFP(1)を以下の数式（１）により算出する（Ｓ２４）。
【００８１】
【数１】
2020149410.tif 000003
【００８２】
ここで、数式（１）の右辺は、第３数値ＡUP及び第６数値ＡFPの要素積（アダマール積）を表す。
【００８３】
さらに、タグ推薦装置１０は、複数のタグの優先度ｒ1を、ｒ1＝αＡUFP(1)ｒ1＋（１−α）ｐ1により算出する（Ｓ２５）。ここで、優先度ｒ1の算出式は再帰的に定義されている。また、αは、０から１の間の値である。ｒ1は、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されてよい。なお、ｒ1の初期値は、ｐ1であってよい。
【００８４】
また、タグ推薦装置１０は、基準優先度ｒ0を、ｒ0＝αＡUFP(1)ｒ0＋（１−α）ｐ0により算出する（Ｓ２６）。ここで、ｐ0は、複数のタグの数の次元を有するＭ次元ベクトルであり（Ｍは複数のタグの数）、全ての要素が等しい値であり、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されているベクトルであってよい。ｒ0は、Ｌ１ノルムがｍに規格化されてよい。なお、ｒ0の初期値は、ｐ0であってよい。
【００８５】
タグ推薦装置１０は、優先度ｒ1及び基準優先度ｒ0が収束したか判定する（Ｓ２７）。収束したか否かは、処理Ｓ２５及びＳ２６における更新で、優先度ｒ1及び基準優先度ｒ0が所定量以下しか変化しないか否か、又は予め指定した繰り返し演算回数を上回ったかによって判定してよい。処理Ｓ２５及びＳ２６における更新で、優先度ｒ1又は基準優先度ｒ0が所定量より大きく変化し、予め指定した繰り返し演算回数を上回っていない場合、すなわち優先度ｒ1及び基準優先度ｒ0が収束していない場合（Ｓ２７：ＮＯ）、タグ推薦装置１０は、処理Ｓ２５及びＳ２６を再び実行する。
【００８６】
一方、処理Ｓ２５及びＳ２６における更新で、優先度ｒ1又は基準優先度ｒ0が所定量以下しか変化しない場合、又は予め指定した繰り返し演算回数を上回った場合、すなわち優先度ｒ1及び基準優先度ｒ0が収束した場合（Ｓ２７：ＹＥＳ）、タグ推薦装置１０は、ｒ1−ｒ0の値により推薦する１又は複数のタグを決定する（Ｓ２８）。ｒ1−ｒ0は、複数のタグの数の次元を有するベクトルであり、各要素は複数のタグに対応する。タグ推薦装置１０は、ｒ1−ｒ0の要素の大きさが上位所定順位以内である１又は複数のタグを推薦してよい。以上により推薦処理の第２例が終了する。
【００８７】
このように、複数のタグ間の共起関係を表す第６数値ＡFPを、タグがコンテンツに付与された頻度と、コンテンツの人気度とを用いて算出し、第６数値と、新たなコンテンツに予め付与された１又は複数のタグとに基づいて複数のタグの優先度ｒ1を算出することで、人気度が高いコンテンツに付与されたタグと、その付与頻度を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００８８】
また、第３数値ＡUP及び第６数値ＡFPの要素積並びに新たなコンテンツに付与された１又は複数のタグに基づいて、優先度ｒ1を算出することで、ユーザの人気度及びコンテンツの人気度両方を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００８９】
図１０は、本実施形態に係るタグ推薦装置１０により実行されるタグ推薦処理の第３例のフローチャートである。はじめに、タグ推薦装置１０は、ユーザが投稿するコンテンツを取得する（Ｓ３０）。そして、タグ推薦装置１０は、生成部１２によってコンテンツを説明するタグを生成し、優先ベクトルｐ1を決定する（Ｓ３１）。優先ベクトルｐ1は、コンテンツに付与される候補となる複数のタグの数の次元を有するＭ次元ベクトルであり（Ｍは複数のタグの数）、生成部１２によって生成されたコンテンツを説明するタグに対応する要素が１であり、それ以外の要素がゼロであるベクトルであってよい。また、優先ベクトルｐ1は、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されていてよい。
【００９０】
その後、タグ推薦装置１０は、第１数値及び第２数値である行列Ｕｐ及びＵｔを算出し、第３数値ＡUP＝Ｕｐ×ＵｔTを算出する（Ｓ３２）。第３数値ＡUPは、複数のタグの数の次元を有する正方行列である。第３数値ＡUPは、本発明の第３数値に相当し、複数のタグ間の共起関係を表す。
【００９１】
また、タグ推薦装置１０は、第４数値及び第５数値である行列Ｂｗ及びＢｔを算出し、第６数値ＡFP＝Ｂｗ×ＢｔTを算出する（Ｓ３３）。第６数値ＡFPは、複数のタグの数の次元を有する正方行列である。第６数値ＡFPは、本発明の第６数値に相当し、複数のタグ間の共起関係を表す。
【００９２】
タグ推薦装置１０は、第３数値ＡUP及び第６数値ＡFPに基づいて、第８数値ＡUFP(2)をＡUFP(2)＝ＡUP＋ＡFPによって算出する（Ｓ３４）。
【００９３】
さらに、タグ推薦装置１０は、複数のタグの優先度ｒ1を、ｒ1＝αＡUFP(2)ｒ1＋（１−α）ｐ1により算出する（Ｓ３５）。ここで、優先度ｒ1の算出式は再帰的に定義されている。また、αは、０から１の間の値である。ｒ1は、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されてよい。なお、ｒ1の初期値は、ｐ1であってよい。
【００９４】
また、タグ推薦装置１０は、基準優先度ｒ0を、ｒ0＝αＡUFP(2)ｒ0＋（１−α）ｐ0により算出する（Ｓ３６）。ここで、ｐ0は、複数のタグの数の次元を有するＭ次元ベクトルであり（Ｍは複数のタグの数）、全ての要素が等しい値であり、Ｌ１ノルムがｍ（ｍは生成部１２によって生成されたコンテンツを説明するタグの数）に規格化されているベクトルであってよい。ｒ0は、Ｌ１ノルムがｍに規格化されてよい。なお、ｒ0の初期値は、ｐ0であってよい。
【００９５】
タグ推薦装置１０は、優先度ｒ1及び基準優先度ｒ0が収束したか判定する（Ｓ３７）。収束したか否かは、処理Ｓ３５及びＳ３６における更新で、優先度ｒ1及び基準優先度ｒ0が所定量以下しか変化しないか否か、又は予め指定した繰り返し演算回数を上回ったかによって判定してよい。処理Ｓ３５及びＳ３６における更新で、優先度ｒ1又は基準優先度ｒ0が所定量より大きく変化し、予め指定した繰り返し演算回数を上回っていない場合、すなわち優先度ｒ1及び基準優先度ｒ0が収束していない場合（Ｓ３７：ＮＯ）、タグ推薦装置１０は、処理Ｓ３５及びＳ３６を再び実行する。
【００９６】
一方、処理Ｓ３５及びＳ３６における更新で、優先度ｒ1又は基準優先度ｒ0が所定量以下しか変化しない場合、又は予め指定した繰り返し演算回数を上回った場合、すなわち優先度ｒ1及び基準優先度ｒ0が収束した場合（Ｓ３７：ＹＥＳ）、タグ推薦装置１０は、ｒ1−ｒ0の値により推薦する１又は複数のタグを決定する（Ｓ３８）。ｒ1−ｒ0は、複数のタグの数の次元を有するベクトルであり、各要素は複数のタグに対応する。タグ推薦装置１０は、ｒ1−ｒ0の要素の大きさが上位所定順位以内である１又は複数のタグを推薦してよい。以上により推薦処理の第３例が終了する。
【００９７】
このように、第３数値ＡUP及び第６数値ＡFPの和並びに新たなコンテンツに付与された１又は複数のタグに基づいて、優先度ｒ1を算出することで、ユーザの人気度及びコンテンツの人気度両方を考慮して新たなコンテンツに付与するタグを推薦することができる。
【００９８】
以上の例では、複数のタグを制限なく用いる場合について説明したが、タグ推薦装置１０は、その他のタグの推薦を行ってもよい。第１算出部１４は、複数のタグのうち、複数のユーザが所定の期間中に複数のコンテンツに付与した複数のタグに基づいて、第３数値ＡUPを算出してもよい。同様に、第１算出部１４は、複数のタグのうち、複数のユーザが所定の期間中に複数のコンテンツに付与した複数のタグに基づいて、第６数値ＡFPを算出してもよい。このようにして、所定の期間におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。例えば、ある時期の流行を捉えたタグの推薦を行うことができる。
【００９９】
第１算出部１４は、複数のユーザのうち、所定の地域に属する複数のユーザに基づいて、第３数値ＡUPを算出してもよい。同様に、第１算出部１４は、複数のユーザのうち、所定の地域に属する複数のユーザに基づいて、第６数値ＡFPを算出してもよい。ここで、所定の地域に属する複数のユーザは、ユーザの居住する地域によって判断されてよい。コンテンツにどのようなタグを付与すれば人気となるかは、国や地域によって傾向が異なることがある。ユーザの地域性を考慮することで、所定の地域におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。
【０１００】
第１算出部１４は、複数のユーザのうち、所定の年代に属する複数のユーザに基づいて、第３数値ＡUPを算出してもよい。同様に、第１算出部１４は、複数のユーザのうち、所定の年代に属する複数のユーザに基づいて、第６数値ＡFPを算出してもよい。ここで、所定の年代に属する複数のユーザは、ユーザのプロフィール情報によって判断されてよい。コンテンツにどのようなタグを付与すれば人気となるかは、ユーザの年代によって傾向が異なることがある。ユーザの年代を考慮することで、所定の年代におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。
【０１０１】
第１算出部１４は、複数のユーザのうち、所定の性別に属する複数のユーザに基づいて、第３数値ＡUPを算出してもよい。同様に、第１算出部１４は、複数のユーザのうち、所定の性別に属する複数のユーザに基づいて、第６数値ＡFPを算出してもよい。ここで、所定の性別に属する複数のユーザは、ユーザのプロフィール情報によって判断されてよい。コンテンツにどのようなタグを付与すれば人気となるかは、ユーザの性別によって傾向が異なることがある。ユーザの性別を考慮することで、所定の性別におけるタグ付けの傾向を反映するように、新たなコンテンツに付与するタグを推薦することができる。
【０１０２】
図１１は、本実施形態に係るタグ推薦装置１０により推薦されたタグをコンテンツに付与した場合の実験結果を示す図である。同図では、特定のＳＮＳに複数の画像を投稿する実験について、縦軸に平均閲覧数（Average Number of Views）を示し、横軸に投稿からの経過日数（Days after uploaded）を示している。実験は、本実施形態に係るタグ推薦装置１０により推薦されたタグを画像に付与した場合と、比較例の場合とについて行い、それぞれ異なる期間に、異なるユーザによって、複数種類の画像を投稿した場合の平均を示している。
【０１０３】
実線で示す第１グラフＧ１は、生成部１２によって生成した１０個のタグに基づき優先ベクトルｐ1を決定し、第７数値ＡUFP(1)を用いた更新式で優先度ｒ1を算出し、１０個のタグの推薦を行い、合計２０個のタグを付与して画像の投稿を行った場合の閲覧数の時間変化を示している。同図によると、第１グラフＧ１は最も良い成績を示し、１０日間で平均閲覧数が５０以上となり、増加傾向が続いている。
【０１０４】
破線で示す第２グラフＧ２は、生成部１２によって生成した１０個のタグに基づき優先ベクトルｐ1を決定し、第６数値ＡFPを用いた更新式で優先度ｒ1を算出し、推薦部１６によって１０個のタグの推薦を行い、合計２０個のタグを付与して画像の投稿を行った場合の閲覧数の時間変化を示している。同図によると、第２グラフＧ２は２番目に良い成績を示し、１０日間で平均閲覧数が４０以上となり、増加傾向が続いている。
【０１０５】
一点鎖線で示す第３グラフＧ３は、生成部１２によって生成した１０個のタグに基づき優先ベクトルｐ1を決定し、第８数値ＡUFP(2)を用いた更新式で優先度ｒ1を算出し、推薦部１６によって１０個のタグの推薦を行い、合計２０個のタグを付与して画像の投稿を行った場合の閲覧数の時間変化を示している。同図によると、第３グラフＧ３は３番目に良い成績を示し、１０日間で平均閲覧数が３０程度となり、増加傾向が続いている。
【０１０６】
二点鎖線で示す第４グラフＧ４は、生成部１２によって生成した１０個のタグに基づき優先ベクトルｐ1を決定し、第３数値ＡUPを用いた更新式で優先度ｒ1を算出し、推薦部１６によって１０個のタグの推薦を行い、合計２０個のタグを付与して画像の投稿を行った場合の閲覧数の時間変化を示している。同図によると、第４グラフＧ４は４番目に良い成績を示し、１０日間で平均閲覧数が３０程度となり、増加傾向が続いている。
【０１０７】
点線で示す第５グラフＧ５は、生成部１２によって生成した１０個のタグを付与して画像の投稿を行った場合の閲覧数の時間変化を比較例として示している。同図によると、第５グラフＧ５は最も悪い成績を示し、１０日間で平均閲覧数が２０程度となっている。なお、第５グラフＧ５では、画像に付与されたタグの数が１０であり、本実施形態の場合の半分であるが、仮に閲覧数がタグの数に比例するとしても、第１グラフＧ１及び第２グラフＧ２は、閲覧数が第５グラフＧ５の倍より大きくなっており、単にタグの数を増やした以上の効果を奏していることが見て取れる。
【０１０８】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【０１０９】
１０…タグ推薦装置、１０ａ…ＣＰＵ、１０ｂ…ＲＡＭ、１０ｃ…ＲＯＭ、１０ｄ…通信部、１０ｅ…入力部、１０ｆ…表示部、１１…取得部、１２…生成部、１３…記憶部、１３ａ…タグ情報、１３ｂ…ユーザ情報、１３ｃ…コンテンツ情報、１４…第１算出部、１５…第２算出部、１６…推薦部、２０…第１ユーザ端末、３０…第２ユーザ端末、４０…第Ｎユーザ端末、１００…タグ推薦システム
【図１】
2020149410.tif 000004
【図２】
2020149410.tif 000005
【図３】
2020149410.tif 000006
【図４】
2020149410.tif 000007
【図５】
2020149410.tif 000008
【図６】
2020149410.tif 000009
【図７】
2020149410.tif 000010
【図８】
2020149410.tif 000011
【図９】
2020149410.tif 000012
【図１０】
2020149410.tif 000013
【図１１】
2020149410.tif 000014