Data Science Bowl 2016

In diesem Blogpost zeigen wir, wie tiefe neuronale Netze bei der Diagnose von kardialer Insuffizienz eingesetzt werden können. Dazu haben wir ein neuronales Netz entwickelt, das vollautomatisch die Volumina des linken menschlichen Ventrikels auf dem Niveau eines Experten vermessen kann.

 

Überblick

Allein in den USA werden täglich 1500 Menschen mit Herzinsuffizienz diagnostiziert. Das hauptauschlaggebende Indiz für ein mögliches Herzversagen ist dabei die stetige Abnahme der Herzfunktion. Gemessen wird diese üblicherweise, indem das End-systolische und das End-diastolische Volumen des Herzens berechnet werden. Dabei handelt es sich um die Größe des linken Ventrikels zu Beginn und in der Mitte eines vollen Herzzyklus. Das heißt, es wird das Volumen des linken Ventrikels bei maximaler Kontraktion (systolisch) und das Volumen des Ventrikels bei maximaler Relaxation (diastolisch) gemessen. Durch Vergleich der beiden Volumina kann nachfolgend abgeschätzt werden, wieviel Blut mit jedem Herzschlag verarbeitet wird.

Bei der Standardvorgehensweise zur Vermessung des Herzvolumens wird dessen voller Zyklus mit Hilfe von Magnetresonanztomographie (MRT) überwacht und aufgezeichnet. Anschließend bearbeitet der behandelnde Kardiologe diese MRT Scans manuell nach, um die gewünschten Volumina zu erhalten – Eine Aufgabe, die bis zu 20 Minuten pro Patient erfordern kann. Um nicht nur die langen manuellen Bearbeitungszeiten zu reduzieren, sondern auch, um dauerhaft einen hohen Standard gewährleisten zu können, sind hochakkurate und automatisierte Verfahren nötig. Genau die Lösung dieses Problems war Ziel des  Data Science Bowl 2016.

Der international renommierte und hochdotierte Wettbewerb, gehostet durch die Kaggle-Plattform, findet jährlich mit dem Ziel statt, neue Lösungsansätze in Bezug auf die aktuellsten und relevantesten Fragestellungen aus Medizin und Forschung zu entwickeln. Dabei treten Privatpersonen, Firmen und Forschungsinstitute aus aller Welt zu einem Kräftemessen an. Wir sind stolz darauf, im Data Science Bowl 2016 den 8. Platz erreicht zu haben.

 

Lösungsansatz mit tiefen neuronalen Netzen

Es existieren unterschiedlichste Ansätze, um das Volumen eines menschlichen Herzens  automatisch zu berechnen.. Hier stellen wir eine Methode vor, die auf der Verwendung von tiefen neuronalen Netzen beruht und sich als besonders akkurat erwiesen  hat. Dabei gehen wir ähnlich vor, wie Kardiologen selbst, und zerteilen das aufgezeichnete MRT-Video in einzelne Momentaufnahmen. Eine Gesamtaufnahme besteht aus ca. 30 Momentaufnahmen (auch Frames) für einen zweidimensionalen Schnitt des Herzens. Damit das Gesamtvolumen eines Herzens berechnet werden kann, müssen mehrere Schnitte auf verschiedener Höhe aufgenommen werden. Das heißt, es werden mehrere MRT-Videos pro Patient aufgenommen (ca. 10 Schnitte), wobei jede Aufnahme einen anderen zweidimensionalen Schnitt aufzeichnet. Auf jedem einzelnen Frame wollen wir dann den Bereich bzw. die Fläche markieren, die ein Teil des linken Ventrikels ist. Anschließend kann das Gesamtvolumen des Herzens zu verschiedenen Zeitpunkten im Herzzyklus aus den einzelnen Schnitten zusammengesetzt werden.

 

 

Abb. 1: Beispiel MRT Schnitt aus dem Sunnybrook Cardiac Data (SCD) Datensatz. Jedes original MRT-Bild (links) dient als Input für das neuronale Netz. Zu jedem Bild existiert eine händisch gezeichnete Maske, die  die Fläche des linken Ventrikels markiert (rechts). Im Training soll das neuronale Netz nun lernen, die entsprechenden Masken nur auf Grundlage des originalen Bildes selbständig einzuzeichnen.

