<!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>
      <journal-title-group>
        <journal-title>Networks. CEUR Workshop Proceedings</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.18287/1613-0073-2016-1638-843-850</article-id>
      <title-group>
        <article-title>VISUALIZATION AND CLUSTER ANALYSIS OF SOCIAL NETWORKS</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>M.I. Khotilin</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>A.V. Blagov</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Samara National Research University</institution>
          ,
          <addr-line>Samara</addr-line>
          ,
          <country country="RU">Russia</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2016</year>
      </pub-date>
      <volume>1638</volume>
      <fpage>843</fpage>
      <lpage>850</lpage>
      <abstract>
        <p>The article is devoted to the analysis of social networks, which are presented by graphs. The paper presents approaches to the modeling of distributions of social networks as well as the algorithms used for finding communities, as well as accounts that have the greater impact on the community. Representation of the network as a graph Generally, when it talks about objects representing the network, such as social, data visualization concept is closely related to the concept graphs. An important task is to present links in social networks to identify different kinds of dependencies. The graph is a collection of non-empty set of vertices and the set of edges: (- set of vertices, - set of edges). The vertices in a graph, which describes the social network,</p>
      </abstract>
      <kwd-group>
        <kwd>big data</kwd>
        <kwd>graphs</kwd>
        <kwd>data visualization</kwd>
        <kwd>data analysis</kwd>
        <kwd>clustering</kwd>
        <kwd>modularity</kwd>
        <kwd>SCAN</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        In the modern world it is continuously generated a huge amount of data, whether the
