SlideShare una empresa de Scribd logo
1 de 54
Descargar para leer sin conexión
A Path Algebra for Mapping Multi-Relational
  Networks to Single-Relational Networks
                  Marko A. Rodriguez
                    marko@lanl.gov
     T-7: Mathematical Modeling and Analysis Group
           CNLS: Center for Nonlinear Studies
            Los Alamos National Laboratory

                     June 26, 2008
Single- and Multi-Relational Networks
                                              Human-D
            Human-B




                                                                          Human-F
                        Human-C




      Human-A

                                                   Human-E



                                             Publisher-A
            Article-A

                                    publishedBy


         authored                                  editorOf               Human-B
                        Journal-A



                                     containedIn               authored

      Human-A
                        authored
                                                   Article-B




                                             Center for Non-Linear Studies Public Lecture - June 26, 2008
Presentation Article

Rodriguez M.A., Shinavier, J., “Exposing Multi-Relational Networks to
Single-Relational Network Analysis Algorithms”, LA-UR-08-03931, May
2008, http://arxiv.org/abs/0806.2274.

Acknowledgements:

•   Ideas inspired by the MESUR problem space [Bollen et al., 2007].
•   Vadas Gintautas aided in reviewing drafts of the article and presentation.
•   Michael Ham aided in reviewing drafts of the presentation.
•   Razvan Teodorescu taught me FoilTex and this is his template (I’m sorry,
    I just don’t know how to change the color scheme!)




                                         Center for Non-Linear Studies Public Lecture - June 26, 2008
Problem Statement
Think about all of the known network analysis algorithms:

• geodesics: diameter, eccentricity [Harary & Hage, 1995], closeness
  [Bavelas, 1950], betweenness [Freeman, 1977], ...
• spectral:    PageRank [Brin & Page, 1998], eigenvector centrality
  [Bonacich, 1987], ...
• community detection: leading eigenvector [Newman, 2006], edge
  betweenness [Girvan & Newman, 2002], ...
• mixing pattens: scalar and discrete assortativity [Newman, 2003], ...
• on and on and on...

These algorithms have been developed for directed or undirected
single-relational networks. What do you do when you have a
multi-relational network?

                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
Problem Statement

Now think about all of the known network analysis packages:

•   Java Universal Network/Graph Framework (JUNG) [O’Madadhain et al., 2005]
•   iGraph: Package for Complex Network Research [Csardi, 2006]
•   Pajek
•   NetworkX [Hagberg et al., n.d.]
•   on and on and on...

These packages (for the most part) have been developed for directed or
undirected single-relational networks. What do you do when you have a
multi-relational network?



                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
Problem Statement

• Do you reimplement all of the known algorithms to support a multi-
  relational network?

• Even if you do, what do these algorithms look like?




                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
Solution Statement

• You map your multi-relational network to a “meaningful” single-relational
  network and re-use existing algorithms, packages, and theorems from the
  single-relational domain.




                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
Outline

• Formalizing Single- and Multi-Relational Networks


• Background on Multi-Relational Network Analysis


• The Elements of the Path Algebra


• The Operations of the Path Algebra


• Multi-Relational Network Analysis


                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
Outline

• Formalizing Single- and Multi-Relational Networks


• Background on Multi-Relational Network Analysis


• The Elements of the Path Algebra


• The Operations of the Path Algebra


• Multi-Relational Network Analysis


                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
An Undirected Single-Relational Network
                                           Human-D
                     Human-B




                                                                 Human-F
                               Human-C




               Human-A

                                             Human-E




All edges have a single homogenous meaning (e.g. co-author).

                           G = (V, E ⊆ {V × V })



                                         Center for Non-Linear Studies Public Lecture - June 26, 2008
A Directed Single-Relational Network
                                                        Article-D
                           Article-B




                                                                               Article-F
                                          Article-C




               Article-A

                                                          Article-E




All edges have a single homogenous meaning (e.g. citation).

                                       G = (V, E ⊆ (V × V ))



                                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
A Multi-Relational Network
                                                     Publisher-A
                    Article-A

                                            publishedBy


                 authored                                  editorOf               Human-B
                                Journal-A



                                             containedIn               authored

              Human-A
                                authored
                                                           Article-B




Edges are heterogenous in meaning.

              M = (V, E = {E0 ⊆ (V × V ), E1, . . . , Em})



                                                    Center for Non-Linear Studies Public Lecture - June 26, 2008
Outline

• Formalizing Single- and Multi-Relational Networks


• Background on Multi-Relational Network Analysis


• The Elements of the Path Algebra


• The Operations of the Path Algebra


• Multi-Relational Network Analysis


                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
Flatten the Multi-Relational Network

• Suppose you have a multi-relational network, where there exists only two
  edge sets defined as coauthor and friend.


                           M = (V, E = {E0, E1})

  and you want to determine the most central “scholar” in this network.

• It is not sufficient to simply ignore edge labels (flatten the multi-
  relational network to a single-relational network) and execute a centrality
  algorithm on the network. You will confuse central friendship with central
  scholarship.


                                        Center for Non-Linear Studies Public Lecture - June 26, 2008
Extract a Single-Relational Network Component

• You could simply pull out the coauthor single relational network


                                G = (V, E0)

  and calculate a centrality algorithm on that network to get your result.

• That works, but for more complex situations with “richer semantics”,
  this mechanism will not work.




                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
Execute a Grammar-Based Walker
• A walker obeys a “grammar” that specifies the way in which the walker should move through the network
  [Rodriguez, 2008].

                      coauthor primary
                    eigenvector grammar                           Publisher-A

                   while(true)
                    incr vertex counter                  publishedBy
                    go authored
                    go authored  -1
                      but don't go back                                 editorOf               Human-B
                      to previous vertex     Journal-A



                                                          containedIn               authored

                        Human-A
                                              authored
                                                                        Article-B

                                           coauthor



• Problem – this solution mixes the analysis algorithm and the traversed implicit network.
• Solution – an algebra that is agnostic to the final executing algorithm.


                                                                Center for Non-Linear Studies Public Lecture - June 26, 2008
Outline

• Formalizing Single- and Multi-Relational Networks


• Background on Multi-Relational Network Analysis


• The Elements of the Path Algebra


• The Operations of the Path Algebra


• Multi-Relational Network Analysis


                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
An Adjacency Matrix Representation of a
                              Single-Relational Network

                                                                                                 n = |V |
                                                                                       0         1           0            0          1           Article-A


                                          Article-D
                                                                                         0       0           0             0         0           Article-B




                                                                          n = |V |
                  Article-B


                                                                                      0          0           0           1           1           Article-C

                                                             Article-F
                              Article-C
                                                                                       0         0           0             0         0           Article-D


                                                                                      0          0           0            0          0           Article-E

      Article-A




                                                                                                             Article-C


                                                                                                                         Article-D
                                                                                     Article-A


                                                                                                 Article-B




                                                                                                                                     Article-E
                                            Article-E




* NOTE: Sorry about missing the vertex Article-F in the adjacency matrix. Too lazy to redo diagrams.


                                                                    Center for Non-Linear Studies Public Lecture - June 26, 2008
An Adjacency Matrix Representation of a
                 Single-Relational Network

A single-relational network defined as

                         G = (V, E ⊆ (V × V ))

can be represented as the adjacency matrix A ∈ {0, 1}n×n, where

                                  1     if (i, j) ∈ E
                        Ai,j =
                                  0     otherwise.




                                         Center for Non-Linear Studies Public Lecture - June 26, 2008
A Three-Way Tensor Representation of a
                              Multi-Relational Network


                                                                                                                         0         1             1         0         0           Human-A


                                                                                                                                                                                 Article-A
                                                                                                                         0         0             0         0           0




                                                                                                                                                                                             n = |V |
                                             Publisher-A
           Article-A                                                                                                     0         0             0         0         0           Article-B

                                    publishedBy
                                                                                                                         0         0             1         0         0           Human-B




                                                                                                                    In
        authored                                                          Human-B




                                                                                              d
                                                   editorOf




                                                                                           ne
                        Journal-A
                                                                                                                                   0             0                               Journal-A




                                                                                                                  f
                                                                                                                         0                                 0         0




                                                                                                               rO

                                                                                                               y
                                                                                        ai




                                                                                                           dB
                                                                                                           ito
                                                                                        nt
                                                                                    m

                                                                                                        ed
                                                                                    co




                                                                                                        he


                                                                                                      ed
                                                                                                     is




                                                                                                                                   Article-A


                                                                                                                                               Article-B




                                                                                                                                                                     Journal-A
                                                                                                                         Human-A




                                                                                                                                                           Human-B
                                                                                        =


                                                                                                   or
                                                                                                  bl
                                                               authored




                                                                                                th
                                                                                              pu
                                     containedIn




                                                                                             au
     Human-A
                                                                                             |E
                        authored
                                                   Article-B                                   |                                   n = |V |

* NOTE: Sorry about missing the vertex Publisher-A in the tensor. Too lazy to redo diagrams.



                                                                                         Center for Non-Linear Studies Public Lecture - June 26, 2008
A Three-Way Tensor Representation of a
                 Multi-Relational Network

A three-way tensor can be used to represent a multi-relational network
[Kolda et al., 2005]. If

               M = (V, E = {E0, E1, . . . , Em ⊆ (V × V )})

