【文献】
Jianshu Weng,TwitterRank: finding topic-sensitive influential twitterers,WSDM '10 Proceedings of the third ACM international conference on Web search and data mining,ACM,2010年 2月 4日,261−270ページ
【文献】
深谷 雅志,電子掲示板における行動履歴を用いたユーザにとって興味あるスレッドの推薦手法,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会,2006年11月30日, Vol.106 No.410,149−154ページ
【文献】
青木 志門,情報推薦のためのブログの活用法に関する研究,第72回(平成22年)全国大会講演論文集(1) アーキテクチャ ソフトウェア科学・工学 データベースとメディア,社団法人情報処理学会,2010年 3月 8日,1-889〜1-890ページ
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0009】
通信媒体(例えば、ソーシャルネットワーキングサイト)においてメッセージを介して受信した情報を確認しまた遅れずについていくのは、動的に更新される大量のコンテンツに起因して、困難かつ時間がかかる場合がある。興味深いかまたは関連するユニフォームリソースロケータ(「URL」)を有するメッセージを提供することができれば、ユーザが同じ情報を見つけ出し確認するのに必要な時間を大幅に短縮することができる。
【0010】
ツイッターなどのソーシャルネットワーキングサイトにおいては、メッセージは、ユーザと、フォロワーまたはフォロイーとして特定される他の個人との間で構成および送信される。フォロワーとは、別のユーザのアカウントプロファイルに登録され、その別のユーザのアカウントプロファイルをフォローする者のことである。アカウントプロファイルがフォローされているその他のユーザは、フォロイーとみなされる。フォロワーとフォロイーとの関係は、相互的または独立的であり得る。興味深いコンテンツを有するメッセージについての推奨物は、特定のユーザのフォロワーおよびフォロイーに基づいて、決定することができる。
図1は、一実施形態による、情報ストリーム中の興味深いコンテンツを推奨するためのシステム10を示すブロック図である。1つ以上のユーザデバイス11〜13が、ウェブサーバ14に接続されている。前記ユーザデバイスのうち少なくとも1つは、ユーザによって制御される。前記ユーザのアカウントプロファイルが、残りのユーザデバイスが前記ユーザのフォロワーおよびフォロイーを含む他のユーザによって制御可能である状態で、推奨物を特定するために確認される。
【0011】
ユーザデバイス11〜13はそれぞれ、インターネットを含む相互ネットワーク23を介して、特定のウェブページ22(例えば、ソーシャルネットワーキングページ)をウェブサーバ20からリクエストする。ウェブサーバ20に接続されたデータベース21内に、ウェブページ22が保存されている。データベース21から、前記リクエストされたウェブページが特定され、ユーザデバイス11〜13に返送される。ユーザデバイス11〜13は、前記リクエストされたウェブページ22を表示して、ユーザが確認および対話できるようにする。リクエストされたウェブページ22がソーシャルネットワーキングサイトである場合、前記ユーザは、メッセージの構成および送信と、他のユーザからのメッセージの受信、確認および応答とをすることができる。メッセージは、ネットワークサーバ24に送信されかつネットワークサーバ24によって受信される。ネットワークサーバ24は、メッセージを保存するために、データベース25に接続される。さらに、送信されたメッセージおよび受信されたメッセージを情報ストリーム内に入れて、ユーザに提供することができる。
【0012】
受信されたメッセージは、ユーザのフォロワーおよびフォロイーなどの他のユーザによって生成することが可能である。フォロワーとは、別のユーザのアカウントプロファイルに加入しているユーザのことであり、その他のユーザの対話をフォローすることができる。一方フォロイーとは、フォロワーによってフォローされている個人ユーザのことである。一実施形態において、フォロワーおよびフォロイーは相互排他的ではない。例えば、AはBのフォロワーであるが、BはAのフォロワーではない。さらなる実施形態において、フォロワーおよびフォロイーは相互排他的である。例えば、AはBのフォロワーであり、BはAのフォロワーである。さらに別の実施形態において、フェイスブックなどの特定のソーシャルネットワーキングサイトにおいて、フォロイーは「友達」とみなされる場合がある。従って、推奨物をリクエストしているユーザは、その他のユーザのフォロワーである場合もあるし、その他のユーザのフォロイーである場合もある。
【0013】
リクエストを受けると、推奨物サーバ14は、リクエスト元ユーザにとって興味深いかまたはリクエスト元ユーザに関連するとみなされたコンテンツポインタを用いて、当該ユーザと関連付けられたメッセージを入手して、メッセージ推奨物を特定することができる。コンテンツポインタにより、ハイパーリンク(例えば、ユニフォームリソースロケータ(URL)または添付ファイル)などを介してリクエスト元ユーザが特定のコンテンツを発見するための情報またはアクセスが得られる。以下に、推奨物の特定について、ソーシャルネットワーキング環境内において発見されたコンテンツポインタとしてのURLに関連して説明するが他の環境および社会的ポインタも可能である。従って、本明細書中用いられる、「社会的ポインタ」または「URL」について言及した場合は、本明細書中他に明記されたものを除いて、その他の用語も含めて言及している。推奨物サーバは、プロファイル生成器15と、スコアモジュール16と、選択モジュール17とを含む。プロファイル生成器15は、入手されたメッセージを分析して、コンテンツプロファイルおよびURLプロファイルを生成する。これらのプロファイルは、推奨物サーバ14に接続されたプロファイルデータベース19に保存することができる。スコアモジュール16は、プロファイルデータベース19からのプロファイルのうち1つ以上にアクセスして、前記入手されたメッセージ中において特定されている1つ以上のURLについて関連度スコアを生成する。これらの関連度スコアは、選択モジュール17に提供される。選択モジュール17は、前記関連付けられた関連度スコアに基づいてURLをランク付けし、前記ランク付けされたURLに閾値を適用する。前記閾値を満たす関連度スコアを有するURLは、ユーザデバイス11〜13上のリクエスト元ユーザに相互ネットワーク23を介して提供されるべき推奨物として選択される。
【0014】
ユーザデバイス11〜13、推奨物サーバ14、ウェブサーバ20およびネットワークサーバ24はそれぞれ、汎用プログラマブルコンピューティングデバイス内に従来から見受けられるコンポーネント(例えば、中央処理装置、メモリ、入力/出力ポート、ネットワークインターフェース、および不揮発性記憶装置)を含むが、他のコンポーネントも可能である。さらに、これらのサーバの代わりのまたはこれらのサーバに加えた他の情報供給源と、前記ユーザデバイスの代わりのまたは前記ユーザデバイスに加えた他の情報消費者が可能である。
【0015】
さらに、ユーザデバイス11〜13と、サーバ14、20および24とはそれぞれ、本明細書中内に開示される実施形態を実施するためのつ以上のモジュールを含み得る。これらのモジュールは、従来のプログラミング言語中のソースコードとして書かれたコンピュータプログラムまたはプロシージャとして実行することができ、オブジェクトまたはバイトコードとして中央処理装置による実行に用いられる。あるいは、これらのモジュールは、集積回路としてハードウェア内に実行してもよいし、あるいは、リードオンリーメモリコンポーネント内に焼いてもよい。多様な実行形態のソースコードおよびオブジェクトおよびバイトコードを、コンピューター可読型記憶媒体(例えば、フロッピーディスク、ハードドライブ、デジタルビデオディスク(DVD)、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)および類似の記憶媒体)上に保持することができる。他の種類のモジュールおよびモジュール機能ならびに他の物理的ハードウェアコンポーネントも可能である。
【0016】
興味深いくかつ関連する情報と思われるコンテンツポインタ(例えば、URL)を有するメッセージについての推奨物をリクエスト元ユーザに提供することは、有用でありかつ時間効率の向上につながり得る。すなわち、リクエスト元ユーザは、受信されたテキスト入力およびコンテンツポインタをそれぞれ確認して、興味深くかつ関連する情報を手作業で特定する必要が無くなり得る。推奨物としてURLを特定する際には、異なる要素組み合わせが考えられ得る。
図2は、興味深いコンテンツを推奨するための異なる要素組み合わせを特定するデータ構造
図30である。要素34の3つのカテゴリ31〜33(例えば、候補URLセットの種類31、候補セット32中のURLの関連度ランキング、およびURLの社会的ランキング33)が考えられている。候補コンテンツポインタカテゴリ31の種類としては、近所候補セット35aまたは人気候補セット35bがある。近所候補セット35aは、リクエスト元ユーザのフォロイーと、フォロイーのフォロイー(FOF)とからのメッセージを考慮する。FOFは、前記リクエスト元ユーザのフォロイー(このフォロイーは、前記リクエスト元ユーザによってフォローされている)によってフォローされているソーシャルネットワーキング環境内にアカウントプロファイルを有する。関連度ランキングカテゴリ32は、前記リクエスト元ユーザまたは前記リクエスト元ユーザのフォロイーおよびFOFによって構成されたメッセージ内において特定される単語およびトピックの関連度に基づいて、コンテンツポインタをランク付けする。前記リクエスト元ユーザによって構成されたメッセージ内において特定される単語およびトピックの関連度は、セルフプロファイルスコア36aとして提供される。前記リクエスト元ユーザのフォロイーおよびFOFによって構成されたメッセージ内において特定される単語およびトピックの関連度は、ネットワークスコア36bによって提供される。その後、前記ランク付けされたコンテンツポインタのうち1つ以上を推奨物として選択することが可能となる。さらに、さらなる実施形態において、コンテンツポインタの関連度ランキング36cは不要である。社会的ランキングカテゴリ33は、社会的投票力37aに基づいて、コンテンツポインタのスコア付けおよびランク付けを行う。社会的投票力37aは、前記リクエスト元ユーザのFOFの信頼性と、各FOFによるメッセージ生成頻度とを考慮する。また、さらなる実施形態において、コンテンツポインタの社会的ランキング37bは不要である。
【0017】
上述した要素に基づけば、前記カテゴリそれぞれから要素を選択した後に前記選択した要素を組み合わせることにより、コンテンツポインタを推奨物として特定するための少なくとも12個の異なる方法を提供することができる。例えば、これら12個の推奨方法を挙げると、人気のある候補セット−関連度ランキング無し−社会的ランキング無し、近所候補セット−関連度ランキング無し−社会的ランキング無し、人気のある候補セット−ネットワークランキング−社会的ランキング無し、人気のある候補セット−自己関連度ランキング−社会的ランキング無し、近所候補セット−ネットワークランキング−社会的ランキング無し、近所候補セット−自己関連度ランキング−社会的ランキング無し、人気のある候補セット−関連度ランキング無し−投票社会的ランキング、人気のある候補セット−近所関連度ランキング−投票社会的ランキング、近所候補セット−ネットワーク関連度ランキング−投票社会的ランキング、人気のある候補セット−自己関連度ランキング−投票社会的ランキング、および近所カテゴリセット−自己関連度ランキング−投票社会的ランキングがる。他の推奨物要素の方法または組み合わせも可能である。
【0018】
興味深いコンテンツポインタ(例えば、URL)を有するメッセージを推奨物として選択するために異なる要素を用いることが可能であるが、全ての方法のシナリオに共通して、普遍的なフローを規定することができる。
図3は、一実施形態による、情報ストリーム中の興味深いコンテンツを推奨する方法40を示すフロー図である。リクエスト元ユーザに提供される可能な推奨物として、コンテンツポインタ(例えば、URL)をそれぞれ含むメッセージの候補セットを生成する(ブロック41)。メッセージの候補セットは、リクエスト元ユーザの近所に基づいて、または、当該ソーシャルネットワーキングサイト内での当該URLの人気に基づいて、生成することができる。近所候補セット内のURLは、前記リクエスト元ユーザのフォロイーおよびFOFから投稿されたメッセージから選択することができる。一方、当該ソーシャルネットワーキングサイトに登録された任意のユーザに送信されたメッセージまたは当該ソーシャルネットワーキングサイトに登録された任意のユーザに送信されたメッセージから、前記メッセージの人気に基づいて、人気のある候補セット内のURLを選択することができる。URLの人気は、当該URLを含む複数のメッセージに基づいて測定することができる。当該URLを含む複数のメッセージは、
図1を参照して上述した推奨物サーバ、ソーシャルネットワーキングサイトまたはサードパーティにより、決定することができる。一例において、多数回投稿されているURLの方が、1人または2人の個人からのメッセージでしか言及されていないURLよりも興味深い可能性が高い。一実施形態において、URLの人気は、所定の期間にわたってまたは絶対年代を通じて、決定することができる。例えば、期間を24時間と設定して、その24時間の期間内に最も人気があるとみなされたURLを、人気のある候補セット内に含められるものとして選択する。最も人気のあるURLは、前記24時間の期間内に各URLについて言及したメッセージの数を特定した後、前記言及されたURL全てに人気閾値を適用することにより、決定することができる。前記URLが前記閾値を満たす場合、前記URLは、前記候補セット内に含められるものとして選択される。
【0019】
任意選択的に、前記期間内に言及された前記URLのうち、一時的興味に関する閾値を満たすURLのみを前記候補セット内に含めることにより、前記URLそれぞれがより確実に興味深いことを保証してもよい。前記一時的興味に関する閾値を満たさないURLは、当該URLの人気に関係無く、各URLと関連付けられたメッセージが生成された日に基づいて、興味深くなくないものとしてみなすことができる。なぜならば、興味深いトピックは、経時的に変化するからである。前記一時的興味に関する閾値を挙げると、所定の期間、絶対年代、または未定の期間(例えば、リクエスト元ユーザが最後に自身のアカウントプロファイルにログインした時刻)がある。前記一時的興味に関する閾値は、自動的に設定してもよいし、リクエスト元ユーザが設定してもよい。例えば、前記興味深い閾値を7日間とし、この7日間は、人気のあるURLが内部で発見されたメッセージが生成された日から測定される。人気のあるURLが、人気のある候補セット内に含められるものとして選択されるのは、その関連付けられたメッセージが過去7日間以内に生成された場合のみである。
【0020】
特定後、各候補URLには、当該URLのリクエスト元ユーザに対する関連度に基づいて、スコアが任意選択的に割り当てられる(ブロック42)。前記関連度スコアは、リクエスト元ユーザの興味のうち少なくとも1つ当該URLの類似度、前記リクエスト元ユーザのフォロイーの興味、前記リクエスト元ユーザのフォロイーの信頼性、および前記フォロイーがメッセージを作成する頻度に基づき得る。
図4はデータ構造
図50であり、関連度スコア51をコンテンツポインタに割り当てる際に用いられるプロファイルの種類を示す。関連度スコアは、コンテンツポインタ(例えば、プロファイル比較をを通じたテキスト入力において発見されたURL、投稿者ベースのスコア付け、またはプロファイル比較および投稿者ベースのスコア付けの組み合わせ)に割り当てられ得る。プロファイル比較スコア付け51では、特定のURLについてのURLプロファイル53と、リクエスト元ユーザのコンテンツプロファイル52および54とを比較して、前記URLと前記リクエスト元ユーザとの間の関連度を特定する。コンテンツプロファイルを挙げると、前記リクエスト元ユーザについてのメッセージおよび前記リクエスト元ユーザからのメッセージに基づいたセルフプロファイル52、前記リクエスト元ユーザのフォロイーに基づいたネットワークプロファイル54がある。以下、セルフプロファイルおよびネットワークプロファイルの生成について、
図6および
図7を参照してさらに説明する。関連度は、コサイン類似度を用いて決定することができる。以下、プロファイル比較を用いた関連度スコアの割り当てについて、
図5を参照してさらに説明する。
【0021】
図3を参照した説明に戻って、社会的ランキングスコアは、候補URLそれぞれに任意選択的に割り当てることができる(ブロック43)。社会的ランキングスコアは、他の個人をフォローすることの多い複数のリクエスト元ユーザのフォロイーと、その他の個人がメッセージを生成する頻度とに依存する。以下、社会的ランキングスコアについて、
図9を参照してさらに説明する。
【0022】
決定後、前記割り当てるられたスコアに基づいて、URLをランク付けすることができる(ブロック44)。関連度ランキングスコアおよび社会的ランキングスコアがどちらともURLに割り当てられている場合、ランクは、関連度スコアと、UALの投票スコアとの組み合わせに基づく。前記ランク付けされたURLのスコアにランキング閾値を適用し、前記閾値を満たすスコアを有するURLを推奨物として選択する(ブロック45)。ランキング閾値を挙げると、絶対値、パーセントまたは有界範囲がある。例えば、4という絶対値をリンク先のURLに適用して、最も高いランキングスコアを有する4つのURLを推奨物として選択することができる。選択された推奨物は、リクエスト元ユーザが確認できるよう、リクエスト元ユーザに提供することができる。推奨物は、URLのみを含んでいてもよいし、あるいは、URLおよび付けられたメッセージを含んでいてもよい。
【0023】
上述したように、コンテンツプロファイルおよびURLプロファイルに基づいて、関連度スコアをURLに割り当てることができる。
図5は、プロファイルの比較によってスコアをURLに割り当てる方法60を例示的に示すフロー図である。コンテンツプロファイルを入手する(ブロック61)。このコンテンツプロファイルは、セルフプロファイルまたはネットワークプロファイルを含み得る。セルフプロファイルまたはネットワークプロファイルは、新規に生成することもできるし、更新することもできるし、あるいはデータベースからアクセスすることも可能である。各コンテンツプロファイルは、URLと関連付けられたメッセージから得られたキーワードのベクトルを含む。セルフプロファイルを生成するには、リクエスト元ユーザからのメッセージまたはリクエスト元ユーザについてのメッセージからキーワードを選択すればよく、ネットワークプロファイルについてのキーワードは、前記リクエスト元ユーザのフォロイーのセルフプロファイルから選択すればよい。以下、セルフプロファイルおよびネットワークプロファイルの生成についてそれぞれ
図6および
図7を参照して説明する。
【0024】
次に、URLについてのプロファイルを入手する(ブロック62)。さらなる実施形態において、コンテンツプロファイルおよびURLプロファイルを同時に入手してもよいし、あるいは、URLプロファイルを入手した後にコンテンツプロファイルを入手してもよい。URLプロファイルも、新規生成、更新、またはデータベースからのアクセスが可能である。URLプロファイルは、当該URLを含むメッセージのうち1つ以上から選択されたキーワードのベクトルを含む。ショートメッセージターム展開を用いて、ごく一部のメッセージにおいて言及されているURLについてのさらなるキーワードを特定する。以下、ターム展開について、
図7を参照してさらに説明する。さらに、以下、URLプロファイルについて、
図8を参照してさらに説明する。
【0025】
入手後、コンテンツプロファイル(これは、セルフプロファイルまたはネットワークプロファイルのいずれかである)と、前記URLプロファイルとを比較(ブロック63)して、プロファイルの類似度に基づいて、関連度ランキングスコアを生成する(ブロック64)。類似度の決定は、コサイン類似度を用いて行うことができる。しかし、他の方法での類似度決定も可能である。
図3を参照して上述したように、生成された関連度ランキングスコアを、ランキングのためのURLと、推奨物としての可能な選択とに割り当てる。
【0026】
コンテンツプロファイルは、リクエスト元ユーザに関するメッセージに基づいたセルフプロファイルか、または、リクエスト元ユーザのフォロイーに基づいたネットワークプロファイルを含み得る。
図6はフロー図であり、リクエスト元ユーザ71についてのセルフプロファイル74を生成する方法70を例示的に示す。リクエスト元ユーザ71が作成したメッセージ72および73と、リクエスト元ユーザ71について言及しているメッセージ72および73とを全て特定する。例えば、前記リクエスト元ユーザが作成した2つのメッセージと、前記リクエスト元ユーザに関する2つのメッセージとを特定する。第1のユーザ作成メッセージは、ドッグパークにおけるサーシャとの運動についての投稿を含み、一方、第2のユーザ作成メッセージは、休暇をとりたいことについての投稿を含む。前記リクエスト元ユーザについて言及しているメッセージは、別のユーザから前記リクエスト元ユーザに向けての、休暇を取るつもりであるの旨についての第1のメッセージと、さらなるユーザから投稿された、前記リクエスト元ユーザと一緒にGreen Lakeに運動をしに行くことについての第2のメッセージとを含む。さらなる実施形態において、前記リクエスト元ユーザが作成したメッセージのみまたは前記リクエスト元ユーザについて言及しているメッセージのみを特定し、これらのメッセージを、前記リクエスト元ユーザについての推奨物を決定する際に用いる。
【0027】
前記特定されたメッセージから単語を抽出し、抽出した単語を、標準的なストップワードリストを通じたフィルタリングのために収集する。一実施形態において、トークン(例えば、名詞、名詞句、および語幹)のみを特定およびフィルタリングする。さらなる実施形態において、同義語を特定およびフィルタリングすることができる。前記抽出された単語から、複数の個別の単語を特定し、これらの単語をベクトルに沿って配置して、セルフプロファイルを生成することができる。個別の単語をセルフプロファイル中に含められるものとして選択する際には、当該セルフプロファイル中で個別の単語が重複しないようにし、かつ、リクエスト元ユーザが作成したかまたはリクエスト元ユーザについて言及しているメッセージのうち1つ以上において個別の単語が特定できるように、選択を行う。
【0028】
上記例に戻って、4つのメッセージ全ての中の単語を抽出し、ストップワードを除去する。ストップワードを挙げると、用いられるサーチエンジンの種類または所定のストップワードのリストによって異なり得る、一般的に用いられる単語がある。「犬」、「公園」、「休暇」、「グリーンレイク」、「運動」および「仕事」という単語が、リクエスト元ユーザのセルフプロファイル内に含められるべき個別の単語として特定される。上述したように、前記プロファイル内に含められるべきものとして選択された単語は、前記プロファイル中のその他の単語全てと異なる単語でなくてはならない。しかし、前記個別の単語を前記メッセージのうち1つ以上において用いることは可能である。
【0029】
以下の式に従って、これらの個別の単語と、関連付けられた強さとを、セルフプロファイルとしてベクトルに沿って羅列する。
【0031】
ここで、mは、前記特定されたメッセージ中の個別の単語の総数であり、キーワードw
iに対するリクエスト元ユーザの興味の強さを示す。リクエスト元ユーザの興味の強さは、以下の等式に基づいて、単語頻度逆ユーザ頻度重み付けスキーム(tf−idf)を用いて計算することができる。
【0032】
【数2】
ここで、tf
u(w
i)は、リクエスト元ユーザが作成したかまたは前記リクエスト元ユーザについて言及しているメッセージ内に置いて単語w
iが使用された回数を示す。Idf
uは、以下の等式に基づいて決定される。
【0033】
【数3】
ここで、uは、前記リクエスト元ユーザのフォロイーの総数であり、少なくとも1つのメッセージにおいて前記単語を用いてメッセージを作成した前記ユーザのフォロイーの数である。さらなる実施形態において、uは、ソーシャルネットワーキング環境内の他のユーザの総数であり、|u(w
i)|は、少なくとも1つのメッセージにおいて前記単語を用いてメッセージを作成したその他のユーザの数である。uは他の値であってもよく、例えば、前記リクエスト元ユーザと直接通信した他のユーザや、1つ以上のメッセージにおいて前記リクエスト元ユーザについて言及した他のユーザなどであってもよい。ある単語についてtf値が高い場合、これは、リクエスト元ユーザがその単語を頻繁に用いていることを示し、すなわち、高い興味を示している。一方、ある単語についてidf値が高い場合、これは、この単語を用いている他のユーザは少数であることを示し、すなわち、1人のユーザを他の個人と区別する際にその単語を良好に用いることができることを示す。上記例に戻って、ベクトルに沿って表示されている個別の単語それぞれに対し、強さ値を割り当てる。強さは、パーセントとしてまたは絶対数として測定することが可能である。他にも、強さを決定するための測定および方法がある。
【0034】
前記個別のキーワードから生成されたセルフプロファイルは、前記リクエスト元ユーザから投稿されたコンテンツに基づいて、前記リクエスト元ユーザの興味をモデリングする。しかし、リクエスト元ユーザの興味が、フォロイーなどの他のユーザから投稿されたコンテンツ内にある場合もある。ネットワークプロファイルは、リクエスト元ユーザのフォロイーのセルフプロファイルに基づいて、生成することができる。
図7はフロー図であり、リクエスト元ユーザ81についてのネットワークプロファイル84を生成する方法80を例示的に示す。前記リクエスト元ユーザのフォロイー82を、リクエスト元ユーザ81の加入先となっておりリクエスト元ユーザ81によってフォローされいるアカウントを有する全ての個人として特定することができる。フォロイー82それぞれと関連付けられたセルフプロファイル83を入手する。例えば、リクエスト元ユーザは、フォロイーと思われる他の4人のユーザをフォローしており、前記4人のフォロイーについてのセルフプロファイルを入手する。各フォロイーについて、当該単語に対するフォロイーの興味の関連付けられた強さに基づいて、セルフプロファイル中の個別の単語を降順にランク付けする。個別の単語のうち、関連付けられたtf−idf値によって示される興味値が最も高いものを、当該フォロイーの高興味単語として選択する。このフォロイーの高興味単語は、閾値を用いて選択することができる。閾値を挙げると、絶対値、パーセントまたは有界範囲がある。他の閾値も可能である。一実施形態において、閾値は20パーセントとして設定される。そのため、ランク付けされた順位内の個別の単語のうち上位20パーセントを高興味単語として選択し、これらの高興味単語は、ネットワークプロファイル84内に含められる。さらなる実施形態において、1人のフォロイーのみしか言及していない単語全てをネットワークプロファイルから除去する。前記フォロイーそれぞれの高興味単語を組み合わせ、そのグループのフォロイーの高興味単語を選択する。
【0035】
上記例に戻って、個別の単語およびその強さを、前記4人のフォロイーそれぞれのセルフプロファイル内において特定する。各フォロイーセルフプロファイルにおいて、個別の単語のうち最も強さが大きな単語(例えば、閾値を満たす個別の単語)を、前記フォロイーの高興味単語として選択する。各フォロイーの高興味単語を組み合わせて、グループ高興味単語を生成する。このグループ高興味単語について、当該グループによる興味の強さを各単語について決定する。グループ高興味単語は、「映画」、「熱帯」、「クラブ」、「休暇」および「親友」である。しかし、「映画」という用語は、前記フォロイーのうち1人が作成したメッセージにおいてしか言及されていないため、この用語を除去した後、ネットワークプロファイルを生成する。
【0036】
ネットワークプロファイルは、前記グループ高興味単語と、その関連付けられたグループ強さから生成することができる。このグループ強さは、上述したようなtf−idf重み付けスキームを用いて決定することができる。このスキームにおいて、tf
u(w
i)は、特定の単語w
iを高興味単語として有する、リクエスト元ユーザのフォロイーの数である。そのため、tf
u(w
i)の値が高い場合、これは、前記リクエスト元ユーザのフォロイーのうち多くの者が共通して特定の単語w
iを用いたメッセージを生成していることを示す。この値から、上述したような等式3に基づいて決定された単語の一般的重要性を知ることができる。
【0037】
さらなる実施形態において、ネットワークプロファイルを、リクエスト元ユーザの高興味単語から生成することができる。これらのリクエスト元ユーザの高興味単語は、リクエスト元ユーザのフォロイーおよびFOFによっても用いられている。例えば、前記リクエスト元ユーザが作成したメッセージにおいて共通して用いられている単語をセルフプロファイルから選択し、前記リクエスト元ユーザのフォロイーおよびFOFによって作成されたメッセージ内において特定する。その後、前記選択された単語の強さを決定することができる。
【0038】
前記リクエスト元ユーザのフォロイーそれぞれについての選択された高興味単語と、ベクトルに沿って配置された関連付けられた強さとを組み合わせることにより、ネットワークプロファイルを生成する。上記例に戻って、ベクトルに沿って配置されているグループ高興味単語である「熱帯」、「クラブ」、「休暇」および「親友」について、強さを決定することで、ネットワークプロファイルを生成する。
【0039】
URLなどのコンテンツポインタをプロファイルによって表すこともできる。
図8はフロー図であり、コンテンツポインタプロファイル93を生成する方法90を例示的に示す。コンテンツポインタプロファイル93は、キーワードと、ベクトルに沿って発見された興味の関連付けられた強さとを含み、これにより、URLなどのコンテンツポインタのトピックを表す。インデックス、ファイル名、検索語および添付ファイルなどの他のコンテンツポインタも可能である。前記コンテンツポインタを含むメッセージから、トピックを決定することができる。前記コンテンツポインタプロファイルは、
図6を参照して説明したtf−idf重み付けスキームを用いて、コンテンツプロファイルと同様に生成される。例えば、メッセージ91を特定して、特定のコンテンツポインタ92を含むメッセージを特定する。その後、特定されたメッセージ92を分析して、各メッセージ内に含まれる単語を抽出する。これらの抽出された単語は、標準的なストップワードリストを通じてフィルタリングされて、共通の単語を除去する。一実施形態において、名詞、名詞句および語幹を含む単語トークンのみを特定し、フィルタリングする。さらなる実施形態において、同義語を特定し、フィルタリングすることができる。前記抽出された単語から複数の個別の単語を特定し、ベクトルに沿って配置して、コンテンツポインタプロファイル93を生成することができる。個別の単語が、コンテンツポインタプロファイル93内に含められるものとして選択され、これにより、前記コンテンツポインタプロファイル内において個別の単語が重複せず、かつ、前記コンテンツポインタについて言及しているメッセージのうち1つ以上内において、前記個別の単語を特定することができる。上記例に基づいて、「引き取り」、「子犬」、「サーシャ」、「猫」、「ノンニ」、「動物愛護協会」、および「ペット」という単語が、興味の関連付けられた強さと共にコンテンツポインタプロファイル内に含められるものとして、個別の単語として選択される。
【0040】
各個別の単語と関連付けられた興味の強さは、当該コンテンツポインタの記述における個別の単語の使用様態に基づくことができ、上記したtf−idf重み付けスキームに基づいて決定することができる。しかしtf
u(w
i)の値は、関連付けられたメッセージ中でコンテンツポイントを記述するために単語が何回使用されたかを示す。一実施形態において、コンテンツポインタの記述において或る単語の使用回数が多いほど、その単語の前記コンテンツポインタに対する関連度が高くなる。さらに、前idf
u値から、上記したような等式3に従って決定された単語の一般的重要性が分かる。上記例に戻って、前記選択された個別の単語それぞれについての興味スコアを決定し、ベクトルに沿って配置して、コンテンツポインタプロファイルを生成する。さらなる実施形態において、少数のメッセージにしかコンテンツポインタが含まれていない場合、ショートメッセージターム展開を適用して、前記URLプロファイル内に含められるべきさらなる単語を特定する。ターム展開時において、コンテンツポインタを有するメッセージからトークン(例えば、名詞、名詞句および語幹)を抽出し、前記抽出されたトークンに基づいてクエリを生成する。このクエリを、1組の文書(例えば、ウェブベースの文書、あるいは、リモートに保存された電子文書またはローカルに保存された電子文書)に適用する。前記サーチクエリの1つ以上のトークンとマッチする文書が、検索結果として特定される。これらの検索結果を分析して、サーチエンジンを介してまたはtf−idfを用いて顕著なタームを特定する。tf−idfを適用した場合、最も高いtf−idf値を有する検索結果文書中に出現するトークンが、顕著なタームとして選択される。これらの特定された顕著なタームは、個別の単語としてコンテンツポインタプロファイルに付加され得る。ショートメッセージターム展開については、本発明の譲受人に譲渡された米国特許出願シリアル番号第12/646,810号(タイトル:「System and Method For Identifying Topics For Short Text Communications」、出願日:2009年12月23日)中にさらに記載がある。本明細書中、同文献の開示菜用を参考のため援用する。
【0041】
プロファイルに基づいたスコア付けコンテンツポインタのスコア付けに加えて、投稿者ベースのスコア付け方法も用いることができる。
図9はフロー図であり、投稿者ベースのスコア付けを用いてスコアをURLに割り当てる方法100を例示的に示す。リクエスト元ユーザと関連付けられた投稿者近隣を特定する(ブロック101)。投稿者近隣は、リクエスト元ユーザのフォロイーのフォロイーを含み得る(FOF)。他の種類の近隣も可能である。FOFが持っているアカウントプロファイルはリクエスト元ユーザのフォロイーによってフォローされており、リクエスト元ユーザのフォロイーは、前記リクエスト元ユーザによってフォローされている。特定のコンテンツポインタ(例えば、URL)をメッセージ中に投稿した個人FOFを特定する(ブロック102)。前記FOFの信頼性および前記FOFによって生成された複数のメッセージに基づいて、これらの特定されたFOFそれぞれに、投票スコアを割り当てる(ブロック103)。
【0042】
信頼性投票スコアとしては絶対数またはパーセントがあり、当該ユーザとやり取りされた複数のメッセージ、当該ユーザと個人との間で共有されている他の複数の個人、および前記ユーザおよび前記個人が作成したメッセージコンテンツの類似度に基づき得る。他の信頼性決定法も可能である。一方、FOFによって生成されたメッセージの数は、所定の期間にわたってまたは有界の時間範囲内において計算することができる。割り当てられた投票力は、特定のFOFをフォローしているリクエスト元ユーザのフォロイーの数の対数に比例し得、かつ、前記特定のFOFによってメッセージが生成される平均時間間隔の対数にも比例する。このように、一実施形態において、より少数のメッセージを生成するFOFに対し、より高い投票力を割り当てる一方、頻繁にメッセージを生成するFOFに対し、より低い投票力を割り当てる。さらに、リクエスト元ユーザのフォロイーのうちの多くによってフォローされるFOFは、前記リクエスト元ユーザのフォロイーのうちより少数によってフォローされているFOFよりもより信頼性が高いとみなすことができる。従って、前記FOFをフォローしている前記リクエスト元ユーザのフォロイーが多いほど、より投票力が得られる。さらなる実施形態において、前記FOFのうち誰も前記特定のコンテンツポインタについて言及していない場合、投票力が最も低い単一のFOFによる言及と同等の投票スコアが割り当てられる。他の投票スコア割り当て方法が可能である。
【0043】
決定後、前記FOFそれぞれの投票力を合計(ブロック104)して、前記コンテンツポインタについての投票スコア(ブロック105)を生成する。
図3を参照した説明に戻って、全ての候補コンテンツポインタを関連度ランキングまたは社会的ランキングを通じてスコア付けした後、前記関連付けられたスコアに基づいて、前記コンテンツポインタをランク付けする。関連度ランキングスコアおよび社会的ランキングスコアがどちらともURLに割り当てられている場合、そのランクは、前記関連度スコアおよび前記URLの投票スコアの組み合わせに基づく。前記ランク付けされたコンテンツポインタのスコアにランク閾値を適用し、スコアが前記ランク閾値を満たしているコンテンツポインタを推奨物として選択する。選択後、前記推奨物を前記リクエスト元ユーザに提供し、確認することができる。これらの推奨物は、前記URLのみを含んでいてもよいし、あるいは、前記URLおよび関連付けられたメッセージを含んでもよい。リクエスト元ユーザに提供された推奨物は、推奨物ウェブページ上でアクセスおよび表示することができる。
図10はスクリーンショット110であり、リクエスト元ユーザに対する推奨物112および113を表示するウェブページ111を例示的に示す。推奨物112および113は、単一のリストとして提供してもよいし、あるいは、推奨物の種類に応じて別個に提示してもよい。一実施形態において、これらの推奨物は、コンテンツ推奨物113または人気のある推奨物114として分類されている。コンテンツ推奨物113は、コンテンツポインタの近所候補セットに基づいている。人気のある推奨物114は、コンテンツポインタの人気のある候補セットに基づいている。
図3を参照して上述したように、推奨物としての可能な選択対象としての1組の候補コンテンツポインタは、前記リクエスト元ユーザの近所またはソーシャルネットワーキング環境内におけるコンテンツの人気に基づいて、生成することができる。近所候補セットから選択された推奨物は一般的には、前記リクエスト元ユーザが既に知っているかまたは精通している情報に関し、一方、人気のある候補セットから選択された推奨物は、前記リクエスト元ユーザが受信した情報と比較してなじみが無いかまたは正反対の内容を含む傾向がある。
【0044】
前記表示された推奨物はそれぞれ、関連性ボックス118を含む。リクエスト元ユーザは、関連性ボックス118に入力を行って、推奨物のコンテンツを既に知っているかまたはリクエスト元ユーザが推奨物のコンテンツに興味があるかまたは無いかについて示すことができる。関連性ボックス118は、チェックボックスまたは記入式ボックスと、リクエスト元ユーザからの情報を受け取るための他の種類のフォーマットとを含み得る。前記関連性チェックボックスを介して前記リクエスト元ユーザから得られた情報を用いて、前記リクエスト元ユーザのコンテンツプロファイルを更新し、その投票力を調節することができる。
【0045】
推奨物の提示は、リクエスト元ユーザが1組の提示ツール115を介して決定してもよいし、あるいは、自動的に決定してもよい。提示ツールを挙げると、コンテンツスライディングバー116および表示チェックボックス117がある。コンテンツスライディングバー116を用いた場合、リクエスト元ユーザは、推奨物内に含まれるコンテンツの範囲をリクエストすることができる。コンテンツスライディングバーの一端では、URLのネットワーク候補セットからの全推奨物が提供される。その他端では、URLの人気のある候補セットから選択された全推奨物が提供される。その中間では、コンテンツ推奨物および人気のある推奨物をほぼ等量で混合したものが提供される。
【0046】
一実施形態において、ネットワークおよび人気のある推奨物の選択に用いられるコンテンツ範囲は、単一の選択可能なスライディングバー制御部内に含まれる。しかし、ユーザが調節可能なスライディングバー制御部を別個に設けることも可能である。他の種類の制御も可能であり、例えば、回転ノブまたはギンベルノブを別個に使用するかまたは組み合わせて使用してもよいし、スライダーバー、ラジオボタンおよび他のユーザ入力機構により、t一定範囲の回転、移動または選択を介して連続的または不連続的に選択が行えるようにしてもよい。表示チェックボックス117は、トップ推奨物、全推奨物、単一の推奨物ストリーム、コンテンツおよび人気のある推奨物についての別個の推奨物リスト、各推奨物のタイトル、または各推奨物の要旨を含み得る。他の表示要素も可能である。
【0047】
さらなる実施形態において、リクエスト元ユーザは、複数の推奨物ウェブページにログインすることができる。各ウェブページは、推奨物ソース(例えば、ソーシャルネットワーキングサイト、eメール、またはRSSフィード)を表し得る。他のソースも可能である。最低でも、ソースを介してユーザ、通信されているコンテンツおよび通信履歴が特定できなければならない。
【0048】
さらに別の実施形態において、活性化拡散を用いて、社会的ネットワークまたは他のコンテンツポインタ環境を通じて伝播させることができる。例えば、ある環境内にいるリクエスト元ユーザに対してコンテンツポインタにより推奨物を特定する場合、その環境内の他のユーザ(例えば、FOFのフォロイー)を考慮することができる。しかし、前記リクエスト元ユーザから除去されるその他のユーザの数が多いほど、考慮時における重みが低減する。活性化拡散を用いて、その他のユーザを一般化することができる。
【0049】
推奨物の特定について、ソーシャルネットワーキング環境およびURLに言及しつつ上記において説明してきたが、他の環境およびコンテンツポインタも可能である。そのような環境としては、eメールおよびデータベースがある。eメール環境においては、コンテンツポインタは添付ファイルを含み得、データベース環境においては、コンテンツポインタはファイル名またはインデックスを含み得る。eメール環境において、コンテンツプロファイルおよびコンテンツポインタプロファイルは、eメールのコンテンツに基づいて生成することができる。eメールから単語が抽出されて、プロファイルベクトルが生成され、単語強さは、リクエスト元ユーザのアドレス帳中の連絡先またはリクエスト元ユーザと直接通信したことのある連絡先に基づき得る。他の環境およびコンテンツポインタも可能である。