<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Recipient suggestion for electronic messages using local social network data</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Andrey Gomzin</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stepan Ipatov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Anton Korshunov</string-name>
          <email>korshunovg@ispras.ru</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hangkyu Kim</string-name>
          <email>hangkyu.kim@samsung.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute for System Programming of Russian Academy of Sciences, Data Intellegence Lab, DMC R&amp;D Center, Samsung Electronics Co., Ltd</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Proceedings of the Tenth Spring Researcher's Colloquium on Database and Information Systems</institution>
          ,
          <addr-line>Veliky Novgorod, Russia, 2014</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>Social network users often want to send a message to a group of recipients. An algorithm that recommends other possible recipients given an initial set of recipients is introduced in this paper. The algorithm uses different types of local user data: profile, friendship graph, posts, and social interactions (likes, comments, tags). Experimental evaluation using Facebook application demonstrated that the algorithm is able to make suggestions meaningful to experts.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>In today’s world people communicate by messages using
Internet. Often they send the same message to several
recipients. Usually, it’s done by selecting them one-by-one
by typing their names. But in most cases users have a
kind of communication patterns: they communicate with
more or less stable groups of users. Moreover, a group
of recipients is typically related to some common group’s
property. For example, recipients work in the same
company, or graduated the same university.</p>
      <p>The target data domain of our work is Facebook1. Our
application analyses user and user’s friends data:
profiles, walls and friendship graph, and provides recipient
suggestions for the message, given a current list of
recipients.</p>
      <p>In our application2 the user is supposed to select the
recipients as follows:
1. The user enters a friend’s name as first recipient
2. The application provides other probable recipients
from the target user’s friends based on the relevance
to the current list of recipients (seed set).</p>
    </sec>
    <sec id="sec-2">
      <title>3. The user can:</title>
      <p>select recommended user and add her to the
seed set
type a friend manually like as in step 1
send the message
2</p>
      <sec id="sec-2-1">
        <title>Related work</title>
        <p>
          Recommender systems [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] are applied in a variety of
applications. They help people to find interesting items,
such as music, books, videos, etc. Also they may serve
as tools for friend finding in social networks.
        </p>
        <p>
          The most canonical and simple method which is used
in recommender systems is Collaborative filtering [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ].
These systems infer recommendations using ratings that
users give to items.
        </p>
        <p>
          Modern recommender systems use more data, than
user-item ratings. For example, social networks provide
plenty of data, such as friendship relations between users,
user profiles, interactions between users and so on. The
task of new friends recommendation is solved in [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ].
Authors proposed an algorithm that builds users
recommendation using an implicit rating model, which uncovers
the strength of relationship, utilizing both attribute
similarity and user interaction intensity. But only interactions
between two users are considered in this paper.
        </p>
        <p>One of the recommender tasks is recipient suggestion.
This kind of recommender system is widely spread in
email services: email clients suggest multiple recipients
of grouping message. There are several approaches for
predicting message recipients depending on input data.</p>
        <p>
          The method considered in [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] uses history of
grouping mail senders and recipients. The input is initial set
of users. The task is to suggest more users that may
be potential recipients. Suggestions satisfy the
following criteria: groups a user interacts frequently with are
more important to the user than groups she interacts
infrequently, group importance is dynamic over time,
interactions that the user initiates are more significant than
those she did not initiate. Authors consider several
methods to calculate user’s score. Described method dosen’t
consider composed message text.
        </p>
        <p>
          In other works, messages content is analyzed to
predict a group of recipients. The most of approaches are
based on machine learning. Method, described in [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ],
finds the most similar messages for a given message,
using TF-IDF. Recency and frequency of the messages
are considered too. TF-IDF have been compared with
K-nearest-neighbour method in [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] Authors of [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]
consider enhanced Naive Bayes model. Described method
takes into account message body words, subject words
and other recipients. These methods also don’t consider
social relationships between users as data source.
        </p>
        <p>All described recipient suggestion algorithms don’t
consider social data, such as relationships between users
(for example, friendship). Moreover, only one type of
interaction (email sending) is considered in these methods.
Social data contains different types of interactions
between users (messages, user tags, comments, etc.). Our
method is aimed to use all available social data to predict
recipients of the message.
3</p>
      </sec>
      <sec id="sec-2-2">
        <title>Recipient Suggestion algorithm</title>
        <p>Our recipient suggestion algorithm is based on
Interaction Table. The workflow contains 3 stages:</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>1. Retrieving Facebook data</title>
      <p>2. Finding co-occurrences of users (co-likes,
cocomments, graph communities and so on) from
Facebook data and building corresponding
interactions (raws of Interaction table)
3. Suggesting for the most relevant users given built
interactions and seed set.
3.1</p>
      <sec id="sec-3-1">
        <title>Terminology</title>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>User is an owner of Facebook account.</title>
      <p>Profile is a set of pairs (field name, field value).
Profile contains an information about a user.</p>
      <p>Post is a public message of a User. Post contains a
text, a photo, a video, or a link.</p>
      <p>Wall is a sequence of posts. Each user has one wall
Target user, target – the author of a message, the
”target” of the recipient recommendation.
Ego-network of the target user is the target node,
the nodes to whom the target is directly connected
to (Facebook friends) plus the connections between
these nodes.</p>
      <p>Seed set – recipients of a message provided by the
target user
Comment is a text reply for post. Post contains
comments from different users
Like is positive feedback and an indicator that the
user cares about the (post).</p>
      <p>User tag – user mention in the post (text, tags on
photo, etc.)
Community – a group of users that are more
densely connected to each other (by friendship
relation) than to the rest of the target user’s
egonetwork.</p>
      <p>Interaction is a record about an action related to the
group of users (posts, comments, likes, user tags,
community membership, etc.). See section 3.3 for
more details.</p>
      <sec id="sec-4-1">
        <title>Interaction Table is a set of interactions</title>
        <p>3.2</p>
      </sec>
      <sec id="sec-4-2">
        <title>Data collection</title>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>We use the following Facebook data</title>
    </sec>
    <sec id="sec-6">
      <title>Profiles of users</title>
    </sec>
    <sec id="sec-7">
      <title>Local Friends Graph (ego-network)</title>
      <p>– Target user’s friends list
– For each friend: target user’s and friend’s
mutual friends</p>
    </sec>
    <sec id="sec-8">
      <title>Target user’s and her friends posts with</title>
      <p>– Comments
– Likes
– User tags
– Text content
The data is retrieved using Facebook Graph API3, given
target user id.</p>
      <sec id="sec-8-1">
        <title>3.3 Interaction table building</title>
        <p>In this section we describe how interaction table is built
from Facebook data.</p>
        <p>All interactions contain a set of users involved into
interaction. Here is a list of all possible interaction types:
profile: An interaction contains users with the same
fields’ values;
target target: An interaction is built from target’s
posts on the target’s wall (likes, comments, tags are
analysed);
target user: An interaction is built from other users’
posts on the target’s wall (likes, comments, tags are
analysed);
user target: An interaction is built from target’s
posts on other users’ walls (likes, comments, tags
are analysed);
user user: An interactions is built from other users’
posts on other users’ walls (likes, comments, tags
are analysed);
other: An interaction is built from posts on walls
that are not related to the target user (likes,
comments, tags are analysed);
content: An interactions is built from target’s posts
on the another users’ walls with the same content;
community: An interaction includes members of the
same community.</p>
        <p>The hierarchy of interaction types is shown in figure 1.