is a multi-relational network, then A ∈ {0, 1}n×n×m and

                                   1   if (i, j) ∈ Em
                        Am
                         i,j   =
                                   0   otherwise.




                                         Center for Non-Linear Studies Public Lecture - June 26, 2008
The General Purpose of the Path Algebra

• Map a multi-relational tensor A ∈ {0, 1}n×n×m to a single-relational path matrix Z ∈ Rn×n .
                                                                                            +
• By performing operations on A, a single-relational path matrix is created whose “edges” are loaded
  with meaning.
• For example, you can create a coauthorship network, a social science journal citation network, a
  coauthorship network for scholars from the same university who have not been on the same project in
  the last 10 years, but are in the same department, etc.
• The theorems of the algebra can be used to manipulate your mapping operation to a smaller/more
  efficient form (i.e. how a composition is spoken in words can differ from its reduced form).




                                  0    1   1   0   0           24   1    0   0   0

                                   0   0   0   0   0            0   72   0   4   0

                                  0    0   0   0   0           23   0    0   0   0

                                  0    0   1   0   0            0   0 15.3 0     0

                                  0    0   0   0   0           0    0    0   0   12

                                   A ∈ {0, 1}n×n×m                   Z ∈ Rn×n
                                                                          +




                                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
The Elements of the Path Algebra

• A ∈ {0, 1}n×n×m: a three-way tensor representation of a multi-relational
  network.
• Z ∈ Rn×n: a path matrix derived by means of operations applied to A.
       +
  ——————————————————————————————
• Cj ∈ {0, 1}n×n: “to” path filters.
• Ri ∈ {0, 1}n×n: “from” path filters.
• I ∈ {0, 1}n×n: the identity matrix as a self-loop filter.
• 1 ∈ 1n×n: a matrix in which all entries are equal to 1.
• 0 ∈ 0n×n: a matrix in which all entries are equal to 0.


                                        Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


Example Scholarly Tensor Used in the Remainder of the
                    Presentation

• A1: authored : human → article
• A2: cites : article → article
• A3: contains : journal → article
• A4: category : journal → subject category
• A5: developed : human → program/software.




                                                  Center for Non-Linear Studies Public Lecture - June 26, 2008
Outline

• Formalizing Single- and Multi-Relational Networks


• Background on Multi-Relational Network Analysis


• The Elements of the Path Algebra


• The Operations of the Path Algebra


• Multi-Relational Network Analysis


                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
The Operations of the Path Algebra

• A · B: ordinary matrix multiplication determines the number of (A, B)-
  paths between vertices.
• A : matrix transpose inverts path directionality.
• A ◦ B: Hadamard, entry-wise multiplication applies a filter to selectively
  exclude paths.
• n(A): not generates the complement of a {0, 1}n×n matrix.
• c(A): clip generates a {0, 1}n×n matrix from a Rn×n matrix.
                                                  +
• v ±(A): vertex generates a {0, 1}n×n matrix from a Rn×n matrix, where
                                                        +
  only certain rows or columns contain non-zero values.
• λA: scalar multiplication weights the entries of a matrix.
• A + B: matrix addition merges paths.

                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
The Traverse Operation
• An interesting aspect of the single-relational adjacency matrix A ∈ {0, 1}n×n is that when it is raised
                                 (k)
  to the kth power, the entry Ai,j is equal to the number of paths of length k that connect vertex i to
  vertex j [Chartrand, 1977].
                              (1)
• Given, by definition, that Ai,j (i.e. Ai,j ) represents the number of paths that go from i to j of length
  1 (i.e. a single edge) and by the rules of ordinary matrix multiplication,

                                  (k)                 (k−1)
                             Ai,j =                 Ai,l            · Al,j : k ≥ 2.
                                            l∈V

                                        a                  b                    c

                         a   b      c                a     b        c                    a       b      c

                     a   0   1      0           a     0        1     0           a       0       0      1

                     b   0    0     1       ·   b     0        0     1     =     b        0      0      0

                     c   0    0     0           c    0         0     0           c       0       0       0
                                                                                    there is a path of length 2
                                                                                            from a to c




                                                                   Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                                          The Traverse Operation

                                                     Z = A1 · A2 · A1 ,
 Zi,j defines the number of paths from vertex i to vertex j such that a path goes from author i to one the
articles he or she has authored, from that article to one of the articles it cites, and finally, from that cited
article to its author j . Semantically, Z is an author-citation single-relational path matrix.

                                                                      A2
                                                     Article-A         cites        Article-B


                                  A1                                                            authored    A1
                                          authored



                                Human-A                          author-citation                           Human-B


                                                                      Z

* NOTE: All diagrams are with respect to a “source” vertex (the blue vertex) in order to preserve clarity. In reality, the operations

operate on all vertices in parallel.


                                                                           Center for Non-Linear Studies Public Lecture - June 26, 2008
The Filter Operation
Various path filters can be defined and applied using the entry-wise
Hadamard matrix product denoted ◦, where
                                                        
                          A1,1 · B1,1 · · · A1,m · B1,m
             A◦B=             .
                               .      ...         .
                                                  .      .
                         An,1 · Bn,1 · · · An,m · Bn,m


        24   1    0        0   0         0   1    0        0   0            0    1     0     0      0

         0   72   0        4   0         0   1    0        0   0            0    72    0     0      0

        23   0    0        0   0     ◦   1   0    0        0   0   =       23    0     0    0       0

         0   0 15.3 0          0         0   0    0        0   0            0    0     0     0      0

        0    0    0        0   12        0   0    0        0   0           0     0     0     0      0

             Path Matrix                     Path Filter                     Filtered Path Matrix



                                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
The Filter Operation

•   A◦1=A
•   A◦0=0
•   A◦B=B◦A
•   A ◦ (B + C) = (A ◦ B) + (A ◦ C)
•   A ◦ B = (A ◦ B) .




                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
The Not Filter
The not filter is useful for excluding a set of paths to or from a vertex.

                              n : {0, 1}n×n → {0, 1}n×n

with a function rule of

                                                   1    if Ai,j = 0
                              n(A)i,j =
                                                   0    otherwise.


                               0   0   1   1   1          1   1   0    0   0

                               1   0   1   0   1          0   1    0   1   0

                          n    0   1   1   1   1   =      1   0    0   0   0

                               1   1   0   1   1          0   0   1    0   0

                               1   1   1   1   0          0   0   0    0   1




                                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
The Not Filter

If A ∈ {0, 1}n×n, then

• n(n(A)) = A
• A ◦ n(A) = 0
• n(A) ◦ n(A) = n(A).




                                 Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                                     The Not Filter
A coauthorship path matrix is

                                     Z = A1 · A1 ◦ n(I)


                                                Article-A


                            A1                              authored
                                                                          A1
                                     authored



                         Human-A                 coauthor               Human-B

                                                    Z
                                        n(I)
                          coauthor


                                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
The Clip Filter
The general purpose of clip is to take a path matrix and “clip”, or
normalize, it to a {0, 1}n×n matrix.

                               c : Rn×n → {0, 1}n×n
                                    +


                                             1   if Zi,j > 0
                          c(Z)i,j =
                                             0   otherwise.

                     24   1     0   0   0             1     1     0     0    0

                      0   72    0   4   0              0    1     0     1    0

                 c   23   0     0   0   0    =        1     0     0     0    0

                     0    0 15.3 0      0             0     0     1     0    0

                     0    0     0   0   12            0     0     0     0    1



                                                 Center for Non-Linear Studies Public Lecture - June 26, 2008
The Clip Filter

If A, B ∈ {0, 1}n×n and Y, Z ∈ Rn×n, then
                                +


•   c(A) = A
•   c(n(A)) = n(c(A)) = n(A)
•   c(Y ◦ Z) = c(Y) ◦ c(Z)
•   n(A ◦ B) = c (n(A) + n(B))
•   n(A + B) = n(A) ◦ n(B)




                                    Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                                                The Clip Filter
Suppose we want to create an author citation path matrix that does not allow self citation or coauthor
citations.              „                  «     „ „                      ««
                            1     2     1                1     1
                   Z= A ·A ·A                ◦n c A · A           ◦ n(I)      ◦ n(I)
                                                                                |{z}
                        |        {z         } |              {z             } no self
                                        cites                           no coauthors

                                                              Z
                                        author-citation                                               Human-C


                                                                                           authored
                                                                   2
                                                               A                                      A1
                                                Article-A       cites          Article-B


                                A   1                                                           A1
                                authored                                  authored         authored



                      Human-A                               coauthor                                  Human-B

                                                    n c A1 · A1 ◦ n(I)

                         self           n(I)

                                                                   Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                                   The Clip Filter

However, using various theorems of the algebra,

             Z = A1 · A2 · A1            ◦ n c A1 · A1 ◦ n(I)                     ◦ n(I)
                                                                                     no self
                           cites                     no coauthors


becomes

                Z = A1 · A2 · A1            ◦ n c A1 · A1                   ◦ n(I).




                                                  Center for Non-Linear Studies Public Lecture - June 26, 2008
The Vertex Filter

In many cases, it is important to filter out particular paths to and from a
vertex.
                       v − : Rn×n × N → {0, 1}n×n,
                              +

                     −            1   if   k∈V Zi,k > 0
                    v (Z)i,j =
                                  0   otherwise
turns a non-zero column into an all 1-column and

                         v + : Rn×n × N → {0, 1}n×n,
                                +



                     +            1   if   k∈V Zk,j > 0
                    v (Z)i,j =
                                  0   otherwise
turns a non-zero row into an all 1-row.

                                          Center for Non-Linear Studies Public Lecture - June 26, 2008
The Vertex Filter
                                   0   1    0   1           0          0       1       0       1       0

                                   0   0    0       0       0          0       1       0       1       0

                         v−     0      2    0   32      0
                                                                =      0       1       0       1   0

                                   0   23   0       0   0              0       1       0       1   0

                                0      0    0   0       0              0       1       0       1   0



v + not diagrammed, but acts the same except for makes 1-rows. Two import filters are the column and
row filters, C ∈ {0, 1}n×n and R ∈ {0, 1}n×n , respectively.

                               0       1    0   0       0                  0       0       0       0       0

                                0      1    0   0       0                  0       0       0       0       0

                       C2 =    0       1    0   0       0       R3 =       1       1       1       1       1

                               0       1    0   0       0                  0       0       0       0       0
                               0       1    0   0       0                  0       0       0       0       0



                                                                Center for Non-Linear Studies Public Lecture - June 26, 2008
The Vertex Filter

•   v −(Ci) = Ci
•   v +(Rj ) = Rj
•   v −(Z) = v +(Z )
•   v +(Z) = v −(Z ) .




                                  Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                                                 The Vertex Filter
Assume that vertex 1 is the social science subject category vertex and we want to create a journal
citation network for social science journals only.
                                                         »        „          «–
                             +           4         3   2   3    −          4
                          h     “          ”         i
                    Z= v          C1 ◦ A ◦ A ·A · A          ◦v     R1 ◦ A        .
                          |           {z             }   |        {z            }
                                     soc.sci. journal articles                  articles in soc.sci. journals


                                                                               social-science journal citation
                          Z                          1    Social
                                                         Science

                                                                               category


                                      category
                                                                   A2           Article-B        contains        Journal-B


                                       A3                          cites                         A3
                                                                                                          v − R1 ◦ A4
                     Journal-A       contains        Article-A
                                                                   cites
                 +               4
             v        C1 ◦ A                                           2
                                                                                Article-C        contains        Journal-C
                                                                   A
                                                                                                 A3

                                                                           Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                                                         The Vertex Filter
                                                                        +           4         3
                                                                    h     “           ”         i
                                                                      v     C1 ◦ A       ◦A
                                                                    |            {z             }
                                                                      soc.sci. journal articles

                          S       J-A    J-B J-C A-A A-B A-C                  S       J-A      J-B J-C A-A A-B A-C              S   J-A   J-B J-C A-A A-B A-C

                  S       1        0     0     0 0    0 0             S       0        0       0       0 0   0 0           S    0    0    0    0 0     0 0
                 J-A
                          1 0            0     0 0 0 0               J-A
                                                                              1 0              0       0 0 0 0            J-A
                                                                                                                                1 0       0    0 0 0 0
                  J-B
                                         0 0 0 0 0                                             0 0 0 0 0                                  0 0 0 0 0
                                                                ◦
                                   0                                 J-B               0                                  J-B        0
                                                                                                                      =
                          1                                                   1                                                 1
                 J-C      1 0 0 0 0 0 0                              J-C      0 0 0 0 0 0 0                               J-C   0 0 0 0 0 0 0
                 A-A      1 0 0 0 0 0 0                              A-A      0 0 0 0 0 0 0                               A-A   0 0 0 0 0 0 0
                 A-B      1 0 0 0 0 0 0                              A-B      0 0 0 0 0 0 0                               A-B   0 0 0 0 0 0 0
                 A-C      1 0 0 0 0 0 0                              A-C      0 0 0 0 0 0 0                               A-C   0 0 0 0 0 0 0

                                          C1                                                       A4                                     C1 ◦ A4
                              S    J-A    J-B J-C A-A A-B A-C                     S    J-A      J-B J-C A-A A-B A-C             S   J-A   J-B J-C A-A A-B A-C

                      S       0     0      0   0 0     0 0                S       0     0        0     0 0   0 0           S    0    0    0    0 0     0 0
                   J-A
                              1 1          1   1 1 1 1                J-A
                                                                                  0 0              0   0 1 0 0            J-A
                                                                                                                                0 0       0    0 1 0 0
                   J-B
                              1     1      1 1 1 1 1                  J-B
                                                                                  0        0       0 0 0 1 0              J-B
                                                                                                                                0    0    0 0 0 1 0
                   J-C        0 0 0 0 0 0 0                     ◦     J-C         0 0 0 0 0 0 1                       =   J-C   0 0 0 0 0 0 0
                   A-A        0 0 0 0 0 0 0                           A-A         0 0 0 0 0 0 0                           A-A   0 0 0 0 0 0 0
                   A-B        0 0 0 0 0 0 0                           A-B         0 0 0 0 0 0 0                           A-B   0 0 0 0 0 0 0
                   A-C        0 0 0 0 0 0 0                           A-C         0 0 0 0 0 0 0                           A-C   0 0 0 0 0 0 0

                                   v + (C1 ◦ A4 )                                               A3                              v + (C1 ◦ A4 ) ◦ A3



                                                                                                        Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                                   The Vertex Filter

           Z = v + C1 ◦ A4 ◦ A3 ·A2 · A3 ◦ v − R1 ◦ A4                                          .
                    soc.sci. journal articles            articles in soc.sci. journals
However,

          v − R1 ◦ A4              = v−         C1 ◦ A4              Cx = Rx
                                   = v + C1 ◦ A4                     v +(Z) =
                                                                       v −(Z ) .

Therefore, because A ◦ B = (A ◦ B) ,

             Z = v + C1 ◦ A4 ◦ A3 ·A2 · v + C1 ◦ A4 ◦ A3                                    .
                               reused                               reused



                                                   Center for Non-Linear Studies Public Lecture - June 26, 2008
The Weight and Merge Filter

• λZ: scalar multiplication weights paths.

• Y + Z: matrix addition merges paths.


        24   1    0   0   0        0   1    0      0    0             24    2     0     0    0

         0   72   0   4   0        0   10   0      0    0              0    82    0     4    0

        23   0    0   0   0    +   1   0    34    0    0      =       24    0    34    0    0

        0    0 15.3 0     0        0   0    0      0   0               0    0 15.3 0        0

        0    0    0   0   12       0   0    0      0   2              0     0     0     0   14




                                                 Center for Non-Linear Studies Public Lecture - June 26, 2008
A1 : authored A2 : cites A3 : contains A4 : category A5 : developed
h             ih         ih            ih            ih             i


                       The Weight and Merge Filter


              Z = 0.6 A1 · A1 ◦ n(I)              + 0.4 A5 · A5 ◦ n(I)
                               coauthorship                       co-development
merges the article and software program collaboration path matrices as
specified by their respective weights of 0.6 and 0.4. The semantics of the
resultant is a software program and article collaboration path matrix that
favors article collaboration over software program collaboration. A
simplification of the previous composition is

                 Z = 0.6 A1 · A1              + 0.4 A5 · A5                 ◦ n(I).




                                                  Center for Non-Linear Studies Public Lecture - June 26, 2008
Outline

• Formalizing Single- and Multi-Relational Networks


• Background on Multi-Relational Network Analysis


• The Elements of the Path Algebra


• The Operations of the Path Algebra


• Multi-Relational Network Analysis


                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
Application to the Real-World

• A can be represented in a standard matrix manipulation package.

• Z can be constructed with the same matrix manipulation package.

• The path matrix Z has a weighted network representation.

              Z = (V, E ⊆ (V × V ), λ), where λ : E → R+


• Z can be used in standard network analysis packages.




                                     Center for Non-Linear Studies Public Lecture - June 26, 2008
The Page Rank Tensor

In the matrix form of PageRank, there exist two adjacency matrices in
[0, 1]n×n denoted
                                 1
                        1     |Γ+ (i)| if (i, j) ∈ E
                       Ai,j =
                              0        otherwise.
and
                                       1
                               A2 =
                                i,j        .
                                      |V |
A1 is a row-stochastic adjacency matrix and A2 is a fully connected
adjacency matrix known as the teleportation matrix.




                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
The Page Rank Tensor

The purpose of PageRank is to identify the primary eigenvector of a
weighted merged path matrix of the form

                      Z = δ · A1 + (1 − δ) · A2 .

Z is guaranteed to be a strongly connected single-relational path matrix
because there is some probability (defined by 1 − δ) that every vertex is
reachable by every other vertex.




                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
Conclusion

• Most of graph and network theory is concerned with the design of
  theorems and algorithms for single-relational networks.

• Given a multi-relational network, you can manipulate a tensor
  representation of it to yield a “semantically-rich” single-relational
  network.

• Thus, a multi-relational network can be exposed to the concepts of the
  single-relational domain.

Rodriguez M.A., Shinavier, J., “Exposing Multi-Relational Networks to
Single-Relational Network Analysis Algorithms”, LA-UR-08-03931, May
2008, http://arxiv.org/abs/0806.2274.

                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
References

[Bavelas, 1950] Bavelas, A. 1950. Communication Patterns in Task
  Oriented Groups. The Journal of the Acoustical Society of America,
  22, 271–282.

[Bollen et al., 2007] Bollen, Johan, Rodriguez, Marko A., & Van de Sompel,
  Herbert. 2007. MESUR: usage-based metrics of scholarly impact. In:
  Joint Conference on Digital Libraries (JCDL07). Vancouver, Canada:
  IEEE/ACM.

[Bonacich, 1987] Bonacich, Phillip. 1987. Power and centrality: A family
  of measures. American Journal of Sociology, 92(5), 1170–1182.

                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
[Brin & Page, 1998] Brin, Sergey, & Page, Lawrence. 1998. The anatomy
  of a large-scale hypertextual Web search engine. Computer Networks and
  ISDN Systems, 30(1–7), 107–117.

[Chartrand, 1977] Chartrand, Gary. 1977.        Introductory Graph Theory.
  Dover.

[Csardi, 2006] Csardi, Gabor. 2006. The igraph software package for
  complex network research. InterJournal Complex Systems.

[Freeman, 1977] Freeman, L. C. 1977. A set of measures of centrality based
   on betweenness. Sociometry, 40(35–41).

[Girvan & Newman, 2002] Girvan, Michelle, & Newman, M. E. J. 2002.
  Community structure in social and biological networks. Proceedings of
  the National Academy of Sciences, 99, 7821.

                                      Center for Non-Linear Studies Public Lecture - June 26, 2008
[Hagberg et al., n.d.] Hagberg, Aric, Schult, Daniel A., & Swart, Pieter J.
  NetworkX. https://networkx.lanl.gov.

[Harary & Hage, 1995] Harary, Frank, & Hage, Per. 1995. Eccentricity and
  centrality in networks. Social Networks, 17, 57–63.

[Kolda et al., 2005] Kolda, Tamara G., Bader, Brett W., & Kenny,
  Joseph P. 2005. Higher-Order Web Link Analysis Using Multilinear
  Algebra. In: Proceedings of the Fifth IEEE International Conference on
  Data Mining ICDM’05. IEEE.

[Newman, 2003] Newman, M. E. J. 2003. Mixing patterns in networks.
  Physical Review E, 67(2), 026126.

[Newman, 2006] Newman, M. E. J. 2006. Finding community structure in
  networks using the eigenvectors of matrices. Physical Review E, 74(May).

                                       Center for Non-Linear Studies Public Lecture - June 26, 2008
[O’Madadhain et al., 2005] O’Madadhain, Joshua, Fisher, Danyel, Nelson,
  Tom, & Krefeldt, Jens. 2005. JUNG: Java Universal Network/Graph
  Framework.

[Rodriguez, 2008] Rodriguez, Marko A. 2008. Grammar-Based Random
  Walkers in Semantic Networks. Knowledge-Based Systems, [in press].




                                     Center for Non-Linear Studies Public Lecture - June 26, 2008

Más contenido relacionado

Destacado

Automatic Metadata Generation using Associative Networks
Automatic Metadata Generation using Associative NetworksAutomatic Metadata Generation using Associative Networks
Automatic Metadata Generation using Associative NetworksMarko Rodriguez
 
The Path-o-Logical Gremlin
The Path-o-Logical GremlinThe Path-o-Logical Gremlin
The Path-o-Logical GremlinMarko Rodriguez
 
Geospatial Graphs made easy with OrientDB - Codemotion Spain
Geospatial Graphs made easy with OrientDB - Codemotion SpainGeospatial Graphs made easy with OrientDB - Codemotion Spain
Geospatial Graphs made easy with OrientDB - Codemotion SpainLuigi Dell'Aquila
 
Performance of graph query languages
Performance of graph query languagesPerformance of graph query languages
Performance of graph query languagesAthiq Ahamed
 
OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1Luca Garulli
 
OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)Luca Garulli
 
Traversing Graph Databases with Gremlin
Traversing Graph Databases with GremlinTraversing Graph Databases with Gremlin
Traversing Graph Databases with GremlinMarko Rodriguez
 
Works with persistent graphs using OrientDB
Works with persistent graphs using OrientDB Works with persistent graphs using OrientDB
Works with persistent graphs using OrientDB graphdevroom
 
Computing with Directed Labeled Graphs
Computing with Directed Labeled GraphsComputing with Directed Labeled Graphs
Computing with Directed Labeled GraphsMarko Rodriguez
 
Distributed Graph Databases and the Emerging Web of Data
Distributed Graph Databases and the Emerging Web of DataDistributed Graph Databases and the Emerging Web of Data
Distributed Graph Databases and the Emerging Web of DataMarko Rodriguez
 
OrientDB - Time Series and Event Sequences - Codemotion Milan 2014
OrientDB - Time Series and Event Sequences - Codemotion Milan 2014OrientDB - Time Series and Event Sequences - Codemotion Milan 2014
OrientDB - Time Series and Event Sequences - Codemotion Milan 2014Luigi Dell'Aquila
 
OrientDB - the 2nd generation of (Multi-Model) NoSQL
OrientDB - the 2nd generation  of  (Multi-Model) NoSQLOrientDB - the 2nd generation  of  (Multi-Model) NoSQL
OrientDB - the 2nd generation of (Multi-Model) NoSQLLuigi Dell'Aquila
 
The Gremlin in the Graph
The Gremlin in the GraphThe Gremlin in the Graph
The Gremlin in the GraphMarko Rodriguez
 
Presentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - WebinarPresentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - WebinarOrient Technologies
 
OrientDB & Hazelcast: In-Memory Distributed Graph Database
 OrientDB & Hazelcast: In-Memory Distributed Graph Database OrientDB & Hazelcast: In-Memory Distributed Graph Database
OrientDB & Hazelcast: In-Memory Distributed Graph DatabaseHazelcast
 
Breaking things on purpose (with Gremlin)
Breaking things on purpose (with Gremlin)Breaking things on purpose (with Gremlin)
Breaking things on purpose (with Gremlin)Kolton Andrus
 
Design your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDBDesign your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDBLuca Garulli
 
Gremlin: A Graph-Based Programming Language
Gremlin: A Graph-Based Programming LanguageGremlin: A Graph-Based Programming Language
Gremlin: A Graph-Based Programming LanguageMarko Rodriguez
 
Introduction to Gremlin
Introduction to GremlinIntroduction to Gremlin
Introduction to GremlinMax De Marzi
 

Destacado (20)

Automatic Metadata Generation using Associative Networks
Automatic Metadata Generation using Associative NetworksAutomatic Metadata Generation using Associative Networks
Automatic Metadata Generation using Associative Networks
 
The Path-o-Logical Gremlin
The Path-o-Logical GremlinThe Path-o-Logical Gremlin
The Path-o-Logical Gremlin
 
Geospatial Graphs made easy with OrientDB - Codemotion Spain
Geospatial Graphs made easy with OrientDB - Codemotion SpainGeospatial Graphs made easy with OrientDB - Codemotion Spain
Geospatial Graphs made easy with OrientDB - Codemotion Spain
 
Performance of graph query languages
Performance of graph query languagesPerformance of graph query languages
Performance of graph query languages
 
OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1
 
OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)
 
Traversing Graph Databases with Gremlin
Traversing Graph Databases with GremlinTraversing Graph Databases with Gremlin
Traversing Graph Databases with Gremlin
 
Works with persistent graphs using OrientDB
Works with persistent graphs using OrientDB Works with persistent graphs using OrientDB
Works with persistent graphs using OrientDB
 
Computing with Directed Labeled Graphs
Computing with Directed Labeled GraphsComputing with Directed Labeled Graphs
Computing with Directed Labeled Graphs
 
Distributed Graph Databases and the Emerging Web of Data
Distributed Graph Databases and the Emerging Web of DataDistributed Graph Databases and the Emerging Web of Data
Distributed Graph Databases and the Emerging Web of Data
 
OrientDB - Time Series and Event Sequences - Codemotion Milan 2014
OrientDB - Time Series and Event Sequences - Codemotion Milan 2014OrientDB - Time Series and Event Sequences - Codemotion Milan 2014
OrientDB - Time Series and Event Sequences - Codemotion Milan 2014
 
OrientDB - the 2nd generation of (Multi-Model) NoSQL
OrientDB - the 2nd generation  of  (Multi-Model) NoSQLOrientDB - the 2nd generation  of  (Multi-Model) NoSQL
OrientDB - the 2nd generation of (Multi-Model) NoSQL
 
The Gremlin in the Graph
The Gremlin in the GraphThe Gremlin in the Graph
The Gremlin in the Graph
 
Presentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - WebinarPresentation of OrientDB v2.2 - Webinar
Presentation of OrientDB v2.2 - Webinar
 
OrientDB & Hazelcast: In-Memory Distributed Graph Database
 OrientDB & Hazelcast: In-Memory Distributed Graph Database OrientDB & Hazelcast: In-Memory Distributed Graph Database
OrientDB & Hazelcast: In-Memory Distributed Graph Database
 
Breaking things on purpose (with Gremlin)
Breaking things on purpose (with Gremlin)Breaking things on purpose (with Gremlin)
Breaking things on purpose (with Gremlin)
 
Design your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDBDesign your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDB
 
The Path Forward
The Path ForwardThe Path Forward
The Path Forward
 