data received from the satellite, or sensors in the aircraft, bank transactions, patient
diagnostic data, etc. A special place is occupied by social networks. The
significance of social networks is due to the fact that, on the one hand they are the subject
of socialization of people, and on the other - the most powerful and affordable
political, ideological and economic instrument [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. A number of papers are dedicated to
researches of social networks as systems, which contain large volumes of data [
        <xref ref-type="bibr" rid="ref2 ref3 ref4">2, 3,
4</xref>
        ].
      </p>
      <p>
        Large amounts of data as well as the relationships (connections) between them must
be present in comfortable and readable form. The data from social networks can be
presented in various forms: a tag cloud, charts, historical flows [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], but graphs are
more often used for this purpose.
are user accounts, and edges - the connections between them. For example, a
subscription in the network such as Twitter, and the attitude of the "friendship" in social
networks like The Facebook (figure 1).
One of the main related characteristics that should be considered is the metric. The
metric of the graph is based on the notion of distance.
      </p>
      <p>For example, we call the distance d xi , x j   d ij between vertices xi and x j of the
graph GX , U  the length of the shortest path, which connecting these vertices. By
chain length the number of its edges is meant. Then, the function d xi , x j , defined
portion of vertices of GX , U  , which has the degree d xi   k .
on the set of edges U of graph G , is called graph metric.</p>
      <p>The degree of a vertex xi  X of graph is the number of edges incident to this vertex
d xi  .</p>
      <p>Empirically, it has been proved that the degree distribution of the various segments of
the vast majority of social networks has the following form (figure 2). fk - is the
propk   Ck  ,</p>
      <p>zk
pk  </p>
      <p>e z .</p>
      <p>k!
Coefficients and are found for a particular segment of the social network.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Clustering and communities finding algorithms based on the modularity</title>
      <p>To simplify the graph, and also for finding the so-called "communities" in a social
network, which is described by graph, the clustering is applied.</p>
      <p>
        There are a number of algorithms and approaches for clustering, one of which is the
modularity [
        <xref ref-type="bibr" rid="ref8 ref9">8-9</xref>
        ].
      </p>
      <p>
        This functionality was proposed by Newman and Girvan in the process of developing
clustering algorithm of graph vertices [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Under the modularity means a scalar value
from the interval [
        <xref ref-type="bibr" rid="ref1">-1, 1</xref>
        ], expressed by the following formula:
Q 
1   Aij  did j  Ci , C j 
2m i, j  2m 
      </p>
      <p>,
where A - adjacency matrix, Aij - (i,j) element of matrix A , d i - the degree of i graph
vertex, Ci – the label of the vertex (the number of the community, to which the
vertex is belongs), m –the total number of edges in the graph,  Ci ,C j  - delta-function
(one, if Ci  C j , zero otherwise).</p>
      <p>The task of finding isolation of communities in the graph is reduced to search such
Ci , which will maximize the value of modularity.




The advantages of modularity may include the following:</p>
      <p>modularity simply interpreted. Its value is equal to the difference between the
proportion of edges within the community and expected share of links, if the edges
were placed randomly;</p>
      <p>it is possible to count modularity effectively with small changes in the
clusters.</p>
      <p>However, there are also some disadvantages:</p>
      <p>
        the functionality is not continuous, and the task of its optimization is discrete.
The approximation schemes are used to find the global optimum. Some of them are
really optimize the functional value, while others choose the value of the modularity
by the best solution found, without warranty of local optimality of solutions;
there is a resolution problem (the functionality does not “see” small
communities). This problem is solved by using the modified functionality, which retains all
the advantages and adds scale parameter [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>
        As modularity describes the quality of separation of the graph in the groups, the
problem of finding the optimal partition of the graph can be approached by solving the
problem of maximizing of modularity. However, using a simple brute force method
to solve this problem is almost impossible, since the number of options for separating
n nodes into k groups grows exponentially with n To solve this problem the “greedy
algorithm” of optimization of modular functions was proposed. This algorithm has its
base in an association of two groups giving the highest increase modularity step by
Let us consider some decomposition of the N nodes into k groups (N – a set of nodes
with the number of elements n) [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The modularity function will be equal:
step.
 1 =
 2 =


1
1


∑
 =1, ≠ , ≠
      </p>
      <p>(  −
∑
 =1, ≠ , ≠
(  −
( (  ))2
( (  ))2
4
4

1

1
) +
(  +   −
( (  ))2 + ( (  ))2</p>
      <p>).
) +
(  ∪ −
( (  ∪ ))2
4</p>
      <p>4
) .</p>
      <p>Now join the group i and j in one, which is denoted as an  ∪ =   ∪   . The
modularity function for the new graph will be:
  ∪ =   +   +   ,
 (  ∪ ) =  (  )+  (  ),
Consequently:
The number of edges within the group   ∪ is equal to the sum edges within groups
  and   plus the number of edges between them. In other words:
The degree of the united group   ∪ is equal to the sum of groups of degrees   and   :
( (  ∪ ))2 = ( (  ))2 + ( (  ))2 + 2 (  ) (  ).</p>
      <p>Taking this into account, we obtain:
∆ =  2 −  1 =</p>
      <p>(  , −

1</p>
      <p>4
2 (  ) (  )) =

1
(  , −
 (  ) (  )).</p>
      <p>2
This implies that the greatest growth of modularity occurs by combining groups   and
  , for which the value:
∆(  ,   ) =   , −
 (  ) (  )</p>
      <p>2
is maximal.</p>
      <p>It is also seen that the combination of groups, between which there are no edges
(  , =0), can not give increasing of the modularity.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Classification of vertices, finding the most significant, SCAN algorithm</title>
      <p>
        Apart from finding a community in a social network which is represented by the
graph, the classification of vertices in the graph has a considerable interest.
In the article [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] the following classification of the vertices was introduced (see figure
4):
- core – is the vertex which contains in ε-neighborhood at least μ vertices
- hub – is an isolated vertex which has neighbors belonging to two or more different
clusters;
- outlier – an isolated all its neighbors of which either belong to only one cluster or do
not belong to any cluster.
To perform such classification a SCAN algorithm is proposed [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. The principle of its
work is described as follows.
      </p>
      <p>The search begins by first visiting each vertex once to find structure-connected
clusters, and then visiting the isolated vertices to identify them as either a hub or an outlier
(hub or outlier).</p>
      <p>SCAN performs one pass of a network and finds all structure-connected clusters for a
given parameter setting. At the beginning all vertices are labeled as unclassified.
SCAN classifies each vertex either a member of a cluster or not a member. For each
vertex that is not yet classified, SCAN checks whether this vertex is a core. If the
vertex is a core, a new cluster is expanded from this vertex. Otherwise, the vertex is
labeled as not a member of the cluster.</p>
      <p>To find a new cluster, SCAN starts with an arbitrary core V and search for all vertices
that are structure reachable from V. This is sufficient to find the complete cluster
containing vertex V. new cluster ID is generated which will be assigned to all found
vertices.</p>
      <p>SCAN begins by inserting all vertices in  - neighborhood of vertex V into a queue.
For each vertex in the queue it computes all directly reachable vertices and inserts
those vertices into the queue which are still unclassified. This is repeated until the
queue is empty.</p>
      <p>
        The non-member vertices can be further classified as hubs or outliers If an isolated
vertex has edges to two or more clusters, it is may be classified as a hub. Otherwise, it
is an outlier [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>A distinctive feature is the presence of parameters  and  , which can be set by the
user or an expert. At the same time the finding of the optimal values of these
parameters can be carried out using a machine learning system, using a certain network
segments.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Experiment and results</title>
      <p>In order to test the algorithms mentioned above, the analysis of the community of
Samara airsoft group "BPF" if social network “Vkontakte” was produced in order to
identify possible communities by breaking into clusters.</p>
      <p>The adjacency matrix for the graph (in this case, the state of the friendship between
members of the community to each other) is shown in Figure 5
The graph with edges that describe the state of dependency of "friendship" and
vertices - members of the group is shown in Figure 6.</p>
      <p>For this graph the modularity had been calculated. With the resolution of 0.5 the
value of the modularity parameter was 0.021, while the graph has been divided in to
five communities. By the way in the communities data includes accounts of people
who are:
- students together in one university;
- graduated from the same school;
- those who have been invited by the participant Raguzin;
- those who have been invited by the participant Korobov;
- those who have been invited by the participant YuriNagulov.
This division into clusters can be seen in the figure below:
It should be noted quite satisfactory performance of the algorithm for finding the
communities on a graph, which represents a relatively small segment of the real
social network.</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>Presentation of social networks in the form of a graph and its further analysis,
including clustering and finding dependencies, is an urgent task in Big Data. Using the
methods described in this article and approaches permits to produce the classification
of the social network segments and find the elements of greatest interest, for
example, users, affecting several separate communities (in the graph representation - such
as the edge of "hub"). When finding the power distribution of the nodes of the graph,
which described the social network, it is possible to carry out modeling of social
networks with a given distribution.</p>
      <p>The algorithms presented in this article are planned for completion and use in the
study of social segments of Samara region. The authors have developed the necessary
tools to graph visualization of necessary social networks segments and distributed
methods of processing of high-dimensional graphs.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Tan</surname>
            <given-names>W</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blake</surname>
            <given-names>MW</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saleh</surname>
            <given-names>I</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dustdar</surname>
            <given-names>S</given-names>
          </string-name>
          .
          <article-title>Social-network-sourced big data analytics</article-title>
          .
          <source>IEEE Internet Computing</source>
          ,
          <year>2013</year>
          ;
          <volume>5</volume>
          :
          <fpage>62</fpage>
          -
          <lpage>69</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Semertzidis</surname>
            <given-names>K</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pitoura</surname>
            <given-names>E</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tsaparas</surname>
            <given-names>P</given-names>
          </string-name>
          .
          <article-title>How people describe themselves on Twitter</article-title>
          .
          <source>Proceedings of the ACM SIGMOD Workshop on Databases and Social Networks</source>
          ,
          <year>2013</year>
          ;
          <fpage>25</fpage>
          -
          <lpage>30</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Blagov</surname>
            <given-names>A</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rytcarev</surname>
            <given-names>I</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Strelkov</surname>
            <given-names>K</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Khotilin</surname>
            <given-names>M</given-names>
          </string-name>
          .
          <article-title>Big Data Instruments for Social Media Analysis</article-title>
          .
          <source>Proceedings of the 5th International Workshop on Computer Science and Engineering</source>
          ,
          <year>2015</year>
          ;
          <fpage>179</fpage>
          -
          <lpage>184</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Protcenko</surname>
            <given-names>VI</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kazanskiy</surname>
            <given-names>NL</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serafimovich</surname>
            <given-names>PG</given-names>
          </string-name>
          .
          <article-title>Real-time analysis of parameters of multiple object detection systems</article-title>
          .
          <source>Computer Optics</source>
          ,
          <year>2015</year>
          ;
          <volume>39</volume>
          (
          <issue>4</issue>
          ):
          <fpage>582</fpage>
          -
          <lpage>591</lpage>
          [In Russian].
          <source>DOI: 10</source>
          .18287/
          <fpage>0134</fpage>
          -2452-2015-39-4-
          <fpage>582</fpage>
          -591.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Ivanov</surname>
            <given-names>PD</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lopukhovsky</surname>
            <given-names>AG</given-names>
          </string-name>
          .
          <article-title>Big Data technologies and different methods of presenting large data</article-title>
          .
          <source>Science and innovations</source>
          ,
          <year>2014</year>
          ;
          <volume>9</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          [In Russian].
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Gastner</surname>
            <given-names>M</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Michael</surname>
            <given-names>T</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Newman</surname>
            <given-names>ME</given-names>
          </string-name>
          .
          <article-title>Optimal design of spatial distribution networks</article-title>
          .
          <source>Physical Review</source>
          ,
          <year>2006</year>
          ;
          <volume>74</volume>
          :
          <fpage>016117</fpage>
          -
          <lpage>016126</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Newman</surname>
            <given-names>ME</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Girvan</surname>
            <given-names>M. Finding</given-names>
          </string-name>
          <article-title>and evaluating community structure in networks</article-title>
          .
          <source>Physical Review</source>
          <year>2004</year>
          ;
          <volume>69</volume>
          :
          <fpage>026113</fpage>
          -
          <lpage>026115</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Xu</surname>
            <given-names>X</given-names>
          </string-name>
          .
          <article-title>Scan: a structural clustering algorithm for networks</article-title>
          .
          <source>Proceedings of the 13th ACM SIGKDD international conference on Knowledge discovery and data mining</source>
          ,
          <year>2007</year>
          ;
          <fpage>824</fpage>
          -
          <lpage>833</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Newman</surname>
            <given-names>ME</given-names>
          </string-name>
          .
          <article-title>Fast algorithm for detecting community structure in networks</article-title>
          .
          <source>Physical Review</source>
          ,
          <year>2004</year>
          ;
          <volume>69</volume>
          (
          <issue>6</issue>
          ):
          <fpage>066133</fpage>
          -
          <lpage>066135</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>