(57)【要約】【課題】ＳＮＳを介した関係者との間の関係の解析精度を向上させること。【解決手段】ＳＮＳ解析システムは、或るユーザによるＳＮＳ（Social Networking Service）への投稿群のうちの他のユーザに対するリプライ群を取得する取得部と、前記リプライ群のそれぞれのリプライ先のユーザ名の集合から一部のユーザ名を抽出する抽出部と、を有する。【選択図】図３
2020173593.tif 000002
【特許請求の範囲】
【請求項１】
或るユーザによるＳＮＳ（Social Networking Service）への投稿群のうちの他のユーザに対するリプライ群を取得する取得部と、
前記リプライ群のそれぞれのリプライ先のユーザ名の集合から一部のユーザ名を抽出する抽出部と、
を有することを特徴とするＳＮＳ解析システム。
【請求項２】
前記抽出部は、前記ユーザ名の集合から、前記或るユーザのユーザ名とは異なるユーザ名を抽出する、
ことを特徴とする請求項１記載のＳＮＳ解析システム。
【請求項３】
或るユーザによるＳＮＳ（Social Networking Service）への投稿群のうちの他のユーザに対するリプライ群を取得する取得手順と、
前記リプライ群のそれぞれのリプライ先のユーザ名の集合から一部のユーザ名を抽出する抽出手順と、
をコンピュータが実行することを特徴とするＳＮＳ解析方法。
【請求項４】
或るユーザによるＳＮＳ（Social Networking Service）への投稿群のうちの他のユーザに対するリプライ群を取得する取得手順と、
前記リプライ群のそれぞれのリプライ先のユーザ名の集合から一部のユーザ名を抽出する抽出手順と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＳＮＳ解析システム、ＳＮＳ解析方法及びプログラムに関する。
【背景技術】
【０００２】
ＳＮＳ（Social Networking Service）の普及に伴い、ＳＮＳユーザがＳＮＳを介した関係者との間の関係を解析することが重視されてきている。
【０００３】
従来、ＲＤＢＭＳ（Relational DataBase Management System）のＳＥＬＥＣＴ文に相当するパターンマッチング機能を対象ＳＮＳのＡＰＩ（Application Programming Interface）に適用して、対象ＳＮＳのログからＳＮＳユーザが所望の解析結果を得られるようなＷｅｂアプリケーションを、ＳＮＳユーザとは異なる者が作成してユーザに提供するシステムがある。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】"アプリ☆メーカー"、［online］、インターネット＜http://appli-maker.jp/＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ＳＮＳのログにはＳＮＳ特有のノイズがある。当該ノイズは、ＳＮＳユーザがＳＮＳを介した関係者との間の関係に関する解析の精度に影響を与える。具体的には、例えば、Ｔｗｉｔｔｅｒ（登録商標）のリプライは通称「巻き込みリプライ」により、ユーザ自身へのリプライを含み、関係者との間の関係を解析する際のＳＮＳ特有のノイズとなる。しかし、Ｗｅｂアプリケーション作成者によるＡＰＩの適用だけでは当該ノイズを除去できず、ユーザが所望の精度の解析結果を得られないという課題がある。
【０００６】
本発明は、上記の点に鑑みてなされたものであって、ＳＮＳを介した関係者との間の関係の解析精度を向上させることを目的とする。
【課題を解決するための手段】
【０００７】
そこで上記課題を解決するため、ＳＮＳ解析システムは、或るユーザによるＳＮＳ（Social Networking Service）への投稿群のうちの他のユーザに対するリプライ群を取得する取得部と、前記リプライ群のそれぞれのリプライ先のユーザ名の集合から一部のユーザ名を抽出する抽出部と、を有する。
【発明の効果】
【０００８】
ＳＮＳを介した関係者との間の関係の解析精度を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態におけるシステム構成例を示す図である。
【図２】本発明の実施の形態における提供システム１０を構成するコンピュータのハードウェア構成例を示す図である。
【図３】本発明の実施の形態における提供システム１０の機能構成例を示す図である。
【図４】提供システム１０が実行する処理手順の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態におけるシステム構成例を示す図である。図１において、対象ＳＮＳ２０と提供システム１０とは、インターネット等のネットワークを介して接続される。提供システム１０は、１以上の作成者端末３０及び１以上の解析者端末４０とインターネット等のネットワークを介して接続される。
【００１１】
対象ＳＮＳ２０は、例えば、ユーザ間において双方向の投稿が可能なＳＮＳ（Social Networking Service）である。本実施の形態において、或るユーザによる投稿に対する応答としての投稿を「リプライ」という。本実施の形態では、対象ＳＮＳ２０がＴｗｉｔｔｅｒ（登録商標）である例について説明する。
【００１２】
提供システム１０は、対象ＳＮＳ２０のログ群（投稿群）について、各種の解析を行うＷｅｂアプリケーション（以下、単に「Ｗｅｂアプリ」という。）を作成させるための機構と、当該Ｗｅｂアプリを利用させるための機構とを提供する１以上のコンピュータである。
【００１３】
作成者端末３０は、提供システム１０を利用して、対象ＳＮＳ２０のログ群を解析するＷｅｂアプリを作成するユーザ（以下、「作成者」という。）が利用する端末である。本実施の形態では、特に、対象ＳＮＳ２０を介した関係者との間の関係を解析するＷｅｂアプリ１１（図３参照）が作成される。
【００１４】
解析者端末４０は、作成者によって作成されたＷｅｂアプリ１１を利用するユーザ（以下、「解析者」という。）が利用する端末である。
【００１５】
なお、作成者端末３０及び解析者端末４０は、例えば、ＰＣ（Personal Computer）、タブレット端末、又はスマートフォン等でもよい。
【００１６】
図２は、本発明の実施の形態における提供システム１０を構成するコンピュータのハードウェア構成例を示す図である。図２のコンピュータは、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００１７】
コンピュータでの処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１８】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってコンピュータに係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００１９】
図３は、本発明の実施の形態における提供システム１０の機能構成例を示す図である。図３において、提供システム１０は、１以上のＷｅｂアプリ１１と、パターンマッチング部１２とを含む。各Ｗｅｂアプリ１１及びパターンマッチング部１２は、提供システム１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。なお、本実施の形態では、非特許文献１における「アプリ☆メーカー」を拡張した例を示す。
【００２０】
パターンマッチング部１２は、各Ｗｅｂアプリ１１に設定されているパターンマッチング文に基づいて、対象ＳＮＳ２０のログ記憶部２２からＡＰＩ２１を介してログ群（投稿群）を取得すると共に、当該投稿群の中からパターンマッチング文に合致する情報を抽出する。パターンマッチング文とは、「アプリ☆メーカー」における結果テンプレートに相当する。以下、「結果テンプレート」で統一する。
【００２１】
パターンマッチング部１２は、自作フィルタ実行部１３を含む。自作フィルタ実行部１３は、結果テンプレートに自作フィルタが含まれている場合にパターンマッチング部１２から呼び出され、それまでにパターンマッチング部１２によって抽出された情報の中から、当該自作フィルタに合致する情報を抽出し、抽出された情報をパターンマッチング部１２に返却する。
【００２２】
以下、提供システム１０の処理手順について説明する。図４は、提供システム１０が実行する処理手順の一例を説明するためのフローチャートである。図４では、既に、或る解析者（以下、「ユーザＡ」という。）が提供システム１０にログイン済みであるとする。
【００２３】
ステップＳ１０１において、ユーザＡの解析者端末４０からＷｅｂアプリ１１の実行要求が受信されると、パターンマッチング部１２は、当該実行要求において実行対象として指定されているＷｅｂアプリ１１（以下、「対象アプリ」という。）の結果テンプレートから１つのパターン要素を取得する（Ｓ１０２）。ここでは、当該結果テンプレートが以下の通りであるとする。結果テンプレートは、以下の通り、"［"で始まり"］"で終わる。
［／使用者／リプライ／リプライ先のユーザ／ユーザ名／うち自作フィルタの文字列のもの（１，いずれも含まない）／番にものを選ぶ（１，高頻度な）／文字列自体］
本実施の形態では、スラッシュ（／）で区切られた単位を「パターン要素」と呼ぶ。ステップＳ１０２では、結果テンプレートのうち、未処理のパターン要素の中で先頭のパターン要素が取得される。したがって、最初は「使用者」が取得される。取得されたパターン要素を、以下「対象パターン要素」という。
【００２４】
続いて、パターンマッチング部１２は、対象パターン要素が自作フィルタを含むか否かを判定する（Ｓ１０３）。自作フィルタを含むパターンは要素、「うち自作フィルタの文字列のもの」という文字列を含む。したがって、ステップＳ１０３における判定は、当該文字列が対象パターン要素に含まれるか否かに基づいて行われる。
【００２５】
対象パターン要素が自作フィルタを含まない場合（Ｓ１０３でＮｏ）、パターンマッチング部１２は、対象パターン要素に該当する情報を取得する（Ｓ１０６）。「使用者」は、対象アプリの使用者を示すパターン要素である。したがって、「使用者」は、ユーザＡとして特定される。
【００２６】
続いて、パターンマッチング部１２は、未処理のパターン要素の有無を判定する（Ｓ１０７）。未処理のパターン要素が有る場合（Ｓ１０７でＮｏ）、ステップＳ１０２以降が繰り返される。
【００２７】
例えば、上記の結果テンプレートでは、「／使用者／リプライ／リプライ先のユーザ／ユーザ名／」までは、自作フィルタを含まない。したがって、２番目の「リプライ」が対象パターン要素である場合、ステップＳ１０６において、パターンマッチング部１２は、ユーザＡの投稿群のうち、他のユーザの投稿に対するリプライに相当する投稿群（リプライ群）を対象ＳＮＳ２０のＡＰＩ２１を介してログ記憶部２２から取得する。なお、Ｎ番目のパターン要素には、Ｎ−１番目までのパターン要素が限定条件として作用する。したがって、「リプライ」は、ユーザＡの（ユーザＡによる）リプライと解釈される。
【００２８】
また、３番目の「リプライ先のユーザ」が対象パターン要素である場合、ステップＳ１０６において、パターンマッチング部１２は、ユーザＡのリプライ群に含まれる各リプライについて、リプライ先（ユーザＡの関係者）を特定する。なお、リプライ先とは、リプライ（応答）の宛先をいう。
【００２９】
また、４番目の「ユーザ名」が対象パターン要素である場合、ステップＳ１０６において、パターンマッチング部１２は、ユーザＡのリプライ群に含まれる各リプライのリプライ先のユーザ名（＠で始まるＩＤ）の集合を、各リプライから取得する。
【００３０】
続く５番目の「うち自作フィルタの文字列のもの（１，いずれも含まない）」は、自作フィルタを含む。したがって、この場合（Ｓ１０３でＹｅｓ）、自作フィルタ実行部１３は、自作フィルタに該当する情報を取得し、当該情報をパターンマッチング部１２に返却する（Ｓ１０４）。本実施の形態において、自作フィルタは、以下のように定義されている。
［／使用者／ユーザ名／文字列自体］
「アプリ☆メーカー」では、予め設定された固定の文字列しか自作フィルタに設定できないが、本実施の形態では、結果テンプレートと同様の形式のパターンマッチング文が自作フィルタとして設定可能とされる。
【００３１】
当該自作フィルタは、ユーザＡのユーザ名（＠で始まるＩＤ）の文字列自体を意味する。例えば、ユーザＡのユーザ名が「＠ユーザＡ」であれば、「＠ユーザＡ」がパターンマッチング部１２に返却される。
【００３２】
続いて、パターンマッチング部１２は、返却された情報を対象パターン要素（ここでは、「うち自作フィルタの文字列のもの（１，いずれも含まない）」）に適用する（Ｓ１０５）。その結果、対象パターン要素は、「ユーザＡを含まない」に変換される。したがって、続くステップＳ１０６において、パターンマッチング部１２は、ユーザＡのリプライ群に含まれる各リプライのリプライ先のユーザ名の集合から、ユーザＡのユーザ名とは異なるユーザ名を抽出する。換言すれば、ユーザＡのリプライ群に含まれる各リプライのリプライ先のユーザ名の集合から、ユーザＡのユーザ名が除去された一部のユーザ名が獲得される。すなわち、巻き込みリプライによりリプライ先に混入したユーザＡを除外したユーザ名に絞られる。リプライ先のユーザ名にユーザＡのユーザ名を含むリプライは、ユーザＡと他のユーザとの間の関係の解析においてノイズとなる情報だからである。
【００３３】
６番目以降のパターンのそれぞれは、自作フィルタを含まない。したがって、６番目の「番にものを選ぶ（１，高頻度な）」が対象パターン要素である場合、ステップＳ１０６において、パターンマッチング部１２は、ユーザＡのユーザ名が除去されたユーザ名の集合の中で、１番目に高頻度なユーザ名を特定（選択）する。
【００３４】
続いて、７番目の「文字列自体」が対象パターン要素である場合、ステップＳ１０６において、パターンマッチング部１２は、１番目に高頻度なユーザ名の文字列自体を取得する。
【００３５】
以上で全てのパターン要素が処理されたため（Ｓ１０７）、対象アプリは、結果テンプレートによって抽出された情報（ここでは、１番目に高頻度なユーザ名の文字列自体）を、ユーザＡの解析者端末４０へ返信する（Ｓ１０８）。
【００３６】
なお、６番目以降のパターン要素は、解析目的に合わせて任意のパターン要素に変更されてもよい。
【００３７】
上述したように、本実施の形態によれば、或るユーザによるリプライのリプライ先の中から、当該ユーザ自身を除去することができる。したがって、ＳＮＳを介した関係者との間の関係の解析精度を向上させることができる。
【００３８】
なお、本実施の形態において、提供システム１０は、ＳＮＳ解析システムの一例である。パターンマッチング部１２は、取得部及び抽出部の一例である。
【００３９】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００４０】
１０          提供システム
１１          Ｗｅｂアプリ
１２          パターンマッチング部
１３          自作フィルタ実行部
２０          対象ＳＮＳ
２１          ＡＰＩ
２２          ログ記憶部
３０          作成者端末
４０          解析者端末
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
Ｂ            バス
【図１】
2020173593.tif 000003
【図２】
2020173593.tif 000004
【図３】
2020173593.tif 000005
【図４】
2020173593.tif 000006