IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士ゼロックス株式会社の特許一覧

<>
  • 特許-コンテンツ評価装置 図1
  • 特許-コンテンツ評価装置 図2A
  • 特許-コンテンツ評価装置 図2B
  • 特許-コンテンツ評価装置 図3
  • 特許-コンテンツ評価装置 図4
  • 特許-コンテンツ評価装置 図5
  • 特許-コンテンツ評価装置 図6
  • 特許-コンテンツ評価装置 図7A
  • 特許-コンテンツ評価装置 図7B
  • 特許-コンテンツ評価装置 図8
  • 特許-コンテンツ評価装置 図9
  • 特許-コンテンツ評価装置 図10A
  • 特許-コンテンツ評価装置 図10B
  • 特許-コンテンツ評価装置 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-05
(45)【発行日】2022-12-13
(54)【発明の名称】コンテンツ評価装置
(51)【国際特許分類】
   G06Q 50/00 20120101AFI20221206BHJP
   G06F 16/906 20190101ALI20221206BHJP
【FI】
G06Q50/00 300
G06F16/906
【請求項の数】 7
(21)【出願番号】P 2018139295
(22)【出願日】2018-07-25
(65)【公開番号】P2020017054
(43)【公開日】2020-01-30
【審査請求日】2021-06-21
(73)【特許権者】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】狩野 竜示
(72)【発明者】
【氏名】三浦 康秀
(72)【発明者】
【氏名】大熊 智子
【審査官】甲斐 哲雄
(56)【参考文献】
【文献】特開2014-021757(JP,A)
【文献】特開2014-048988(JP,A)
【文献】特表2014-527651(JP,A)
【文献】特許第6355800(JP,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
ソーシャルメディアに対する投稿から属性特徴を抽出する属性特徴抽出手段と、
前記属性特徴から属性スコアを算出する属性スコア算出手段と、
前記投稿からコンテンツ特徴を抽出するコンテンツ特徴抽出手段と、
前記コンテンツ特徴からコンテンツスコアを算出し、前記属性スコアとは独立に出力するコンテンツスコア算出手段と、
前記属性スコア及び前記コンテンツスコアを用いて前記投稿の反応度を算出して出力する反応度算出手段と、
を備え
学習時には前記ソーシャルメディアに対する投稿及び前記投稿に対する反応度のデータセットを用いて前記属性特徴抽出手段及び前記コンテンツ特徴抽出手段を学習し、
評価時には評価対象のコンテンツを学習済みの前記コンテンツ特徴抽出手段に供給して前記コンテンツスコアを算出して出力する
コンテンツ評価装置。
【請求項2】
前記評価時には前記ソーシャルメディアに対する投稿のアノテートスコアを用いて評価する
請求項に記載のコンテンツ評価装置。
【請求項3】
前記コンテンツ特徴抽出手段は、LSTMまたはFNNを用いて前記コンテンツ特徴を抽出する
請求項1、2のいずれかに記載のコンテンツ評価装置。
【請求項4】
前記属性特徴抽出手段は、多層パーセプトロンを用いて前記属性特徴を抽出する
請求項1~3のいずれかに記載のコンテンツ評価装置。
【請求項5】
前記反応度算出手段は、前記属性スコア及び前記コンテンツスコアを乗算して前記投稿の反応度を算出する
請求項1~4のいずれかに記載のコンテンツ評価装置。
【請求項6】
前記反応度算出手段は、前記属性スコア及び前記コンテンツスコアを乗算し、さらに前記属性特徴をバイアスとして加算して前記投稿の反応度を算出する
請求項1~4のいずれかに記載のコンテンツ評価装置。
【請求項7】
ソーシャルメディアに対する投稿の属性から属性スコアを算出する属性スコア算出手段と、
前記属性スコア算出手段とは独立して前記投稿のコンテンツからコンテンツ特徴を抽出し、前記コンテンツ特徴からコンテンツスコアを算出するコンテンツスコア算出手段と、
前記コンテンツスコアと、前記属性スコア及び前記コンテンツスコアを用いて算出された前記投稿の反応度の少なくともいずれかを出力する出力手段と、
を備え、
学習時には前記ソーシャルメディアに対する投稿及び前記投稿に対する反応度のデータセットを用いて前記コンテンツ特徴を抽出するためのコンテンツ特徴抽出手段を学習し、
評価時には評価対象のコンテンツを学習済みの前記コンテンツ特徴抽出手段に供給して前記コンテンツスコアを算出する、
コンテンツ評価装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツ評価装置に関する。
【背景技術】
【0002】
ソーシャルメディアの発展に伴い、ネット上で行き交う情報は膨大なものとなっており、これら膨大な情報の中から有益な情報を見出すことがますます重要となっている。
【0003】
特許文献1には、通信ネットワーク内で影響力がある/人気がある参加者を判定する方法が記載されている。グループ内の参加者をノードとして表現し、参加者間で交換されたメッセージをリンクとして表現するステップと、メッセージを分析して各ノードのメッセージ関連データを生成するステップと、各ノードのメッセージ関連データをネットワーク内の他のノードに伝播させ、各ノードに対応する参加者のソーシャルアクティビティ又はコネクションの相対的サイズ及び強度を示す、各ノードに関する対応する影響値を生成するステップを有する。
【0004】
特許文献2には、SNSなどで、特定トピックに対しての未来における投稿数を的確に予測することを可能とする装置が記載されている。装置は、特定のウェブサイトから学習用テキストデータを取得する学習テキストデータ入力部と、トピック別の発言件数から、当該トピックに対する単数の特定のユーザを示すノードの属するグループごとの発言件数に対する影響力を算出してこれを学習データとして記憶するノード影響力学習部と、学習データを記憶した後に特定のウェブサイトから予測用テキストデータを取得する予測テキストデータ入力部と、トピック別の発言件数と学習データとから該トピックの未来の特定の時刻における投稿件数を予測して出力する未来投稿件数予測部を有する。
【0005】
特許文献3には、ユーザの注目を惹くか否かという観点において任意の画像を適切に評価することができる装置が記載されている。装置は、第1の画像に対するテキストを入力して、当該テキストの数を集計する第1の集計手段と、第1の画像の特徴量を示す情報を取得する第1の特徴量取得手段と、第1の特徴量取得手段によって取得された特徴量を説明変数に対応する情報、及び第1の集計手段によって集計された数に基づく情報を目的変数に対応する情報とした学習用データを用いて機械学習を実行して、任意の画像の特徴量を入力としてスコアを出力する学習モデルを生成する学習モデル生成手段と、第2の画像を複数取得する画像取得手段と、第2の画像の特徴量を示す情報を取得する第2の特徴量取得手段と、学習モデル生成手段によって生成された学習モデルに、第2の特徴量取得手段によって取得された特徴量を説明変数として入力して、当該学習モデルの出力から第2の画像のスコアを算出するスコア算出手段と、第2の画像に対するテキストを取得するテキスト取得手段と、第2の画像と、テキスト取得手段によって取得されたテキストとに基づいて、第2の画像同士が類似するか否かを判定する類似判定手段と、類似判定手段によって類似すると判定された複数の第2の画像について、スコア算出手段によって算出されたスコアに基づいて、当該複数の第2の画像を代表する代表画像を決定する代表画像決定手段を備える。
【0006】
特許文献4には、一般的なニュース記事のような予測対象コンテンツであっても、将来的なコメント数を予測することによって、不特定多数のユーザにおける将来的な興味の傾向を分析することができるサーバが記載されている。サーバは、 コンテンツ毎に、時間経過に応じた各単位時間のコメント数の推移状態を、学習情報として予め記憶した学習情報記憶手段と、 サーバから取得された、予測対象コンテンツに対応するコメントについて、時間経過に応じた各単位時間のコメント数を計数する予測対象コメント検索手段と、 計数された各単位時間のコメント数の推移状態に類似する、コメント数の推移状態のコンテンツを、学習情報記憶手段から検索する判定時間検索手段と、 検索されたコンテンツに対応する判定時間後のコメント数の推移状態を、当該予測対象コンテンツにおける将来的なコメント数の推移状態として導出するコメント数予測手段を有する。
【先行技術文献】
【特許文献】
【0007】
【文献】特許第5035642号
【文献】国際公開第13/073377号
【文献】特許第6033697号
【文献】特許第5952711号
【発明の概要】
【発明が解決しようとする課題】
【0008】
ソーシャルメディアにおける膨大な情報の中から有益な情報を抽出するためには、ソーシャルメディアに投稿されたメッセージや画像等のユーザの反応度(人気度)を評価することが有効である。但し、ソーシャルメディアに投稿されたメッセージや画像等のユーザの反応度は、投稿したユーザ情報や投稿時間、投稿速度等により影響を受けるため、どのような内容(コンテンツ)が反応度に有効かを判別することは困難である。
【0009】
本発明は、ソーシャルメディアに対する投稿のコンテンツのみの反応度(人気度)を評価し得る技術を提供することを目的とする。
【課題を解決するための手段】
【0010】
請求項1に記載の発明は、ソーシャルメディアに対する投稿から属性特徴を抽出する属性特徴抽出手段と、前記属性特徴から属性スコアを算出する属性スコア算出手段と、前記投稿からコンテンツ特徴を抽出するコンテンツ特徴抽出手段と、前記コンテンツ特徴からコンテンツスコアを算出し、前記属性スコアとは独立に出力するコンテンツスコア算出手段と、前記属性スコア及び前記コンテンツスコアを用いて前記投稿の反応度を算出して出力する反応度算出手段とを備え、学習時には前記ソーシャルメディアに対する投稿及び前記投稿に対する反応度のデータセットを用いて前記属性特徴抽出手段及び前記コンテンツ特徴抽出手段を学習し、評価時には評価対象のコンテンツを学習済みの前記コンテンツ特徴抽出手段に供給して前記コンテンツスコアを算出して出力するコンテンツ評価装置である。
【0012】
請求項に記載の発明は、前記評価時には前記ソーシャルメディアに対する投稿のアノテートスコアを用いて評価する請求項に記載のコンテンツ評価装置である。
【0013】
請求項に記載の発明は、前記コンテンツ特徴抽出手段は、LSTMまたはFNNを用いて前記コンテンツ特徴を抽出する請求項1、2のいずれかに記載のコンテンツ評価装置である。
【0014】
請求項に記載の発明は、前記属性特徴抽出手段は、多層パーセプトロンを用いて前記属性特徴を抽出する請求項1~のいずれかに記載のコンテンツ評価装置である。
【0015】
請求項に記載の発明は、前記反応度算出手段は、前記属性スコア及び前記コンテンツスコアを乗算して前記投稿の反応度を算出する請求項1~のいずれかに記載のコンテンツ評価装置である。
【0016】
請求項に記載の発明は、前記反応度算出手段は、前記属性スコア及び前記コンテンツスコアを乗算し、さらに前記属性特徴をバイアスとして加算して前記投稿の反応度を算出する請求項1~のいずれかに記載のコンテンツ評価装置である。
【0017】
請求項に記載の発明は、ソーシャルメディアに対する投稿の属性から属性スコアを算出する属性スコア算出手段と、前記属性スコア算出手段とは独立して前記投稿のコンテンツからコンテンツスコアを算出するコンテンツスコア算出手段と、前記コンテンツスコアと、前記属性スコア及び前記コンテンツスコアを用いて算出された前記投稿の反応度の少なくともいずれかを出力する出力手段とを備えるコンテンツ評価装置である。
【発明の効果】
【0018】
請求項1,に記載の発明によれば、ソーシャルメディアに対する投稿のコンテンツのみの反応度(人気度)を評価し得る。また、評価時においてコンテンツスコアを算出して出力できる。
【0020】
請求項に記載の発明によれば、さらに、アノテートスコアを用いて評価され得る。
【0021】
請求項3,4に記載の発明によれば、さらに、LSTM等のニューラルネットワークを用いて学習され得る。
【0022】
請求項5,6に記載の発明によれば、さらに、それぞれ独立に算出される属性スコアとコンテンツスコアの乗算を用いて投稿の反応度が算出され得る。
【図面の簡単な説明】
【0023】
図1】実施形態の構成ブロック図である。
図2A】投稿の属性及びコンテンツと反応度との関係を示す模式図(その1)である。
図2B】投稿の属性及びコンテンツと反応度との関係を示す模式図(その2)である。
図3】実施形態の機能ブロック図である。
図4】実施形態のアノテートスコアの精度を示すテーブルである。
図5】実施形態のKarmaScoreの精度を示すテーブルである。
図6】実施形態のコンテンツスコア出力説明図である。
図7A】実施形態の投稿の属性及びコンテンツと反応度との関係を示す模式図(その1)である。
図7B】実施形態の投稿の属性及びコンテンツと反応度との関係を示す模式図(その2)である。
図8】実施形態の処理フローチャートである。
図9】実施形態の学習と評価の説明図である。
図10A】実施形態のコンテンツとコンテンツスコアの対応関係を示すテーブル(その1)である。
図10B】実施形態のコンテンツとコンテンツスコアの対応関係を示すテーブル(その2)である。
図11】変形例の機能ブロック図である。
【発明を実施するための形態】
【0024】
以下、図面に基づき本発明の実施形態について説明する。
【0025】
図1は、本実施形態におけるコンテンツ評価装置の構成ブロック図を示す。コンテンツ評価装置は、1又は複数のプロセッサ10、プログラムメモリ12、記憶装置14、入出力インターフェイス(I/F)16、通信I/F18、入力装置20、及び出力装置22を備えて構成される。コンテンツ評価装置は、1又は複数のプロセッサ及びメモリを備える汎用コンピュータで構成され得る。
【0026】
1又は複数のプロセッサは、プログラムメモリ12に記憶された処理プログラムを読み出して実行することで各種機能を実行する。1又は複数のプロセッサ10は、機能ブロックとして、属性特徴抽出部10a、属性スコア算出部10b、コンテンツ特徴抽出部10c、コンテンツスコア算出部10d、及び反応度算出部10eを備える。
【0027】
属性特徴抽出部10aは、ソーシャルメディアに対して投稿されるメッセージや画像(静止画及び動画を含む)の属性(コンテクスト)の特徴を抽出する。
【0028】
属性スコア算出部10bは、属性特徴抽出部10aで抽出された属性特徴を用いて属性スコアを算出する。
【0029】
コンテンツ特徴抽出部10cは、ソーシャルメディアに対して投稿されるメッセージや画像のコンテンツ特徴を抽出する。
【0030】
コンテンツスコア算出部10dは、コンテンツ特徴抽出部10cで抽出されたコンテンツ特徴を用いてコンテンツスコアを算出する。
【0031】
反応度算出部10eは、属性スコア算出部10bで算出された属性スコア、及びコンテンツスコア算出部10dで算出されたコンテンツスコアを用いて、投稿されたメッセージや画像の反応度を算出する。
【0032】
プログラムメモリ12は、プロセッサ10で実行されるべき処理プログラムを格納する。また、プログラムメモリ12は、学習により得られた各種パラメータを記憶する。
【0033】
記憶装置14は、学習に用いる投稿メッセージや画像、テストデータ等を記憶する。
【0034】
入出力I/F16は、キーボードやマウス等の入力装置20、及びディスプレイ等の出力装置22に接続される。
【0035】
通信I/F18は、インターネット経由でクラウド24に接続される。クラウド24は、ソーシャルメディアを実現し、そこに投稿されるメッセージや画像は通信I/F18を介して記憶装置14に格納され、さらにプロセッサ10に供給されて解析される。
【0036】
プロセッサ10により実装されるモデル、具体的には属性特徴抽出部10a、コンテンツ特徴抽出部10cは、ソーシャルメディアに対して実際に投稿されたメッセージや画像と、その反応度(人気度)を用いて学習される。学習済みのプロセッサ10は、反応度の予測対象である投稿メッセージや画像を解析し、属性スコア及びコンテンツスコアを算出して出力し、さらに反応度を算出して出力装置22に出力する。プロセッサ10は、属性スコア及びコンテンツスコアをそれぞれ独立に算出するため、最終的な反応度とは別に、これらのスコアを個別に出力装置22に出力し得る。すなわち、プロセッサ10の出力は、
・属性スコアのみ
・コンテンツスコアのみ
・反応度のみ
・コンテンツスコアと反応度
・属性スコアと反応度
・属性スコアとコンテンツスコアと反応度
のいずれかである。プロセッサ10で算出され出力されるコンテンツスコアは、投稿されたメッセージや画像のコンテンツのみの反応度に対応する。
【0037】
ここで、反応度とは、ソーシャルメディア上の投稿に対する反応(人気)の度合いを示す指標であり、具体的には、
ツイッター(Twitter)(登録商標)におけるリツイート数(RT数)
フェイスブック(facebook)における「いいね」数
ユーチューブ(Youtube)(登録商標)の閲覧数
RedditにおけるKarmaScore
等である。
【0038】
この中でもRedditは、規模が比較的大きく、データが公開されていることから、ユーザの反応度の研究対象になることが多い。例えば、Redditを用いた研究として、
Hao Fang, Hao Cheng, Mari Ostendorf. Learning Latent Local Conversation Modes for Predicting Com-munity Endorsement in Online Discussions. ACL 2016.
Hao Cheng, Hao Fang, Mari Ostendorf. A Factored Neural Network Model for Characterizing Online Discussions in Vector Space. EMNLP 2017.
等が知られている。
【0039】
Redditでは、多様な話題に関するテキストが投稿される。Redditには、投稿をトピック毎にまとめたsubredditが存在し、各subredditにはスレッドと呼ばれる投稿群の単位が存在する。ユーザは新しい話題に関する投稿を最初に行い(submission)、このsubmissionに対して返信が可能であり、その返信に対しても返信が可能である。submissionと、その下部にある全ての投稿が1つのスレッドを構成する。各投稿には複数の返信が可能であるため、スレッドの構造はツリー構造となる。そして、ユーザは、投稿に対して支持か不支持かの評価を行うことができる。支持の票数から不支持の票数を引いたものがKarmaScoreである。すなわち、
KarmaScore=支持票数-不支持票数
である。
【0040】
本実施形態では、ソーシャルメディアとして、規模が大きくデータも公開されているRedditを例示し、反応度としてのKarmaScoreを用いる場合について説明する。但し、本発明は、特定のソーシャルメディアに限定されるものではなく、任意のソーシャルメディアに投稿されるメッセージや画像にも適用可能である。
【0041】
図2A及び図2Bは、ソーシャルメディアに対して投稿されるメッセージの属性及びコンテンツと反応度との一般的な関係を示す。
【0042】
図2Aは、投稿時間22時に投稿者Aが「今日は寒い」とのメッセージを投稿した場合である。このとき、メッセージの属性は、
投稿時間:22時
投稿者:A
であり、メッセージのコンテンツは、
「今日は寒い」
である。投稿された当該メッセージの反応度、例えばRedditのKarmaScoreは1000であったとする。
他方、図2Bは、同一メッセージを異なる時間に異なる投稿者が投稿した場合である。このとき、メッセージの属性は、
投稿時間:10時
投稿者:B
であり、メッセージのコンテンツは、
「今日は寒い」
である。投稿された当該メッセージの反応度、例えばKarmaScoreは10であったとする。
【0043】
このように、たとえコンテンツが同一であったとしても、属性が異なれば反応度が異なり得る、言い替えれば、反応度は投稿者や投稿時間、投稿速度等の属性の影響を強く受けるため、コンテンツ自体の反応度を評価するためには、これら属性の影響を排除する必要がある。
【0044】
そこで、本実施形態では、ソーシャルメディアに対して投稿されるメッセージや画像の反応度を予測する際に、属性の反応度とコンテンツの反応度をそれぞれ独立に分離して算出するモデルを用いる。
【0045】
図3は、プロセッサ10の機能ブロックをより詳細に示す。プロセッサ10の機能ブロックは、属性スコアを算出する属性ブロックと、コンテンツスコアを算出するコンテンツブロックに分離される。
【0046】
属性ブロックは、属性特徴抽出部10a及び属性スコア算出部10bを備える。
【0047】
属性特徴抽出部10aは、例えば多層パーセプトロン(MLP)で構成され、投稿されたメッセージや画像の属性特徴を抽出する。属性は、コンテクストであり、投稿されたメッセージの文脈や背景事実である。属性特徴抽出部10aは、属性として、投稿者、スレッドの深さ、前回の投稿からの時間、前回の投稿に対する全ての返信中における投稿時間のランク、前回の投稿に対する全ての返信数等が用いられる。より詳細には、以下を属性として用い得る。
(1)投稿者がスレッドを開始した者と同一か否か
(2)投稿者により投稿されたメッセージ数
(3)投稿に対する返信数
(4)投稿に先立つ投稿数
(5)投稿より後の投稿数
(6)投稿の兄弟(シブリング)投稿の数
(7)投稿から派生したサブツリーの投稿数
(8)投稿から派生したサブツリーの程度
(9)スレッドの深さ
(10)最初の投稿からの投稿時間
(11)親の投稿からの投稿時間
多層パーセプトロンは例えば3層とし、それぞれの層の次元は例えば64とし得る。属性スコア算出部10bは、属性特徴抽出部10aで抽出された属性特徴のパラメータベクトルを積算することでスカラー値としての属性スコアを算出する。
【0048】
コンテンツブロックは、コンテンツ特徴抽出部10c及びコンテンツスコア算出部10dを備える。コンテンツ特徴抽出部10cは、LSTM(Long short-term memory)又はFNN(Factored Neural Network)で構成され、コンテンツ特徴を抽出する。LSTMは基本的な言語モデルとして用いられ、FNNはアテンションメカニズム(attention mechanism)を用いてあるコメントの次のワード、及びそれに続く返信を予測する言語モデルとして用いられる。
【0049】
LSTMは、RNN(Recurrent Neural Network)の拡張であり、時系列データ(sequential data)に対するモデルである。LSTNはRNNの中間層のユニットをLSTMブロックと呼ばれるメモリと3つのゲートを持つブロックに置き換えることで実現される。テキストを単語毎に分割し、識別子(ID)を付与する。そして、これらの配列をword embedding層に投入し、単語ベクトルの配列を得る。単語ベクトルの配列を
X=x,x,・・・x
とする。ここで、Tは系列長である。そして、これらの単語ベクトルをLSTMにて時系列処理する。LSTMに単語ベクトルxを入力した後、隠れ層の状態hは以下のように算出される。
ここで、ctは記憶素子、itは入力ゲート、ftは忘却ゲート、otは出力ゲート、gtは状態候補、
は要素積を示す。また、W,U,bはパラメータである。
【0050】
LSTMは例えば1層とし、最後の隠れ層をコンテンツ特徴抽出として用いることができる。隠れ層の次元は例えば64とし、ワードの埋め込みの次元は256とし得る。また、メッセージの単語長が50以上の場合には、最初の50単語のみを使用し得る。頻度順に上位32000語にIDを振り分ける。5回未満の頻度の単語は、トークン<unk>に置換する。損失関数として二乗誤差、最適化はAdamを用い得る。ミニバッチサイズは64、ドロップアウトの比率は0.5とし得る。
【0051】
FNNについては、例えば、Hao Cheng Hao Fang Mari Ostendorf. 2017. “A Factored Neural Network Model for Characterizing Online Discussions in Vector Space”,In Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing, pages 2296-2306, Copenhagen, Denmarkに記載されている。この文献では、上記の属性を含む13個の属性を用い、話題を複数潜在変数ベクトルの線形和として表現し、LSTMに逐次的に入力する言語モデルを使用することが記載されている。すなわち、投稿(コメント)はローカルベクトルとコンテンツベクトルに埋め込まれ、ローカルベクトルは投稿のコンテクストを示す。ローカルベクトルは、グローバルモードベクトルから計算される。コンテンツベクトルは、投稿のコンテンツ特徴を示す。
【0052】
コンテンツスコア算出部10dは、コンテンツ特徴抽出部10cで抽出されたコンテンツ特徴のパラメータベクトルを積算することでスカラー値としてのコンテンツスコアを算出する。
【0053】
図3に示す属性特徴抽出部10a及びコンテンツ特徴抽出部10cは、Karmascoreをラベルとして用いて学習される。そして、学習後のモデルによって算出されるコンテンツスコアは、アノテート(注釈付け)されたデータセットによって評価される。
【0054】
Redditの反応度であるKarmascoreの分布はZipfの法則に従うことが知られているから、本実施形態では、このような偏った分布を平滑化すべく、以下の式を用いてKarmascoreを変換する。
f(k)=log(k+1) (k≧0)
=0 (k<0)
ここで、kはKarmascoreである。
【0055】
学習に当たり、Redditの3つのsubredditである、AskMen, AskWomen, AskRedditからそれぞれ420,598個、247,012個、644,034個の投稿数を収集し、それぞれ4:1の比率で学習用と評価用のデータセットとする。全ての投稿は、2016年6月1日から2017年6月1日にかけて実際に投稿されたものである。
【0056】
評価用のテストデータとして用いる際に、投稿に対してアノテートする。アノテートは、例えばクラウドソーシングが用いられ得る。アノテータ(注釈者)は、10個の投稿から好ましいと思われる3つの投稿を選択する。10個の投稿のそれぞれは、あるsubmissionに対する返信である。10個以上の返信があるsubmissionについては、Karmascoreが高い上位10個の投稿が選択される。
【0057】
各subredditについて、130個のサブセットがアノテートされ、合計1300個の投稿がアノテートされる。10人のアノテータがそれぞれ異なる3つの投稿に投票するため、ある一つの投稿に着目するとその票数は0~10のいずれかになる。0~10の範囲にある票数をアノテートスコアと称する。要するに、ある投稿に対する10の返信のうち、好ましいものを3個選ぶタスクを10人のアノテータに行わせ、10人のアノテータに選ばれた総回数をアノテートスコアと称する。
【0058】
このようなタスクでは、投稿者や投稿時間、投稿速度等の属性が排除されているため、属性の影響を除去したコンテンツのみの反応度の指標として用いることができる。本実施形態では、反応度としてのKarmascoreを用いて学習した後、学習後のコンテンツ特徴抽出部10c及びコンテンツスコア算出部10dで算出されるコンテンツスコアと、アノテートスコアとを比較して評価することで、コンテンツスコアがコンテンツ自身の反応度を反映している、すなわち属性の影響が排除されていることを評価し得る。
【0059】
図4は、学習済みの装置により算出されたコンテンツスコアとアノテートスコアの比較結果を示す。コンテンツ特徴抽出部10cとしてLSTMを用いた場合をLSTMDisjunctive、FNNを用いた場合をFNNDisjunctiveとして示す。3つのsubredditであるAskMen, AskWomen, AskRedditのそれぞれについて、MAP(Mean Average Precision)、MRR(Mean Reciprocal Rank)、prec3(precision@3)を算出したものである。なお、これらの指標については、Brian Mcfee and Gert Lanckriet.2010. “Metric learning to rank”. In Proceedings of the 27th annual International Conference on Mechine Learning に詳述されている。また、比較のため、属性とコンテンツを分離せずに連結させて用いた反応度予測モデルをLSTMConcat及びFNNConcat,コンテンツのみを用いた反応度予測モデルをLSTMText及びFNNTextとして示す。
【0060】
本実施形態におけるLSTMDisjunctive、FNNDisjunctiveではコンテンツスコアを算出して評価しているが、比較モデルであるLSTMConcatとFNNConcat 及びLSTMTextとFNNTextでは、KarmaScoreを算出して評価している。これらの比較モデルでは、本実施形態のような属性とコンテンツを分離させたモデルと異なり、属性とコンテンツが分離していないためにコンテンツのみの反応度を示すコンテンツスコアをそもそも算出し得ないからである。
【0061】
図4に示すように、例えばAskMenのprec3では、LSTMモデルでは
LSTMConcat(比較例):0.306
LSTMText(比較例):0.335
LSTMDisjunctive(実施形態):0.348
であり、FNNモデルでは
FNNConcat(比較例):0.292
FNNText(比較例):0.342
FNNDisjunctive(実施形態):0.388
であり、本実施形態のモデルは、LSTMDisjunctive、FNNDisjunctiveのいずれも比較モデルよりも高精度の結果が得られており、コンテンツのみの反応度を高精度に予測できることがわかる。LSTMText及びFNNTextの精度が低いのは、KarmaScoreは同一コンテンツであっても属性の影響を受けるからである。また、LSTMConcat及びFNNConcatの精度が低いのも、同様に属性の影響によるものと考えられる。図4の結果は、KarmaScoreは属性の影響を受けており、他方でアノテートスコアは属性の影響を排除しているため両者は相違し、比較モデルではKarmaScoreを算出しているためアノテートスコアとは乖離し、他方で本実施形態のモデルではコンテンツスコアとしてアノテートスコアに近い値を算出し得るため精度が良いといえる。
【0062】
図5は、本実施形態のモデルと比較モデルのKarmaScoreの結果を示す。すなわち、本実施形態のモデルで、属性スコアとコンテンツスコアを乗算して反応度としてKarmaScoreを算出し、実際のKarmascoreと比較した結果である。
図5に示すように、例えばAskMenのprec3では、LSTMモデルでは
LSTMConcat(比較例):0.348
LSTMText(比較例):0.300
LSTMDisjunctive(実施形態):0.346
であり、FNNモデルでは
FNNConcat(比較例):0.453
FNNText(比較例):0.320
FNNDisjunctive(実施形態):0.441
であり、LSTMText及びFNNTextは、他のモデルと比べて精度が低い。これは、既述したようにLSTMText及びFNNTextでは、属性を用いずコンテンツのみを用いてKarmaScoreを算出していることに基づく。
【0063】
また、本実施形態の属性とコンテンツを分離させたLSTMDisjunctive、FNNDisjunctiveは、属性とコンテンツを分離させずに連結させたLSTMConcat、FNNConcatとほぼ同程度の精度が得られている。このことは、本実施形態のように属性とコンテンツを独立分離させたとしても反応度を精度良く評価し得る、つまり、属性とコンテンツが互いに独立しているとのモデルの仮定に問題がないことを意味するものである。
【0064】
図6は、学習済みの装置によりコンテンツのみの反応度を出力する場合を模式的に示す。ソーシャルメディアに対して投稿されるメッセージや画像のコンテンツは、コンテンツ特徴抽出部10cに供給される。
【0065】
コンテンツ特徴抽出部10cは、コンテンツの特徴ベクトルを抽出してコンテンツスコア算出部10dに出力する。
【0066】
コンテンツスコア算出部10dは、コンテンツの特徴ベクトルを積算してコンテンツスコアを出力する。
【0067】
図6において、コンテンツのみからコンテンツスコアが出力され、コンテンツのみの反応度の指標として出力される点に留意すべきである。
【0068】
図7A及び図7Bは、学習済みの装置により最終的な反応度を出力する場合を模式的に示す。
【0069】
図7Aは、投稿時間22時に投稿者Aが「今日は寒い」とのメッセージを投稿した場合である。このとき、メッセージの属性は、
投稿時間:22時
投稿者:A
であり、メッセージのコンテンツは、
「今日は寒い」
である。
【0070】
メッセージの属性は、属性特徴抽出部10aに供給される。属性特徴抽出部10aは、属性の特徴ベクトルを抽出して属性スコア算出部10bに出力する。属性スコア算出部10bは、属性の特徴ベクトルを積算して属性スコアを算出する。属性スコアは、例えば「100」であるとする。
【0071】
また、メッセージのコンテンツは、コンテンツ特徴抽出部10cに供給される。コンテンツ特徴抽出部10cは、コンテンツの特徴ベクトルを抽出してコンテンツスコア算出部10dに出力する。コンテンツスコア算出部10dは、コンテンツの特徴ベクトルを積算してコンテンツスコアを算出する。コンテンツスコアは、例えば「10」であるとする。
【0072】
反応度算出部10eは、属性スコア算出部10bで算出された属性スコアと、コンテンツスコア算出部10dで算出されたコンテンツスコアと乗算することで反応度を算出する。すなわち、反応度は、属性スコア×コンテンツスコア=100×10=1000となる。
【0073】
図7Bは、投稿時間10時に投稿者Bが「今日は寒い」とのメッセージを投稿した場合である。このとき、メッセージの属性は、
投稿時間:10時
投稿者:B
であり、メッセージのコンテンツは、
「今日は寒い」
である。
【0074】
メッセージの属性は、属性特徴抽出部10aに供給される。属性特徴抽出部10aは、属性の特徴ベクトルを抽出して属性スコア算出部10bに出力する。属性スコア算出部10bは、属性の特徴ベクトルを積算して属性スコアを算出する。属性スコアは、例えば「1」であるとする。
【0075】
また、メッセージのコンテンツは、コンテンツ特徴抽出部10cに供給される。コンテンツ特徴抽出部10cは、コンテンツの特徴ベクトルを抽出してコンテンツスコア算出部10dに出力する。コンテンツスコア算出部10dは、コンテンツの特徴ベクトルを積算してコンテンツスコアを算出する。コンテンツスコアは、例えば「10」であるとする。
【0076】
反応度算出部10eは、属性スコア算出部10bで算出された属性スコアと、コンテンツスコア算出部10dで算出されたコンテンツスコアと乗算することで反応度を算出する。すなわち、反応度は、属性スコア×コンテンツスコア=1×10=10となる。
【0077】
このように、メッセージの属性が異なるため属性スコアは異なるものの、メッセージのコンテンツは同一であるためコンテンツスコアは同一となり、最終的な反応度は異なるものとなる。
【0078】
図8は、本実施形態の処理フローチャートを示す。
【0079】
まず、学習に用いるデータとしてソーシャルメディアに対して投稿されたデータを収集する。データは、メッセージ(あるいは画像)とその反応度のセットから構成される。例えば、Redditの3つのsubredditから投稿メッセージ、及びその反応度を示す指標としてのKarmaScoreを抽出する(S101)。学習に用いるデータは、記憶装置14に記憶される。
【0080】
次に、図3に示すような属性とコンテンツが独立・分離したモデルをコンピュータの1又は複数のプロセッサ10で実装し、属性特徴抽出部10aのモデルとして例えばMLP、コンテンツ特徴抽出部10cのモデルとして例えばLSTM(またはFNN)を用いて、S101で収集したデータを用いて学習する(S102)。メッセージの単語長が50以上の場合には、最初の50単語のみを使用し、頻度順に上位32000語にIDを振り分ける。5回未満の頻度の単語は、トークン<unk>に置換する。損失関数として二乗誤差、最適化はAdamを用いる。
【0081】
学習させた後、学習済みのモデルを用いてコンテンツスコア及び反応度を算出する(S103)。反応度は、
反応度=属性スコア×コンテンツスコア
として算出される。コンテンツスコアは、コンテンツのみの反応度に相当する。また、反応度は、属性とコンテンツを考慮した値であり、RedditのKarmaScoreに相当する。S103において、コンテンツスコアのみを算出して出力してもよい。コンテンツ評価装置のユーザが、適宜出力すべきスコアを選択できるように構成してもよい。
【0082】
次に、コンテンツスコアを評価するために、投稿されたメッセージについてアノテートスコアを算出する。すなわち、Redditのある投稿に対する10個の返信を抽出し(S104)、抽出した10個の返信から好ましいと思う3個を選択する(S105)。3個の返信を選択する処理を合計10人のアノテータが実行する(S106)。ある投稿に対して10個以上の返信がある場合には、Karmascoreが高い上位10個の投稿を対象とする。S104~S106の処理は、各subredditについて実行される。
【0083】
そして、10個の返信毎に合計10人により選択された回数をカウントし(S107)、返信毎にカウントされた回数を各投稿のアノテートスコアとする(S108)。10人全てに選ばれない投稿のアノテートスコアは0であり、10人全てに選ばれた投稿のアノテートスコアは10である。10人のアノテータによる選択で、投稿時間や投稿速度、投稿者等の属性が排除される。
【0084】
以上のようにアノテートスコアが算出された後、アノテートスコアが算出された投稿について、学習済みの装置により算出されたコンテンツスコアと、S108で算出されたアノテートスコアとを比較して評価する(S109)。コンテンツスコアがアノテートスコアと予め定めた精度で一致していれば、学習済みの装置でコンテンツスコアを出力することにより、属性の影響を排除したコンテンツのみの反応度を算出して出力し得ることになる。
【0085】
図9は、本実施形態の装置における学習と評価の構成を示す。学習は、ソーシャルメディアに対する投稿メッセージとその反応度、例えばKarmaScoreを用いて行われ、属性特徴抽出部10a及びコンテンツ特徴抽出部10cのモデルパラメータが調整される。また、評価は、複数のアノテータによりアノテートされたメッセージとその反応度、すなわちアノテートスコアを用いて行われ、コンテンツスコアとアノテートスコアとを比較することで評価される。すなわち、学習と評価とで異なる機能ブロック及び異なる指標が用いられる。
【0086】
図10A及び図10Bは、投稿メッセージと算出されたコンテンツスコアの具体例を示す.図9Aは、相対的にコンテンツスコアが高い投稿メッセージの例であり、図9Bは、相対的にコンテンツスコアが低い投稿メッセージの例である。例えば、
「my neighbor on the other side if the house were having a fire pit . we heard a fox in the woods before we knew what it was we」
なるメッセージについてコンテンツスコアは「1.062」と算出される。また、
「yeah but somebodys opinion could be that climate change isnt real . up- voting that gives visibility to misinformation that had the potential to hurt people . im sorry but if somebody is trying to tell me that china invented climate change im downvoting that because its factually incor- rect and contributes」
なるメッセージについてコンテンツスコアは「-0.457」と算出される。一般的に、文脈的に独立しているメッセージはコンテンツスコアが高くなり、文脈依存性が強いメッセージはコンテンツスコアが低くなる傾向にある。
【0087】
S102ではコンテンツ特徴抽出部10cのモデルとしてLSTM及びFNNを例示したが、これ以外にもBoW(Bag of Words)、BoWをtf-idf(Term Frequency - Inverse Document Frequency)で重み付けしたもの、Embedした単語ベクトルを線形加算、Maxpoolingしたもの等が用いられ得る。
【0088】
また、本実施形態では、コンテンツとしてメッセージを例示したが、画像の場合にはBoF(Bag of Feature)やCNN(Convolutional Neural Network)等が用いられ得る。
【0089】
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、種々の変形が可能である。以下、変形例について説明する。
【0090】
<変形例>
実施形態では、図3に示すように、
反応度=属性スコア×コンテンツスコア
として反応度を算出しているが、属性の影響をバイアスとしてさらに印加して反応度を算出してもよい。
【0091】
図11は、変形例におけるプロセッサ10の機能ブロック図を示す。図3の構成に加え、反応度算出部10eで算出された値に、さらに属性特徴抽出部10aで抽出された属性特徴ベクトルから算出されたスカラー値をバイアスとして加算器10fで加算して最終的な反応度を算出する。すなわち、
反応度=属性バイアス+属性スコア×コンテンツスコア
として反応度を算出する。図11の構成でも、コンテンツスコアは属性スコアとは独立・分離して算出される。図3の構成は、図11におけるバイアスが常に0である特殊な場合ということができる。
【符号の説明】
【0092】
10 プロセッサ、12 プログラムメモリ、14 記憶装置、16 入出力インターフェイス(I/F)、18 通信インターフェイス(I/F)、20 入力装置、22 出力装置。
図1
図2A
図2B
図3
図4
図5
図6
図7A
図7B
図8
図9
図10A
図10B
図11