Gremlin: A Graph-Based Programming Language
Gremlin: A Graph-Based Programming LanguageGremlin: A Graph-Based Programming Language
Gremlin: A Graph-Based Programming Language
 
Introduction to Gremlin
Introduction to GremlinIntroduction to Gremlin
Introduction to Gremlin
 

Similar a A Path Algebra for Mapping Multi-Relational Networks to Single-Relational Networks

Action and content based Community Detection in Social Networks
Action and content based Community Detection in Social NetworksAction and content based Community Detection in Social Networks
Action and content based Community Detection in Social Networksritesh_11
 
Hybrid Meta-Heuristic Algorithms For Solving Network Design Problem
Hybrid Meta-Heuristic Algorithms For Solving Network Design ProblemHybrid Meta-Heuristic Algorithms For Solving Network Design Problem
Hybrid Meta-Heuristic Algorithms For Solving Network Design ProblemAlana Cartwright
 
Maximizing the Diversity of Exposure in a Social Network
Maximizing the Diversity of Exposure in a Social Network	Maximizing the Diversity of Exposure in a Social Network
Maximizing the Diversity of Exposure in a Social Network Cigdem Aslay
 
Community detection in social networks[1]
Community detection in social networks[1]Community detection in social networks[1]
Community detection in social networks[1]sdnumaygmailcom
 
Lloyd Swarmfest 2010 Presentation
Lloyd   Swarmfest 2010 PresentationLloyd   Swarmfest 2010 Presentation
Lloyd Swarmfest 2010 Presentationkalloyd
 
20121010 marc smith - mapping collections of connections in social media with...
20121010 marc smith - mapping collections of connections in social media with...20121010 marc smith - mapping collections of connections in social media with...
20121010 marc smith - mapping collections of connections in social media with...Marc Smith
 
240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...
240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...
240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...thanhdowork
 
Experimental categorization and deep visualization
 Experimental categorization and deep visualization Experimental categorization and deep visualization
Experimental categorization and deep visualizationEverardo Reyes-García
 
Community Detection
Community Detection Community Detection
Community Detection Kanika Kanwal
 
Rostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic Networks
Rostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic NetworksRostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic Networks
Rostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic NetworksWitology
 
Mesoscale Structures in Networks
Mesoscale Structures in NetworksMesoscale Structures in Networks
Mesoscale Structures in NetworksMason Porter
 
presentation_masarati.pdf
presentation_masarati.pdfpresentation_masarati.pdf
presentation_masarati.pdfAsdrenFeraj
 
Gephi icwsm-tutorial
Gephi icwsm-tutorialGephi icwsm-tutorial
Gephi icwsm-tutorialcsedays
 
SP1: Exploratory Network Analysis with Gephi
SP1: Exploratory Network Analysis with GephiSP1: Exploratory Network Analysis with Gephi
SP1: Exploratory Network Analysis with GephiJohn Breslin
 

Similar a A Path Algebra for Mapping Multi-Relational Networks to Single-Relational Networks (16)

Action and content based Community Detection in Social Networks
Action and content based Community Detection in Social NetworksAction and content based Community Detection in Social Networks
Action and content based Community Detection in Social Networks
 
Hybrid Meta-Heuristic Algorithms For Solving Network Design Problem
Hybrid Meta-Heuristic Algorithms For Solving Network Design ProblemHybrid Meta-Heuristic Algorithms For Solving Network Design Problem
Hybrid Meta-Heuristic Algorithms For Solving Network Design Problem
 
Maximizing the Diversity of Exposure in a Social Network
Maximizing the Diversity of Exposure in a Social Network	Maximizing the Diversity of Exposure in a Social Network
Maximizing the Diversity of Exposure in a Social Network
 
Community detection in social networks[1]
Community detection in social networks[1]Community detection in social networks[1]
Community detection in social networks[1]
 
Lloyd Swarmfest 2010 Presentation
Lloyd   Swarmfest 2010 PresentationLloyd   Swarmfest 2010 Presentation
Lloyd Swarmfest 2010 Presentation
 
20121010 marc smith - mapping collections of connections in social media with...
20121010 marc smith - mapping collections of connections in social media with...20121010 marc smith - mapping collections of connections in social media with...
20121010 marc smith - mapping collections of connections in social media with...
 
06 Community Detection
06 Community Detection06 Community Detection
06 Community Detection
 
240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...
240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...
240115_Thanh_LabSeminar[Don't walk, skip! online learning of multi-scale netw...
 
Experimental categorization and deep visualization
 Experimental categorization and deep visualization Experimental categorization and deep visualization
Experimental categorization and deep visualization
 
Community Detection
Community Detection Community Detection
Community Detection
 
Rostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic Networks
Rostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic NetworksRostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic Networks
Rostislav Yavorsky - Research Challenges of Dynamic Socio-Semantic Networks
 
Mesoscale Structures in Networks
Mesoscale Structures in NetworksMesoscale Structures in Networks
Mesoscale Structures in Networks
 
Mesoscale Structures in Networks - Mason A. Porter
Mesoscale Structures in Networks - Mason A. PorterMesoscale Structures in Networks - Mason A. Porter
Mesoscale Structures in Networks - Mason A. Porter
 
presentation_masarati.pdf
presentation_masarati.pdfpresentation_masarati.pdf
presentation_masarati.pdf
 
Gephi icwsm-tutorial
Gephi icwsm-tutorialGephi icwsm-tutorial
Gephi icwsm-tutorial
 
SP1: Exploratory Network Analysis with Gephi
SP1: Exploratory Network Analysis with GephiSP1: Exploratory Network Analysis with Gephi
SP1: Exploratory Network Analysis with Gephi
 

Más de Marko Rodriguez

mm-ADT: A Virtual Machine/An Economic Machine
mm-ADT: A Virtual Machine/An Economic Machinemm-ADT: A Virtual Machine/An Economic Machine
mm-ADT: A Virtual Machine/An Economic MachineMarko Rodriguez
 
mm-ADT: A Multi-Model Abstract Data Type
mm-ADT: A Multi-Model Abstract Data Typemm-ADT: A Multi-Model Abstract Data Type
mm-ADT: A Multi-Model Abstract Data TypeMarko Rodriguez
 
Open Problems in the Universal Graph Theory
Open Problems in the Universal Graph TheoryOpen Problems in the Universal Graph Theory
Open Problems in the Universal Graph TheoryMarko Rodriguez
 
Gremlin 101.3 On Your FM Dial
Gremlin 101.3 On Your FM DialGremlin 101.3 On Your FM Dial
Gremlin 101.3 On Your FM DialMarko Rodriguez
 
Gremlin's Graph Traversal Machinery
Gremlin's Graph Traversal MachineryGremlin's Graph Traversal Machinery
Gremlin's Graph Traversal MachineryMarko Rodriguez
 
Quantum Processes in Graph Computing
Quantum Processes in Graph ComputingQuantum Processes in Graph Computing
Quantum Processes in Graph ComputingMarko Rodriguez
 
ACM DBPL Keynote: The Graph Traversal Machine and Language
ACM DBPL Keynote: The Graph Traversal Machine and LanguageACM DBPL Keynote: The Graph Traversal Machine and Language
ACM DBPL Keynote: The Graph Traversal Machine and LanguageMarko Rodriguez
 
The Gremlin Graph Traversal Language
The Gremlin Graph Traversal LanguageThe Gremlin Graph Traversal Language
The Gremlin Graph Traversal LanguageMarko Rodriguez
 
Faunus: Graph Analytics Engine
Faunus: Graph Analytics EngineFaunus: Graph Analytics Engine
Faunus: Graph Analytics EngineMarko Rodriguez
 
Solving Problems with Graphs
Solving Problems with GraphsSolving Problems with Graphs
Solving Problems with GraphsMarko Rodriguez
 
Titan: The Rise of Big Graph Data
Titan: The Rise of Big Graph DataTitan: The Rise of Big Graph Data
Titan: The Rise of Big Graph DataMarko Rodriguez
 
The Pathology of Graph Databases
The Pathology of Graph DatabasesThe Pathology of Graph Databases
The Pathology of Graph DatabasesMarko Rodriguez
 
Memoirs of a Graph Addict: Despair to Redemption
Memoirs of a Graph Addict: Despair to RedemptionMemoirs of a Graph Addict: Despair to Redemption
Memoirs of a Graph Addict: Despair to RedemptionMarko Rodriguez
 
Graph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of DataGraph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of DataMarko Rodriguez
 
Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...
Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...
Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...Marko Rodriguez
 
A Perspective on Graph Theory and Network Science
A Perspective on Graph Theory and Network ScienceA Perspective on Graph Theory and Network Science
A Perspective on Graph Theory and Network ScienceMarko Rodriguez
 
The Graph Traversal Programming Pattern
The Graph Traversal Programming PatternThe Graph Traversal Programming Pattern
The Graph Traversal Programming PatternMarko Rodriguez
 
The Network Data Structure in Computing
The Network Data Structure in ComputingThe Network Data Structure in Computing
The Network Data Structure in ComputingMarko Rodriguez
 
A Model of the Scholarly Community
A Model of the Scholarly CommunityA Model of the Scholarly Community
A Model of the Scholarly CommunityMarko Rodriguez
 
General-Purpose, Internet-Scale Distributed Computing with Linked Process
General-Purpose, Internet-Scale Distributed Computing with Linked ProcessGeneral-Purpose, Internet-Scale Distributed Computing with Linked Process
General-Purpose, Internet-Scale Distributed Computing with Linked ProcessMarko Rodriguez
 

Más de Marko Rodriguez (20)

mm-ADT: A Virtual Machine/An Economic Machine
mm-ADT: A Virtual Machine/An Economic Machinemm-ADT: A Virtual Machine/An Economic Machine
mm-ADT: A Virtual Machine/An Economic Machine
 
mm-ADT: A Multi-Model Abstract Data Type
mm-ADT: A Multi-Model Abstract Data Typemm-ADT: A Multi-Model Abstract Data Type
mm-ADT: A Multi-Model Abstract Data Type
 
Open Problems in the Universal Graph Theory
Open Problems in the Universal Graph TheoryOpen Problems in the Universal Graph Theory
Open Problems in the Universal Graph Theory
 
Gremlin 101.3 On Your FM Dial
Gremlin 101.3 On Your FM DialGremlin 101.3 On Your FM Dial
Gremlin 101.3 On Your FM Dial
 
Gremlin's Graph Traversal Machinery
Gremlin's Graph Traversal MachineryGremlin's Graph Traversal Machinery
Gremlin's Graph Traversal Machinery
 
Quantum Processes in Graph Computing
Quantum Processes in Graph ComputingQuantum Processes in Graph Computing
Quantum Processes in Graph Computing
 
ACM DBPL Keynote: The Graph Traversal Machine and Language
ACM DBPL Keynote: The Graph Traversal Machine and LanguageACM DBPL Keynote: The Graph Traversal Machine and Language
ACM DBPL Keynote: The Graph Traversal Machine and Language
 
The Gremlin Graph Traversal Language
The Gremlin Graph Traversal LanguageThe Gremlin Graph Traversal Language
The Gremlin Graph Traversal Language
 
Faunus: Graph Analytics Engine
Faunus: Graph Analytics EngineFaunus: Graph Analytics Engine
Faunus: Graph Analytics Engine
 
Solving Problems with Graphs
Solving Problems with GraphsSolving Problems with Graphs
Solving Problems with Graphs
 
Titan: The Rise of Big Graph Data
Titan: The Rise of Big Graph DataTitan: The Rise of Big Graph Data
Titan: The Rise of Big Graph Data
 
The Pathology of Graph Databases
The Pathology of Graph DatabasesThe Pathology of Graph Databases
The Pathology of Graph Databases
 
Memoirs of a Graph Addict: Despair to Redemption
Memoirs of a Graph Addict: Despair to RedemptionMemoirs of a Graph Addict: Despair to Redemption
Memoirs of a Graph Addict: Despair to Redemption
 
Graph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of DataGraph Databases: Trends in the Web of Data
Graph Databases: Trends in the Web of Data
 
Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...
Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...
Problem-Solving using Graph Traversals: Searching, Scoring, Ranking, and Reco...
 
A Perspective on Graph Theory and Network Science
A Perspective on Graph Theory and Network ScienceA Perspective on Graph Theory and Network Science
A Perspective on Graph Theory and Network Science
 
The Graph Traversal Programming Pattern
The Graph Traversal Programming PatternThe Graph Traversal Programming Pattern
The Graph Traversal Programming Pattern
 
The Network Data Structure in Computing
The Network Data Structure in ComputingThe Network Data Structure in Computing
The Network Data Structure in Computing
 
A Model of the Scholarly Community
A Model of the Scholarly CommunityA Model of the Scholarly Community
A Model of the Scholarly Community
 
General-Purpose, Internet-Scale Distributed Computing with Linked Process
General-Purpose, Internet-Scale Distributed Computing with Linked ProcessGeneral-Purpose, Internet-Scale Distributed Computing with Linked Process
General-Purpose, Internet-Scale Distributed Computing with Linked Process
 

Último

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 

Último (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 

A Path Algebra for Mapping Multi-Relational Networks to Single-Relational Networks

  • 1. A Path Algebra for Mapping Multi-Relational Networks to Single-Relational Networks Marko A. Rodriguez marko@lanl.gov T-7: Mathematical Modeling and Analysis Group CNLS: Center for Nonlinear Studies Los Alamos National Laboratory June 26, 2008
  • 2. Single- and Multi-Relational Networks Human-D Human-B Human-F Human-C Human-A Human-E Publisher-A Article-A publishedBy authored editorOf Human-B Journal-A containedIn authored Human-A authored Article-B Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 3. Presentation Article Rodriguez M.A., Shinavier, J., “Exposing Multi-Relational Networks to Single-Relational Network Analysis Algorithms”, LA-UR-08-03931, May 2008, http://arxiv.org/abs/0806.2274. Acknowledgements: • Ideas inspired by the MESUR problem space [Bollen et al., 2007]. • Vadas Gintautas aided in reviewing drafts of the article and presentation. • Michael Ham aided in reviewing drafts of the presentation. • Razvan Teodorescu taught me FoilTex and this is his template (I’m sorry, I just don’t know how to change the color scheme!) Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 4. Problem Statement Think about all of the known network analysis algorithms: • geodesics: diameter, eccentricity [Harary & Hage, 1995], closeness [Bavelas, 1950], betweenness [Freeman, 1977], ... • spectral: PageRank [Brin & Page, 1998], eigenvector centrality [Bonacich, 1987], ... • community detection: leading eigenvector [Newman, 2006], edge betweenness [Girvan & Newman, 2002], ... • mixing pattens: scalar and discrete assortativity [Newman, 2003], ... • on and on and on... These algorithms have been developed for directed or undirected single-relational networks. What do you do when you have a multi-relational network? Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 5. Problem Statement Now think about all of the known network analysis packages: • Java Universal Network/Graph Framework (JUNG) [O’Madadhain et al., 2005] • iGraph: Package for Complex Network Research [Csardi, 2006] • Pajek • NetworkX [Hagberg et al., n.d.] • on and on and on... These packages (for the most part) have been developed for directed or undirected single-relational networks. What do you do when you have a multi-relational network? Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 6. Problem Statement • Do you reimplement all of the known algorithms to support a multi- relational network? • Even if you do, what do these algorithms look like? Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 7. Solution Statement • You map your multi-relational network to a “meaningful” single-relational network and re-use existing algorithms, packages, and theorems from the single-relational domain. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 8. Outline • Formalizing Single- and Multi-Relational Networks • Background on Multi-Relational Network Analysis • The Elements of the Path Algebra • The Operations of the Path Algebra • Multi-Relational Network Analysis Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 9. Outline • Formalizing Single- and Multi-Relational Networks • Background on Multi-Relational Network Analysis • The Elements of the Path Algebra • The Operations of the Path Algebra • Multi-Relational Network Analysis Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 10. An Undirected Single-Relational Network Human-D Human-B Human-F Human-C Human-A Human-E All edges have a single homogenous meaning (e.g. co-author). G = (V, E ⊆ {V × V }) Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 11. A Directed Single-Relational Network Article-D Article-B Article-F Article-C Article-A Article-E All edges have a single homogenous meaning (e.g. citation). G = (V, E ⊆ (V × V )) Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 12. A Multi-Relational Network Publisher-A Article-A publishedBy authored editorOf Human-B Journal-A containedIn authored Human-A authored Article-B Edges are heterogenous in meaning. M = (V, E = {E0 ⊆ (V × V ), E1, . . . , Em}) Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 13. Outline • Formalizing Single- and Multi-Relational Networks • Background on Multi-Relational Network Analysis • The Elements of the Path Algebra • The Operations of the Path Algebra • Multi-Relational Network Analysis Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 14. Flatten the Multi-Relational Network • Suppose you have a multi-relational network, where there exists only two edge sets defined as coauthor and friend. M = (V, E = {E0, E1}) and you want to determine the most central “scholar” in this network. • It is not sufficient to simply ignore edge labels (flatten the multi- relational network to a single-relational network) and execute a centrality algorithm on the network. You will confuse central friendship with central scholarship. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 15. Extract a Single-Relational Network Component • You could simply pull out the coauthor single relational network G = (V, E0) and calculate a centrality algorithm on that network to get your result. • That works, but for more complex situations with “richer semantics”, this mechanism will not work. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 16. Execute a Grammar-Based Walker • A walker obeys a “grammar” that specifies the way in which the walker should move through the network [Rodriguez, 2008]. coauthor primary eigenvector grammar Publisher-A while(true) incr vertex counter publishedBy go authored go authored -1 but don't go back editorOf Human-B to previous vertex Journal-A containedIn authored Human-A authored Article-B coauthor • Problem – this solution mixes the analysis algorithm and the traversed implicit network. • Solution – an algebra that is agnostic to the final executing algorithm. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 17. Outline • Formalizing Single- and Multi-Relational Networks • Background on Multi-Relational Network Analysis • The Elements of the Path Algebra • The Operations of the Path Algebra • Multi-Relational Network Analysis Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 18. An Adjacency Matrix Representation of a Single-Relational Network n = |V | 0 1 0 0 1 Article-A Article-D 0 0 0 0 0 Article-B n = |V | Article-B 0 0 0 1 1 Article-C Article-F Article-C 0 0 0 0 0 Article-D 0 0 0 0 0 Article-E Article-A Article-C Article-D Article-A Article-B Article-E Article-E * NOTE: Sorry about missing the vertex Article-F in the adjacency matrix. Too lazy to redo diagrams. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 19. An Adjacency Matrix Representation of a Single-Relational Network A single-relational network defined as G = (V, E ⊆ (V × V )) can be represented as the adjacency matrix A ∈ {0, 1}n×n, where 1 if (i, j) ∈ E Ai,j = 0 otherwise. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 20. A Three-Way Tensor Representation of a Multi-Relational Network 0 1 1 0 0 Human-A Article-A 0 0 0 0 0 n = |V | Publisher-A Article-A 0 0 0 0 0 Article-B publishedBy 0 0 1 0 0 Human-B In authored Human-B d editorOf ne Journal-A 0 0 Journal-A f 0 0 0 rO y ai dB ito nt m ed co he ed is Article-A Article-B Journal-A Human-A Human-B = or bl authored th pu containedIn au Human-A |E authored Article-B | n = |V | * NOTE: Sorry about missing the vertex Publisher-A in the tensor. Too lazy to redo diagrams. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 21. A Three-Way Tensor Representation of a Multi-Relational Network A three-way tensor can be used to represent a multi-relational network [Kolda et al., 2005]. If M = (V, E = {E0, E1, . . . , Em ⊆ (V × V )}) is a multi-relational network, then A ∈ {0, 1}n×n×m and 1 if (i, j) ∈ Em Am i,j = 0 otherwise. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 22. The General Purpose of the Path Algebra • Map a multi-relational tensor A ∈ {0, 1}n×n×m to a single-relational path matrix Z ∈ Rn×n . + • By performing operations on A, a single-relational path matrix is created whose “edges” are loaded with meaning. • For example, you can create a coauthorship network, a social science journal citation network, a coauthorship network for scholars from the same university who have not been on the same project in the last 10 years, but are in the same department, etc. • The theorems of the algebra can be used to manipulate your mapping operation to a smaller/more efficient form (i.e. how a composition is spoken in words can differ from its reduced form). 0 1 1 0 0 24 1 0 0 0 0 0 0 0 0 0 72 0 4 0 0 0 0 0 0 23 0 0 0 0 0 0 1 0 0 0 0 15.3 0 0 0 0 0 0 0 0 0 0 0 12 A ∈ {0, 1}n×n×m Z ∈ Rn×n + Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 23. The Elements of the Path Algebra • A ∈ {0, 1}n×n×m: a three-way tensor representation of a multi-relational network. • Z ∈ Rn×n: a path matrix derived by means of operations applied to A. + —————————————————————————————— • Cj ∈ {0, 1}n×n: “to” path filters. • Ri ∈ {0, 1}n×n: “from” path filters. • I ∈ {0, 1}n×n: the identity matrix as a self-loop filter. • 1 ∈ 1n×n: a matrix in which all entries are equal to 1. • 0 ∈ 0n×n: a matrix in which all entries are equal to 0. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 24. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i Example Scholarly Tensor Used in the Remainder of the Presentation • A1: authored : human → article • A2: cites : article → article • A3: contains : journal → article • A4: category : journal → subject category • A5: developed : human → program/software. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 25. Outline • Formalizing Single- and Multi-Relational Networks • Background on Multi-Relational Network Analysis • The Elements of the Path Algebra • The Operations of the Path Algebra • Multi-Relational Network Analysis Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 26. The Operations of the Path Algebra • A · B: ordinary matrix multiplication determines the number of (A, B)- paths between vertices. • A : matrix transpose inverts path directionality. • A ◦ B: Hadamard, entry-wise multiplication applies a filter to selectively exclude paths. • n(A): not generates the complement of a {0, 1}n×n matrix. • c(A): clip generates a {0, 1}n×n matrix from a Rn×n matrix. + • v ±(A): vertex generates a {0, 1}n×n matrix from a Rn×n matrix, where + only certain rows or columns contain non-zero values. • λA: scalar multiplication weights the entries of a matrix. • A + B: matrix addition merges paths. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 27. The Traverse Operation • An interesting aspect of the single-relational adjacency matrix A ∈ {0, 1}n×n is that when it is raised (k) to the kth power, the entry Ai,j is equal to the number of paths of length k that connect vertex i to vertex j [Chartrand, 1977]. (1) • Given, by definition, that Ai,j (i.e. Ai,j ) represents the number of paths that go from i to j of length 1 (i.e. a single edge) and by the rules of ordinary matrix multiplication, (k) (k−1) Ai,j = Ai,l · Al,j : k ≥ 2. l∈V a b c a b c a b c a b c a 0 1 0 a 0 1 0 a 0 0 1 b 0 0 1 · b 0 0 1 = b 0 0 0 c 0 0 0 c 0 0 0 c 0 0 0 there is a path of length 2 from a to c Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 28. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Traverse Operation Z = A1 · A2 · A1 , Zi,j defines the number of paths from vertex i to vertex j such that a path goes from author i to one the articles he or she has authored, from that article to one of the articles it cites, and finally, from that cited article to its author j . Semantically, Z is an author-citation single-relational path matrix. A2 Article-A cites Article-B A1 authored A1 authored Human-A author-citation Human-B Z * NOTE: All diagrams are with respect to a “source” vertex (the blue vertex) in order to preserve clarity. In reality, the operations operate on all vertices in parallel. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 29. The Filter Operation Various path filters can be defined and applied using the entry-wise Hadamard matrix product denoted ◦, where   A1,1 · B1,1 · · · A1,m · B1,m A◦B= . . ... . . . An,1 · Bn,1 · · · An,m · Bn,m 24 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 72 0 4 0 0 1 0 0 0 0 72 0 0 0 23 0 0 0 0 ◦ 1 0 0 0 0 = 23 0 0 0 0 0 0 15.3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0 0 0 0 0 0 0 0 Path Matrix Path Filter Filtered Path Matrix Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 30. The Filter Operation • A◦1=A • A◦0=0 • A◦B=B◦A • A ◦ (B + C) = (A ◦ B) + (A ◦ C) • A ◦ B = (A ◦ B) . Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 31. The Not Filter The not filter is useful for excluding a set of paths to or from a vertex. n : {0, 1}n×n → {0, 1}n×n with a function rule of 1 if Ai,j = 0 n(A)i,j = 0 otherwise. 0 0 1 1 1 1 1 0 0 0 1 0 1 0 1 0 1 0 1 0 n 0 1 1 1 1 = 1 0 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1 1 0 0 0 0 0 1 Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 32. The Not Filter If A ∈ {0, 1}n×n, then • n(n(A)) = A • A ◦ n(A) = 0 • n(A) ◦ n(A) = n(A). Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 33. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Not Filter A coauthorship path matrix is Z = A1 · A1 ◦ n(I) Article-A A1 authored A1 authored Human-A coauthor Human-B Z n(I) coauthor Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 34. The Clip Filter The general purpose of clip is to take a path matrix and “clip”, or normalize, it to a {0, 1}n×n matrix. c : Rn×n → {0, 1}n×n + 1 if Zi,j > 0 c(Z)i,j = 0 otherwise. 24 1 0 0 0 1 1 0 0 0 0 72 0 4 0 0 1 0 1 0 c 23 0 0 0 0 = 1 0 0 0 0 0 0 15.3 0 0 0 0 1 0 0 0 0 0 0 12 0 0 0 0 1 Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 35. The Clip Filter If A, B ∈ {0, 1}n×n and Y, Z ∈ Rn×n, then + • c(A) = A • c(n(A)) = n(c(A)) = n(A) • c(Y ◦ Z) = c(Y) ◦ c(Z) • n(A ◦ B) = c (n(A) + n(B)) • n(A + B) = n(A) ◦ n(B) Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 36. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Clip Filter Suppose we want to create an author citation path matrix that does not allow self citation or coauthor citations. „ « „ „ «« 1 2 1 1 1 Z= A ·A ·A ◦n c A · A ◦ n(I) ◦ n(I) |{z} | {z } | {z } no self cites no coauthors Z author-citation Human-C authored 2 A A1 Article-A cites Article-B A 1 A1 authored authored authored Human-A coauthor Human-B n c A1 · A1 ◦ n(I) self n(I) Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 37. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Clip Filter However, using various theorems of the algebra, Z = A1 · A2 · A1 ◦ n c A1 · A1 ◦ n(I) ◦ n(I) no self cites no coauthors becomes Z = A1 · A2 · A1 ◦ n c A1 · A1 ◦ n(I). Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 38. The Vertex Filter In many cases, it is important to filter out particular paths to and from a vertex. v − : Rn×n × N → {0, 1}n×n, + − 1 if k∈V Zi,k > 0 v (Z)i,j = 0 otherwise turns a non-zero column into an all 1-column and v + : Rn×n × N → {0, 1}n×n, + + 1 if k∈V Zk,j > 0 v (Z)i,j = 0 otherwise turns a non-zero row into an all 1-row. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 39. The Vertex Filter 0 1 0 1 0 0 1 0 1 0 0 0 0 0 0 0 1 0 1 0 v− 0 2 0 32 0 = 0 1 0 1 0 0 23 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 1 0 v + not diagrammed, but acts the same except for makes 1-rows. Two import filters are the column and row filters, C ∈ {0, 1}n×n and R ∈ {0, 1}n×n , respectively. 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 C2 = 0 1 0 0 0 R3 = 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 40. The Vertex Filter • v −(Ci) = Ci • v +(Rj ) = Rj • v −(Z) = v +(Z ) • v +(Z) = v −(Z ) . Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 41. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Vertex Filter Assume that vertex 1 is the social science subject category vertex and we want to create a journal citation network for social science journals only. » „ «– + 4 3 2 3 − 4 h “ ” i Z= v C1 ◦ A ◦ A ·A · A ◦v R1 ◦ A . | {z } | {z } soc.sci. journal articles articles in soc.sci. journals social-science journal citation Z 1 Social Science category category A2 Article-B contains Journal-B A3 cites A3 v − R1 ◦ A4 Journal-A contains Article-A cites + 4 v C1 ◦ A 2 Article-C contains Journal-C A A3 Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 42. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Vertex Filter + 4 3 h “ ” i v C1 ◦ A ◦A | {z } soc.sci. journal articles S J-A J-B J-C A-A A-B A-C S J-A J-B J-C A-A A-B A-C S J-A J-B J-C A-A A-B A-C S 1 0 0 0 0 0 0 S 0 0 0 0 0 0 0 S 0 0 0 0 0 0 0 J-A 1 0 0 0 0 0 0 J-A 1 0 0 0 0 0 0 J-A 1 0 0 0 0 0 0 J-B 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ◦ 0 J-B 0 J-B 0 = 1 1 1 J-C 1 0 0 0 0 0 0 J-C 0 0 0 0 0 0 0 J-C 0 0 0 0 0 0 0 A-A 1 0 0 0 0 0 0 A-A 0 0 0 0 0 0 0 A-A 0 0 0 0 0 0 0 A-B 1 0 0 0 0 0 0 A-B 0 0 0 0 0 0 0 A-B 0 0 0 0 0 0 0 A-C 1 0 0 0 0 0 0 A-C 0 0 0 0 0 0 0 A-C 0 0 0 0 0 0 0 C1 A4 C1 ◦ A4 S J-A J-B J-C A-A A-B A-C S J-A J-B J-C A-A A-B A-C S J-A J-B J-C A-A A-B A-C S 0 0 0 0 0 0 0 S 0 0 0 0 0 0 0 S 0 0 0 0 0 0 0 J-A 1 1 1 1 1 1 1 J-A 0 0 0 0 1 0 0 J-A 0 0 0 0 1 0 0 J-B 1 1 1 1 1 1 1 J-B 0 0 0 0 0 1 0 J-B 0 0 0 0 0 1 0 J-C 0 0 0 0 0 0 0 ◦ J-C 0 0 0 0 0 0 1 = J-C 0 0 0 0 0 0 0 A-A 0 0 0 0 0 0 0 A-A 0 0 0 0 0 0 0 A-A 0 0 0 0 0 0 0 A-B 0 0 0 0 0 0 0 A-B 0 0 0 0 0 0 0 A-B 0 0 0 0 0 0 0 A-C 0 0 0 0 0 0 0 A-C 0 0 0 0 0 0 0 A-C 0 0 0 0 0 0 0 v + (C1 ◦ A4 ) A3 v + (C1 ◦ A4 ) ◦ A3 Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 43. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Vertex Filter Z = v + C1 ◦ A4 ◦ A3 ·A2 · A3 ◦ v − R1 ◦ A4 . soc.sci. journal articles articles in soc.sci. journals However, v − R1 ◦ A4 = v− C1 ◦ A4 Cx = Rx = v + C1 ◦ A4 v +(Z) = v −(Z ) . Therefore, because A ◦ B = (A ◦ B) , Z = v + C1 ◦ A4 ◦ A3 ·A2 · v + C1 ◦ A4 ◦ A3 . reused reused Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 44. The Weight and Merge Filter • λZ: scalar multiplication weights paths. • Y + Z: matrix addition merges paths. 24 1 0 0 0 0 1 0 0 0 24 2 0 0 0 0 72 0 4 0 0 10 0 0 0 0 82 0 4 0 23 0 0 0 0 + 1 0 34 0 0 = 24 0 34 0 0 0 0 15.3 0 0 0 0 0 0 0 0 0 15.3 0 0 0 0 0 0 12 0 0 0 0 2 0 0 0 0 14 Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 45. A1 : authored A2 : cites A3 : contains A4 : category A5 : developed h ih ih ih ih i The Weight and Merge Filter Z = 0.6 A1 · A1 ◦ n(I) + 0.4 A5 · A5 ◦ n(I) coauthorship co-development merges the article and software program collaboration path matrices as specified by their respective weights of 0.6 and 0.4. The semantics of the resultant is a software program and article collaboration path matrix that favors article collaboration over software program collaboration. A simplification of the previous composition is Z = 0.6 A1 · A1 + 0.4 A5 · A5 ◦ n(I). Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 46. Outline • Formalizing Single- and Multi-Relational Networks • Background on Multi-Relational Network Analysis • The Elements of the Path Algebra • The Operations of the Path Algebra • Multi-Relational Network Analysis Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 47. Application to the Real-World • A can be represented in a standard matrix manipulation package. • Z can be constructed with the same matrix manipulation package. • The path matrix Z has a weighted network representation. Z = (V, E ⊆ (V × V ), λ), where λ : E → R+ • Z can be used in standard network analysis packages. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 48. The Page Rank Tensor In the matrix form of PageRank, there exist two adjacency matrices in [0, 1]n×n denoted 1 1 |Γ+ (i)| if (i, j) ∈ E Ai,j = 0 otherwise. and 1 A2 = i,j . |V | A1 is a row-stochastic adjacency matrix and A2 is a fully connected adjacency matrix known as the teleportation matrix. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 49. The Page Rank Tensor The purpose of PageRank is to identify the primary eigenvector of a weighted merged path matrix of the form Z = δ · A1 + (1 − δ) · A2 . Z is guaranteed to be a strongly connected single-relational path matrix because there is some probability (defined by 1 − δ) that every vertex is reachable by every other vertex. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 50. Conclusion • Most of graph and network theory is concerned with the design of theorems and algorithms for single-relational networks. • Given a multi-relational network, you can manipulate a tensor representation of it to yield a “semantically-rich” single-relational network. • Thus, a multi-relational network can be exposed to the concepts of the single-relational domain. Rodriguez M.A., Shinavier, J., “Exposing Multi-Relational Networks to Single-Relational Network Analysis Algorithms”, LA-UR-08-03931, May 2008, http://arxiv.org/abs/0806.2274. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 51. References [Bavelas, 1950] Bavelas, A. 1950. Communication Patterns in Task Oriented Groups. The Journal of the Acoustical Society of America, 22, 271–282. [Bollen et al., 2007] Bollen, Johan, Rodriguez, Marko A., & Van de Sompel, Herbert. 2007. MESUR: usage-based metrics of scholarly impact. In: Joint Conference on Digital Libraries (JCDL07). Vancouver, Canada: IEEE/ACM. [Bonacich, 1987] Bonacich, Phillip. 1987. Power and centrality: A family of measures. American Journal of Sociology, 92(5), 1170–1182. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 52. [Brin & Page, 1998] Brin, Sergey, & Page, Lawrence. 1998. The anatomy of a large-scale hypertextual Web search engine. Computer Networks and ISDN Systems, 30(1–7), 107–117. [Chartrand, 1977] Chartrand, Gary. 1977. Introductory Graph Theory. Dover. [Csardi, 2006] Csardi, Gabor. 2006. The igraph software package for complex network research. InterJournal Complex Systems. [Freeman, 1977] Freeman, L. C. 1977. A set of measures of centrality based on betweenness. Sociometry, 40(35–41). [Girvan & Newman, 2002] Girvan, Michelle, & Newman, M. E. J. 2002. Community structure in social and biological networks. Proceedings of the National Academy of Sciences, 99, 7821. Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 53. [Hagberg et al., n.d.] Hagberg, Aric, Schult, Daniel A., & Swart, Pieter J. NetworkX. https://networkx.lanl.gov. [Harary & Hage, 1995] Harary, Frank, & Hage, Per. 1995. Eccentricity and centrality in networks. Social Networks, 17, 57–63. [Kolda et al., 2005] Kolda, Tamara G., Bader, Brett W., & Kenny, Joseph P. 2005. Higher-Order Web Link Analysis Using Multilinear Algebra. In: Proceedings of the Fifth IEEE International Conference on Data Mining ICDM’05. IEEE. [Newman, 2003] Newman, M. E. J. 2003. Mixing patterns in networks. Physical Review E, 67(2), 026126. [Newman, 2006] Newman, M. E. J. 2006. Finding community structure in networks using the eigenvectors of matrices. Physical Review E, 74(May). Center for Non-Linear Studies Public Lecture - June 26, 2008
  • 54. [O’Madadhain et al., 2005] O’Madadhain, Joshua, Fisher, Danyel, Nelson, Tom, & Krefeldt, Jens. 2005. JUNG: Java Universal Network/Graph Framework. [Rodriguez, 2008] Rodriguez, Marko A. 2008. Grammar-Based Random Walkers in Semantic Networks. Knowledge-Based Systems, [in press]. Center for Non-Linear Studies Public Lecture - June 26, 2008