Grundgedanke
Um den Verlauf des Virusausbruchs besser vorhersagen/nachvollziehen zu können, nutzen wir die wertvollen Daten auf den Smartphones der Bevölkerung ohne, dass diese Daten das Moiltelefon jemals verlassen.
Dafür wird auf möglichst vielen Smartphones eine App installiert und die auf freiwilliger Basis lokal auf dem Gerät die Daten sammelt und speichert.
Mit PySyft trainieren wir auf diesen dezentralisierten Daten anschließend ein Neuronales Netzwerk, um die Gesamtzahl aller Infizierten zu bestimmen.
Herangehensweise
Weil es kein öffentliches Datenset zu Gesundheitsdaten während eines Virusausbruches gab, wurde eine kurze Simulation entwickelt. Diese berechnet die Ausbreitung eines Virus in einem Netzwerk von Menschen und passt auch ausgewählte Attribute wie z.B. die gemessene Körpertemperatur abhänig vom Gesundheitszustand jeder Person an.
Diese simulierten Daten entsprechen keinesfalls der Realität, dienen nur als "Prove Of Concept" und können jederzeit gegen bessere Datenquellen ausgetauscht werden.
Das frisch erstellte Datenset wird anschließend mit PySyft auf virtuelle Smartphones verteilt. Somit gibt es zu diesem Zeitpunkt viele Geräte, die nur ihren eigenen Gesundheitszustand kennen. Die Gesamtzahl aller Infizierten als zu bestimmende Target-Variable kann in diesem Fall aus dem Datenset berechnet werden und in der Realität von der Anzahl gemeldeter Infizierter vom RKI angenähert werden.
Das Training des Neuronalen Netzwerkes läuft so ab, dass eine Kopie des Netzwerkes an die einzelnen Smartphones gesendet wird und diese mit ihren eigenen Daten einen kleinen Lernschritt für das Netzwerk berechnen.
Das individuell verbesserte Netzwerk wird anschließend von allen Geräten wieder zentral gesammelt für den nächsten Trainingsschritt. Dabei verlassen die sensiblen Daten die Smartphones zu keinem Zeitpunkt und auch können Maßnahmen ergriffen werden, um Rückschlüsse auf die Daten zu unterbinden (Differential Privacy).
Limitierungen und Lösungen
Limitierung: Bisher werden nur simulierte Daten ohne echten Realitätsbezug genutzt. Lösung: Sobald ein besseres Datenset veröffentlicht wird, ist ein Austausch problemlos möglich.
Limitierung: Eine vertrauensvolle App muss mit der Berechtigung zum sammeln und speichern von Daten auf dem Gerät muss entwickelt und auf vielen Smartphones installiert werden. Lösung: Vermutlich gibt es ein Team mit einer solchen App bei diesem Hackathon oder es existiert eine vergleichbare App schon. Ein Zusammenschluss mit einer solchen App als wichtiger Baustein für dieses Projektes ist noch notwendig.
Limitierung: Die Berechnungen wurden durch die genutzte Hardware stark begrenzt. Lösung: Die Simulation und das Training des Netzwerkes auf einer deutlich größeren Infrastruktur sollte zeigen können, ob dieser Ansatz überhaupt vielversprechend ist.
Built With
- deep-learning
- distributed-learning
- federated-learning
- pysyft
- python
Log in or sign up for Devpost to join the conversation.