Wall Interactions are built using post’s comments, likes,
tags or content. These interactions have timestamp and
content type attributes. Content type has 4 possible
values: status, link, photo, video. Post Interactions are built
using post’s comments, likes or tags. They have post
interaction type attribute with 3 possible values: comment,
like, user tag.</p>
      </sec>
    </sec>
    <sec id="sec-9">
      <title>3https://developers.facebook.com/docs/graph-api/</title>
      <sec id="sec-9-1">
        <title>Target user’s wall interactions</title>
        <p>First, consider target user’s wall. Author of the post is
important, because she is also included into the
interaction. Here we distinguish two possible options: post’s
author = target user and post author 6= target user.</p>
        <p>Post author = target user. If post contains
comments/likes/tags, a target target interaction is created.
Interaction contains all users that commented/liked/is
tagged (on) the post</p>
        <p>post author 6= target user. If post contains
comments/likes/tags that include target user, a target user
interaction is created. Interaction contains all users that
commented/liked/is tagged (on) the post and post author.
In case of post contains comments/likes/tags that don’t
include target user, an other interaction is created.</p>
        <p>Interaction
type</p>
        <p>Post
interaction
type</p>
        <p>Post
content
type</p>
        <p>Timestamp
target target
comment
photo
5.10, 12:06
target target
like
photo
5.10, 12:06
target target
user tag
photo
5.10, 12:06</p>
        <p>Users
Tom
Spike
Tom
Jerry
Spike
Tom
Jerry</p>
        <p>For example, 3 interactions are created from the post
in figure 2. These interactions are shown in the table 1.
As in the case of processing target’s wall, two possible
options are considered: post author = target user and
post author 6= target user. Consider a wall of any
nontarget user. Let’s call her a current user.</p>
        <p>Post author = target user. If a post contains
comments/likes/tags, a user target interaction is created.
Interaction contains all users that commented/liked/is
tagged (on) the post and the current user.</p>
        <p>Post author 6= target user. If a post contains
comments/likes/tags that include target user, a user user
interaction is created. Interaction contains all users that
commented/liked/is tagged (on) the post and post author.
In case of post containing comments/likes/tags that don’t
include target user, an other interaction is created.</p>
      </sec>
      <sec id="sec-9-2">
        <title>Target posts text content interactions</title>
        <p>Consider target user’s posts on another users’ walls with
non-empty message. These posts are grouped by the
same text content (duplicated messages). For each group
of size &gt; 1 a content interaction is created. Interaction
contains target user’s recipients of the messages of the
group.</p>
      </sec>
      <sec id="sec-9-3">
        <title>Graph-based interactions</title>
        <p>
          Target user contains a list of her friends. Other users
