JP5350319B2 - Friend recommendation device, method and program - Google Patents
Friend recommendation device, method and program Download PDFInfo
- Publication number
- JP5350319B2 JP5350319B2 JP2010116542A JP2010116542A JP5350319B2 JP 5350319 B2 JP5350319 B2 JP 5350319B2 JP 2010116542 A JP2010116542 A JP 2010116542A JP 2010116542 A JP2010116542 A JP 2010116542A JP 5350319 B2 JP5350319 B2 JP 5350319B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- users
- user
- information
- weight parameter
- 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
- 238000000034 method Methods 0.000 title claims description 33
- 238000004891 communication Methods 0.000 claims description 120
- 238000007477 logistic regression Methods 0.000 claims description 6
- 238000010276 construction Methods 0.000 description 32
- 230000008569 process Effects 0.000 description 13
- 238000000605 extraction Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 7
- 230000012010 growth Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 208000019901 Anxiety disease Diseases 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000036506 anxiety Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007773 growth pattern Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、友人推薦装置及び方法及びプログラムに係り、特に、BBS(Bulletin Boad System)、SNS(Social Network Service)、QAサイト等の、ネットワーク上で提供されるユーザ間のコミュニケーションにおいて、ユーザの集合であるコミュニティ内のコミュニケーションを活性化させるために、コミュニティの友人を紹介する友人推薦装置及び方法及びプログラムに関する。 The present invention relates to a friend recommendation device, method and program, and in particular, in communication between users provided on a network, such as BBS (Bulletin Boad System), SNS (Social Network Service), QA site, etc. The present invention relates to a friend recommendation device, method and program for introducing friends in a community in order to activate communication within the community.
近年、インターネットの発展に伴い、ネットワークを介したコミュニケーションが普及している。中でも、メーリングリストや掲示板、チャット、ブログ、QAサイト、ソーシャルネットワーキングサービスなどにおいて、ユーザ間の面識の有無に関わらず、コミュニティを形成し、活発なコミュニケーションおよび情報交換が行われている。 In recent years, with the development of the Internet, communication via a network has become widespread. In particular, a mailing list, a bulletin board, a chat, a blog, a QA site, a social networking service, and the like form a community and actively communicate and exchange information regardless of whether or not there is an acquaintance between users.
このようなネットワーク上のコミュニティにおいて、さまざまな企業が商品やサービスを宣伝し、さらに消費者の生の声を収集するのに利活用している。ユーザは、自身の趣味や興味に関して、情報交換や情報収集をし、また新たな人との出会いの場として活用している。 In such a networked community, various companies use it to advertise products and services and to collect consumer voices. Users exchange information and collect information about their hobbies and interests, and use it as a place to meet new people.
そういったコミュニティを活性化する手法は、これまでいくつも提案されてきた。例えば、新旧問わず様々なユーザとコミュニケーションをとっている重要ユーザを発見し、その所属するコミュニティを活性コミュニティとしてユーザに提示する装置が開示されている(例えば、特許文献1参照)。これは、重要ユーザの存在が、ユーザにおける見ず知らずの相手とのコミュニケーションに感じる不安を軽減し、コミュニケーションしやすい環境を作るという仮説に基づいた手法である。 A number of methods for activating such communities have been proposed. For example, an apparatus that discovers an important user who is communicating with various users regardless of old or new and presents the community to which the user belongs as an active community is disclosed (for example, see Patent Document 1). This is a method based on the hypothesis that the presence of an important user reduces the anxiety felt in communication with a stranger in the user and creates an environment where communication is easy.
また、友人である可能性の高い2ユーザを発見し、それらにコミュニケーションをとらせる手法も提案されている。友人関係は、離散数学でいうところのグラフにモデル化できる。例えば、ユーザAがユーザBを友人と認識している場合に、A、Bそれぞれをノードとみなし、Aを始点、Bを終点とする有向枝が存在するとみなせば、有向グラフにモデル化できる。このとき、一般のグラフには成長に制約があり、それを利用することでエッジの発生する可能性の高い2ノード、つまり友人になる可能性の高い2ユーザを発見するものがある(例えば、非特許文献1参照)。この手法を用いて友人になる可能性の高い2ユーザにコミュニケーションをとらせることでコミュニティを活性化することができる。 In addition, a method of finding two users who are likely to be friends and allowing them to communicate with each other has been proposed. Friendship can be modeled as a graph in discrete mathematics. For example, when user A recognizes user B as a friend, A and B are regarded as nodes, and if a directional branch having A as a start point and B as an end point exists, it can be modeled as a directed graph. At this time, there is a growth limitation in a general graph, and there are those that find two nodes that are likely to generate edges, that is, two users who are likely to be friends (for example, Non-patent document 1). A community can be activated by having two users who are likely to become friends using this method communicate.
従来のオンラインコミュニティ活性化手法は、コミュニティそのものの性質か、あるいはコミュニティに属する1人のユーザの性質しか着目していない。しかしながら、コミュニケーションは本来2人のユーザで行われるものである。 Conventional online community activation techniques focus only on the nature of the community itself or the nature of a single user belonging to the community. However, communication is originally performed by two users.
例えば、特許文献1に記載の手法では、コミュニティの性質からユーザにとってどのコミュニティが参加しやすいかはわかるが、ユーザの性質に着目していないためそのコミュニティのどのメンバとコミュニケーションがとりやすいかはわからない。従って、十分にコミュニティを活性化することはできないと考えられる。
For example, in the technique described in
また、非特許文献1記載の、グラフに基づく友人である2ユーザを発見する手法は、一般的なグラフに適用される手法に基づいており、個々のグラフの特性は考慮しない。そのため、十分な精度で友人である2ユーザを発見できないという問題点があった。
Further, the method described in Non-Patent
本発明は、このような問題に鑑みてなされたもので、その目的とするところは、コミュニティ内のユーザ間の友人関係をグラフにモデル化した際に、そのグラフの特性に基づいて将来友人となる可能性の高い2ユーザを発見し、友人として推薦することによりコミュニケーションを促進することが可能な友人推薦装置及び方法及びプログラムを提供することである。 The present invention has been made in view of such a problem, and the purpose of the present invention is to create a graph of friendships between users in a community, and based on the characteristics of the graph, It is an object to provide a friend recommendation device, method, and program capable of facilitating communication by finding two users who are likely to become and recommending them as friends.
上記の課題を解決するために、本発明(請求項1)は、各ユーザがIDを持ち、ユーザ間でコミュニケーションをとることを目的とするオンラインコミュニティシステムにおいて、友人を推薦するための友人推薦装置であって、
オンラインコミュニティにおけるユーザを取得し、コミュニケーション記憶手段に格納するコミュニケーション情報取得手段と、
コミュニケーション記憶手段のコミュニケーション情報から、オンラインコミュニティにおける3ユーザをコミュニケーションの有無のパターンから分類し、3−ノードのグラフ情報として3−部分グラフ記憶手段に格納する3−部分グラフ情報取得手段と、
コミュニケーション記憶手段のコミュニケーション情報から、オンラインコミュニティにおける2ユーザについて、コミュニケーションの有無に関する情報と、3−部分グラフ記憶手段の3−部分グラフ情報から、オンラインコミュニティにおける2ユーザについて、2ユーザ以外の別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの頻度を取得し、エッジタイプ記憶手段に格納するエッジタイプ情報取得手段と、
オンラインコミュニティにおける2ユーザについて、エッジタイプ記憶手段に格納されているコミュニケーションの有無に関する情報と、別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とを用いて、重みパラメータを算出し、重みパラメータ記憶手段に格納する重みパラメータ取得手段と、
ユーザの識別子が与えられると、前記コミュニケーションの有無に関する情報と、別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数と、重みパラメータ記憶手段の重みパラメータとを用いて、該ユーザに対して別ユーザを友人として推薦する友人推薦手段と、を有する。
In order to solve the above-mentioned problems, the present invention (Claim 1) is directed to a friend recommendation device for recommending friends in an online community system in which each user has an ID and aims to communicate with each other. Because
Communication information acquisition means for acquiring users in an online community and storing them in a communication storage means;
3-partial graph information acquisition means for classifying the three users in the online community from the communication information of the communication storage means based on the presence / absence pattern of communication, and storing it in the 3-partial graph storage means as 3-node graph information;
From the communication information in the communication storage means, information about the presence or absence of communication for two users in the online community, and from the 3-partial graph information in the three-part graph storage means, for two users in the online community, another one other than two users Edge type information acquisition means for acquiring the frequency of which each user is classified according to the pattern of presence / absence of communication of three users, and storing in the edge type storage means;
For the two users in the online community, using the information on the presence / absence of communication stored in the edge type storage means and the number of other users classified into the pattern of presence / absence of communication of three users, respectively. , Weight parameter acquisition means for calculating weight parameters and storing them in weight parameter storage means;
When a user identifier is given, information on the presence / absence of communication, the number of another user classified as a pattern of presence / absence of communication of three users, and the weight parameter of the weight parameter storage means And a friend recommendation means for recommending another user as a friend to the user.
また、本発明(請求項2)は、重みパラメータ算出手段において、
コミュニケーションの有無に関する情報と、別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とに基づいて、ロジスティック回帰分析によって重みパラメータを算出する手段を含む。
Further, the present invention (Claim 2) is a weight parameter calculating means,
Means for calculating a weight parameter by logistic regression analysis based on information on the presence / absence of communication and the number of another user classified into each of the patterns of presence / absence of communication of three users.
また、本発明(請求項3)は、各ユーザがIDを持ち、ユーザ間でコミュニケーションをとることを目的とするオンラインコミュニティシステムにおいて、友人を推薦するための友人推薦方法であって、
コミュニケーション記憶手段、3−部分グラフ記憶手段、エッジタイプ記憶手段、重みパラメータ記憶手段を格納し、コミュニケーション情報取得手段、3−部分グラフ情報取得手段、エッジタイプ情報取得手段、重みパラメータ取得手段、友人推薦手段とを有する装置において、
コミュニケーション情報取得手段が、オンラインコミュニティにおけるユーザを取得し、コミュニケーション記憶手段に格納するコミュニケーション情報取得ステップと、
3−部分グラフ情報取得手段が、コミュニケーション記憶手段のコミュニケーション情報から、オンラインコミュニティにおける3ユーザをコミュニケーションの有無のパターンから分類し、3−ノードのグラフ情報として3−部分グラフ記憶手段に格納する3−部分グラフ情報取得ステップと、
エッジタイプ情報取得手段が、コミュニケーション記憶手段のコミュニケーション情報から、オンラインコミュニティにおける2ユーザについて、コミュニケーションの有無に関する情報と、3−部分グラフ記憶手段の3−部分グラフ情報から、オンラインコミュニティにおける2ユーザについて、2ユーザ以外の別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの頻度を取得し、エッジタイプ記憶手段に格納するエッジタイプ情報取得ステップと、
重みパラメータ取得手段が、オンラインコミュニティにおける2ユーザについて、エッジタイプ記憶手段に格納されているコミュニケーションの有無に関する情報と、別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とを用いて、重みパラメータを算出し、重みパラメータ記憶手段に格納する重みパラメータ取得ステップと、
友人推薦手段が、ユーザの識別子が与えられると、3−部分グラフ記憶手段のコミュニケーションの有無に関する情報と、エッジタイプ記憶手段の別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数と、重みパラメータ記憶手段の重みパラメータとを用いて、該ユーザに対して別ユーザを友人として推薦する友人推薦ステップと、を行う。
Further, the present invention (Claim 3) is a friend recommendation method for recommending a friend in an online community system for which each user has an ID and aims to communicate between users,
Communication storage means, 3-part graph storage means, edge type storage means, weight parameter storage means are stored, communication information acquisition means, 3-part graph information acquisition means, edge type information acquisition means, weight parameter acquisition means, friend recommendation A device having means for:
A communication information acquisition means for acquiring a user in an online community and storing it in a communication storage means;
The 3-partial graph information acquisition unit classifies the three users in the online community from the communication presence / absence pattern based on the communication information stored in the communication storage unit, and stores the information in the 3-partial graph storage unit as 3-node graph information. A subgraph information acquisition step;
The edge type information acquisition means, from the communication information of the communication storage means, about two users in the online community, information about the presence or absence of communication, from the 3-partial graph information of the 3-partial graph storage means, about two users in the online community, An edge type information acquisition step of acquiring the frequency of which one user other than the two users is classified according to the pattern of presence / absence of communication of each of the three users, and storing the frequency in an edge type storage unit;
For the two users in the online community, the weight parameter acquisition means is classified into the information on the presence / absence of communication stored in the edge type storage means and the pattern of the presence / absence of communication of another one user for each of the three users. A weight parameter obtaining step of calculating a weight parameter using the number of and storing the weight parameter in a weight parameter storage means;
When the friend recommendation means is given a user identifier, the information about the presence / absence of communication of the 3-partial graph storage means and another user of the edge type storage means are classified into the patterns of presence / absence of communication of 3 users respectively. The friend recommendation step of recommending another user as a friend to the user is performed using the number of the received parameters and the weight parameter of the weight parameter storage means.
また、本発明(請求項4)は、重みパラメータ算出ステップにおいて、
コミュニケーションの有無に関する情報と、別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とに基づいて、ロジスティック回帰分析によって重みパラメータを算出する。
Further, the present invention (Claim 4) is the weight parameter calculating step,
A weight parameter is calculated by logistic regression analysis based on information on the presence / absence of communication and the number of another user classified into the pattern of presence / absence of communication of three users.
また、本発明(請求項5)は、請求項1乃至請求項2のいずれか1項に記載の友人推薦装置を構成する各手段としてコンピュータを機能させるための友人推薦プログラムである。
Moreover, this invention (Claim 5) is a friend recommendation program for functioning a computer as each means which comprises the friend recommendation apparatus of any one of
本発明はコミュニティの成長過程において、特に3ユーザに注目しその中での友人関係の構造の典型的な変化を発見し、その情報を用いることでそのコミュニティ中で友人となる可能性の高い2ユーザを発見する。友人関係の構造の典型的な変化はコミュニティ毎に抽出されるため、これまでの一般的なネットワークの成長パターンに基づく手法よりも高精度にユーザに友人を推薦できるようになる。
The present invention finds a typical change in the structure of friendships in the growth process of a community, particularly paying attention to three users, and using the
以下図面と共に、本発明の実施の形態を説明する。 Embodiments of the present invention will be described below with reference to the drawings.
本発明も、非特許文献1と同様、ユーザ間の友人関係をグラフにモデル化し、そのグラフの成長の制約に基づいて友人になる可能性の高い2ユーザを発見する。グラフの成長の制約といっても、ネットワークモチーフ(Milo, R. et al., "Network motifs: simple building blocks of complex networks," 2002)と呼ばれるグラフの局所構造に頻繁に出現する部分グラフの形状に着目した手法である。ネットワークモチーフはグラフの種類によって異なることが知られている。そのため、スケールフリー性のような一般的なグラフの成長の制約よりは、より高精度に将来友人となる可能性の高い2ユーザを発見可能であると考えた。
In the present invention, similar to
具体的には、一般にグラフにはそれぞれ出現しやすい部分グラフの形状は決まっている。したがって出現しやすい部分グラフを発見できれば、その出現しやすい部分グラフをさらに出現させる2ノード間、すなわちエッジが発生しそうな2ノードを発見することができる。 Specifically, in general, the shape of a subgraph that is likely to appear in each graph is determined. Therefore, if a subgraph that is likely to appear can be found, it is possible to find a node between two nodes that cause the subgraph that is likely to appear, that is, two nodes that are likely to generate an edge.
本発明では、部分グラフでも、特に3ノードのものに着目した。これは、ノード数が増えれば増えるほど計算のコストがかかるためである。2ノード間にエッジが発生するかどうかについて、別のもう1つのノードからなる部分グラフの形状に着目すると、その部分グラフの形状はエッジの有無、方向性、対称性から24種類しか存在しない。つまり着目している2ノードに対して、それ以外の1ノードからなる部分グラフの形状が24種類のどれに分類されるかをカウントする。すると、2ノードは24次元の、各成分が自然数のベクトルとみなせる。 In the present invention, attention is paid particularly to a subgraph having three nodes. This is because the calculation cost increases as the number of nodes increases. As to whether or not an edge is generated between two nodes, paying attention to the shape of a subgraph consisting of another node, there are only 24 types of subgraphs due to the presence / absence of edges, directionality, and symmetry. That is, it counts to which of 24 types the shape of the subgraph consisting of one node other than the two nodes of interest is classified. Then, the two nodes can be regarded as 24-dimensional, each component being a natural number vector.
現在のグラフの各2ノード間のエッジの有無を訓練データとし、エッジの無い2ノード間をテストデータとみなせば、従来のベクトル識別モデルの利用が可能となる。すなわち、訓練データからグラフに出現しやすい部分グラフの形状を学習し、その部分グラフの形状に基づきエッジの発生しやすい2ノードを高精度に発見する。その2ノードにあたる2ユーザ間でコミュニケーションを推薦することにより、コミュニティの活性化を図る。 If the presence or absence of an edge between each two nodes of the current graph is used as training data, and the two nodes without an edge are regarded as test data, the conventional vector identification model can be used. That is, the shape of a subgraph that is likely to appear in the graph is learned from the training data, and two nodes that are likely to generate edges are found with high accuracy based on the shape of the subgraph. The community is activated by recommending communication between two users corresponding to the two nodes.
以下に具体的に説明する。 This will be specifically described below.
図1は、本発明の一実施の形態における友人推薦装置の構成を示す。 FIG. 1 shows a configuration of a friend recommendation device according to an embodiment of the present invention.
同図に示す友人推薦装置1は、コミュニケーション情報抽出部10、3−部分グラフ情報テーブル構築部20、エッジタイプ出現頻度テーブル構築部30、友人推薦部40、重みパラメータ更新部50、記憶部60、通信部70、入出力部80から構成され、通信部70はネットワーク3に接続されており、入出力部80は、入力装置や表示装置等の外部装置4に接続されている。
The
3―部分グラフ情報テーブル構築部20は、3−部分グラフマッチング部21から構成される。
The 3-partial graph information
記憶部60は、コミュニケーション情報テーブル61、3−部分グラフ情報テーブル62、エッジタイプ出現頻度テーブル63、重みパラメータ記憶部64を格納する記憶媒体である。以下に記憶部60内の各テーブルについて説明する。
The
<コミュニケーション情報テーブル>
コミュニケーション情報テーブル61には、図2に示すように、ユーザIDフィールド、友人IDフィールドが含まれる。
<Communication information table>
As shown in FIG. 2, the communication information table 61 includes a user ID field and a friend ID field.
ユーザIDフィールドは、ユーザを特定する識別子が、コミュニケーション情報抽出部10により設定される。
In the user ID field, an identifier for identifying a user is set by the communication
友人IDフィールドは、当該行のユーザの友人にあたる別のユーザのユーザIDが、コミュニケーション情報抽出部10により設定される。
In the friend ID field, the communication
コミュニケーション情報テーブル61に記載されているユーザ間の友人関係は、各ユーザをノードとし、ユーザIDフィールド記載のユーザに対応するノードから友人IDフィールド記載のユーザに対応するノードへ有向枝を張ると、離散数学で扱う有向グラフにモデル化することができる。図3に、図2のコミュニケーション情報テーブル61の例を有向グラフにモデル化したものを示す。 The friend relationship between users described in the communication information table 61 is that each user is a node, and a directional branch is extended from a node corresponding to the user described in the user ID field to a node corresponding to the user described in the friend ID field. Can be modeled as a directed graph in discrete mathematics. FIG. 3 shows an example of the communication information table 61 of FIG. 2 modeled as a directed graph.
<3−部分グラフ情報テーブル>
3−部分グラフ情報テーブル62には、図3に示すように、ポジション1ユーザIDフィールド、ポジション2ユーザIDフィールド、ポジション3ユーザIDフィールド、3−部分グラフパターンフィールドが含まれる。
<3-Partial graph information table>
As shown in FIG. 3, the 3-part graph information table 62 includes a
ポジション1〜3フィールドには、当該行の3ユーザの友人関係をグラフで表したときのそれぞれのノードに対応するユーザを特定する識別子が、3?部分グラフ情報テーブル構築部20により設定される。また、図4に3?部分グラフにおける各ノードのポジションを示す。
In the
3−部分グラフパターンフィールドには、当該行の3−部分グラフのパターンを表す数値が、3−部分グラフ情報テーブル構築部20により設定される。
In the 3-partial graph pattern field, a numerical value representing the pattern of the 3-partial graph of the row is set by the 3-partial graph information
ここで、3−部分グラフのパターンについて説明する。まず、3−部分グラフ情報テーブル62には、連結でない3−部分グラフは設定されない。すなわち、他の2ノードとまったく枝を共有しないノードが存在するような3−部分グラフは設定されない。このような3ノードからなる連結な有向グラフを同型なものは同じパターンとして全て分類すると、図5に示すように13通りしか存在しない。ここで「グラフGがG'と同型である」とは、Gの任意の枝 e=(v,w) について、(f(v),f(w)) がG'に属するような全単射な写像fが存在する、すなわちノードを入れ換えることで全く同じものになることを意味する。 Here, the pattern of the 3-part graph will be described. First, a 3-partial graph that is not connected is not set in the 3-partial graph information table 62. That is, a 3-partial graph in which there is a node that does not share any branches with the other two nodes is not set. If all of the same types of such directed three-node connected graphs are classified as the same pattern, there are only 13 patterns as shown in FIG. Here, “the graph G is isomorphic to G ′” means that for any branch e = (v, w) of G, all units such that (f (v), f (w)) belong to G ′. This means that there is a projective map f, that is, it becomes exactly the same by exchanging nodes.
<エッジタイプ出現頻度テーブル>
エッジタイプ出現頻度テーブル63には、図6に示すように、ユーザ1IDフィールド、ユーザ2IDフィールド、友人フィールド、エッジタイプ1〜24出現頻度フィールド が含まれる。
<Edge type appearance frequency table>
As shown in FIG. 6, the edge type appearance frequency table 63 includes a
ユーザ1IDフィールド、ユーザ2IDフィールドには、それぞれコミュニケーション情報テーブル61のユーザIDフィールド、もしくは友人IDフィールドに出現するユーザを特定する識別子の、すべての順列がエッジタイプ出現頻度テーブル構築部30により設定される。ただし、ユーザ1IDフィールドとユーザ2IDフィールドが同じ値をとることはない。
In the
友人フィールドは、コミュニケーション情報テーブル61に、ユーザIDフィールドが当該行のユーザ1IDフィールドの値で、かつ友人IDフィールドが当該行のユーザ2IDフィールドの値を持つ行が存在する場合には"1"が、そうでない場合には"0"が、エッジタイプ出現頻度テーブル構築部30により設定される。
The friend field is “1” when there is a row in the communication information table 61 where the user ID field has the value of the
次に、エッジタイプについて説明する。グラフに含まれる全ての2ノードの順列(u、v とする)を考える。また、u,vを含む3−部分グラフ全てを抽出する。このとき、uを始点とし、vを終点とする枝がないと仮定した場合でも連結であるような3−部分グラフのみを考える。そのような3−部分グラフの u, v以外のもう1つのノードを今 wとする。このとき、uを始点とし vを終点とするエッジが存在しないと仮定したときの3−部分グラフでの u, v, wの入次数(何本の枝の終点か)と出次数(何本の枝の始点か)と、u を始点とし vを終点とするエッジが存在すると仮定したときの u, v, wの入次数と出次数の取り得る値は全部で24通りしかない。簡単のために図示すると、図8のようになる。 Next, the edge type will be described. Consider all 2-node permutations (u, v) in the graph. Also, all 3-partial graphs including u and v are extracted. At this time, only a 3-partial graph that is connected even if it is assumed that there is no branch starting from u and ending at v is considered. Let another node other than u and v in such a 3-partial graph be now w. In this case, assuming that there is no edge with u as the start point and v as the end point, the entry order (how many branches end) of u, v, and w in the 3-partial graph and the output order (how many) There are only 24 possible values for the input and output orders of u, v, and w, assuming that there is an edge with u as the start point and v as the end point. For simplicity, it is as shown in FIG.
このとき、エッジタイプ1〜24出現頻度フィールドは、当該行のユーザ1 u、ユーザ2 vに対して、エッジタイプ1?24に分類されるような wが何個存在するかが、エッジタイプ出現頻度テーブル構築部30により設定される。
At this time, the edge type 1-24 appearance frequency field indicates the number of ws classified as edge types 1-24 for the user 1 u and the user 2 v in the row. It is set by the frequency
次に、本発明の一実施の形態における友人登録時の処理の流れについて説明する。ユーザ uがユーザ vを友人として登録すると、コミュニケーション情報抽出部10がコミュニケーション情報テーブル61にユーザIDフィールドの値が u、友人IDフィールドの値が vである行を追加する。
Next, the flow of processing at the time of friend registration in an embodiment of the present invention will be described. When the user u registers the user v as a friend, the communication
次に、図9を用いて本発明の一実施の形態における友人推薦時の流れについて説明する。友人を推薦するタイミングは、ユーザがシステムにログインしたときや、システム管理者側が明示的に友人を推薦する命令をシステムに送ったときが考えられる。 Next, the flow at the time of friend recommendation in one embodiment of the present invention will be described with reference to FIG. The timing of recommending a friend may be when the user logs in to the system or when the system administrator explicitly sends a command to recommend a friend to the system.
ステップ100)コミュニケーション情報抽出部10が、コミュニケーション情報テーブル61に記載された情報を記憶部60より抽出し、それを3−部分グラフ情報テーブル構築部20とエッジタイプ出現頻度テーブル構築部30、友人推薦部40に受け渡す。
Step 100) The communication
ステップ200)3−部分グラフ情報テーブル構築部20が、コミュニケーション情報抽出部10より受け渡されたコミュニケーション情報テーブル61に記載の情報より3−部分グラフ情報テーブル62を記憶部60に構築し、エッジタイプ出現頻度テーブル構築部30に受け渡す。
Step 200) The 3-partial graph information
ステップ300)エッジタイプ出現頻度テーブル構築部30が、コミュニケーション情報テーブル構築部10により受け渡されたコミュニケーション情報テーブル61記載の情報と、3−部分グラフ情報テーブル構築部20により受け渡された3−部分グラフ情報テーブル62に記載の情報を用いてエッジタイプ情報テーブル63を記憶部60に構築し、友人推薦部40に受け渡す。
Step 300) The information described in the communication information table 61 passed by the communication information
ステップ400)友人推薦部40が、コミュニケーション情報テーブル構築部10により受け渡されたコミュニケーション情報テーブル61記載の情報と、エッジタイプ出現頻度テーブル構築部30により受け渡されたエッジタイプ出現頻度テーブル63記載の情報を用いてユーザに友人を推薦する。
Step 400) The
次に、上記の図9のステップ200の処理を詳細に説明する。
Next, the process of
図10は、本発明の一実施の形態における図9のステップ200の詳細な処理のフローチャートである。
FIG. 10 is a flowchart of detailed processing of
ステップ210)3−部分グラフ情報テーブル構築部20が、コミュニケーション情報テーブル抽出部10より受け渡されたコミュニケーション情報テーブル61の情報中に出現する、ユーザIDフィールド、友人IDフィールドのとりうる値の3つの全組合せを取得する。
Step 210) The 3-part graph information
ステップ220)3−部分グラフマッチング部21が、3−部分グラフ情報テーブル構築部20より受け渡された前記ユーザIDフィールドの組合せ (u1,u2,u3) をもとに、ユーザIDの組合せ (u1,u2,u3) に対応する3−部分グラフが13種類のパターンのうちどれと一致するかを判別したもの patternu1,u2,u3 と、(u1,u2,u3)のうち3−部分グラフのポジション1、ポジション2、ポジション3にあてはまるユーザIDp1, p2, p3を取得する。
Step 220) The 3-partial
ステップ230)3−部分グラフ情報テーブル構築部22が、ポジション1ユーザIDフィールドの値がp1、ポジション2ユーザIDフィールドの値がp2、ポジション3ユーザIDフィールドの値がp3、3−部分グラフパターンフィールドの値がpatternu1,u2,u3であるような行を3−部分グラフ情報テーブル62に挿入する。
Step 230) The 3-part graph information
次に、上記の図10のステップ220の処理を詳細に説明する。
図11は、本発明の一実施の形態における図10のステップ220の詳細な処理のフローチャートである。
Next, the process of
FIG. 11 is a flowchart of detailed processing of
ステップ221)3−部分グラフマッチング部21が、ユーザIDフィールドの組合せ(u1,u2,u3)に対応する全6通りの順序(u1,u2,u3)、(u1,u3,u2)、(u2,u1,u3)、(u2,u3,u1)、(u3,u1,u2)、(u3,u2,u1)を取得する。
Step 221) The 3-partial
ステップ222)3−部分グラフマッチング部21が、3−部分グラフ情報テーブル構築部20より受け渡されたコミュニケーション情報テーブル61の情報をもとに、ユーザIDフィールドの順序(p1,p2,p3)に対応する3行3列のコミュニケーション行列Mp1,p2,p3を作成する。具体的には、コミュニケーション行列Mp1,p2,p3の各成分は、対角成分の値を*、x行y列の値がユーザIDフィールドの値がpxであり、かつ友人IDフィールドの値がpyであるような行がコミュニケーション情報テーブル61に存在する場合は"1"、ない場合は"0"で与える。なお、コミュニケーション行列Mp1,p2,p3の対角成分の値を*で与えたが、これは他のどのような値でも良い。
Step 222) Based on the information in the communication information table 61 passed from the 3-partial graph information
図12に、3−部分グラフマッチング処理のための、13種類の各パターンにおけるコミュニケーション行列Mk(k=1,…,13)を示す。各コミュニケーション行列の各成分は、対角成分の値を*、x 行 y 列の値をx番目のノードからy番目のノードにエッジがある場合は"1"、ない場合は"0"で与える。なお、Mkの対角成分の値は、Mp1,p2,p3と一致するように設定する。 FIG. 12 shows communication matrices M k (k = 1,..., 13) in 13 types of patterns for the 3-partial graph matching process. For each component of each communication matrix, the value of the diagonal component is given as *, and the value of x rows and y columns is given as “1” when there is an edge from the xth node to the yth node, and “0” when there is no edge. . Note that the value of the diagonal component of M k is set to match M p1, p2, p3 .
ステップ223)3−部分グラフマッチング部21が、一時変数kを用意し、その値を1に初期化する。
Step 223) The 3-partial
ステップ224)3−部分グラフマッチング部21が、ユーザIDフィールドの順列 (p1,p2,p3) に対応する3行3列のコミュニケーション行列 Mp1,p2,p3 とk番目のパターンを表すコミュニケーション行列Mkが一致するかどうかを判別する。
Step 224) The 3-partial
ステップ225)3−部分グラフマッチング部21が、ユーザIDフィールドの順列 (u1,u2,u3) に対応する3−部分グラフパターンフィールドの値 patternu1,u2,u3 をkとし、3−部分グラフ情報データベース構築部22に受け渡す。
Step 225) The 3-partial
ステップ226)3−部分グラフマッチング部21が、一時変数kをインクリメントする。
Step 226) The 3-partial
次に、上記の図9のステップ300の処理を詳細に説明する。
Next, the processing of
図13は、本発明の一実施の形態における図9のステップ300の詳細な処理のフローチャートである。
FIG. 13 is a flowchart of detailed processing of
ステップ310)エッジタイプ出現頻度テーブル構築部30が、コミュニケーション情報テーブル抽出部10より受け渡されたコミュニケーション情報テーブル61記載の情報中に出現する、ユーザIDフィールド、友人IDフィールドのとりうる値の2つの全順列を取得する。
Step 310) The edge type appearance frequency
ステップ320)エッジタイプ出現頻度テーブル構築部30が、コミュニケーション情報テーブル抽出部10より受け渡された前記2ユーザIDの順列(u, v)について、コミュニケーション情報テーブル61にユーザIDフィールドの値が u、友人IDフィールドの値が v であるような行が存在する場合はfu,v=1、存在しない場合は fu,v=0とする。
Step 320) For the permutation (u, v) of the two user IDs passed from the communication information
ステップ330)エッジタイプ出現頻度テーブル構築部30が、3−部分グラフ情報テーブル構築部20より受け渡された3−部分グラフ情報テーブル62中で、ポジション1〜3ユーザIDフィールドに u、v を共に含む行集合Tu,vを取得する。
Step 330) The edge type appearance frequency
ステップ340)エッジタイプ出現頻度テーブル構築部30が、u、v、fu,v、Tu,v をもとにエッジタイプ出現頻度テーブル63を更新する。
Step 340) The edge type appearance frequency
次に、上記の図13のステップ340の処理を詳細に説明する。 Next, the process of step 340 in FIG. 13 will be described in detail.
図14は、本発明の一実施の形態における図13のステップ340の詳細な処理のフローチャートである。 FIG. 14 is a flowchart of detailed processing of step 340 in FIG. 13 according to the embodiment of the present invention.
ステップ341)エッジタイプ出現頻度テーブル構築部30が、未処理の3−部分グラフ情報 tu,v∈Tu,v のそれぞれについて、当該行tu,vでは3−部分グラフパターンフィールドの値が patternu,v で、ポジション pu(∈{1,2,3}) ユーザIDフィールドの値がuであり、ポジション pv(∈{1,2,3})、ユーザIDフィールドの値がvであるとする。
Step 341) Edge Type frequency
ステップ342)エッジタイプ出現頻度テーブル構築部30が、fu,v、pu、pv、patternu,v を元に図15、16に示すエッジタイプ決定ルールにてu,vのエッジタイプeu,vを決定する。なお、本実施の形態では、当該エッジタイプ決定ルールは予めメモリ(図示せず)に格納されているものとする。
Step 342) The edge type appearance frequency
図15、16に、図13のステップ340におけるエッジタイプ決定ルールを示す。図15は、fu,v =0の場合のエッジタイプ決定ルールである。例えば、2行目7列目は、fu,v =0 かつpu=3かつ pv=2かつ patternu,v=1 のときエッジタイプeu,vが"2"に決まることを表す。同様に、図16は fu,v =1の場合のエッジタイプ決定ルールである。 15 and 16 show the edge type determination rule in step 340 of FIG. FIG. 15 shows an edge type determination rule when f u, v = 0. For example, the second row and the seventh column indicate that the edge type e u, v is determined to be “2” when f u, v = 0, p u = 3, p v = 2 and pattern u, v = 1. . Similarly, FIG. 16 shows an edge type determination rule when f u, v = 1.
ステップ343)エッジタイプ出現頻度テーブル構築部30が、エッジタイプ出現頻度テーブル63に、ユーザ1IDフィールドがu 、ユーザ2IDフィールドがvの行が存在しない場合、ユーザ1IDフィールドの値がu、ユーザ2IDフィールドの値がv、友人フィールドの値がfu,v、エッジタイプ1〜24フィールドの値が0の行をエッジタイプ出現頻度テーブル63に挿入する。
Step 343) When the edge type appearance frequency
ステップ344)エッジタイプ出現頻度テーブル構築部30が、エッジタイプ出現頻度テーブル63記載の情報でユーザ1IDフィールドの値がuで、ユーザ2IDフィールドの値がvの行を取得し、エッジタイプeu,vフィールドの値をインクリメントする。
Step 344) The edge type appearance frequency
次に、上記の図9のステップ400の処理を詳細に説明する。 Next, the process of step 400 in FIG. 9 will be described in detail.
図17は、本発明の一実施の形態における図9のステップ400の詳細な処理のフローチャートである。 FIG. 17 is a flowchart of detailed processing of step 400 in FIG. 9 according to the embodiment of the present invention.
ステップ410)友人推薦部40が、コミュニケーション情報抽出部10より受け渡されたコミュニケーション情報テーブル61記載の情報中に出現する、ユーザIDフィールド、友人IDフィールドのとりうる値の2つの全順列を取得する。
Step 410) The
ステップ420)友人推薦部40が、コミュニケーション情報抽出部10より受け渡されたコミュニケーション情報テーブル61中にユーザIDフィールドの値がu、かつ友人IDフィールドの値がvの行が存在するか否か判定する。
Step 420) The
ステップ430)友人推薦部40が、エッジタイプ出現頻度テーブル62中でユーザ1IDフィールドの値がuで、かつユーザ2IDフィールドの値が v の行のエッジタイプi (i=1,…,24) 出現頻度フィールドの値xu,v,i を取得する。
Step 430) The
ステップ440)友人推薦部40が、重みパラメータ記憶部64から重みパラメータλi (i=1,…,24) を取得する。
Step 440) The
ステップ450)友人推薦部40が、ユーザ u に対する v の推薦スコア scoreu,v を以下に示す式(1)を用いて算出する。
Step 450) The
次に、重みパラメータ更新時の処理の詳細について説明する。 Next, details of the processing at the time of updating the weight parameter will be described.
図18は、本発明の一実施の形態における重みパラメータ更新時の処理のフローチャートである。重みパラメータは、本実施の形態のように、文献2(Hosmer, D.W. et al., "Applied logistic regression", 2000)記載のロジスティック回帰モデルを用いて自動で算出してもよいし、文献3(Cristianini, N. et al., "An introduction to Support Vector Machines: and other kernel-based learning methods", 2000)記載のサポートベクトルマシン等を用いて自動で算出してもよいし、人手にて適当な重みパラメータを設定してもよい。重みパラメータの更新は、システムの管理者の明示的な入力で開始するようにしてもよいし、定期的にバッチ処理するようにしてもよい。 FIG. 18 is a flowchart of processing when updating the weight parameter according to the embodiment of the present invention. The weight parameter may be automatically calculated using a logistic regression model described in Reference 2 (Hosmer, DW et al., “Applied logistic regression”, 2000) as in the present embodiment, or Reference 3 ( Cristianini, N. et al., "An introduction to Support Vector Machines: and other kernel-based learning methods", 2000) A weight parameter may be set. The update of the weight parameter may be started by an explicit input from the system administrator, or may be periodically batch processed.
ステップ510)重みパラメータ更新部50が、コミュニケーション情報抽出部10より受け渡されたコミュニケーション情報テーブル61中のユーザIDフィールド、友人IDフィールドに出現する全2ユーザの順列を取得する。
Step 510) The weight
ステップ520)重みパラメータ更新部50が、前記各2ユーザの順列(u, v)について、エッジタイプ出現頻度テーブル63中でユーザ1IDフィールドの値がuで、かつユーザ2IDフィールドの値がvの行の友人フィールドの値fu,vと、エッジタイプi、出現頻度フィールドの値xu,v,iを取得する。
Step 520) The weight
ステップ530)重みパラメータ更新部50が、前記2ユーザの順列 (u, v)について、以下に示す式(2)を用いてuがvを友人にする確率P(fu,v=1|u,v)を算出する。
Step 530) The probability P (f u, v = 1 | u) that the weight
ステップ540)重みパラメータ更新部50が、前記全2ユーザの順列 (u, v) について、u が v を友人にする確率から、データに対する重みパラメータ λi (i=0,…,24) の尤度 L(λ)を以下に示す式(3)を用いて算出する。
Step 540) The weight
ステップ550)重みパラメータ更新部50が、文献4(Liu, D.C. et al., "On the limited memory BFGS method for large scale optimization", 1989)記載の準ニュートン法等による最適化手法により、式(3)で表されるL(λ)を最大にするλiを算出する。
Step 550) The weight
ステップ560)重みパラメータ更新部50が、算出した重みパラメータλiを重みパラメータ記憶部64に記録する。
Step 560) The weight
上記のように、本実施の形態によれば、3ユーザ(ノード)に限定して計算コストを抑え、その3ノードのエッジ、方向性、対象性に着目すると24種類に分類することができる。この24種類の各パターンで発生する実際の友人関係の頻度を求めることで、どのパターンで友人関係が発生しやすいかが判別できる。友人関係の発生しやすいパターンを検出し、推薦スコアを算出し、推薦スコアが大きいユーザを推薦すべき友人として出力することができる。 As described above, according to the present embodiment, the calculation cost is limited to three users (nodes), and the three nodes can be classified into 24 types by paying attention to the edge, directionality, and objectivity of the three nodes. By determining the frequency of actual friendships that occur in each of the 24 types of patterns, it is possible to determine which pattern is likely to cause friendships. It is possible to detect a pattern in which a friend relationship is likely to occur, calculate a recommendation score, and output a user having a high recommendation score as a friend to be recommended.
なお、上記の実施の形態の図1に示す友人推薦装置の各構成要素の動作をプログラムとして構築し、友人推薦装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。 In addition, the operation | movement of each component of the friend recommendation apparatus shown in FIG. 1 of said embodiment is constructed | assembled as a program, installed in the computer used as a friend recommendation apparatus, is performed, or distribute | circulates via a network. It is possible.
また、構築されたプログラムをハードディスクや、フレキシブルディスク、CD−ROM等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。 In addition, the constructed program can be stored in a portable storage medium such as a hard disk, a flexible disk, or a CD-ROM, and can be installed or distributed in a computer.
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。 The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.
1 友人推薦装置
2 外部端末
3 ネットワーク
4 外部装置
10 コミュニケーション情報抽出部
20 3−部分グラフ情報テーブル構築部
21 3−部分グラフマッチング部
30 エッジタイプ出現頻度テーブル構築部
40 友人推薦部
50 重みパラメータ更新部
60 記憶部
61 コミュニケーション情報テーブル
62 3−部分グラフ情報テーブル
63 エッジタイプ出現頻度テーブル
64 重みパラメータ記憶部
70 通信部
80 入出力部
DESCRIPTION OF
Claims (5)
前記オンラインコミュニティにおけるユーザを取得し、コミュニケーション記憶手段に格納するコミュニケーション情報取得手段と、
前記コミュニケーション記憶手段のコミュニケーション情報から、オンラインコミュニティにおける3ユーザをコミュニケーションの有無のパターンから分類し、3−ノードのグラフ情報として3−部分グラフ記憶手段に格納する3−部分グラフ情報取得手段と、
前記コミュニケーション記憶手段の前記コミュニケーション情報から、オンラインコミュニティにおける2ユーザについて、コミュニケーションの有無に関する情報と、前記3−部分グラフ記憶手段の前記3−部分グラフ情報から、オンラインコミュニティにおける2ユーザについて、2ユーザ以外の別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの頻度を取得し、エッジタイプ記憶手段に格納するエッジタイプ情報取得手段と、
オンラインコミュニティにおける2ユーザについて、前記エッジタイプ記憶手段に格納されている前記コミュニケーションの有無に関する情報と、前記別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とを用いて、重みパラメータを算出し、重みパラメータ記憶手段に格納する重みパラメータ取得手段と、
ユーザの識別子が与えられると、前記コミュニケーションの有無に関する情報と、前記別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数と、前記重みパラメータ記憶手段の前記重みパラメータとを用いて、該ユーザに対して別ユーザを友人として推薦する友人推薦手段と、
を有することを特徴とする友人推薦装置。 A friend recommendation device for recommending friends in an online community system where each user has an ID and aims to communicate between users,
Communication information acquisition means for acquiring a user in the online community and storing it in a communication storage means;
3-partial graph information acquisition means for classifying the three users in the online community from the communication information in the communication storage means, based on the presence / absence pattern of communication, and storing it in the 3-partial graph storage means as 3-node graph information;
From the communication information in the communication storage means, information regarding the presence or absence of communication for two users in the online community, and from the 3-partial graph information in the 3-partial graph storage means, for two users in the online community, other than two users Edge type information acquisition means for acquiring the frequency of which one of the other users is classified according to the pattern of presence / absence of communication of three users, and storing it in the edge type storage means;
Information regarding the presence / absence of communication stored in the edge type storage means for two users in the online community, and the number of the other one user classified as a pattern of presence / absence of communication of three users, respectively A weight parameter obtaining means for calculating a weight parameter and storing the weight parameter in a weight parameter storage means,
When a user identifier is given, information on the presence / absence of communication, the number of which the other one user is classified by the pattern of presence / absence of communication of three users, and the weight of the weight parameter storage means Using a parameter, friend recommendation means for recommending another user as a friend to the user,
A friend recommendation device characterized by comprising:
前記コミュニケーションの有無に関する情報と、前記別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とに基づいて、ロジスティック回帰分析によって重みパラメータを算出する手段を含む
請求項1記載の友人推薦装置。 The weight parameter calculating means includes
A means for calculating a weight parameter by logistic regression analysis based on the information on the presence / absence of communication and the number of each of the other users classified according to the presence / absence pattern of the communication of three users. Item 3. The friend recommendation device according to Item 1.
コミュニケーション記憶手段、3−部分グラフ記憶手段、エッジタイプ記憶手段、重みパラメータ記憶手段を格納し、コミュニケーション情報取得手段、3−部分グラフ情報取得手段、エッジタイプ情報取得手段、重みパラメータ取得手段、友人推薦手段とを有する装置において、
前記コミュニケーション情報取得手段が、前記オンラインコミュニティにおけるユーザを取得し、前記コミュニケーション記憶手段に格納するコミュニケーション情報取得ステップと、
前記3−部分グラフ情報取得手段が、前記コミュニケーション記憶手段のコミュニケーション情報から、オンラインコミュニティにおける3ユーザをコミュニケーションの有無のパターンから分類し、3−ノードのグラフ情報として前記3−部分グラフ記憶手段に格納する3−部分グラフ情報取得ステップと、
前記エッジタイプ情報取得手段が、前記コミュニケーション記憶手段の前記コミュニケーション情報から、オンラインコミュニティにおける2ユーザについて、コミュニケーションの有無に関する情報と、前記3−部分グラフ記憶手段の前記3−部分グラフ情報から、オンラインコミュニティにおける2ユーザについて、2ユーザ以外の別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの頻度を取得し、前記エッジタイプ記憶手段に格納するエッジタイプ情報取得ステップと、
前記重みパラメータ取得手段が、オンラインコミュニティにおける2ユーザについて、前記エッジタイプ記憶手段に格納されている前記コミュニケーションの有無に関する情報と、前記別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とを用いて、重みパラメータを算出し、前記重みパラメータ記憶手段に格納する重みパラメータ取得ステップと、
前記友人推薦手段が、ユーザの識別子が与えられると、前記3−部分グラフ記憶手段の前記コミュニケーションの有無に関する情報と、前記エッジタイプ記憶手段の前記別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数と、重みパラメータ記憶手段の前記重みパラメータとを用いて、該ユーザに対して別ユーザを友人として推薦する友人推薦ステップと、
を行うことを特徴とする友人推薦方法。 In an online community system where each user has an ID and aims to communicate between users, a friend recommendation method for recommending friends,
Communication storage means, 3-part graph storage means, edge type storage means, weight parameter storage means are stored, communication information acquisition means, 3-part graph information acquisition means, edge type information acquisition means, weight parameter acquisition means, friend recommendation A device having means for:
The communication information acquisition unit acquires a user in the online community, and stores the communication information in the communication storage unit;
The 3-partial graph information acquisition unit classifies the three users in the online community from the communication information in the communication storage unit, and stores them in the 3-partial graph storage unit as 3-node graph information. A 3-partial graph information acquisition step;
The edge type information acquisition means obtains information about the presence / absence of communication for two users in the online community from the communication information in the communication storage means, and the online community from the 3-partial graph information in the 3-partial graph storage means. An edge type information acquisition step of acquiring a frequency of whether another user other than the two users is classified according to a communication presence / absence pattern of the three users, and storing the frequency in the edge type storage unit ,
The weight parameter acquisition means is the information regarding the presence / absence of communication stored in the edge type storage means for the two users in the online community and the pattern of the presence / absence of communication of the other one user for each of the three users. A weight parameter obtaining step of calculating a weight parameter using the number of classification and storing it in the weight parameter storage means;
When the friend recommendation means is given a user identifier, information on the presence / absence of the communication in the 3-partial graph storage means, and whether the other one user in the edge type storage means is the presence / absence of communication of three users, respectively. A friend recommendation step of recommending another user as a friend to the user by using the number of the patterns classified into the pattern and the weight parameter of the weight parameter storage means;
Friend recommendation method characterized by performing.
前記コミュニケーションの有無に関する情報と、前記別の1ユーザがそれぞれ3ユーザのコミュニケーションの有無のパターンでいずれに分類されるかの数とに基づいて、ロジスティック回帰分析によって重みパラメータを算出する
請求項3記載の友人推薦方法。 In the weight parameter calculating step,
4. The weight parameter is calculated by logistic regression analysis based on the information on the presence / absence of communication and the number of each of the other users classified according to the pattern of presence / absence of communication of three users. Friend recommendation method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010116542A JP5350319B2 (en) | 2010-05-20 | 2010-05-20 | Friend recommendation device, method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010116542A JP5350319B2 (en) | 2010-05-20 | 2010-05-20 | Friend recommendation device, method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011243113A JP2011243113A (en) | 2011-12-01 |
JP5350319B2 true JP5350319B2 (en) | 2013-11-27 |
Family
ID=45409672
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010116542A Expired - Fee Related JP5350319B2 (en) | 2010-05-20 | 2010-05-20 | Friend recommendation device, method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5350319B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9104681B2 (en) * | 2011-12-27 | 2015-08-11 | Nhn Corporation | Social network service system and method for recommending friend of friend based on intimacy between users |
JP6582922B2 (en) * | 2015-11-26 | 2019-10-02 | 富士通株式会社 | Graph processing program, graph processing method, and information processing apparatus |
CN110266583A (en) * | 2019-06-12 | 2019-09-20 | 北京达佳互联信息技术有限公司 | Session interface display method, device, terminal, server and storage medium |
CN113297504A (en) * | 2020-02-05 | 2021-08-24 | 北京达佳互联信息技术有限公司 | Social account recommendation method and device, electronic equipment and storage medium |
JP7328162B2 (en) * | 2020-02-06 | 2023-08-16 | Kddi株式会社 | Model, program and device for generating latent graph and estimating graph variables, and method for generating the model |
-
2010
- 2010-05-20 JP JP2010116542A patent/JP5350319B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011243113A (en) | 2011-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Song et al. | Why are some plant–pollinator networks more nested than others? | |
Zhou et al. | Structure based user identification across social networks | |
Pereira et al. | Why so many people? explaining nonhabitual transport overcrowding with internet data | |
Ansari et al. | Modeling multiple relationships in social networks | |
Zhang et al. | A case study of sensor data collection and analysis in smart city: provenance in smart food supply chain | |
Shi et al. | Network structure and observational learning: Evidence from a location-based social network | |
Gilbertson et al. | Trade‐offs with telemetry‐derived contact networks for infectious disease studies in wildlife | |
JP5350319B2 (en) | Friend recommendation device, method and program | |
CN103563332A (en) | Social media identity discovery and mapping | |
US9489638B2 (en) | Method and apparatus for propagating user preference information in a communications network | |
JP5467062B2 (en) | Information recommendation apparatus, method and program | |
JP2019101672A (en) | Cyber attack information processing program, cyber attack information processing method and information processing device | |
CN111090807A (en) | Knowledge graph-based user identification method and device | |
Guillera‐Arroita et al. | Models for species‐detection data collected along transects in the presence of abundance‐induced heterogeneity and clustering in the detection process | |
Hexmoor | Computational network science: an algorithmic approach | |
WO2018078761A1 (en) | Clustering system, method, program, and recommendation system | |
Liu et al. | A novel community detection method based on cluster density peaks | |
Fang et al. | Signed network label propagation algorithm with structural balance degree for community detection | |
Nunes da Silva et al. | Analysis of co-authorship networks among Brazilian graduate programs in computer science | |
Bhowmick et al. | Effect of information propagation on business popularity: A case study on yelp | |
Wilkinson et al. | Rank aggregation of local expert knowledge for conservation planning of the critically endangered saola | |
Gjoka et al. | Estimating subgraph frequencies with or without attributes from egocentrically sampled data | |
KR101700838B1 (en) | Method and system for managing business project step by step | |
Torabi et al. | An ensemble classifier for link prediction in location based social network | |
Zhang et al. | An opinion leaders detecting algorithm in multi-relationship online social networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120830 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130805 |
|
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: 20130813 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130821 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5350319 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |