working with hypergraphs - node_x_edge input

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

working with hypergraphs - node_x_edge input

Alireza Kashani
Hi,

I wonder how one can work with hyper-graphs using graph-tool. For example in my work, I would like to feed a data where rows are journals and columns are papers out-going citations. I understand such a binary matrix, can not be used as an adjacency matrix but I am curious if it is possible to work with this type of input. Otherwise, I appreciate to hear your thoughts on converting this matrix into a adjacency matrix.

Br
Alireza

_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
Reply | Threaded
Open this post in threaded view
|

Re: working with hypergraphs - node_x_edge input

Alexandre Hannud Abdo
Ni! Hi Alireza,

One way to work with hypergraphs is to use the incidence graph representation of the hypergraph.

Abraços,
ale
.~´

On Mon, Mar 2, 2020 at 5:28 PM Alireza Kashani <[hidden email]> wrote:
Hi,

I wonder how one can work with hyper-graphs using graph-tool. For example in my work, I would like to feed a data where rows are journals and columns are papers out-going citations. I understand such a binary matrix, can not be used as an adjacency matrix but I am curious if it is possible to work with this type of input. Otherwise, I appreciate to hear your thoughts on converting this matrix into a adjacency matrix.

Br
Alireza
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool

_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
Reply | Threaded
Open this post in threaded view
|

Re: working with hypergraphs - node_x_edge input

Alireza Kashani
Thanks Alexander,

May be my question was not clear enough - as you said, my data is already an incident matrix.
I would like to use stochastic-block-models, and seems they only work with adjacency matrices. Therefore, I wonder what are the possibilities to work-around this problem.

Br


On Mon, Mar 2, 2020 at 9:35 PM Alexandre Hannud Abdo <[hidden email]> wrote:
Ni! Hi Alireza,

One way to work with hypergraphs is to use the incidence graph representation of the hypergraph.

Abraços,
ale
.~´

On Mon, Mar 2, 2020 at 5:28 PM Alireza Kashani <[hidden email]> wrote:
Hi,

I wonder how one can work with hyper-graphs using graph-tool. For example in my work, I would like to feed a data where rows are journals and columns are papers out-going citations. I understand such a binary matrix, can not be used as an adjacency matrix but I am curious if it is possible to work with this type of input. Otherwise, I appreciate to hear your thoughts on converting this matrix into a adjacency matrix.

Br
Alireza
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool

_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
Reply | Threaded
Open this post in threaded view
|

Re: working with hypergraphs - node_x_edge input

Alexandre Hannud Abdo
Ni!

Incidence matrices can be trated as a subset of an adjacency matrix (and in this sense hypergraphs as a special case of graphs), so in principle there is no problem to work around. You just need to properly interpret the model in terms of membership to hyperedges instead of connections to nodes.

You should hardcode the bipartite structure when running the DL minimization in order to save processing time (see the pclabel param).

If you're convinced that this doesn't suite your needs, you should explicitly formulate your conceptual issue so we can provide useful advice.

Cheers!

.~´

On Tue, Mar 3, 2020 at 5:23 AM Alireza Kashani <[hidden email]> wrote:
Thanks Alexander,

May be my question was not clear enough - as you said, my data is already an incident matrix.
I would like to use stochastic-block-models, and seems they only work with adjacency matrices. Therefore, I wonder what are the possibilities to work-around this problem.

Br


On Mon, Mar 2, 2020 at 9:35 PM Alexandre Hannud Abdo <[hidden email]> wrote:
Ni! Hi Alireza,

One way to work with hypergraphs is to use the incidence graph representation of the hypergraph.

Abraços,
ale
.~´

On Mon, Mar 2, 2020 at 5:28 PM Alireza Kashani <[hidden email]> wrote:
Hi,

I wonder how one can work with hyper-graphs using graph-tool. For example in my work, I would like to feed a data where rows are journals and columns are papers out-going citations. I understand such a binary matrix, can not be used as an adjacency matrix but I am curious if it is possible to work with this type of input. Otherwise, I appreciate to hear your thoughts on converting this matrix into a adjacency matrix.

Br
Alireza
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool

_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
Reply | Threaded
Open this post in threaded view
|

Re: working with hypergraphs - node_x_edge input

Alireza Kashani
Dear Alexander,

Thanks for your answer, regarding the treatment,
For example, if my data looks like


p1 p2 p3 p4 p5 p6
j1 1 0 1 0 1 0
j2 0 1 1 0 0 1
j3 0 0 0 1 1 1
j4 1 0 0 1 0 0

are you suggesting to treat it as


j1 j2 j3 j4 p1 p2 p3 p4 p5 p6
j1 0 0 0 0 1 0 1 0 1 0
j2 0 0 0 0 0 1 1 0 0 1
j3 0 0 0 0 0 0 0 1 1 1
j4 0 0 0 0 1 0 0 1 0 0
p1 1 0 0 1 0 0 0 0 0 0
p2 0 1 0 0 0 0 0 0 0 0
p3 1 1 0 0 0 0 0 0 0 0
p4 0 0 1 1 0 0 0 0 0 0
p5 1 0 1 0 0 0 0 0 0 0
p6 0 1 1 0 0 0 0 0 0 0

to be an adjacency matrix ?
Thanks,


On Tue, Mar 3, 2020 at 5:32 PM Alexandre Hannud Abdo <[hidden email]> wrote:
Ni!

Incidence matrices can be trated as a subset of an adjacency matrix (and in this sense hypergraphs as a special case of graphs), so in principle there is no problem to work around. You just need to properly interpret the model in terms of membership to hyperedges instead of connections to nodes.

You should hardcode the bipartite structure when running the DL minimization in order to save processing time (see the pclabel param).

If you're convinced that this doesn't suite your needs, you should explicitly formulate your conceptual issue so we can provide useful advice.

Cheers!

.~´

On Tue, Mar 3, 2020 at 5:23 AM Alireza Kashani <[hidden email]> wrote:
Thanks Alexander,

May be my question was not clear enough - as you said, my data is already an incident matrix.
I would like to use stochastic-block-models, and seems they only work with adjacency matrices. Therefore, I wonder what are the possibilities to work-around this problem.

Br


On Mon, Mar 2, 2020 at 9:35 PM Alexandre Hannud Abdo <[hidden email]> wrote:
Ni! Hi Alireza,

One way to work with hypergraphs is to use the incidence graph representation of the hypergraph.

Abraços,
ale
.~´

On Mon, Mar 2, 2020 at 5:28 PM Alireza Kashani <[hidden email]> wrote:
Hi,

I wonder how one can work with hyper-graphs using graph-tool. For example in my work, I would like to feed a data where rows are journals and columns are papers out-going citations. I understand such a binary matrix, can not be used as an adjacency matrix but I am curious if it is possible to work with this type of input. Otherwise, I appreciate to hear your thoughts on converting this matrix into a adjacency matrix.

Br
Alireza
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool

_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
Reply | Threaded
Open this post in threaded view
|

Re: working with hypergraphs - node_x_edge input

Alexandre Hannud Abdo
Ni! Hi Alireza,

Yep, that's what I meant.

As a note, this is what the adjacency matrix for any bipartite graph can be reordered to look like - or undirected bipartite graph in your particular case.

Note that in SBM terms this corresponds to two blocks that only connect across, which is why one should impose that constraint using `pclabel`, sparing the algorithm from inferring it.
(And in a hypergraph interpretation you likely wouldn't want blocks mixing hyperedges and nodes to start with.)

[]s
ale
.~´


On Tue, Mar 3, 2020 at 6:48 PM Alireza Kashani <[hidden email]> wrote:
Dear Alexander,

Thanks for your answer, regarding the treatment,
For example, if my data looks like


p1 p2 p3 p4 p5 p6
j1 1 0 1 0 1 0
j2 0 1 1 0 0 1
j3 0 0 0 1 1 1
j4 1 0 0 1 0 0

are you suggesting to treat it as


j1 j2 j3 j4 p1 p2 p3 p4 p5 p6
j1 0 0 0 0 1 0 1 0 1 0
j2 0 0 0 0 0 1 1 0 0 1
j3 0 0 0 0 0 0 0 1 1 1
j4 0 0 0 0 1 0 0 1 0 0
p1 1 0 0 1 0 0 0 0 0 0
p2 0 1 0 0 0 0 0 0 0 0
p3 1 1 0 0 0 0 0 0 0 0
p4 0 0 1 1 0 0 0 0 0 0
p5 1 0 1 0 0 0 0 0 0 0
p6 0 1 1 0 0 0 0 0 0 0

to be an adjacency matrix ?
Thanks,


On Tue, Mar 3, 2020 at 5:32 PM Alexandre Hannud Abdo <[hidden email]> wrote:
Ni!

Incidence matrices can be trated as a subset of an adjacency matrix (and in this sense hypergraphs as a special case of graphs), so in principle there is no problem to work around. You just need to properly interpret the model in terms of membership to hyperedges instead of connections to nodes.

You should hardcode the bipartite structure when running the DL minimization in order to save processing time (see the pclabel param).

If you're convinced that this doesn't suite your needs, you should explicitly formulate your conceptual issue so we can provide useful advice.

Cheers!

.~´

On Tue, Mar 3, 2020 at 5:23 AM Alireza Kashani <[hidden email]> wrote:
Thanks Alexander,

May be my question was not clear enough - as you said, my data is already an incident matrix.
I would like to use stochastic-block-models, and seems they only work with adjacency matrices. Therefore, I wonder what are the possibilities to work-around this problem.

Br


On Mon, Mar 2, 2020 at 9:35 PM Alexandre Hannud Abdo <[hidden email]> wrote:
Ni! Hi Alireza,

One way to work with hypergraphs is to use the incidence graph representation of the hypergraph.

Abraços,
ale
.~´

On Mon, Mar 2, 2020 at 5:28 PM Alireza Kashani <[hidden email]> wrote:
Hi,

I wonder how one can work with hyper-graphs using graph-tool. For example in my work, I would like to feed a data where rows are journals and columns are papers out-going citations. I understand such a binary matrix, can not be used as an adjacency matrix but I am curious if it is possible to work with this type of input. Otherwise, I appreciate to hear your thoughts on converting this matrix into a adjacency matrix.

Br
Alireza
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool
_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool

_______________________________________________
graph-tool mailing list
[hidden email]
https://lists.skewed.de/mailman/listinfo/graph-tool