Transcript: Corona aus der Data-Science Perspektive
Full episode transcript. Timestamps refer to the audio playback.
Ja, hallo liebe Hörerinnen und Hörer. Willkommen beim Python-Podcast, mittlerweile in der 19. Episode.
Heute unser Thema ist wieder Data Science. Wir haben leider ein bisschen den Coronavirus, Covid-19, die wir in der 19. Folge etwas besprechen möchten,
aber aus einer Data Science Perspektive. Das heißt, wir hoffen, dass ihr euch nicht zu viel mit dem Virus nerven, von dem ihr bestimmt alle die Schnauze und die Nase voll habt.
Ja, wir sind tatsächlich alle remote dabei. Ich bin der Dominik, dabei ist natürlich wieder Jochen.
Jo.
Und wir haben einen Gast, den Thomas.
Hallo, vielen Dank für die Einladung.
Ja, schön, dass du da bist.
Ja, vielleicht sollten wir diesmal auch tatsächlich dazu sagen, an welchem Datum. Das wollten wir sowieso immer machen, aber heute ist es vielleicht besonders relevant, das 26. März 2020.
Also, keine Ahnung, an welchem Punkt irgendwie der ganzen Corona-Krise wir uns befinden. Vielleicht am Anfang, vielleicht mittendrin, wer weiß.
Ich hoffe, das ist alles direkt bald vorbei und ich mache die Augen zu und will nicht sehen und hören davon.
Naja, ich hoffe, ihr seid alle gesund.
Ja, ich weiß nicht, möchtest du dich vielleicht kurz selbst vorstellen, Thomas?
Klar, gerne. Also, ich bin der Thomas Wicki, ich T. Wicki auf Twitter.
Ich habe in Tübingen Bioinformatik studiert und dann da am Max-Planck-Institut nebenbei noch so ein paar Sachen gemacht und da habe ich mich auch angefangen für Machine Learning und Statistik zu interessieren.
Dann bin ich in die USA gekommen und in der Brown University habe ich einen Doktor gemacht und das war im Bereich von Computational Psychiatry und da geht es darum, dass man Modelle vom Gehirn baut und dann an diesen Modellen von Teilen des Gehirns überlegt man sich, okay, jetzt weiß ich, wie das mit einer gesunden Person funktioniert und dann kann man gewisse Neurotransmitter hoch oder runter regulieren und sehen, okay, wie verändert sich das Verhalten und stimmt das dann zum Beispiel.
Mit dem, wie man es in Parkinson oder in anderen psychiatrischen Erkrankungen sieht, überein.
Und darüber habe ich meine Zertifizierung geschrieben.
Während des Doktors und auch schon davor allerdings war mir immer klar, okay, die freie Wissenschaft ist zwar sehr cool, macht viel Spaß, aber ein sehr unstetiger und steiniger Karriereweg.
Und das war dann, wo das aufkam zu dieser Zeit mit dem Griff Data Science.
Da war dieser riesige Artikel, Data Science is the sexiest job of the 21st century und den habe ich gelesen und habe mir gedacht, krass, das ist ja genau das, was ich mache, ohne zu wissen, dass es jetzt auf einmal Data Science heißt.
Und dann habe ich mir überlegt, okay, Wissenschaft ist ja schön und gut, aber wer weiß überhaupt, wie die Industrie ist.
Also ich habe das nie wirklich kennengelernt und deswegen habe ich dann angefangen, da so ein paar Fühler auszustrecken.
Und bin dann auch auf diese Pi Data Konferenzen gegangen und über den Wes McKinney, der Pandas geschrieben hat, bin ich dann mit dem Forth in Kontakt gekommen und der CEO von Kotopio.
Und dann habe ich da angefangen, einmal in der Woche zu arbeiten, also während des Studiums.
Und dann danach bin ich zurück nach Deutschland gezogen und seitdem bin ich da remote als Beispiel auf Data Science.
Und leite da das Research Team bei Kotopio.
Dann kannst du das nochmal ganz kurz wiederholen. Ich glaube, wir hatten einen kleinen Knacks an der Verbindung.
Deine letzte Station. Das klingt sehr spannend.
Genau, nach meinem Dokument bin ich dann nach Deutschland gegangen und die bei Kotopio haben gesagt, ja, willst du nicht trotzdem weiter für uns arbeiten?
Und da bin ich VP of Data Science und leite das Research Team.
Okay.
Ja, cool. Was macht Kotopio denn so?
Das klingt irgendwie so ein bisschen nach Finanzbranche.
Ja, genau richtig. Daher kommt auch der Name.
Und also wir stellen eine Plattform bereit im Internet, wo jeder, der möchte und so ein paar rudimentäre Patentskills hat, auf die Plattform kommen kann.
Und da findet er zum Beispiel einen Jupyter Notebook, wo er direkt, er oder sie,
alle möglichen Finanzdaten hat und die ganzen Bibliotheken, die man machen möchte.
Und dann kann man da direkt loslegen und Analysen machen, wie sich zum Beispiel jetzt die Corona-Krise auf den Aktienmarkt auswirkt.
Und wenn man dann eine gute Idee hat, dann kann man daraus einen Nutzungs-Erinfizierer, einen Trading-Algorithmus, der dann in den Markt investiert.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und wenn das tatsächlich funktioniert, dann kann man den Algorithmus, den man in den Markt investiert, auf eine gewisse Zahl zurückgeben.
Und dann gibt es aber auch noch einen separaten Backtester, wo man dann wirklich den Algorithmus schreiben kann.
Und dann hat man so ein Web-Interface, wo man dann sagen kann, okay, das möchte ich jetzt auf historischen Daten starten von 2000 bis heute.
Und dann wird das dadurch simuliert und dann schaut man sich Ergebnisse an und möglicherweise...
Das ist auch interessant, genau. Backtesting ist vielleicht auch nicht jedem Begriff direkt.
Ich meine, wenn man jetzt irgendwie evaluieren will, ob irgendwie ein Modell...
So im Machine Learning-Bereich zum Beispiel irgendwie das tut, was man haben möchte oder so, dann macht man da irgendwie Cross-Validation oder sowas.
Und bei solchen Zeitreihen-Geschichten muss man ja irgendwie ein bisschen was anderes machen, weil man ja gar nicht quasi sozusagen...
Man muss ja die Zeitrichtung irgendwie berücksichtigen.
Kannst du was dazu sagen, wie das genau funktioniert oder wo man da aufpassen muss, was man da macht?
Ja, also aufpassen muss man auf jeden Fall.
Das größte Risiko...
Das größte Risiko ist immer Overfitting und das ist sehr, sehr schwer, das nicht zu machen.
Also dadurch, dass wir uns die Algorithmen anschauen, also wir schauen uns nicht mehr den Code an, aber wir schauen uns die Ergebnisse an.
Also wie viel Profit haben die deklariert und wie viele Positionen traden die und solche...
Also den Output von den Algorithmen schauen wir uns an.
Da können wir auch immer sehen, okay, also hier ist die Zeitperiode, wo der Quant, der User, Zugriff darauf hatte.
Und hier ist die Zeitperiode, wo der kein Zugriff darauf hatte.
Und in der Regel sieht man, dass es nur im Backtest, also historisch, wo man es drauf entwickelt hat, gut funktioniert und dann Out of Sample eben nicht.
Und um das zu umgehen, muss man auf jeden Fall da sehr diszipliniert dran gehen und genau auch da Cross-Validation machen.
Die funktioniert ein kleines bisschen anders, aber die Idee ist trotzdem die gleiche.
Also es geht immer darum...
Traininggarten zur Verfügung zu haben und darauf entwickelt man seine Ideen und dann andere Daten, die man nicht anrührt und dann wirklich nur ganz am Ende benutzt zum Testen, um zu wissen, ob die Idee auch wirklich valide ist oder nicht.
Und da gibt es verschiedene Ansätze.
Zum Beispiel eine Sache, die ich recht elegant finde, ist, dass man die geraden und die ungeraden Quarter, also Business Quarter, Vierteljahre...
immer austauscht.
Also man trainiert nur auf den geraden Quartern, also das erste und dritte und dann zweite und vierte Benutzer zu testen.
Denn das, was immer die riesige Schwierigkeit ist bei allem, was Coin Finance ist, ist es nicht stationär.
Also das heißt, der Markt ändert sich permanent und irgendwas, was damals funktioniert hat, funktioniert dann vielleicht nicht mehr.
Aber vielleicht fängt es auch wieder an zu funktionieren.
Also man weiß nie so genau, was da Sache ist.
Das klingt so ein bisschen schwierig.
Also wenn man so Quartale rausnimmt, weil ich stelle mir jetzt vor, es gibt Besongeschäfte oder sowas und die würde man ja dann verlieren.
Also dann würde ich fast lieber das ungerade Jahr rausnehmen oder so und dann alle zwei Jahre gucken.
Ja, also es gibt da wenig, was wirklich perfekt ist.
Bei Jahren zum Beispiel hat man 2009, was natürlich ein besonderes Jahr ist.
Also ja, also das mit den Quartalen zum Beispiel, die kann man dann auch randomisieren.
Also dass man vielleicht nicht nur die geraden und ungeraden nimmt, sondern das randomisiert.
Und genau, das Klasse ist natürlich auch einfach und das ist eigentlich auch eine solide Methode,
ist einfach dann zu sagen, okay, die letzten zwei Jahre schaue ich mir nicht an.
Denn die Annahme ist so ein bisschen, was jetzt funktioniert, was noch nicht so lange her ist,
das, was hoffentlich auch dann funktioniert, wenn man es wirklich live schaltet.
Also es gibt verschiedene Philosophien.
Und leider keine, die so richtig zufriedenstellend ist, hat so alles seine Vor- und Nachteile.
Spannend.
Also es ist sehr, sehr interessant.
Es gibt ja auch das Gerücht, dass dieser große Absturz jetzt gefolgt ist, der hauptsächlich auf so Quant zurückzuführen wäre.
Ich glaube, der ist eher auf Covid-19 zurückgeschrieben.
Ja, aber in der Kombination und in der Härte.
Also da ist vielleicht auch was dran, weil die halt dann alle stumpf sagen,
okay, jetzt raus, raus, raus, verkaufe.
Also das ist auf jeden Fall so, dass Hedgefonds und Quantfonds da auf jeden Fall ihr Risiko minimiert haben und rausgegangen sind.
Aber das haben die gemacht so wie jeder andere auch.
Gerade die großen Anleger, die gehen wahrscheinlich früher raus noch als vielleicht Private,
weil die halt ihr Stop-Loss dann irgendwann haben und sagen, jetzt muss weg.
Ja, ja und nein.
Also die sind natürlich sehr hinterher.
Aber auf der...
Aber gleichzeitig haben die natürlich auch Investments, die in einer anderen Größenordnung stattfinden.
Also wenn das halt nicht die Rentenanlage von irgendeiner Privatperson ist, der damit 100.000 oder sowas ETFs hat,
sondern ein Rentenfonds mit Gott weiß wie vielen Milliarden.
Das kann man nicht von heute auf morgen in einem absoluten panischen Markt direkt abstoßen.
Das ist so ein bisschen...
Also die sind da sehr viel...
Langsamer und natürlich auch...
Wir gehen jetzt auch nicht einfach so in den Cash.
Also die machen natürlich trotzdem weiter.
Aber es ist...
Ja, also das Risiko wird minimiert und das hat dann immer diese Feedback-Effekte.
Also die ersten fangen an und dann werden die Stop-Losses bei den nächsten getriggert.
Und die verkaufen dann sehr rapide und das triggert dann weitere Stop-Losses.
Und ja, also das sind so Schnellwerteffekte.
Die da ganz leicht entstehen.
Interessant.
Also da könnte man auch irgendwie einen Algorithm ansetzen, der das vielleicht erkennt oder so.
So ein Muster an diesen Losses.
Ja, durchaus.
Also wird auch gemacht.
Wir sind jetzt allerdings gerade aber natürlich echt im Marktregime oder einfach auch allgemein in der Weltsituation, die wir so noch hatten.
Das ist ein komplett irrationales Verhalten.
Das hast du herzusagen, glaube ich.
Das ist sehr, sehr tough.
Also ob das überhaupt geht, ist halt die Frage.
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Also...
Ja, also irrational wird sich herausstellen.
Denn ich meine, die Effekte auf die Weltwirtschaft sind natürlich jetzt schon massiv und werden wahrscheinlich nur noch viel stärker werden.
Also es ist echt eine sehr...
Und diese ganzen Anlagestrategien, wie wir schon gerade besprochen haben, haben natürlich schon immer so die Annahme mit eingebaut,
dass sich die Geschichte zum gewissen Teil schon wiederholt.
Aber das ist jetzt halt im Moment gerade...
Das ist jetzt halt im Moment gerade nicht so.
Und da sind die genauso von überrascht wie alle anderen auch.
Also ich habe relativ interessante Artikel dazu gelesen, was dann die Zentralbanken machen könnten,
um zu reagieren und wie man halt das dagegen wirken könnte.
Und da kommen einige spannende Effekte bei raus.
Von Deflation über mehrere Inflationen in Folge angefangen und die man dann halt mit Geld
bewerfen kann.
Wenn man es schafft, diesen Wirtschaftskreislauf mit Geld wieder anzukurbeln, ja, dass halt
die Umschlagsgeschwindigkeit wieder hochgeht und so, das würde dann bedeuten, dass es sich
auf einem ähnlichen Niveau wie jetzt vor kurzem einpendeln könnte.
Ja, aber das ist sehr, sehr schwierig vorauszusagen, ob das überhaupt klappt und ob das alles
wieder anläuft.
Und man muss halt erstmal alles mögliche mit Geld beschmeißen und dann machen die
Staaten vielleicht noch den Adler oder so.
Das ist alles sehr kompliziert.
Ja, also ist auf jeden Fall eine sehr schwierige Situation und die Noten sind jetzt auch nicht
in einer Situation, wo sie noch so viel mehr Spielraum hatten.
Also die FED zum Beispiel hat ja den Leitzins...
Bevor das überhaupt passiert ist, ziemlich angestiegen dann.
Und ihn dann aber sehr frühzeitig schon direkt runtergesetzt.
Und die Märkte haben nicht wirklich reagiert.
Also das ist schon eigentlich so mit der einzige Hebel, den die wirklich haben.
Ich habe nur noch minus sechs Prozent, das ist das neue Ziel.
Ja, das ist ungefähr.
Also in der EU zum Beispiel müssen wir das was machen, denn die EZB war ja schon immer
bei null.
Das ist schon seit einer langen Zeit.
Also da ist kaum...
Spielraum überhaupt vorhanden, diesen Hebel zu benutzen.
Und das, was ich auch denke, ist, dass es natürlich ein anderes Problem ist.
Also es ist halt jetzt nicht wie 2009, wo es ein Problem in der Finanzbranche war, was
sich dann ausgebreitet hat und andere gemacht hat, aber wo die Weltwirtschaft trotzdem
auch funktioniert hat.
Sondern es war halt einfach so ein Schneeball-Effekt, der sich da dann ausgebreitet hat.
Aber im Moment steht die Weltwirtschaft...
Wir haben mehrere Fokker am Angebot und an der Abfahrgeseite.
Das gleichzeitig.
Ja.
Und egal, wie viel Geld man druckt, das wird allein die Wirtschaft nicht wieder ankurbeln,
wenn alle zu Hause bleiben müssen.
Ja, bestimmte Sachen kann man auch gar nicht wieder so schnell anfahren, wenn man bestimmte
Fabriken oder bestimmte Kraftwerke erstmal stillgelegt hat oder so, weil da halt auch
keine Abnehmer für den Strom sind.
Dann kann man die auch nicht wieder gut anfahren und so weiter und so.
Das ist halt alles jede Menge...
Das ist eben das Nebenan.
Wenn der dann erstmal...
Ja.
...breite ist, ob die dann direkt den neuen aufmacht, weiß man nicht.
Da muss sich jemand wieder finden, der dasselbe nochmal macht.
Ja.
Was ich dann auch noch echt interessant fand, ist, dass halt auch die politischen Konsequenzen
von solchen Sachen, wenn sich so viel ändert, sind ja auch immer so völlig unklar.
Das hatte letztens irgendwie auch mit jemandem drüber gesprochen, der meinte dann so, ja,
also gerade zum Beispiel in der EU ist ja gar nicht so klar, wie das irgendwie mit dieser
ganzen Brexit-Geschichte zum Beispiel ausgeht.
Und das könnte ja politisch desaströse Konsequenzen haben.
Wenn diese Geschichte wirtschaftlich funktioniert.
Aber ob die wirtschaftlich funktioniert oder nicht, hängt ja jetzt von ganz vielen komischen
Dingen ab.
Wie zum Beispiel könnte es sein, dass es in einer Pandemie eine gute Idee ist, wenn man
auf einer Insel lebt.
Das kann ja sein.
Das hat jetzt gar nichts mit der Brexit-Geschichte zu tun.
Aber wenn das jetzt irgendwie dazu führt, dass die wirtschaftliche Situation in Großbritannien
irgendwie deutlich besser ist als anderswo in Europa, dann hat das halt politische Konsequenzen
für alle anderen, die unter Umständen sehr unangenehm werden.
Es kann aber auch andersrum ausgehen.
Das weiß einfach keiner.
Also es ist echt...
Es gab einen Artikel von Taiwanesen, die auch gesagt haben, ja, also Großbritannien
ist ja eigentlich auf einer Insel, die müssen das ähnlich machen wie wir und dann wären
die von dem Virus relativ geschützt.
Und die haben gesagt, ähm, nee.
Das hat nicht funktioniert.
Und naja, von daher.
Ja.
Wir werden sehen.
Wir hatten da durchaus ihre eigene Ernährungsweise, ja.
Aber vielleicht gehen wir nochmal zu dem Ganzen zurück.
Das ist alles sehr spannend.
Aber wie macht man das denn in Python?
Also diese ganzen Quant-Sachen, die du da eben beschrieben hast, die total spannend
sind.
Was würdest du dann da machen?
Und vielleicht kannst du gerade den Hörern so ein bisschen detaillierter erklären, also
wie man damit so anfängt.
Wie man damit anfangen würde und welche Bibliotheken man vielleicht benutzt und wie
das Schema wäre und die Struktur, um das so ein bisschen aufzubauen.
Also oft fangen Leute so ganz simpel an, zum Beispiel, also der Klassiker, und das funktioniert
schon längst nicht mehr, aber er ist so ein Dual Moving Average.
Und da ist...
Entschuldigung, bitte was?
Da ist ein Dual Moving Average.
Also ein...
Ja.
Ein doppelter gleitender Durchschnitt, oder?
Ja, genau.
Also ein Durchschnitt, den man berechnet.
Ein Durchschnitt über, zum Beispiel, jetzt den Preis.
Also ich sage, okay, ich nehme immer den durchschnittlichen Preis der letzten zehn Tage und vergleiche
das mit dem durchschnittlichen Preis in 100 Tagen.
Also das heißt, das eine ist was, was sich sehr schnell anpasst an die aktuelle Preisentwicklung
und das andere ist mehr so ein Langzeittrend.
Und dann kann ich zum Beispiel sagen, okay, also wenn der Kurzzeittrend, also die zehn
Tage, den Langzeittrend durchbrechen, also höher werden von unten, dann glaube ich,
ah, okay, das ist Momentum, also der Stock geht wohl gerade nach oben.
Und dann glaube ich, dass der auch noch weiter nach oben geht.
Das heißt, das ist dann, wann ich einkaufen möchte.
Und wenn dann diese Linie mit dem zehn Tage Moving Average wieder von der anderen Seite
kommt, dann denke ich, ah, okay, jetzt ist der Trend, wo das Momentum von dem Stock nach
unten geht und dann möchte ich das verkaufen.
Und das kann man auf einzelne Seiten anwenden und so fangen viele Leute an, aber in Hedgefonds
ist es so, dass man sich nicht so sehr auf die Hedgefonds kümmert.
das ein bisschen schwierig.
Und das ist dann, wenn man sich nicht so sehr auf die Hedgefonds kümmert, dann ist das ein bisschen
schwierig.
Und das ist oft so, dass man dann ganz viele Stocks traden möchte.
Also es ist wie im Casino, also wenn man jetzt 51% Winchmaus hat oder auch nur deutlich
weniger, dann möchte man einfach ganz viele Bets machen, um irgendwann halt über den
Mittelwert, das ist die Law of Large Numbers, die Edge da zu kriegen aus dem ganz kleinen
Vorhersagekraft, den man da hat.
Und deswegen macht man dann Strategien, die halt nicht nur einen Stock, sondern 1000 Stocks oder 2000 Stocks traden.
Und aber die gleiche Logik, die ich gerade beschrieben habe, kann man natürlich auch nicht nur auf einen Stock anwenden, sondern auf all diese gleichzeitig.
Also da würde ich dann einfach sagen, okay, wenn jetzt diese 2000 Stocks, die ich mir da rausgesucht habe, davon gehen manche gerade nach oben, also haben Abwärtsmomentum und andere nach unten, die haben Downloadmomentum.
Okay.
Und dann kann ich zum Beispiel hingehen und sagen, okay, also die, die gerade nach oben gehen, die möchte ich gerne nach unten und die, die nach unten gehen, die möchte ich gerne verkaufen sozusagen.
Also Long Selling und Short Selling.
Also Short Selling heißt, dass ich Geld verdiene, wenn die Aktie nach unten geht.
Und das ist so ein ganz klassischer Trick, dass man sagt, okay, also 50% meiner Anlage möchte ich gerne Long anlegen.
Also Geld verdienen, wenn der Stock nach oben geht.
Und die anderen 50%, da möchte ich gerne Geld verdienen, wenn der Stock nach unten geht.
Und die Idee hinter dieser Long Short Strategie ist, das ist dann alles, was der Markt macht.
Also der Markt geht nach oben und das interessiert mich aber nicht, denn die Long 50% verdienen Geld und die anderen Short 50% verlieren Geld, aber das gleicht sich aus.
Und genauso, wenn der Markt nach unten geht, dann gewinne ich mit meinen Shorts und verliere mit meinen Longs.
Das heißt, ich isoliere.
Das ist wirklich nur das Signal, was ich auch wirklich glaube, wo ich eine Vorhersagekraft habe in dem Moment.
Also in dem Fall jetzt zum Beispiel, dass halt Stocks Aktien Momentum haben und dass sie halt anfangen nach oben zu gehen, dass sie dann noch ein bisschen weiter nach oben gehen und umgekehrt nach unten gehen, dass sie dann noch ein bisschen weiter nach unten gehen.
Das ist so eine sehr klassische, aber dennoch moderne Quant Strategie.
Also dieses Long Short ist ganz klassisch.
Und dass man das auf ganz vielen Aktien anwendet.
Im Grunde geht es darum, dass ich sagen können möchte, ob jetzt morgen irgendwie eine Aktie hoch oder runter geht, so mehr oder weniger, oder für einen bestimmten Zeitraum.
Also ich glaube eher das Portfolio vielleicht, das spielt eine große Rolle.
Also wenn ich das jetzt höre, dass sie sich ausgleichen sollen, dann ist vielleicht das Portfolio wichtiger als die einzelnen Positionen?
Genau, richtig, ja.
Also es ist natürlich wichtig, auf welcher Seite von meinem Portfolio ist dann die Aktie, die ich da trade.
Aber also geht so ein bisschen weg eigentlich davon, sich dann für einzelne Aktien zu interessieren, sondern es geht vielmehr darum, wie sich jetzt diese Aktien, also sagen wir mal, wir haben 1000 Aktien, die wir uns anschauen und die wir zu jeder Zeit traden.
Und das heißt 500 davon sind dann auf der Long Seite und 50% sind auf der Short Seite.
Und da geht es dann darum, wie sortiere ich die so, dass die, die ich natürlich Short habe, sollen abstürzen, denn dann verdiene ich Geld.
Und die, die ich auf der Long Seite habe, sollen nach oben gehen und dann verdiene ich Geld.
Aber ich verdiene wirklich nur Geld immer auf den relativen Unterschied zwischen denen und nicht zu dem, was der Markt macht.
Und deswegen heißt es Hedge Fund.
Also Hedge heißt, dass man sich absichert.
Von diesen anderen Risikofaktoren.
Was zum Beispiel sehr hilfreich ist, zum Beispiel, wenn so eine Pandemie zu 20% Losses täglich führt.
Also das ist genau dann, wenn man sowas haben möchte, denn ja, da ist man so gewissermaßen abgesichert.
Allerdings sind auch die Hedge Funds davon sehr stark betroffen gewesen.
Allerdings aber auch nicht so stark wie jetzt der Markt.
Also das funktioniert schon.
Aber es ist auch nicht so, dass man dann sagt, okay.
Wir sind komplett immun gegen solch starke Events.
Also das hat einen Einfluss auf jeden.
Ja, dafür kann man natürlich auch nicht so viel gewinnen.
Als wenn jetzt Leute auf gute Einzelpositionen setzen würden, die sich damit ganz besonders toll auskennen oder so.
Die können natürlich den Markt deutlich mehr outperformen als jemand, der so einen Mittelwert dann bildet.
Also zumindest theoretisch.
Die können natürlich auch mehr verlieren.
Ja, also es gibt da alle möglichen verschiedenen Ansätze.
Also der Quant-Ansatz ist auf jeden Fall diese Statistik.
Zwischensignale zu finden und die dann auf sehr großen Portfolios anzulegen.
Aber natürlich gibt es auch die Discretionary.
Also die, die wirklich einzelne Firmen dann sich sehr im Detail anschauen und da wirklich Analysen machen und dann sagen,
okay, also ich weiß, dass jetzt Apple möglicherweise halt irgendwas in einem neuen Produkt rauskommt.
Und deswegen werde ich so alles auf Rot setzen.
Also das sind ganz unterschiedliche Anlagen.
Also hier habe ich jetzt wirklich nur den Quant-Ansatz beschrieben.
Mhm.
Mhm.
Aber ist das, ich meine, ich würde jetzt, wie gesagt, ich mache ja normalerweise so andere Data Science-Modelle.
Ich würde jetzt denken so, wenn man irgendwie Kurs vorhersagen möchte,
also das Allersimpelste, was mir jetzt einfallen würde, wäre, ich mache einfach lineare Regression oder so.
Ich nehme einfach, weiß ich nicht, den Aktienkurs von gestern, von vor einer Woche, von einem Monat oder sowas
und habe halt irgendein lineares Modell, was halt dann mir den für morgen halt vorhersagt.
Also das ist auch ziemlich nah dran eigentlich.
Ja, genau.
Was oft gemacht wird.
Und dann, so wie du jetzt angefangen hast, zu sagen, okay, also ich nehme jetzt den Aktienkurs von vor einer Woche
und das ist dann das erste Feature.
Und dann kann ich auch noch sagen, okay, vielleicht nehme ich auch das Volumen oder so.
Ja, genau.
Vor einer Woche.
Und dann nehme ich noch das Twitter Sentiment, also was haben Leute auf Twitter über diesen Stock geschrieben.
Und das ist dann mein drittes Feature.
Und dann sozusagen so fange ich dann an, immer mehr und mehr.
Und dann werden es tausende von Signalen, die man hat.
Und dann oft lineare Aggressionen, denn die funktionieren erstaunlich gut.
Also jeder sagt immer, er macht da super fancy Machine Learning.
Aber 80 bis 90 Prozent sind schon noch lineare Aggressionen, weil die einfach so robust sind.
Also das ist immer das große Problem bei Quant Finance, das Rauschen in den Daten ist so massiv
und das Signalen ist so klein, dass wenn man da eher fancy Methoden macht,
dann ist es immer der Nachteil, dass die halt nicht so gut sind.
Deswegen sind lineare Modelle da sehr mächtig.
Welche Bibliotheken benutzt man denn da so?
Ich glaube, ich habe einmal so ein bisschen was mit Zeit reingemacht.
Da hatte mich auch so erstaunt, dass das Interface ganz anders ist.
Weil normalerweise mache ich immer so Sachen mit Cycad Learn oder so.
Oder Interfaces zumindest, die so ähnlich aussehen.
Und das war dann...
Dann Stats Models irgendwie.
So Arima, Sarima Modelle.
Genau.
Und die sahen halt alles schon so ein bisschen anders aus.
Ich weiß gar nicht, ist das das, was man dann...
Jetzt musst du kurz erklären, was ist Arima, was ist Sarima?
Oh je.
Ja, genau.
Du musst erklären.
Ja, also das sind so klassische statistische Modelle.
Arma steht für Auto Regressive.
Also AR, Auto Regressive.
A für Moving Average.
Und das heißt einfach, dass ich mir anschaue, okay,
wie war denn der Wert vor 10 Tagen?
Und wie ist der Moving Average?
Also einfach so ein ganz klassisches statistisches Zeitreinmodell.
Und die werden unter anderem von Stats Models der Python Bibliothek unterstützt.
Allerdings kommen die gar nicht so sehr zum Einsatz in Quant Finance.
Also das wurde viel gemacht.
Aber es ist eigentlich tatsächlich oft der klassische,
klassische Ansatz, der...
Und das funktioniert nicht mehr ganz so gut.
Oder man muss dann immer ziemlich viel extra Arbeit reinstecken,
um das Problem, was ja ein Zeitreinproblem ist,
das so zu übersetzen,
dass es dann trotzdem in das klassische Cyclic Learn Framework passt,
wo man ja eben keine Zeitreihen in der Regel hat.
Also man...
So wie man es oft macht,
ist es einfach, dass man die Zeit eigentlich so ignoriert
und sagt, okay, also ich habe halt einfach Features
und so ein...
Also es nennt sich dann Walk Forward.
Dass man sagt, okay, jetzt habe ich irgendwie Daten von 2017.
Auf denen trainiere ich.
Dann habe ich Vorhersagen und teste dann das Modell.
Und jeden Tag mache ich neue Vorhersagen für 2018.
Und dann, wenn ich 2018 getestet habe,
dann die Trainingdaten, die 2018 und 2017
und sage für 2019 vorher.
Und dann gehe ich halt immer so Schritt für Schritt
in der Zeit nach vorne
und retraine immer mein Cyclic Learn Modell.
Und...
Cyclic Learn ist auf jeden Fall das,
was auch sehr häufig eingesetzt wird.
Einfach weil es, ja, wie bei dem anderen Pydata auch
mit die klassische Bibliothek ist.
Es gibt auch ein paar andere, die dann noch besser skalieren.
Aber das ist schon der gute Standard.
Ja.
Tja, ja.
Genau, ich weiß...
Wie hieß das?
Zipline, glaube ich.
Gibt es noch irgendwie...
Aber...
Genau, ja.
Also, wir haben selber...
Fast alle unsere Software eigentlich ist Open Source.
Also, wenn man auf GitHub Quantopian schaut,
dann findet man da mögliche Projekte,
die wir auf unserer webbasierten Plattform benutzen.
Genau, richtig, ja.
Also, genau.
Zipline ist unser Open Source Backtaster,
den wir auch auf der Plattform benutzen.
Und der...
Und das...
War am Anfang echt so eine ziemlich schwierige Entscheidung eigentlich,
die...
Wo wir lange überlegt haben.
Also, ich war immer der Meinung,
dass es eine gute Idee ist, das Open Source zu stellen.
Aber unser CEO muss sich da noch von überzeugen.
Aber das war sehr, sehr positiv für uns.
Also, das...
In vielerlei Hinsicht.
Also, eins ist natürlich, wir bekommen Pull Requests.
Also, dass andere Leute, die die Software verwenden,
dann ihre eigenen Verbesserungen daran machen
und dann uns diese Verbesserungsvorschläge auf GitHub zuschicken.
Und dann kriegen wir da Pull Requests,
wie das heißt.
Über zum Beispiel jemand,
der unsere Simulationsengine um Faktor 4 beschleunigt hat.
Wow.
Und voll cool.
Vielen Dank.
Ja, genau.
Vielen Dank.
Und das haben wir dann natürlich gemerged.
Und das kommt dann natürlich auch der Plattform zugute,
weil das die gleiche Software ist, die wir da auch benutzen.
Und das ist zusätzlich dann auch,
und in dem Fall hat es auch sehr gut funktioniert,
haben wir uns natürlich diese Person dann genau angeschaut
und so, ja, okay, was machst du denn so?
Und wir haben die dann eingestellt.
Einfach, weil erstmal jemand, der das kann,
ist so das beste Vorstellungsgespräch,
was man sich vorstellen kann.
Und er hat auch schon bewiesen,
also er hat bewiesen, dass er das kann.
Und er ist natürlich auch schon direkt mit der Codebase vertraut.
Also, der hat dann keine lange Eingewöhnungszeit,
sondern wir wissen, dass er es kann.
Und er weiß, worum es geht
und wie der ganze Code aussieht.
Also, das war eine sehr positive Erfahrung
in vielerlei Hinsicht für uns.
Und wir machen das auch schon seit vielen Jahren.
Ja.
Ja, also, Open Source ist schon eine coole Sache.
Ja, auf jeden Fall.
Wenn ich jetzt nochmal da einen Angriff an so diese
einfachen Nenian-Modelle oder, ich meine,
was man so bei Cycle-Learn oder so an Machine-Learning-Geschichten
üblicherweise so verwendet,
das, was du machst, ist ja jetzt eher so,
ich glaube, du hast ein Großteil von PyMC3 geschrieben
oder die probabilistischen Modelle.
Warum würde ich denn eher so etwas verwenden wollen?
Oder was ist eigentlich der, ja, sozusagen der grundsätzliche Unterschied,
wie zu den Dingen, die man vielleicht eher so
aus dem Cycle-Learn-Bereich kennt oder so?
Ja, gute Frage.
Da sind wir auf jeden Fall beim Milvings-Thema angekommen.
Also...
Was ist das denn überhaupt, PyMMC?
Vielleicht fangen wir damit kurz an.
Genau, also PyMC3 steht einfach nur für Python und MC,
also Markov-Chain ist so der Algorithmus,
der da verwendet wird.
Und das, in gewisser Weise kann man es schon,
zum Beispiel jetzt mit Cycle-Learn vergleichen,
aber es ist doch,
eigentlich eine andere Idee.
Vielleicht einmal noch mal ganz kurz,
was eine Markov-Chain ist, für alle Hörer.
Ja, also, das ist nicht so leicht zu erklären.
Es ist leichter, so die Idee dahinter zu erklären,
was das überhaupt kann.
Und dann macht das mit der Markov-Chain
vielleicht irgendwann auch ein bisschen mehr Sinn.
Aber genau, also wenn man sich jetzt Cycle-Learn anschaut,
dann ist es ja, dass man einfach gewisse Muster in Daten lernen möchte,
um dann Vorhersagen machen zu können.
Also ich habe Trainingsdaten,
und Labels, und natürlich mit den Trainingsdaten die Labels Vorhersagen.
Und das ist ein ganz klassisches Problem,
aber die Daten, die man da reinfüttert,
sind dann natürlich ziemlich rudimentär oft.
Also zum Beispiel, also es ist halt alles tabular.
Also das heißt, ich habe,
jeder Datenpunkt ist unabhängig von anderen Datenpunkten.
Zum Beispiel jetzt nehmen wir Handschrifterkennung oder sowas her,
mit dem ganz prünten MNIST-Datensatz.
Da ignoriert man einfach zum Beispiel,
dass die einzelnen Pixel eigentlich ja was miteinander zu tun haben.
Und man sagt einfach, okay,
jedes Bild ist einfach ein ganz langer Vektor.
Und dann lerne ich halt, was für eine Zahl da drauf ist.
Und das gebe ich dann einfach ganz viele Daten
und hoffe, dass der das dann herauslernt.
Und das kann dann ein lineares Modell sein,
was in dem Fall nicht gut funktioniert,
oder ein Random Forest oder ein neuronales Netzwerk.
Und das ist oft allerdings natürlich schade,
wenn man da viele Informationen hat über seine Daten.
Also zum Beispiel jetzt weiß ich,
dass die einzelnen Pixel da einen Zusammenhang haben.
Also zwei Pixel, die direkt nebeneinander sind,
ist die Wahrscheinlichkeit,
dass die den gleichen Wert haben,
sehr viel höher als jetzt irgendwas,
was ganz rechts oben oder ganz links unten ist.
Aber wer also der ganz naive Ansatz ist,
der weiß, dass das nicht so einfach ist.
Und das ist natürlich auch ein sehr guter Punkt,
aber das berücksichtigt es nicht.
Also natürlich, klar, wenn man es mit neuronalen Netzen macht,
die sind dafür gebaut.
Aber hier geht es jetzt eher darum,
dass wir Strukturen in unseren Daten haben,
die wir wissen und die wir ausnutzen wollen.
Und wir wollen nicht alles nur aus unseren Daten lernen.
Ein anderes gutes Beispiel ist auch immer hierarchische Strukturen.
Also sagen wir mal, ich habe jetzt einen Supermarkt
und ich möchte gerne voraussagen,
wie sich,
wie sich gewisse Warengruppen absetzen.
Also einzelne Produkte.
Wie viel verkaufe ich jetzt nächste Woche von Snickers
und wie viel verkaufe ich nächste Woche von Hackfleisch.
Und das kann man natürlich auch ganz normal
als Maschinenproblem betrachten.
Allerdings weiß ich doch,
dass zum Beispiel jetzt Schokolade gehört,
also Snickers gehört ins Schokoladensortiment.
Und wenn,
und das wird sich wahrscheinlich schon auch ähnlich verhalten,
also Schokoladen,
Sachen, Süßigkeiten allgemein,
werden sich ähnlich verhalten.
Und Hackfleisch oder so,
gehören zu einer anderen Warengruppe.
Da gibt es auch gewisse Ähnlichkeiten zu denen.
Und diese Ähnlichkeiten möchte ich gerne auch in meinem statistischen Modell
oder in meinem Vorhersagen abbilden.
Und wenn man diese Modelle spezifischer bauen möchte,
die diese Strukturen auch wirklich abbilden,
da ist dann PIMC oder jedes andere
Propagandistik-Programming,
wie es oft genannt wird,
oder Basis-Statistik,
oder Basis-Statistische Modelle,
beides so das Gleiche,
die sind dann da sehr viel geeigneter.
Denn was die einem erlauben,
ist diese Modelle zu bauen,
die ganz spezifisch sind für das Problem,
das man auch wirklich lösen möchte.
Weil man kann es nicht so gut...
Kriegen die dann irgendwie lineare Abhängigkeiten mit dann?
Oder anders?
Zum Beispiel.
Also das kann ich so komplett einbauen,
wie ich gerne möchte.
Also ich kann sagen,
okay, der Zusammenhang zwischen diesen Sachen,
hier ist linear und hier ist es aber logarithmisch
oder nicht linear.
Oder hier sind gewisse hierarchische Strukturen
in meinen Daten drin
und über die weiß ich Bescheid.
Und ich weiß, dass sich jetzt die Süßigkeiten-Sachen
ähnlich verhalten
und Fleischprodukte verhalten sich auch ähnlich zueinander.
Aber dennoch erlaube ich auch,
dass zum Beispiel Snickers und Mars,
was bei den Süßigkeiten-Kategorien ist,
Unterschiede hat.
Aber auch,
gleichzeitig lerne ich die Ähnlichkeiten davon.
Also ich lerne die Unterschiede,
aber auch die Ähnlichkeiten.
Und dadurch kann ich dann natürlich deutlich besser Vorhersagen machen.
Das ist aber nicht nur auf Vorhersagen beschränkt.
Also diese Statistischen Modelle können alles machen.
Also wir können auch einfach nur Daten erklären.
In der Wissenschaft zum Beispiel geht es dann oft darum,
okay,
ich habe zwei Versuchsgruppen.
Gibt es da einen Unterschied zwischen denen und nicht?
Die einen bekommen das Medikament, die anderen das Placebo.
Ist das eine statistische...
signifikanter Unterschied, den es da gibt?
Und da kann natürlich auch ein Statistisches Modell bauen.
Also man kann es immer ganz gut so vergleichen,
dass...
vielleicht Machine Learning ist so ein bisschen Playmobil.
Es ist schon alles vorgebaut.
Man kauft es einfach und so wie es ist,
dann kann man nichts daran ändern.
Und Propagandistik Programming ist so Lego.
Also da hast du deine eigenen Bausteine,
die du zusammensetzen kannst
und baust dir ganz spezifisch das Statistische Modell,
was du genau haben möchtest.
Und wenn...
für das nächste Programm,
baust du dir dann ein anderes Modell.
Also ja, es ist ein sehr viel manuellerer,
aber auch dadurch natürlich sehr viel flexiblerer Ansatz.
Ja, ja, ich glaube, ich habe...
also so ein ähnliches Problem hatte ich auch schon mal.
Das stimmt, das hätte ich dann vielleicht irgendwie
mit hierarchischen Modellen irgendwie besser in den Griff kriegen können,
dass man halt zum Beispiel eben das, was man vorhersagen möchte,
dass das sehr sparsam ist irgendwie,
um bei dem Supermarkt Beispiel zu bleiben.
Man hat einen sehr, sehr großen Supermarkt
mit ganz, ganz vielen unterschiedlichen Sachen
und man beobachtet nur ganz selten Käufe,
möchte aber trotzdem vorhersagen irgendwie.
Was wird denn jetzt irgendwie...
oder was ist denn der durchschnittliche...
wie viel wird denn da ungefähr verkauft
von irgendeiner speziellen Geschichte,
wo man nie irgendwas beobachtet hat?
Und dann war halt so der Ansatz in dem Machine Learning Teil,
den wir dann benutzt haben,
eher sowas wie...
eben, man clustert das in sowas wie Süßwaren oder so
und sammelt dann dafür halt irgendwie Daten,
die man dann wieder als Features verwendet.
Das ging auch irgendwie,
aber das, wenn man vielleicht...
wenn man es explizit in ein Modell reinpacken kann,
ist natürlich... ja, ja.
Ja, genau.
Also das ist ein gutes Beispiel.
Also zum Beispiel,
jetzt kommt eine neue Süßigkeiten-Kategorie dazu,
wo ich noch keine Daten habe
und ein Machine Learning Modell wird einfach sagen,
naja, habe ich vorher nicht gesehen,
kann ich nichts zu sagen.
Aber wenn ich diese hierarchischen Strukturen abbilde,
kann ich natürlich das,
was ich von den anderen Produkten gelernt habe,
auch darauf dann anwenden.
Oder aber auch,
und das ist ein anderer wichtiger Punkt,
der ein großer Vorteil ist von Basin Statistics generell,
ist, dass man sogenannte Prior setzen kann.
Und das ist Wissen,
was ich schon habe,
bevor ich überhaupt irgendwelche Daten gesehen habe.
Und um da auch zum Beispiel
bei dem Supermarktbeispiel zu bleiben,
wenn ich jetzt in den Supermarkt gehen würde
und den Manager da fragen,
dann wird er mir alle möglichen Sachen erzählen können,
darüber, wie sich das verhält.
Also er sagt zum Beispiel,
Schokolade vor Weihnachten wird halt immer...
geht halt immer nach oben.
Das muss ich nicht auf den Daten lernen.
Das wissen wir schon.
Und das kann ich mein Modell dann auch schon einprogrammieren
in Form von diesen Prior.
Also da kann ich Expertenwissen direkt schon initiieren in das Modell,
was bei Machine Learning auch oft sehr schwer ist,
weil ich wirklich alles von den Daten lernen muss.
Ja, na ja, stimmt.
Ja, das heißt, ich...
Programming nennt man das oder Probability?
Also Probabilistic Programming, genau.
Mhm.
Und die PIMC ist dafür die Bibliothek deiner Wahl.
Und du hast da viel mitgearbeitet.
Genau.
Also ich habe die auch...
Ich habe die mitentwickelt.
Und...
benutze die auch sehr viel.
Und...
die...
genau, erlaubt einem dann...
Also das ist nicht so, dass man diese Modelle halt dann von der Stange hat,
wie zum Beispiel jetzt bei Scikit-Learn
habe ich halt einfach eine Klasse, die macht die Linear Aggressionen
oder Random Forests.
Und hier habe ich stattdessen von der Stange
Wahrscheinlichkeitsfunktionen, die ich dann zusammenstöpseln kann,
um mir mein statistisches Modell zu bauen.
Also das ist...
Also da kann ich mit diesen...
aus diesen Wahrscheinlichkeitsverteilungen kann ich mir dann zum Beispiel
auch eine Linear Aggression zusammenbauen.
Aber das muss ich halt erst noch machen.
Und das ist mit PIMC 3 sehr leicht möglich.
Und das heißt, erstmal geht es darum, das Modell zu bauen.
Und dann im zweiten Schritt geht es darum, okay, jetzt habe ich das Modell gebaut.
Wie fitte ich das überhaupt zu meinen Daten?
Und da kommen dann alle möglichen Algorithmen zum Tragen,
die diese Probleme automatisch lösen.
Also oft ist es so, irgendein Modell, was man sich ausmalt
und was man dann in Code zusammenschreibt,
mit PIMC 3 zum Beispiel,
das lässt sich dann nicht einfach so lösen.
Also man braucht da ziemlich ausgefeilte Algorithmen.
Und da ist es dann, wo das mit dem Markov Chain Monte Carlo,
MCMC hinzukommt.
Das ist so eine Klasse von Algorithmen,
die auf so fast allen Modellen, die man sich vorstellen kann,
automatisch lösen.
Also das ist dann so ein Modell, das man sich ausmalt.
Und das ist so, was echt cool an dem Approach ist,
dass man sagt, okay, ich baue jetzt irgendein total verrücktes Modell
und dann drücke ich einfach den Inference Button, wie ich das nenne,
und der fittet dann das Modell zu den Daten.
Und das andere, was auch noch sehr wichtig ist,
ist, dass ich nicht nur eine Antwort bekomme.
Und das ist auch ein Unterschied zum Beispiel zum Machine Learning.
Also wenn ich da jetzt eine lineare Aggression laufen lasse,
dann bekomme ich eine Antwort.
Und das ist die Antwort, also in dem Fall jetzt halt,
die Steigung und die Intercept,
ist zwei Parameter, skalare Parameterwerte, die ich bekomme,
und die beschreiben die Daten am besten.
Aber ist natürlich trotzdem die Frage,
wenn ich jetzt nicht so viele Daten habe,
gibt es vielleicht noch andere Linien,
die die Daten beschreiben können.
Also wenn ich jetzt die Steigung um 0,01 verschiebe,
dann passt das wahrscheinlich trotzdem noch ganz gut.
Also ich bin mir halt nie so richtig sicher,
diese Antwort, die mir jetzt das Machine Learning Modell gegeben hat,
ist das wirklich die allerbeste?
Und wie gut funktionieren dann andere Antworten?
Und da geht es um Uncertainty oder halt um Gewissheit.
Also wie sicher kann ich mir sein,
dass die Antworten, die mir mein Modell geben,
auch wirklich die richtigen sind?
Also wie sicher sind die Datenpunkte irgendwie klassifiziert
und wie gut sind sie voneinander trennbar überhaupt von dem Modell?
Ja, genau.
Genau, richtig.
Und da ist auch ein gutes Beispiel zum Beispiel im Gesundheitssektor.
Wenn ich da jetzt vorhersagen möchte,
hat diese Person Diabetes oder nicht?
Und ich habe irgendwelche Tests, die ich gemacht habe,
und die sind meine Inputs.
Und dann ist die Frage,
wie sicher bin ich mir denn überhaupt in diese Antwort?
Und das ist natürlich in dem Fall extrem wichtig.
Und da sind diese probabilistic programming,
das ist so eine der Kernpunkte,
das ist so eine der Kernstärken davon,
dass man diese Ungewissheit,
die Unsicherheit in den Antworten
und aber auch in den Parametern von dem Modell
immer direkt mitspezifiziert.
Also man arbeitet ja nie mit einzelnen Werten,
sondern immer nur mit Wahrscheinlichkeitsverteilungen,
die einem angeben, okay,
also die Steigung von meiner linearen Aggression kann 0,5 sein,
aber 0,6 kann es eigentlich auch sein.
Also beschreibt beides das eigentlich sehr gut.
Und genau, das ist...
Da hat ihr einen schönen Fehler-Test da mit drin,
den ihr mitbestimmt dann.
Oder wird der ausgerechnet von dem Modell
oder könnt ihr den auch einschätzen?
Also genau, man kann es so einstellen in Form der Pry.
Also da kann ich zum Beispiel sagen,
ich weiß eigentlich schon, dass der Wert sehr nah 0,5 ist,
ohne überhaupt irgendwelche Daten gesehen zu haben.
Und dann kann ich da schon mal dem Modell vorher sagen,
okay, das hier ist die Richtung, in die du da schauen solltest.
Und wenn ich das...
Und dann...
Und dann schätze ich das Modell
und kriege eine neue Wahrscheinlichkeitsverteilung,
die mir sagt, okay, das ist jetzt,
nachdem ich die Daten gesehen habe,
wie, in welchem Bereich spielen sich denn die Parameterwerte ab,
die das dann am besten erklären.
Also ich kann beides machen.
Also ich kann im Vorfeld schon mal das spezifizieren,
je nachdem, wie genau ich das möchte.
Und dann wird das mit...
Nachdem ich die Datenpunkte gesehen habe,
werden diese Algorithmen es abschätzen,
und dann gibt es eine neue Wahrscheinlichkeitsverteilung,
die einfach nur beschreibt, wie viel habe ich gelernt.
Also man kann sich so vorstellen eigentlich,
ich fange an mit einem gewissen Wissen,
und dann sehe ich Daten,
und dann update ich dieses Wissen,
und habe dann einfach eine neue Wahrscheinlichkeitsverteilung.
Mhm.
Ja, nee, das klingt schon sehr gut.
Das ist immer so ein Problem, auch bei diversen Modellen.
Bei manchen fällt ja eventuell auch eine Wahrscheinlichkeit direkt raus,
aber manchmal einfach nur eine Distanz zu irgendwas oder so,
und dann muss man das halt irgendwie kalibrieren auf eine Wahrscheinlichkeit,
und dann meistens nimmt man nur irgendwie die Signetfunktion oder so.
Ja.
Aber...
Und da ist natürlich jetzt Covid-19 auch ein super Beispiel,
wenn ich da jetzt Vorhersagen treffen möchte,
mit gewissen statistischen Modellen,
und da gibt es aus der Epidemiologie alle möglichen Modelle,
die man da finden kann.
Und dann ist die Frage,
wenn ich jetzt das nicht in einem bayesianischen Ansatz mache,
dann kriege ich halt eine Kurve raus,
die vorhersagt, okay, so wird sich das jetzt über die nächste Woche entwickeln.
Aber klar, wir haben noch nicht so viele Datenpunkte,
das kann sich, also so wie ich die historischen Daten beschreibe,
ich kann die historischen Daten halt nicht nur auf eine Weise beschreiben,
sondern auf potenziell unendlich viele Weisen.
Und jede unterschiedliche Weise, wie ich die historischen Daten beschreiben kann,
führt zu unterschiedlichen Vorhersagen,
wie sich die Zukunft verhalten wird.
Und das heißt, ich möchte halt nicht nur die Linie sehen
und die Vorhersage sehen, die die Daten am besten beschreiben,
sondern halt alle, die das einigermaßen gut beschreiben,
denn das sind alles dann Ausgänge, die passieren können.
Und das sieht man dann immer super gut bei diesen Modellen,
dass es halt ja nicht nur eine Linie gibt, die dann in die Zukunft zeigt,
sondern ganz viele Linien, die so auseinanderstreuen.
Also je nachdem, je weiter ich in die Zukunft gehe,
desto weniger kann ich mir sicher sein, wie sich das entwickelt.
Also kann sein, dass es exponentiell weiter nach oben schießt
und wir bald Millionen von Infizierten haben.
Es kann auch sein, dass aber natürlich die Interventionen,
die wir jetzt machen, effektiv sind und sich die Kurve abflacht.
Und das sind alles Vorhersagen, die dann aus dem Modell rauskommen.
Ja, das wäre natürlich genau interessant.
Also ich meine, ich könnte mir jetzt vorstellen,
dass wenn man zum Beispiel eben macht irgendeine Maßnahme
oder überlegt sich halt, wenn ich jetzt, keine Ahnung,
irgendetwas tue, also ich glaube, Teilen, die ich da schon mal gehört habe,
sind sowas wie seit, zumindest in Deutschland, Beginn
der etwas heftigeren Maßnahmen ist halt der,
ich glaube, in dem Modell vom Robert-Koch-Institut werden irgendwie
Landkreise als kleinste Einheiten irgendwie benutzt sozusagen.
Wenn die Reisetätigkeit zwischen Landkreisen irgendwie sozusagen
ist irgendwie schon um 40 Prozent runtergegangen seitdem,
dann ändern sich halt entsprechend Parameter in dem Modell.
Ja.
Und dann kann man halt gucken, okay, wie geht denn das jetzt aus?
Die Frage wäre jetzt sozusagen, okay, wenn ich jetzt irgendeinen dieser Parameter ändere,
wie wirkt sich das dann zum Beispiel auf diese Basisreproduktionszahl aus?
Also wie stark führt das dazu, dass jetzt etwas,
also der Anstieg der infizierten Zahlen halt hochgeht oder gleich bleibt oder so?
Und dann wäre halt die ganz interessante Frage,
mit welcher Wahrscheinlichkeit kann ich diese Vorhersage machen?
Weil es könnte ja auch sein, also wenn ich ein 30-prozentiges Risiko habe,
dass sich das ganz anders verhält als das, was ich vorhersage,
dann möchte ich mir das vielleicht nochmal überlegen,
weil ich ja gar nicht so ein großes Risiko eingehen möchte vielleicht,
sondern ich möchte vielleicht eine Maßnahme machen,
wo ich dann ziemlich sicher sein kann, dass das dann halt auch hilft.
Und ja, das wäre dann sozusagen etwas,
was ich direkt aus einem probabilistischen Modell rauskriegen würde,
wie dann die Erfolgswahrscheinlichkeit oder wie weit ich da rauskriege.
Ja.
Oder wie wahrscheinlich es ist, dass das dann halt auch in dem Bereich bleibt sozusagen.
Genau, also das ist sehr wichtig.
Also nicht jeder Ausgang ist ja auch gleich.
Also jetzt habe ich vielleicht, wenn ich jetzt das so fitte,
dass ich wirklich nur eine Linie bekomme, dann sieht die vielleicht okay aus.
Und dann sage ich, okay, muss ich ja gar nicht mehr wirklich Gedanken machen.
Und möglicherweise ist es auch der wahrscheinlichste Ausgang.
Aber was ist, wenn mit einer 5-prozentigen Wahrscheinlichkeit
das exponentiell weitergeht und diese Maßnahmen halt nicht greifen?
Naja, das möchte ich ja unbedingt wissen.
Was ist der Worst-Case-Szenario?
Das ist vielleicht unwahrscheinlich, aber nicht so unwahrscheinlich,
dass wir es außer Acht lassen dürfen.
Und da kann man dann auch je nachdem das Modell verändern,
also in verschiedenen Hinsichten.
Und das ist auch so ein bisschen das, was ich so mächtig an diesem Ansatz finde,
ist, dass es so oft ein sehr iteratives Arbeiten ist mit diesem Modell.
Also ich fange an mit einem ganz einfachen Modell.
Und das habe ich auch gemacht.
Also ich habe einfach ein exponentielles Modell genommen.
Und das funktioniert dann am Anfang zum Beispiel ziemlich gut.
Und dann aber sehe ich auch, ah ja, okay, ich habe ja nicht nur ein Land,
sondern ich habe mehrere Länder.
Und diese Kurven verhalten sich bei allen Ländern eigentlich ziemlich ähnlich.
Nicht immer gleich, aber ähnlich.
Und da kommt es dann wieder rein mit der hierarchischen Struktur,
die ich vorhin erwähnt habe, wo ich genau das auch in mein Modell einbauen kann
und sage, okay, also da gibt es Ähnlichkeiten in diesen,
in diesen Modellen.
In diesen Growth Rates, in diesen Steigerungszahlen.
Und das heißt, dann habe ich ein hierarchisches Modell,
was für jedes einzelne Land einzelne Parameter hat.
Aber diese Parameter sind dann auch auf einem höheren Level noch miteinander verbunden.
Und ich lerne also beides zugleich.
Und dann zum Beispiel könnte ich hingehen und sagen, na gut,
exponentiell ist ja vielleicht gar nicht mal so ein gutes Modell,
denn das nimmt ja an, dass das einfach immer weiter nach oben geht
und immer und immer schneller wird.
Irgendwo ist ja da schon, spätestens bei,
bei der Anzahl der Menschen, die in einem Land leben,
ein ganz natürliches physikalisches Limit gesetzt.
Und dann kann ich das Modell verbessern und sage, okay,
dann nehme ich stattdessen eine logistische Funktion,
die am Anfang auch schnell nach oben geht,
aber dann sich wieder abflacht.
Und dann kann ich aber auch hingehen und sagen, okay,
das modelliert schon die Steigungssache vielleicht ganz gut,
aber ich weiß, dass es da, zum Beispiel habe ich jetzt,
vielleicht gerade ein Buch von Nassim Taleb gelesen, den Black Swan,
und ich weiß, dass es sehr wichtig ist, da nicht auch nur anzunehmen,
dass sich alles in der Welt nach einer Normalverteilung verhält,
sondern es gibt halt auch das Tail Risk.
Und dann nehme ich halt nicht eine Normalverteilung,
sondern eine zum Beispiel Student T-Verteilung,
also eine T-Verteilung.
Und die hat sehr viel mehr Wahrscheinlichkeiten,
dass da auch extreme Ausreißer passieren können.
Und dann habe ich das in mein Modell integriert und arbeite dann halt,
mich immer weiter vor und verbessere das Modell immer weiter
und kriege dann auch immer bessere Vorhersagen,
die natürlich dann auch die möglichen Handlungen,
die man machen möchte, hoffentlich da bessere Antworten zu liefern.
Ja, ja, das ist für Nassim Taleb auch irgendwie ein Twitter-Account,
der hat einen Twitter-Account, dem ich auch folge,
und da sind manchmal sehr lustige Sachen dabei.
Er hat jetzt auch was über statistische Modelle,
die irgendwie Dinge vorhersagen.
Gesagt, das fand ich auch ganz bemerkenswert,
weil es halt, ich weiß nicht, er hat ja schon so einen gewissen Punkt,
er sagt halt im Grunde, naja, also da einige wenige Ereignisse,
was so Pandemien angeht, halt sehr, sehr böse Auswirkungen haben können,
ist es halt eigentlich, sobald man sieht, dass das irgendwie in die Richtung geht,
dann ist das eher so wie eine Lawine.
Wenn man sieht, wenn man irgendwann am Berg steht und sieht,
da kommt eine Lawine runter, dann fange ich jetzt nicht an,
mir auszurechnen, ob die mich jetzt treffen kann,
oder nicht.
Und bei so einer Pandemie ist halt auch so ein bisschen,
und der hat einen schönen Vergleich benutzt, der meinte dann,
also wenn ich jetzt anfange, da statistisch ganz genau zu werden,
dann ist das so ein bisschen wie Löffelzellen auf der Titanic,
ja, das ist halt so.
Sondern da muss man halt dann irgendwie das Extremste machen,
was man irgendwie hinkriegt, um halt zu verhindern,
dass diese ganz schlimmen Sachen halt passieren.
Ja, also der ist auf jeden Fall sehr extrem in seinen Ansichten,
dass man eigentlich, also der sagt eigentlich, so extrem sagt er es nicht,
aber dennoch, dass 90, 95 Prozent aller Statistiken komplett in die Tonne gekloppt werden können,
weil das alles Phänomene sind, die halt diese Ausreißer-Events haben,
die das alles bestimmen.
Ich finde das ein bisschen oft sehr extrem,
denn die Modelle funktionieren doch schon oft auch ganz gut,
aber klar muss man sich immer bewusst sein, dass das Modelle sind
und dass es diese Terrorists gibt,
und die auch idealerweise natürlich ins Modell integrieren,
dass man das mit berücksichtigt.
Das kann man ja machen.
Das Problem sind halt diese unvorhergesehenen Ereignisse,
das ist halt nämlich genau diese unvorhergesehenen Ereignisse.
Da kannst du halt so viel modellieren und Statistik machen, wie du willst,
wenn halt Ereignisse auftreten, deren Dimensionen man nicht abschätzen kann,
oder deren Auswirkungen auf die einzelnen Achsen in dieser Verteilung.
Das wird natürlich dann, ja, also schwer zu pronostizieren,
weil woher soll man das wissen, dass solche Events kommen?
Ja und nein, also genau, diese Ausreißer sind fast unmöglich zu modellieren,
aber jetzt zum Beispiel die Modellierer,
die ich da gebaut habe, um vorherzusagen, wie sich das Wachstum weiterverhält,
sind bisher erschreckend akkurat gewesen.
Jetzt hören sie auf, also zu funktionieren, und das ist gut.
Also das erste Modell, wie ich schon gesagt habe, war so ein exponentielles Modell,
und das, ja, also am Anfang hatten wir exponentielles Wachstum,
jetzt scheint es sich ein bisschen abzuschwächen, was ja sehr gut ist,
aber, ja, das ist ja auch so.
Genau, also diese Modelle, das haben schon vorher seine Kraft,
und das ist ja auch genau das, was man wissen möchte.
Und das ist auch das, was ich so erschreckend fand,
dass es eigentlich, wenn man sich das angeschaut hat,
also zum Beispiel vor drei Wochen noch gab es in Deutschland, weiß ich nicht,
zehn Fälle oder so, und in Italien aber war es schon sehr dramatisch.
Und dann hierzulande wurde gesagt, naja, aber es sind ja nur zehn Fälle,
das muss uns ja nicht interessieren.
Ja.
Aber das ist ja auch so.
Ja.
Ja.
Da muss man sich nicht interessieren.
Aber guыt, also, beziehungsweise sagen wir mal zehn Fälle und in drei Tagen sind es halt 100 Fälle
und da sagt man immer guыt 100 Fälle ist ja trotzdem nicht viel,
aber vollkommen egal, es geht darum was für eine Steigerung haben wir da
und das ist exponentiell und das heißt in drei Tagen sind es dann von 100 auf 1000 und
Da hast du auch einen Notebook zu, online, wo man anschlafen kann.
Ja genau, das hatten wir noch gar nicht erwähnt, aber ja,
das war auch einer der Gründe warum das jetzt halt ein guter Zeitpunkt ist vielleicht genau dieses Gespräch zu führen.
Ich hatte da irgendwie diese Notebooks gesehen. Es gibt mehrere. Das erste ist, glaube ich, das Daily. Wir packen den Link in die Show Notes. Das ist ein Repository, in dem mehrere Notebooks sind. COVID-19 Growth ist, glaube ich, das erste.
Und das ist sozusagen das exponentielle Modell. Und da gibt es halt so einen Graph mit einer Logscale, was die Anzahl der Infizierten angeht und dass man das halt so ein bisschen linearer sieht.
Und auf der x-Achse die Zeit, auf der y-Achse die Infizierten und dann halt sozusagen Tage nach den ersten bestätigten 100 Fällen. Und die Kurven sehen alle relativ ähnlich aus, am Anfang zumindest.
Ist auch China mit geplottet? Ich hatte nämlich vom Freund von mir gehört, der aus Shanghai geflohen ist, schon Ende Januar, weil die Flüge alle gestrichen wurden, dass das die Situation wohl sehr dramatisch sein soll und dass wir uns auf etwas gefasst machen müssen.
Ja, also genau. China ist nicht mit dabei, weil das Modell das nicht abbilden kann. Also dieses nicht. Das Modell, was ich jetzt gerade gebaut habe, das logistische Modell des Kantons.
Denn da gibt es diesen Effekt, dass die auch wieder sich...
Dass die auch wieder stehen bleiben, die Neuinfektionen. Und das scheint China nach den offiziellen Zahlen, die wir haben, ist die Frage, wie man die glauben möchte.
Wobei ich, also meine Meinung ist, ich glaube schon, dass die es geschafft haben, das abzuschwächen. Also ich glaube nicht, also die absolute Zahl ist möglicherweise viel höher, aber ich glaube trotzdem nicht, dass die Neuinfektionen haben.
Und zumindest auch in Korea. Also diese Länder haben es geschafft, dieses Wachstum zu stoppen, eigentlich effektiv. Und das sieht man, dass das Modell das nicht kann.
Also die sind auf jeden Fall ausgebrochen aus dem Exponentiellen und dafür braucht man das logistische Modell, was genau diesen Effekt modellieren kann.
Und das sieht man jetzt auch bei anderen. Also das ist ganz interessant bei dem logistischen Modell.
Also das interpretiert dann schon, dass wenn man aus dem Exponentiellen rauskommt und sieht, ah ok, es fängt sich an abzuschwächen und man nimmt an, dass dieser logistische Funktion folgt,
dann kann man auch vorher sagen, ok, also jetzt dauert es vielleicht noch zwei Wochen, bis sich die Neuinfektionen dann...
zurückgegangen sind und es keine neuen gibt.
Ja, ich glaube auch, dass das in China...
Klar, man kann da nur zweifeln, aber eben bei so einer exponentiellen Entwicklung, das hätten wir dann halt schon über die Zeit gemerkt, wenn das irgendwie nicht geklappt hätte, weil dann wäre das schon überall jetzt.
Und das ist es irgendwie nicht.
Und daher, in Südkorea ist ein ganz interessanter Fall, weil da man das relativ gut verfolgen konnte, weil das irgendwie hauptsächlich irgendwie ein Community-Cluster irgendwie war,
in dem das aufgetreten ist und dann haben halt diese ganzen, wir verfolgen das jetzt mit auch großem Personalaufwand-Aktionen halt da tatsächlich sehr viel gebracht.
Aber das geht halt anderswo nicht so gut.
Also das ging halt in dem Fall super und naja, ist halt immer auch die Frage, inwiefern irgendwelche Geschichten vergleichbar und übertragbar sind.
Wenn jetzt irgendwie alle Leute sagen, man muss das nur so machen wie in Südkorea, dann ist das kein Problem.
Naja, irgendjemand meinte dann so satirischerweise irgendwie, ja, so...
Ich habe gehört, in Südkorea wird ganz viel Kimchi gegessen.
Lass uns alle einfach Kimchi essen, dann ist es okay.
Aber was ich auch interessant finde, ist, dass halt einige, so Japan, Taiwan, Hongkong, Singapur, die ja dann auch schon seit langer Zeit irgendwie da relativ viel Maßnahmen machen,
dass die auch irgendwie von dieser exponentiellen Entwicklung relativ gut verschont wurden.
Aber alle unterschiedliche Methoden gemacht.
Also Japan hat zum Beispiel einfach die Anzahl an Tests unheimlich hoch gefahren.
Nämlich sie einfach jeden Menschen getestet haben und dann diese Kette auch versucht haben, damit zu unterbrechen.
Weil die halt relativ genau wussten, wer jetzt da vielleicht dann Kontaktperson war.
Das mag auch ein Vorteil sein.
Aber von China glaube ich übrigens keine einzige Zahl.
Also ich habe Dunkelziffern gelesen, die man jetzt alle mit Vorsicht genießen möchte,
aber dass irgendwie 700.000 Fälle alleine in Wuhan noch irgendwie offen waren, die nicht registriert waren.
Und naja, was man da glauben kann, ich weiß ja nicht.
Und also eine Sache auf jeden Fall noch zu den Notebooks.
Also die...
Modelle habe ich dann online gestellt und die haben auf jeden Fall da sehr viel Interesse bekommen.
Ich wurde auf jeden Fall auch dafür kritisiert, dass es...
Also ich bin kein Epidemiologe und habe mir das angeschaut und diese Modelle gebaut,
dass das ja nur jeden verwirren würde und dass exponentielle Modelle ja sowieso komplett falsch sind.
Und ich kann das verstehen.
Allerdings sind im Moment diese exponentiellen Modelle erschreckend akkurat.
Also die letzten Wochen war es ein sehr guter Fit.
Klar, dass das nicht sehr weit in die Zukunft projizieren kann, ist klar.
Und das andere, was aber auch sehr interessant ist, was passiert ist, ist,
dadurch, dass man dann diese Sachen shared, also das ist halt dieses Open-Source-Prinzip,
dann kam der Hamel und hat dann ein Dashboard daraus gebaut, das ist halt täglich updated.
Und das heißt, das ist jetzt eine coole Webseite, wo das Notebook dann automatisch geladen wird.
Und es ist auch interaktiv.
Andere Leute haben es benutzt, um dann das Modell zu verbessern
oder einfach nur sich selber dann das Modell auf andere Daten anzuwenden.
Ich habe selber viel Feedback bekommen, was ich dann einpflege und das Modell verbessere.
Also dieser iterative Ansatz, der in der Öffentlichkeit stattfindet und auch den Code zu posten,
wo halt andere Leute Bugfixes schicken oder so,
ist also meiner Meinung nach überwiegender die Vorteile einfach viel mehr als die Nachteile,
dass ich halt erstmal sechs Monate mit Epidemiologen zusammenarbeite,
um das absolut wasserdichte Modell zu bauen, was dann aber vielleicht nicht richtig funktioniert,
weil ich halt nicht das Feedback von der Community habe und auch nicht diese ganzen Netzwerkeffekte,
die Open-Source da bringen.
Ja, ja, das würde ich auch sagen.
Also ich meine, wenn da irgendwie, das ist auch etwas, wenn das halt in der Öffentlichkeit passiert,
also ich meine, im Grunde kann man ja nur durch Feedback irgendwie Dinge lernen.
Das ist auch etwas, was ich immer sehe.
Das ist halt dann.
Ich meine, das ist halt auch unter Umständen ein schmerzhafter Prozess,
irgendwie öffentlich Feedback einzusammeln.
Aber es hilft auch tatsächlich, während ich da große Bedenken habe,
wenn da Leute irgendwie jahrelang an irgendwas arbeiten oder so
und da gab es nie wirkliches Feedback.
Ob das dann so wirklich stimmt?
Naja, also es ist...
Da habe ich letztens erst einen Tweet gesehen von einem Epidemiologie-Professor,
der da einen super akkuraten Simulator geschrieben hat,
der halt da verschiedene Agenten simuliert, die sich treffen und die infizieren sich.
Und das ist ja also das absolute Nonplusultra-Modell.
Und das hat er aber schon vor langer Zeit gemacht, also als Epidemiologe.
Und da aber natürlich bisher nur Paper drüber geschrieben.
Und dann ist natürlich sofort die Frage, okay, du hast ja vor zehn Jahren dieses super coole Modell gebaut.
Was sagt es denn jetzt voraus?
Und kann man das denn nicht benutzen, um das halt up-to-date?
Naja, und dann...
War halt die Frage, ja, was ist denn mit dem Code?
Und dann so, oh, okay.
Naja, die Codes sind irgendwie 50.000 Zeilen C++-Code,
den eine Person versteht, der unkommentiert ist, ungetestet ist.
Also ich war selbst in der Forschung, ich weiß ganz genau, was die Code-Qualität da ist.
Und die ist oft sehr niedrig.
Und in dem Fall jetzt, weil der Code einfach so wahnsinnig wichtig ist,
arbeitet er mit Microsoft zusammen, um den Code dann da tatsächlich zu testen
und zu wissen, dass der funktioniert.
Da werden bestimmt einige Bugs gefunden.
Und das ist natürlich auch sehr gefährlich.
Also diese ganz klassische, so wie die Wissenschaft da bisher immer arbeitet
und wie wenig die sich wirklich für Code-Qualität da einsetzen,
glaube ich, dass wir da viel voneinander lernen können.
Und zum Beispiel oft sind die halt auch nicht bäsianisch.
Also gibt es wirklich den Epidemiologen, der ein Top-Coder ist
und gleichzeitig halt...
Und natürlich epidemiologisch total fit ist
und dann zusätzlich auch noch weiß, wie man Pianti 3 benutzt.
Wahrscheinlich gibt es den nicht.
Deswegen, wenn wir da alle unseren Teil dazu beitragen,
glaube ich, wird es am besten funktionieren.
Ja.
Ja, ja, ich bin auch...
Gut, das ist jetzt auch wieder ein bisschen her.
Ich habe auch eine Zeit lang irgendwie viel Pepper gelesen
und versucht, Dinge zu reproduzieren und so.
Und das hat...
Also das war schon...
Also oft bekommt man dann ja Code.
Wenn man dann irgendwie ein Paper hat und dann sich überlegt,
okay, das sieht sehr interessant aus für das Problem, was ich habe.
Und wenn man dann die Autoren anschreibt und sagt so,
ich würde das mal gerne reproduzieren,
könnt ihr mir den Code dann mal irgendwie so...
Wie mache ich das denn dann?
Dann kriegt man meistens den Code.
Meistens mit einer länglichen Entschuldigung für die Code-Qualität.
Das ist...
Und ganz oft ist es dann halt auch so,
wenn man das dann tatsächlich versucht, nochmal selber zu implementieren,
dass man merkt so, oh nee, das tut nicht so wirklich genau das,
was da in dem Pfeffer drin steht.
Und also da muss...
Da muss irgendwie...
Ich meine, ich kann auch verstehen, wie das passiert.
Das ist halt...
Man kann halt Code nicht veröffentlichen in der Zeitschrift,
sondern da ist halt dann halt ein gesetztes Paper irgendwie das Entscheidende
oder halt sogar oft in der Informatik sind es halt irgendwie Formeln,
mathematische Formeln, die da drin stehen müssen,
weil das ist halt das, was man irgendwie da reinschreiben kann.
Code ist halt...
Kann man nicht so wirklich publizieren.
Aber das muss sich irgendwie ändern, weil das ist...
Ja, das ist eigentlich alles...
Ja, ja, relativ furchtbar.
Ja, also ich...
Stimme dir voll zu.
Also weil es...
Also welches Paper kann sozusagen noch geschrieben werden,
was nicht auf Code beruht?
Also das ist wahnsinnig...
Absolut fundamental.
Die Ergebnisse...
Und die Ergebnisse sind davon gestützt.
Also wenn da ein Bug drin ist, dann kriegst du halt falsche Ergebnisse raus.
Also dass das bisher immer noch nicht...
Also fairerweise muss man sagen,
das verstehen schon immer mehr Leute
und es gibt auch immer mehr Wissenschaftler,
die das auch anfangen zu machen
und die ihre GitHub-Repositories haben.
Der Danilo Bistock zum Beispiel,
mit dem habe ich letztens ein Paper gemacht.
Also der stellt alles immer online
und ich kenne auch viele andere Kollegen,
die das machen.
Und das ist super, also gerade jüngere Wissenschaftler.
Aber das ist halt bisher noch größtenteils freiwillig.
Also ich glaube, das muss schon einfach auch ein Zwang sein,
dass die Methoden und der Code alles online kommt.
Und wenn das online ist,
dann ist natürlich auch automatisch oft
der Anspruch an die Codequalität höher.
Also das heißt, man möchte dann
vielleicht doch ein bisschen mehr Zeit darauf verbringen,
auch den Code zu kommentieren und ein paar Tests zu schreiben.
Das sind ja alles...
Peer-Pressure.
Ja, genau.
So ein bisschen gesunde Peer-Pressure da reinbringen.
Ja.
Ja.
Genau.
Gab es irgendwas
sehr Interessantes oder was du nicht erwartet hattest
irgendwie beim
Bauen der
Modelle für dieses Problem?
Oder
ich weiß nicht genau, ob ich jetzt irgendwas...
Ja, also
das,
was
am schwierigsten
daran ist, ist, dass man sich halt leider
auf die Grunddaten
nicht so richtig verlassen kann.
Also angefangen habe ich zum Beispiel dann
mit den Fallzahlen einfach.
Aber die Fallzahlen sind natürlich wahnsinnig
abhängig davon, wie viel überhaupt getestet wird.
Und in Südkorea wurde wahnsinnig
viel...
In Deutschland wird auch ziemlich viel getestet.
In den USA wird kaum getestet.
Bisher.
Und das ändert sich natürlich auch über die Zeit.
Das heißt, wenn ich mehr teste,
finde ich mehr Fälle. Das heißt, das ist auch
schon für einen Anstieg allein verantwortlich.
Da gibt es aber auch nicht wirklich verlässliche Daten,
so wie viel da genau jetzt getestet wurde.
Und dann
ist ein
anderer Ansatz zum Beispiel, sich die
Todesfallzahlen anzusehen, um da zu
denken, okay, die sind wahrscheinlich verlässlicher.
Die sind leider auch nicht so genau.
Also,
ja, es ist ein sehr, sehr
schwieriges Problem, weil
die Datenqualität oft nicht
wirklich gegeben ist, was natürlich dann
die ganzen Vorhersagen da
beeinflusst.
Und auch
ja, also, und das
allerdings ist natürlich auch
eine Chance für diese Modelle, denn das sind
alles Sachen, die man damit einbauen
kann. Also zum Beispiel kann ich
hingehen und sagen, okay,
und das ist das Modell, an dem ich gerade arbeite,
ich fange jetzt an mit den Todeszahlen.
Weil ich denke, dass die am verlässlichsten
sind. Und dann
weiß ich, ah, okay, also
es ist mittlerweile
recht gut etabliert, dass es ungefähr ein Prozent,
die es bekommen,
sterben daran. Das heißt,
das kann ich dann hochrechnen und sagen,
okay, also jetzt hatte ich
100 Tote, das heißt,
das mal 100, und
dann kriege ich die Anzahl
der Infizierten. Aber nicht die Anzahl der Infizierten
an dem Tag, sondern vor zwei
Wochen. Weil oft dauert es
von der Zeit der Infizierung bis
zum Tod zwei Wochen.
Und das heißt, das kann ich
dann alles in das Modell mit einbauen und sagen,
okay, jetzt kann ich da zurückrechnen.
Und dann habe ich also den Wert der Infizierten
vor zwei Wochen von den Toten.
Und dann kann ich den vergleichen
mit dem, wie viel
Fälle,
positiv getestete Fälle gab es denn vor zwei Wochen.
Und
das sind natürlich weniger.
Wir haben ja nicht alle getestet.
Und dann kann ich da so einen Faktor rausfinden,
wie viel
Prozent der Fälle, die es scheinbar gab,
wurden dann überhaupt getestet.
Und das sind dann, ja,
also mit diesen Modellen,
die man halt da so ganz spezifisch bauen kann,
und das ist natürlich was, vorhin haben wir
über Machine Learning gesprochen, das kann man natürlich
absolut nicht damit machen. Aber mit Probabilistic Programming
kann man diese ganzen Annahmen da halt
reinbauen. Und das Expertenwissen,
was man hat über zum Beispiel die
Growth Rate oder die Sterblichkeit
oder wie lange es dauert,
sind halt alles Annahmen, die man da mit reinsteckt.
Und das ist natürlich auch ein
sehr interessantes Thema, das man da auch
ganz fix und sagen kann, okay, es sind
exakt zwei Wochen, sondern sagen, okay, naja,
könnte irgendwas zwischen
sieben und achtzehn Tagen sein.
Also so eine Ungenauigkeit kann man auch
in dem Bereich
einsetzen. Und das wirkt sich dann natürlich auch
darauf aus, auf die
Ungenauigkeiten, die man aus dem Modell
rausbekommt.
Ja, sehr interessant.
Hast du irgendein Land gefunden, wo du sagst, dass
die Fallzahlen, die du da so rausfindest,
sind?
Relativ nah an der Realität
sind oder an der Wirklichkeit?
Kann ich noch nicht sagen.
Das ist eine sehr
gute Frage, ja.
Da habe ich noch gar nicht dran gedacht, aber werde ich mir auf jeden Fall
anschauen. Ich würde erwarten,
dass es Südkorea ist, weil die
am meisten getestet haben.
Das wäre ein guter Test auf jeden Fall,
das Modell zu sehen, wer da
am genauesten dran ist. Und wenn ich
jetzt hier nach dem
Podcast reinschaue, sind die
Modelle wahrscheinlich gerade fertig und dann
kann ich sie schreiben.
Schicken wir die Shownotes.
Ja, genau. Wir packen das alles da links.
Ja.
Ja,
sehr interessant.
Ja, ich weiß nicht,
haben wir doch irgendwas, was wir mit diesem
Corona-Geschichte
besprechen wollten?
Ich überlege gerade.
Thomas hat so viele interessante Sachen, auch über
Quanz-Sachen gesagt, die mich noch viel mehr interessieren als die Corona-Krise.
Ja,
ja.
Also genau,
ich glaube, zu Corona auf jeden Fall haben wir,
also ich glaube, zu allem haben wir eigentlich recht
gut was,
also alles, was ich, glaube ich, so sagen wollte, habe ich da
gesagt.
Ja.
Aber also, wenn
ihr noch Sachen habt, die ihr vertiefen wollt,
das ist für uns der Virus ab jetzt auch
offiziell beendet.
Ja, wir erklären das jetzt mal
früher, wenn es genau
nicht mehr geht.
Das ist jetzt auch mal,
ja,
ja,
ansonsten, ich weiß nicht genau,
aber das ist
vielleicht auch noch so ein
Ding, wo es
Überschneidungen
gibt,
also auch interessant, wie veröffentlicht
man eigentlich solche Daten
und
wie kann man die,
ja, wie kann man die am besten
so, dass
das halt alle lesen können,
irgendwie
übermitteln und so und, ja,
gut, das hatten wir eben.
Ja, aber die Notebooks sind doch total super,
da kann ja relativ einfach das plotten.
Ja, ja, aber die Daten, auf denen das basiert,
ist ja meistens dann irgendwie CSV oder so.
Google Spreadsheet.
Ja, also genau, das ist auf jeden Fall echt so ein
Ding, die, also Johns Hopkins
hat da
die Daten aus den
WHO-Berichten, die als PDF-Datei geschickt
werden, benutzt und
die waren die ersten, die das Dashboard da hatten.
Und dann haben andere Leute angefangen,
diese Daten dann auf GitHub
zur Verfügung zu stellen, als CSV-Dateien
und dann kann man sich da halt immer die aktuelle Datei
runterladen.
Und das hat eigentlich auch
so funktioniert, wie es hätte
funktionieren sollen, nämlich die Daten
natürlich, klar, hatten alle möglichen Probleme
und dann haben Leute da GitHub-Issues
und Pull-Requests
gestartet, um dann die Daten,
Probleme, die es da gab, zu reparieren.
Leider haben die,
die das Report da laufen, dann sind
nicht sehr aktiv, sondern stellen halt die Daten
rein und oft sind die,
enthalten die echte Fehler.
Und die werden dann nur sehr schleppend bis
gar nicht
da gefixt.
Und die
andere Webseite, die ich jetzt angefangen habe zu nutzen, ist
European Center for Disease Control,
ECDC, und
die haben deutlich bessere Daten.
Also die Webseite, die ich jedem empfehlen
würde, ist nicht mein Dashboard,
sondern Our World in Data.
Die haben
da, finde ich, mit die besten
Datenquellen
und von denen habe ich das, dass die
da umgestiegen sind auf die Daten
von der ECDC. Die benutze ich jetzt auch
und die sind ein bisschen
verlässlicher.
Ah ja, okay. Ja, sehr cool.
Ja, ja, das ist also, ich meine,
auch das ist natürlich wahrscheinlich eine der Geschichten,
die man daraus dann irgendwie lernen sollte,
auch in Europa ist halt so, das ist überhaupt nicht
einheitlich, genau wie diese Daten eigentlich
erhoben werden oder wer da was an wen
meldet und so, und das ist halt alles überhaupt nicht mehr
miteinander vergleichbar.
Aber wenn man jetzt auch,
das ist halt irgendwie aus PDFs, also ich meine,
auch in Deutschland, das ist eine ganz, ganz krude Geschichte,
hört man dann von irgendwie Faxen, die notär geschickt werden,
oder irgendwie werden
Leute telefonisch irgendwie informiert
über bestimmte Sachen, dann tragen sie das halt irgendwo ein oder halt auch
nicht, oder vergessen das halt auch mal.
Das wird dann ausgedruckt und dann per Postgeschick
eingescannt. Ja, also irgendwie
da ist auf jeden Fall eine Menge
Verbesserungspotenzial offenbar.
Aber...
Da haben ja einige Gruppen an dem Hackathon dran gearbeitet,
Ach, das gab es ja jetzt.
Ja, da war jede Menge los, auch in Python.
Ah, okay. Ich habe tatsächlich so ein bisschen
versucht, da Projekte zu finden. Ich habe jetzt tatsächlich
nicht die allercoolsten entdeckt, habe ein bisschen
gecodet, Telegram-Bot zur Aufklärung
und es ging um Supermärkte.
Aber ich habe ehrlich gesagt eher Leute da getroffen
und versucht, so ein bisschen was Sinnvolles zu tun, aber
wirklich, ich kam da wohl, glaube ich, nicht bei raus.
Es waren sehr viele Menschen, das hat mich ein bisschen gefreut,
ein bisschen Hoffnung gegeben. Ich glaube, über 42.000
Anmeldungen gab es. Ja. Und hinterher
über 1.000 Devs, die dann tatsächlich irgendwas gecodet haben.
Das war ganz schön.
Gibt es irgendein Projekt, was du besonders cool fandest,
woraus was geworden ist, oder?
Ja, es gibt so ein paar Sachen, die tatsächlich
sich um Menschen halt irgendwie versuchen zu kümmern
und denen halt die Ängste abnehmen oder
vernünftiges Handling
von den Fragen zu machen, dass die Telefone nicht mehr
überlastet werden. Aber dass da
jetzt so richtig das Projekt rausgekommen ist,
ich glaube, die brauchen alle noch ein bisschen.
Ja, es dauert halt noch einen Moment. Ja, es waren viele Sachen,
die vom Ministerium dazu kamen,
was man halt als Datenanalyse machen kann,
auch die die Wirtschaft für kleine Unternehmen irgendwie gute Ideen
sind, aber am Wochenende
kann man da noch nicht ganz was Brauchbares bauen.
Aber ich glaube, da entsteht was draus. Und das war wirklich, glaube ich,
ein guter Effekt, der mal wirkliche
Digitalisierung in Deutschland gezeigt hat, dass gerade
so der Anfang jetzt vielleicht gemacht worden
ist, den man die ganze Zeit schon seit 20 Jahren
erwartet hat. Absolut, ja.
Das finde ich auch wirklich so, dass
möglicherweise positiv an dieser ganzen
Sache ist, dass wir
diese ganzen Trends, die da angefangen sind,
mit Heimarbeit, Homeoffice
oder auch Telemedizin,
sind alles Sachen, wo man schon
Ewigkeiten drüber spricht, aber
es ist nie so richtig in die Gänge gekommen.
Jetzt ist da eine sehr starke Forcing-Funktion
dahinter, dass wir das halt alle machen müssen
und dann bewegt sich auch was.
Breitbandausbau, vielleicht werden endlich mal wieder
ein paar Kliniken privatisiert, man weiß es nicht.
Und ich meine,
das sind alles Sachen, die
dann, wenn wir diese ganze
Corona-Geschichte überstanden haben,
hoffentlich auch bestehen bleiben. Also die ganzen
Arbeitgeber sind jetzt damit,
haben jetzt Erfahrung damit,
die Ärzte haben Erfahrung damit,
Konferenzen auch zum Beispiel,
viele wurden abgesagt, aber einige sind auch
virtuell geworden. Und das ist auch
eine Sache, die schon immer so
gefordert wurde, weil es natürlich auch
CO2
schlecht, sehr
schlecht für die
Umwelt ist, wenn da
100.000 Leute zu dieser Konferenz fliegen.
Und
das kann man viel virtuell
machen und das wurde auch nur lange
gefordert, jetzt wird es tatsächlich umgesetzt,
weil es nicht anders geht.
Apropos virtuell, jetzt muss ich einmal kurz
einhaken.
Ich weiß nicht, wann wir die Folge veröffentlicht bekommen, aber jetzt am Wochenende
ist der virtuelle
Düsseldorfer Python-Sprint,
der sonst immer bei Trivago stattfand, auch
auf virtuelle Ebene verschoben worden.
Cool.
Das Python-Camp auch, also das
in
Deutschland stattfindet.
Ja, und das ist jetzt auch,
das ist noch nicht so richtig klar.
Und sogar die Euro-Python, auch virtuell.
Ach, ernsthaft?
Das habe ich noch gar nicht mitbekommen, weil
ja, okay, das wäre nämlich, weil da war,
hatte ich ja auch,
hatten wir auch überlegt, da hinzugehen.
Ja, also ich hatte schon gebucht,
ich habe schon hierhin, aber ja.
Hm, interessant, ja,
aber das wird auch, ich bin auch gespannt, wie das dann
jetzt am Wochenende wird.
Die ganzen Geschichten müssen sich
jetzt halt da erstmal so finden, aber ich bin
auch überzeugt, dass das eigentlich im Prinzip kein
Problem ist. Sollte schon gehen.
Es hat halt schon ein paar Vorteile, wenn man die Leute tatsächlich
persönlich sehen kann, als nur remote.
Es ist natürlich schon auch mal schön, lieber Thomas,
aber wir hätten
natürlich gerne alle begrüßt.
Genau, richtig.
Mit Handschlag und
ja, aber genau, also
das, ich glaube,
also diese ganzen Nachteile gibt es auf jeden Fall,
aber ich würde mich wundern, wenn es da nicht auch
sehr viel Potenzial für innovative Ideen
gibt, wie man das
Nachteil
ausgleichen und Vorteile ausweichen kann.
Ja, und es gab
eine Kegel-Competition gab es noch jetzt
irgendwie neu. Ja, da gab es mehrere.
Ja,
Moment,
wo hatte ich denn genau, es gab einmal
eine Geschichte.
Genau, da geht es darum,
haben sie so einen riesen Datensatz mit
Research-Papern zur Verfügung gestellt und da
wird NLP drauf gemacht.
Auch bei Quantopian sind wir
auch gerade dabei, eine neue Challenge zu starten
und
das haben wir immer gemacht mit
gewissen Datensätzen oder so, jetzt
generiert mal Algorithmen
auf den Insider-Daten
oder so. Das, was wir
wie wir es jetzt machen wollen, ist ein bisschen eine andere Idee.
Da geht es auch um COVID-19
und den Einfluss davon
auf die Wirtschaft und auf die Finanzmärkte
und da geht es nicht darum,
irgendwelche Algorithmen zu entwickeln, sondern stattdessen
interessante Analysen und Visualisierungen
davon zu machen. Also,
wer macht die coolste
Analyse, wie der Einfluss von
COVID-19 auf die Supply-Chains ist
oder auf die Aktienmärkte?
Zeichnet man im Mittag so einen Aktienmarkt
und dann kommt irgendwie so ein großer Hammer
und dann macht es Bumm.
Ja, genau sowas.
Aber genau, also bis der Podcast
dann raus ist, ist es wahrscheinlich schon
auf der Contribute-Website, also jeder, der da
Interesse hat, soll sich das mal ansehen.
Es gibt auch einen Preis.
Ah, cool.
Genau, da sehe ich gerade auch schon,
es gibt eine Forecasting-Competition auf
Carrival auch, wo halt die Leute auch schon ihre Notebooks
und da sehe ich auch schon diese
SIR-Modelle und
Leute, die interessante Visualisierungen gemacht haben.
Ich meine, das ist der Preis auf kein Toolpin,
deutlich interessanter.
Ja, genau, das packen wir auf jeden Fall auch mit rein.
Genau.
Ja, nee, sehr schön.
Ja, schreibt uns, wenn ihr irgendwie ein tolles
Projekt habt, wo ihr Unterstützung versucht,
das werden wir natürlich dann in der nächsten Zeit
versuchen zu berücksichtigen.
Ja, ich weiß nicht genau, vielleicht kann man nochmal so ein bisschen allgemein,
also was auch interessant ist, wenn man da auf dem Laufenden bleiben will,
was gerade so passiert, diese Geschichte,
es gibt vom CCC irgendwie
einen
Link-List und ein Wiki und auch
ein Bonneton, das sie halt jeden Tag,
jeden Tag veröffentlichen mit allen
aus ihrer Sicht irgendwie
wichtigen Entwicklungen und das ist
auch interessant. Also ich meine, das sind irgendwie
so, die organisieren sich irgendwie um so
ein Streamer-Channel und
oder Gruppe und das sind
irgendwie so 100, etwas über
100 Leute oder so, die halt alle aus diesem
medizinischen oder Katastrophenschutz-Bereich kommen
und die da auch halt echt Ahnung
von haben und da stehen auch immer
sehr interessante Sachen
dabei. Also wenn da irgendwas Neues
erschienen ist,
was irgendwie interessant ist,
dann findet man das da eigentlich immer
und die machen das halt auch anders. Das ist auch sowas, was
mich irgendwie in letzter Zeit,
also ich habe da jetzt auch so ein bisschen, naja,
ich meine, man konnte dem eigentlich nicht entgehen,
man hört die ganze Zeit von allen möglichen
Richtungen, strömt das auf einen ein.
Wenn man so sich anguckt,
was so in Zeitungen oder
eben klassischen journalistischen Publikationen
irgendwie geschrieben wird, was mich immer so ein bisschen
stört, ist, dass oft nicht die Quellen dabei stehen
oder so und das machen die zum Beispiel eben
auch anders, dass sie halt immer die Quellen alle mit
verlinken und dass man halt gucken kann, wenn das steht,
wenn das steht halt nicht nur irgendwie, es gibt eine Studie,
die irgendwie das und das sagt und man sich denkt, okay,
zeig mir doch mal die Studie, ich möchte mal gucken, was haben die
denn da wirklich gemacht, dann
ist das da halt auch alles verlinkt und das ist schon
mal sehr praktisch.
Ja, ähm,
hm.
Ja, es gibt leider auch wieder sehr viele
Alternativmedien, die irgendwelchen Schrott erzählen.
Ja, das ist, äh,
Eva Herrmann sagt, das wäre wie die Grippe.
Ja,
ja,
ja,
ja,
wie wird man dem her?
Gute Frage.
Ja, keine Ahnung.
Ja, äh,
genau, genau, was ich noch, ähm,
worauf ich noch hinaus wollte mit dem,
äh, wie man Daten austauschen kann, also was ich ja
persönlich hoffe, ich habe absolut keine Ahnung, ob das
irgendwie jemals passieren wird, aber, äh,
das habe ich auch, die Idee ist ja nicht von mir, sondern das ist halt,
äh, habe ich auch irgendwann mal gehört
und dachte so, also zuerst dachte ich, äh,
ist vielleicht keine tolle Idee, aber dann so,
je länger man drüber nachdenkt, desto, äh,
irgendwie interessanter sieht das aus, irgendwie halt
als Standarddaten,
Austauschformat für solche
Art von Daten, halt SQLite zu
etablieren,
weil, äh, eben CSV
irgendwie diverse böse Nachteile hat
und man mit, äh, SQLite halt, äh,
auch sehr schöne Geschichten
bauen kann gerade. Ja, also das Problem
mit SQLite ist natürlich, du brauchst immer ein Interface, mit dem
man das beschreiben kann und, ähm, du hast halt
bei CSV einfach eine offene
Tabelle, wo du einfach in irgendwelche Zellen irgendwas reinpacen
kannst und das, ähm,
kenne ich so für SQLite so
low-levelig, ne, für, für den
Privatanwender nicht.
Ja, natürlich, also wenn du, wenn du sozusagen
tatsächlich da Daten verändern willst, dann, äh,
ist das natürlich, äh, alles sowieso
schwierig, aber wenn du es jetzt
nur irgendwie lesen und auswerten willst, dann ist
vielleicht, äh, SQLite
gar keine so schlechte Idee. Also ich finde die Idee super, so aus technischer
Perspektive, ich frag mich halt nur, wie, ähm,
äh, Herr Mayer und, und Frau Kunze
das umsetzen wollen, wenn sie zu Hause sind,
ähm, und dann,
ja, ihre Daten
bereitstellen, also vielleicht sind diese Menschen, die ja da
arbeiten, ja irgendwie an der Quelle und, ähm,
haben halt dieses Fax in der Hand,
ähm,
zum Beispiel müssen halt diese Daten aus diesem Fax irgendwo
eintippen und, ähm, man hat
tatsächlich gar nicht diese Schnittstelle, dieses Interface,
dass es halt direkt in eine zentrale, gute
Datenbank kommt, sondern man
muss halt irgendwie sich so ein
Überträger-Datenformat überlegen, was
halt dann oft
so eine Tabelle ist einfach, ne?
Ja, aber, also eben, was man tatsächlich
mit SQL, äh, also mit, mit Data Setter zum Beispiel,
das ist halt das Projekt, äh, was ich, ähm,
in dem Zusammenhang, weil es gibt auch zum Beispiel für diese
Covid, äh, Daten jetzt
eine, äh, äh, Data Setter
äh, irgendwo auf...
Das hatten wir noch mal ein, ein, zwei Mal schon mal erwähnt,
aber vielleicht erklärst du kurz, was ist das, eine Data Setter?
Ja, äh, also
da geht's darum, eben genau,
äh, Daten halt
öffentlich machen zu können, ähm,
das ist ein Projekt von, äh, war
jahrelang Side-Project, sozusagen das Haupt-Side-Project
von Simon Risen, ein der
Gründer von, von Django, von dem Django-Projekt,
da, die Web-Geschichte, ähm,
und der hatte halt auch irgendwie im,
äh,
halt zeitlang beim Guardian, äh,
gearbeitet und, ähm,
hatte da halt gesehen,
dass es, äh, irgendwie deren Haupt,
äh, Datensammlung
von jemandem betreut wurde, der halt irgendwie
hunderte von CSV-Files und Dingen
irgendwie, äh, auf seinem Desktop liegen hatte
und halt wusste, was da drin stand und, äh,
aber das ist natürlich nicht so eine gute
Ausgangsbasis, um da irgendwie,
äh, die Daten
dann zu veröffentlichten, also das könnte man gar nicht so
richtig veröffentlichen, weil, wenn man halt nicht weiß,
was da überall drinsteht, dann kann man mit dieser Datensammlung
gar nicht so viel anfangen, äh,
und, ähm, hatte dann überlegt,
was man tun kann, um das irgendwie,
ja, äh,
auf so einer Tool-Basis irgendwie
daran aufzubereiten.
Ja, und das ist halt, das, was daraus
entstanden ist, halt die Tassette und das ist halt,
ähm, besteht aus mehreren Teilen.
Ein Teil ist halt, man wirft irgendwie
CSV-Dateien da rein oder sagt halt
auch nur zu einem Verzeichnis, in dem viele
CSV-Dateien drin liegen, so,
äh, werdet mal
zu einer SQLite-Datenbank und,
ähm, dann wird das,
mehr oder weniger automatisch transformiert und
wenn es dann eine SQLite-Datenbank ist,
dann, äh,
kann man da halt beliebige SQL-Anfragen
drauf stellen, weil man kann halt
bei SQLite sagen, das ist auch eine,
auch eine schöne Geschichte, das ist in der Python-Standard-Bibliothek
direkt mit drin. Das heißt, äh,
man muss da nichts installieren oder so, sobald man
einen Python-Interpreter hat, hat man das dabei
und, äh, kann das Read-Only
sozusagen aufmachen.
Und der gibt dann das Schema dann daraus, was er in den
Daten gegeben hat. Ja, und also, was
Tassette macht, ist, es macht halt automatisch eine API drumrum.
Ähm, sodass du halt auch
direkt ein Web-API hast
auf deine SQLite und
sozusagen, du hast jetzt nicht irgendwie
GraphQL, mit dem du, mit dem du
als Abfragesprache, mit dem du das abfragst, sondern du hast
halt direkt SQL und kriegst dann halt
JSON oder CSV zurück.
Und, ähm, ja,
das ist eigentlich, äh, sehr, sehr
schick. Ähm,
aber ja, es ist natürlich, äh, ja, klar,
also, ich meine... Also, das heißt, man könnte erst
diese ganzen Repos auf GitHub, wo die ganzen
Datensätze als CSV drin sind, einfach in irgendeine
Tassette kippen. Ja. Und hätte direkt als SQL
die Abfrage. Ja, nicht nur das, sondern
man hat sogar einmal ein Interface,
wo man SQL hin tun,
oder reinposten kann, sozusagen, und dann kommt halt
äh, irgendwie eine HTML-Tabelle
im Browser zurück oder halt eben CSV
oder JSON, wenn man es als API
verwenden möchte, und man hat direkt eine API auf die Datenbank.
Und, äh,
es ist sogar so, dass man das nicht mal selber husten muss,
sondern es gibt dann diverse, äh, Provider,
die halt so, äh, Dinge anbieten, wie
du kannst dann...
Das habe ich jetzt gar nicht nochmal genau nachgeguckt, aber es gibt, glaube ich,
Glitch, mit Glitch geht das irgendwie, oder es gibt halt
auch mit, ähm,
es gibt auch diverse, die einfach so
Docker-Container anbieten, die man, wo man halt so ein
freies Kontingent hat an
Containern irgendwie, und dann
damit kann man das halt auch hochziehen.
Und, äh, sodass man halt, äh,
ohne irgendwie selber da
irgendwie Hosting bezahlen zu müssen,
die CSVs halt
als SQL-Datenbank
mit API irgendwie
ins Netz stellen kann. Und das ist auch mit den,
äh, mit diesen John-Hopkins-Daten
passiert.
Und das fand ich auch schon
sehr interessant, aber, na gut, ich meine,
das fixt natürlich die grundlegenden Datenprobleme
darunter halt dann nicht.
Ähm, aber
ist auf jeden Fall eine, äh,
ganz, ganz interessante Geschichte, finde ich.
Wenn man jetzt zum Beispiel irgendwie ein Notebook baut, was halt
irgendwie
diese Daten verwendet, dann kann man halt auch direkt,
das könnte man direkt die Datasette
oder diese COVID-19-Datasette
einfach verwenden und dann halt
die ganzen Daten über eine API bekommen, ohne dass
man da selber CSVs parsen muss oder so.
Ja, cool.
Ja, ja.
Aber, genau.
Ähm.
Ja, also Feedback und Anregungen und Fragen
und alle eure Sorgen an hallo
at python-podcast.de
Ja.
Thomas, bist du noch da?
Ich bin auch da, ja.
Ja, ich weiß nicht, ähm,
sind wir dann schon durch? Ich weiß nicht, haben wir noch
irgendwas Interessantes, was wir irgendwie, haben wir noch
irgendwelche Dinge, die sonst...
Naja, also News of the City, die ganzen Konferenzen,
die sind abgesagt und...
Ja, das ist die eine große Neuigkeit.
Ja, wenn ihr zu Python zukommen wollt,
der stattfindet, der ist jetzt auch virtuell.
Guckt ihr auf dem Chaosdorf, mal gucken, welche Räume
es da gibt. Ja.
Ja, dann vielen Dank,
dass du heute da warst. Ja, vielen, vielen Dank.
Super interessant.
Ja, vielen Dank
für die Einladung. Es war sehr cool,
mit euch zu sprechen.
Wir freuen uns schon, wenn alle wieder gesund sind, dann müssen wir das hier mal
live wieder vor Ort wiederholen.
Sehr gerne.
Ja, ist ja gar nicht so weit.
Ja, vielen Dank fürs Zuhören. Bleibt uns gewogen,
haut wieder rein, bleibt gesund, vor allen Dingen in diesen
unruhigen Zeiten und
haut mal wieder rein. Wir hören uns. Bis zum nächsten Mal.
Bis zum nächsten Mal. Tschüss. Tschüss.