Um dieses aufwendige manuelle Markieren des linken Ventrikels zu automatisieren, haben wir ein neuronales Netz auf 450 Beispielbildern aus dem Sunnybrook Cardiac Data (SCD) Datensatz trainiert. Bei diesem Datensatz wurde für jeden der insgesamt 450 MRT-Schnitte der linke Ventrikel von einem Experten weiß markiert (Abb.  1). Während des Trainings sollte unser neuronales Netz nun lernen, diese Experten-Annotationen so genau wie möglich nachzuahmen, indem es die entsprechenden Strukturen im MRT-Schnitt automatisch erkennt und versteht, diese vom umgebenden Gewebe zu unterscheiden (Abb.  2). Nach Abschluss des Lernprozesses kann das neuronale Netz dann auf neue, unbekannte Patientenaufnahmen angewandt werden. Im Vergleich zu einigen Minuten manueller Arbeit werden die nötigen Volumina so in nur wenigen Millisekunden vollautomatisch berechnet.

 

 

Abb. 2: Aufbau des neuronalen Netzes. Jedes originale MRT-Bild wird durch mehrere Schichten des neuronalen Netzes geleitet, bis hin zur Output Schicht, in der der linke Ventrikel weiß eingezeichnet wird. Beim Durchlaufen der einzelnen Schichten werden alle Bereiche, die nicht von Interesse sind, herausgefiltert, bis ausschließlich der linke Ventrikelbereich vorhanden ist.

Dabei sind die vom neuronalen Netz automatisch generierten Markierungen kaum unterscheidbar von den Experten-Annotationen. Selbst in extrem kritischen Fällen, etwa wenn klassische Algorithmen oder Laien Probleme dabei haben,  Gewebestrukturen vom tatsächlichen linken Ventrikel zu unterscheiden, kann unser neuronales Netz ohne Probleme die zum Verwechseln ähnlichen Gewebestrukturen ausblenden. Dies ist in dem obigen Video dargestellt. In der ersten Zeile zeigen wir ein Musterbeispiel mit dem entsprechenden MRT-Scan (links), die  vom neuronalen Netz automatisch generierten Markierungen (mittig) und die Überlagerung der jeweiligen Bilder (rechts). Der gewünschte Bereich ist kompromisslos markiert und entspricht der Güte, die auch von Experten erwartet wird.

In der zweiten Zeile ist ein Test-Szenario dargestellt. Hier versuchen wir, unser neuronales Netz auszutricksen, und haben daher einen Bildausschnitt gewählt, in dem gar kein linker Ventrikel zu sehen ist! Obwohl die Gewebestruktur optisch sehr ähnlich scheint und für medizinische Laien leicht mit einen Teil des linken Ventrikels verwechselt werden könnte , entscheidet sich unser neuronales Netz dazu, keinen Bereich weiß zu markieren – exakt die Reaktion, die wir uns erhofft hatten. Mit klassischen, regelbasierten Algorithmen ist eine solche Robustheit oft nur extrem schwer oder gar nicht erreichbar, was zeigt, wie stabil die Lösung durch ein neuronales Netz tatsächlich ist. Anstatt nur auf lokale Strukturen und Helligkeitsunterschiede zu reagieren, lernt das neuronale Netz ein viel komplexeres und zugleich globales Konzept, um den linken Ventrikel selbst von extrem ähnlichen Gewebestrukturen zu unterscheiden.

 

Conclusio

Wie wir gesehen haben, bieten tiefe neuronale Netze die Möglichkeit, klinische Diagnostiken stark zu beschleunigen und dabei auch zuverlässiger zu gestalten. Diese neuartige Form von Algorithmen sind extrem robust und erreichen das Niveau von absoluten Experten, selbst auf so hoch komplexem medizinischen Bildmaterial wie MRT-Scans. Bei der Entwicklung dieses Verfahrens ist dabei, abgesehen von  dem medizinischen Datensatz, keinerlei Expertenwissen oder händisches Justieren von Parametern notwendig. Weiterhin beschränkt sich der hier dargestellte Ansatz nicht nur auf das Vermessen von Volumina linker Ventrikel. Vielmehr kann dieses Konzept genutzt werden, um jede beliebige, hochkomplexe Struktur auf Bildmaterialien zu markieren. So kann dasselbe Prinzip auch angewandt werden, um winzige, krebsbefallene Lungenknoten frühzeitig zu erkennen. Ähnlich können so aber auch bei industriellen Fertigungsanlagen Defekte oder Unreinheiten auf Oberflächen automatisch erkannt und gefiltert werden.

 

Falls Sie an weiteren Details interessiert sind oder ähnliche Anwendungsideen diskutieren möchten, freue ich mich sehr, wenn Sie sich bei mir melden. Wir helfen Ihnen gerne bei jeglicher Fragestellung aus den Bereichen Machine Learning oder Deep Learning weiter!

Kontaktieren Sie mich gerne – ich freue mich auf das Gespräch mit Ihnen!

Florian Hendrich

CTO