JP5883744B2 - User attribute estimation device, user attribute estimation method, and program - Google Patents
User attribute estimation device, user attribute estimation method, and program Download PDFInfo
- Publication number
- JP5883744B2 JP5883744B2 JP2012182699A JP2012182699A JP5883744B2 JP 5883744 B2 JP5883744 B2 JP 5883744B2 JP 2012182699 A JP2012182699 A JP 2012182699A JP 2012182699 A JP2012182699 A JP 2012182699A JP 5883744 B2 JP5883744 B2 JP 5883744B2
- Authority
- JP
- Japan
- Prior art keywords
- user
- attribute
- inter
- social network
- cost
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、ユーザ属性を推定するための技術に係り、特に、ソーシャルネットワークにおいてユーザ属性を公開していないユーザの属性を推定するための技術に関する。 The present invention relates to a technique for estimating a user attribute, and more particularly to a technique for estimating an attribute of a user who does not disclose a user attribute in a social network.
ユーザ属性を推定するための第1の従来技術として、地理属性とユーザ属性の関係を学習し利用することで、与えられた地理属性から未知のユーザ属性を推定するユーザ属性推定装置がある(例えば、特許文献1参照)。 As a first conventional technique for estimating a user attribute, there is a user attribute estimation device that estimates an unknown user attribute from a given geographic attribute by learning and using a relationship between the geographic attribute and the user attribute (for example, , See Patent Document 1).
また、第2の従来技術として、ソーシャルネットワーク上における近さを定義し、近いユーザから属性を伝搬させることによって、未知のユーザ属性を推定するユーザ属性推定装置がある(例えば、非特許文献1参照)。 In addition, as a second conventional technique, there is a user attribute estimation device that estimates an unknown user attribute by defining proximity on a social network and propagating an attribute from a close user (see, for example, Non-Patent Document 1). ).
第1の従来技術と同様の手法を用いることで、ユーザが使う単語や、地理情報、時間情報などの特徴量をもとに、ユーザ属性を推定することができる。例えば、「期末試験」という単語を使うユーザは学生である確率が高い、などとするものである。しかし、これらの情報を持たないような活発でないユーザに対してはユーザ属性を推定することができなかった。 By using a method similar to that of the first conventional technique, it is possible to estimate user attributes based on feature quantities such as words used by the user, geographic information, and time information. For example, a user who uses the word “final exam” has a high probability of being a student. However, user attributes cannot be estimated for inactive users who do not have such information.
第2の従来技術はその課題に対し、ソーシャルネットワーク上で近い周囲ユーザの属性が与えられるまたは第1の従来技術を利用して推定できる場合に、これを利用し伝搬することによって、活発でないユーザに対してもユーザ属性の推定を可能としている。しかし、ソーシャルネットワーク上で直接の関係がないユーザ、例えば友人の友人といったようなユーザからも属性を伝搬しているため、伝搬される側のユーザが持たない属性まで伝搬してしまう、つまりノイズを含んで伝搬してしまうという問題があった。 The second prior art responds to the problem by giving an attribute of a nearby user on a social network, or when using the first prior art, it can be estimated by using this to propagate an inactive user. It is possible to estimate the user attribute. However, since the attributes are propagated from users who have no direct relationship on the social network, for example, users such as friends of friends, it propagates to attributes that the user on the propagation side does not have, that is, noise There has been a problem of propagation.
本発明は、上記の点に鑑みなされたものであり、よりソーシャルネットワークに適した伝搬方法によってユーザ属性を伝搬することで、ノイズを含んで伝搬してしまう問題を解決し、高精度に未知のユーザ属性を推定することを可能とする技術を提供することを目的とする。 The present invention has been made in view of the above points, and by solving a user attribute by a propagation method more suitable for a social network, it solves the problem of propagation including noise and is unknown with high accuracy. An object of the present invention is to provide a technique that makes it possible to estimate user attributes.
上記の課題を解決するために、本発明は、ソーシャルネットワーク記憶部に格納されたソーシャルネットワークの情報と、ユーザ属性記憶部に格納された前記ソーシャルネットワークに含まれるユーザの属性集合とに基づき、ユーザ属性が未知であるユーザの属性集合を推定するためのユーザ属性推定装置であって、
ある属性を有することを仮定した入力ユーザについて、前記ソーシャルネットワーク上で関係のある他のユーザと属性を共有しているほど低く、共有していないほど高くなるユーザコストを算出するユーザコスト算出手段と、
前記ソーシャルネットワークに含まれる各ユーザについての前記ユーザコスト算出手段により算出するユーザコストに基づいて、前記ソーシャルネットワークにおける総コストを最小化するようなユーザ属性集合を推定するユーザ属性推定手段と、を備えたことを特徴とするユーザ属性推定装置として構成される。
In order to solve the above-described problem, the present invention provides a user based on social network information stored in a social network storage unit and user attribute sets included in the social network stored in a user attribute storage unit. A user attribute estimation device for estimating an attribute set of a user whose attributes are unknown,
User cost calculation means for calculating a user cost that is lower as the attribute is shared with other users who are related on the social network and higher as the user does not share the input user that is assumed to have a certain attribute. ,
User attribute estimation means for estimating a user attribute set that minimizes the total cost in the social network based on the user cost calculated by the user cost calculation means for each user included in the social network. It is comprised as a user attribute estimation apparatus characterized by the above.
前記ユーザコスト算出手段は、例えば、
前記ソーシャルネットワーク記憶部に格納されているソーシャルネットワーク情報に基づいて、前記入力ユーザと関連する関連ユーザ集合を抽出する関連ユーザ集合抽出手段と、
前記入力ユーザと前記関連ユーザ集合抽出手段により抽出された関連ユーザとの間のユーザ間コストを、前記関連ユーザ集合の各関連ユーザについて算出する全関連ユーザ間コスト算出手段とを備え、
前記全関連ユーザ間コスト算出手段により算出されたユーザ間コストを前記関連ユーザ集合について足し合わせることにより前記ユーザコストを算出するように構成することができる。
The user cost calculation means is, for example,
Based on social network information stored in the social network storage unit, a related user set extracting means for extracting a related user set related to the input user;
An inter-user cost calculation unit that calculates an inter-user cost between the input user and the related user extracted by the related user set extraction unit for each related user of the related user set;
The user cost can be calculated by adding the inter-user costs calculated by the all related user cost calculation means to the related user set.
前記全関連ユーザ間コスト算出手段は、例えば、
前記ソーシャルネットワーク記憶部に格納されているソーシャルネットワーク情報に基づいて、前記入力ユーザと前記関連ユーザ集合抽出手段により抽出された関連ユーザとの間のユーザ間類似度を、前記関連ユーザ集合の各関連ユーザについて算出するユーザ間類似度算出手段と、
前記ユーザ属性記憶部に格納されているユーザ属性に基づいて、前記入力ユーザと前記関連ユーザ集合抽出手段により抽出された関連ユーザとの間のユーザ間属性距離を、前記関連ユーザ集合の各関連ユーザについて算出するユーザ間属性距離算出手段と、
前記ユーザ間類似度算出手段により算出されたユーザ間類似度と前記ユーザ間属性距離算出手段により算出されたユーザ間属性距離とに基づいて、前記ユーザ間コストを算出するユーザ間コスト算出手段とを備えることにより構成することができる。
The all related user cost calculation means is, for example,
Based on the social network information stored in the social network storage unit, the degree of similarity between users between the input user and the related user extracted by the related user set extraction unit is determined for each related user set. A similarity calculation means for calculating between users,
Based on the user attribute stored in the user attribute storage unit, the inter-user attribute distance between the input user and the related user extracted by the related user set extraction means is set as each related user of the related user set. and inter-user attribute distance calculation means to be de San attached to,
An inter-user cost calculating means for calculating the inter-user cost based on the inter-user similarity calculated by the inter-user similarity calculating means and the inter-user attribute distance calculated by the inter-user attribute distance calculating means; It can comprise by providing.
前記ユーザ属性推定装置は、前記ユーザ属性推定手段により算出された結果に基づいて、属性値を出力する出力手段を更に有してもよい。 The user attribute estimation device may further include an output unit that outputs an attribute value based on the result calculated by the user attribute estimation unit.
また、本発明は、前記ユーザ属性推定装置が実行するユーザ属性推定方法として構成することもできる。また、本発明は、コンピュータを、前記ユーザ属性推定装置における各手段として機能させるためのプログラムとして構成することもできる。 Moreover, this invention can also be comprised as a user attribute estimation method which the said user attribute estimation apparatus performs. The present invention can also be configured as a program for causing a computer to function as each means in the user attribute estimation apparatus.
本発明によれば、ソーシャルネットワーク上で関連のあるユーザ間のみで属性を伝搬し、それを例えば全ユーザについて再帰的に繰り返すことで、ソーシャルネットワーク上で関係のないユーザが持つノイズとなるような属性の影響を低減しながら属性を伝搬することができるので、伝搬される側のユーザが持たない属性まで伝搬してしまうという問題を解決し、高精度に未知のユーザ属性を推定することが可能となる。 According to the present invention, an attribute is propagated only between related users on a social network, and it is recursively repeated, for example, for all users, resulting in noise of unrelated users on the social network. Since attributes can be propagated while reducing the influence of attributes, it is possible to solve the problem of propagating to attributes that the user on the propagation side does not have and to estimate unknown user attributes with high accuracy It becomes.
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。 Embodiments of the present invention will be described below with reference to the drawings. The embodiment described below is only an example, and the embodiment to which the present invention is applied is not limited to the following embodiment.
(実施の形態の概要)
まず、本実施の形態の概要について説明する。本実施の形態では、各ユーザはソーシャルネットワーク上で関係のあるユーザとのみ属性を共有しやすいというモデリングを行い、与えられたソーシャルネットワーク全体における総コストを最小化するようにユーザから関連ユーザへと属性を伝搬することで、ユーザ属性が未知であるユーザの属性を推定するものである。すなわち直感的には、あるユーザAと関係のあるユーザBへ、さらにユーザBと関係のあるユーザCへと、再帰的な伝搬が行われるモデリングである。ただしその際、ただ再帰的に伝搬し、最も確率の高い属性のみを考慮する最尤推定ではなく、とりうる全ての属性の可能性を考慮し、その組み合わせを最適化するようなベイズ推定を行う。
(Outline of the embodiment)
First, an outline of the present embodiment will be described. In the present embodiment, modeling is performed such that each user can easily share attributes only with related users on the social network, and from the user to the related user so as to minimize the total cost of the entire given social network. By propagating the attribute, the attribute of the user whose user attribute is unknown is estimated. That is, intuitively, it is modeling in which recursive propagation is performed to a user B related to a certain user A and further to a user C related to the user B. However, in that case, instead of maximum likelihood estimation that propagates recursively and considers only the attribute with the highest probability, Bayesian estimation is performed to optimize the combination of all possible attributes. .
ここで、あるユーザがある属性を持つコストはユーザコストと呼び、ソーシャルネットワーク上で関係のあるユーザと属性を共有しているほど低く、共有していないほど高いものとする。また、与えられたソーシャルネットワーク全体におけるコストは総コストと呼び、ユーザコストを全ユーザについて合計したものとする。 Here, the cost of a certain user having a certain attribute is referred to as a user cost, and is assumed to be lower as the attribute is shared with a related user on the social network and higher as not shared. Moreover, the cost in the whole given social network is called total cost, and it is assumed that the user cost is totaled for all users.
(ユーザ属性推定装置10の構成)
図1は、与えられたソーシャルネットワークとそれに含まれるユーザの属性集合に基づき、ユーザ属性が未知であるユーザの属性を推定するためのユーザ属性推定装置10のブロック図を示す。
(Configuration of User Attribute Estimation Device 10)
FIG. 1 shows a block diagram of a user attribute estimation device 10 for estimating a user attribute whose user attribute is unknown based on a given social network and a user attribute set included therein.
同図に示すように、ユーザ属性推定装置10は、入力部11、ユーザ属性推定部12、ユーザコスト算出部14、ソーシャルネットワーク記憶部15、関連ユーザ集合抽出部17、全関連ユーザ間コスト算出部18、ユーザ間類似度算出部19、ユーザ属性記憶部16、ユーザ間属性距離算出部20、ユーザ間コスト算出部21、出力部13を有する。
As shown in the figure, the user attribute estimation device 10 includes an input unit 11, a user
本実施の形態に係るユーザ属性推定装置10は、各記憶部となる記憶装置(メモリ、ハードディスク等)を備えるコンピュータに、入力部11、ユーザ属性推定部12、ユーザコスト算出部14、ソーシャルネットワーク記憶部15、関連ユーザ集合抽出部17、全関連ユーザ間コスト算出部18、ユーザ間類似度算出部19、ユーザ属性記憶部16、ユーザ間属性距離算出部20、ユーザ間コスト算出部21、出力部13の処理に対応するプログラムを実行させることにより実現可能である。より具体的には、プログラムに従って、計算対象のデータをメモリ等から読み出し、CPUにより演算を行って、メモリ等に格納する動作を繰り返しながら処理が実行される。当該プログラムは、可搬メモリ等の記憶媒体に格納して配布し、上記コンピュータにインストールして用いてもよいし、ネットワーク上のサーバからダウンロードして上記コンピュータにインストールしてもよい。また、ソーシャルネットワーク記憶部15、ユーザ属性記憶部16のいずれか又は全部を学習及び推論の処理を行うコンピュータ内に備えずに、当該コンピュータからネットワーク経由でアクセス可能な外部装置に備えてもよい。
The user attribute estimation device 10 according to the present embodiment includes a computer including a storage device (memory, hard disk, etc.) serving as each storage unit, an input unit 11, a user
以下にユーザ属性推定装置10の各構成・動作をより詳細に説明する。 Below, each structure and operation | movement of the user attribute estimation apparatus 10 are demonstrated in detail.
<入力部11>
入力部11では、予測したいユーザ集合の情報を入力として受け付ける。そして、ユーザIDなどのユーザの検索キーとなるような情報Uinへの変換を行い、ユーザ属性推定部12へと出力する。
<Input unit 11>
The input unit 11 receives information on a user set to be predicted as an input. Then, the information is converted into information U in which becomes a user search key such as a user ID, and is output to the user
また、受け付ける情報は、ソーシャルネットワークSまたはソーシャルネットワークの範囲S'であってもよい。その場合は、ソーシャルネットワークSやS'に含まれる全てのユーザ集合または属性が公開されていないユーザ集合を抽出することで入力ユーザ集合Uinを得る。 The information to be accepted may be the social network S or the social network range S ′. In that case, the input user set U in is obtained by extracting all user sets included in the social networks S and S ′ or user sets whose attributes are not disclosed.
<ユーザ属性推定部12>
ユーザ属性推定部12では、入力部11から入力ユーザ集合Uinを入力として受け付ける。そして、ユーザコスト算出部14へとユーザuと属性aとイテレーションtにおけるユーザ集合USの属性推定結果AUS,tを出力し、ユーザuが属性aをとった場合のユーザコストC(u,a)を受け取る。ここで、ユーザ集合USとは与えられたソーシャルネットワークSに含まれる全てのユーザの集合である。そして、受け取ったユーザコストC(u,a)に基づいて、実施の形態の概要において述べたモデリングにおける総コストの最小化を行い、出力部13に対してユーザ集合Uinが持つ属性AUinを出力する。総コストの最小化手法としては、ユーザのソーシャルネットワーク上の関係を有向であると定義するならば変分ベイズ法、サンプリング法など、無向であると定義するならば前記2手法に加え動的計画法などの利用が考えられる。手法によっては、上記イテレーションが行われない手法もある。
<User
The user
図2は、例として属性集合Aに含まれる属性aが離散値であった場合にギブスサンプリングを利用した場合のユーザ属性推定部12の動作を示すフローチャートであり、以下の説明において、対応する図2のステップ番号を適宜示す。
FIG. 2 is a flowchart showing the operation of the user
まず、与えられたソーシャルネットワークにおける全ユーザ集合Usについて、各ユーザがとりうる全ての属性集合Aに含まれる属性aをとった場合のユーザコストC(u,a)を算出する(図2のステップ21)。具体的には、ユーザコストC(u,a)の算出はユーザコスト算出部14によって行われ、ユーザ属性推定部12はその算出結果であるユーザコストC(u,a)を受け取る。そして、ユーザ属性推定部12は、下記の式にようにC(u,a)を正規化することによってP(a|u)を算出する(図2のステップ22)。
First, for all user sets U s in a given social network, user cost C (u, a) is calculated when attribute a included in all attribute sets A that each user can take (FIG. 2). Step 21). Specifically, the user cost C (u, a) is calculated by the user
そして、サンプリングしたau,tにおけるユーザコストC(u,au,t)を算出し、これを全ユーザ集合Usについて足し合わせることで、総コストC(US,AU,t)を算出する(図2のステップ24)。そして、算出した総コストとイテレーションt-1の総コストの差が閾値ε以下になるまで繰り返す。差がε以上であった場合はイテレーション回数に1を足す。
Then, we sampled a u, calculates the user cost C (u, a u, t ) in t, which is adding up for all user set U s, the total cost C (U S, A U, t) a Calculate (
なお、属性集合Aに含まれる属性aが連続値であった場合は、サンプリングを次のように行う。まず、P(a|u)がなんらかの分布に従うと仮定し、その分布のパラメタを、後述する関連ユーザ集合Urelの属性aと後述するユーザ間類似度sim(u,u')から推定する。例えば、正規分布であると仮定するならば、ユーザ間類似度sim(u,u')を重みとした属性aの重み付き平均と、重み付き分散をパラメタとして利用する。推定したパラメタを持つ正規分布からサンプリングを行うが、正規分布から乱数を発生させる方法としてはボックス・ミュラー法などを利用する。 If attribute a included in attribute set A is a continuous value, sampling is performed as follows. First, it is assumed that P (a | u) follows some distribution, and parameters of the distribution are estimated from an attribute a of the related user set U rel described later and a user similarity sim (u, u ′) described later. For example, if it is assumed that the distribution is normal, the weighted average of the attribute a and the weighted variance with the user similarity sim (u, u ′) as weights are used as parameters. Sampling is performed from a normal distribution having an estimated parameter, and a box-Muller method or the like is used as a method for generating a random number from the normal distribution.
<ユーザコスト算出部14>
ユーザコスト算出部14では、ユーザ属性推定部12からユーザuと属性aとユーザ属性推定結果AUS,tを入力として受け付ける。そして、全関連ユーザ間コスト算出部18において算出した、ユーザuが属性aをとった場合の関連ユーザ集合Urelに含まれるユーザu'とのユーザ間コストC(u,u',a)に基づいて、ユーザuが属性aをとった場合のユーザコストC(u,a)を算出し、ユーザ属性推定部12へと出力する(図3のステップ31〜34)。
<User
The user
C(u,a)は、下式のように、ユーザ間コストC(u,u',a)を関連ユーザ集合Urelについて足し合わせることによって求められる。 C (u, a) is obtained by adding the inter-user cost C (u, u ′, a) with respect to the related user set U rel as shown in the following equation.
以下にユーザコスト算出部14の各構成・動作をより詳細に説明する。図3は、ユーザコスト算出部14の動作を示すフローチャートであり、以下の説明において、対応する図3のステップ番号を適宜示す。
Below, each structure and operation | movement of the user
<ソーシャルネットワーク記憶部15>
ソーシャルネットワーク記憶部15に格納されるデータの例を図4に示す。
<Social
An example of data stored in the social
ソーシャルネットワーク記憶部15では、ユーザ集合USのソーシャルネットワーク情報を格納する。ソーシャルネットワーク情報は、ユーザがどのユーザとの関連を持っているかの情報および、関連の強さを示す情報である。関連とは、Twitter(登録商標)のフォローのような有向の情報でも、Facebook(登録商標)の友達登録のような無向の情報でもよい。また、関連とは、2ユーザの間で友達登録がなされているかなどのようにユーザ同士が明示的に行うものであっても、ある期間において2ユーザの間で投稿に対する返信などがなされているかから抽出するものであってもよい。関連の強さを示す情報とは、会話の頻度、文字数、返信が続く回数、返信が行われるまでにかかる時間、共通の友人数などといった情報である。
In social
当該ソーシャルネットワーク記憶部15は、これらの情報が保存され、復元可能なものであればよく、特定のものに限定されない。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるもの、もしくは、Webページを保持するWebサーバや、データベースを具備するデータベースサーバ等である。
The social
<ユーザ属性記憶部16>
ユーザ属性記憶部16に格納されるデータの例を図5に示す。
<User
An example of data stored in the user
ユーザ属性記憶部16では、ユーザ集合USの属性集合Aを格納する。属性aは複数の属性名aiと属性値aijの組である。属性名には、性別、年代、居住地、出身地、母国語、利用可能な言語、職業、勤務先、学歴情報(出身または在学中の大学、高校…など)、所属集団名、宗教、指示する政党、経験スポーツ、嗜好(好きな食べ物、好きな音楽、好きな本…など、または、その度合いが含まれてもよい)、趣味、既婚/未婚、家族構成…などが含まれる。例えば、図5に示す例では、IDがIDaのユーザについて、属性名が「職業」である属性の属性値が「学生」であることが示されている。
In the user
また、ユーザ属性記憶部16に格納される属性集合Aは、第1の従来技術と同様の手法を用いて算出したユーザ属性、または各ユーザ属性を持つ確率値であってもよい。
Further, the attribute set A stored in the user
また、ユーザ属性記憶部16は、ユーザ集合USのプロフィール集合Pを格納するものでもよい。プロフィールPには、自己紹介文や、友人などからの紹介文などが含まれる。この場合は、前処理として、プロフィールを形態素解析し、形態素解析結果に属性名が含まれるかのマッチングなどによって、属性集合Aを抽出する。
The user
当該ユーザ属性記憶部16は、これらの情報が保存され、復元可能なものであればよく、特定のものに限定されない。例えば、データベースや、予め備えられた汎用的な記憶装置(メモリやハードディスク装置)の特定領域に記憶されるもの、もしくは、Webページを保持するWebサーバや、データベースを具備するデータベースサーバ等である。
The user
<関連ユーザ集合抽出部17>
関連ユーザ集合抽出部17では、ユーザ属性推定部12からユーザuを入力として受け付ける。そして、ソーシャルネットワーク記憶部15に格納されたソーシャルネットワークから、ユーザuの関連ユーザ集合Urelを抽出し、全関連ユーザ間コスト算出部18へと出力する(図3のステップ31)。
<Related User
The related user
関連ユーザ集合Urelはイテレーションtによらないため、ソーシャルネットワークが与えられた際に先に計算し、保持しておくものでもよい。 Since the related user set U rel does not depend on the iteration t, it may be calculated and stored in advance when a social network is given.
<全関連ユーザ間コスト算出部18>
全関連ユーザ間コスト算出部18では、ユーザ属性推定部12からユーザuと属性aと属性推定結果AUS,tを、関連ユーザ集合抽出部17からユーザuの関連ユーザ集合Urelを入力として受け付ける。そして、ユーザ間コスト算出部21において算出した、ユーザuが属性aをとった場合のユーザu'とのユーザ間コストC(u,u',a)をユーザコスト算出部14へと出力する(図3のステップ32〜33)。
<All related
All related user
図1に示すように、全関連ユーザ間コスト算出部18は、ソーシャルネットワーク記憶部15、ユーザ間類似度算出部19、ユーザ属性記憶部16、ユーザ間属性距離算出部20、ユーザ間コスト算出部21を有する。
As shown in FIG. 1, all related inter-user
以下に全関連ユーザ間コスト算出部18の各構成・動作をより詳細に説明する。
Hereinafter, each configuration and operation of the all related user
<ユーザ間類似度算出部19>
ユーザ間類似度算出部19では、ユーザ属性推定部12からユーザuを、関連ユーザ集合抽出部17からユーザu'を、ソーシャルネットワーク記憶部15から関連の強さを示す情報を入力として受け付ける。そして、ユーザuとユーザu'のユーザ間類似度sim(u,u')を算出し、ユーザ間コスト算出部21へと出力する(図3のステップ32)。
<Inter-user
The inter-user
sim(u,u')は、例えば、第2の従来技術においては、下記の式によって求められるが、下記の式に、関連の強さを示す情報に含まれる特徴量の全てまたは一部を加えた方法であってもよい。また、sim(u,u')を関連ユーザ集合Urelについて足し合わせると1になるよう正規化を行う。 For example, in the second prior art, sim (u, u ′) is obtained by the following equation. In the following equation, all or a part of the feature amount included in the information indicating the strength of association is obtained. An added method may be used. Also, normalization is performed so that sim (u, u ′) is added to the related user set U rel to be 1.
また、ユーザ間類似度sim(u,u')はイテレーションtによらないため、ソーシャルネットワークが与えられた際に先に計算し、保持しておくものでもよい。 Further, since the similarity sim (u, u ′) between users does not depend on the iteration t, it may be calculated and held first when a social network is given.
<ユーザ間属性距離算出部20>
ユーザ間属性距離算出部20では、ユーザ属性推定部12から属性aと属性推定結果AUS,tを、関連ユーザ集合抽出部17からユーザu'を、ユーザ属性記憶部16に格納されているイテレーション回数0におけるユーザ集合USの属性AUS,0を入力として受け付ける。そして、属性aとユーザu'の属性推定結果au',tのユーザ間属性距離diff(a,au',t)および属性aとイテレーション回数0におけるユーザuの属性au,0のユーザ間属性距離diff(a,au,0)を算出し、ユーザ間コスト算出部21へと出力する(図3のステップ32)。ただし、属性推定結果au',tが存在しない場合には、属性au',0を利用する。また、イテレーション回数0におけるユーザuの属性au,0が存在しない場合には、ユーザ間属性距離diff(a,au,0)は0とする。
<User attribute
The inter-user attribute
diff(a,a')は、下記の式によって求められる。すなわち、共有する属性値の数である。属性値が連続値であった場合には、属性間のコサイン類似度やピアソン相関の逆数といった距離によって求め、属性値が確率値であった場合には、一致した属性への確率値の合計によって求められる。 diff (a, a ′ ) is obtained by the following equation. That is, the number of shared attribute values. If the attribute value is a continuous value, it is determined by the distance such as the cosine similarity between the attributes and the reciprocal of the Pearson correlation. If the attribute value is a probability value, it is calculated by the sum of the probability values for the matched attributes. Desired.
ユーザ間コスト算出部21では、ユーザ間類似度算出部19からsim(u,u')と、ユーザ間属性距離算出部20からdiff(a,au',t)とdiff(a,au,0)を入力として受け取る。そして、ユーザ間コストC(u,u',a)を算出し、ユーザコスト算出部14へと出力する(図3のステップ33)。
In the inter-user
C(u,u',a)は、下記の式によって求められる。 C (u, u ′, a) is obtained by the following equation.
<出力部13>
出力部13では、ユーザ属性推定部12からユーザ集合Uinが持つ属性aUinを入力として受け付ける。そして、各属性名aiにおける属性値aijを出力する。
<
The
ここで、出力とは、ディスプレイへの表示、プリンタへの印字、音出力、外部装置への送信等を含む概念である。出力部は、ディスプレイやスピーカ等の出力デバイスを含むと考えても含まないと考えてもよい。出力部は、出力デバイスのドライバソフトまたは、出力デバイスのドライバソフトと出力デバイス等で実現され得る。 Here, output is a concept including display on a display, printing on a printer, sound output, transmission to an external device, and the like. The output unit may or may not include an output device such as a display or a speaker. The output unit can be realized by driver software of an output device, driver software of an output device, an output device, or the like.
(具体例)
以下、具体的な例を用いて本実施の形態の処理について説明する。
(Concrete example)
Hereinafter, the processing of the present embodiment will be described using a specific example.
ここでは、下記の条件における具体例を説明する。 Here, a specific example under the following conditions will be described.
・入力は入力ユーザuである
・属性名aiには職業と居住地が含まれる
・属性値a職業jには学生と会社員が含まれる
・属性値a居住地jには東京と神奈川が含まれる
・ユーザ属性記憶部16には第1の従来技術と同様の手法を用いて算出したユーザ属性が格納されている
・総コスト最小化手法にはギブスサンプリングを用いる
ユーザ属性推定部12において、まず、ユーザuが持つ属性au,tをサンプリングする。このために、ユーザコスト算出部14を通じ、ユーザuがとりうる全ての属性aについてユーザコストC(u,a)を得る。例えば、C(u,a職業:学生,居住地:東京)が2、C(u,a職業:学生,居住地:神奈川)が3、C(u,a職業:会社員,居住地:東京)が6、C(u,a職業:会社員,居住地:神奈川)が1だとすると、P(u,a職業:学生,居住地:東京)は(1/2)/(1/2+1/3+1/6+1/1)=0.25、同様に、P(u,a職業:学生,居住地:神奈川)が0.167、P(u,a職業:会社員,居住地:東京)が0.083、P(u,a職業:会社員,居住地:神奈川)が0.5と算出できる。この確率をもとに、例えば、ユーザuが持つ属性としてa職業:会社員,居住地:神奈川がサンプリングされたとすると、イテレーションtにおけるユーザuの属性推定結果au,tにa職業:会社員,居住地:神奈川が代入される。このサンプリングを全ユーザ集合USに対して繰り返し、サンプリングした属性におけるコストC(u, a職業:会社員,居住地:神奈川)を全ユーザについて足し合わせることで総コストC(US,AUS,t)を得る。以上のステップをイテレーションし、前イテレーションにおける総コストC(US,AUS,t-1)との差がε以下になるまで繰り返す。
・ Input is input user u ・ Attribute name a i includes occupation and residence ・ Attribute value a occupation j includes students and office workers ・ Attribute value a residence j includes Tokyo and Kanagawa Included-The user
なお、属性値が連続値、例えば、IT系への嗜好の度合いなどの場合、例えば、関連ユーザがu1、u2、u3で、sim(u,u1)=0.6、au1=0.8、sim(u,u2)=0.3、au1=0.6、sim(u,u3)=0.1、au1=0.4だとすると、この重み付き平均は(0.6×0.8+0.3×0.6+0.1×0.4)/(0.6+0.3+0.1)=0.6、重み付き分散の二乗は(0.6×0.8^2+0.3×0.6^2+0.1×0.4^2)/(0.6+0.3+0.1)−0.6^2=0.148と算出できる。そして、この2つをパラメタとした正規分布から、ボックス・ミュラー法を利用して乱数を発生させることで、サンプリングを行う。 When the attribute value is a continuous value, for example, the degree of preference for IT, for example, the related user is u 1 , u 2 , u 3 , sim (u, u 1 ) = 0.6, a u1 = 0.8 , Sim (u, u 2 ) = 0.3, a u1 = 0.6, sim (u, u 3 ) = 0.1, a u1 = 0.4, this weighted average is (0.6 × 0.8 + 0.3 × 0.6 + 0.1 × 0.4) /(0.6+0.3+0.1)=0.6, square of weighted variance is (0.6 × 0.8 ^ 2 + 0.3 × 0.6 ^ 2 + 0.1 × 0.4 ^ 2) / (0.6 + 0.3 + 0.1) −0.6 ^ 2 = 0.148 And can be calculated. Then, sampling is performed by generating random numbers using the Box-Muller method from the normal distribution with these two parameters.
ユーザコスト算出部14において、ユーザu、属性a職業:学生,居住地:東京が入力される場合の例を説明する。まず、関連ユーザ集合抽出部17によって、ソーシャルネットワーク記憶部15から関連ユーザ集合Urelを得る。そして全関連ユーザ間コスト算出部18を通じ、関連ユーザ集合Urelに含まれる全ユーザu'について、ユーザ間コストC(u,u', a職業:学生,居住地:東京)を得る。これを関連ユーザ集合Urelについて足し合わせることでユーザコストC(u, a職業:学生,居住地:東京)を算出し、ユーザ属性推定部12へと出力する。
An example in which user u, attribute a occupation: student, and residence: Tokyo are input in the user
全関連ユーザ間コスト算出部18において、ユーザu、ユーザu'、属性a職業:学生,居住地:東京が入力される場合の例を説明する。まず、ユーザ間類似度算出部19において、共通の友人間における会話回数をホップ数でわったものを全て足し合わせることで、ユーザuとユーザu'のユーザ間類似度を算出する。例えば、ユーザuとユーザu'の共通の友人がua、ubであり、ユーザuとユーザu'は5回、ユーザuとユーザuaは3回、ユーザu'とユーザuaは1回、ユーザuとユーザubは4回、ユーザu'とユーザubは6回会話していたとすると、5+(3+1)/2+(4+6)/2=12となる。これを正規化することで、例えば0.6となったとする。同時に、ユーザ間属性距離算出部20において、属性a職業:学生,居住地:東京とユーザu'の属性推定結果au',tのユーザ間属性距離diff(a,au',t)および属性aとイテレーション回数0におけるユーザuの属性au,0のユーザ間属性距離diff(a,au,0)を求める。例えば、ユーザu'の属性推定結果au',tがa職業:会社員,居住地:神奈川であったとすれば、属性aと属性推定結果au',tは2つの属性名の属性値が異なるので、diff(a,au',t)は2となる。同様に、diff(a,au,0)が1と求められたとする。次に、ユーザ間コスト算出部21において、C(u,u', a職業:学生,居住地:東京)を算出する。αを0.8とすると、0.6×2+0.8×1=2と算出することができる。
An example in which user u, user u ′, attribute a occupation: student, and residence: Tokyo are input in all related user
なお、属性値が確率値、例えば、ユーザuの職業:学生の確率が0.4、職業:会社員の確率が0.6で、ユーザu'の職業:学生の確率が0.2、職業:会社員の確率が0.8の場合、ユーザ間属性距離は、この2つのコサイン類似度やピアソン相関の逆数をとったものとして求める。 Note that the attribute value is a probability value, for example, user u's occupation: student probability is 0.4, occupation: office worker probability is 0.6, user u 'occupation: student probability is 0.2, occupation: office worker probability. In the case of 0.8, the attribute distance between users is obtained by taking the reciprocal of these two cosine similarity and Pearson correlation.
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。 The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.
10 ユーザ属性推定装置
11 入力部
12 ユーザ属性推定部
13 出力部
14 ユーザコスト算出部
15 ソーシャルネットワーク記憶部
16 ユーザ属性記憶部
17 関連ユーザ集合抽出部
18 全関連ユーザ間コスト算出部
19 ユーザ間類似度算出部
20 ユーザ間属性距離算出部
21 ユーザ間コスト算出部
DESCRIPTION OF SYMBOLS 10 User attribute estimation apparatus 11
Claims (7)
ある属性を有することを仮定した入力ユーザについて、前記ソーシャルネットワーク上で関係のある他のユーザと属性を共有しているほど低く、共有していないほど高くなるユーザコストを算出するユーザコスト算出手段と、
前記ソーシャルネットワークに含まれる各ユーザについての前記ユーザコスト算出手段により算出するユーザコストに基づいて、前記ソーシャルネットワークにおける総コストを最小化するようなユーザ属性集合を推定するユーザ属性推定手段と、
を備えたことを特徴とするユーザ属性推定装置。 In order to estimate the attribute set of a user whose user attribute is unknown based on the social network information stored in the social network storage unit and the user attribute set included in the social network stored in the user attribute storage unit The user attribute estimation device of
User cost calculation means for calculating a user cost that is lower as the attribute is shared with other users who are related on the social network and higher as the user does not share the input user that is assumed to have a certain attribute. ,
User attribute estimation means for estimating a user attribute set that minimizes the total cost in the social network based on the user cost calculated by the user cost calculation means for each user included in the social network;
A user attribute estimation device comprising:
前記ソーシャルネットワーク記憶部に格納されているソーシャルネットワーク情報に基づいて、前記入力ユーザと関連する関連ユーザ集合を抽出する関連ユーザ集合抽出手段と、
前記入力ユーザと前記関連ユーザ集合抽出手段により抽出された関連ユーザとの間のユーザ間コストを、前記関連ユーザ集合の各関連ユーザについて算出する全関連ユーザ間コスト算出手段とを備え、
前記全関連ユーザ間コスト算出手段により算出されたユーザ間コストを前記関連ユーザ集合について足し合わせることにより前記ユーザコストを算出する
ことを特徴とする請求項1に記載のユーザ属性推定装置。 The user cost calculation means is
Based on social network information stored in the social network storage unit, a related user set extracting means for extracting a related user set related to the input user;
An inter-user cost calculation unit that calculates an inter-user cost between the input user and the related user extracted by the related user set extraction unit for each related user of the related user set;
The user attribute estimation device according to claim 1, wherein the user cost is calculated by adding the inter-user cost calculated by the all-related user cost calculation unit to the related user set.
前記ソーシャルネットワーク記憶部に格納されているソーシャルネットワーク情報に基づいて、前記入力ユーザと前記関連ユーザ集合抽出手段により抽出された関連ユーザとの間のユーザ間類似度を、前記関連ユーザ集合の各関連ユーザについて算出するユーザ間類似度算出手段と、
前記ユーザ属性記憶部に格納されているユーザ属性に基づいて、前記入力ユーザと前記関連ユーザ集合抽出手段により抽出された関連ユーザとの間のユーザ間属性距離を、前記関連ユーザ集合の各関連ユーザについて算出するユーザ間属性距離算出手段と、
前記ユーザ間類似度算出手段により算出されたユーザ間類似度と前記ユーザ間属性距離算出手段により算出されたユーザ間属性距離とに基づいて、前記ユーザ間コストを算出するユーザ間コスト算出手段と、
を備えることを特徴とする請求項2に記載のユーザ属性推定装置。 The cost calculation means for all related users is
Based on the social network information stored in the social network storage unit, the degree of similarity between users between the input user and the related user extracted by the related user set extraction unit is determined for each related user set. A similarity calculation means for calculating between users,
Based on the user attribute stored in the user attribute storage unit, the inter-user attribute distance between the input user and the related user extracted by the related user set extraction means is set as each related user of the related user set. and inter-user attribute distance calculation means to be de San attached to,
An inter-user cost calculating unit that calculates the inter-user cost based on the inter-user similarity calculated by the inter-user similarity calculating unit and the inter-user attribute distance calculated by the inter-user attribute distance calculating unit;
The user attribute estimation apparatus according to claim 2, comprising:
ある属性を有することを仮定した入力ユーザについて、前記ソーシャルネットワーク上で関係のある他のユーザと属性を共有しているほど低く、共有していないほど高くなるユーザコストを算出するユーザコスト算出ステップと、
前記ソーシャルネットワークに含まれる各ユーザについての前記ユーザコスト算出ステップにより算出するユーザコストに基づいて、前記ソーシャルネットワークにおける総コストを最小化するようなユーザ属性集合を推定するユーザ属性推定ステップと、
を備えたことを特徴とするユーザ属性推定方法。 In order to estimate the attribute set of a user whose user attribute is unknown based on the social network information stored in the social network storage unit and the user attribute set included in the social network stored in the user attribute storage unit A user attribute estimation method executed by the user attribute estimation device of
A user cost calculation step for calculating a user cost that is lower as the attribute is shared with other users who are related on the social network and higher as the user does not share the input user assuming that the attribute has an attribute; ,
A user attribute estimation step for estimating a user attribute set that minimizes the total cost in the social network based on the user cost calculated by the user cost calculation step for each user included in the social network;
A user attribute estimation method comprising:
前記ソーシャルネットワーク記憶部に格納されているソーシャルネットワーク情報に基づいて、前記入力ユーザと関連する関連ユーザ集合を抽出する関連ユーザ集合抽出ステップと、
前記入力ユーザと前記関連ユーザ集合抽出ステップにより抽出された関連ユーザとの間のユーザ間コストを、前記関連ユーザ集合の各関連ユーザについて算出する全関連ユーザ間コスト算出ステップと、
前記全関連ユーザ間コスト算出ステップにより算出されたユーザ間コストを前記関連ユーザ集合について足し合わせることにより前記ユーザコストを算出するステップと
を備えることを特徴とする請求項4に記載のユーザ属性推定方法。 The user cost calculating step includes:
A related user set extraction step for extracting a related user set related to the input user based on social network information stored in the social network storage unit;
A cost calculation step between all related users for calculating, for each related user in the related user set, an inter-user cost between the input user and the related user extracted by the related user set extraction step;
The user attribute estimation method according to claim 4, further comprising: calculating the user cost by adding the inter-user cost calculated by the all related user cost calculation step to the related user set. .
前記ソーシャルネットワーク記憶部に格納されているソーシャルネットワーク情報に基づいて、前記入力ユーザと前記関連ユーザ集合抽出ステップにより抽出された関連ユーザとの間のユーザ間類似度を、前記関連ユーザ集合の各関連ユーザについて算出するユーザ間類似度算出ステップと、
前記ユーザ属性記憶部に格納されているユーザ属性に基づいて、前記入力ユーザと前記関連ユーザ集合抽出ステップにより抽出された関連ユーザとの間のユーザ間属性距離を、前記関連ユーザ集合の各関連ユーザについて算出するユーザ間属性距離算出ステップと、
前記ユーザ間類似度算出ステップにより算出されたユーザ間類似度と前記ユーザ間属性距離算出ステップにより算出されたユーザ間属性距離とに基づいて、前記ユーザ間コストを算出するユーザ間コスト算出ステップと、
を備えることを特徴とする請求項5に記載のユーザ属性推定方法。 The all related user cost calculation step includes:
Based on the social network information stored in the social network storage unit, the degree of similarity between users between the input user and the related user extracted by the related user set extraction step is determined for each association of the related user set. A user-to-user similarity calculation step for calculating a user;
Based on the user attribute stored in the user attribute storage unit, the inter-user attribute distance between the input user and the related user extracted by the related user set extraction step is set as each related user of the related user set. and inter-user attribute distance calculation step to be de San attached to,
An inter-user cost calculation step for calculating the inter-user cost based on the inter-user similarity calculated by the inter-user similarity calculation step and the inter-user attribute distance calculated by the inter-user attribute distance calculation step;
The user attribute estimation method according to claim 5, further comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012182699A JP5883744B2 (en) | 2012-08-21 | 2012-08-21 | User attribute estimation device, user attribute estimation method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012182699A JP5883744B2 (en) | 2012-08-21 | 2012-08-21 | User attribute estimation device, user attribute estimation method, and program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2014041437A JP2014041437A (en) | 2014-03-06 |
| JP5883744B2 true JP5883744B2 (en) | 2016-03-15 |
Family
ID=50393663
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012182699A Expired - Fee Related JP5883744B2 (en) | 2012-08-21 | 2012-08-21 | User attribute estimation device, user attribute estimation method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5883744B2 (en) |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5535787B2 (en) * | 2010-06-21 | 2014-07-02 | Kddi株式会社 | Classification device, classification method, and classification program |
| US8495143B2 (en) * | 2010-10-29 | 2013-07-23 | Facebook, Inc. | Inferring user profile attributes from social information |
-
2012
- 2012-08-21 JP JP2012182699A patent/JP5883744B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2014041437A (en) | 2014-03-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Mohamad et al. | Sequential sampling strategy for extreme event statistics in nonlinear dynamical systems | |
| Simar et al. | On testing equality of distributions of technical efficiency scores | |
| Rodríguez et al. | Label switching in Bayesian mixture models: Deterministic relabeling strategies | |
| US20110185020A1 (en) | System and method for social networking | |
| US20180144256A1 (en) | Categorizing Accounts on Online Social Networks | |
| Bolfarine et al. | Bimodal symmetric-asymmetric power-normal families | |
| US20130086072A1 (en) | Method and system for extracting and classifying geolocation information utilizing electronic social media | |
| Vincent et al. | Estimating population size with link-tracing sampling | |
| US20170032275A1 (en) | Entity matching for ingested profile data | |
| CN107944032B (en) | Method and apparatus for generating information | |
| JP5730741B2 (en) | Topic recommendation device, method and program | |
| Farahani et al. | Bayesian statistical inference for weighted exponential distribution | |
| Reyes et al. | Residual kriging for functional spatial prediction of salinity curves | |
| Wang et al. | Interval estimation by frequentist model averaging | |
| JP5791565B2 (en) | User attribute estimation device, user attribute estimation method, and program | |
| JP2014219985A (en) | Field opinion leader extraction method, and field opinion leader extraction device | |
| Osgood et al. | A theoretical basis for entropy-scaling effects in human mobility patterns | |
| Menezes et al. | Nonparametric spatial prediction under stochastic sampling design | |
| JP5883744B2 (en) | User attribute estimation device, user attribute estimation method, and program | |
| Wu et al. | Some monotonicity results for the fractional Laplacian in unbounded domain | |
| JP6204261B2 (en) | Topic modeling apparatus, topic modeling method, and topic modeling program | |
| Alemdjrodo et al. | New empirical likelihood inference for the mean residual life with length-biased and right-censored data | |
| CN112286900A (en) | A data processing method, device, equipment and storage medium | |
| Zhu et al. | How do online social networks grow? | |
| Shang et al. | Grouped time-series forecasting with an application to regional infant mortality counts |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141020 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150717 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150728 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150908 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160202 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160208 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5883744 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |