# How can I represent a set of graphs for learning purposes?

I have a network of labelled digraphs and a I need to perform a unsupervised learning algorithm on this data.

I am interested in embedding a network of description logic documents in a vector space using the ideas in the paper Co-embedding Attributed Networks (which is a variational auto-encoder). look at the picture:

The first step is to represent each digraph as a feature vector in a vector space.

I have googled a lot but I haven't found good explanations (I also search for supervised algorithms like support vector machine working on a set of labelled digraphs but google doesn't retrieve good results).

My question is: How can I represent a set of labelled digraphs into a vector for learning purposes? (this representation algorithm must have linear complexity)

• It depends entirely on what the learning task is. What features might be important for your problem? Number of vertices? Number of edges? Density? Something a little more complicated? – Juho Nov 27 '19 at 17:41

I don't think that paper is suitable for what you want to do. That paper generates an embedding of nodes: given a graph $$G$$ and a node $$v$$ in $$G$$, it outputs an embedding of $$v$$ (a representation of some properties of $$v$$). You want an embedding of the entire graph: given a graph $$G$$, you want to compute an embedding of $$G$$ (a representation of the entire graph $$G$$).