contain lists of mutual friends with target user. These
connections between users form target user’s ego-network.
The ego-network is used for finding communities of
target’s friends using Speaker-Listener Label Propagation
Algorithm (SLPA) [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. This algorithm is very fast. It
provides high-quality overlapping communities of users.
Also, SLPA supports local networks (ego-networks). For
each discovered community a community interaction is
created. Community members are included into this
interaction.
        </p>
      </sec>
      <sec id="sec-9-4">
        <title>Profile-based interactions</title>
        <p>User profile is a set of pairs (F; V ), where F is a field
name, V is the value of the field F .</p>
        <p>For each possible pair (F; V ) an interaction is created
if &gt; 1 users have the field F with value V in profiles.
The interaction contains all such users.</p>
        <p>We distinguish two types of profile fields:</p>
        <p>Single. Only single field value is allowed. We
consider the following single Facebook profile fields:
hometown, location, gender, relationship, religion,
politics.</p>
        <p>Multiple. In this case user’s profile field may have
several values. We consider the following multiple
Facebook profile fields: work, work together with
position, education, education together with
graduating year. For example, users that graduate the
same school are included into an interaction.
Additionally, the users that graduate the same school in
the same year are included into another one
interaction.
3.4</p>
      </sec>
      <sec id="sec-9-5">
        <title>Users suggestion</title>
        <p>Recipient suggester algorithm parameters include
weights for interaction types, content types and post
interaction types values.</p>
        <p>As we have an Interaction Table and weights
configuration, recipient suggestion becomes quite simple. For
each user we calculate CONFIDENCE:</p>
        <p>CONFIDENCE(user) =</p>
        <p>Pi2Ijuser2i Weight(i)</p>
        <p>Pi2I Weight(i)
(1)</p>
        <p>I is a part of Interaction table, the set of interactions:
fijusers(i) \ Seed set 6= ;g. Here users(i) is a set of
users of the interaction i.</p>
        <p>Weight(i) is:
w(IntT(i))
- for graph interactions
w(IntT(i)) timeNorm(ts(i)) w(ContentT(i))
- for interactions obtained by finding the same
content
w(IntT(i)) w(PostIntT(i)) w(ContentT(i))
timeNorm(ts(i))
- for interactions built from users’ walls (likes,
comments, tags)
w(:) is a weight from configuration. IntT(i) –
interaction type of interaction i. ContentT(i) – content type of
interaction i. PostIntT(i) – post interaction type of
interaction i. ts(i) – timestamp of interaction i. timeNorm(:)
is a real value from 0 to 1, that is increasing function of
time. We use the following function:
timeN orm(i) = e
(ts(i) CT )
(2)</p>
        <p>Here, CT is the current time timestamp. All
timestamps are expressed in seconds.</p>
        <p>Users are sorted in descending order of
CONFIDENCE. Users with equal CONFIDENCE are sorted by
degree (number of friends).</p>
        <sec id="sec-9-5-1">
          <title>Experiments</title>
          <p>This section describes accuracy evaluation experiments.
In the first subsection we present used Recipient
suggestion algorithm parameters. The following subsections are
devoted to the quality evaluation.</p>
          <p>Recommendations provided by our Recipient
Suggestion algorithm are based on different kinds of source
data. But the input data doesn’t contain messages with
recipients defined. So, we resorted to expert evaluation
of the algorithm results.</p>
          <p>In the sections 4.2 and 4.3 we present quality
evaluation metrics which require experts for manual or
semiautomatic test data generation.</p>
          <p>Then the baseline algorithm is described.</p>
          <p>The last subsection contains obtained evaluation
results.
4.1</p>
        </sec>
      </sec>
      <sec id="sec-9-6">
        <title>Settings</title>
        <p>As mentioned above, user may vary impact of different
interactions to user suggestions.</p>
        <p>We did not perform experiments for automatic
parameters estimation. We have adjusted application
parameters manually, according to the considerations described
below.</p>
        <p>
          Groups of users can be formed from mix of topical
and social-based principle [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]. Social groups are based
on strong relationships between users. Topical groups
are based on users’ interests, they tend to change. We
assume that most multicast messages are addressed to
stable strongly connected groups of users. Thus, in our
setup, SLPA communities and users united by profile
attributes contribute to the CONFIDENCE most.
        </p>
        <p>SLPA itself has three parameters: minimal
community size (minc), number of interactions, threshold r. We
use default SLPA parameters.</p>
        <p>Content interactions are also have high weight,
because author selects recipients of messages with the same
content by herself.</p>
        <p>Interactions that are related to target user’s wall have
higher weight than interactions on other users’ walls.
Interactions between non-target users (not directly related
to target user) has less weight.</p>
        <p>Application with default settings doesn’t take into
account content type of interactions, hence all content type
weights are equal.</p>
        <p>Interactions of ”user tag” post interaction type are
more important than interactions of ”comment” and
”like” post interaction type, because users are explicitly
picked by post’s author. Moreover, the impact of
comment is more than likes’ impact. Like is just a single
click, and comment is a text message that user types,
hence comment shows higher user interest to the post,
that like does.</p>
        <p>Old posts’ impact in the recipient recommendation
should be less than recent posts’ impact. In our setup
we assume that two year old posts should have weight
as 0:75 of the most recent posts. The parameter value
in (2) is set to satisfy this condition.</p>
        <p>List of application settings is shown in the table 2.
Experts are needed for quality evaluation. For this
metric evaluation we’ve developed a special tool that shows
a random seed set of expert’s friends and asks to enter
another [0::5] users from friends list. Seed set contains
two users that participate in some interaction from
Interaction table. Expert should select [0::5] users that are
likely to be a recipients of some message, together with
given seed set. The order of entered users is important:
the first user is selected in assumption of current
recipients are seed set, k-th user is selected in assumption of
current recipients are seed set plus selected k 1 users.
If an expert has no suggestions, the empty set of users
should be specified: only sensible groups are considered
in the metric. This ”Association game” is repeated 20
times for each expert.</p>
        <p>Assume that Seed set = fsu1; su2g.</p>
        <p>If an expert e selects one user u1, the application
calculates user suggestions given Seed set = fsu1; su2g.
User suggestions are sorted in decreasing order of
CONFIDENCE (1). Let pose1(m) be user u1 position
in obtained sequence: an integer number from [1::N ],
where N is number of friends. m 2 1; 20 is a number of
current iteration.</p>
        <p>If an expert e selects users u1; u2; :::; uk, an
application calculates k posie(m) values. pose1(k) is
calculated for Seed set = fsu1; su2g and user u1 as
described above. posie(m) is calculated for Seed set =
fsu1; su2; u1; :::ui 1g and user ui as described above.</p>
        <p>Given all posij (m) values, obtained from all experts
and all expert selections (denote them as P OS set), we
can calculate probability of falling into top-K of user
suggestions:
PK = jfposij (m) 2 P OSjposij (m)
Kgj</p>
        <p>(3)
jP OSj</p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>PK takes values from [0::1]</title>
      <p>4.3</p>
      <sec id="sec-10-1">
        <title>Analysing application logs</title>
        <p>This metric is based on logging demo user’s actions with
our demo-application. The demo allows users to enter
user name and add her into seed set. Also the
demoapplication provides fast calculated users suggestions as
list of top-10 recommended users with higher confidence
(figure 3).</p>
        <p>In the beginning, when seed set is empty,
recommendations are not provided. Hence there are 4 different
types of demo user’s actions:</p>
        <p>First recipient. The demo user types the first
recipient name
Accept the suggestion. The demo user selects the
recipient from provided list of suggested users
Ignore the suggestion. The demo user types the
next recipient manually
Send the message. The message is sent and the
seed set is cleared.</p>
        <p>User suggestion quality metric is calculated as an
average score value according to the demo user behaviour:
In case of Accept the suggestion action, the demo
user picks a user from a given top-10 with position
k. Score(a) = 1110 k .</p>
        <p>In case of Ignore the suggestion action Score(a) =
0.</p>
        <p>The Score shows how strongly recommendations are
approved by demo user. For example, if user picks first
(k = 1) user, Score is 1; if she picks the last user from
the top-10 (k = 10), Score is 0:1.</p>
        <p>User suggestion quality is:
(4)
Q =</p>
        <p>Pa2A Score(a)</p>
        <p>A
j j</p>
        <p>
          A includes all related actions (Accept the suggestion
and Ignore the suggestion action types) obtained from
one application session.
We use the method similar to the proposed in [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] as a
baseline. This method recommends recipients for e-mail,
given an initial set of recipients, based on group
messages history. Incoming and outgoing multicast e-mails
are considered in this work. Facebook private messages
may be considered as an analog for e-mails. But we don’t
have private messages. Our algorithm provides user
suggestion based on public data.
        </p>
        <p>Online social network users often communicate with
each other using public data: posts on walls, comments,
likes, tags in case of Facebook.</p>
        <p>
          We assume that Wall interactions with comment or
like post interaction type are incoming messages, and
Wall Interactions with tag post interaction type and
interactions of content type are outgoing messages (see the
diagram in figure 1). Since the authors of [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] don’t
consider e-mails that are not related to the target user,
interactions of other type are not considered here.
        </p>
        <p>
          Time decay function in [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] is the same as we use (2).
        </p>
        <p>
          Hence, the algorithm presented in [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] applied to
Facebook public data could be seen as a special case of
our Recipient suggestion algorithm with the following
changes in setup: interactions of graph, profile and other
types have zero weights.
4.5
        </p>
      </sec>
      <sec id="sec-10-2">
        <title>Evaluation results</title>
        <p>We asked 10 experts to choose recipients of 20
”imaginary messages” given two initial recipients for each
message, without any recommendations. And then we asked
them to use demo-application which provides user
suggestions.</p>
        <p>
          The result of comparing algorithm suggestions with
experts suggestions is shown in figure 4. The histogram
shows the probability for a user selected by expert to
fall into top-K users (3). The figure contains histograms
for described in this paper recipient suggestion algorithm
and a baseline method, described in section 4.4 and
paper [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ].
        </p>
        <p>The log analysis shows that user suggestion quality
Q, according to (4), is 0.656.</p>
        <p>Additionally, we have calculated user suggestion
quality Q according to (4) for the data, used in PK
evaluation (see section 4.2). Here Score(u) = 11 k when
10
user position is k 10, and Score(u) = 0 otherwise.
Obtained Q is 0.454.
5</p>
        <sec id="sec-10-2-1">
          <title>Results</title>
          <p>The purpose of developed Recipient suggestion
algorithm is to help people to find multiple recipients of the
message. Suggestions are built using information about
user and her friends (local data) in social network. The
main feature is using different sources of information:
profiles, communities inferred from local social graph of
target user, and users’ walls, including comments, likes,
tags.</p>
          <p>The algorithm quality evaluation is based on users’
feedback. Evaluation consists of two steps. First, user
chooses recipients without any suggestions. And then
she uses a demo-application, that suggest users,
according to developed algorithm. Results of our Recipient
Suggestion algorithm were compared with baseline
algorithm results. As shown in figure 4 our algorithm
is significantly better than baseline. The probability of
falling into top-10 is more than 60%. This enhancement
is achieved by using additional data, such as ego-network
communities structure and users’ profiles.</p>
          <p>Moreover, analysis of recommendation score,
introduced in section 4.3, shows that average scores differ in
cases of suggestions are shown to target user and are not
shown (0.656 vs. 0.454). In first case the value is greater.
This means that recommendations that are provided by
Recipient suggestion algorithm really help user to choose
message recipients.
6</p>
        </sec>
        <sec id="sec-10-2-2">
          <title>Future work</title>
          <p>Our Recipient Suggestion algorithm uses local friendship
graph, users’ profiles and users’ walls, including
comments, user tags, likes, text content. Of course, this is
not full list of available Facebook user data. In our future
work we plan to use more available data, retrieved using
Facebook API, and use technics for detailed text
analysis. Moreover, we plan to introduce group suggestions.</p>
          <p>Here is a list of possible future directions:</p>
          <p>
            Use technics of text analysis. For example, we can
use Topic Modeling [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ] for analyzing topics of
messages. Given topics, algorithm would recommend
users that are interested in current message’s topic.
Develop an algorithm that suggests a group of users.
Take into account period of a day: during
working time colleagues are recommended, otherwise –
friends.
          </p>
          <p>Develop an algorithm which automatically
estimates optimal algorithm parameters based on target
user’s feedback.</p>
        </sec>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Vinti</given-names>
            <surname>Agarwal</surname>
          </string-name>
          and
          <string-name>
            <given-names>KK</given-names>
            <surname>Bharadwaj</surname>
          </string-name>
          .
          <article-title>A collaborative filtering framework for friends recommendation in social networks based on interaction intensity and adaptive user similarity</article-title>
          .
          <source>Social Network Analysis and Mining</source>
          , pages
          <fpage>1</fpage>
          -
          <lpage>21</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Ramnath</given-names>
            <surname>Balasubramanyan</surname>
          </string-name>
          ,
          <string-name>
            <surname>Vitor R Carvalho</surname>
            , and
            <given-names>William</given-names>
          </string-name>
          <string-name>
            <surname>Cohen</surname>
          </string-name>
          .
          <article-title>Cutonce-recipient recommendation and leak detection in action</article-title>
          .
          <source>In AAAI-2008</source>
          , Workshop on Enhanced Messaging,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>David</surname>
            <given-names>M Blei.</given-names>
          </string-name>
          <article-title>Probabilistic topic models</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>55</volume>
          (
          <issue>4</issue>
          ):
          <fpage>77</fpage>
          -
          <lpage>84</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Vitor</surname>
            <given-names>R Carvalho</given-names>
          </string-name>
          and
          <string-name>
            <given-names>William</given-names>
            <surname>Cohen</surname>
          </string-name>
          .
          <article-title>Recommending recipients in the enron email corpus</article-title>
          .
          <source>Machine Learning</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Przemyslaw</surname>
            <given-names>A Grabowicz</given-names>
          </string-name>
          , Luca Maria Aiello, V´ıctor
          <string-name>
            <given-names>M</given-names>
            <surname>Egu</surname>
          </string-name>
          <article-title>´ıluz, and Alejandro Jaimes. Distinguishing topical and social groups based on common identity and bond theory</article-title>
          .
          <source>In Proceedings of the sixth ACM international conference on Web search and data mining</source>
          , pages
          <fpage>627</fpage>
          -
          <lpage>636</lpage>
          . ACM,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Dietmar</given-names>
            <surname>Jannach</surname>
          </string-name>
          , Markus Zanker, Alexander Felfernig, and
          <string-name>
            <given-names>Gerhard</given-names>
            <surname>Friedrich</surname>
          </string-name>
          .
          <source>Recommender systems: an introduction</source>
          . Cambridge University Press,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Chris</given-names>
            <surname>Pal and Andrew McCallum</surname>
          </string-name>
          .
          <article-title>Cc prediction with graphical models</article-title>
          .
          <source>In CEAS</source>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Maayan</given-names>
            <surname>Roth</surname>
          </string-name>
          , Assaf Ben-David, David Deutscher,
          <string-name>
            <given-names>Guy</given-names>
            <surname>Flysher</surname>
          </string-name>
          , Ilan Horn, Ari Leichtberg, Naty Leiser, Yossi Matias, and
          <string-name>
            <given-names>Ron</given-names>
            <surname>Merom</surname>
          </string-name>
          .
          <article-title>Suggesting friends using the implicit social graph</article-title>
          .
          <source>In Proceedings of the 16th ACM SIGKDD international conference on Knowledge discovery and data mining</source>
          , pages
          <fpage>233</fpage>
          -
          <lpage>242</lpage>
          . ACM,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J</given-names>
            <surname>Ben Schafer</surname>
          </string-name>
          , Dan Frankowski, Jon Herlocker, and
          <string-name>
            <given-names>Shilad</given-names>
            <surname>Sen</surname>
          </string-name>
          .
          <article-title>Collaborative filtering recommender systems</article-title>
          .
          <source>In The adaptive web</source>
          , pages
          <fpage>291</fpage>
          -
          <lpage>324</lpage>
          . Springer,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Jierui</surname>
            <given-names>Xie</given-names>
          </string-name>
          ,
          <article-title>Boleslaw K Szymanski,</article-title>
          and Xiaoming Liu. Slpa:
          <article-title>Uncovering overlapping communities in social networks via a speaker-listener interaction dynamic process</article-title>
          .
          <source>In Data Mining Workshops (ICDMW)</source>
          ,
          <year>2011</year>
          IEEE 11th International Conference on, pages
          <fpage>344</fpage>
          -
          <lpage>349</lpage>
          . IEEE,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>