(57)【特許請求の範囲】
【請求項１】
少なくとも１つのプロセッサ、及び少なくとも１つの前記プロセッサによって実行される少なくとも１つのプログラムを記憶したメモリを含むコンピュータシステムが、
ソーシャルメディアユーザを表すノード、前記ソーシャルメディアユーザによって生成されたメッセージを表すノード、及び施設を表すノードを含むソーシャルネットワークグラフにアクセスし、
前記ソーシャルネットワークグラフに表される施設は、複数の主要施設及び非施設を含み、
ソーシャルメディアメッセージノード及び非施設に対応するノードの間の前記ソーシャルネットワークグラフのリンクはソーシャルメディアメッセージが前記主要施設の何れにも対応していないことを示し、
複数の訓練特徴ベクトルを構築し、
訓練特徴ベクトルの各々は、ソーシャルメディアメッセージの各々及び施設の各々の間の連結性を測定するために、前記ソーシャルネットワークグラフによるパスを使用する複数の特徴の各々を含み、
ソーシャルメディアメッセージが施設と関連する確率を推定するために、前記訓練特徴ベクトルを用いて分類手段を訓練し、
新しいソーシャルメディアメッセージをユーザから受信し、
新しい前記ソーシャルメディアメッセージの特徴ベクトルを構築し、
特徴ベクトルの各々は、新しい前記ソーシャルメディアメッセージ及び非施設の間の連結性を測定するために、前記ソーシャルネットワークグラフによるパスを使用する複数の特徴を含み、
新しい前記ソーシャルメディアメッセージが前記非施設と関連付けられている確率を計算するための入力として前記特徴ベクトルを用いて、訓練した前記分類手段を実行し、
計算した確率が所定の閾値を越える場合、新しい前記ソーシャルメディアメッセージが前記主要施設の何れにも関連付けられていないことを判定し、
計算した確率が前記所定の閾値以下である場合、新しい前記ソーシャルメディアメッセージが前記主要施設の１つと関連付けられていることを判定する、
ソーシャルメディアメッセージ及び施設の間のリンクを推定する方法。
【請求項２】
計算した前記確率を、前記所定の閾値と比較する前に正規化する、
請求項１に記載の方法。
【請求項３】
前記分類手段を用いて、ソーシャルメディアメッセージが施設と関連付けられている確率の中央値を計算し、
計算した前記確率を正規化するために前記確率の中央値を使用する、
請求項２に記載の方法。
【請求項４】
訓練特徴ベクトルの各々は、ソーシャルメディアメッセージの各々が施設の各々に関連付けられているか否かを示すラベルを含み、
訓練特徴ベクトルの各々の少なくとも１つの特徴は、前記ソーシャルネットワークグラフによるパスのタイプの各々に基づく計測値を含む、
請求項１〜請求項３の何れか一項に記載の方法。
【請求項５】
第１特徴は、ユーザのソーシャルメディアメッセージから施設への前記ソーシャルネットワークグラフによる直接的なパスに対応する、
請求項４に記載の方法。
【請求項６】
第２特徴は、ユーザのソーシャルメディアメッセージから施設への前記ソーシャルネットワークグラフによるともだちの接続を介したパスに対応する、
請求項４又は請求項５に記載の方法。
【請求項７】
前記ソーシャルネットワークグラフは施設カテゴリに対応するノードを含み、
第３特徴は、共通施設カテゴリを共有する施設のペアを接続する前記ソーシャルネットワークグラフによるパスに対応する、
請求項４〜請求項６の何れか一項に記載の方法。
【請求項８】
前記ソーシャルネットワークグラフは、前記ソーシャルメディアメッセージのコンテンツワードに対応するノードを含み、
第４特徴は、少なくとも１つの共有コンテンツワードを有するノードのペアを接続する前記ソーシャルネットワークグラフによるパスに対応する、
請求項４〜請求項７の何れか一項に記載の方法。
【請求項９】
複数の訓練特徴ベクトルを構築することは、
ソーシャルメディアメッセージの各々と施設の各々とを接続する前記ソーシャルネットワークグラフによるパスのタイプの各々についてパスカウントを取得し、
前記訓練特徴ベクトルの特徴として前記パスカウントを設定する、
請求項４〜請求項８の何れか一項に記載の方法。
【請求項１０】
訓練特徴ベクトルの第５の特徴は、施設の各々とユーザによって生成され予め位置情報タグが付与されたソーシャルメディアメッセージの物理座標との間の物理距離を計測する、
請求項１〜請求項９の何れか一項に記載の方法。
【請求項１１】
前記分類手段は、サポートベクターマシンを用いて訓練される、
請求項１〜請求項１０の何れか一項に記載の方法。
【請求項１２】
前記主要施設は、所定領域、施設のタイプ、施設の名称、ユーザの嗜好、施設推定の履歴及びソーシャルメディアメッセージと関連付けられている地理座標からの距離の少なくとも１つに基づいて選択される、
請求項１〜請求項１１の何れか一項に記載の方法。
【請求項１３】
新しい前記ソーシャルメディアメッセージは位置情報タグを付与されていない請求項１〜請求項９の何れか一項に記載の方法。
【請求項１４】
新しい前記ソーシャルメディアメッセージが前記主要施設に関連付けられていることが判定された後、前記ソーシャルメディアメッセージに対応する施設として前記主要施設の特定の第１施設を判定するために順位付けプロセスを適用することをさらに含む、
請求項１〜請求項１３の何れか一項に記載の方法。
【請求項１５】
前記順位付けプロセスは、
少なくとも複数の前記主要施設について確率スコアを計算し、
前記ソーシャルメディアメッセージに対応する施設として最高確率スコアを有する前記主要施設の少なくとも１つを識別する、
ことを含む、
請求項１４に記載の方法。
【請求項１６】
少なくとも１つのプロセッサと、
メモリと、
少なくとも１つの前記プロセッサによって実行されるように構成された前記メモリに記憶されている少なくとも１つのプログラムと、
を含み、
少なくとも１つの前記プログラムは、
ソーシャルメディアユーザを表すノード、前記ソーシャルメディアユーザによって生成されたソーシャルメディアメッセージを表すノード、及び施設を表すノードを含むソーシャルネットワークグラフにアクセスし、
前記ソーシャルネットワークグラフで表される施設は、複数の主要施設及び非施設を含み、
ソーシャルメディアメッセージノード及び前記非施設に対応するノードの間の前記ソーシャルネットワークグラフのリンクはソーシャルメディアメッセージが前記主要施設の何れにも対応していないことを示し、
複数の訓練特徴ベクトルを構築し、
訓練特徴ベクトルの各々が、ソーシャルメディアメッセージの各々及び施設の各々の間の連結性を測定するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴の各々を含み、
前記訓練特徴ベクトルを用いて、ソーシャルメディアメッセージが施設と関連付けられている確率を推定するために分類手段を訓練し、
ユーザから新しいソーシャルメディアメッセージを受信し、
新しい前記ソーシャルメディアメッセージについて特徴ベクトルを構築し、
特徴ベクトルの各々は、新しい前記ソーシャルメディアメッセージ及び非施設の間の連結性を測定するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴を含み、
新しい前記ソーシャルメディアメッセージが前記非施設と関連付けられている確率を計算するための入力として前記特徴ベクトルを使用して訓練した前記分類手段を実行し、
計算した前記確率が所定の閾値よりも大きい場合、新しい前記ソーシャルメディアメッセージが前記主要施設の何れとも関連付けられていないことを判定し、
計算した前記確率が前記所定の閾値以下の場合、新しい前記ソーシャルメディアメッセージが前記主要施設の１つと関連付けられていることを判定する、
命令を含む、
ソーシャルメディアメッセージ及び施設の間のリンクを推定するコンピュータシステム。
【請求項１７】
計算した前記確率は、前記所定の閾値と比較する前に正規化される、
請求項１６に記載のコンピュータシステム。
【請求項１８】
少なくとも１つの前記プログラムは、
前記分類手段を用いて、ソーシャルメディアメッセージが施設と関連付けられている確率の中央値を計算する、
命令をさらに含み、
計算した前記確率を正規化することは前記確率の中央値を使用する、
請求項１７に記載のコンピュータシステム。
【請求項１９】
訓練特徴ベクトルの各々は、前記ソーシャルメディアメッセージの各々が前記施設の各々に関連付けられているか否かを示すラベルを含み、
訓練特徴ベクトルの各々の少なくとも１つの特徴は、前記ソーシャルネットワークグラフによるパスのタイプの各々に基づく計測値を含む、
請求項１８に記載のコンピュータシステム。
【請求項２０】
ソーシャルメディアユーザを表すノード、前記ソーシャルメディアユーザによって生成されたソーシャルメディアメッセージを表すノード、及び施設を表すノードを含むソーシャルネットワークグラフにアクセスし、
前記ソーシャルネットワークグラフに示される施設は、複数の主要施設及び非施設を含み、
ソーシャルメディアメッセージノード及び前記非施設に対応するノードの間の前記ソーシャルネットワークグラフのリンクは、前記ソーシャルメディアメッセージが前記主要施設の何れにも対応しないことを示し、
複数の訓練特徴ベクトルを構築し、
訓練特徴ベクトルの各々は、ソーシャルメディアメッセージの各々及び施設の各々の間の連結性を計測するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴の各々を含み、
前記訓練特徴ベクトルを用いて、ソーシャルメディアメッセージが施設と関連付けられている確率を推定するために分類手段を訓練し、
ユーザから新しいソーシャルメディアメッセージを受信し、
新しい前記ソーシャルメディアメッセージについて特徴ベクトルを構築し、
特徴ベクトルの各々は、新しい前記ソーシャルメディアメッセージ及び非施設の間の連結性を測定するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴を含み、
新しい前記ソーシャルメディアメッセージが前記非施設と関連付けられている確率を計算するために入力として前記特徴ベクトルを用いて訓練した前記分類手段を実行し、
計算した前記確率が所定の閾値より大きい場合、新しい前記ソーシャルメディアメッセージが前記主要施設の何れにも関連付けられていないことを判定し、
計算した前記確率が前記所定の閾値以下である場合、前記ソーシャルメディアメッセージが前記主要施設の１つと関連付けられていることを判定する、
処理をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソーシャルメディアメッセージ及び施設の間のリンクを推定する方法、コンピュータシステム、及びプログラムに関する。
【背景技術】
【０００２】
ソーシャルプラットフォーム（例えば、ツイッター）は、アクティビティ、考え及び評価を共有するためによく使用されている。ソーシャルメディアメッセージに位置情報タグを付与（例えば、物理的な位置もしくは施設とツィートとを関連付ける）することによって、アプリケーションは、位置情報に基づいてユーザの経験をパーソナライズすることができる。しかしながら、プライバシーの観点から、ソーシャルメディアメッセージを投稿する際に位置を公開することを選択するユーザの割合は少なく、多くのユーザは特別な場合にだけメッセージを投稿した位置を公開する。
【０００３】
明示的に位置情報タグが付与されているソーシャルメディアメッセージの割合はたいへん少ないので、他の情報（例えば、メッセージのコンテンツ）に基づくソーシャルメディアメッセージの位置の推定が有用である。例えば、ある研究によれば、位置情報タグが付与されているツィートは１％に満たない。位置情報タグが付与されていないメッセージについて、アプリケーションのいくつかは、メッセージのテキストコンテンツに基づいて位置を推定する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】「ビジネスロケーションのソーシャルメディアベースプロファイリング（Social Media-based Profiling of Business Locations）」、位置情報タグ及びマルチメディアにおけるその応用に関する第３回ＡＣＭマルチメディアワークショップ抄録（Proceedings of the 3rd ACM Multimedia Workshop on Geotagging and its Applications in Multimedia）、２０１４年、頁１〜６
【非特許文献２】ジャン（Zhang）、「メタパスベースマルチネットワーク集合リンク予測（Meta-path based Multi-Network Collective Link Prediction）」、２０１４年８月２４日〜２７日、頁１０
【非特許文献３】ラケシュ（Rakesh）、「位置特定ツィート検出及びツィッター（登録商標）のトピック要約（Location-Specific Tweet Detection and Topic Summarization in Twitter（登録商標））」、ソーシャルネットワーク分析及びマイニングの進展に関するＩＥＥＥ／ＡＣＭ国際会議（IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining）、２０１３年８月２５日〜２８日、頁４
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、メッセージは、明確な位置信号を有さず、様々な日常のアクティビティ（例えば、食事、スポーツ、感情、評価）を混合し得る。さらに、多くのソーシャルメディアメッセージ（例えば、ツィート）は短く、フォーマルではない。したがって、明確な地理用語はコンテンツに全く現れないかもしれない。適切な場所の名称が含まれていたとしても、特定の位置を識別することは困難であるし、チェーン店の場合はさらに困難である。例えば、バークレイのスターバックスサイトに関連するツィートのコンテンツとスタンフォードのスターバックスサイトに関連するコンテンツとに大差はない。したがって、どちらの店舗からツィートが投稿されたか、ツィートのコンテンツから知ることは容易ではない。
【０００６】
位置情報タグを付与されていないソーシャルメディアメッセージの位置を推定することで、ユーザの地理コンテンツの理解を容易にすることができる。これにより、サーチクエリーの地理的意図のより適切な推定、より適切な広告の配置及びイベントに関する情報、関心点、ユーザの地理的近傍にいる人々の表示が可能となる。ソーシャルメディアメッセージに対応する地理位置を識別する従来のシステム及び方法は、位置検出に使用する技術に基づいて大きく２つのグループに分類することができる。（１）ソーシャルメディアメッセージのコンテンツ分析、及び（２）ユーザのソーシャル関係に基づく推定、である。システムのいくつかはユーザの位置を推定することに焦点を当て、他のシステムは個別のソーシャルメディアメッセージに関連する位置を推定することに焦点を当てている。
【０００７】
位置推定の問題の一つは、全てのソーシャルメディアメッセージが位置又は施設に関連付けられているわけではない、ということである。位置情報タグを付与されていないソーシャルメディアメッセージが与えられた場合、アプリケーションのいくつかは複数の施設の各々について確率を計算し、最も高い確率を有する一つ（もしくは複数の）正しい施設を類推する。しかしながら、この技術は、メッセージが何れの施設にも全くリンクされるべきでない場合、ソーシャルメディアメッセージと施設とを不適切に関連付けるかもしれない。
【課題を解決するための手段】
【０００８】
ソーシャルメディアメッセージを施設に自動的に割り当てる際に、重要な第一歩は、少なくとも１つの関心を有する施設に、位置情報タグを付与されていないメッセージが実際に「リンク」されているか否か判定することである。リンクは、メッセージが当該施設で投稿されたことを示す。次に、関心を有する少なくとも１つの施設にリンクされているメッセージだけをさらに分析する。例えば、施設は予測されてもよいし、候補施設は順位付けされてもよい。
【０００９】
開示の実装は、ソーシャルネットワーク分析に基づく施設リンク検出の方法を提供する。ネットワークは関心を有する施設を表すノードを含む。ネットワークは、「非施設」を表す特殊なノードも含む。リンク検出手段は、関心を有する施設で投稿されたメッセージ及び何れの施設にも関連しないメッセージに関して訓練される。訓練されたモデル及び保存されている統計値を用いて、位置情報タグを付与されていないメッセージが施設の各々にリンクされている確率を計算する。実装のいくつかにおいて、統計値は、次に、メッセージが非施設ノードにリンクされている確率を正規化するために使用される。統計値は、メッセージが施設の少なくとも１つにリンクされているか否かを判定するために使用される。
【００１０】
開示の実装は、ユーザによって生成されたコンテンツが施設の何れかにリンクされているか否か識別するために様々なソーシャルネットワークに適用することができる。ソーシャルネットワークは、例えば、様々なマイクロブログ及びモバイルソーシャルメディアの投稿、ユーザによって撮影された写真、及び紙媒体著作出版施設ネットワークなどを含む。
【００１１】
本開示の実装によるシステム及び方法は、ユーザによる他のソーシャルメッセージ（例えば、ツィート、フェイスブックの投稿など）及びユーザの属するソーシャルネットワークの他の人々によって投稿されたメッセージも利用する。実装のいくつかにおいて、構築された異種情報ネットワークに埋め込まれたソーシャルアクティビティを分析し、例えば、地理データを利用することによって、問題を解決する。
【００１２】
実装のいくつかは、代替的なコンテキストに同様の技術を適用する。詳細には、コンテンツが関心点（ＰＯＩ）で生成されたか否かを推定するために、開示の技術を適用してもよい。例えば、写真、ユーザ及び関心点のソーシャルネットワークグラフを生成することで、当該技術によれば、（位置情報タグを付与されていない）写真が関心点で生成されたか否か推定することができる。同様に、提出紙媒体、著者及び会議のソーシャルネットワークグラフを生成することで、開示の技術によれば、紙媒体が会議で生成されたか否か推定することができる。
【００１３】
第１実施形態は、ソーシャルメディアメッセージ及び施設の間のリンクを推定する方法であって、少なくとも１つのプロセッサ、及び少なくとも１つの前記プロセッサによって実行される少なくとも１つのプログラムを記憶したメモリを含むコンピュータシステムが、ソーシャルメディアユーザを表すノード、前記ソーシャルメディアユーザによって生成されたメッセージを表すノード、及び施設を表すノードを含むソーシャルネットワークグラフにアクセスし、前記ソーシャルネットワークグラフに表される施設は、複数の主要施設及び非施設を含み、ソーシャルメディアメッセージノード及び非施設に対応するノードの間の前記ソーシャルネットワークグラフのリンクはソーシャルメディアメッセージが前記主要施設の何れにも対応していないことを示し、複数の訓練特徴ベクトルを構築し、訓練特徴ベクトルの各々は、ソーシャルメディアメッセージの各々及び施設の各々の間の連結性を測定するために、前記ソーシャルネットワークグラフによるパスを使用する複数の特徴の各々を含み、ソーシャルメディアメッセージが施設と関連する確率を推定するために、前記訓練特徴ベクトルを用いて分類手段を訓練し、新しいソーシャルメディアメッセージをユーザから受信し、新しい前記ソーシャルメディアメッセージの特徴ベクトルを構築し、特徴ベクトルの各々は、新しい前記ソーシャルメディアメッセージ及び非施設の間の連結性を測定するために、前記ソーシャルネットワークグラフによるパスを使用する複数の特徴を含み、新しい前記ソーシャルメディアメッセージが前記非施設と関連付けられている確率を計算するための入力として前記特徴ベクトルを用いて、訓練した前記分類手段を実行し、計算した確率が所定の閾値を越える場合、新しい前記ソーシャルメディアメッセージが前記主要施設の何れにも関連付けられていないことを判定し、計算した確率が前記所定の閾値以下である場合、新しい前記ソーシャルメディアメッセージが前記主要施設の１つと関連付けられていることを判定する。
【００１４】
第２実施形態は、第１実施形態の方法であって、計算した前記確率を、前記所定の閾値と比較する前に正規化する。
【００１５】
第３実施形態は、第２実施形態の方法であって、前記分類手段を用いて、ソーシャルメディアメッセージが施設と関連付けられている確率の中央値を計算し、計算した前記確率を正規化するために前記確率の中央値を使用する。
【００１６】
第４実施形態は、第１〜第３実施形態の何れかの方法であって、訓練特徴ベクトルの各々は、ソーシャルメディアメッセージの各々が施設の各々に関連付けられているか否かを示すラベルを含み、訓練特徴ベクトルの各々の少なくとも１つの特徴は、前記ソーシャルネットワークグラフによるパスのタイプの各々に基づく計測値を含む。
【００１７】
第５実施形態は、第４実施形態の何れかの方法であって、第１特徴は、ユーザのソーシャルメディアメッセージから施設への前記ソーシャルネットワークグラフによる直接的なパスに対応する。
【００１８】
第６実施形態は、第４又は第５実施形態の方法であって、第２特徴は、ユーザのソーシャルメディアメッセージから施設への前記ソーシャルネットワークグラフによるともだちの接続を介したパスに対応する。
【００１９】
第７実施形態は、第４〜第６実施形態の何れかの方法であって、前記ソーシャルネットワークグラフは施設カテゴリに対応するノードを含み、第３特徴は、共通施設カテゴリを共有する施設のペアを接続する前記ソーシャルネットワークグラフによるパスに対応する。
【００２０】
第８実施形態は、第４〜第７実施形態の何れかの方法であって、前記ソーシャルネットワークグラフは、前記ソーシャルメディアメッセージのコンテンツワードに対応するノードを含み、第４特徴は、少なくとも１つの共有コンテンツワードを有するノードのペアを接続する前記ソーシャルネットワークグラフによるパスに対応する。
【００２１】
第９実施形態は、第４〜第８実施形態の何れかの方法であって、複数の訓練特徴ベクトルを構築することは、ソーシャルメディアメッセージの各々と施設の各々とを接続する前記ソーシャルネットワークグラフによるパスのタイプの各々についてパスカウントを取得し、前記訓練特徴ベクトルの特徴として前記パスカウントを設定する。
【００２２】
第１０実施形態は、第１〜第９実施形態の何れかの方法であって、訓練特徴ベクトルの第５の特徴は、施設の各々とユーザによって生成され予め位置情報タグが付与されたソーシャルメディアメッセージの物理座標との間の物理距離を計測する。
【００２３】
第１１実施形態は、第１〜第１０実施形態の何れかの方法であって、前記分類手段は、サポートベクターマシンを用いて訓練される。
【００２４】
第１２実施形態は、第１〜第１１実施形態の何れかの方法であって、前記主要施設は、所定領域、施設のタイプ、施設の名称、ユーザの嗜好、施設推定の履歴及びソーシャルメディアメッセージと関連付けられている地理座標からの距離の少なくとも１つに基づいて選択される。
【００２５】
第１３実施形態は、第１〜第９実施形態の何れかの方法であって、新しい前記ソーシャルメディアメッセージは位置情報タグを付与されていない。
【００２６】
第１４実施形態は、第１〜第１３実施形態の何れかの方法であって、新しい前記ソーシャルメディアメッセージが前記主要施設に関連付けられていることが判定された後、前記ソーシャルメディアメッセージに対応する施設として前記主要施設の特定の第１施設を判定するために順位付けプロセスを適用することをさらに含む。
【００２７】
第１５実施形態は、第１４実施形態の方法であって、前記順位付けプロセスは、少なくとも複数の前記主要施設について確率スコアを計算し、前記ソーシャルメディアメッセージに対応する施設として最高確率スコアを有する前記主要施設の少なくとも１つを識別する、ことを含む。
【００２８】
第１６実施形態は、ソーシャルメディアメッセージ及び施設の間のリンクを推定するコンピュータシステムであって、少なくとも１つのプロセッサと、メモリと、少なくとも１つの前記プロセッサによって実行されるように構成された前記メモリに記憶されている少なくとも１つのプログラムと、を含む。少なくとも１つの前記プログラムは、ソーシャルメディアユーザを表すノード、前記ソーシャルメディアユーザによって生成されたソーシャルメディアメッセージを表すノード、及び施設を表すノードを含むソーシャルネットワークグラフにアクセスし、前記ソーシャルネットワークグラフで表される施設は、複数の主要施設及び非施設を含み、ソーシャルメディアメッセージノード及び前記非施設に対応するノードの間の前記ソーシャルネットワークグラフのリンクはソーシャルメディアメッセージが前記主要施設の何れにも対応していないことを示し、複数の訓練特徴ベクトルを構築し、訓練特徴ベクトルの各々が、ソーシャルメディアメッセージの各々及び施設の各々の間の連結性を測定するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴の各々を含み、前記訓練特徴ベクトルを用いて、ソーシャルメディアメッセージが施設と関連付けられている確率を推定するために分類手段を訓練し、ユーザから新しいソーシャルメディアメッセージを受信し、新しい前記ソーシャルメディアメッセージについて特徴ベクトルを構築し、特徴ベクトルの各々は、新しい前記ソーシャルメディアメッセージ及び非施設の間の連結性を測定するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴を含み、新しい前記ソーシャルメディアメッセージが前記非施設と関連付けられている確率を計算するための入力として前記特徴ベクトルを使用して訓練した前記分類手段を実行し、計算した前記確率が所定の閾値よりも大きい場合、新しい前記ソーシャルメディアメッセージが前記主要施設の何れとも関連付けられていないことを判定し、計算した前記確率が前記所定の閾値以下の場合、新しい前記ソーシャルメディアメッセージが前記主要施設の１つと関連付けられていることを判定する、命令を含む。
【００２９】
第１７実施形態は、第１６実施形態のコンピュータシステムであって、計算した前記確率は、前記所定の閾値と比較する前に正規化される。
【００３０】
第１８実施形態は、第１７実施形態のコンピュータシステムであって、少なくとも１つの前記プログラムは、前記分類手段を用いて、ソーシャルメディアメッセージが施設と関連付けられている確率の中央値を計算する、命令をさらに含み、計算した前記確率を正規化することは前記確率の中央値を使用する。
【００３１】
第１９実施形態は、第１８実施形態のコンピュータシステムであって、訓練特徴ベクトルの各々は、前記ソーシャルメディアメッセージの各々が前記施設の各々に関連付けられているか否かを示すラベルを含み、訓練特徴ベクトルの各々の少なくとも１つの特徴は、前記ソーシャルネットワークグラフによるパスのタイプの各々に基づく計測値を含む。
【００３２】
第２０実施形態は、プログラムであって、ソーシャルメディアユーザを表すノード、前記ソーシャルメディアユーザによって生成されたソーシャルメディアメッセージを表すノード、及び施設を表すノードを含むソーシャルネットワークグラフにアクセスし、前記ソーシャルネットワークグラフに示される施設は、複数の主要施設及び非施設を含み、ソーシャルメディアメッセージノード及び前記非施設に対応するノードの間の前記ソーシャルネットワークグラフのリンクは、前記ソーシャルメディアメッセージが前記主要施設の何れにも対応しないことを示し、複数の訓練特徴ベクトルを構築し、訓練特徴ベクトルの各々は、ソーシャルメディアメッセージの各々及び施設の各々の間の連結性を計測するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴の各々を含み、前記訓練特徴ベクトルを用いて、ソーシャルメディアメッセージが施設と関連付けられている確率を推定するために分類手段を訓練し、ユーザから新しいソーシャルメディアメッセージを受信し、新しい前記ソーシャルメディアメッセージについて特徴ベクトルを構築し、特徴ベクトルの各々は、新しい前記ソーシャルメディアメッセージ及び非施設の間の連結性を測定するために前記ソーシャルネットワークグラフによるパスを使用する複数の特徴を含み、新しい前記ソーシャルメディアメッセージが前記非施設と関連付けられている確率を計算するために入力として前記特徴ベクトルを用いて訓練した前記分類手段を実行し、計算した前記確率が所定の閾値より大きい場合、新しい前記ソーシャルメディアメッセージが前記主要施設の何れにも関連付けられていないことを判定し、計算した前記確率が前記所定の閾値以下である場合、前記ソーシャルメディアメッセージが前記主要施設の１つと関連付けられていることを判定する、処理をコンピュータに実行させる。
【発明の効果】
【００３３】
本発明によれば、ソーシャルメッセージが何れの施設にも全くリンクされるべきでない場合、ソーシャルメディアメッセージと施設とを不適切に関連付けないようにすることができる。
【図面の簡単な説明】
【００３４】
【図１】実装のいくつかによるソーシャルメディアメッセージの施設リンク検出システムを例示するブロック図である。
【図２】実装のいくつかによるサーバを例示するブロック図である。
【図３】実装のいくつかによるクライアントデバイスを例示するブロック図である。
【図４】実装のいくつかによるソーシャルメディアメッセージから施設を推定する方法を例示するフローチャートである。
【図５】実装のいくつかによるソーシャルメディアメッセージから施設を推定し、施設リンクを検出するソーシャルネットワークグラフの一例である。
【図６Ａ】実装のいくつかによる施設リンク検出システムのいくつかで使用されるメタパスの例である。
【図６Ｂ】実装のいくつかによる地理的近接を計算するために使用する式の例である。
【図６Ｃ】実装のいくつかによる地理的近接を計算するために使用する式の例である。
【図７】実装のいくつかによる訓練段階で使用される訓練特徴ベクトルの例のいくつかである。
【図８】実装のいくつかによる訓練した分類手段を使用して、ソーシャルメディアメッセージから施設を推定するプロセスである。
【図９Ａ】実装のいくつかによる施設リンク検出システムの訓練及び使用のプロセスである。
【図９Ｂ】実装のいくつかによる施設リンク検出システムの訓練及び使用のプロセスである。
【図１０Ａ】実装のいくつかによるソーシャルメディアメッセージが施設にリンクされているか否かを判定するために、施設リンク分類手段が出力を正規化する方法を例示する。
【図１０Ｂ】実装のいくつかによるソーシャルメディアメッセージが施設にリンクされているか否かを判定するために、施設リンク分類手段が出力を正規化する方法を例示する。
【図１１Ａ】実装のいくつかによるソーシャルネットワークグラフに追加してもよいリンクの例である。
【図１１Ｂ】実装のいくつかによる非施設ノードにツィートを接続するソーシャルネットワークグラフによるメタパスのいくつかである。
【図１２】実装のいくつかによる様々な施設リンク分類手段の性能を評価するデータの表である。
【図１３Ａ】実装のいくつかによる施設リンクを検出するプロセスのフローチャートである。
【図１３Ｂ】実装のいくつかによる施設リンクを検出するプロセスのフローチャートである。
【図１３Ｃ】実装のいくつかによる施設リンクを検出するプロセスのフローチャートである。
【図１３Ｄ】実装のいくつかによる施設リンクを検出するプロセスのフローチャートである。
【発明を実施するための形態】
【００３５】
添付の図面に例を示す様々な実装の詳細を参照する。同様の参照符号は、全ての図面にわたって対応する要素を参照する。本発明及び実装の全体的な理解を提供するために、複数の特定の詳細を以下で説明する。しかしながら、本発明は特定の詳細を含まないで実用化され得る。他の例において、よく知られた方法、プロシージャ、構成要素及び回路は、実装の様相を不必要に不明瞭としないように、詳細には説明しない。
【００３６】
図１は、実装のいくつかによるサーバシステム１０４の部分である分類モジュール１１４を含む分散システム１００のブロック図である。分散環境（分散システム）１００は、ユーザ１０６（例えば、ユーザ１０６−１、…、１０６−ｓ）によって操作される一つもしくは複数のクライアント１０２（例えば、クライアント１０２−１、…、１０２−ｒ）を含む。クライアントデバイス１０２とユーザ１０６との間の対応は一対一である必要はない。サーバシステム１０４は、インターネットなどの一つもしくは複数の通信ネットワーク１０８によってクライアント１０２と相互に接続されている。
【００３７】
クライアント１０２（「クライアントデバイス」もしくは「クライアントコンピュータ」と呼ばれることもある）は、コンピュータもしくは同様のデバイスであってよく、クライアント１０２のユーザ１０６は、クライアント１０２を介して、サーバシステム１０４にリクエストを送信し、サーバシステム１０４から結果もしくはサービスを受け取る。クライアントデバイスの例は、デスクトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、モバイルフォン、ＰＤＡ（personal digital assistant）、セットトップボックス、もしくはこれらの任意の組み合わせである。クライアント１０２は、一般的に、サーバシステム１０４にリクエストを送信することができるクライアントアプリケーション３２６（図３）を稼動する。例えば、クライアント１０２のいくつかは、ウェブブラウザ３２４（図３）もしくは、ユーザ１０６がサーチし、ブラウズし、及び／もしくは、通信ネットワーク１０８を介してサーバシステム１０４からアクセスされるリソース（例えば、ウェブページ及びウェブサービス）を使用するための他のタイプのアプリケーションを含む。
【００３８】
いくつかの例において、クライアントデバイス１０２は、ラップトップコンピュータもしくはスマートフォンなどのモバイルデバイスである。ユーザ１０６は、一般的に、メッセージング及びツイッター、フォースクエア、及びフェイスブックなどの外部サービス１２２とインタラクションするソーシャルメディアアプリケーションを実行するために、モバイルデバイス（クライアント）１０２を使用する。サーバシステム１０４は、メッセージ及び施設推定のための施設データを取得するために外部サービス１２２に接続する。
【００３９】
実装のいくつかにおいて、クライアントデバイス１０２は、ソーシャルメディアメッセージ分類システムの構成要素としてサーバシステム１０４の分類モジュール１１４と共に作動するローカル分類手段（例えば、アプリケーション３２６（図３））を含む。実装のいくつかにおいて、分類手段は、外部サービス１２２もしくはサーバシステム１０４に保存されている大規模ソーシャルメディアメッセージデータベースを構築し当該大規模ソーシャルメディアメッセージデータベースからソーシャル（メディア）メッセージを検索するソフトウェアアプリケーションである。実装のいくつかにおいて、ローカル分類手段はクライアント１０２で稼動するが、他の実装では、ローカル分類手段はサーバシステム１０４の分類モジュール１１４の一部分である。実装のいくつかにおいて、ローカル分類手段及び分類モジュール１１４はサーバシステム１０４の別個のサーバに実装されてもよい。
【００４０】
通信ネットワーク１０８は、イントラネット、エクストラネット、インターネット、もしくはこれらのネットワークの組み合わせである有線もしくは無線のローカルエリアネットワーク（ＬＡＮ）及び／もしくはワイドエリアネットワーク（ＷＡＮ）であってよい。
【００４１】
実装のいくつかにおいて、通信ネットワーク１０８は、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）を用いて情報を運ぶＨＴＴＰ（Hyper Text Transport Protocol）を使用する。ＨＴＴＰによって、クライアントコンピュータは、通信ネットワーク１０８を介して利用可能な様々なリソースにアクセスすることができる。用語「リソース」は、コンテンツ位置識別子（例えば、ＵＲＬ）を介してアクセス可能な情報及び／もしくはサービスを表し、リソースは、例えば、ウェブページ、ドキュメント、データベース、画像、計算オブジェクト、サーチエンジンもしくは他のオンライン情報サービスであってよい。
【００４２】
実装のいくつかにおいて、サーバシステム１０４はコンテンツ（例えば、施設、ソーシャルメディアメッセージ、ウェブページ、画像、デジタルフォト、ドキュメント、ファイル及び広告）を配送する。実装のいくつかにおいて、サーバシステム１０４は多くのファイルもしくは様々なタイプの他のデータ構造を含み、これらのファイルもしくはデータ構造は、テキスト、グラフィックス、ビデオ、音声、デジタルフォト及び他のデジタルメディアファイルを含む。
【００４３】
実装のいくつかにおいて、サーバシステム１０４は分類モジュール１１４を含む。分類モジュール１１４は、ツイッターによって保存されているツィート、フォースクエアによって保存されている施設、など既存のソーシャルメディアメッセージ及び施設の大規模集合を利用する機械学習アプリケーションである。この機械学習アプリケーションはソーシャルメディアメッセージの分類を自動化する。
【００４４】
実装のいくつかにおいて、サーバシステム１０４は、外部サービス１２２に接続し、外部サービス１２２によって収集されたソーシャルメディアメッセージ及び施設などの情報を取得する。取得された情報は、次に、サーバ１０４のデータベース１１２に保存される。実装のいくつかにおいて、データベース１１２はソーシャルメディアメッセージ２２８及び施設２３０（図２）を保存する。これらのデータは、ソーシャルネットワークグラフ２３２を構築するために使用される。このようなグラフの構築の概要を、図５及び図１１Ａを用いて以下に例示する。実装のいくつかにおいて、分類手段２２４を訓練する間、訓練特徴ベクトル２２６がデータベースに保存される。実装のいくつかにおいて、データベース１１２は他のデータも保存する。
【００４５】
図２は、サーバシステム１０４で使用されることが可能なサーバ２００を例示するブロック図である。一般的なサーバシステムは、同じ場所に配置される、もしくは複数の物理的に異なる場所に配置される多くの個別のサーバ２００を含む。サーバ２００は、一般的に、メモリ２１４に保存されているモジュール、プログラム、もしくは命令を実行する一つもしくは複数のＣＰＵ（処理ユニット）２０２を含み、当該ＣＰＵ２０２によってオペレーションを処理する。サーバ２００は、さらに、一つもしくは複数のネットワークもしくは他の通信インターフェイス２０４、メモリ２１４、及び、これらの構成要素を相互に接続する一つもしくは複数の通信バス２１２を含む。通信バス２１２は回路（チップセットとも呼ばれる）を含むことができ、当該回路はシステム構成要素を相互に接続し、システム構成要素間の通信を制御する。実装のいくつかにおいて、サーバ２００は、ユーザインターフェイス２０６を含み、当該ユーザインターフェイス２０６は表示デバイス２０８及び、キーボード及びマウスなどの一つもしくは複数の入力デバイス２１０を含む。
【００４６】
実装のいくつかにおいて、メモリ２１４はＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭもしくは他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含む。実装のいくつかにおいて、メモリ２１４は、一つもしくは複数の磁気ディスクストレージデバイス、光ディスクストレージデバイス、フラッシュメモリデバイス、もしくは他の不揮発性ソリッドステートストレージデバイスなどの不揮発性メモリを含む。実装のいくつかにおいて、メモリ２１４はＣＰＵ２０２から離れた位置に配置されている一つもしくは複数のストレージデバイスを含む。メモリ２１４もしくは代替的にメモリ２１４の不揮発性メモリデバイスは非一時的コンピュータ可読ストレージ媒体を含む。実装のいくつかにおいて、メモリ２１４もしくはメモリ２１４のコンピュータ可読ストレージ媒体は、以下のプログラム、モジュール及びデータ構造もしくはこれらのサブセットを保存する。
●オペレーティングシステム２１６。オペレーティングシステム２１６は、様々な基本システムサービスに対処し、ハードウェア依存タスクを実行するプロシージャを含む。
●通信モジュール２１８。通信モジュール２１８は、一つもしくは複数の通信（ネットワーク）インターフェイス２０４及びインターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンネットワークなどの（有線もしくは無線の）通信ネットワーク１０８を介して、他のコンピュータとサーバ２００とを接続するために使用される。
●ユーザインターフェイスモジュール２２０。ユーザインターフェイスモジュール２２０は、一つもしくは複数の入力デバイス２１０から入力を受け取り、表示デバイス２０８に表示されるユーザインターフェイスエレメントを生成する。
●一つもしくは複数のウェブサーバ１１０。ウェブサーバ１１０はクライアントデバイス１０２からリクエストを受信し、応答としてウェブページ、リソースもしくはリンクをリターンする。実装のいくつかにおいて、リクエストの各々のログはデータベース１１２に保存される。
●データベースアクセスモジュール２２２。データベースアクセスモジュール２２２は、データベース１１２に保存されているデータを読み、書き、問い合わせるプロシージャを含む。
●分類モジュール１１４。分類モジュール１１４は、図４、７、８、９及び図１３Ａ〜図１３Ｄを用いて以下で説明するように、一つもしくは複数の分類手段２２４を訓練するために使用される。
●一つもしくは複数のデータベース１１２。データベース１１２は、分類モジュール１１４もしくは分類手段２２４によって使用されるデータを保存する。実装のいくつかにおいて、データベース１１２は、ＳＱＬなどのリレーショナルデータベースである。実装のいくつかにおいて、データベース１１２は、訓練ベクトルに関連する他の情報と共に訓練特徴ベクトル２２６を保存する。実装のいくつかにおいて、データベース１１２はソーシャルメディアメッセージ２２８及び施設２３０を保存する。実装のいくつかにおいて、データベース１１２は、地理座標などメッセージ及び施設に関連する追加的な情報を保存する。実装のいくつかにおいて、データベース１１２は一つもしくは複数のソーシャルネットワークグラフ２３２を保存する。ソーシャルネットワークグラフ２３２は、ユーザ１０６、ソーシャルメディアメッセージ２２８、施設２３０及び他の関連するエンティティの間の接続を追跡する。図５は、実装のいくつかによるソーシャルネットワークグラフ２３２のノード及びリンクに関する概念図５００を例示する。
【００４７】
図２で識別された構成要素の各々は先に説明した一つもしくは複数のメモリデバイスに保存されていてもよい。実行可能なプログラム、モジュール、もしくはプロシージャは、上記機能を実行する命令セットに対応する。上記識別されたモジュールもしくはプログラム（即ち、命令セット）は、別個のソフトウェアプログラム、プロシージャ、もしくはモジュールとして実装されていなくてもよい。これらのモジュールの様々なサブセットは様々な実装において組み合わされ、もしくは再構成されてもよい。実装のいくつかにおいて、メモリ２１４は上記識別されたモジュール及びデータ構造のサブセットを保存する。さらに、メモリ２１４は、上記されていない他のモジュールもしくはデータ構造を保存してもよい。
【００４８】
図２はサーバ２００を例示しているが、図２は、ここで説明する実装の構造的な概要ではなく、サーバシステム１０４で使用されるサーバで提示され得る様々な特徴の機能を例示することを意図している。実用において、当業者には理解できるように、別個に示されているアイテムは組み合わされてもよく、アイテムのいくつかは分離されてもよい。サーバシステム１０４においてこれらの機能を実装するためにサーバ２００を実際はいくつ使用するのか及び複数のサーバ２００にどのように機能を割り当てるのか、は実装毎に変動し、使用ピーク期間及び平均使用期間にシステムが対処しなければならないデータトラフィックの量に部分的に依存し得る。
【００４９】
図３は、実装のいくつかによるクライアントデバイス１０２を例示するブロック図である。クライアントデバイス１０２は、ラップトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、スマートフォン、ＰＤＡを含む。クライアントデバイス１０２は、一般的に、一つもしくは複数のＣＰＵ（処理ユニット）３０２、一つもしくは複数のネットワークインターフェイス３０４、メモリ３１４、ユーザインターフェイス３０６及び、これらの構成要素を相互に接続する一つもしくは複数の通信バス３１２（チップセットとも呼ばれる）を含む。ユーザインターフェイス３０６は、一つもしくは複数の出力デバイス３０８を含み、出力デバイス３０８は、一つもしくは複数のスピーカ及び／もしくは一つもしくは複数のビジュアル表示デバイスを含み、メディアコンテンツの提示を行うことができる。ユーザインターフェイス３０６は、一つもしくは複数の入力デバイス３１０を含み、入力デバイス３１０は、キーボード、マウス、音声コマンド入力ユニットもしくはマイクロフォン、タッチスクリーンディスプレイ、タッチセンシティブ入力パッド、カメラ（例えば、符号化された画像を走査する）、ジェスチャキャプチャカメラもしくは他の入力ボタンもしくはコントロールなどのユーザ入力を容易にするユーザインターフェイス構成要素を含む。さらに、クライアントデバイス１０２のいくつかは、キーボードと置き換えて、又はキーボードの補助として、マイクロフォン及び音声認識もしくはカメラ及びジェスチャ認識を使用する。
【００５０】
メモリ３１４は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭもしくは他のランダムアクセスソリッドステートメモリデバイスなどの高速ランダムアクセスメモリを含む。実装のいくつかにおいて、メモリは、一つもしくは複数の磁気ディスクストレージデバイス、一つもしくは複数の光ディスクストレージデバイス、一つもしくは複数のフラッシュメモリデバイス、もしくは一つもしくは複数の他の不揮発性ソリッドステートストレージデバイスなどの不揮発性メモリを含む。実装のいくつかにおいて、メモリ３１４はＣＰＵ３０２から離れた位置に配置された一つもしくは複数のストレージデバイスを含む。メモリ３１４、もしくは代替的にメモリ３１４の不揮発性メモリは、非一時的コンピュータ可読ストレージ媒体を含む。実装のいくつかにおいて、メモリ３１４もしくはメモリ３１４の非一時的コンピュータ可読ストレージ媒体は、以下のプログラム、モジュール及びデータ構造もしくはこれらのサブセット又はスーパーセットを含む。
●オペレーティングシステム３１６。オペレーティングシステム３１６は、様々な基本システムサービスに対処し、ハードウェア依存タスクを実行するプロシージャを含む。
●通信モジュール３１８。通信モジュール３１８は、一つもしくは複数の通信ネットワークインターフェイス及び、インターネット、他のワイドエリアネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの一つもしくは複数の（有線もしくは無線の）通信ネットワーク１０８を介して他のコンピュータ及びデバイスとクライアントデバイス１０２とを接続するために使用される。●表示モジュール３２０。表示モジュール３２０は、一つもしくは複数の入力デバイス３１０から入力を受け取り、表示デバイス３０８に表示するユーザインターフェイスエレメントを生成する。
●入力処理モジュール３２２。入力処理モジュール３２２は、一つもしくは複数の入力デバイス３１０の１つから一つもしくは複数のユーザ入力もしくはインタラクションを検出し、検出した入力もしくはインタラクションを解釈する（例えば、クライアントデバイスのカメラによって走査された符号化画像を処理する）。
●ウェブブラウザ３２４。ウェブブラウザ３２４は、（インターネットなどの）ネットワーク１０８を介して、ユーザと、リモートコンピュータもしくはデバイスとの通信を可能にする。
●一つもしくは複数のアプリケーション３２６−１〜３２６−ｕ。アプリケーション３２６−１〜３２６−ｕはクライアントデバイス１０２による実行のために構成されている。様々な実装において、アプリケーション３２６はカメラモジュール、センサモジュール、一つもしくは複数のゲーム、アプリケーション、マーケットプレイス、支払いプラットフォーム、及び／もしくはソーシャルネットワークプラットフォームを含む。実装のいくつかにおいて、アプリケーション３２６の一つもしくは複数はウェブブラウザ３２４で稼動する。
●クライアントデータ３２８。クライアントデータ３２８はデバイス１０２もしくはデバイス１０２のユーザ１０６に関連する情報を含む。実装のいくつかにおいて、クライアントデータ３２８は一つもしくは複数のユーザプロファイル３３０を含み、ユーザプロファイル３３０は、ユーザアカウント、ユーザアカウントの各々についてのログイン証明、ユーザアカウントの各々に関連する支払いデータ（例えば、リンクされているクレジットカード情報、アプリケーションクレジット又はギフトカードの残高、請求住所、配送住所）、ユーザアカウントの各々についての顧客パラメータ（例えば、年齢、位置、趣味）及び／もしくは各々のユーザアカウントのソーシャルネットワークコンタクトを含み得る。実装のいくつかにおいて、クライアントデータ３２８は、クライアントデバイスにおけるユーザのアクティビティのログであるユーザデータ３３２を含む。
【００５１】
上記識別された実行可能なモジュール、アプリケーションもしくはプロシージャのセットは、先に説明したメモリデバイスの一つもしくは複数に保存されてもよいし、上記機能を実行する命令セットに対応してもよい。上記識別されたモジュールもしくはプログラム（即ち、命令セット）は別個のソフトウェアプログラム、プロシージャ又はモジュールとして実装される必要はなく、これらのモジュールの様々なサブセットは様々な実装において結合されてもよいし、再構成されてもよい。実装のいくつかにおいて、メモリ３１４は上記モジュール及びデータ構造のサブセットを保存してもよい。さらに、メモリ３１４は上記していない他のモジュール又はデータ構造を保存してもよい。
【００５２】
図３はクライアントデバイス１０２を示すが、図３は、実装の構造的概要ではなく、様々な特徴の機能を表すことを意図している。実用的には、また、当業者に理解されるように、別個に示されたアイテムは組み合わされてもよいし、アイテムのいくつかは分離されてもよい。
【００５３】
実装のいくつかにおいて、サーバシステム１０４の機能のいくつかはクライアントデバイス１０２によって実行され、これらの機能の対応するサブモジュールはサーバシステム１０４ではなく、クライアントデバイス１０２に配置されてもよい。反対に、実装のいくつかにおいて、クライアントデバイス１０２の機能のいくつかは、サーバシステム１０４によって実行され、これらの機能の対応するサブモジュールはクライアントデバイス１０２ではなく、サーバシステム１０４に配置されてもよい。図２及び図３に示されるサーバ２００及びクライアントデバイス１０２は、実装のいくつかを例示する。他の構成が、ここで説明する機能を実装するために使用されてもよい。
【００５４】
図４は、実装のいくつかによるソーシャルメディアメッセージ２２８についての施設推定方法４００のフローチャートである。実装のいくつかにおいて、方法４００は施設推定システム１００によって実行される。図４において、施設推定方法４００は訓練段階４６０及び試験／使用段階４７０を含む。訓練段階４６０において、サーバシステム１０４（例えば、サーバシステムの分類モジュール１１４）は、一つもしくは複数の外部サービス１２２（例えば、フォースクエア）に保存されている位置検出済み施設４０４の集合にアクセスし、データベース１１２の施設集合２３０に保存する。サーバシステム１０４は、一つもしくは複数の外部サービス（例えば、ツイッター）に保存されている投稿集合４０２にアクセスし、ソーシャルメディアメッセージ集合２２８に保存する。位置検出済み施設４０４の集合及び投稿集合４０２は、次に、一つもしくは複数の分類手段２２４を訓練するために、分類モジュール１１４によって使用される。一つもしくは複数の訓練された分類手段２２４は、次に、試験段階４７０で、新しい投稿４１２が候補施設４１６の１つにリンクするか否か推定するために使用され得る。実装のいくつかにおいて、候補施設４１６の集合及び位置検出済み施設４０４の集合は同一である。一般的に、これらは双方ともマスター施設リスト２３０のサブセットである。実装のいくつかにおいて、一つもしくは複数のフィルタが位置検出済み施設に適用可能であり、これにより、候補施設４１６が新しい投稿に関連する可能性が高くなる。例えば、ボストンで生成されたユーザ投稿ツィートは、おそらく、ロサンゼルスの施設には関連しない。実装のいくつかにおいて、候補施設は所定の領域に基づいて選択される。実装のいくつかにおいて、候補施設は施設のタイプ（例えば、コーヒーショップ）もしくは施設の名称（例えば、マクドナルド）に基づいて選択される。実装のいくつかにおいて、候補施設はユーザの嗜好もしくは施設推定の履歴に基づいて選択される。実装のいくつかにおいて、２以上の基準が適用されて、候補施設が識別される。
【００５５】
上記ソーシャルメディアメッセージについての施設推定方法４００は、特定の施設のメッセージの位置を識別することが可能であり、同時に、非常に細かい粒度で地理的位置及びメッセージに関連付けられている施設の名称を識別する。位置情報タグを付与されていないソーシャルメディアメッセージの位置及び施設を推定することは、ユーザの地理的コンテキストをより適切に理解することを容易にすることが可能であり、これによって、アプリケーションは、より正確に情報を提示し、サービスを推奨し、広告の対象を決定することが可能となる。さらに、施設推定システム１００及び方法４００は、ソーシャルメディアプラットフォームからのソーシャルメッセージ投稿及び施設の大規模データセットを用いて評価されてもよい。
【００５６】
図４に例示されるように、分類モジュール１１４は投稿４０２及び位置検出済み施設４０４を使用して、訓練段階４６０で、一つもしくは複数の分類手段２２４を訓練する。（メッセージ、施設）ペアの各々について、分類モジュール１１４は、メタパス及び地理座標情報に基づいて特徴を計算する。メタパスについては、図５及び図６Ａを用いて以下で説明する。地理座標情報は、図６Ｂ及び図６Ｃを用いて以下で説明する。図７及び図８に例示されるように、特徴ベクトル２２６を形成するために特徴はグループ化される。特徴ベクトルの各々は関連付けられたラベルを有し、当該ラベルは、メッセージ２２８の各々が施設２３０の各々に関連付けられているか否か示す。
【００５７】
実装のいくつかにおいて、メタパスは、パスタイプの各々に対応する異なる特徴を有する複数のタイプに分類される。これについては、図６Ａで例示される。分類モジュール１１４は、ソーシャルメディアメッセージが施設にリンクされるか否か分類するために分類手段２２４を訓練するために、特徴ベクトル及び関連付けられたラベルを使用する（４０８）。訓練プロセスは、分類手段２２４（訓練したモデル４１０）を（例えば、繰り返し）構築する。
【００５８】
訓練プロセスは様々な機械学習技術を使用することができる。実装のいくつかは、線形カーネル及びデフォルトパラメータを有するＳＣＩＫＩＴ−ＬＥＡＲＮ７で実装されるＳＶＭを使用する。実装のいくつかにおいて、施設毎（例えば、位置検出済み施設４０４毎）に別個の分類手段２２４が生成される。実装のいくつかにおいて、単一の分類手段が生成され、分類手段は、提供された入力に基づいて最も高い可能性を有する施設を識別するために使用される。実装のいくつかにおいて、単一の分類手段が生成され、分類手段は、単一の入力ベクトルに基づいて複数の施設についての確率を計算するために使用される。
【００５９】
第２段階（試験／使用）段階４７０において、新しいソーシャルメディアメッセージ４１２がサーバシステム１０４によって外部サービス１２２から受け取られる。いくつかの例において、投稿４１２には位置情報タグが付与されていない（即ち、地理座標が割り当てられていない）。訓練したモデル４１０（即ち、分類手段２２４）は、投稿４１２が候補施設４１６の各々にリンクされるか否か分類する（４１８）。分類（４１８）を実行するために、分類モジュール１１４は訓練段階について上記したように特徴ベクトルを構築する。詳細には、分類モジュール１１４は、訓練段階で使用される特徴に対応するメタパス特徴及び地理特徴を計算する（４１４）。
【００６０】
実装のいくつかにおいて、訓練された分類手段２２４は、候補施設４１６の各々について、新しいソーシャルメディアメッセージが候補施設にリンクされる可能性を示すスコア（例えば、確率）を計算する。スコアに基づいて、分類モジュールは、少なくとも１つの候補施設を、新しいソーシャルメディアメッセージのために推定された施設として識別し（４２０）、推定された施設と新しいソーシャルメディアメッセージとを関連付ける。実装のいくつかにおいて、分類モジュール１１４は、高い順位にランク付けされる複数の施設が存在する場合、高い可能性を有する候補施設の２つ以上を選択する（４２０）。選択された候補施設は推定された施設４２２として提供される。
【００６１】
実装のいくつかにおいて、特徴ベクトルのメタパスの計算には、異種ソーシャルネットワークグラフ２３２を使用する。グラフ２３２は、埋め込まれたソーシャル関係を示し、ソーシャルメディアメッセージが地理的施設と関連付けられている場合を識別するために、利用可能ではあるが限定された地理データを活用することができる。
【００６２】
図５に、各タイプのエンティティが、ソーシャルネットワークグラフの概念図５００のあるタイプのノードとして示されている。例えば、ツイッターユーザ(Twitter User)５０２の各々、フォースクエアユーザ(Foursquare User)５０４の各々、施設(Venue)５０６の各々、ツィート(Tweet)５０８の各々及びフォースクエアチップ(Tip)５１０の各々について別個のノードが存在する。図５では、実際のソーシャルネットワークグラフ２３２において多くの個別のノードを概念的に表す要約したノードを描画している。この例において、２５１，６６０人の個別のツイッターユーザが存在する。従って、グラフ２３２がこの要約した形態で示されない場合、２５１，６６０のツイッターユーザのための個別のノードが存在するかもしれない。同様に、１０５，３４０人のフォースクエアユーザ、３３７，９９１の施設、１０，０８０，９７３のツィート、及び４００，９４１のフォースクエアチップが存在する。さらに、実装のいくつかは、関連する施設をグループ化するカテゴリ(Category)ノード５１２を有する。施設の各々は一つもしくは複数のカテゴリに割り当てられてもよい。実装のいくつかは、ツィートもしくはフォースクエアチップに現れる個別のワードであるワード(Word)ノード５１４も提供する。一般的に、ワードは、意味のあるコンテンツワードに限定され、冠詞、接続詞、及び前置詞などは除外される。例えば、実装のいくつかは、ＮＬＴＫ（http://www.ntlk.org）を用いてストップワードを取り除く。実装のいくつかは、訓練集合のソーシャルメディアメッセージの閾値（例えば、１０）を越えない数のワードを取り除く。用語「ワード」は広く使用され、公開されている言語辞書に当該ワードが現れることを要求されない。例えば、ソーシャルメディアメッセージは、一般的に多くの略語、頭字語、もしくはワードとして機能する文字の他のシーケンスを含む。例えば、「lol」及び「lgtm」はワードと看做され得る（これらの２つのワードはここで必ずしも有用ではない）。
【００６３】
エンティティの間の関係は異なるタイプのリンクとして表される。例えば、ツイッターのともだち(friend)リンク５２０はともだちである２つのツイッターユーザをリンクし、フォースクエアのともだち(friend)リンク５２２はともだちである２つのフォースクエアユーザをリンクする。「アンカー(anchor)」リンク５２４は、ツイッターユーザ５０２が対応するフォースクエアユーザ５０４と同一の人物であることを示す。ツイッターを書くリンク(write)５２６はツイッターユーザ５０２とツイッターユーザが書くツィート５０８とを接続する。チェックイン(checkin)リンク５２８は特定の施設５０６でツイッターユーザ５０２がチェックインしたことを示す。メイヤー(mayor)リンク５３０は、特定のフォースクエアユーザ５０４が特定の施設５０６のメイヤーとして指定されたことを示す。フォースクエアを書く(write)リンク５３２は、フォースクエアユーザ５０４とフォースクエアユーザ５０４によって書かれたチップ５１０とをリンクする。フォースクエアチップ５１０の各々は特定の施設５０６に関連し、したがって、関係を示すために位置検出(locate)リンク５３４が存在する。
【００６４】
ソーシャルネットワークグラフの概念図５００は施設カテゴリ５１２を含み、施設５０６がカテゴリ５１２に属することを示すために「属する(belong)」リンク５３６が存在する。単一の施設は２つ以上のカテゴリに属していてもよい。一方、いくつかの施設５０６は識別されたカテゴリ５１２の何れにも属さなくてもよい。
【００６５】
ソーシャルネットワークグラフの概念図５００がワードノード５１４を含む場合、概念図５００は、ツィート５０８が特定のワードを含む場合を示すツィートを含む(contain)リンク５３８を含む。同様に、フォースクエアチップ５１０が特定のワードを含む場合を示すチップを含む(contain)リンク５４０が存在する。
【００６６】
破線５５０によって示されるように、ツィート５２６のいくつかは施設５０６と関連付けられている。開示された実装は、ソーシャルネットワークグラフ２３２の他の情報に基づいていくつかの場合、ツィート−施設リンク５５０を推定することが可能である。
【００６７】
開示された実装は、位置情報タグが付与されていないツィート（もしくは他のソーシャルメディアメッセージ）が投稿された地理施設を推定する。以下の表１は位置情報タグが付与されたツィートの４つの例を示す。データセットの分析によれば、フォースクエアから発信されるツィートのほとんどが施設を推定することが容易な「I'm at somewhere（私は〜にいる）」との形態である。実装のいくつかにおいて、ツイッターチェックイン(checkin)リンク５２８は、これらのタイプのツィートに基づいて、明示的に１つのタイプのリンクとして追加される。
【表１】
0006575335.tif 000002
表１：位置情報タグを付与されたツィートの例
注：ツィートの各々のソースを［］内に示す。
【００６８】
実装のいくつかにおいて、ソーシャルネットワークグラフ２３２を構築するために使用されるデータセットはフォースクエア以外のソースからの位置情報タグを付与されたツィートを含む。フォースクエアと同様に、いくつかの他のモバイルアプリケーション（例えば、インスタグラム、パス）によって、ユーザは地理情報で投稿にタグを付与することができる。表１に示すように、シンボル「＠」の後には位置情報タグを付与されたツィートの施設名が続く（例えば、ｔ４の@walgreen）。しかしながら、シンボル「＠」は他のユーザを識別するために使用されてもよい（例えば、ｔ３の@username）。
【００６９】
図５に例示されるデータセットは、より大きなデータセットに含まれるツィートのサブセットを含む。ツィートの選択されたサブセットは、テキストが施設名もしくは（略語を考慮するために）少なくとも施設名のコンテンツワードの少なくとも半分を含むサブセットである。さらに、ユーザが「＠」と共に記述した実際の施設を明瞭化するために、選択されたツィートの地理位置は適合する施設の近隣にあることが要求された。この例では、近隣は半径０．０００８度もしくは約２９０フィートと定義された。これによれば、１２６，９１７のツィートの実際の施設が取得される。「＠」の後に続くワードは、機械学習及びクロス検証を用いた試験のためにツィートから取り除かれた。ツィートの座標は、評価での使用を除いて、保留される。全体的に、ツィートの各々は、モデルが訓練されている場合、位置情報タグが付与されていないものとして取り扱われる。
【００７０】
図５の概念図５００によって例示されるソーシャルネットワークグラフ２３２を用いて、異なるタイプのメタパスを抽出することができる。ツィートであるソーシャルメディアメッセージに施設推定を適用することは以下のように数式化できる。
位置情報タグを付与されていないツィートをｔｉとし、施設ｖｐで投稿されたツィートの確率Ｐｒ（ｌｉｎｋ（ｔｉ｜ｖｐ））を推定する。ここで、最大確率を有する施設ｖｅｓｔ（ｔｉ）がツィートの実際の施設ｖａｃｔ（ｔｉ）である。
【００７１】
ここで使用されるように、ソーシャルネットワークグラフの概念図５００のメタパスはノード間の個別のリンクのシーケンスを含む。例えば、図５において、以下のメタパスはツィートから施設への複合関係を示す。
【数１】
0006575335.tif 000003
このメタパスのセマンティックな意味は、ツィート(tweet)と施設(venue)とがフォースクエアチップ(tip)を介して共通のワード(word)を共有する、ということである。リンクタイプ「contain-1」は「contain（含む）」と逆の関係を表す。メタパスを介して接続されているツィート及び施設は、メタパスなしの場合よりもリンクされている可能性が高い。
【００７２】
異なるメタパスは、通常、リンクされたノード間で、異なるセマンティックな意味を有する異なる関係を表す。例えば、以下のメタパスは、フォースクエア(Foursquare user)で当該施設(venue)のメイヤー(mayor)であるツイッターユーザ(Twitter user)によってツィート(tweet)が投稿されたことを示す。
【数２】
0006575335.tif 000004
以下のメタパスは、ともだち(friend)が当該施設(venue)にチェックイン(checkin)したツイッターユーザ(Twitter user)によってツィート(tweet)が投稿されたことを示す。
【数３】
0006575335.tif 000005
このように、ツィート及び施設の間の関係は、異なるセマンティックを有する異なるメタパスによって説明され得る。
【００７３】
図６Ａは、ソーシャルネットワークグラフ２３２から構築され得るメタパスの４つのタイプを例示する。エゴパス（EgoPath）６０２は、ユーザのツィートを施設に直接的に関連付ける。ツィート−施設ペア（ｔｉ，ｖｐ）について、ツィートｔｉを投稿したユーザはｕｉで示される。リンク（ｔｉ，ｖｐ）の確率を推定するために、ユーザｕｉが施設と何れかのタイプの直接的なインタラクションをもつか知ることは有用である。直接的なインタラクションの例は、施設へチェックインすること、施設に関するチップを書くこと、もしくは施設のメイヤーであること、を含む。これらは、以下、直接施設インタラクションとも呼ばれる。
【００７４】
以下のメタパスは、フォースクエア(Foursquare user)において当該施設(venue)ｖｐのメイヤー(mayor)であるユーザTwitter user)ｕｉによってツィート(tweet)ｔｉが投稿された場合を識別する。
【数４】
0006575335.tif 000006
ｔｉからｖｐへのメタパスが存在する場合、このような接続を有さない施設ではなく施設ｖｐにツィートｔｉが関連付けられている可能性が高い。同様に、図６Ａのエゴパスセクション６０２のサンプルパスによって例示されるように、他のメタパスは、ユーザｕｉを介したツィートｔｉと施設ｖｐとの間の相互関係を捕捉するために抽出される。
【００７５】
ともだちパス（FriendPath）６０４は、ともだちを介してユーザのツィートを施設と関連付ける。エゴパスは、ツイッターとフォースクエアとの間をつなぎ、ユーザｕｉの明示的なソーシャルアクティビティを活用することでツィートｔｉと施設ｖｐとの間の相互関係を表すために非常に重要であることが期待され得るが、この方法では、少数のツィートだけが推定され得ることが知られている。特に、リンク付けされたフォースクエアのアカウントをもたないユーザについては、提示されるエゴパスは非常に少ない。また、ある研究によれば、ソーシャル関係は、人の移動の約１０％〜３０％を説明できることが知られている。したがって、ユーザｕｉのソーシャルアクティビティを見ることに加えて、ユーザのともだちのアクティビティを活用することもできる。ともだちｕｊが施設ｖｐと直接施設インタラクションをもつ場合、ユーザｕｉは、当該接続を有さない施設ではなく、施設ｖｐでツィートｔｉを投稿した可能性が高い。例えば、以下のメタパスは、ユーザ(Twitter user)ｕｉのともだち(friend)が施設(venue)ｖｐにチェックイン(checkin)した場合を識別する。
【数５】
0006575335.tif 000007
ともだちの情報を活用するメタパスは、図６Ａのサンプルパスによって例示されるように、ともだちパス６０４として示される。
【００７６】
関心パス（InterestPath）６０６は、ツィートと施設との間の関係を施設カテゴリ（例えば、フォースクエアカテゴリ）を介して拡張する。ユーザの関心を考慮すると、ユーザの関心を惹く類似の施設で、ユーザはツィートする傾向を有する。例えば、ｖｐがカリフォルニア州ロスアルトスのシェフチュウであり、ｖｑがカリフォルニア州マウンテンビューのクッキングパパであり、これらの施設が両方ともカテゴリ「チャイニーズレストラン」に属すると仮定する。ユーザｕｉがｖｑにチェックインすることで中華料理に関心があることが示され、ユーザｕｉからのツィートｔｉは、当該接続を有さない施設ではなく、施設ｖｐでユーザｕｉによって投稿された可能性が高い。図５に例示されるフォースクエアから収集されたサンプルデータにおいて、施設の各々は、図５の属するリンク５３６によって例示されるように、４２９のカテゴリの一以上と関連付けられている。以下のメタパスは、同一のカテゴリ(category)を共有する施設(venue)にチェックインしたユーザ(Twitter user)によって、ツィート(tweet)ｔｉが投稿されたか否かを効率的に検出することができる。
【数６】
0006575335.tif 000008
カテゴリを使用するサンプルメタパスのいくつかが、図６Ａの関心パス（INTERESTPATH）６０６セクションに示されている。
【００７７】
テキストパス（TEXTPATH）６０８は、施設に関してツィートされたワードをモデル化する。コンテンツ分析についてテキスト処理に焦点を当てる従来のアプローチと異なり、ワードは、図５に構築されたソーシャルネットワークグラフの概念図５００のあるタイプのノードとして表される。ワードを介したメタパスは、ツィートと施設との間のテキスト類似性を表すために画定される。
例えば、以下のメタパスは、テキストパス６０８として画定され、ツィート(tweet)ｔｉ及び施設(venue)ｖｐがフォースクエアチップ(tip)を介して共通のワード(word)を共有する場合を符号化する。
【数７】
0006575335.tif 000009
ツィートｔｉは、当該接続を有さない施設ではなく、類似テキストコンテンツを共有する施設ｖｐと関連付けられる可能性が高い。図６Ａのテキストパス６０８セクションは、このタイプの単一のサンプルメタパスを識別するが、実装のいくつかは他の多くのテキストパスも同様に使用する。図１１Ａに例示されるように、あるソーシャルネットワークグラフの概念図５００は施設リンク(venue-link)１１０２を含む。この場合、リンクされている他のツィートに基づいて、ツィートは施設（非施設ノードなど）に接続され得る。例えば、以下のメタパスにおいて、第１のツィート(tweet1)は施設(venue)にリンクされている第２のツィート(tweet2)に含まれているワード(word)を共有する。
【数８】
0006575335.tif 000010
【００７８】
実装のいくつかは、４タイプのメタパス、エゴパス（EGOPATH）６０２、ともだちパス（FRIENDPATH）６０４、関心パス６０６及びテキストパス６０８を、特徴ベクトルの特徴を生成するために使用する。しかしながら、異なるメタパスもしくは追加的なメタパスが使用されてもよい。例えば、ソーシャルメディアメッセージがツィートではない場合、異なるタイプのノードを生成し、従って、異なるタイプのメタパスを生成する異なる情報が利用可能であり得る。
【００７９】
画定されたタイプのメタパスに基づいて、分類モジュールは、各々のタイプのメタパスについてパスカウントを計算し、特徴ベクトルの特徴として当該カウントを使用する。これらの特徴は訓練特徴ベクトル２２６及び新しく受信したメッセージの双方について使用される。実装のいくつかにおいて、パスカウントは、一般的なタイプのメタパスの各々について合計される（例えば、エゴパスカウントの全てが合計される）。他の実装において、特定のタイプのパスの各々について別個の特徴が存在する（例えば、エゴパスについて３個の別個の特徴が存在し、各々は図６Ａに示されるエゴパスの１つに対応する。）。
【００８０】
実装のいくつかにおいて、分類モジュール１１４は、図６Ｂ及び図６Ｃに例示されるように地理特徴を計算する。地理特徴は、ユーザもしくはユーザのともだちの位置情報タグを付与されたツィートに含まれる利用可能な地理情報を表す。地理特徴は、特徴ベクトルの追加的な特徴として利用されてもよい。地理特徴は、施設推定が所望される新しいソーシャルメディアメッセージの地理座標ではなく、訓練プロセスで使用されたソーシャルメディアメッセージの地理座標（位置情報タグ）に基づく。（メッセージの地理座標が提供されると、施設を推定するタスクは一般的にたいへんシンプルになる。）
【００８１】
実装のいくつかにおいて、特徴ベクトルで使用される地理特徴の２つのタイプが存在する。第１の地理特徴は、図６Ｂに例示されているエゴジオ（EGOGEO）スコアである。実装のいくつかにおいて、エゴジオスコアは、分類モジュール１１４がユーザｕｉによって投稿された他のツィートの地理情報を有する場合、ツィートｔｉの施設推定を容易にするために使用される。Ｔｉはユーザｕｉによって投稿された位置情報タグを付与されたツィートのセットを示す。実装のいくつかは、図６Ｂに示されるように、ツィートｔｉ及び候補施設ｖｐの間の地理相互関係エゴジオを以下のように定義する。
【数９】
0006575335.tif 000011
最も内側の引き算ｔｊ−ｖｐについて、２つの要素ｔｊ及びｖｐが地理座標の２次元ベクトルであると看做される。例えば、座標は、一般的に、ツィートｔｊ及び施設ｖｐの位置情報タグに対応する緯度及び経度である。以下のL1ノルムは「マンハッタン距離」とも呼ばれ、２つの座標の差の絶対値を加算する。
【数１０】
0006575335.tif 000012
実装のいくつかは、代替的な距離計算、例えば、以下のユークリッド距離など、を使用する。
【数１１】
0006575335.tif 000013
以下は、式において計算された距離の最小値が採用されることを示す。
【数１２】
0006575335.tif 000014
ツィートｔｉ自身に位置情報タグが付されている場合であっても、計算から除外される。
「ｔｊ∈Ｔｉ−ｔｉ」は、ｔｊ∈Ｔｉ−｛ｔｉ｝を表す。
最小距離はゼロ（又はゼロに近い）であるため、アンダーフローを避けるため、小項εを付加する。実装のいくつかでは、ε＝１０−９である。ツィートと施設との間の距離が小さいことは相互関係を有する確率が高いことを示すため、式は結果の負の対数を計算する。実装のいくつかにおいて、対数は１０を底とする常用対数であるが、ｅ又は２などの他の底を有する任意の対数を使用してもよい。実装のいくつかにおいて、（０，０）などのデフォルトの地理位置に「非施設」が割り当てられる。実装のいくつかにおいて、非施設は地理位置座標を有するとは看做されない。実装のいくつかにおいて、非施設は他の基準（例えば、ユーザが一般的に位置する領域の外側）に基づいてデフォルトの位置に割り当てられる。
【００８２】
エゴジオの式は、投稿したユーザの位置情報タグを付されたツィートｔｉと候補施設ｖｐとの間の最短距離を表す。直感的に、ユーザｕｉが施設ｖｐの近傍で一つもしくは複数の位置情報タグを投稿した場合、ツィートｔｉは施設ｖｐに関連付けられている可能性が高い。ＥＧＯＧＥＯ（ｔｉ，ｖｐ）の値が高いことは、ｌｉｎｋ（ｔｉ，ｖｐ）の確率が高いことを表す。
【００８３】
ともだちジオスコアはエゴジオと類似しているが、ユーザのともだちによるソーシャルメディアメッセージに付与された位置情報タグに基づいている。例えば、ユーザが新しい近傍の場所を訪問し、ソーシャルメディアメッセージを生成した場合、位置情報タグを付与されたソーシャルメディアメッセージとユーザとは無関係であるかもしれない。しかしながら、人々はともだちと共通の場所に出掛けるため、ともだちの位置情報タグを付与されたソーシャルメッセージはユーザがいる場所を示す可能性がある。いくつかの実装において、図６Ｃに示されるように、ツィートｔｉ及び候補ｖｐの間のともだちジオ地理相互関係は以下のように定義される。
【数１３】
0006575335.tif 000015
以下は、上記したエゴジオの式（図６Ｂ）と同様の意味を有する。
【数１４】
0006575335.tif 000016
ここで、Ｎｉはユーザｕｉのともだちであるユーザのセットであり、セットＮｉのユーザｕｋの各々について、セットＴｋはユーザｕｋによるツィートを含む。即ち、ユーザｕｉのともだちによる全ての位置情報タグを付されたツィートにわたって最小値が計算される。
【００８４】
ともだちジオの式は、ユーザのともだちの位置情報タグを付されたツィートと候補施設ｖｐとの間の最短距離を示す。ユーザのともだちが施設ｖｐの近傍で位置情報を付されたツィートの何れかを投稿した場合、ツィートｔｉはそのような関係を有さない施設ではなく、施設ｖｐに関連付けられている可能性が高い。従って、ｌｉｎｋ（ｔｉ，ｖｐ）の確率は、ＦＲＩＥＮＤＧＥＯ（ｔｉ，ｖｐ）と正の相互関係を有する可能性が高い。
【００８５】
図７は、いくつかの（ソーシャルメッセージ，施設）ペアについての特徴ベクトルを例示する。（メッセージ，施設）ペアの各々について、対応する特徴ベクトル（例えば、特徴ベクトル(Feature Vector)２２６−１、２２６−２、２２６−３、２２６−４、２２６−５及び２２６−６）は、エゴパス(Ego Path Count)７０２、ともだちパス(Friend Path Count)７０４、関心パス(Interest Path Count)７０６、テキストパス(Text Path Count)７０８などのパスカウントを含む。実装のいくつかにおいて、特徴ベクトル２２６の各々は、図６Ｂ及び図６Ｃを用いて上記したように、地理特徴を含む。実装のいくつかは、特徴ベクトルの各々について、エゴジオ(Ego Geo)特徴スコア７１０及びともだちジオ(Friend Geo)スコア７１２を含む。特徴ベクトル２２６の各々は、ソーシャルメディアメッセージ及び施設が関連付けられていることが既知であるか否かを示す関連ラベル(Label)７２０を含む。実装のいくつかにおいて、ラベル値１は、メッセージの各々及び施設が関連付けられていることを示し、ラベル値０は、メッセージの各々が施設の各々と関連付けられていないことを示す。他の実装は、１及び−１、もしくは他のユニークな値のペアなどのラベルについての代替的なコードを使用する。
【００８６】
図７のサンプルデータにおいて、ラベル７１２は第１特徴ベクトル２２６−１について「１」である。第１特徴ベクトル２２６−１は、ツィート識別子(Message Identifier)７２２が「９１８３７２」であるツィートが施設識別子(Venue Identifier)７２４が「１０３８」である施設と関連付けられていることを示す。対応する特徴ベクトル２２６−１は、エゴパス５、ともだちパス０、関心パス１２及びテキストパス３を含む。さらに、特徴ベクトル２２６−１は、図６Ｂに関して上記されるように計算されるエゴジオスコア８．７２３２６５８４を有する。特徴ベクトル２２６−１は、図６Ｃに関して上記されるように計算されるともだちジオスコア８．７２６９２０８９を有する。
【００８７】
実装のいくつかにおいて、三重クロス検証の設定で実験を行うことができる。訓練データのフォールドの各々で、ツィート及び施設の間の既知のリンクの半分を正のリンクとしてサンプリングする。他の半分のリンクについて、負のｌｉｎｋ（ｔｉ，ｖｑ）を形成するために、施設ｖｑをＶ−｛ｖｐ｝からランダムに選択することができる。これにより、正のリンクの数と負のリンクの数とが等しい、図７に示すような釣り合いのとれたデータセットを訓練プロセスのために導出することができる。テストセットの既知のリンクを評価のために使用することができる。
【００８８】
図８は新しいソーシャルメッセージについての施設推定を例示する。新しいメッセージについて、Ｎ個の候補施設(Candidate)４１６−１、…、４１６−Ｎが存在する。これらの候補施設の各々について、分類モジュール１１４はエゴパス(EgoPath)８１０の各々を計算する。例えば、ソーシャルネットワークグラフ２３２がツイッター及びフォースクエアに基づいている場合、分類モジュールは図６Ａで識別されたエゴパス６０２を使用する。分類モジュール１１４は、候補施設４１６の各々について、ともだちパス(Friend Path)８１２の各々、関心パス(Interest Path)８１４の各々、及びテキストパス(Text Path)８１６の各々を計算する。ツイッター／フォースクエアについて、分類モジュールは、図６Ａで例示したともだちパス６０４、関心パス６０６及びテキストパス６０８を使用する。これらの特徴は訓練特徴ベクトル２２６の対応する特徴として同様の方法で計算される。実装のいくつかにおいて、分類モジュール１１４は、候補施設４１６の各々について、エゴジオスコア(Ego Geo)８１８及びともだちジオ(Friend Geo)スコア８２０を、計算する。実装のいくつかにおいて、これらは、図６Ｂ及び図６Ｃを用いて上記したように計算される。
【００８９】
候補施設４１６の各々の特徴は、第１候補施設４１６−１に対応する特徴ベクトル８５０−１及びＮ番目の候補施設４１６−Ｎに対応する第Ｎ特徴ベクトル８５０−Ｎなどの特徴ベクトル８５０の各々に置かれる。これらのテスト特徴ベクトル８５０は、図４のボックス４１８に例示されるように、訓練された分類手段２２４の入力（８３０）として使用される。分類手段２２４は、新しいメッセージが候補施設の各々にリンクされている確率を推定する（８３２）。実装のいくつかにおいて、候補施設は、新しいソーシャルメディアメッセージにリンク付けされている確率によって順位付けされている。
【００９０】
図８の例において、９５％、７８％、４６％、５％の確率を有する候補施設１、Ｎ、２、及びＮ−１が、最高から最低までランク付けされる。新しいメッセージは、１個のエゴパス及び４個の関心パスによって第１候補施設４１６−１にリンクされる。第１施設４１６−１は、図８に示される他の候補施設と比較して、最高のエゴジオスコア８１８を有する。一方、Ｎ−１番目の候補施設はエゴパス、ともだちパス、関心パス、テキストパスを有していない。Ｎ−１番目の候補施設は、最低のエゴジオスコア８１８を有する。したがって、新しいメッセージは、第１候補施設４１６−１と関連付けられている可能性が高く、Ｎ−１番目の候補施設と関連付けられている可能性は低い。実装のいくつかにおいて、候補施設の各々についての確率は、総計が１００％になるように正規化される。
【００９１】
上記（例えば、図４及び図８）プロセスは、候補施設の各々について確率を計算するが、新しいソーシャルメディアメッセージが施設の何れかと関連付けられているか否かという問いに対しては回答を与えない。図９Ａ及び図９Ｂはこの問いに回答する２つのプロセスを例示する。
【００９２】
図９Ａにおいて、ソーシャルメディアメッセージのセットで訓練フェーズを開始する（９０２）。これらの訓練メッセージの各々について、メッセージが施設に関連付けられているか否かは既知である。上記したように、ソーシャルネットワークグラフ２３２は、非施設ノードを含む施設の各々についてのメタパス及び地理座標に基づいて特徴を計算する（９０４）。非施設ノードへのリンク及びパスを図１１Ａ及び図１１Ｂに示す。実装のいくつかにおいて、エゴパス及びともだちパスなどの地理特徴は、デフォルト地理座標を割り当てることによって、非施設ノードについて計算される。例えば、実装のいくつかは座標として（０，０）を使用する。実装のいくつかは、ユーザ及びユーザのともだちが位置する領域から離れた非施設ノードと関連付けられているデフォルト位置を割り当てる。他の実装は、北極、南極もしくは大西洋の真ん中などほとんどのユーザから離れているであろうデフォルト位置を選択する。
【００９３】
メタパス及び地理特徴から構築される訓練ベクトル２２６を用いて、分類モジュール１１４は、一つもしくは複数のメッセージ−施設リンク分類手段２２４を訓練する（９０６）。実装のいくつかにおいて、分類モジュール１１４は、非施設ノードを含む、施設の各々について、別個の分類手段２２４を生成する。分類手段２２４を用いて、分類モジュール１１４は、リンク確率の中央値Ｍを計算する（９１０）。一般的に、リンク確率のほとんどは小さく、所定の訓練されたモデルの値と同様である。したがって、中央値を計算することは一般的な確率の概念を取得するための方法の１つである。実装のいくつかは、最頻値など、一般的なリンク確率を推定するための代替的な技術を使用し、もしくは、異常値を除いて平均値を計算する（例えば、２５番目の百分位数及び７５番目の百分位数の間の確率の平均値を計算する。）。
【００９４】
実装のいくつかにおいて、中央値Ｍ９１２を施設サンプルにわたって計算する。
【００９５】
分類手段２２４を訓練し、中央値Ｍ９１２を計算した後、プロセスは、テストソーシャルメディアメッセージ９１４に適用され得る。分類モジュール１１４は、同一のメタパス特徴及び地理特徴を計算することによって、ソーシャルネットワークグラフ２３２の非施設ノードについての特徴ベクトルを形成する（９１６）。訓練された分類手段２２４は、テストメッセージが非施設ノードに関連付けられている確率Ｐを計算するための入力として特徴ベクトルを使用する（９１８）。次に、プロセスは、スコアを計算するために中央値を用いて確率Ｐを正規化する（９２０）。図１０Ａに例示するように、実装のいくつかは、中央値Ｍを引き、その結果を中央値Ｍで割ることによって確率を正規化し、スコアを取得する（９２０）。図１０Ａにおいて、式Ｐｒ（ｌｉｎｋ（ｔｉ，ｖ０）｜ｆｉｏ）は、ペア（ｔｉ，ｖ０）の特徴ｆｉｏのセットに基づく、ツィートｔｉ（テストソーシャルメディアメッセージ９１４）及び非施設ノードｖ０の間のリンクの確率を示す。図１０Ｂに示されるように、実装のいくつかは中央値Ｍ９１２を引き、テストソーシャルメディアメッセージのリンク確率の全ての総計によって割ることによって、確率を正規化する。いくつかの場合、手法(Method)Ｂの分母は、実質的にソーシャルメディアメッセージに関係なく実質的に同一である。したがって、分母は一回計算すれば、再利用可能である。
【００９６】
正規化した確率Ｐ’を、次に、閾値θと比較する（９２２）。実装のいくつかにおいて、閾値θは図１０Ａの手法(Method)Ａの式について−０．０００５に設定される。実装のいくつかにおいて、図１０Ｂの手法Ｂの式を使用する場合、閾値θは、−０．０００００１に設定される。正規化した確率が閾値より大きい場合、テストソーシャルメディアメッセージをリンクしていないソーシャルメディアメッセージとして指定する（９２４）。すなわち、ソーシャルメッセージが非施設ノードと関連付けられている場合、メッセージは、「現実」施設の何れとも関連付けられていない。一方、正規化した確率が閾値より小さい場合、テストソーシャルメディアメッセージをリンクしているメッセージとして指定する（９２６）。この場合、実装のいくつかは、最大確率値を識別するために引き続き順位付け操作を実行する（例えば、図４のテスト／使用フェーズ４７０で順位付け操作を実行する）。図４を用いて説明した特定の技術に代えて、もしくは特定の技術に加えて、他の施設順位付け技法を適用してもよい。
【００９７】
図９Ｂは、非施設ノードだけを用いて分類手段２２４を構築する代替的なプロセスを例示する。このプロセスでは、正規化を必要としない。分類手段２２４は、テストソーシャルメディアメッセージ９１４が非施設ノードと関連付けられている確率を推定する。図９Ｂの操作のほとんどは、図９Ａの操作と同一である。したがって、説明も同様である。図９Ｂの特徴の計算（９０４’）は、非施設ノードだけを使用するため、図９Ａの計算（９０４）とは異なる。
【００９８】
図１１Ａは、図５のソーシャルネットワークグラフの概念図がノード間の他のタイプのリンクにどのように拡張され得るかを例示する。実装のいくつかにおいて、施設の明示的な記述がツィートに存在する場合、施設リンク(venue-link)１１０２は、ツィート(Tweet)及び施設(Venue)の間に追加される。例えば、実装のいくつかは、非特許文献１で説明されている技術を用いる。実装のいくつかにおいて、ツィートが、実際の施設の何れかへの施設リンク１１０２を有さない場合、ツィート及び非施設ノードの間の施設リンク１１０２を生成する。実装のいくつかにおいて、ツィートが現実施設の何れにも関連付けられていないという合理的な確かさが存在する場合にのみ、ツィートと非施設ノードとの間に施設リンク１１０２を生成する。
【００９９】
実装のいくつかにおいて、ツイッターユーザ(Twitter User)５０２が非施設ノードにリンクするツィート(Tweet)５０８の何れかを書いた(write)（５２６）場合、ツイッターユーザ５０２及び非施設ノードの間に非チェックイン(non-checkin)リンク１１０４を生成する。実装のいくつかにおいて、閾値（例えば、１０、２０もしくは１００）を越える非施設ノードにリンクされたツィート５０８を有するツイッターユーザ５０２についてだけ非チェックインリンク１１０４を生成する。実装のいくつかにおいて、ツィートの閾値は、一日、一週、一月内の非施設ノードにリンクされたツィートの最小数など、特定の時間長による。
【０１００】
図１１Ｂは、ツィートを非施設ノードに接続するソーシャルネットワークグラフの概念図５００によるメタパスのいくつかを例示する。例えば、図１１Ａを用いて上記したように、非チェックインリンク１１０４を用いてツィートを非施設ノードに接続する追加的なエゴパス(Ego Path)６０２が存在する。ユーザ(Twitter User)が施設にリンクしないツィート(tweet)を書く場合、ユーザは、施設にリンクしない他のツィートを書く可能性が高い。
【０１０１】
図１１Ｂは、施設にリンクしないツィートを生成するユーザのともだちに基づいて非施設ノードにツィートを接続する追加的なともだちパス(Friend Path)６０４を例示する。この相互関係は希薄であるが、接続の強さは分類手段の訓練プロセスに組み込まれる。非施設ノードへのともだちパス６０４はフォースクエアともだち関係５２２に基づいていてもよい。
【０１０２】
図１１Ｂは、フォースクエアチップ(tip)のワード(word)と相互関係を有するツィート(tweet)の１つもしくは複数のワードに基づいて、非施設(no-venue)ノードにツィートを接続する追加的なテキストパス(TextPath)６０８を例示する。
【０１０３】
図１２は、いくつかの代替的な施設リンク分類手段の性能を評価するデータを含む表である。この表のデータは、５９７万を越えるツィート及び１万９０００を越える可能な施設から導出されるツィート−施設リンクのランダムサンプルへのクロス検証を実行することにより取得された。左の２つの列１２０２及び１２０４は、地理特徴が使用された場合と、無視された場合との三重クロス検証を用いて性能を比較する。この結果によれば、ツィート−施設リンク検出において地理ベース特徴を含むことは常に有用ではない。
【０１０４】
右の２つの列１２０６及び１２０８は、１０重クロス検証を用いた、より大きいサンプルでの結果を示す。これらの列は、開示した方法の一般的な性能をよりよく示している。三番目の列１２０６は、手法Ａ（図１０Ａ）を用いた場合の結果を示し、四番目の列１２０８は、図９Ｂに例示したように、ツィートと非施設ノードとの間の関係だけで訓練した分類手段を用いた場合の結果を示す。
【０１０５】
第１実験１２０２において、１００ツィートのサンプルを使用し、特徴ベクトルには、エゴジオ及びともだちジオに対応する地理特徴及び４個のタイプのメタパスを用いた。第２実験１２０４において、１００ツィートの他のサンプルを使用し、特徴ベクトルに地理特徴を用いなかった。これらの実験は非常に高い正確さを有していた。第３実験１２０６は、訓練のためにより大きなサンプルを使用し、地理特徴を用いなかった。第４実験において、非施設ノードだけを用いた。
【０１０６】
図１３Ａ〜図１３Ｄは、コンピュータシステムによって実行されるプロセス１３００のフローチャートを示す。プロセス１３００は、ソーシャルメディアメッセージと施設との間のリンクを推定する（１３０２）。一つもしくは複数のプロセッサ及びメモリを有するコンピュータシステムで当該方法は実行される（１３０４）。メモリは、一つもしくは複数のプロセッサによって実行されるように構成されている一つもしくは複数のプログラムを保存する（１３０４）。
【０１０７】
プロセスは、ソーシャルメディアユーザを表すノード、ソーシャルメディアユーザによって生成されたソーシャルメディアメッセージを表すノード、及び、施設を表すノードを含むソーシャルネットワークグラフ２３２にアクセスする（１３０６）。これは、図５を用いて上記されている。ソーシャルネットワークグラフに表されている施設は、複数の主要施設及び非施設ノードを含む（１３０８）。主要施設は、特定のレストラン、店舗、コーヒーショップ、博物館などの実際の物理的な位置に対応する現実施設である。「非施設」ノードは物理的な施設を表さない特殊な施設ノードである。ソーシャルメディアメッセージノード及び非施設に対応するノードの間のソーシャルネットワークグラフのリンクは、ソーシャルメディアメッセージが主要施設の何れにも対応しないことを示す（１３１０）。実装のいくつかにおいて、主要施設は、所定の地域、施設のタイプ、施設の名称、ユーザの嗜好、施設推定の履歴、ソーシャルメディアメッセージと関連付けられている地理座標からの距離、これらの組み合わせに基づいて選択される（１３１２）。例えば、施設のマスターリストが合衆国の既知の施設を全て含む場合、施設の大多数は、単一の都市領域に居住するもしくは通勤する人には関連しない。
【０１０８】
図９Ａ及び図９Ｂに例示されるように、一つもしくは複数の分類手段は、訓練特徴ベクトル２２６のセットに基づいて構築される（１３１４）。訓練特徴ベクトルの各々は、ソーシャルメディアメッセージの各々及び施設の各々の間の連結性を計測するために、ソーシャルネットワークグラフによるパスを使用する複数の特徴の各々を含む。一般的なパスを図６Ａに例示する。図７Ａに例示するように、訓練特徴ベクトルの各々は、一般的に、ソーシャルメディアメッセージの各々が施設の各々に関連付けられているか否かを示すラベル７２０を含む（１３１６）。実装のいくつかにおいて、訓練特徴ベクトルの一つもしくは複数の特徴は、ソーシャルネットワークグラフによるパスのタイプの各々に基づく測定値を含む（１３１８）。
【０１０９】
実装のいくつかにおいて、図６Ａのエゴパス６０２によって例示されるように、第１特徴は、ソーシャルネットワークグラフ２３２によるユーザのソーシャルメディアメッセージから施設への直接的なパスに対応する（１３２０）。実装のいくつかにおいて、図６Ａのともだちパス６０４に例示するように、第２特徴は、ソーシャルネットワークグラフ２３２によるユーザのソーシャルメディアメッセージから施設へのともだちとの接続を介したパスに対応する（１３２２）。実装のいくつかにおいて、図６Ａの関心パス６０６に例示するように、ソーシャルネットワークグラフ２３２は、施設カテゴリ５１２に対応するノードを含み（１３２４）、第３特徴は共通の施設カテゴリを共有する施設のペアを接続するソーシャルネットワークグラフ２３２によるパスに対応する（１３２４）。実装のいくつかにおいて、図６Ａのテキストパス６０８に例示するように、ソーシャルネットワークグラフ２３２は、ソーシャルメディアメッセージのコンテンツワードに対応するノードを含み（１３２６）、第４特徴は、ソーシャルネットワークグラフ２３２による一つもしくは複数の共有コンテンツワード５１４を有するノードペアを接続するパスに対応する（１３２６）。
【０１１０】
実装のいくつかにおいて、プロセス１３００は、ソーシャルメディアメッセージの各々を施設の各々に接続するソーシャルネットワークグラフ２３２によるパスのタイプの各々についてパスカウントを取得し（１３２８）、訓練特徴ベクトルの特徴としてパスカウントを設定する（１３３０）。これは、図７に上記されている。実装のいくつかにおいて、訓練ベクトルの第５特徴は、ユーザによって生成され予め位置情報タグを付与されたソーシャルメディアメッセージの物理座標及び施設の各々の間の物理距離を計測する（１３３２）。例えば、図６Ｂ及び図６Ｃを用いて説明したエゴジオ及びともだちジオの計算は、予め位置情報タグを付与されたソーシャルメディアメッセージ及び施設の間の物理距離を計測する。
【０１１１】
プロセス１３００は、次に、ソーシャルメディアメッセージが施設と関連付けられている確率を推定するために、分類手段２２４を訓練する（１３３４）ために、訓練特徴ベクトルを用いる（１３３４）。実装のいくつかにおいて、訓練プロセスはサポートベクターマシンを使用する（１３３８）。実装のいくつかにおいて、図９Ａに例示するように、訓練された分類手段は、ソーシャルメディアメッセージが施設と関連付けられている確率の中央値を計算するために使用される。
【０１１２】
プロセス１３００は、次に、ユーザから新しいソーシャルメディアメッセージを受け取る（１３４０）。一般的に、方法１３００は、新しいソーシャルメディアメッセージに位置情報タグが付与されていない場合に適用される（１３４２）。プロセス１３００は、次に、新しいソーシャルメディアメッセージの特徴ベクトルを構築する（１３４４）。特徴ベクトルの各々は、新しいソーシャルメディアメッセージ及び非施設ノードの間の連結性を測定するために、ソーシャルネットワークグラフによるパスを使用する複数の特徴を含む。これらの特徴は、訓練特徴ベクトル２２６のために特徴を計算する方法と同一の方法で計算される。プロセスは、次に、新しいソーシャルメディアメッセージが非施設ノードと関連付けられている確率を計算するために入力として特徴ベクトルを用いて、訓練された分類手段を実行する（１３４６）。実装のいくつかにおいて、計算された確率は正規化される（１３４８）。実装のいくつかにおいて、計算された確率の正規化は計算された確率の中央値を使用する（１３５０）。実装のいくつかにおいて、図９Ａに例示されるように、計算された確率は、計算された確率から中央値を引き、その結果を中央値によって割ることによって正規化される（１３５２）。
【０１１３】
計算された確率（もしくは正規化された確率）は、次に、閾値θと比較される。計算された確率が所定の閾値より大きい場合、プロセス１３００は、新しいソーシャルメディアメッセージが主要な施設の何れとも関連付けられていないことを判定する（１３５４）。
【０１１４】
計算された確率が所定の閾値以下である場合、プロセス１３００は、新しいソーシャルメディアメッセージが主要施設の１つと関連付けられていることを判定する（１３５６）。実装のいくつかにおいて、ソーシャルメディアメッセージが必要とされる全ての施設とリンクされていることが既知とされている。しかしながら、多くの場合、プロセス１３００は、ソーシャルメディアメッセージに対応する、主要施設の特定の第１施設を判定するために、順位付けプロセスを適用する（１３５８）。ソーシャルメディアメッセージがある施設と関連付けられている十分高い確実性が存在する場合、当該施設が何であるか知るために有用である。実装のいくつかにおいて、順位付けプロセスは、少なくとも複数の主要施設の確率スコアを計算し（１３６０）、ソーシャルメディアメッセージに対応する、最高確率スコアを有する主要施設の少なくとも１つを識別する（１３６０）ことを含む。これは、図４及び図８に例示されている。実装のいくつかにおいて、代替的な順位付け技術が適用される。
【０１１５】
用語「第１」、「第２」などを様々な構成要素を説明するために用いたが、構成要素は当該用語によって限定されない。これらの用語は１つの構成要素から他の構成要素を区別するためにだけ使用される。例えば、第１接続端子は第２接続端子であってよく、同様に、第２接続端子は第１接続端子であってよい。「第１接続端子」の全てを矛盾なく別の用語に変更し、「第２接続端子」の全てを矛盾なく別の用語に変更する場合、説明の内容も変更される。第１接続端子及び第２接続端子は双方とも接続端子であるが、同一の接続端子ではない。
【０１１６】
ここで使用される用語は、特定の実装を説明する目的で使用され、発明を限定することを意図していない。実装の説明において、コンテキストが、単数は単数であることを明確に示していない限り、単数は複数を含む。用語「及び／もしくは」は、関連する示されたアイテムの一つもしくは複数の考えられる何れかの及び全ての組み合わせを含む。用語「含む」は、記載された特徴、ステップ、操作、及び／もしくは構成要素の存在を特定するが、他の特徴、ステップ、操作、構成要素及び／もしくはこれらのグループの一つもしくは複数の存在もしくは追加を除外しない。
【０１１７】
本願は、米国特許出願第１４／６６４，７３４に関連し、当該出願の内容を全て含む。
【０１１８】
上記は、説明を目的とし、特定の実装を参照して記述された。しかしながら、上記の例示的な説明は、開示の詳細な形態に本発明を限定することも網羅的であることも意図していない。多くの修正及び変更が上記開示の観点から可能である。本発明の原理及び実際的な応用を最も適切に説明するために実装を選択し説明した。これにより、考えられる特定の使用に適合するように、当業者であれば、本発明及び様々な変更を含む様々な実装を最適に利用することができる。
【符号の説明】
【０１１９】
１０２  クライアントデバイス
２００  サーバ
２０２  ＣＰＵ
２１４  メモリ
３０２  ＣＰＵ
３１４  メモリ
【図１】
0006575335.tif 000017
【図２】
0006575335.tif 000018
【図３】
0006575335.tif 000019
【図４】
0006575335.tif 000020
【図５】
0006575335.tif 000021
【図６Ａ】
0006575335.tif 000022
【図６Ｂ】
0006575335.tif 000023
【図６Ｃ】
0006575335.tif 000024
【図７】
0006575335.tif 000025
【図８】
0006575335.tif 000026
【図９Ａ】
0006575335.tif 000027
【図９Ｂ】
0006575335.tif 000028
【図１０Ａ】
0006575335.tif 000029
【図１０Ｂ】
0006575335.tif 000030
【図１１Ａ】
0006575335.tif 000031
【図１１Ｂ】
0006575335.tif 000032
【図１２】
0006575335.tif 000033
【図１３Ａ】
0006575335.tif 000034
【図１３Ｂ】
0006575335.tif 000035
【図１３Ｃ】
0006575335.tif 000036
【図１３Ｄ】
0006575335.tif 000037