Skip to content

Instantly share code, notes, and snippets.

@rytse
Created August 3, 2017 04:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rytse/04e9fefddd2daad1e2ad5d525d7e9e7b to your computer and use it in GitHub Desktop.
Save rytse/04e9fefddd2daad1e2ad5d525d7e9e7b to your computer and use it in GitHub Desktop.
Python script for visualizing a few deep neural net variant topologies using python graph-tool
#!/usr/bin/env python
from graph_tool.all import *
# Vanilla
vg = Graph()
vil = [vg.add_vertex() for i in xrange(3)]
vd1 = [vg.add_vertex() for i in xrange(10)]
vd2 = [vg.add_vertex() for i in xrange(10)]
vol = [vg.add_vertex() for i in xrange(6)]
for i in vil:
for j in vd1:
vg.add_edge(i, j)
for i in vd1:
for j in vd2:
vg.add_edge(i, j)
for i in vd2:
for j in vol:
vg.add_edge(i, j)
varf = arf_layout(vg)
vfruch = fruchterman_reingold_layout(vg)
graph_draw(vg, output_size = (1000, 1000), output = "vanilla_arf.png", pos = varf)
graph_draw(vg, output_size = (1000, 1000), output = "vanilla_fruch.png", pos = vfruch)
# Separate layers
sg = Graph()
sil = [vg.add_vertex() for i in xrange(3)]
for i in xrange(6):
start = sg.add_vertex()
for j in sil:
sg.add_edge(j, start)
rep = [sg.add_vertex() for k in xrange(4)]
for k in rep:
sg.add_edge(start, k)
for j in xrange(4):
if j == 3:
nrep = [sg.add_vertex() for k in xrange(1)]
else:
nrep = [sg.add_vertex() for k in xrange(4)]
for n in rep:
for m in nrep:
sg.add_edge(n, m)
rep = nrep
sarf = arf_layout(sg)
sfruch = fruchterman_reingold_layout(sg)
graph_draw(sg, output_size = (1000, 1000), output = "separate_arf.png", pos = sarf)
graph_draw(sg, output_size = (1000, 1000), output = "separate_fruch.png", pos = sfruch)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment