Transcript: Natural Language Processing mit spaCy
Full episode transcript. Timestamps refer to the audio playback.
Hallo liebe Hörerinnen und Hörer, willkommen im Paisen-Podcast, heute in einer Jubiläumsepisode und zwar Episode Nummer 30.
Natürlich sind wir wieder mit dem Jochen da und ich bin der Dominik.
Hallo Dominik.
Und heute haben wir auch einen besonderen Gast und das ist die Ines.
Ja, hallo Ines.
Ja, wollen wir die Ines mal vorstellen, Jochen?
Ja, normalerweise, genau, sagen wir Leuten immer, sie sollen sich selber vorstellen, aber ja, vielleicht ist es ja auch gar nicht so schlecht, wenn wir das machen.
Ich habe irgendwo gelesen, dass es besser ankommt, wenn man von jemand anders vorgestellt wird.
Aber das kommt wahrscheinlich darauf an, von wem man vorgestellt wird. Das tut mir jetzt sehr leid, dass ich das will.
Ines ist Explosion, also wer ist Ines?
Genau, also wir kamen drauf, weil ich von einem Hörer eine Mail bekommen habe, der sich dafür interessierte, irgendwie ein bisschen mehr über Machine Learning, Natural Language Processing, beziehungsweise halt Spacey zu hören.
Und da dachte ich so, oh ja,
das stimmt, das wollte
ich doch auch selber schon immer mal gerne
machen und habe dann halt irgendeine Mail
an Ines geschrieben. Und Ines, du hast was mit
Spacey zu tun? Und genau,
ja.
Ines Nick.
Wir bei Explosion,
wir entwickeln Spacey,
eine Open-Source-Bibliothek für
Natural Language Processing in
Python. Und daran arbeiten
wir, daran arbeite ich seit
ein paar Jahren und
Und ja, damit verbringe ich auch einen Großteil meiner Zeit und wir entwickeln auch andere Produkte und Tools hauptsächlich für Softwareentwickler, die mit Machine Learning und vor allem auch mit NLP arbeiten.
Also quasi, ja, wir entwickeln Software für Softwareentwickler, um quasi den Alltag ein bisschen schöner und produktiver zu gestalten.
Das hört sich spannend an. Ich würde vielleicht vorstellen, dass wir so ein bisschen mit einer Einleitung anfangen für Menschen, die uns noch nicht so folgen können, weil die vielleicht im Thema noch nicht ganz so tief drin sind. Vielleicht nochmal so ganz kurz die Begrifflichkeiten klären. Was ist denn jetzt überhaupt so das NLP und was macht man damit und was für Features würde man denn sowas wie Spacey machen wollen und sowas vielleicht?
Ja, also grundsätzlich die Idee ist, wir als Menschen produzieren unglaublich viel Text und wir produzieren Text viel, viel schneller, als dass Computer schneller und effizienter werden. Das Internet ist voll mit Text, alles ist Text und wenn wir viel Text haben, kommen wir irgendwann an einen Punkt, wo wir einfach ein bisschen mehr über diesen Text herausfinden möchten.
Zum Beispiel, ja, und auch weiter, was ein bisschen über Stichwortsuche oder reguläre Ausdrücke hinausgeht.
Also du möchtest zum Beispiel wissen, wer macht was, wer ist das Subjekt, wer ist das Objekt, was für Personen kommen vor, was für Firmen, was für Konzepte, worum geht's hier, worum geht's hier nicht und so weiter.
Also ich kann den Kontext in einem Text erfassen, ist das richtig?
Genau, also du kannst natürlich in dem Text bestimmte Wörter suchen, aber irgendwann möchtest du ja wissen, okay, ich bekomme hier täglich ein paar Millionen E-Mails.
Worum geht es in den E-Mails? Welche E-Mails sind wichtig? Welche E-Mails sind nicht wichtig zum Beispiel?
Oder du hast Nachrichten, du möchtest gucken, was passiert in der Welt? Geht es hier um Apple, die Firma? Geht es hier um Apfel? Geht es hier um diese Thematik und so weiter?
Ist das Spam? Ist das nicht Spam?
Und das sind das eben entsprechende Dinge,
die natürlich abhängen, einmal vom Kontext,
die auch gar nicht unbedingt immer ganz einfach zu erfassen sind,
denn Sprache ist ja relativ komplex, Sprache ist sehr zweideutig.
Und oft sind das auch Dinge, die viel mehr zu tun haben
mit dem ganzen, mit dem größeren Kontext, die Welt, die Sprache.
Wie funktioniert Englisch? Wie funktioniert Deutsch?
Was sagt man so normal? Und was bedeutet das?
Hat das viel mit Linguistik zu tun?
Genau, also oft, oft, genau, Computerlinguistik ist auf jeden Fall auch ein Teil vom Bereich NLP, definitiv.
Ja, und es ist quasi eine Kombination.
Und heutzutage, was halt heutzutage funktioniert, was vielleicht früher nicht funktioniert hat oder nicht so gut ist,
dass wir tatsächlich mittlerweile relativ gut einem Computer beibringen können,
mehr oder weniger zu generalisieren
und quasi entsprechende
Vorhersagen zu treffen
anhand von Beispielen,
die wir ihm zeigen.
Und je nach Anwendungsbereich
klappt das mittlerweile sehr gut. Das heißt,
wir sind an einem Punkt, wo man auch wirklich
interessante Dinge damit bauen kann
und wo auch tatsächlich diese
Technologie
auch wirklich zum Einsatz kommt
in verschiedenen
Anwendungsbereichen, Firmen,
Alles Mögliche.
Ja, ja.
Früher, also ich hab da
auch relativ viel schon, was Textkategorisierungen
angeht und so
gemacht und zu der Zeit, das ist halt
auch schon lange her, aber
da waren halt so lineare Modelle das Mittel der Wahl
irgendwie, ne? Das war so.
Lustigerweise, selbst mittlerweile
immer noch, es gibt viele Problematiken,
wo wir nach wie vor Leuten empfehlen
würden, hey, so eine super
Oldschool-Methode, linear,
klappt immer noch besser.
schneller kannst du auch teilweise
heutzutage, selbst mit den hottesten
Modellen teilweise
nicht überbieten.
Aber es gibt natürlich andere Bereiche,
wo wir sagen, okay, gut,
da braucht man einfach ein bisschen mehr.
Und ja.
Ja, genau.
Also ich meine, da hat sich natürlich,
also so ein lineares Modell ist natürlich relativ einfach
und inzwischen
gibt es ja da irgendwie so,
was halt Neuronalen Netze angeht,
Deep Learning, irgendwie hat sich ja einiges getan,
so im letzten Jahrzehnt so ein bisschen.
Und ja, das ist natürlich auch schön,
dass man da jetzt irgendwie in dem Bereich
nochmal deutlich mehr rausholen kann.
Und was ich daran ja auch total faszinierend finde,
das ist jetzt auch eine relativ aktuelle Entwicklung
mit diesen ganzen Transformer-Geschichten,
dass man da tatsächlich irgendwie aus, ja,
quasi Text oder ungelabelten
Daten halt irgendwie
was lernen kann und dann
weniger gelabelte Daten braucht, weil
gelabelte Daten sind natürlich immer relativ schwer zu bekommen.
Ja, und ich glaube,
es löst
auch ein viel tiefer liegendes Problem,
was wir halt schon immer hatten, und zwar,
dass Sprache ja wirklich
auch nur im Kontext der Welt
und im Kontext
der Linguistik existiert.
Das heißt, wenn du jetzt ein Modell trainierst und
selbst wenn du dem nur beibringen möchtest, ist diese
E-Mail, Spam oder nicht.
Das Modell muss zusätzlich zu
dem tatsächlichen
Problem und den
entsprechenden Wörtern, die wahrscheinlich
meistens darauf hindeuten, ob es Spam ist oder
nicht, auch noch so viele andere Dinge
lernen. Zum Beispiel schon allein,
okay, wie funktioniert die englische
Sprache? Wie werden da die
Wörter meistens angeordnet? Oder auch einfach,
wie funktioniert
die Welt? Was sind Wörter, die
im Kontext der Welt
benutzt werden? Und wie passt das alles
zusammen. Und das ist
unglaublich viel Wissen, was
man eben auch einem Modell quasi immer
wieder beibringen muss, damit man überhaupt
das machen kann, was sie wollen.
Ja, genau.
Und du wirkst wirklich immer quasi
immer von vorne anfangen. Oder so war
es in der Vergangenheit. Und jetzt
Transfer Learning
nennt man das auch.
Eine Sache, die wir jetzt halt
können und die jetzt tatsächlich funktioniert, ist, dass wir
quasi
wissen, dass wir aus anderen
Prozessen gewonnen haben, quasi
transferieren können auf das neue Problem.
Also wir können quasi was vortrainieren,
was unserem Modell
quasi ermöglicht, schon ein bisschen mehr
zu wissen über die Sprache
und die generelle Welt und
die generellen Wörter und so weiter. Also wir
können quasi sagen, hier ist ganz viel
roher Text, guck dir
das an und wie es
zum Beispiel funktioniert ist, die Aufgabe
ist, hier sind
ein paar Wörter und wir lassen jetzt ein Wort
weg und dann lassen wir
unser Modell vorhersagen,
was das Wort sein könnte. Und das machen wir
relativ lange, bis
es hoffentlich eine ganz gute Gewichtung
aufgebaut hat und das nächste Wort vorhersagen kann.
Und es hat sich herausgestellt, dass diese
Aufgabe sich sehr gut generalisieren
lässt für andere Sachen. Das heißt,
die Gewichtungen, die wir da aufbauen,
die haben unglaublich viel Informationen
inkludiert quasi über die Sprache.
Was ja auch irgendwie Sinn macht, wenn du überlegst, okay,
was muss man
wissen oder lernen, um das nächste
Wort vorhersagen zu können.
Und das ist quasi so die Essenz von dem, was jetzt quasi ein bisschen neuer ist und was auch dafür sorgt, dass man eben relativ wenig gelabelte oder spezifische Daten braucht, um auch ein relativ komplexes neues Problem zu lösen, da man eben auf dieses generellere Wissen zurückgreifen kann. Also man kann quasi diese Gewichte vortrainieren. Und das ist die Idee.
Ja, ich, genau, letztens gab es auch irgendwie einen Blogpost von Facebook, da Jan LeCun oder, ach, den anderen habe ich jetzt vergessen, keine Ahnung, da nannten sie das irgendwie Self-Supervised Learning, weil es ja im Grunde gar nicht so wirklich unsupervised ist.
Man hat ja schon irgendwie, ja, ich meine, die Information, dass in dem Text das Wort gestanden hat und lernt jetzt eben daraus, dass man das als das, was man vorhersagen möchte, betrachtet. Oder eben Transfer Learning, ja, ist halt auch…
Ja, Terminologie generell im Bereich.
Was nennt man ein Modell?
Das, finde ich, ist leider ein bisschen unglücklich.
Das heutzutage, oder so, Language Model
wird halt für so viele Dinge benutzt.
Ja, da wünsche ich mir manchmal,
dass so ein bisschen die Terminologie ein bisschen klarer wäre,
weil das auch ein bisschen, glaube ich,
ja, Verwirrung stiftet.
Wie würdest du das denn definieren?
Was ist ein Language Model?
Das Problem ist halt, okay,
grundsätzlich ein Modell,
oder zumindest
traditionell, man nennt vieles Modell.
Manche Leute nennen den
Algorithmus ein Modell. Das ist also
quasi die Implementation, den
Code, den du dafür schreibst. Aber dann
gibt es natürlich auch das Artefakt, dass du
da trainierst. Also die
Gewichte, also quasi so eine
binäre Datei, die dann da rumliegt
und die du am Ende speicherst.
Und vielleicht das zusammen
kann man eigentlich so als Modell bezeichnen.
Dann, ich glaube, früher
Language Model haben wir früher auch gerne genannt.
Modelle, die wir trainiert haben für verschiedene Sprachen.
Aber das würde jetzt auch heutzutage viel benutzt
für eben diese Gewichte, die man trainiert,
auf der Basis von rohem Text.
Das ist also heute hauptsächlich, was Leute meinen,
wenn sie Language Model sagen.
Also okay, wir haben kompletten Text aus der Wikipedia
im Englischen runtergeladen und diese Embeddings trainiert,
indem wir das nächste Wort vorhergesagt haben.
Und die kann man jetzt weiter benutzen.
Und das ist jetzt, das ist ein Language-Motto.
Also es gibt da verschiedene,
es gibt verschiedene Definitionen oder verschiedene,
ja,
Verwendungen. Ja, es wird halt irgendwie in unterschiedlichen Kontexten
halt unterschiedlich, unterschiedlich
verwendet, ja. Und es ist ja auch was,
Leute, was nennt man Machine Learning, was nennt man
KI?
Oh, AI. Ist auch leider nicht immer so,
immer, oder AI, genau.
Ja, genau, da muss ich
mich auch immer dran gewöhnen, weil ich bin tatsächlich,
die deutsche Terminologie ist mir
nicht so nah, weil ich es halt nie,
Weil ich es halt nie gelernt habe auf Deutsch.
Also ich bin immer gewohnt, so auf Englisch drüber zu lesen.
Du bist auch gerade in Australien, ne?
Ich bin momentan gerade in Australien, ja.
Ein bisschen Social Distancing von Europa.
Genau, so weit wie möglich weg.
Ich glaube, viel weiter geht auch gar nicht.
Ja, also wie gesagt, ich freue mich drauf, wieder zurückzukommen.
Aber halt momentan ist, okay, gut, bringt ja auch keinem was,
wenn ich jetzt in der momentanen Situation da wieder in den Flieger steige.
Aber ich habe halt auch nie so,
ich habe zum Beispiel nie jetzt klassisch
Informatik studiert oder so.
Das merke ich teilweise im Vergleich,
dass manche Leute, die halt auf Deutsch programmieren
gelernt haben, da so
die deutsche Terminologie drauf haben.
Und da muss ich mich
auch erstmal reinlesen. Ich habe für
Spacey so einen Online-Kurs gemacht, den habe ich auch
in verschiedenen Sprachen übersetzt. Also ich nicht,
ich habe ihn auch nur auf Deutsch übersetzt. Mehr Sprachen
kann ich nicht. Aber andere
aus der Community haben uns dabei geholfen
und ich musste mich erstmal sehr reinlesen in
die deutsche Programmier-Terminologie.
So sagt man iterieren.
Also
Konsens ist Stein bei Ja.
Ja, ich will das auf Deutsch
sagen, das hört sich manchmal komisch an.
Ja, es ist sehr
eigenartig. Ich komme manchmal jetzt so
oder das Problem hatte ich jetzt letztens,
dass dann
irgendwie, ich weiß nicht,
Domain-Driven Design, ob das euch ein
Begriff ist, wo man, wenn man jetzt in einer
anderen Domäne unterwegs ist, also gar nicht
unbedingt jetzt, wenn es ums
Programmieren geht, sondern einfach fachlich
ist man halt irgendwas unterwegs, wo Leute halt ihre eigene
Sprache für
entwickelt haben, um sich überhaupt austauschen
zu können über das Thema, mit dem sie da zu tun haben.
Und da habe ich dann erstmal alles
nach Englisch übersetzt, weil ich das so schrecklich
fand, weil das geht gar nicht, wenn
da irgendwie so deutsche Wörter im Source Code stehen,
dann dachte ich so, jetzt muss ich unbedingt übersetzen.
Dann habe ich dann weitergelesen, dann hieß es so, naja,
nee, am besten immer die Originalbegriffe benutzen,
weil ansonsten ist das die totale Verwirrung.
Man weiß hinterher überhaupt gar nicht mehr, was was bedeutet.
Ja, das ist mir dann auch passiert.
Es ist irgendwie nicht so einfach.
Mit den unterschiedlichen Sprachen ist blöd.
Ja, oder Mischung halt. Gerade im IT-Bereich
ist ja voll oft so Denglisch irgendwie dann.
Ja, und ich meine, Programmieren
an sich, ich meine, Python ist
Englisch. Und auch so, du merkst
natürlich, du hast die Wörter, du programmierst
auf Englisch.
Oder schon allein, wenn du dir so eine deutsche
Tastatur anguckst. Die englische
Programmiersprachen sind meist für
die amerikanische Tastatur entwickelt worden.
Deswegen haben wir den Backtick an der
blödesten Stelle
und es ist eigentlich der Akzent.
Oder Backslash.
Ja, oder andere, oder die ganzen
Klammern zu tippen. Warum ist das
so nervig auf unseren
Tastaturen?
Ja, weil...
Irgendwer wollte unbedingt eine neue eigene Tastatur machen.
Ja, es ist anstrengend.
Ich hab immer mal überlegt, ob ich einfach mal
sagen soll, okay, ich lerne
die amerikanische Tastatur, weil es ja wirklich fürs Programmieren
einfach ist. Also einfach eine Taste zu haben, wo du
einen Backtick tippen kannst,
ist
einfach. Aber ich bin halt, ich hab mich,
ja, ich krieg das nicht mehr. Ich glaub, ich bin zu alt.
Ich bin da zu.
Ja, musst wahrscheinlich anfangen mit einer anderen.
Ja, oder bei mir ist das Problem auch immer, ich hab's dann immer mal überlegt,
ob ich dann nicht in meinem nächsten Rechner dann tatsächlich amerikanische
Tastatur oder englische Tastatur halt nehme.
Und dann dachte ich mir, aber ich hab jetzt noch ein paar andere.
Nichts da, die Tastatur.
Ja, also wenn man halt wirklich...
Ich hab auch gerne die Umlaute auf der Tastatur.
Also es stört mich, wenn ich jetzt nicht in Ö tippen kann oder so.
Ja, aber ich sag mal, die Sprache, wir tippen ja schon alles dann auf Englisch raus.
Also auch Kommentare und so würde ich jetzt mal schätzen, dass wir alle die auf Englisch schreiben.
Das macht ja auch irgendwie Sinn, wenn man irgendwie ein bisschen kollaborativ arbeiten möchte und so.
Und ja, es ist halt schon interessant.
Also ich glaube, Englisch ist halt, wenn man so ein Natural Language anguckt,
mit Sicherheit um Meilen weiter, als das irgendwie Deutsch sein wird.
Und Meilen ist wahrscheinlich noch zu wenig.
Einfach von der Masse an Sätzen, die so gesagt werden in den jeweiligen Sprachen und was man damit halt an Datenbasis irgendwie anfangen kann.
Aber auch einfach die Forschung, also generell die Forschung findet auf Englisch statt und natürlich, es gibt unglaublich viel interessante Arbeit auch, was NLP angeht, in anderen Sprachen und auch die Forschung, aber grundsätzlich muss man sagen, rein alle Sprachen, die Englisch ähneln, mit denen können wir momentan auch im Bereich Machine Learning am besten umgehen, weil da einfach die meiste Forschung stattgefunden hat.
Okay, interessant. Welche Sprachen ähneln Englisch?
Also natürlich so die romanischen Sprachen schon, also alles, also es ist halt so ein Spektrum, aber Chinesisch zum Beispiel eher nicht.
Also es ist eher, ich würde sagen, eher die Sprachen, die Englisch am unähnlichsten sind, sind durchaus auch weniger erforscht oder die Techniken, die veröffentlicht werden oder die geforscht werden und die Strategien für Machine Learning und so weiter, die sind halt schon meist optimiert für Englisch.
Und da ist natürlich auch die Motivation da für den Forscher zu sagen, okay, gut, du möchtest ja auch, das kann man ja auch den einzelnen Leuten da nicht ankreiden. Also du möchtest natürlich, wenn du auf einem Gebiet forschst, du möchtest deine Experimente vergleichen können mit anderer Arbeit, du möchtest sagen, hey, hier, cool, ich habe tatsächlich was entwickelt und was gemacht hier, das irgendwie besser ist als das, was vorher da war.
Und ja, die wichtige Arbeit funktioniert mit englischem Corpora.
Und das heißt, natürlich ist da eine Motivation da,
auch mit der englischen Sprache zu arbeiten.
Und natürlich ist einfach mehr und mehr Daten da.
Ja, auch einfach viel mehr Trainingsdaten.
Aber man muss auch sagen, okay, momentan,
wir sind am Punkt, wo man gar nicht mehr unbedingt so viele Daten braucht.
Man kann Daten selber erstellen, das ist ja auch ein Bereich, in dem wir arbeiten, also unser kommerzielles Produkt, wodurch wir auch Geld verdienen, weil wir machen ja unglaublich viel Open Source, was wir verschenken quasi, ist Prodigy, das ist ein Annotationstool, speziell entwickelt für Entwickler und Machine Learning.
Also die Idee ist, okay, oft, wenn du halt ein spezielles Problem löst, ist es oft nicht damit getan, dir einfach irgendein Modell aus dem Internet runterzuladen, das irgendjemand anders mal trainiert hat und das vielleicht ein bisschen ähnlich ist zu dem, was du machen möchtest.
Und da wir auch heute an einem Punkt sind, wo wir sagen, du brauchst gar nicht mehr Big Data Milliarden an Beispielen, auch ein paar Hundert, paar Tausend, damit kannst du echt, also wenn du es gut machst und wenn das gut durchdacht ist und du dir Gedanken machst, okay, wie strukturiere ich das Problem, kannst du damit echt super Resultate mittlerweile erzielen.
Das heißt, es ist auch komplett machbar, dass du sagst, hey, ich setze mich einfach hin und verbringe eine Stunde, gucke mir meine Daten wirklich an, überlege mir, wie label ich die. Und wenn das Tool effizient ist und du damit gut arbeiten kannst, kannst selbst du als einzelner Mensch innerhalb von einer Stunde ein Datenset erstellen, mit dem du wirklich was auch produktiv machen kannst.
Vielleicht da nochmal auf die Features könnten wir da nochmal eingehen.
Was macht denn Spacey jetzt genau mit einem Datensatz?
Also was kannst du damit alles bauen?
Also Spacey ist eine Bibliothek, mit der du moderne NLP-Systeme bauen kannst.
Also wir haben verschiedenste Komponenten, die du trainieren kannst.
Wir haben natürlich auch Pipelines, die man sich runterladen kann,
die wir vortrainiert haben.
Und für verschiedenste Tasks oder verschiedenste Probleme kannst du halt deinen Text reinfüttern
und du bekommst am Ende die Annotationen, die das Modell extrahiert hat, am Ende raus.
Also zum Beispiel fängt an bei Wortarten.
Du fütterst einen Text rein und das Modell kann vorher sagen, ist das ein Verb, ist das ein Nomen und so weiter, je nach Sprache.
Dann gibt es natürlich auch die Beziehungen der Wörter zueinander.
Ist das das Subjekt? Ist das das Objekt?
Das ist auch was, was man vorhersagen kann.
Und Spacey hat halt auch entsprechende Datenstrukturen,
die das halt auch abbilden können.
Denn du möchtest ja idealerweise nicht alles hier in der Liste,
hier im Dictionary haben,
sondern du möchtest wirklich alles effizient gespeichert haben
an einem Punkt.
Und du möchtest jedes Wort am Ende
zu jedem anderen Wort wieder zurückführen können.
Also du möchtest wirklich, okay, hier habe ich ein Wort im Kontext.
Wie hängt das Wort mit dem Wort zusammen?
wie hängt das mit dem Satz zusammen und da hat Spacey halt auch die Datenstrukturen, die dich damit effizient arbeiten lassen.
Named Entity Recognition, das heißt, man kann auch basierend auf einem Text voraussagen,
welche Wörter sind zum Beispiel ein Personenname, ein Städtename, Produktname, Firmenname und so weiter.
Und das ist natürlich vor allem spannend, wenn man das halt auf seine ganz spezielle Problematik zuschneidet.
Also wenn man spezielle Begriffe in seinem Bereich hat und dann kannst du wirklich ein Modell trainieren,
dass das entsprechend dir vorhersagen kann.
Und dann hast du halt ...
Ja, also alle Fachbegriffe für die Domäne irgendwie, ne?
Genau, und dann kannst du auch sagen,
okay, der Personenname, ist das jetzt das Subjekt oder das Objekt?
Und so weiter.
Oder andere Komponenten, wo wir halt gerade dran arbeiten
oder die man halt auch bauen kann.
Du kannst sagen, wenn du jetzt ein Pronomen hast,
so er bezieht sich das, auf wen bezieht sich das?
Also der Mann kommt nach Hause, er zieht sich die Schuhe aus.
Kannst du das Er zurück auf den Mann beziehen?
Das ist auch in vielen Kontexten sehr wichtig.
Denn das ist was, wenn wir das lesen, uns ist das relativ klar.
Wenn du das maschinell machst, ist es deutlich trickier
und auch nicht immer so eindeutig, wie wir das gerne hätten in der Sprache.
Ja, Text-Klassifizierung hast du ja schon mal angesprochen vorher.
Du kannst natürlich auch Labels für den ganzen Text vorher sagen.
Geht's hier um Sport? Geht's hier um Politik?
Geht's hier um Spam?
Das ist was, was du machen kannst.
Und Spacey lässt dich halt diese Komponenten zu einer Pipeline zusammenbauen.
Und natürlich zwischendurch, es kann auch sein, dass du sagst,
hey, ich möchte einen Baustein, der soll einfach nur richtig oldschool,
ein paar reguläre Ausdrücke sein.
Denn in der Praxis ist das nach wie vor, es macht Sinn, du trainierst ein System, richtig fancy, Transformers, Named Entity Recognition, geil, sagt Firmennamen voraus, funktioniert super und dann, weiß nicht, zeigst es deinem Chef, der gibt irgendwas ein mit deinem Firmennamen drin und das Ding erkennt den eigenen Firmennamen nicht, weil der irgendwie komisch ist und überhaupt nichts Ähnliches in den Trainingsdaten war.
Jetzt können sie sagen, oh, da mache ich jetzt nochmal neue Trainingsdaten, tune meine Hyperparameters und verbringe dann nochmal ein paar Wochen dran und am Ende kriegt der unseren Firmennamen hin, aber kann irgendwelche anderen Sachen nicht mehr. Oder du sagst, ja geil, haue ich jetzt einfach einen regulären Ausdruck drauf und dann kriegt der unseren Firmennamen immer richtig hin. Und in der Praxis, so löst man viele dieser Probleme.
Und so sehen auch praktische Systeme aus. Du hast vielleicht einen super heißen, modernen Baustein, der halt die neuesten Transformer-Modelle verwendet und dann hast du vielleicht einen Text-Classifier, der noch Oldschool, lineares Modell, weil es halt einfach gut funktioniert.
Dann hast du noch ein paar Regeln obendrauf und am Ende hast du halt eine Repräsentation von einem Text, wo alle diese Informationen drin ist, die du dann verwenden kannst, um was auch immer dein eigentliches Ziel ist, zu erreichen. Denn das ist ja auch nochmal ein Problem. Oft die tatsächlichen Ziele, die man hat und die Probleme, die man lösen möchte, die sind ja nicht immer eins zu eins übertragbar in ein Machine Learning Modell, das man trainiert.
Das ist auch sowas, okay, so stellen sich das manche Leute manchmal vor, unsere Firma möchte, dass wir das und das und das auslesen und das am Ende so und so in die Datenbank eingeben, kann man versuchen wirklich von A nach B komplett ein System vorhersagen zu lassen, ist aber oft in der Praxis nicht sonderlich nützlich und auch nicht, oft muss man sich hinsetzen, okay, wie kann man das Problem runterbrechen in kleinere Bausteine,
Die man auch tatsächlich effektiv mit den technischen Möglichkeiten, die wir momentan haben, lösen kann.
Ja, es ist auch immer wieder, ich meine, ich finde das ja tatsächlich erstaunlich, dass sich im Grunde alle Probleme letztendlich dann doch, auch vielleicht manchmal in mehreren Stellen,
Schritten, aber auf eben sowas Simples
wie, ja, binäre Klassifikationen
quasi runterbrechen lassen, weil
das ist,
ja, von binärer Klassifikation zu
Multilabel, also dass man halt mehrere Labels
jetzt für den Text vorher sagt oder so, ist eigentlich quasi auch das
Gleiche. Und, ja,
dann gibt's halt noch Regression und dann gibt's
halt noch Clustering und dann war's das im Grunde schon.
Aber man kann damit halt eine Menge machen.
Dann dachte ich, so, hm, damit soll man wirklich alles machen
können. Aber ja, es geht schon, aber
man muss sich halt dann doch ein bisschen,
ja, manchmal... Ich glaube, es geht halt
auch so ein bisschen ums Mindset, aber das ist ja auch
beim Programmieren generell
nicht anders. Also wenn du jetzt sagst, okay, ich habe
hier ein Problem, das möchte ich lösen mit
Python, dann musst du dir auch überlegen, okay, was habe ich hier zur Verfügung?
Was sind so diese Abstraktionen?
Wie strukturiere ich
das? Was macht Sinn?
Was macht keinen Sinn?
Und das ist quasi der Job,
den du dann als Softwareentwickler löst.
Und so ähnlich ist es auch
im Bereich Machine Learning. Ist auch quasi
eine Art zu programmieren.
Ist halt nur ein bisschen anders
und man hat halt noch diese Daten als die
Komponente. Im so klassischeren
Programmieren hast du halt
im Programm, da geht was rein, kommt immer was
raus. Hier hast du Code plus Daten.
Ja, beziehungsweise
das, was man programmiert,
ist nicht so sehr
ein Algorithmus, aber man legt eher die Daten
für ein Modell fest, das dann irgendwie
tatsächlich dann
irgendwie was macht. Das fand ich auch interessant,
das gab es, glaube ich, 2018 gab es
einen Vortrag von André
Capati, ich weiß gar nicht, wie das auch
gesprochen wird. Software 2.0
oder Software 2.0. Genau, also das ist auch
eine sehr ähnliche Idee.
Genau, da sagt er auch, ja, also
früher haben wir halt sozusagen
eine, also wir haben
ein Problem und dann haben wir
einen Lösungsraum für dieses Problem und
wenn wir jetzt das explizit programmieren, dann
nehmen wir uns einen ganz winzigen
Punkt aus diesem Lösungsraum raus
und definieren den halt exakt.
Aber tatsächlich kann man ja auch vielleicht einfach eben
per Daten so eine Region
aus dem Lösungsraum rauszeigen und
dann halt ein Optimierungsverfahren
verwenden, um tatsächlich die
Lösung zu finden, also quasi
per Machine Learning
ein Modell trainieren, das dann halt sozusagen
die Lösung
modelliert und
dann verändert sich der
Job als Programmierer halt so ein bisschen
und ja, das fand ich
auch sehr interessant. Ich dachte so, ja, das ist natürlich, das hebt
es dann wieder auf eine etwas abstraktere Ebene.
Dann werden natürlich die Tools, die man dafür braucht,
halt extrem wichtig und sehr
interessant. Genau, und auch die
Daten einen ganz anderen Stellenwert bekommen. Und das ist halt
auch was, was meiner Meinung nach nach wie vor nicht genug
Aufmerksamkeit bekommt.
Also auch so als Analogie jetzt,
wenn du programmierst, klassisch
schreibst du deinen Code,
dann hast du einen Compiler, da geht dein
Code rein und am Ende kommt ein Programm
raus. Und jetzt
mit Machine Learning hast du
deine Daten, du hast einen Algorithmus
und am Ende trainierst du dein Modell und dein Modell
kommt raus. Und wenn du jetzt
feststellst, okay, dein Modell ist nicht sonderlich
geil. Oder im klassischen Programmieren,
dein Programm, was am Ende rauskommt
aus deinem Compiler, macht nicht das, was es
soll, ist zu langsam, funktioniert nicht,
hat Bugs. Was machst du?
Du könntest natürlich hingehen und sagen,
okay, da gehe ich jetzt erstmal an den
Compiler ran und schreibe mir meinen eigenen Compiler.
Machst du aber normalerweise nicht.
Normalerweise, du gehst in deinen Code rein
und veränderst deinen Code
und passt den an und fixt den,
damit dein Programm am Ende besser wird.
Ich will damit nicht sagen, es gibt super viel Arbeit,
die man im Bereich Compiler noch machen kann,
aber das ist normalerweise so nicht das Erste, was man macht.
Und analog natürlich, Machine Learning,
wenn dein Modell nicht das macht, was es soll
und du damit nicht zufrieden bist,
kannst du hingehen und deinen Algorithmus tweaken.
Und natürlich kann sein, dass da ein Bug drin ist,
der dafür sorgt, dass dein Modell nichts lernt.
Aber meistens, was du machen solltest, ist, dir die Daten angucken.
Und du kannst das Schöne am praktischen Machine Learning
oder quasi praktischen NLP, wenn du es halt wirklich anwendest, auf Probleme ist.
Dass du quasi selber entscheiden kannst, wie schwierig oder wie einfach du dir quasi das Problem machst.
Du kannst ja kontrollieren, wie du deine Daten annotierst, wie du die aufbereitest,
wie du das Problem runterbrichst.
Und das ist, glaube ich, auch, wie sich zum Beispiel die angewandte Praxis
so ein bisschen unterscheidet von der reinen Forschung.
In der Forschung ist das Ziel ein ganz anderes.
Du hast ein Problem, du hast quasi eine Benchmark, du hast einen Algorithmus, den du entwickelt hast und dann, es macht natürlich Sinn, wir wollen alle unsere Algorithmen am selben Problem vergleichen, denn nur so kannst du sehen, ist das, was ich jetzt hier mache, besser als das, was jemand anders gemacht hat. Macht meine Idee Sinn, funktioniert das?
Das heißt, da setzt du dich typischerweise nicht hin und änderst das Problem, denn dann hat deine ganze Forschung keinen Sinn mehr. Aber das sind eben ein bisschen die anderen Denkweisen, die man da hat und das ist auch, glaube ich, etwas, was einfach die angewandte Praxis unterscheidet.
Und auch jetzt, um es wieder zurückzuführen, ein bisschen auf das, was wir so machen, was auch so ein bisschen die Philosophie von Spacey unterscheidet von vielleicht anderen Bibliotheken und auch die Gedanken, die wir uns machen müssen. Unsere Nutzer sind ja Entwickler, die wirklich in der Praxis diese Systeme bauen.
Und das heißt, wir müssen natürlich Entscheidungen treffen, die das besonders effizient und einfach machen, aber auch die Möglichkeit geben, eben diese Bausteine entsprechend zusammenzusetzen, manche Bausteine wiederzuverwenden und eben eine flexible Möglichkeit zu haben, diese Systeme halt zu bauen und auch zu testen und auch zu sehen, okay, wenn was nicht funktioniert, möchtest du ja gucken, wo ist das Problem?
Das ist sehr schwer, wenn alles so eine Blackbox ist und du am Ende nicht weißt, was passiert da. Da geht was rein, am Ende kommt was raus und ja, das war's halt.
Ja, genau. Und das ist natürlich auch sowas, was man wahrscheinlich im akademischen Bereich nicht so häufig hat, dass man eben auch mit den Annotationstools viel zu tun hat oder auch mit, so was ich auch immer häufig sehe, dass man, dass halt dieses, wie speichert man Daten, wie reagiert man darauf, wenn sich Daten verändern oder so, ist halt ein ganz wichtiger Teil. Dieser ganze Data Engineering Aspekt ist halt auch total wichtig. Und den hat man halt eigentlich gar nicht, wenn man jetzt mit fixen Corpora arbeitet, die immer gleich sind.
Wie gesagt, das ist ja auch nicht unbedingt was,
wo sich ein Forscher mit beschäftigen möchte.
Aber ich glaube, es ist eher was, was man auf der anderen Seite,
wenn man eben im angewandten Bereich arbeitet,
sich halt bewusst machen muss,
okay, es gibt so ein bisschen den Momentan,
viele Leute sind unglaublich heiß drauf
und wollen sich halt so, okay, die letzte Forschung direkt rein,
ins Blut, direkt injizieren, so schnell wie möglich.
Und in manchen Bereichen geht das.
und natürlich, wir haben wirklich in den letzten Jahren
vor allem sehr schnelle Adoptionen gesehen
von Dingen, die in der Forschung entwickelt wurden
und auch praktisch
sehr schnell auch
wendbar
waren
und natürlich, der Kreislauf
wird schneller und wenn irgendwas Interessantes
rauskommt,
dann dauert es auch
nicht mehr so lange, bis man auch tatsächlich
was Sinnvolles damit machen kann, aber es ist halt nicht immer so
und es ist auch nicht immer nur, weil irgendein
Paper rauskommt, was halt spannend
klingt, heißt es nicht, dass es unbedingt
das ist, was
dein System auf jeden Fall jetzt braucht.
Und ja.
Wie gesagt,
für viele Probleme,
selbst mit einem oldschool linearen Modell
kannst du oft
viel machen. Oder wenn
dein lineares Modell das überhaupt nicht hinkriegt,
heißt es auch oft, dass
vielleicht die Definition
deines Problems eher das Problem
ist als
der genaue Algorithmus.
Ja, ja, ja, ja.
Ja.
Genau.
Ihr macht ja auch noch
im Prodigy
dieses Annotationstool.
Das ist auch alles quasi so, wie
Spacey auch Python, beziehungsweise
wahrscheinlich dann im Frontend irgendwie was anderes ist,
weiß ich gar nicht.
Ja, also Frontend natürlich, du brauchst immer ein bisschen JavaScript,
damit es im Browser läuft und es ist
so eine relativ leichte React-App,
Aber ja, Backend ist alles in Python
und die Philosophie ist auch wirklich,
okay, es ist ein Entwicklertool, du möchtest damit programmieren.
Das war uns immer unglaublich wichtig.
Und ja, wir freuen uns auch,
das wurde halt super gut angenommen.
Prodigy ist sehr erfolgreich.
Und das ist auch was, was wirklich, glaube ich,
Entwickler anspricht.
Und das ist auch die Art von Tools,
die wir entwickeln wollen und natürlich auch die Art von Tools,
die wir auch gerne benutzen wollen.
Also ich möchte, wenn ich mit etwas arbeite,
ich möchte programmieren können.
wenn ich irgendwas
möchte, wenn ich
weiß, wie ich irgendwas in Python machen kann
und ein Tool gibt mir die Möglichkeit,
da einfach ein bisschen Code zu schreiben,
denke ich, cool, super.
Vor allem, weil ja auch in dem Bereich
fast alles andere in Python
läuft.
Wenn du jetzt
Spacey benutzt, andere Bibliotheken,
die Modelle, das ist meistens
Python. Du kannst unglaublich viel
machen, was das
Laden von Daten, Streamen
und so weiter angeht.
das ist alles möglich, das ist alles gelöst.
Und da ist auch unsere Philosophie generell,
wir wollen es Entwicklern ermöglichen, Code zu schreiben.
Wenn du Code schreiben kannst, ist es immer besser.
Du möchtest nicht nur einen Button haben, auf den du klicken kannst.
Ein Button, auf den du klicken kannst, ist cool,
aber wenn du mehr machen möchtest, solltest du die Möglichkeit haben.
Und für Entwickler ist einfach Code die beste Art und Weise.
Was kann man denn machen mit den Daten,
um die vorzubereiten oder aufzubereiten
für Spacey oder mit Spacey sogar
mit den Daten?
Also es kommt natürlich darauf an, was man machen möchte.
Also meinst du mit Vorbereiten, okay, du hast halt
rohen Text und du möchtest
halt etwas damit trainieren und du möchtest den
annotieren?
Ja, also
erst mal, die Daten
musst du natürlich annotieren und
die in Format bringen, damit
du zum Beispiel dein Modell damit
trainieren kannst. Und
eine Option ist, du kannst ganz
Oldschool in einer Excel-Tabelle machen,
du kannst es ganz Oldschool
in JSON machen
und das wirklich eintippen, von hier bis da
ist eine Person oder das und das ist
das Label, so wird es auch oft gemacht.
Dann natürlich mit einem Tool wie Prodigy
sagen wir, hey, du kannst einfach deine Daten
rein streamen, du kannst ein bisschen
klicken, du kannst auch
Sachen ein bisschen automatisieren, das ist halt auch immer cool,
denn
als Menschen,
wir sind einfach, es gibt
viele Dinge, die wir einfach schlechter können,
als ein Computer. Ist halt nun mal so.
Unser Erinnerungsvermögen
ist schlecht, wenn es darum
geht, Dinge zuverlässig,
immer konsistent,
genau gleich zu machen, können wir nicht.
Und das sind nun mal
Dinge, dafür haben wir Computer entwickelt,
das kann ein Computer halt besser. Deswegen sagen wir halt,
wenn du halt Dinge,
die sehr
ein bisschen
stupide, wir nicht sagen stupide,
aber wo du immer das Gleiche machen musst,
das kann halt auch ein Computer machen. Du kannst ein Computer sagen,
okay, ich bin mir relativ sicher, dass Berlin eigentlich immer eine Stadt ist.
Und wenn nicht, gut, dann kann ich das korrigieren.
Das heißt, du kannst dir Workflows bauen, wo du sagst,
hey, ich habe hier ein paar Beispiele für das,
was ich quasi in meinen Daten labeln möchte.
Das mache ich jetzt automatisch und gucke mir das nur an.
Und wenn irgendwas falsch ist, dann korrigiere ich das.
Oder du hast schon ein Modell, das sagt ein paar Dinge voraus,
ist aber nicht so gut.
kannst du sagen, cool, Modell, label mir das schon mal
und ich gucke mir das noch an.
Das ist was, was du machen kannst.
Und am Ende, okay, am Ende kriegst du die Daten raus
und kannst dann dein Modell damit trainieren.
Aber da fängt es halt auch, ich würde sagen, da fängt es halt erst an.
Das ist halt der erste Schritt.
Und das Lustige ist oft, wenn man halt hört,
wie Leute sich über diese Themen austauschen,
klingt es danach, als wäre es dann schon vorbei.
Cool, du labelst so ein bisschen deine Daten,
dann trainierst dein Modell, fertig.
Aber natürlich ist es immer ein iterativer Prozess. Dein Modell musst du immer weiter trainieren, genauso wie du deinen Code auch ständig refactors und weiterentwickelst. Das ist nicht statisch. Oder eine Webseite. Du kannst eine Webseite dir entwickeln lassen, den Auftrag geben, aber die musst du halt auch updaten.
Und wenn du jemanden beauftragst, dir eine Webseite zu machen,
willst du normalerweise auch, dass die Webseite,
dass da eine Möglichkeit ist, dass du die auch später updaten kannst
und du nicht jedes Mal deinen Webmaster anrufen musst,
wie in den 90ern oder so.
Und deswegen, okay, einmal du hast deine Daten,
meistens irgendwas geht schief, irgendwas funktioniert nicht.
Dann guckst du dir oft an, okay, was sind die Probleme?
Was könnte das drüber aussagen?
Da musst du ein bisschen, oft auch, okay, ein bisschen logisch drüber nachdenken.
Okay, wie funktioniert das Modell? Was ist hier vielleicht das Problem?
Was haben die Beispiele gemeinsam, die halt nicht so gut funktionieren?
Vielleicht brauche ich auch einfach ein bisschen mehr Daten.
Ich habe nur sehr wenige Beispiele aus diesem Bereich.
Mal gucken, wie es funktioniert, wenn ich einfach ein bisschen mehr hinzugebe.
Oder vielleicht, anstatt zu sagen, ich habe jetzt ganz spezielle Kategorien für Stadt, Kreis, Bundesland oder so, vielleicht mache ich es ein bisschen allgemeiner, denn oft ist das ja, vielleicht macht es so, dass die Modelle ein bisschen einfacher sagen, okay, du musst nicht nur im Kontext erkennen, handelt es sich um eine generelle Ortschaft, ein Land, ein Kontinent, ein Kreis, ein Bundesland.
Und das ist oft vielleicht ein bisschen einfacher
im Kontext vorher zu sagen.
Und dann kannst du immer noch sagen,
okay, ist das, sobald ich weiß, da geht es um eine Lokalität,
habe ich einen zweiten Prozess, der dann sagt,
okay, der grenzt das ein bisschen mehr ein und so weiter.
Das sind alles die Entscheidungen, die man halt treffen muss,
die auch oft sehr spezifisch sind und darauf ankommen,
was man halt für ein Problem lösen möchte.
Ja, also so in der Praxis kriegt man dann immer oft so,
was ich bei Textkategorisierungen
dann die ganze Zeit gemacht habe,
war halt so, in einem Preisvergleich
Angebote in Kategorien sortieren
und da ist es halt zum Beispiel,
merkt man dann, wenn man viele Angebote
hat und auch viele immer neu dazukommen von
irgendwelchen Shops, die man vorher noch nicht gesehen hat,
dass es unter Umständen sehr sinnvoll ist, so eine Kategorie
zu haben wie
alle Dinge, für die wir keine Kategorie haben, weil
ansonsten verteilen die sich halt
in alle Dinge, wo man eine hat
und das ist gar nicht gut, weil dann
Und dann denkt man sich, wo kommt dieser Kraml mal her?
Ja, genau.
Einerseits willst du dir natürlich vorher idealerweise Gedanken machen,
wie ordne ich das ein.
Du möchtest auch nicht, dass du während du das annotierst,
dass jeder dann einfach mal,
oh, hier habe ich noch eine Idee für eine Kategorie.
So stellen sich das auch manchmal Leute vor,
aber das ist natürlich nicht sinnvoll.
Aber andererseits musst du dir auch überlegen,
okay, wie gehe ich damit um?
100 pro, du hast 1000 Beispiele annotiert.
Und dann denkst du, ja, Mist,
nee, hätte ich jetzt doch noch mal eine andere Kategorie machen sollen.
Und dann willst du einen Workflow haben, bei dem du das relativ easy machen kannst und wo du nicht sagst, ja toll, jetzt muss ich nochmal ganz von vorne anfangen oder ja, jetzt, keine Ahnung, jetzt habe ich meinen ganzen Fortschritt hier verloren und so weiter.
Also das ist alles richtig. Und noch ein ganz anderes Thema, oder ein ähnliches Thema ist, du enkodierst immer eine gewisse Voreingenommenheit in dein Modell. Das liegt schon daran, dass Sprache ist voreingenommen und das ist ja auch nicht unbedingt schlecht.
Also die Idee, okay, wenn du jetzt irgendwelche Texte aus den 60ern analysierst, da gibt es bestimmte Dinge, da kommen halt mehr Männer vor und keine Frauen, da ist die entsprechende Sprache gewählt.
Wenn du dir da, oder wenn du dir, weiß nicht, Hasskommentare auf Twitter analysieren möchtest, da ist, das ist auf jeden Fall relativ speziell und du möchtest ja auch, dass das Modell sowas sieht, aber du möchtest nicht unbedingt, dass dein Chatbot am Ende Twitter-Kommentare generiert, genau, oder du trainierst dein Modell für Personennamen und da in deinen Beispielen, da haben alle so schöne deutsche Namen wie Jochen und das funktioniert auch total super
und dann setzt du das in der Praxis ein,
wo auf einmal Leute nicht so typisch klassische deutsche Namen haben
und dann geht das nicht.
Und dann können die Leute deine Tools nicht nutzen
oder haben dann ganz komische Probleme.
Und das ist natürlich auch was,
dass du erst rausfindest, wenn du mit den Daten arbeitest
und da tatsächlich iterierst.
Und...
Ja, ich glaube, das ist auch
das stellen sich viele Leute
meistens dann zu einfach vor.
Ja, es ist
ja, und gute Tools
an der Stelle. Sprache ist
messy irgendwie, ja.
Ja, und es macht auch spannend,
aber
es ist durchaus, also man, ich glaube,
ja, man kommt nicht drum rum,
sich auch wirklich Gedanken zu machen.
Ja, von Ärger.
es klingt so, ah, Künstliche Intelligenz
macht das alles für uns.
Nein, wenn du es benutzen möchtest
und da wirklich,
und nicht nur, du musst dir Gedanken machen, du solltest dir Gedanken machen.
Ich finde es wichtig, dass wir uns alle
Gedanken machen über das, was wir
entwickeln,
was wir erreichen wollen, wie wir das
machen, ob es Sinn macht,
was da für Probleme auftreten
können und eben auch,
wie es funktioniert. Ich glaube, es ist wichtig
zu verstehen, grob,
wie funktionieren diese Modelle
was passiert da, auf welcher Basis
machen die Vorhersagen
und was bedeutet das am Ende
und das bedeutet nicht, dass
jeder genau im Detail
Machine Learning verstehen muss
genauso wie natürlich, wenn du dein Auto fährst
musst du nicht verstehen, wie das Auto genau
funktioniert, aber bis zum
gewissen Grad ist es durchaus wichtig
und deswegen finde ich es auch
teilweise problematisch
wenn das so ein bisschen in
manchen Tools oder in manchen
Produkten so komplett wegabstrahiert
wird. So, uh, gib irgendwas ein, unsere
magische künstliche Intelligenz macht das alles
für euch. Und ich glaube,
da das Problem ist, das ist halt
schon allein
für die
Benutzer das deutlich
intransparenter macht, was da eigentlich
passiert. Obwohl
eigentlich, glaube ich, auch der Endbenutzer sollte sich überlegen,
okay, was geht da ab?
Was, oder wenn, okay,
eine KI macht das. Die erste
Frage sollte sein, okay, womit wollt ihr die trainieren?
oder auch, genau, in der Medienberichterstattung.
Okay, cool, irgendwas mit KI, auf welcher Basis denn, was macht das?
Und das einfach ein bisschen kritischer zu hinterfragen
und ich glaube, dahin kommen wir nur, wenn wir halt, ja, auch dafür sorgen,
dass jeder so ein bisschen grob eine Idee hat, wie das so funktioniert
und das ein bisschen einschätzen kann.
Ja, das ist momentan halt so eine Übergangszeit, wo teilweise die Erwartungen halt total übertrieben sind, auf der anderen Seite halt nicht klar ist, was alles an tollen Sachen schon geht, wo man sich denkt, wo dann Leute sagen, ja, das geht ja dann auf keinen Fall und man denkt so, ja doch, eigentlich schon, das geht ja schon.
Das ist halt ein bisschen undiintuitiv, was auf einmal funktioniert und was halt nach wie vor schwer ist, weil es halt auch nicht immer proportional ist zu dem, was man sich so vorstellt.
Und es ändert sich halt gerade und dann hat man mühselig gelernt, dass dies oder jenes nicht geht und dann ist das Wissen ja auch nur ein paar Jahre alt und dann plötzlich ist es aber schon veraltet und das geht in anderen Bereichen ja nicht so. Da stimmt das halt alles noch, wenn man das mal gelernt hat und ja, das macht halt viele Verwirrungen irgendwie auf allen Ebenen.
Ja, es ist auf jeden Fall eine spannende Zeit, aber ich glaube, es gibt viele Möglichkeiten und ich glaube auch, es gibt viele Anwendungsbereiche, wo auch wirklich diese neuen Technologien einen großen Unterschied machen können.
Das würde mich jetzt tatsächlich auch nochmal interessieren, also was für Anwendungsbereiche es denn da für alles gibt. Also Chatbots haben wir jetzt irgendwie schon gesagt oder jetzt Nachrichtenportale, die irgendwelchen Content generieren möchten oder sowas.
Ja, also ich meine, eigentlich im Endeffekt, klar, alles, wo du halt Text hast und was damit machen möchtest, aber tatsächlich, was ich immer sagen muss, es gibt natürlich so wow, fancy Dinge, die Leute entwickelt haben, die ganz cool klingen und im Endeffekt vielleicht gar nicht so, ja, so einen großen Unterschied machen praktisch.
Und da gibt es viele Dinge, die uns im Alltag begegnen, die relativ langweilig klingen, wo du aber dann siehst, oh, das macht wirklich was. Oder auch schon allein für eine Firma intern, wenn die irgendwelche Dinge optimieren, die vielleicht vorher von Menschen manuell gemacht wurden oder wo eben entsprechende Fehler passieren können, den man so ein bisschen vorbeugen kann.
ich weiß nicht, die Zentralbanken ihren Zinssatz besser anpassen können.
Das klingt erstmal super lame, ist jetzt nicht,
nee, das ist jetzt als Beispiel so, so beginn, next,
aber das ist tatsächlich was, was entsprechend auch einen sehr positiven Einfluss hat
auf die Welt, auf die Wirtschaft, unser generelles Zusammenleben,
also auch komplett, das ist noch nicht mal so ein Beispiel, wo du sagst,
hier Finance, Evil,
sondern das ist
objektiv zu sagen, okay gut,
davon
haben wir eigentlich alle was.
Jetzt
als Beispiel, aber auch
ja, also
ich würde schon sagen,
die
Sachen,
die relativ gut funktionieren,
sind nicht immer die
sexiesten, wie man so gerne sagt,
aber
ja.
Ja, ich meine, ich kenne es halt
häufig, ich weiß nicht, ob das jetzt die Welt wirklich
besser macht, aber es wird viel verwendet
eben in diesem ganzen Bereich, Werbung
irgendwie automatisieren
in gewisser Weise.
Da kann man sich, glaube ich, schon, da kann man sich tatsächlich
überstreiten.
Was passiert eigentlich, wenn man so etwas wie
Spacey auf Python als Sprache
lassen würde, also Text in Python
hatte eine Programmiersprache.
Also Spacey jetzt an sich
ist schwer zu sagen,
weil natürlich die Implementationen,
die wir jetzt entwickelt haben, die sind natürlich so ein bisschen
getönt auf tatsächlich die natürliche Sprache.
Aber es gibt sehr interessante Projekte
zu
Source-Code
Analyse
mit Machine Learning. Ich glaube GitHub hat dazu
auch was gemacht.
Das war sehr spannend und
ja, es gibt auch ein paar Projekte, wo du
halt siehst, oh cool,
Auch dieser generative Ansatz, der funktioniert ja auch.
Du kannst ja auch sagen, basierend auf diesen Wörtern
oder diesen Tokens im Programmierensinne,
sage die Nächsten voraus.
Und so kannst du tatsächlich, und dann kannst du natürlich als,
ja, du kannst natürlich sagen, was am Ende raus,
das Ding produziert, muss natürlich gültiger Code sein,
der auch läuft.
Und so haben auch Modelle entwickelt,
die natürlich dann
programmieren können, also
quasi reflektieren können, was sie
irgendwie, was andere Leute auf GitHub
gepostet haben. Oder der super
Autocompetition oder sowas, das ist ja irgendwie dann auch
relativ nah dran. Das ist zum Beispiel ein Bereich,
wo ich sage, okay, das macht natürlich Sinn
oder auch, wenn jetzt rein theoretisch, stell dir
vor, du könntest sowas auf, wenn du hast eine
riesen Codebase und du könntest sowas trainieren
für deine eigene Codebase,
das wäre zum Beispiel noch mal cooler
als jetzt, okay, auf der Basis von
vom ganzen Internet oder du hast, du
finden.
an mit so einem relativ
generischen Modell, das jetzt irgendwie auf
GitHub alles mögliche gesehen hat, dann passt das
so ein bisschen an mit deiner Codebase und
dann könnte es zum Beispiel dein Editor sagen,
ja, hier hast du aber einen Namen benutzt,
der irgendwie sieht
komisch aus oder diese Variable
das sieht irgendwie,
das passt nicht und dann kannst du sagen, ah ja,
stimmt, das war nicht so guter Stil
oder stimmt, so machen
wir das ja eigentlich nicht in dieser Codebase. Das ist
zum Beispiel ganz spannend, aber das ist auch wieder
sowas, das ist cool,
Aber ist jetzt vielleicht nicht so
hypig wie, wow,
AI schreibt jetzt,
programmiert jetzt für uns.
Aber man muss eben auch sagen,
auch selbst wenn du eben solche Modelle
trainierst, die eben
die nächsten Wörter vorhersagen, die können super
interessante Dinge ausgeben.
Aber im Endeffekt,
dein Modell ist kein Programmierer.
Dein Modell kopiert
Programmierer.
Genauso wie wenn du jetzt irgendwie
so ein Modell fragst
zu medizinischen
Themen oder so, auch wenn das das ganze Internet
gelesen hat, das kann sich
dann als Doktor ausgeben oder so,
als Arzt ausgeben oder es kann sich als
es kann genau
diesen Text produzieren,
aber es kann nicht unbedingt
Krebs heilen, weil es eben
nur das
repliziert, was
existiert
an Text über
die Heilung von Krebs zum Beispiel.
Und deswegen, ich glaube auch so, brauchen wir bald keine Programmierer mehr, ich finde das ist immer ein bisschen, ich finde auch, man kann sich Webentwicklung angucken, das ist ein ganz gutes Beispiel, da ist einfach ein paar Jahre voraus, die Tatsache, dass jeder, jedes Café jetzt sich eine Webseite einrichten kann, bedeutet nicht, dass wir keine Webentwickler mehr brauchen.
Im Gegenteil, das ist als Beruf gefragter denn je. Es ist nur, ja, bestimmte Teile der Technologie sind halt zugänglicher, aber es gibt nach wie vor genug Leute, die daran arbeiten und es bedeutet auch, dass Firmen viel, viel mehr investieren.
Jede Firma hat große Abteilungen, die sich halt mit Web, Apps, User Experience und so weiter beschäftigen.
Das ist ganz normal.
Und das geht auch nicht zurück, nur weil sich jeder jetzt irgendwie einen Online-Blog einrichten kann.
Was sich halt vielleicht dann doch verändern könnte, ist halt irgendwie die Art und Weise, wie man sowas macht.
Also dass man halt jetzt nicht vielleicht pure Syntax schreibt, sondern vielleicht irgendwie auch logische Gedanken irgendwie formulieren kann
und die Syntax dafür dann übernommen wird vom Alkoholismus.
Ich weiß nicht, ob das wirklich gehen kann.
Ja, also ich glaube auch generell für andere professionelle Anwendungen oder es gibt ja auch viele Leute, die professionell arbeiten, ob es jetzt Buchhalter sind, Anwälte, Ärzte, die benutzen ja auch professionelle Software und die benutzen auch Tools und die benutzen auch Dinge, mit denen sie auf eine gewisse Art irgendwie programmieren.
Auch jemand, der nur in Excel arbeitet oder auch jemand, der sich nur irgendwelche Suchquerys eingibt in irgendeine Datenbank oder so, das ist auch eine Art von Programmieren und das sind auch alles Tools, die man entsprechend verbessern kann oder wo man einfach dem Nutzer bessere Tools zur Hand geben kann, um einfach besser arbeiten zu können.
Und das heißt nicht unbedingt, dass man ein magisches KI-Modell hat, das auf einmal den Anwalt ersetzt oder den Arzt ersetzt oder den Buchhalter ersetzt, sondern…
Bei den einen wäre es mehr, bei den anderen weniger, schade.
Ja, wobei ich mich da auch manchmal frage, ob das nicht so ein Bias ist, den man hat, dass man denkt, dass da bestimmte Berufsgruppen, die halt ein traditionell hohes Ansehen haben, vielleicht gar nicht so unersetzt sind.
also ich denke jetzt gerade an sowas wie Lehrer zum Beispiel,
wo man sich sagt, ja gut, also wenn das
jetzt mit dem, also vorher fand man
das vielleicht mit irgendwie
Remote-Dinge unterrichten oder so,
pui bäh, und jetzt konnte man halt
nicht anders und jetzt haben die Leute gesehen, ah, es geht ja doch,
ist ja gar nicht so schlecht, warum
ist das eigentlich besser,
wenn das jemand, der aus dem gleichen
Dorf kommt, wie ich macht,
sozusagen, und könnte es nicht auch sein,
dass ich da jemandem zuhöre,
der wirklich richtig Ahnung davon hat, der muss aber
nicht unbedingt hier sein.
Hm, also es könnte schon sein, dass sich...
Ich finde es schon spannend, was sich halt ja auch jetzt durch die Situation, die Corona-Situation da entwickelt.
Und man muss auch, was jetzt Jobs angeht, man muss es natürlich realistisch sehen.
Es gibt viele Jobs, die werden wegfallen oder die sind bereits weggefallen und werden durch Technologie generell wegfallen.
Und das betrifft entsprechende Menschen und das betrifft auch entsprechende Bevölkerungsgruppen.
Und eben leider auch entsprechende Bevölkerungsgruppen, die schon eh weniger privilegiert sind als andere.
Das ist die Praxis. So ist es.
Meistens so, aber ich weiß gar nicht, ob es diesmal so unbedingt sein muss.
Oder mich würde es freuen, wenn es auch mal andere trifft.
Aber gut, keine Ahnung. Vielleicht trifft es auch immer die gleichen.
Die Sache, das ist halt immer ein viel tiefgehendes Problem.
Natürlich, grundsätzlich ist es ja nicht schlecht.
Wenn wir alle weniger arbeiten müssten, wäre das toll.
Aber das Problem ist, wie alles in unserer Welt, in unserer Gesellschaft, wird sich dieser Vorteil eben nicht proportional auf uns alle verteilen, genauso wie sich das Geld nicht proportional, uns geht es ja viel, viel besser, wir verdienen alle viel, viel, viel mehr Geld im Schnitt, so, aber das Geld verteilt sich leider nicht proportional auf uns alle, sondern nur auf sehr wenige.
Das heißt, und genauso wird es natürlich, es ist eher naiv anzunehmen, dass sich der Vorteil aus weniger Arbeit und Automatisierung auf einmal schön gleich auf uns alle verteilt, dass wir da alle was von haben.
Natürlich, aber das ist auch was, was man sich bewusst machen muss, wenn man auch an diesen Technologien arbeitet, aber was man auch andererseits nicht mit Technologie magisch lösen kann, wie viele andere Probleme auch.
Also ein paar Sachen stelle ich mir wirklich dann doch, sowas wie der automatische Winkeladvokat oder sowas tatsächlich, das wäre doch was, was man gebrauchen könnte. Man braucht halt nicht mehr diese menschliche Komponente, sondern man hat eine automatische Komponente, die relativ genau weiß, wie man so Sachen wie Gesetzestexte interpretieren kann, die ja, ich sag mal, relativ wenig Interpretationsspielraum lassen sollten, aufgrund der Formulierung eigentlich.
Ich weiß nicht, ist es einfacher, juristische Texte zu verarbeiten?
Also wenn Juristen, das ist ein interessanter Bereich, da gibt es zum Beispiel auch eine Bibliothek, die auf Spacey aufbaut, die ein Entwickler, der eben auch Jurist ist, entwickelt hat. Das ist auch was, was ich sehr toll finde, dass halt in unserem Bereich, da wir natürlich auch, wir wollen sicher gehen, dass auch Spacey relativ, zumindest der Einstieg leicht ist. Es ist unglaublich leistungsstark, aber du kannst auf jeden Fall relativ einfach anfangen und das ermöglicht eben auch Leuten, die vielleicht aus einem anderen Bereich kommen, zu sagen, cool, ich habe mir ein bisschen Programmieren beigebracht, ich möchte jetzt anfangen, in dem Bereich zu arbeiten.
Und da gibt es ein paar Pakete, die halt Entwickler entwickelt haben. Und eins davon nennt sich Blackstone. Das beschäftigt sich eben mit juristischen Texten auf Englisch erstmal. Und da kann man auch ganz spannende Sachen machen.
Und ich glaube, es ist nicht, ja, ich glaube, es ist leider halt nicht so einfach, dass Juristendeutsch oder Juristensprache ist halt so kodiert, dass es eh immer der gleiche ist.
Aber es gibt, ich glaube tatsächlich, es gibt, weil es halt so eine Formel, weil es sehr formulärisch ist, sagt man das so.
Formal, formulisiert.
Formal.
Irgendwie so, ich weiß nicht.
Ja, das war jetzt so ein Anglizismus-Fail, also formulaic wollte ich sagen.
Ah, ja.
Egal, also
es ist auf jeden Fall sehr spannend, aber natürlich, was man
zum Beispiel auch im juristischen Bereich, du musst ja auch
immer bedenken, am Ende sitzt da ein Richter oder so,
wie jetzt in
vielen Fällen, und trifft eine
Entscheidung. Und das ist auch eine Entscheidung basierend
auf einer
menschlichen Interpretation.
Und das steht ja nach wie vor
am Ende. Und
klar, man kann so ein bisschen, natürlich,
man kann Technik nutzen, um Fehler
zu vermeiden. Es gibt viele Dinge,
wo man sagen kann, okay, du hast ganz viele Dokumente,
da kannst du ein Computer drüber lesen lassen,
wenn da irgendein Problem ist, wenn irgendwas anders ist,
wenn irgendwas verdächtig aussieht, kannst du da halt nochmal Aufmerksamkeit ...
Ich glaube, der Algorithmus könnte an der Stelle zum Beispiel
relativ genau vorhersagen, was so der Spielraum realistischerweise denn ist.
Ich meine, man kann jetzt irgendwie in einem juristischen Kommentar nachschlagen
und gucken, wie könnte denn der jeweilige Sachverhalt interpretierbar sein.
Und ich glaube, sowas kann halt der Algorithmus auch recht gut.
Also ich meine, man kann vielleicht diese Recherche, die vielleicht ein Jurist machen kann, aber man muss auch wieder vorsichtig sein, denn am Ende, worauf basiert dein Modell? Dein Modell basiert vielleicht auf anderen Entscheidungen. Dein Modell kann vielleicht replizieren, was in der Vergangenheit entschieden wurde. Ist das denn immer gut?
Das ist ja das Straßenverkehrsrecht trainiert.
übertreiben und dann Leuten zu erzählen,
die ist 99,9%
korrekt oder so.
Was natürlich, schon allein
wenn du sowas hörst, da müssen die eigentlich
die Alarmglocken angehen. Aber
Leute glauben das, weil ja,
ist halt künstliche Intelligenz und
dann soll
diese künstliche Intelligenz entscheidet dann halt, ob
jemand auf Bewährung entlassen wird oder nicht.
Auf der Basis von, keine Ahnung,
unklar, wird ja nicht gesagt, aber
angeblich 99,9%
korrekt oder so.
Und da sind natürlich alle Entscheidungen, die Menschen gemacht haben, inklusive jeglicher Voreingenommenheit, ob gut oder ob schlecht, drin widergespiegelt.
Aber andererseits gibt den Menschen das schöne Gefühl, das sind ja nicht wir, wir müssen ja jetzt die Entscheidung treffen.
Das ist ja das System.
Und das ist sehr, sehr gefährlich.
Und eigentlich, was ich immer finde,
Leute denken immer an diese Dystopie,
wo die KI uns alle, weiß ich nicht, umbringt
oder schlauer ist als wir alle
und die Technologie funktioniert
und die uns dann alle unterdrückt oder sowas.
Aber was viel, viel gefährlicher ist,
ist eine Zukunft, die auch viel früher passieren wird,
wo es so lala funktioniert, wie momentan schon.
Manches funktioniert ganz gut, manches halt nicht.
Aber wo es gefährlich wird,
ist, wenn
die Allgemeinheit glaubt, dass es funktioniert.
Das ist viel, viel gefährlicher als so eine dystopische
KI-Zukunft, wo die Maschinen
alles super machen
und auf einmal super intelligent sind.
Ja, wenn sie super intelligent werden, vielleicht machen sie es dann ja auch gut.
Wer weiß.
Aber auch wenn wirklich die Idee
zumindest, diese Prämisse funktioniert.
Was gefährlich ist,
wenn du hast da ein System, was irgendjemand
so zusammengehackt hat mit allem möglichen
Zeugs, was gar nicht
wirklich funktioniert.
Golden Age für gute Entwickler, die können ja einfach
dann so tun, als haben die ein gewünschtes Ergebnis
und alle Leute glauben, was sie da erzählen.
Ja, genau, das ist unglaublich.
Zum Beispiel, auch hier historisch
vielleicht ganz relevant, auch so für uns,
dann kommt
jemand an und holt deinen Nachbarn ab,
weil das KI-System
das 99,9%
korrekt legt, gesagt hat, dass der ein Terrorist
ist. Dann sagst du dir, ja,
also du hoffentlich jetzt nicht, aber so,
dann sagen sich viele Leute, ja gut, wenn das
halt so ist, ist halt
die Technologie, wenn die, das ist ja
99,9 Prozent, das muss schon richtig sein.
Und
das ist sehr düster und
das ist genauso düster,
wenn das halt, was weiß ich, überhaupt nicht funktioniert
und so ein komisches Modell ist, was man immer trainiert hat.
Ja, aber solche Modelle gibt's
ja schon. Wenn es halt gut genug funktioniert,
wenn es halt gut genug funktioniert, dass man
es einsetzt, aber einem
dann halt egal ist, dass es halt sehr ungerecht ist
und man sich dann auch nicht mehr dafür verantworten muss,
weil es hat ja der Computer entschieden, dass es schon,
Das ist halt so ein bisschen wie eben, man geht zur Bank
und die hat einem gesagt, so, nee, kein Kredit für dich
heute. Schade.
Wo du halt irgendwie so
Bewegungen getestet werden.
Wo du halt von oben so Drohnen hast, die gucken, was du halt machst.
Und wenn du dich halt auf den Parkplan setzt und halt
dem Strom nicht folgst oder sowas, dann
gehst du halt direkt in den Fokus desjenigen, der da
guckt, was denn da los ist.
Weil könnte ja sein, dass da irgendwas
nicht in Ordnung ist. Ja, ich weiß gar nicht, wer das,
von wem dieses Bild war, aber
im Grunde,
wenn man Leuten
vermitteln möchte, was denn jetzt diese
was denn
in Zukunft, wie das denn funktioniert,
dann fand ich das sehr hilfreich,
sich das so vorzustellen, dass man sagt, naja, so
künstliche Intelligenz, wir haben es im Grunde mit denen heute
auch schon täglich zu tun,
so mit denen wir es dann in Zukunft zu tun kriegen
und zwar Unternehmen oder Organisationen,
Behörden, die sind im Grunde schon
sowas. Die sind nur halt sehr
viel langsamer, aber im Grunde
sind die so und
man muss sich das nur vorstellen, die Dinger werden
jetzt halt richtig schnell. So, dann
hat man so eine Vorstellung, was da passieren
wird. Das ist eigentlich
eine ganz gute Analogie auch, weil
okay, momentan auch so eine Behörde, okay, da hast
du entsprechende Regeln, entsprechende
Abläufe und das wird
halt reproduziert von Menschen,
die halt da sitzen am Schreibtisch.
Und ja, und am Ende kannst
du, ein Computer kann das genauso machen, natürlich,
aber ohne
ja.
Ohne Rechtsweg, Rechtsweg ausgeschlossen.
Ja, genau. Computer irrt nicht.
Ja, und natürlich gibt es auch Dinge, die auch natürlich ein Vorteil sein werden oder wo eben vor allem die interessanteren Sachen sind, wo eine Maschine einen Menschen unterstützen kann oder wo zum Beispiel eine Maschine auch nochmal auf ein Röntgenbild drauf gucken kann und vielleicht ein Röntgenbild nochmal entsprechend hervorheben kann, damit sich das nochmal ein Arzt anguckt oder so.
damit halt nichts übersehen wird.
Aber so muss man meiner Meinung nach auch an die Dinge rangehen.
Wenn man sieht, ein neues System kann Tumore erkennen,
kann genauso gut Tumore erkennen wie ein Mensch oder so.
Das heißt ja erstmal,
erstmal heißt das ja nicht,
dass das System überhaupt besser ist als ein Mensch.
Das heißt, dass normal,
du hast das Datenset, mit dem das trainiert wurde,
und dann hast du die Vergleichsdaten,
an denen das ausgewertet wird.
Und meistens, wenn du Menschen nochmal sowas auswerten lässt, die Menschen sind ja auch nicht hundertprozentig genau, die Menschen kriegen dann manchmal so 90% hin oder so. Und wenn du ein System hast, das auch 90% hinkriegt, dann sagst du auch genauso gut wie Mensch. Und genau, in einer ganz bestimmten Aufgabe.
Aber es ist ja nicht in so einem Bereich, wenn du das System einsetzt und das jetzt ausschließlich deine Röntgenbilder auswertet, das ist vielleicht nicht so geil. Aber wenn das System vielleicht irgendwas sieht, was ein Mensch übersehen hat, warum nicht? Kann auf jeden Fall sinnvoll sein.
Und im Bereich so gruselige Anwendungen oder so negative Dinge, ich finde, worüber nicht genug geredet wird, ist so Spam und Malware. Weil das ist tatsächlich schon sehr realistisch und das ist viel destruktiver als jetzt diese Idee, uh, werden uns die Maschinen versklaven.
Ja, oder wahrscheinlich eher andere Menschen, die Maschinen benutzen, um uns zu versklavten. Die haben halt eine Intention, die Maschinen gar nicht so.
Ja, ich glaube, das ist
viel nähere
und realistischere Problem,
den wir uns stellen müssen.
Oder wo sich auch, glaube ich, jeder Entwickler
fragen muss, okay, was mache ich hier?
Wozu trage ich
hierbei? Ist das
gut oder schlecht?
Und ich glaube, das kann man
nicht unbedingt voneinander trennen.
Ich glaube, man kann
nicht sitzen in seinem Vakuum und sagen, oh, ist mir egal,
ich schreibe nur gut. Ja, man kann auch relativ
wenig gegen machen. Also selbst wenn man jetzt irgendwie
vernünftige Lizenzbedingungen nimmt, ob man da
irgendwie dann sich aus dem Schein erhält, das ist schwierig.
Ja, das ist auch
was, wo wir uns Gedanken machen müssen, okay, wenn wir
jetzt zum Beispiel mehr
Funktionalitäten für bestimmte Sprachen zur Verfügung
stellen, wer benutzt das?
Wer
und okay,
wir machen das öffentlich verfügbar, open source.
Wie viele
Menschen gibt es, die diese Sprache sprechen? Welche Regierungen
gibt es? Gibt es da
Problematiken, wo die
Regierung vielleicht, ja, eine
Regierung, die eben zum Beispiel
gegen entsprechende Bevölkerungsgruppen
arbeitet
und vielleicht die Möglichkeit hat,
diese Technologie am effizientesten zu verwenden?
Oder
ist es sinnvoll
für die Allgemeinheit, auch
den einzelnen
Individuen und Aktivisten oder was
weiß ich, die Möglichkeit zu geben,
die Technologie zu benutzen, wofür Open Source
natürlich eine gute
Möglichkeit ist. Also das ist auch
tatsächlich was, wo wir uns in unserem Alltag
Gedanken drüber machen müssen, okay, was
und auch vor allem, okay,
so eine Bibliothek wie Spacey
ist sehr verbreitet,
es ist sehr beliebt,
viele Leute benutzen das.
Zwei Millionen
Downloads pro Monat
gehen irgendwo raus
an irgendwelche Systeme
und an irgendwelche Server
und Dinge, die Leute damit machen.
Und in irgendwelche,
tausende Firmen, die damit auch Dinge machen
und wer weiß, wohin noch.
Ja, es ist schwierig. Ich weiß auch nicht, inwiefern...
Natürlich, also ich bin nach wie vor Verfechter von
Open Source und ich glaube, Open Source als
einerseits natürlich als
Software-Modell, aber eben auch als
und natürlich andererseits, muss man auch sagen, als
Geschäftsmodell. Das ist ja eine...
Open Source ist ja
auch weiter und weiter
verbreitet als
Software-Vertrieb
quasi. Das ist ja auch
eine Realität der Open-Source-Software.
Irgendwie
tatsächlich hat sich das so
durchgesetzt irgendwie.
Ich erinnere mich noch an, das war
an die Halloween-Papers
1997 von Microsoft,
wo sie geschrieben haben, oh nein, das wird
uns irgendwann umbringen langfristig.
Das ist tatsächlich passiert, sehr gut.
Aber auf der anderen Seite, Microsoft heute ist auch wieder
und Microsoft ist einer der Vorreiter
Ja, ja, ja, genau.
Im Bereich Open Source, ja.
Hätte ich mir damals nicht träumen lassen, aber es ist tatsächlich
passiert, ja, erstaunlich.
Was interessant ist, finde ich auch da,
im Bereich Open Source ist, ich glaube,
es wird oft missverstanden, Leute denken, ah,
Open Source ist verbreitet, weil es gratis ist.
Natürlich,
die Tatsache, dass es halt meist frei verfügbar ist,
ist auf jeden Fall
ein Aspekt, aber im
kommerziellen Bereich oder
was Firmen angeht,
die Tatsache, dass es gratis ist, ist nicht
unbedingt der Knackpunkt. Der Knackpunkt ist,
dass es offen ist
und dass man damit
programmieren kann. Der Code ist
da und wenn du diese Entwicklertools hast,
die eben auch Open Source sind, also Open Source
Bibliotheken, zur Verfügung gestellt
wird und die
Tatsache, dass du dich nicht auf
eine Lösung
festlegst oder auf einen Anbieter
festlegen musst und dass
du dich da nicht einschließen lässt
und diese
Autonomie bewahrst. Ich glaube, das ist in der
Praxis tatsächlich, was für Firmen deutlich
entscheidender ist, als die Tatsache, dass es 0 Euro kostet.
Denn es kostet ja in der Praxis
nicht 0 Euro, mit einer
Open-Source-Bibliothek was zu entwickeln.
Und da ist wieder
unglaublich viel Geld rein investiert in
vor allem KI, Machine Learning,
die entsprechende Entwicklung. Das sind top
bezahlte Entwickler.
Weswegen auch zum Beispiel
Entwicklertools und Developer Experience
und Tools, die halt
sowas fördern und
einfach die Entwickler produktiver machen.
großen Einfluss haben können, weil
cool, wenn dein top bezahlter
Machine Learning Entwickler
ein bisschen weniger rumsitzen muss und
ja,
stupide Arbeit machen muss und einfach besser arbeiten kann,
ist das natürlich besser
für alle. Lohnt sich auf jeden Fall, aber
ich weiß nicht genau, also ich habe doch häufig
das Gefühl, dass es da so ein gewisses Marktversagen
gibt irgendwie, weil
wenn man jetzt sich zum Beispiel eben sowas
anguckt wie Pandas oder Django oder
Spaces, weiß ich es gar nicht genau,
Aber so halt Software, die halt als Infrastruktur unter ganz, ganz vielen Produkten und bei ganz, ganz vielen Firmen sozusagen darunter liegt, dann müsste man ja jetzt meinen, so rein aus einer, gut, ich habe jetzt nicht so wirklich Ahnung von Ökonomie, aber so, dann wäre es doch für große Firmen allein schon aus so einem Versicherungsaspekt sinnvoll, die Projekte zu unterstützen, damit ihnen nicht plötzlich die Infrastruktur unter den Füßen wegbricht.
Tatsächlich ist es aber so, dass kaum Firmen das machen.
Das liegt daran, dass die Informationsasymmetrie nicht zu irgendwelchen kompetenteren oder, ich sag mal, Entscheidungsträgern durchdringt, die Budgetverantwortung haben.
Die wollen halt irgendwie Sachen, Projekte bekommen und die Projektmanager, die halt dann die Projekte bestellen oder bezahlen,
die haben vielleicht schon mal von ihren Entwicklern irgendwie so ein bisschen was von oben zugehört, das irgendwie sinnvoll wäre,
aber dann eine Ebene weiter oben sagen dann ganz viele einfach so, ja, nee, aber das bringt uns das irgendwas, das sind die nicht so, ne, das ist schwer.
Tja.
Aber so eine Versuchung ist eigentlich eine gute Idee.
Also ich meine, es gibt ja verschiedene Versuche, das irgendwie zu lösen.
Es ist immer ein bisschen problematisch.
Es ist halt nicht einfach.
Und ich glaube auch, einerseits, man sieht schon, es ändert sich was, auch in großen Firmen.
Denn dieses Klischee vom alten Manager, der irgendwie kaum Computererfahrung hat, das stirbt ja langsam aus.
Du hast jetzt Leute im Management, die sind in ihren 40ern, die programmieren seit ihrer Jugend.
Das ist jetzt nicht mehr seltsam.
Und eben auch diese Idee von so dummen Management, das irgendwie keine Ahnung hat.
Gibt es immer noch, natürlich, aber in vielen Bereichen hast du halt Leute, die kennen sich aus mit Technik.
Und denen kannst du auch nicht mehr irgendwelchen Schwachsinn andrehen unbedingt.
Und die haben da auch Meinungen zu, zum gewissen Grad.
Aber ich glaube, mit Open Source, ein Problem ist, es ist ja alles nicht wirklich standardisiert.
Es gibt verschiedene Projekte, die aus den verschiedenen Motivationen heraus entstehen.
Und manche sind natürlich jetzt mittlerweile gefördert von einer Stiftung.
Das ist ja die Tatsache für viele dieser Scientific Computing-Geschichten auch im Python-Ökosystem.
Und dann gibt es aber andere Projekte.
Okay, das ist halt, irgendjemand hat das mal entwickelt, der hatte da Spaß dran.
Das wurde populär.
Und ja, jetzt sitzt da jemand mit einem erfolgreichen Projekt,
aber keinem nicht unbedingt
einem direkten Pfad
zu etwas Kommerziellem
draußen. Das kann man ja auch
dem Entwickler nicht unbedingt anlasten.
Sagen, okay, gut,
das ist halt
nun mal so und auch, okay, die Firmen,
was willst du da machen?
Es kommt halt immer darauf an,
auch auf die Motivation, die zu einem
Open-Source-Projekt führt. Es gibt andere Projekte, wo
auch Firmen
Entwickler speziell gesagt haben, okay, cool,
ich entwickle das und ich habe eine Motivation,
dass da entweder, wenn das
populär wird, kann ich das für meine Karriere
nutzen. Gibt es ja auch viele Entwickler,
die sagen, hey,
da kriege ich einen besseren Job. Funktioniert ja auch
oft. Oder in unserem Bereich, wir haben es ja auch,
die Idee war immer,
wir wollen eine Firma
gründen und wir wollen
etwas machen in dem Bereich und
in diesem Bereich arbeiten. Und die Tatsache,
okay, Spacey is open source und das ist auch
strategisch so,
Und das ist uns sehr wichtig, aber das ist eben natürlich auch Teil unserer generellen Strategie und wir sagen, okay, wir bauen, wir machen jetzt nicht so ein Open-Core-Ding, wo du halt für bestimmte Features zahlen musst, sondern wir sagen, hey, hier ist unsere Open-Source-Bibliothek, die ist gut, du kannst sie testen, du kannst damit Dinge bauen, wir geben sie dir gratis, weil wir auch glauben, okay, das, wo der meiste Wert drin steckt, sind die Daten, das ist nicht unbedingt oder deine speziellen Daten, die man auch gar nicht unbedingt so verkaufen kann.
Der Algorithmus und die Bibliothek geben wir dir gratis und wenn du unsere Sachen gut findest und damit
baust, haben wir andere Produkte,
die dir auch gefallen würden, wenn du ein
Spacey-Power-User bist zum Beispiel. Wenn jetzt
deine Firma ein System
auf Spacey aufbaut, dann willst du meistens
auch deine Systeme trainieren und dann willst
du Daten sammeln.
Und dann hast du vielleicht auch Interesse
an Prodigy und anderen Dingen, die wir
darauf aufbauen.
Kann Spacey Emotionen erkennen?
Ja, klar.
Das ist eine
allgemeine Frage.
Das ist jetzt erstmal meine Antwort.
Nein, Gott, aber das ist halt sehr aufgeladene Emotionen, ist halt auch immer sehr abstrakt.
Und es ist auch etwas, was sich nicht sehr gut generalisieren lässt.
Du kannst natürlich sagen, du kannst bestimmt ein System trainieren,
auf der Basis von entsprechenden Wörtern, Ausdrücken, wie Dinge präsentiert sind,
Vorher zu sagen, in welche emotionale Richtung ein Text geht, ist ja auch sowas wie Sentiment Analysis, ist ja auch ein Thema, was sehr verbreitet ist, wo die Idee ist, okay, wie steht der Sprecher zu einem bestimmten Thema?
meistens natürlich in der Marktforschung
oder wer jetzt eine Marke Coca-Cola möchte
wissen, wie Leute über Coca-Cola reden oder
keine Ahnung. Aber
ich bin auch, was ich sehr
kritisch finde, sind diese
General Purpose
Modelle, die auch teilweise
viele Cloud-Services anbieten, die sagen,
oh, hier ist Sentiment Analysis für alles.
Denn, selbst ob was
positiv oder negativ ist oder ob was,
welche Emotionen hinter
einem etwas steht, selbst wenn du es messen
könntest, ist unglaublich
subjektiv und unglaublich
themenspezifisch.
Also, ein Beispiel, was ich zum Beispiel, glaube ich,
in meinen Talks manchmal verwende, ist,
du hast zwei Sätze.
Ich liebe Katzen und ich hasse Katzen.
Sind diese zwei Sätze ähnlich
oder nicht ähnlich?
Und teilweise frage ich, okay, kannst
mal gut Publikum fragen und meistens hast du so vielleicht
so 50-50 und für beides
kannst du begründen.
Wenn ich jetzt irgendwie generell
Text analysiere,
Relativ zu allem, was ich in der Sprache, in der deutschen Sprache sagen könnte, ist es unglaublich ähnlich. Zwei Sätze, die kurz sind und meine Haltung gegenüber Katzen ausdrücken. Das ist unglaublich ähnlich, unglaublich speziell im Vergleich zu allem anderen, was ich hätte sagen können.
Aber wenn du jetzt eine Dating-App entwickelst und du möchtest gucken, ob zwei Leute aufgrund ihrer Profile zueinander passen,
möchtest du das als sehr unähnlich ansehen.
Weil ein Katzenhasser und ein Katzenliebhaber passen wahrscheinlich nicht zusammen.
Das sind komplett polare Unterschiede.
Und so ist es auch mit eigentlich sehr, sehr vielen anderen Dingen, die man vorhersagen kann mit Hilfe von Machine Learning und eben auch Sentiment und Emotionen.
Und ich finde, es vermittelt auch so ein bisschen das falsche Bild, eben zu sagen, wir können das jetzt mit einem vortrainierten Modell lösen.
Du kannst das lösen, wenn du es eben wirklich speziell zuschneidest auf das, was du machst.
Okay, also ob der Nachrichten-Informationswert positiv oder negativ ist, kriege ich dann für das jeweilige Unterfach.
Hängt davon ab, wenn ich jetzt zum Beispiel, auf was ich spekuliere, wenn ich jetzt zum Beispiel Gewinn daraus ziehen möchte, wie sich der Kurs in Zukunft von irgendeinem Unternehmen entwickelt, dann spielt es halt eine Rolle, ob ich jetzt irgendwie long sozusagen gehe oder ob ich das Ding short sellen möchte und es kann halt für mich irgendwie unter Umständen eine sehr gute Nachricht sein, wenn Privatanleger in GameStop-Aktien jetzt plötzlich reingehen.
Oder sehr schlecht.
Das Beispiel ist eigentlich auch ganz gut,
weil das illustriert auch so ein bisschen,
was man mit Machine Learning gut lösen kann
und was eben zum Beispiel nicht.
Also wir hatten, glaube ich, mal ein Beispiel,
wo jemand versucht hat auch,
ich glaube, es ging so um Supply Chain Risk und Management.
Das ist auch sowas, klingt ein bisschen öde,
aber ist tatsächlich was, was viel wert ist.
Wenn du eben sagst, okay, du hast jetzt hier einen Händler in China,
von dem beziehst du Waren, mit denen du dann irgendwas machst
Und dann hast du hier jemanden in Russland und die importieren aber von da und da und du möchtest dann wissen, wenn jetzt da und da ein Streik ist oder hier irgendwie ein Schiff untergeht oder so, wird das in der Zukunft zum Beispiel dein Unternehmen beeinflussen oder so.
Und das kannst du zum Beispiel, ein Teil davon ist, du möchtest dann Nachrichten analysieren und gucken, was ist los. Es kann ja sein, in irgendeinem kleinen Ort, in was weiß ich wo, wo jetzt zufällig gerade irgendwas hergestellt wird.
Ja, wenn die Kategorie Emotionen katastrophal werden würde, möchtest du das für den lokalen Ort dann wissen?
Ja, oder irgendwie da und da passiert was, das möchtest du wissen und dann irgendwie zusammenhören.
Und genau, also es gab irgendein so ähnlicher Fall war das.
Und es ging einem auch darum, die Firma wollte rausfinden, okay, was ist jetzt gut für ihr Unternehmen?
Und das ist natürlich so unglaublich abstrakt.
Und der erste Schritt war, okay, die haben dann Trainingsdaten erstellt,
wo sie alles, was gut für ihr Unternehmen ist, hervorgehoben haben.
Inklusive Sachen, die komplett abstrakt waren.
Also jetzt irgendwie, oder Dinge, die schlecht sind fürs eigene Unternehmen.
Wenn dein Konkurrent irgendwas auf den Markt bringt oder so, ist das schlecht für dich und das weißt du und das ist aber was, was du nicht unbedingt einem Modell auf Basis des lokalen Kontexts beibringen kannst und dein Modell wird nicht unbedingt in der Lage sein, so zu generalisieren und zu wissen, die und die Firma ist dein Konkurrent und die Tatsache, dass die ein Produkt veröffentlichen, ist schlecht.
Aber die Tatsache, dass vielleicht dein Lieferant was veröffentlicht, ist gut.
So funktioniert das einfach nicht.
Das wird auch ein bisschen klarer, wenn du dir überlegst,
wie funktioniert das Modell und auf welcher Basis trifft das diese Vorhersagen?
Was guckt sich das an? Worauf basiert das?
Wie wird quasi die Information da enkodiert?
Und da geht es dann wieder zurück in so, wie breche ich das runter?
Oder okay, du kannst sagen, ich möchte ein Modell trainieren, das Kleidung für Erwachsene, Kleidung für Kinder, Kleidung für alte Leute oder so erkennen kann und entsprechend ordnet.
Funktioniert wahrscheinlich nicht so gut, wie wenn du sagst, ich möchte nur generell Kleidung erkennen und habe dann andere Prozesse, die das so ein bisschen weiter runterbrechen.
Denn der Kontext gibt da oft nicht so viel her und viel benötigt unglaublich viel Wissen und ist noch nicht mal so eindeutig.
Katastrophale Beispiele waren immer sowas, also aus einer Sicht von einem Redakteur sozusagen oder wie man das verkaufen möchte, macht das durchaus Sinn, dass man Handys mit und ohne Vertrag in zwei unterschiedliche Kategorien packt. Aus Sicht von Machine Learning ist das scheiße, weil das funktioniert einfach nicht richtig.
Ja genau, sowas. Okay, gut, das kannst du dann vielleicht später machen oder du hast eine Datenbank, wo du diese Information abrufst. Und selbst wenn es neue Modelle, Architekturen und eben auch vielleicht vortrainierte Gewichtungen gibt, die das eben vereinfachen, ist immer noch die Frage, okay, willst du das tatsächlich so lösen?
Du kannst dein Problem unglaublich komplex formulieren, quasi von der Machine Learning Sicht, dann da so ein richtig krasses Modell draufschmeißen, das dann auf krassen Hochleistungsrechnern laufen lassen und damit ganz gute Resultate erzielen, wenn es eigentlich viel einfacher gewesen wäre, das einfach ein bisschen besser zu strukturieren oder ein bisschen logischer runterzubrechen.
Das ist auch die Tatsache, dass gewisse Dinge
jetzt möglich sind, heißt nicht unbedingt,
dass du es so machen musst, denn oft
wirklich
der Großteil liegt darin,
wie man das Problem definiert.
Und ein bisschen
ist natürlich, natürlich gibt es Unterschiede
und auch selbst wenn du, selbst sowas wie ein, zwei
Prozent Unterschied in Genauigkeit
kann tatsächlich einen wirklich großen Unterschied machen,
generell, also das hat einen großen Einfluss,
aber
man macht es sich viel schwerer, wenn du halt dein Problem
nicht definierst
wenn du es halt dem Modell schwerer machst, als
du es müsstest.
Ja, ja.
Aber im Grunde so ein bisschen
eben dieses Modell bei Spacey
klang für mich auch so nach dem,
das ist ja auch ein Modell, das viele, viele
Open-Source-Projekte
oder viele Leute, die dann mal
ein Open-Source-Projekt, das dann
erfolgreich geworden ist, gestartet
haben, womit sie dann Geld verdienen,
halt sozusagen so ein bisschen Consulting.
Also es ist bei Spacey ein bisschen anders mit dem
Annotations-Tool, aber es ist halt auch im Grunde
so Dienstleistungen um
das Open-Source-Projekt
herum quasi.
Ja, also generell,
wir haben anfangs mal ein bisschen
Consulting gemacht, vielleicht, also
dann haben wir uns hauptsächlich auf Produkte
spezialisiert, vielleicht machen wir in Zukunft
mal ein bisschen mehr, weil es eigentlich immer ganz cool ist, auch so ein bisschen
die Connection zu haben
zu den Nutzern, aber
eine Sache, die uns immer ganz wichtig war,
war Support, finde ich
immer bei vielen
Dingen ein bisschen kritisch. Also es gibt Dinge,
so Infrastruktur oder so. Ja gut,
da braucht es, da macht es Sinn, jemanden zu haben,
dem du bezahlst, der dir das dann alles einrichtet.
Aber bei anderen
Tools, vor allem Entwicklertools,
wir
möchten ja, dass es, dass
das Tool auch wirklich benutzt wird. Es ist gut
für uns, wenn natürlich Leute unsere
Open-Source-Tools benutzen. Aber wenn
jetzt unser Hauptgeschäftszweig
Support ist, bedeutet das natürlich,
dass wir mehr verdienen, wenn Leute mehr Support
brauchen. Aber natürlich, wenn Leute
mehr Support brauchen, dann verdienen wir
aber auch andererseits weniger, weil es dann natürlich viel
weniger Leute das Ding nutzen.
Und ich finde das mal ein ganz komischer Kreislauf,
der meiner Meinung nach nicht so gut funktioniert
für viele Entwicklertools.
Aber natürlich, Dinge drumherum
ist gut. Und Open Source ist ja auch eine gute Art und Weise
zu zeigen, hey, wir können
gute Software bauen.
Also, wenn man das
strategisch so angeht, kann es
gut sein. Also, ich bin jetzt nicht der Verfechter, der sagt,
oh, jeder sollte jetzt hier seine ganze Freizeit
mit Open-Source-Projekten verdienen
und quasi gratis für Firmen arbeiten.
Aber es ist durchaus so,
dass man es auch strategisch angehen kann
und das auch ein Pfad sein kann,
erfolgreich zu sein und auch was zu machen,
was vielleicht einem Spaß macht.
Ja, im Prinzip ist das ja super, genau.
Also das ist ja eigentlich sozusagen,
würde ich ja schon mal ein bisschen
Traumleben irgendwie beschreiben
wollen, weil das ja, ich meine, das
stellt man sich halt so vor. Man kann halt das tun, was man möchte
und verdient damit halt genug Geld,
dass das halt das möglich macht.
Und wenn das funktioniert, ist es natürlich
großartig.
Ja, ich meine, ich glaube, man muss halt schon,
ich glaube, es macht Sinn, es auch so anzugehen, dass man
halt auch, man sollte schon ein Ziel
haben, wenn man
ein Projekt
startet. Und ich glaube, es ist auch nicht falsch,
zu sagen, okay, ich gehe das an, entweder
ja, ich hab ein
Open-Source-Projekt, ich möchte, ich sage Leuten,
hey, benutzt das. Das ist ja auch so eine Sache.
Okay, sagst du Leuten, mein Projekt ist geil,
benutzt das, ihr solltet da alles drauf aufbauen, oder
sagst du, oh, das ist nur so ein Nobby-Projekt,
ich hab meinen Code einfach veröffentlicht
und wenn jemand anders das nützlich findet,
benutze es gerne. Oder
dieses ein bisschen oldschooligere Modell, wir
bauen was zusammen.
Das sind so für mich die drei Arten
von Open-Source. Einmal, okay,
ich hab was gebaut, wenn jemand,
ich geb's dir umsonst, wenn du Lust hast,
vielleicht find's ja nützlich, oder wir
bauen als Community, entwickeln wir was
gemeinsam, oder wir
haben ein Produkt entwickelt und wir geben es euch umsonst.
Und
ich glaube, davon hängt es halt auch
ab, wie, ja, die Erwartungen,
die man als Nutzer haben sollte an das Projekt.
Und ich glaube, das wird halt auch oft nicht offen
kommuniziert. Und da,
das ist, wo viele der Missverständnis passieren,
wenn man
eben, ja, ein so ein persönliches
Projekt betrachtet, wie ein kommerzielles Projekt,
oder ein kommerzielles Projekt betrachtet,
wie so ein Community.
Oder wenn halt die Nutzer
oder die Maintainer gar nicht sicher sind,
was sie überhaupt sind.
Das ist halt genau dann wahrscheinlich dieser
Mismatch, dass dann die Nutzer denken, es ist ein
Produkt, wo sie dann Support einfordern
können und die Maintainer denken so,
andere Leute haben Freizeit, warum
habe ich eigentlich keine, warum sitze ich immer
und muss irgendwie kostenlos Dienstleistungen
für Leute machen,
die mich gar nicht mehr bezahlen.
Von den Firmen oder von den Nutzern, das ist ja nicht unbedingt
immer der Respekt da, zu sagen, oh ja, das macht
jetzt jemand in seiner Freizeit.
Sondern, ja nö,
ich brauche Support. Und in
manchen Sachen, okay, wenn man halt Möglichkeiten
schafft, die Maintainer zu bezahlen,
kann das gut sein. Auch so GitHub hat ja GitHub-Sponsors
und es gibt andere Möglichkeiten.
Aber kann auch in manchen
Situationen problematisch sein, wenn du halt
vor allem, es geht ja nicht immer um diese
riesen Beträge. Wenn du jetzt ein kleiner Entwickler bist,
du sagst, hey, du hast so ein Hobbyprojekt, das hat auf einmal
ein bisschen an Popularität gewonnen,
das benutzen ein paar Firmen,
Und die zahlen dir jetzt 5 Euro im Monat. Davon wirst du nicht unbedingt reich und das zahlt dir jetzt auch nicht unbedingt die Zeit, die du da rein investierst. Aber auf einmal sind diese Firmen jetzt nicht nur irgendwelche nervigen User auf deinem Issue-Tracker, das sind jetzt deine Kunden quasi.
oder die fühlen sich zumindest so.
Ob das jemand hier Anforderungen stellen kann an dich,
weil du dir 5 Euro zahlst, ist eine andere Frage.
Aber die fühlen sich, als wären sie deine Kunden und sagen,
wenn du jetzt diesen Bug nicht fixst bis morgen,
dann ziehe ich aber hier meine Sponsorship zurück.
Das ist jetzt nicht so das Allheilmittel.
Das kann auch, glaube ich, durchaus Dinge noch komplizierter machen.
Also ich habe jetzt keine Lösung dafür.
Nö, es gibt wahrscheinlich keine Einfachlösung.
Ja.
Ich meine, eine Sache,
ich bin der Meinung, dass
Open Source
quasi
dass zum Beispiel
Open Source staatlich gefördert werden sollte.
Also zumindest, oder wenn wir in so einem System
sind wie in Deutschland, finde ich,
dass die Bundesregierung
sollte finanzielle Mittel
zur Verfügung stellen, die eben tatsächlich
in die Open-Source-Entwicklung
fließen soll oder wir sollten das,
wir sollten quasi Open-Source als
Common Good ansehen.
Mit der Gießkanne oder kuratiert?
Das ist halt
eine Frage, das Problem ist halt auch,
okay, momentan, wenn du dir das anguckst, okay, was
wird so entwickelt, wer bekommt Zuschläge
für die Entwicklung von was und wie funktioniert
das am Ende und wie sieht das denn aus?
Also ich
finde, ich glaube schon,
ich glaube,
eine Lösung, wo
da jemand sitzt, der weiß nicht, der
Open-Source-Minister sitzt und sich die Open-Source-Projekte
aussucht, finde ich auch problematisch.
Ich glaube nicht, dass das etwas ist, was
wir möchten.
Ich kann mir auch
momentan keinen Open-Source-Minister
vorstellen.
Es gibt nur sehr wenige
politisch aktive Menschen momentan,
die ich vorstellen könnte als Open-Source-Minister.
Anni, schau ja nicht in dieser Impftags-Force
jetzt. Schade, der wäre doch gut geeignet
Ja, ich denke mir jetzt vor, du hast
so ein Äquivalent von Horst Seehofer
als Open-Source-Minister.
Ich glaube, das wollen wir alle nicht.
Aber wie gesagt, ich habe
jetzt noch kein politisches Programm
ausgearbeitet, das ich hier präsentieren möchte,
aber ich glaube, das ist auf jeden Fall eine
Richtung, die ich
sehen könnte. Ich weiß nicht, ich hätte mal
überlegt, das wäre doch ziemlich
einfach, dass zumindest
mal die Anforderungen von irgendwelchen
öffentlichen, größeren Projekten reinzuschreiben,
das ist halt selbstverständlich, wenn das halt mit öffentlichen
Mitteln finanziert wird, auch
dann als Infrastruktur wieder zurück
an die Öffentlichkeit geht, aber
ja, keine Ahnung.
Ja, das würde ich auch unterstützen, vor allem
ja, aber ich meine, ich kann mir auch
gut vorstellen, warum die das nicht möchten,
aber...
Ja, ja, klar, also dass die Auftragnehmer das nicht möchten,
das kann ich mir auch gut vorstellen, aber es ist halt, ja...
Ich meine, ich könnte mir auch vorstellen,
die jetzt vor manche dieser öffentlich finanzierten
Projekte, auch die man dann so
nur als Nutzer mal zu sehen
kriegt, wenn man mit denen interagiert.
Achso, ja.
Oder sowas jetzt zum Beispiel, auch selbst so eine App
oder irgendein Portal, irgendwas wird entwickelt,
da wird auch nicht viel Geld reingebracht und
okay, es gibt auf jeden Fall
ein Argument zu sagen, das sollte
Open Source sein, damit wir das auch
sehen können. Zumindest
jetzt nicht die ganze kritische Infrastruktur
oder so, aber grob
okay, wie funktioniert das? Was ist da
hinter?
Oder vielleicht ein paar Details.
Okay, wenn die jetzt irgendwelche Modelle trainieren,
dann wäre es schon gut,
ein bisschen mehr Informationen dazu zu haben,
was da jetzt reinfließt.
Und wer hat das gebaut?
Sind da überhaupt diese ganzen Fragen,
die man eigentlich mal berücksichtigen sollte,
sind die denn berücksichtigt worden?
Hat da sich jemand drüber nachgedacht?
Ja, genau.
Ja, wahrscheinlich nicht.
Und das wäre schon gut.
Aber ich glaube, es gäbe dann auch
so ein ganz neues neue Genre
an
Technikjournalisten,
die sich wahrscheinlich den ganzen Tag damit beschäftigen
könnten, die Open-Source-Projekte,
die staatlich geförderten Open-Source-Projekte
auseinanderzunehmen und zu analysieren.
Was ja auch nicht schlecht wäre.
Aber
es gibt halt, wenn man sich
Machine Learning anguckt, es gibt ja nicht wirklich
Standards,
die man da anbringen könnte. Und es ist ja auch
schwierig.
Und es gibt auch ja nix, was jemals,
es gibt ja wenige Dinge, die bisher überhaupt von einem Gericht mal getestet wurden.
Wenn es um auch so Themen, auch so Datensicherheit, bla,
oder was, wenn jetzt so ein Korpus an Trainingsdaten,
wenn der eine Lizenz hat, was bedeutet das für Modelle, die du trainierst?
Es gibt Modelle natürlich, wo du am Ende die Originaldaten rekonstruieren kannst.
Das ist, würde ich jetzt als Laie sagen, ein relativ klarer Fall.
okay, das geht natürlich nicht, wenn jetzt
die Daten nicht verfügbar sind.
Dann gibt es aber andere Sachen, wo du, okay, nur
wie abstrakt sollten
diese Gewichtungen sein, die du trainierst,
um halt das Argument
machen zu können, das repliziert
jetzt nicht unbedingt die
Originaldaten. Kann man das überhaupt sagen?
Ja, ja, das ist halt...
Wenn jetzt Instagram oder Facebook sagt,
oh, wir trainieren jetzt unsere Modelle
anhand von
Profilbildern unserer Nutzer. Geht das?
Geht das nicht? Können die das dann verwenden?
kannst du einfach das Internet scrapen
und dann dein
Modell veröffentlichen,
dass dann alle möglichen Firmen benutzen
und wenn irgendwas ist, wer ist schuld?
Du? Die Firmen?
Das sind alles Fragen, die
haben...
Da kann man sich drüber auslassen, ich bin, wie gesagt,
ich bin bleie,
ich hab da nur Meinungen oder Ideen zu,
aber auch da kommst du ja gar nicht drauf an.
Es ist am Ende, es gibt ja keine,
es gibt kaum
Entscheidungen dazu, es gibt kaum Fakten dazu,
Du musst halt gucken.
Naja, das wird noch eine ganze Zeit lang dauern,
bis das einigermaßen...
Bis das überhaupt jemand da irgendwo verstanden hat.
Wahrscheinlich der...
Selbst so diese...
So diese Trolley-Probleme von wegen
hier, okay, wer ist schuld, wenn das selbstfahrende
Auto einen Menschen überfährt? Das gab's ja schon.
So, wer ist da schuld?
Die Firma, die das Auto hergestellt
hat, die Person, der das Auto
gehört, der Entwickler,
der dieses Modell
trainiert hat,
die Person, die auf Mechanical Turk
für drei Dollar die Stunde
das falsch gelabelt hat.
Das falsch gelabelt hat.
Das sind auf jeden Fall
interessante Fragen.
Ich denke, der Weg
zu sinnvollen und
so
Common Sense
irgendwie Umgang damit im Alltag
wird gepflastert sein mit einem Haufen
Fehlentscheidungen, absurden Situationen und
komischen
Wie bei allem, ja.
Wie bei allem, ja.
Ja.
Ja.
Jetzt haben wir einen entspannenden Ausblick
in die Zukunft.
Ja, es ist alles
nicht ganz schlecht.
Es ist alles nicht super schön.
Ja, ich finde solche Sachen sehr wertvoll.
Schön, dass wir mal drüber geredet haben.
Nein, wirklich, was du jetzt da geschrieben hast,
ist etwas, was uns irgendwie weiterbringt.
Es hilft dabei, so Gefühle
zu kriegen, auf jeden Fall.
Ich habe immer die Hoffnung,
dass das irgendwann besser wird und nicht schlechter.
Ja.
Also objektiv betrachtet,
Dinge werden ja besser.
Natürlich ist es immer, man hat das subjektive
Empfinden und es gibt natürlich andere Probleme.
Auch wenn du, okay, wenn du, der Gesellschaft es besser geht, auch dem Einzelnen geht es ja besser, wenn du so generell den Stand der Welt dir anschaust, sagst, okay, haben wir, wie viele Menschen haben wir, die unter der Armutsgrenze leben, aber natürlich ist das nicht die einzige Art und Weise, wie du sowas quantifizieren kannst.
Ja, vor 100 Jahren haben die Leute Menschen noch im Zoo ausgestellt, das ist halt einfach, ja.
Ja, natürlich. Oder die Lebenserwartung, der generelle Lebensstandard ist natürlich besser, aber das heißt ja eben auch nicht, dass man sagen kann, ach ja, ist ja alles super, im Schnitt geht's allen besser. Oder du bist weniger arm als vorher, bist aber immer noch arm. Also ist ja nach wie vor ein Problem. Und wir denken uns auch immer neue Probleme aus.
Ja, das eskaliert natürlich auch an einigen Stellen immer völlig. Da muss man gucken, dass man das irgendwie wieder einfangen kann oder so. Aber ja, also ich habe nicht das Gefühl, dass das schlechter wird. Das ist immer so punktuell, so ein Wabern und so. Aber vielleicht geht es ja durch solche Sachen halt in die richtige Richtung, dass man dadurch besser Wissen verteilen kann auch einfach. Weil ich glaube, so verteiltes Wissen ist vielleicht eine der Grundlagen von dem, was wir vielleicht mit Freiheit da meinten oder so. Ich weiß nicht, wovon wir die ganze Zeit geredet haben.
Ich weiß nicht, ich glaube, es ist ganz schwer zu sagen, wird das jetzt irgendwie, hat das so eben so technische Fortschritte, haben die aus sich heraus schon so in sich emanzipatorisches Potenzial oder gehen sie doch dann nur dazu, dass Leute irgendwie noch reicher werden, die vorher schon relativ reich waren? Schwer. Also ich meine, was man vielleicht sagen kann, ist, dass in Zeiten, in denen sich viel ändert, gibt es halt auch mehr Chancen für Leute, die halt sozusagen was machen möchten.
Ja, oder wir nehmen die Antwort, die wir immer geben können,
it depends.
Ja, stimmt.
Ich meine, es stimmt natürlich,
oder auch jetzt in der aktuellen Situation,
wo auch Remote Work
normalisierter wird, wo es
vielleicht ein bisschen weniger,
schon immer war es durch das Internet,
das Internet hat es immer weniger relevant gemacht, wo man
denn gerade
physisch war, oder schon
allein die Tatsache, dass wir hier,
wir sitzen hier,
nehmen einen Podcast auf, ich bin in Australien,
ihr seid in Deutschland, es läuft.
Irgendjemand hört sich das an,
der ist was weiß ich wo und
das geht alles.
Und jetzt, okay, es wird weniger
wichtig, wo jemand arbeitet,
wo jemand
leben möchte. Ja, voll gut.
Das ist auf jeden Fall
theoretisch eine sehr positive
Entwicklung oder kann eine sehr positive Entwicklung
sein, wenn das entsprechend genutzt wird.
Ich finde, das ist ein
sehr tolles Schlusswort, ehrlich gesagt.
Nee, klingt gut.
Egal, wo ihr uns also hört.
Ob ihr nachts, tagsüber,
morgens, mittags, abends
im Flieger oder im Boot
oder auf der Couch
zum Einschlafen, hab ich auch schon gehört.
Denkt daran, es ist der Fortschritt, der gerade durch eure
Kopfhörer in euer
Gehirn ausstrahlt. Ganz genau.
Vielen Dank, Ines, dass du heute dabei warst.
Ja, war sehr schön.
Danke für die Einladung.
Bleibt uns gewogen und schaltet wieder rein.
Tschüss.