DeepGCNs: GCNs so tief wie CNNs machen

Convolutional Neural Networks (CNNs) haben bei einer Vielzahl von Aufgaben im Bereich des Computersehens, wie Objektklassifikation und -erkennung, semantische Segmentierung sowie Aktivitätsverstehen, erhebliche Erfolge erzielt. Ein entscheidender Faktor für ihre herausragende Leistungsfähigkeit war die Möglichkeit, sehr tiefe Netzwerke zu trainieren. Trotz ihres großen Erfolgs in vielen Anwendungen funktionieren CNNs jedoch nicht gut mit nicht-euklidischen Daten, die in zahlreichen realen Anwendungsszenarien weit verbreitet sind. Graph Convolutional Networks (GCNs) bieten hier eine Alternative, die es ermöglicht, nicht-euklidische Daten in neuronale Netzwerke einzuspeisen. Obwohl GCNs bereits vielversprechende Ergebnisse erzielen, sind sie derzeit auf Architekturen mit einer vergleichsweise geringen Anzahl von Schichten beschränkt, hauptsächlich aufgrund von verschwindenden Gradienten während des Trainings. In dieser Arbeit werden Konzepte aus CNNs, wie Residual- und Dense-Verbindungen sowie dilatierte Faltungen, erfolgreich auf GCNs übertragen, um tiefgehende GCNs effektiv trainieren zu können. Wir zeigen experimentell den Nutzen sehr tiefer GCNs (bis zu 112 Schichten) an verschiedenen Datensätzen und Aufgaben. Insbesondere erzielen wir sehr vielversprechende Ergebnisse bei der Teilsegmentierung und semantischen Segmentierung von Punktwolken sowie bei der Knotenklassifikation biologischer Proteinfunktionen in Protein-Protein-Interaktions-(PPI-)Graphen. Wir sind überzeugt, dass die Erkenntnisse dieser Arbeit neue Wege für zukünftige Forschung an GCNs und deren Anwendung auf bisher nicht untersuchte Aufgaben eröffnen werden. Der Quellcode für diese Arbeit ist jeweils für PyTorch und TensorFlow unter den folgenden URLs verfügbar: https://github.com/lightaime/deep_gcns_torch und https://github.com/lightaime/deep_gcns.