WEBVTT

00:00:00.080 --> 00:00:05.620
Hallo liebe Hörerinnen und Hörer, willkommen im Paisen-Podcast, heute in einer Jubiläumsepisode und zwar Episode Nummer 30.

00:00:07.280 --> 00:00:09.660
Natürlich sind wir wieder mit dem Jochen da und ich bin der Dominik.

00:00:09.780 --> 00:00:10.280
Hallo Dominik.

00:00:10.500 --> 00:00:12.860
Und heute haben wir auch einen besonderen Gast und das ist die Ines.

00:00:13.540 --> 00:00:14.340
Ja, hallo Ines.

00:00:15.000 --> 00:00:16.640
Ja, wollen wir die Ines mal vorstellen, Jochen?

00:00:17.280 --> 00:00:24.320
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.

00:00:24.320 --> 00:00:29.520
Ich habe irgendwo gelesen, dass es besser ankommt, wenn man von jemand anders vorgestellt wird.

00:00:30.000 --> 00:00:35.180
Aber das kommt wahrscheinlich darauf an, von wem man vorgestellt wird. Das tut mir jetzt sehr leid, dass ich das will.

00:00:38.020 --> 00:00:39.720
Ines ist Explosion, also wer ist Ines?

00:00:40.780 --> 00:00:55.740
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.

00:00:56.220 --> 00:00:57.820
Und da dachte ich so, oh ja,

00:00:58.820 --> 00:01:00.280
das stimmt, das wollte

00:01:00.280 --> 00:01:02.200
ich doch auch selber schon immer mal gerne

00:01:02.200 --> 00:01:04.220
machen und habe dann halt irgendeine Mail

00:01:04.220 --> 00:01:06.000
an Ines geschrieben. Und Ines, du hast was mit

00:01:06.000 --> 00:01:07.920
Spacey zu tun? Und genau,

00:01:08.260 --> 00:01:08.420
ja.

00:01:09.780 --> 00:01:10.300
Ines Nick.

00:01:13.120 --> 00:01:14.420
Wir bei Explosion,

00:01:14.500 --> 00:01:15.880
wir entwickeln Spacey,

00:01:16.080 --> 00:01:18.160
eine Open-Source-Bibliothek für

00:01:18.160 --> 00:01:19.920
Natural Language Processing in

00:01:19.920 --> 00:01:22.080
Python. Und daran arbeiten

00:01:22.080 --> 00:01:23.500
wir, daran arbeite ich seit

00:01:23.500 --> 00:01:25.680
ein paar Jahren und

00:01:25.680 --> 00:01:38.800
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.

00:01:39.480 --> 00:01:46.860
Also quasi, ja, wir entwickeln Software für Softwareentwickler, um quasi den Alltag ein bisschen schöner und produktiver zu gestalten.

00:01:47.160 --> 00:02:06.020
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?

00:02:06.660 --> 00:02:28.180
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.

00:02:28.840 --> 00:02:35.760
Zum Beispiel, ja, und auch weiter, was ein bisschen über Stichwortsuche oder reguläre Ausdrücke hinausgeht.

00:02:35.760 --> 00:02:52.200
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.

00:02:52.300 --> 00:02:54.740
Also ich kann den Kontext in einem Text erfassen, ist das richtig?

00:02:55.360 --> 00:03:04.700
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.

00:03:05.080 --> 00:03:08.900
Worum geht es in den E-Mails? Welche E-Mails sind wichtig? Welche E-Mails sind nicht wichtig zum Beispiel?

00:03:10.120 --> 00:03:24.220
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?

00:03:24.320 --> 00:03:25.780
Ist das Spam? Ist das nicht Spam?

00:03:26.980 --> 00:03:28.840
Und das sind das eben entsprechende Dinge,

00:03:28.980 --> 00:03:31.600
die natürlich abhängen, einmal vom Kontext,

00:03:32.540 --> 00:03:34.600
die auch gar nicht unbedingt immer ganz einfach zu erfassen sind,

00:03:34.680 --> 00:03:37.440
denn Sprache ist ja relativ komplex, Sprache ist sehr zweideutig.

00:03:38.340 --> 00:03:41.080
Und oft sind das auch Dinge, die viel mehr zu tun haben

00:03:41.080 --> 00:03:44.140
mit dem ganzen, mit dem größeren Kontext, die Welt, die Sprache.

00:03:44.140 --> 00:03:45.920
Wie funktioniert Englisch? Wie funktioniert Deutsch?

00:03:47.080 --> 00:03:49.260
Was sagt man so normal? Und was bedeutet das?

00:03:49.260 --> 00:03:50.660
Hat das viel mit Linguistik zu tun?

00:03:51.700 --> 00:03:59.980
Genau, also oft, oft, genau, Computerlinguistik ist auf jeden Fall auch ein Teil vom Bereich NLP, definitiv.

00:04:01.600 --> 00:04:03.540
Ja, und es ist quasi eine Kombination.

00:04:03.540 --> 00:04:10.300
Und heutzutage, was halt heutzutage funktioniert, was vielleicht früher nicht funktioniert hat oder nicht so gut ist,

00:04:10.720 --> 00:04:16.260
dass wir tatsächlich mittlerweile relativ gut einem Computer beibringen können,

00:04:17.160 --> 00:04:19.180
mehr oder weniger zu generalisieren

00:04:19.180 --> 00:04:21.380
und quasi entsprechende

00:04:21.380 --> 00:04:22.480
Vorhersagen zu treffen

00:04:22.480 --> 00:04:25.720
anhand von Beispielen,

00:04:25.720 --> 00:04:27.500
die wir ihm zeigen.

00:04:27.820 --> 00:04:29.520
Und je nach Anwendungsbereich

00:04:29.520 --> 00:04:31.260
klappt das mittlerweile sehr gut. Das heißt,

00:04:31.340 --> 00:04:33.120
wir sind an einem Punkt, wo man auch wirklich

00:04:33.120 --> 00:04:34.980
interessante Dinge damit bauen kann

00:04:34.980 --> 00:04:37.560
und wo auch tatsächlich diese

00:04:37.560 --> 00:04:39.380
Technologie

00:04:39.380 --> 00:04:41.280
auch wirklich zum Einsatz kommt

00:04:41.280 --> 00:04:43.200
in verschiedenen

00:04:43.200 --> 00:04:45.420
Anwendungsbereichen, Firmen,

00:04:47.020 --> 00:04:47.620
Alles Mögliche.

00:04:48.860 --> 00:04:49.560
Ja, ja.

00:04:51.540 --> 00:04:52.900
Früher, also ich hab da

00:04:52.900 --> 00:04:55.500
auch relativ viel schon, was Textkategorisierungen

00:04:55.500 --> 00:04:56.260
angeht und so

00:04:56.260 --> 00:04:59.220
gemacht und zu der Zeit, das ist halt

00:04:59.220 --> 00:05:00.600
auch schon lange her, aber

00:05:00.600 --> 00:05:03.180
da waren halt so lineare Modelle das Mittel der Wahl

00:05:03.180 --> 00:05:04.300
irgendwie, ne? Das war so.

00:05:05.860 --> 00:05:07.200
Lustigerweise, selbst mittlerweile

00:05:07.200 --> 00:05:09.460
immer noch, es gibt viele Problematiken,

00:05:09.580 --> 00:05:11.260
wo wir nach wie vor Leuten empfehlen

00:05:11.260 --> 00:05:13.100
würden, hey, so eine super

00:05:13.100 --> 00:05:14.960
Oldschool-Methode, linear,

00:05:15.480 --> 00:05:16.560
klappt immer noch besser.

00:05:17.020 --> 00:05:19.440
schneller kannst du auch teilweise

00:05:19.440 --> 00:05:21.600
heutzutage, selbst mit den hottesten

00:05:21.600 --> 00:05:23.440
Modellen teilweise

00:05:23.440 --> 00:05:24.440
nicht überbieten.

00:05:26.200 --> 00:05:27.780
Aber es gibt natürlich andere Bereiche,

00:05:27.920 --> 00:05:28.900
wo wir sagen, okay, gut,

00:05:30.360 --> 00:05:31.560
da braucht man einfach ein bisschen mehr.

00:05:32.620 --> 00:05:33.040
Und ja.

00:05:34.060 --> 00:05:35.500
Ja, genau.

00:05:35.800 --> 00:05:37.020
Also ich meine, da hat sich natürlich,

00:05:37.520 --> 00:05:39.560
also so ein lineares Modell ist natürlich relativ einfach

00:05:39.560 --> 00:05:40.860
und inzwischen

00:05:40.860 --> 00:05:42.980
gibt es ja da irgendwie so,

00:05:43.380 --> 00:05:44.880
was halt Neuronalen Netze angeht,

00:05:45.020 --> 00:05:46.680
Deep Learning, irgendwie hat sich ja einiges getan,

00:05:46.760 --> 00:05:48.040
so im letzten Jahrzehnt so ein bisschen.

00:05:49.100 --> 00:05:53.680
Und ja, das ist natürlich auch schön,

00:05:53.740 --> 00:05:56.380
dass man da jetzt irgendwie in dem Bereich

00:05:56.380 --> 00:05:58.040
nochmal deutlich mehr rausholen kann.

00:05:58.400 --> 00:06:00.600
Und was ich daran ja auch total faszinierend finde,

00:06:00.660 --> 00:06:02.100
das ist jetzt auch eine relativ aktuelle Entwicklung

00:06:02.100 --> 00:06:05.080
mit diesen ganzen Transformer-Geschichten,

00:06:06.460 --> 00:06:10.660
dass man da tatsächlich irgendwie aus, ja,

00:06:11.440 --> 00:06:14.160
quasi Text oder ungelabelten

00:06:14.160 --> 00:06:15.700
Daten halt irgendwie

00:06:15.700 --> 00:06:17.680
was lernen kann und dann

00:06:17.680 --> 00:06:19.500
weniger gelabelte Daten braucht, weil

00:06:19.500 --> 00:06:22.000
gelabelte Daten sind natürlich immer relativ schwer zu bekommen.

00:06:23.000 --> 00:06:23.740
Ja, und ich glaube,

00:06:24.240 --> 00:06:26.320
es löst

00:06:26.320 --> 00:06:27.620
auch ein viel tiefer liegendes Problem,

00:06:27.700 --> 00:06:29.480
was wir halt schon immer hatten, und zwar,

00:06:29.480 --> 00:06:31.240
dass Sprache ja wirklich

00:06:31.240 --> 00:06:33.580
auch nur im Kontext der Welt

00:06:33.580 --> 00:06:34.520
und im Kontext

00:06:34.520 --> 00:06:37.260
der Linguistik existiert.

00:06:37.380 --> 00:06:39.100
Das heißt, wenn du jetzt ein Modell trainierst und

00:06:39.100 --> 00:06:41.280
selbst wenn du dem nur beibringen möchtest, ist diese

00:06:41.280 --> 00:06:42.860
E-Mail, Spam oder nicht.

00:06:43.480 --> 00:06:45.300
Das Modell muss zusätzlich zu

00:06:45.300 --> 00:06:47.200
dem tatsächlichen

00:06:47.200 --> 00:06:49.380
Problem und den

00:06:49.380 --> 00:06:51.480
entsprechenden Wörtern, die wahrscheinlich

00:06:51.480 --> 00:06:53.340
meistens darauf hindeuten, ob es Spam ist oder

00:06:53.340 --> 00:06:55.560
nicht, auch noch so viele andere Dinge

00:06:55.560 --> 00:06:57.400
lernen. Zum Beispiel schon allein,

00:06:57.540 --> 00:06:59.260
okay, wie funktioniert die englische

00:06:59.260 --> 00:07:01.380
Sprache? Wie werden da die

00:07:01.380 --> 00:07:03.220
Wörter meistens angeordnet? Oder auch einfach,

00:07:03.620 --> 00:07:05.200
wie funktioniert

00:07:05.200 --> 00:07:07.040
die Welt? Was sind Wörter, die

00:07:07.040 --> 00:07:08.720
im Kontext der Welt

00:07:08.720 --> 00:07:11.080
benutzt werden? Und wie passt das alles

00:07:11.080 --> 00:07:13.000
zusammen. Und das ist

00:07:13.000 --> 00:07:15.020
unglaublich viel Wissen, was

00:07:15.020 --> 00:07:17.060
man eben auch einem Modell quasi immer

00:07:17.060 --> 00:07:18.960
wieder beibringen muss, damit man überhaupt

00:07:18.960 --> 00:07:19.920
das machen kann, was sie wollen.

00:07:19.940 --> 00:07:22.540
Ja, genau.

00:07:23.120 --> 00:07:24.620
Und du wirkst wirklich immer quasi

00:07:24.620 --> 00:07:27.060
immer von vorne anfangen. Oder so war

00:07:27.060 --> 00:07:28.240
es in der Vergangenheit. Und jetzt

00:07:28.240 --> 00:07:30.680
Transfer Learning

00:07:30.680 --> 00:07:31.760
nennt man das auch.

00:07:32.500 --> 00:07:34.900
Eine Sache, die wir jetzt halt

00:07:34.900 --> 00:07:36.960
können und die jetzt tatsächlich funktioniert, ist, dass wir

00:07:36.960 --> 00:07:38.760
quasi

00:07:38.760 --> 00:07:40.560
wissen, dass wir aus anderen

00:07:40.560 --> 00:07:42.580
Prozessen gewonnen haben, quasi

00:07:42.580 --> 00:07:44.480
transferieren können auf das neue Problem.

00:07:44.580 --> 00:07:46.140
Also wir können quasi was vortrainieren,

00:07:46.760 --> 00:07:48.100
was unserem Modell

00:07:48.100 --> 00:07:50.440
quasi ermöglicht, schon ein bisschen mehr

00:07:50.440 --> 00:07:52.520
zu wissen über die Sprache

00:07:52.520 --> 00:07:54.520
und die generelle Welt und

00:07:54.520 --> 00:07:56.540
die generellen Wörter und so weiter. Also wir

00:07:56.540 --> 00:07:58.540
können quasi sagen, hier ist ganz viel

00:07:58.540 --> 00:08:00.620
roher Text, guck dir

00:08:00.620 --> 00:08:02.580
das an und wie es

00:08:02.580 --> 00:08:04.760
zum Beispiel funktioniert ist, die Aufgabe

00:08:04.760 --> 00:08:06.660
ist, hier sind

00:08:06.660 --> 00:08:08.540
ein paar Wörter und wir lassen jetzt ein Wort

00:08:08.540 --> 00:08:10.360
weg und dann lassen wir

00:08:10.360 --> 00:08:12.440
unser Modell vorhersagen,

00:08:12.500 --> 00:08:14.540
was das Wort sein könnte. Und das machen wir

00:08:14.540 --> 00:08:16.400
relativ lange, bis

00:08:16.400 --> 00:08:18.500
es hoffentlich eine ganz gute Gewichtung

00:08:18.500 --> 00:08:20.500
aufgebaut hat und das nächste Wort vorhersagen kann.

00:08:21.080 --> 00:08:22.400
Und es hat sich herausgestellt, dass diese

00:08:22.400 --> 00:08:24.660
Aufgabe sich sehr gut generalisieren

00:08:24.660 --> 00:08:26.220
lässt für andere Sachen. Das heißt,

00:08:26.520 --> 00:08:27.960
die Gewichtungen, die wir da aufbauen,

00:08:28.460 --> 00:08:30.360
die haben unglaublich viel Informationen

00:08:30.360 --> 00:08:32.380
inkludiert quasi über die Sprache.

00:08:32.460 --> 00:08:34.240
Was ja auch irgendwie Sinn macht, wenn du überlegst, okay,

00:08:34.580 --> 00:08:35.320
was muss man

00:08:35.320 --> 00:08:38.400
wissen oder lernen, um das nächste

00:08:38.400 --> 00:08:40.220
Wort vorhersagen zu können.

00:08:40.360 --> 00:09:05.380
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.

00:09:06.940 --> 00:09:25.520
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.

00:09:25.520 --> 00:09:42.520
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…

00:09:42.520 --> 00:09:44.120
Ja, Terminologie generell im Bereich.

00:09:44.480 --> 00:09:46.360
Was nennt man ein Modell?

00:09:46.440 --> 00:09:48.120
Das, finde ich, ist leider ein bisschen unglücklich.

00:09:48.920 --> 00:09:50.680
Das heutzutage, oder so, Language Model

00:09:50.680 --> 00:09:52.740
wird halt für so viele Dinge benutzt.

00:09:53.800 --> 00:09:54.520
Ja, da wünsche ich mir manchmal,

00:09:54.660 --> 00:09:57.080
dass so ein bisschen die Terminologie ein bisschen klarer wäre,

00:09:57.220 --> 00:09:58.360
weil das auch ein bisschen, glaube ich,

00:09:59.200 --> 00:10:00.080
ja, Verwirrung stiftet.

00:10:00.100 --> 00:10:01.180
Wie würdest du das denn definieren?

00:10:02.640 --> 00:10:03.540
Was ist ein Language Model?

00:10:05.060 --> 00:10:06.260
Das Problem ist halt, okay,

00:10:06.400 --> 00:10:07.560
grundsätzlich ein Modell,

00:10:08.860 --> 00:10:10.380
oder zumindest

00:10:10.380 --> 00:10:12.560
traditionell, man nennt vieles Modell.

00:10:13.340 --> 00:10:14.460
Manche Leute nennen den

00:10:14.460 --> 00:10:16.460
Algorithmus ein Modell. Das ist also

00:10:16.460 --> 00:10:18.420
quasi die Implementation, den

00:10:18.420 --> 00:10:20.380
Code, den du dafür schreibst. Aber dann

00:10:20.380 --> 00:10:22.320
gibt es natürlich auch das Artefakt, dass du

00:10:22.320 --> 00:10:24.260
da trainierst. Also die

00:10:24.260 --> 00:10:26.260
Gewichte, also quasi so eine

00:10:26.260 --> 00:10:28.580
binäre Datei, die dann da rumliegt

00:10:28.580 --> 00:10:29.780
und die du am Ende speicherst.

00:10:31.320 --> 00:10:32.600
Und vielleicht das zusammen

00:10:32.600 --> 00:10:34.720
kann man eigentlich so als Modell bezeichnen.

00:10:35.140 --> 00:10:36.220
Dann, ich glaube, früher

00:10:36.220 --> 00:10:38.220
Language Model haben wir früher auch gerne genannt.

00:10:38.720 --> 00:10:41.040
Modelle, die wir trainiert haben für verschiedene Sprachen.

00:10:41.680 --> 00:10:44.720
Aber das würde jetzt auch heutzutage viel benutzt

00:10:44.720 --> 00:10:47.640
für eben diese Gewichte, die man trainiert,

00:10:47.900 --> 00:10:49.920
auf der Basis von rohem Text.

00:10:50.840 --> 00:10:53.700
Das ist also heute hauptsächlich, was Leute meinen,

00:10:53.760 --> 00:10:54.720
wenn sie Language Model sagen.

00:10:55.080 --> 00:10:58.280
Also okay, wir haben kompletten Text aus der Wikipedia

00:10:58.280 --> 00:11:02.780
im Englischen runtergeladen und diese Embeddings trainiert,

00:11:03.240 --> 00:11:05.900
indem wir das nächste Wort vorhergesagt haben.

00:11:06.500 --> 00:11:07.680
Und die kann man jetzt weiter benutzen.

00:11:07.780 --> 00:11:09.060
Und das ist jetzt, das ist ein Language-Motto.

00:11:10.140 --> 00:11:11.380
Also es gibt da verschiedene,

00:11:11.460 --> 00:11:13.180
es gibt verschiedene Definitionen oder verschiedene,

00:11:13.340 --> 00:11:14.980
ja,

00:11:15.460 --> 00:11:17.320
Verwendungen. Ja, es wird halt irgendwie in unterschiedlichen Kontexten

00:11:17.320 --> 00:11:19.320
halt unterschiedlich, unterschiedlich

00:11:19.320 --> 00:11:21.200
verwendet, ja. Und es ist ja auch was,

00:11:21.280 --> 00:11:23.260
Leute, was nennt man Machine Learning, was nennt man

00:11:23.260 --> 00:11:24.080
KI?

00:11:25.200 --> 00:11:26.880
Oh, AI. Ist auch leider nicht immer so,

00:11:27.000 --> 00:11:28.200
immer, oder AI, genau.

00:11:29.200 --> 00:11:31.220
Ja, genau, da muss ich

00:11:31.220 --> 00:11:32.740
mich auch immer dran gewöhnen, weil ich bin tatsächlich,

00:11:33.460 --> 00:11:35.000
die deutsche Terminologie ist mir

00:11:35.000 --> 00:11:37.060
nicht so nah, weil ich es halt nie,

00:11:37.180 --> 00:11:39.540
Weil ich es halt nie gelernt habe auf Deutsch.

00:11:39.620 --> 00:11:41.400
Also ich bin immer gewohnt, so auf Englisch drüber zu lesen.

00:11:41.420 --> 00:11:42.580
Du bist auch gerade in Australien, ne?

00:11:43.040 --> 00:11:44.680
Ich bin momentan gerade in Australien, ja.

00:11:45.560 --> 00:11:47.940
Ein bisschen Social Distancing von Europa.

00:11:48.900 --> 00:11:50.180
Genau, so weit wie möglich weg.

00:11:50.440 --> 00:11:51.520
Ich glaube, viel weiter geht auch gar nicht.

00:11:52.400 --> 00:11:55.000
Ja, also wie gesagt, ich freue mich drauf, wieder zurückzukommen.

00:11:55.180 --> 00:11:58.140
Aber halt momentan ist, okay, gut, bringt ja auch keinem was,

00:11:58.560 --> 00:12:01.940
wenn ich jetzt in der momentanen Situation da wieder in den Flieger steige.

00:12:02.700 --> 00:12:04.460
Aber ich habe halt auch nie so,

00:12:04.460 --> 00:12:05.920
ich habe zum Beispiel nie jetzt klassisch

00:12:05.920 --> 00:12:07.880
Informatik studiert oder so.

00:12:09.020 --> 00:12:10.540
Das merke ich teilweise im Vergleich,

00:12:10.660 --> 00:12:12.560
dass manche Leute, die halt auf Deutsch programmieren

00:12:12.560 --> 00:12:14.320
gelernt haben, da so

00:12:14.320 --> 00:12:16.080
die deutsche Terminologie drauf haben.

00:12:17.300 --> 00:12:18.480
Und da muss ich mich

00:12:18.480 --> 00:12:20.160
auch erstmal reinlesen. Ich habe für

00:12:20.160 --> 00:12:22.240
Spacey so einen Online-Kurs gemacht, den habe ich auch

00:12:22.240 --> 00:12:24.160
in verschiedenen Sprachen übersetzt. Also ich nicht,

00:12:24.240 --> 00:12:26.260
ich habe ihn auch nur auf Deutsch übersetzt. Mehr Sprachen

00:12:26.260 --> 00:12:28.540
kann ich nicht. Aber andere

00:12:28.540 --> 00:12:30.280
aus der Community haben uns dabei geholfen

00:12:30.280 --> 00:12:32.280
und ich musste mich erstmal sehr reinlesen in

00:12:32.280 --> 00:12:34.820
die deutsche Programmier-Terminologie.

00:12:35.180 --> 00:12:36.760
So sagt man iterieren.

00:12:38.560 --> 00:12:38.720
Also

00:12:38.720 --> 00:12:39.800
Konsens ist Stein bei Ja.

00:12:42.000 --> 00:12:44.640
Ja, ich will das auf Deutsch

00:12:44.640 --> 00:12:46.760
sagen, das hört sich manchmal komisch an.

00:12:46.980 --> 00:12:48.620
Ja, es ist sehr

00:12:48.620 --> 00:12:50.460
eigenartig. Ich komme manchmal jetzt so

00:12:50.460 --> 00:12:52.740
oder das Problem hatte ich jetzt letztens,

00:12:53.780 --> 00:12:54.260
dass dann

00:12:54.260 --> 00:12:56.420
irgendwie, ich weiß nicht,

00:12:56.460 --> 00:12:58.440
Domain-Driven Design, ob das euch ein

00:12:58.440 --> 00:13:00.440
Begriff ist, wo man, wenn man jetzt in einer

00:13:00.440 --> 00:13:02.480
anderen Domäne unterwegs ist, also gar nicht

00:13:02.480 --> 00:13:04.380
unbedingt jetzt, wenn es ums

00:13:04.380 --> 00:13:06.020
Programmieren geht, sondern einfach fachlich

00:13:06.020 --> 00:13:08.260
ist man halt irgendwas unterwegs, wo Leute halt ihre eigene

00:13:08.260 --> 00:13:08.860
Sprache für

00:13:08.860 --> 00:13:12.440
entwickelt haben, um sich überhaupt austauschen

00:13:12.440 --> 00:13:14.280
zu können über das Thema, mit dem sie da zu tun haben.

00:13:14.940 --> 00:13:16.140
Und da habe ich dann erstmal alles

00:13:16.140 --> 00:13:18.360
nach Englisch übersetzt, weil ich das so schrecklich

00:13:18.360 --> 00:13:20.360
fand, weil das geht gar nicht, wenn

00:13:20.360 --> 00:13:21.940
da irgendwie so deutsche Wörter im Source Code stehen,

00:13:22.040 --> 00:13:23.980
dann dachte ich so, jetzt muss ich unbedingt übersetzen.

00:13:24.360 --> 00:13:26.160
Dann habe ich dann weitergelesen, dann hieß es so, naja,

00:13:26.260 --> 00:13:28.560
nee, am besten immer die Originalbegriffe benutzen,

00:13:28.680 --> 00:13:30.300
weil ansonsten ist das die totale Verwirrung.

00:13:30.440 --> 00:13:32.500
Man weiß hinterher überhaupt gar nicht mehr, was was bedeutet.

00:13:32.840 --> 00:13:33.660
Ja, das ist mir dann auch passiert.

00:13:36.440 --> 00:13:38.400
Es ist irgendwie nicht so einfach.

00:13:38.560 --> 00:13:40.040
Mit den unterschiedlichen Sprachen ist blöd.

00:13:40.280 --> 00:13:42.680
Ja, oder Mischung halt. Gerade im IT-Bereich

00:13:42.680 --> 00:13:44.540
ist ja voll oft so Denglisch irgendwie dann.

00:13:45.080 --> 00:13:46.700
Ja, und ich meine, Programmieren

00:13:46.700 --> 00:13:47.840
an sich, ich meine, Python ist

00:13:47.840 --> 00:13:50.620
Englisch. Und auch so, du merkst

00:13:50.620 --> 00:13:52.800
natürlich, du hast die Wörter, du programmierst

00:13:52.800 --> 00:13:54.400
auf Englisch.

00:13:54.700 --> 00:13:56.480
Oder schon allein, wenn du dir so eine deutsche

00:13:56.480 --> 00:13:58.400
Tastatur anguckst. Die englische

00:13:58.400 --> 00:14:00.720
Programmiersprachen sind meist für

00:14:00.720 --> 00:14:02.360
die amerikanische Tastatur entwickelt worden.

00:14:02.460 --> 00:14:04.360
Deswegen haben wir den Backtick an der

00:14:04.360 --> 00:14:06.020
blödesten Stelle

00:14:06.020 --> 00:14:08.340
und es ist eigentlich der Akzent.

00:14:09.580 --> 00:14:11.060
Oder Backslash.

00:14:11.200 --> 00:14:12.860
Ja, oder andere, oder die ganzen

00:14:12.860 --> 00:14:14.820
Klammern zu tippen. Warum ist das

00:14:14.820 --> 00:14:16.580
so nervig auf unseren

00:14:16.580 --> 00:14:17.940
Tastaturen?

00:14:17.940 --> 00:14:19.420
Ja, weil...

00:14:19.420 --> 00:14:21.980
Irgendwer wollte unbedingt eine neue eigene Tastatur machen.

00:14:22.560 --> 00:14:23.680
Ja, es ist anstrengend.

00:14:23.700 --> 00:14:25.900
Ich hab immer mal überlegt, ob ich einfach mal

00:14:25.900 --> 00:14:27.760
sagen soll, okay, ich lerne

00:14:27.760 --> 00:14:30.240
die amerikanische Tastatur, weil es ja wirklich fürs Programmieren

00:14:30.240 --> 00:14:32.060
einfach ist. Also einfach eine Taste zu haben, wo du

00:14:32.060 --> 00:14:33.860
einen Backtick tippen kannst,

00:14:34.880 --> 00:14:36.340
ist

00:14:36.340 --> 00:14:37.980
einfach. Aber ich bin halt, ich hab mich,

00:14:38.260 --> 00:14:40.300
ja, ich krieg das nicht mehr. Ich glaub, ich bin zu alt.

00:14:40.840 --> 00:14:41.400
Ich bin da zu.

00:14:41.560 --> 00:14:43.080
Ja, musst wahrscheinlich anfangen mit einer anderen.

00:14:43.380 --> 00:14:45.900
Ja, oder bei mir ist das Problem auch immer, ich hab's dann immer mal überlegt,

00:14:45.980 --> 00:14:48.100
ob ich dann nicht in meinem nächsten Rechner dann tatsächlich amerikanische

00:14:48.100 --> 00:14:50.140
Tastatur oder englische Tastatur halt nehme.

00:14:50.620 --> 00:14:52.160
Und dann dachte ich mir, aber ich hab jetzt noch ein paar andere.

00:14:52.740 --> 00:14:53.480
Nichts da, die Tastatur.

00:14:54.840 --> 00:14:55.800
Ja, also wenn man halt wirklich...

00:14:55.800 --> 00:14:57.560
Ich hab auch gerne die Umlaute auf der Tastatur.

00:14:57.760 --> 00:15:02.420
Also es stört mich, wenn ich jetzt nicht in Ö tippen kann oder so.

00:15:02.520 --> 00:15:05.520
Ja, aber ich sag mal, die Sprache, wir tippen ja schon alles dann auf Englisch raus.

00:15:05.640 --> 00:15:08.480
Also auch Kommentare und so würde ich jetzt mal schätzen, dass wir alle die auf Englisch schreiben.

00:15:09.040 --> 00:15:11.940
Das macht ja auch irgendwie Sinn, wenn man irgendwie ein bisschen kollaborativ arbeiten möchte und so.

00:15:12.580 --> 00:15:14.060
Und ja, es ist halt schon interessant.

00:15:14.200 --> 00:15:16.700
Also ich glaube, Englisch ist halt, wenn man so ein Natural Language anguckt,

00:15:17.100 --> 00:15:20.440
mit Sicherheit um Meilen weiter, als das irgendwie Deutsch sein wird.

00:15:21.140 --> 00:15:22.980
Und Meilen ist wahrscheinlich noch zu wenig.

00:15:23.740 --> 00:15:30.880
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.

00:15:30.880 --> 00:15:57.520
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.

00:15:57.520 --> 00:16:00.100
Okay, interessant. Welche Sprachen ähneln Englisch?

00:16:00.880 --> 00:16:13.680
Also natürlich so die romanischen Sprachen schon, also alles, also es ist halt so ein Spektrum, aber Chinesisch zum Beispiel eher nicht.

00:16:14.280 --> 00:16:36.940
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.

00:16:37.000 --> 00:16:59.260
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.

00:16:59.260 --> 00:17:06.860
Und ja, die wichtige Arbeit funktioniert mit englischem Corpora.

00:17:07.240 --> 00:17:10.180
Und das heißt, natürlich ist da eine Motivation da,

00:17:10.440 --> 00:17:12.940
auch mit der englischen Sprache zu arbeiten.

00:17:13.320 --> 00:17:14.880
Und natürlich ist einfach mehr und mehr Daten da.

00:17:15.880 --> 00:17:17.540
Ja, auch einfach viel mehr Trainingsdaten.

00:17:20.480 --> 00:17:22.780
Aber man muss auch sagen, okay, momentan,

00:17:22.840 --> 00:17:26.200
wir sind am Punkt, wo man gar nicht mehr unbedingt so viele Daten braucht.

00:17:26.200 --> 00:17:44.040
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.

00:17:44.040 --> 00:17:57.080
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.

00:17:57.800 --> 00:18:19.920
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.

00:18:19.920 --> 00:18:41.680
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.

00:18:42.780 --> 00:18:46.220
Vielleicht da nochmal auf die Features könnten wir da nochmal eingehen.

00:18:46.280 --> 00:18:49.240
Was macht denn Spacey jetzt genau mit einem Datensatz?

00:18:49.420 --> 00:18:50.620
Also was kannst du damit alles bauen?

00:18:50.620 --> 00:18:58.940
Also Spacey ist eine Bibliothek, mit der du moderne NLP-Systeme bauen kannst.

00:18:59.580 --> 00:19:05.280
Also wir haben verschiedenste Komponenten, die du trainieren kannst.

00:19:05.600 --> 00:19:09.060
Wir haben natürlich auch Pipelines, die man sich runterladen kann,

00:19:09.480 --> 00:19:10.700
die wir vortrainiert haben.

00:19:11.400 --> 00:19:17.360
Und für verschiedenste Tasks oder verschiedenste Probleme kannst du halt deinen Text reinfüttern

00:19:17.360 --> 00:19:25.280
und du bekommst am Ende die Annotationen, die das Modell extrahiert hat, am Ende raus.

00:19:25.280 --> 00:19:27.900
Also zum Beispiel fängt an bei Wortarten.

00:19:28.240 --> 00:19:35.260
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.

00:19:36.120 --> 00:19:39.500
Dann gibt es natürlich auch die Beziehungen der Wörter zueinander.

00:19:39.660 --> 00:19:41.380
Ist das das Subjekt? Ist das das Objekt?

00:19:41.820 --> 00:19:43.700
Das ist auch was, was man vorhersagen kann.

00:19:43.840 --> 00:19:45.800
Und Spacey hat halt auch entsprechende Datenstrukturen,

00:19:46.240 --> 00:19:47.680
die das halt auch abbilden können.

00:19:48.260 --> 00:19:53.000
Denn du möchtest ja idealerweise nicht alles hier in der Liste,

00:19:53.300 --> 00:19:54.740
hier im Dictionary haben,

00:19:54.880 --> 00:19:57.980
sondern du möchtest wirklich alles effizient gespeichert haben

00:19:57.980 --> 00:19:58.860
an einem Punkt.

00:19:58.860 --> 00:20:01.240
Und du möchtest jedes Wort am Ende

00:20:01.240 --> 00:20:04.240
zu jedem anderen Wort wieder zurückführen können.

00:20:04.420 --> 00:20:06.800
Also du möchtest wirklich, okay, hier habe ich ein Wort im Kontext.

00:20:07.240 --> 00:20:09.280
Wie hängt das Wort mit dem Wort zusammen?

00:20:09.660 --> 00:20:17.120
wie hängt das mit dem Satz zusammen und da hat Spacey halt auch die Datenstrukturen, die dich damit effizient arbeiten lassen.

00:20:17.620 --> 00:20:22.560
Named Entity Recognition, das heißt, man kann auch basierend auf einem Text voraussagen,

00:20:22.960 --> 00:20:31.000
welche Wörter sind zum Beispiel ein Personenname, ein Städtename, Produktname, Firmenname und so weiter.

00:20:31.200 --> 00:20:35.340
Und das ist natürlich vor allem spannend, wenn man das halt auf seine ganz spezielle Problematik zuschneidet.

00:20:35.340 --> 00:20:39.460
Also wenn man spezielle Begriffe in seinem Bereich hat und dann kannst du wirklich ein Modell trainieren,

00:20:39.540 --> 00:20:42.700
dass das entsprechend dir vorhersagen kann.

00:20:42.880 --> 00:20:44.520
Und dann hast du halt ...

00:20:44.520 --> 00:20:48.260
Ja, also alle Fachbegriffe für die Domäne irgendwie, ne?

00:20:48.540 --> 00:20:49.800
Genau, und dann kannst du auch sagen,

00:20:49.920 --> 00:20:53.560
okay, der Personenname, ist das jetzt das Subjekt oder das Objekt?

00:20:53.700 --> 00:20:54.000
Und so weiter.

00:20:54.660 --> 00:20:57.740
Oder andere Komponenten, wo wir halt gerade dran arbeiten

00:20:57.740 --> 00:20:59.440
oder die man halt auch bauen kann.

00:20:59.440 --> 00:21:02.280
Du kannst sagen, wenn du jetzt ein Pronomen hast,

00:21:02.880 --> 00:21:05.520
so er bezieht sich das, auf wen bezieht sich das?

00:21:05.920 --> 00:21:11.700
Also der Mann kommt nach Hause, er zieht sich die Schuhe aus.

00:21:12.560 --> 00:21:16.760
Kannst du das Er zurück auf den Mann beziehen?

00:21:16.840 --> 00:21:18.580
Das ist auch in vielen Kontexten sehr wichtig.

00:21:20.020 --> 00:21:23.920
Denn das ist was, wenn wir das lesen, uns ist das relativ klar.

00:21:24.920 --> 00:21:28.380
Wenn du das maschinell machst, ist es deutlich trickier

00:21:28.380 --> 00:21:33.820
und auch nicht immer so eindeutig, wie wir das gerne hätten in der Sprache.

00:21:35.360 --> 00:21:39.180
Ja, Text-Klassifizierung hast du ja schon mal angesprochen vorher.

00:21:40.900 --> 00:21:43.460
Du kannst natürlich auch Labels für den ganzen Text vorher sagen.

00:21:43.600 --> 00:21:45.440
Geht's hier um Sport? Geht's hier um Politik?

00:21:46.960 --> 00:21:47.960
Geht's hier um Spam?

00:21:48.840 --> 00:21:50.040
Das ist was, was du machen kannst.

00:21:50.040 --> 00:21:55.440
Und Spacey lässt dich halt diese Komponenten zu einer Pipeline zusammenbauen.

00:21:57.140 --> 00:21:59.520
Und natürlich zwischendurch, es kann auch sein, dass du sagst,

00:21:59.580 --> 00:22:03.240
hey, ich möchte einen Baustein, der soll einfach nur richtig oldschool,

00:22:03.440 --> 00:22:04.780
ein paar reguläre Ausdrücke sein.

00:22:05.360 --> 00:22:29.880
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.

00:22:29.880 --> 00:22:53.540
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.

00:22:56.180 --> 00:23:19.500
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.

00:23:20.540 --> 00:23:47.160
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.

00:23:47.560 --> 00:24:16.040
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,

00:24:16.040 --> 00:24:22.520
Die man auch tatsächlich effektiv mit den technischen Möglichkeiten, die wir momentan haben, lösen kann.

00:24:24.260 --> 00:24:33.040
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,

00:24:33.040 --> 00:24:35.070
Schritten, aber auf eben sowas Simples

00:24:35.070 --> 00:24:37.370
wie, ja, binäre Klassifikationen

00:24:37.370 --> 00:24:38.770
quasi runterbrechen lassen, weil

00:24:38.770 --> 00:24:40.270
das ist,

00:24:40.590 --> 00:24:42.830
ja, von binärer Klassifikation zu

00:24:42.830 --> 00:24:45.070
Multilabel, also dass man halt mehrere Labels

00:24:45.070 --> 00:24:47.030
jetzt für den Text vorher sagt oder so, ist eigentlich quasi auch das

00:24:47.030 --> 00:24:49.090
Gleiche. Und, ja,

00:24:49.290 --> 00:24:51.010
dann gibt's halt noch Regression und dann gibt's

00:24:51.010 --> 00:24:52.750
halt noch Clustering und dann war's das im Grunde schon.

00:24:53.110 --> 00:24:55.050
Aber man kann damit halt eine Menge machen.

00:24:55.130 --> 00:24:56.970
Dann dachte ich, so, hm, damit soll man wirklich alles machen

00:24:56.970 --> 00:24:59.130
können. Aber ja, es geht schon, aber

00:24:59.130 --> 00:25:00.790
man muss sich halt dann doch ein bisschen,

00:25:01.050 --> 00:25:02.970
ja, manchmal... Ich glaube, es geht halt

00:25:02.970 --> 00:25:04.910
auch so ein bisschen ums Mindset, aber das ist ja auch

00:25:04.910 --> 00:25:06.750
beim Programmieren generell

00:25:06.750 --> 00:25:08.930
nicht anders. Also wenn du jetzt sagst, okay, ich habe

00:25:08.930 --> 00:25:10.810
hier ein Problem, das möchte ich lösen mit

00:25:10.810 --> 00:25:13.130
Python, dann musst du dir auch überlegen, okay, was habe ich hier zur Verfügung?

00:25:13.830 --> 00:25:14.970
Was sind so diese Abstraktionen?

00:25:16.110 --> 00:25:16.930
Wie strukturiere ich

00:25:16.930 --> 00:25:18.750
das? Was macht Sinn?

00:25:18.830 --> 00:25:19.810
Was macht keinen Sinn?

00:25:21.130 --> 00:25:22.390
Und das ist quasi der Job,

00:25:22.730 --> 00:25:24.750
den du dann als Softwareentwickler löst.

00:25:25.050 --> 00:25:26.110
Und so ähnlich ist es auch

00:25:26.110 --> 00:25:28.430
im Bereich Machine Learning. Ist auch quasi

00:25:28.430 --> 00:25:30.530
eine Art zu programmieren.

00:25:31.010 --> 00:25:32.790
Ist halt nur ein bisschen anders

00:25:32.790 --> 00:25:34.890
und man hat halt noch diese Daten als die

00:25:34.890 --> 00:25:37.170
Komponente. Im so klassischeren

00:25:37.170 --> 00:25:38.430
Programmieren hast du halt

00:25:38.430 --> 00:25:40.850
im Programm, da geht was rein, kommt immer was

00:25:40.850 --> 00:25:43.070
raus. Hier hast du Code plus Daten.

00:25:44.110 --> 00:25:45.390
Ja, beziehungsweise

00:25:45.390 --> 00:25:46.810
das, was man programmiert,

00:25:46.890 --> 00:25:47.630
ist nicht so sehr

00:25:47.630 --> 00:25:50.910
ein Algorithmus, aber man legt eher die Daten

00:25:50.910 --> 00:25:52.710
für ein Modell fest, das dann irgendwie

00:25:52.710 --> 00:25:54.790
tatsächlich dann

00:25:54.790 --> 00:25:56.830
irgendwie was macht. Das fand ich auch interessant,

00:25:56.830 --> 00:25:58.570
das gab es, glaube ich, 2018 gab es

00:25:58.570 --> 00:26:00.810
einen Vortrag von André

00:26:00.810 --> 00:26:02.670
Capati, ich weiß gar nicht, wie das auch

00:26:02.670 --> 00:26:05.030
gesprochen wird. Software 2.0

00:26:05.030 --> 00:26:06.650
oder Software 2.0. Genau, also das ist auch

00:26:06.650 --> 00:26:08.850
eine sehr ähnliche Idee.

00:26:09.310 --> 00:26:10.730
Genau, da sagt er auch, ja, also

00:26:10.730 --> 00:26:12.770
früher haben wir halt sozusagen

00:26:12.770 --> 00:26:14.830
eine, also wir haben

00:26:14.830 --> 00:26:16.570
ein Problem und dann haben wir

00:26:16.570 --> 00:26:18.470
einen Lösungsraum für dieses Problem und

00:26:18.470 --> 00:26:20.490
wenn wir jetzt das explizit programmieren, dann

00:26:20.490 --> 00:26:21.950
nehmen wir uns einen ganz winzigen

00:26:21.950 --> 00:26:24.370
Punkt aus diesem Lösungsraum raus

00:26:24.370 --> 00:26:26.370
und definieren den halt exakt.

00:26:26.810 --> 00:26:28.570
Aber tatsächlich kann man ja auch vielleicht einfach eben

00:26:28.570 --> 00:26:30.430
per Daten so eine Region

00:26:30.430 --> 00:26:32.470
aus dem Lösungsraum rauszeigen und

00:26:32.470 --> 00:26:34.270
dann halt ein Optimierungsverfahren

00:26:34.270 --> 00:26:35.710
verwenden, um tatsächlich die

00:26:35.710 --> 00:26:38.150
Lösung zu finden, also quasi

00:26:38.150 --> 00:26:40.250
per Machine Learning

00:26:40.250 --> 00:26:42.190
ein Modell trainieren, das dann halt sozusagen

00:26:42.190 --> 00:26:42.730
die Lösung

00:26:42.730 --> 00:26:46.290
modelliert und

00:26:46.290 --> 00:26:48.230
dann verändert sich der

00:26:48.230 --> 00:26:50.370
Job als Programmierer halt so ein bisschen

00:26:50.370 --> 00:26:52.470
und ja, das fand ich

00:26:52.470 --> 00:26:54.270
auch sehr interessant. Ich dachte so, ja, das ist natürlich, das hebt

00:26:54.270 --> 00:26:55.710
es dann wieder auf eine etwas abstraktere Ebene.

00:26:56.510 --> 00:26:58.330
Dann werden natürlich die Tools, die man dafür braucht,

00:26:58.450 --> 00:27:00.330
halt extrem wichtig und sehr

00:27:00.330 --> 00:27:02.330
interessant. Genau, und auch die

00:27:02.330 --> 00:27:04.390
Daten einen ganz anderen Stellenwert bekommen. Und das ist halt

00:27:04.390 --> 00:27:06.470
auch was, was meiner Meinung nach nach wie vor nicht genug

00:27:06.470 --> 00:27:08.150
Aufmerksamkeit bekommt.

00:27:08.350 --> 00:27:10.190
Also auch so als Analogie jetzt,

00:27:10.310 --> 00:27:12.650
wenn du programmierst, klassisch

00:27:12.650 --> 00:27:13.890
schreibst du deinen Code,

00:27:14.330 --> 00:27:16.370
dann hast du einen Compiler, da geht dein

00:27:16.370 --> 00:27:18.290
Code rein und am Ende kommt ein Programm

00:27:18.290 --> 00:27:20.270
raus. Und jetzt

00:27:20.270 --> 00:27:21.950
mit Machine Learning hast du

00:27:21.950 --> 00:27:24.310
deine Daten, du hast einen Algorithmus

00:27:24.310 --> 00:27:26.330
und am Ende trainierst du dein Modell und dein Modell

00:27:26.330 --> 00:27:28.190
kommt raus. Und wenn du jetzt

00:27:28.190 --> 00:27:30.490
feststellst, okay, dein Modell ist nicht sonderlich

00:27:30.490 --> 00:27:32.670
geil. Oder im klassischen Programmieren,

00:27:32.950 --> 00:27:34.430
dein Programm, was am Ende rauskommt

00:27:34.430 --> 00:27:36.490
aus deinem Compiler, macht nicht das, was es

00:27:36.490 --> 00:27:38.530
soll, ist zu langsam, funktioniert nicht,

00:27:38.590 --> 00:27:40.070
hat Bugs. Was machst du?

00:27:40.490 --> 00:27:42.370
Du könntest natürlich hingehen und sagen,

00:27:42.550 --> 00:27:44.390
okay, da gehe ich jetzt erstmal an den

00:27:44.390 --> 00:27:46.570
Compiler ran und schreibe mir meinen eigenen Compiler.

00:27:46.930 --> 00:27:48.250
Machst du aber normalerweise nicht.

00:27:48.510 --> 00:27:50.610
Normalerweise, du gehst in deinen Code rein

00:27:50.610 --> 00:27:51.870
und veränderst deinen Code

00:27:51.870 --> 00:27:54.390
und passt den an und fixt den,

00:27:54.770 --> 00:27:56.470
damit dein Programm am Ende besser wird.

00:27:56.570 --> 00:27:58.430
Ich will damit nicht sagen, es gibt super viel Arbeit,

00:27:58.510 --> 00:28:00.390
die man im Bereich Compiler noch machen kann,

00:28:00.490 --> 00:28:04.430
aber das ist normalerweise so nicht das Erste, was man macht.

00:28:05.010 --> 00:28:07.130
Und analog natürlich, Machine Learning,

00:28:07.610 --> 00:28:09.450
wenn dein Modell nicht das macht, was es soll

00:28:09.450 --> 00:28:11.290
und du damit nicht zufrieden bist,

00:28:11.910 --> 00:28:14.290
kannst du hingehen und deinen Algorithmus tweaken.

00:28:14.430 --> 00:28:16.150
Und natürlich kann sein, dass da ein Bug drin ist,

00:28:16.870 --> 00:28:18.830
der dafür sorgt, dass dein Modell nichts lernt.

00:28:18.830 --> 00:28:22.130
Aber meistens, was du machen solltest, ist, dir die Daten angucken.

00:28:23.310 --> 00:28:29.370
Und du kannst das Schöne am praktischen Machine Learning

00:28:29.370 --> 00:28:32.870
oder quasi praktischen NLP, wenn du es halt wirklich anwendest, auf Probleme ist.

00:28:32.870 --> 00:28:39.250
Dass du quasi selber entscheiden kannst, wie schwierig oder wie einfach du dir quasi das Problem machst.

00:28:39.390 --> 00:28:44.630
Du kannst ja kontrollieren, wie du deine Daten annotierst, wie du die aufbereitest,

00:28:45.630 --> 00:28:47.670
wie du das Problem runterbrichst.

00:28:49.010 --> 00:28:52.810
Und das ist, glaube ich, auch, wie sich zum Beispiel die angewandte Praxis

00:28:52.810 --> 00:28:55.170
so ein bisschen unterscheidet von der reinen Forschung.

00:28:55.930 --> 00:28:58.490
In der Forschung ist das Ziel ein ganz anderes.

00:28:58.490 --> 00:29:16.350
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?

00:29:17.710 --> 00:29:36.670
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.

00:29:36.670 --> 00:29:55.970
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.

00:29:56.430 --> 00:30:22.550
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?

00:30:23.170 --> 00:30:32.790
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.

00:30:34.330 --> 00:31:02.550
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.

00:31:02.550 --> 00:31:06.110
Wie gesagt, das ist ja auch nicht unbedingt was,

00:31:06.170 --> 00:31:07.990
wo sich ein Forscher mit beschäftigen möchte.

00:31:08.210 --> 00:31:09.950
Aber ich glaube, es ist eher was, was man auf der anderen Seite,

00:31:10.010 --> 00:31:12.250
wenn man eben im angewandten Bereich arbeitet,

00:31:12.350 --> 00:31:13.810
sich halt bewusst machen muss,

00:31:13.930 --> 00:31:17.110
okay, es gibt so ein bisschen den Momentan,

00:31:17.230 --> 00:31:18.990
viele Leute sind unglaublich heiß drauf

00:31:18.990 --> 00:31:21.770
und wollen sich halt so, okay, die letzte Forschung direkt rein,

00:31:22.230 --> 00:31:28.290
ins Blut, direkt injizieren, so schnell wie möglich.

00:31:28.850 --> 00:31:31.450
Und in manchen Bereichen geht das.

00:31:31.450 --> 00:31:33.050
und natürlich, wir haben wirklich in den letzten Jahren

00:31:33.050 --> 00:31:35.150
vor allem sehr schnelle Adoptionen gesehen

00:31:35.150 --> 00:31:36.990
von Dingen, die in der Forschung entwickelt wurden

00:31:36.990 --> 00:31:39.490
und auch praktisch

00:31:39.490 --> 00:31:41.070
sehr schnell auch

00:31:41.070 --> 00:31:43.450
wendbar

00:31:43.450 --> 00:31:43.890
waren

00:31:43.890 --> 00:31:47.050
und natürlich, der Kreislauf

00:31:47.050 --> 00:31:48.970
wird schneller und wenn irgendwas Interessantes

00:31:48.970 --> 00:31:49.990
rauskommt,

00:31:51.410 --> 00:31:52.550
dann dauert es auch

00:31:52.550 --> 00:31:55.170
nicht mehr so lange, bis man auch tatsächlich

00:31:55.170 --> 00:31:57.090
was Sinnvolles damit machen kann, aber es ist halt nicht immer so

00:31:57.090 --> 00:31:58.810
und es ist auch nicht immer nur, weil irgendein

00:31:58.810 --> 00:32:00.970
Paper rauskommt, was halt spannend

00:32:00.970 --> 00:32:02.510
klingt, heißt es nicht, dass es unbedingt

00:32:02.510 --> 00:32:04.610
das ist, was

00:32:04.610 --> 00:32:07.030
dein System auf jeden Fall jetzt braucht.

00:32:07.450 --> 00:32:08.270
Und ja.

00:32:10.470 --> 00:32:10.830
Wie gesagt,

00:32:10.830 --> 00:32:12.670
für viele Probleme,

00:32:12.810 --> 00:32:14.770
selbst mit einem oldschool linearen Modell

00:32:14.770 --> 00:32:15.510
kannst du oft

00:32:15.510 --> 00:32:18.190
viel machen. Oder wenn

00:32:18.190 --> 00:32:20.730
dein lineares Modell das überhaupt nicht hinkriegt,

00:32:21.650 --> 00:32:22.570
heißt es auch oft, dass

00:32:22.570 --> 00:32:24.730
vielleicht die Definition

00:32:24.730 --> 00:32:26.650
deines Problems eher das Problem

00:32:26.650 --> 00:32:27.230
ist als

00:32:27.230 --> 00:32:29.990
der genaue Algorithmus.

00:32:30.970 --> 00:32:33.610
Ja, ja, ja, ja.

00:32:35.950 --> 00:32:36.390
Ja.

00:32:39.470 --> 00:32:39.910
Genau.

00:32:41.910 --> 00:32:43.390
Ihr macht ja auch noch

00:32:43.390 --> 00:32:45.210
im Prodigy

00:32:45.210 --> 00:32:46.750
dieses Annotationstool.

00:32:47.490 --> 00:32:49.350
Das ist auch alles quasi so, wie

00:32:49.350 --> 00:32:51.290
Spacey auch Python, beziehungsweise

00:32:51.290 --> 00:32:53.150
wahrscheinlich dann im Frontend irgendwie was anderes ist,

00:32:53.350 --> 00:32:54.010
weiß ich gar nicht.

00:32:55.210 --> 00:32:57.070
Ja, also Frontend natürlich, du brauchst immer ein bisschen JavaScript,

00:32:57.070 --> 00:32:59.070
damit es im Browser läuft und es ist

00:32:59.070 --> 00:33:00.730
so eine relativ leichte React-App,

00:33:00.970 --> 00:33:03.270
Aber ja, Backend ist alles in Python

00:33:03.270 --> 00:33:04.990
und die Philosophie ist auch wirklich,

00:33:05.090 --> 00:33:07.030
okay, es ist ein Entwicklertool, du möchtest damit programmieren.

00:33:07.110 --> 00:33:08.430
Das war uns immer unglaublich wichtig.

00:33:09.190 --> 00:33:10.430
Und ja, wir freuen uns auch,

00:33:10.490 --> 00:33:11.950
das wurde halt super gut angenommen.

00:33:12.370 --> 00:33:13.510
Prodigy ist sehr erfolgreich.

00:33:14.430 --> 00:33:16.670
Und das ist auch was, was wirklich, glaube ich,

00:33:16.690 --> 00:33:18.910
Entwickler anspricht.

00:33:19.730 --> 00:33:21.710
Und das ist auch die Art von Tools,

00:33:21.710 --> 00:33:23.230
die wir entwickeln wollen und natürlich auch die Art von Tools,

00:33:23.350 --> 00:33:24.370
die wir auch gerne benutzen wollen.

00:33:24.570 --> 00:33:26.410
Also ich möchte, wenn ich mit etwas arbeite,

00:33:26.490 --> 00:33:28.170
ich möchte programmieren können.

00:33:28.370 --> 00:33:29.050
wenn ich irgendwas

00:33:29.050 --> 00:33:31.850
möchte, wenn ich

00:33:31.850 --> 00:33:33.830
weiß, wie ich irgendwas in Python machen kann

00:33:33.830 --> 00:33:35.870
und ein Tool gibt mir die Möglichkeit,

00:33:36.150 --> 00:33:37.710
da einfach ein bisschen Code zu schreiben,

00:33:38.110 --> 00:33:38.910
denke ich, cool, super.

00:33:39.450 --> 00:33:41.090
Vor allem, weil ja auch in dem Bereich

00:33:41.090 --> 00:33:43.910
fast alles andere in Python

00:33:43.910 --> 00:33:44.770
läuft.

00:33:46.510 --> 00:33:47.210
Wenn du jetzt

00:33:47.210 --> 00:33:49.050
Spacey benutzt, andere Bibliotheken,

00:33:49.210 --> 00:33:50.830
die Modelle, das ist meistens

00:33:50.830 --> 00:33:52.890
Python. Du kannst unglaublich viel

00:33:52.890 --> 00:33:54.890
machen, was das

00:33:54.890 --> 00:33:56.710
Laden von Daten, Streamen

00:33:56.710 --> 00:33:57.790
und so weiter angeht.

00:33:58.370 --> 00:34:00.750
das ist alles möglich, das ist alles gelöst.

00:34:02.230 --> 00:34:03.850
Und da ist auch unsere Philosophie generell,

00:34:04.470 --> 00:34:08.970
wir wollen es Entwicklern ermöglichen, Code zu schreiben.

00:34:09.110 --> 00:34:11.210
Wenn du Code schreiben kannst, ist es immer besser.

00:34:11.370 --> 00:34:13.210
Du möchtest nicht nur einen Button haben, auf den du klicken kannst.

00:34:13.290 --> 00:34:14.590
Ein Button, auf den du klicken kannst, ist cool,

00:34:14.590 --> 00:34:19.650
aber wenn du mehr machen möchtest, solltest du die Möglichkeit haben.

00:34:19.830 --> 00:34:21.930
Und für Entwickler ist einfach Code die beste Art und Weise.

00:34:23.970 --> 00:34:26.510
Was kann man denn machen mit den Daten,

00:34:26.730 --> 00:34:28.750
um die vorzubereiten oder aufzubereiten

00:34:28.750 --> 00:34:30.550
für Spacey oder mit Spacey sogar

00:34:30.550 --> 00:34:31.110
mit den Daten?

00:34:32.390 --> 00:34:34.330
Also es kommt natürlich darauf an, was man machen möchte.

00:34:34.490 --> 00:34:36.770
Also meinst du mit Vorbereiten, okay, du hast halt

00:34:36.770 --> 00:34:38.550
rohen Text und du möchtest

00:34:38.550 --> 00:34:40.510
halt etwas damit trainieren und du möchtest den

00:34:40.510 --> 00:34:40.990
annotieren?

00:34:41.370 --> 00:34:42.530
Ja, also

00:34:42.530 --> 00:34:46.050
erst mal, die Daten

00:34:46.050 --> 00:34:48.170
musst du natürlich annotieren und

00:34:48.170 --> 00:34:50.470
die in Format bringen, damit

00:34:50.470 --> 00:34:52.390
du zum Beispiel dein Modell damit

00:34:52.390 --> 00:34:53.430
trainieren kannst. Und

00:34:53.430 --> 00:34:56.190
eine Option ist, du kannst ganz

00:34:56.190 --> 00:34:58.210
Oldschool in einer Excel-Tabelle machen,

00:34:58.350 --> 00:35:00.010
du kannst es ganz Oldschool

00:35:00.010 --> 00:35:02.250
in JSON machen

00:35:02.250 --> 00:35:04.310
und das wirklich eintippen, von hier bis da

00:35:04.310 --> 00:35:06.250
ist eine Person oder das und das ist

00:35:06.250 --> 00:35:08.090
das Label, so wird es auch oft gemacht.

00:35:08.610 --> 00:35:09.970
Dann natürlich mit einem Tool wie Prodigy

00:35:09.970 --> 00:35:12.010
sagen wir, hey, du kannst einfach deine Daten

00:35:12.010 --> 00:35:14.030
rein streamen, du kannst ein bisschen

00:35:14.030 --> 00:35:16.130
klicken, du kannst auch

00:35:16.130 --> 00:35:18.250
Sachen ein bisschen automatisieren, das ist halt auch immer cool,

00:35:18.670 --> 00:35:18.970
denn

00:35:18.970 --> 00:35:22.210
als Menschen,

00:35:22.670 --> 00:35:24.130
wir sind einfach, es gibt

00:35:24.130 --> 00:35:25.990
viele Dinge, die wir einfach schlechter können,

00:35:26.110 --> 00:35:27.830
als ein Computer. Ist halt nun mal so.

00:35:28.190 --> 00:35:29.970
Unser Erinnerungsvermögen

00:35:29.970 --> 00:35:32.010
ist schlecht, wenn es darum

00:35:32.010 --> 00:35:33.970
geht, Dinge zuverlässig,

00:35:34.790 --> 00:35:36.170
immer konsistent,

00:35:36.410 --> 00:35:38.030
genau gleich zu machen, können wir nicht.

00:35:39.230 --> 00:35:40.130
Und das sind nun mal

00:35:40.130 --> 00:35:41.890
Dinge, dafür haben wir Computer entwickelt,

00:35:42.030 --> 00:35:44.110
das kann ein Computer halt besser. Deswegen sagen wir halt,

00:35:44.770 --> 00:35:45.850
wenn du halt Dinge,

00:35:46.170 --> 00:35:47.630
die sehr

00:35:47.630 --> 00:35:50.530
ein bisschen

00:35:50.530 --> 00:35:52.070
stupide, wir nicht sagen stupide,

00:35:52.210 --> 00:35:53.670
aber wo du immer das Gleiche machen musst,

00:35:53.890 --> 00:35:55.990
das kann halt auch ein Computer machen. Du kannst ein Computer sagen,

00:35:56.090 --> 00:36:00.090
okay, ich bin mir relativ sicher, dass Berlin eigentlich immer eine Stadt ist.

00:36:00.650 --> 00:36:02.730
Und wenn nicht, gut, dann kann ich das korrigieren.

00:36:02.730 --> 00:36:05.570
Das heißt, du kannst dir Workflows bauen, wo du sagst,

00:36:05.630 --> 00:36:08.950
hey, ich habe hier ein paar Beispiele für das,

00:36:09.790 --> 00:36:12.030
was ich quasi in meinen Daten labeln möchte.

00:36:13.670 --> 00:36:16.550
Das mache ich jetzt automatisch und gucke mir das nur an.

00:36:16.730 --> 00:36:19.010
Und wenn irgendwas falsch ist, dann korrigiere ich das.

00:36:19.110 --> 00:36:21.710
Oder du hast schon ein Modell, das sagt ein paar Dinge voraus,

00:36:21.770 --> 00:36:22.450
ist aber nicht so gut.

00:36:23.110 --> 00:36:27.810
kannst du sagen, cool, Modell, label mir das schon mal

00:36:27.810 --> 00:36:28.910
und ich gucke mir das noch an.

00:36:30.150 --> 00:36:31.390
Das ist was, was du machen kannst.

00:36:31.570 --> 00:36:33.970
Und am Ende, okay, am Ende kriegst du die Daten raus

00:36:33.970 --> 00:36:36.930
und kannst dann dein Modell damit trainieren.

00:36:37.690 --> 00:36:40.750
Aber da fängt es halt auch, ich würde sagen, da fängt es halt erst an.

00:36:41.190 --> 00:36:42.530
Das ist halt der erste Schritt.

00:36:42.730 --> 00:36:44.530
Und das Lustige ist oft, wenn man halt hört,

00:36:44.630 --> 00:36:46.710
wie Leute sich über diese Themen austauschen,

00:36:47.090 --> 00:36:49.310
klingt es danach, als wäre es dann schon vorbei.

00:36:49.670 --> 00:36:51.130
Cool, du labelst so ein bisschen deine Daten,

00:36:51.270 --> 00:36:52.270
dann trainierst dein Modell, fertig.

00:36:53.110 --> 00:37:15.170
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.

00:37:15.830 --> 00:37:18.610
Und wenn du jemanden beauftragst, dir eine Webseite zu machen,

00:37:20.670 --> 00:37:23.650
willst du normalerweise auch, dass die Webseite,

00:37:24.030 --> 00:37:27.190
dass da eine Möglichkeit ist, dass du die auch später updaten kannst

00:37:27.190 --> 00:37:29.090
und du nicht jedes Mal deinen Webmaster anrufen musst,

00:37:29.170 --> 00:37:31.030
wie in den 90ern oder so.

00:37:32.650 --> 00:37:34.610
Und deswegen, okay, einmal du hast deine Daten,

00:37:35.190 --> 00:37:37.270
meistens irgendwas geht schief, irgendwas funktioniert nicht.

00:37:37.730 --> 00:37:39.870
Dann guckst du dir oft an, okay, was sind die Probleme?

00:37:39.870 --> 00:37:42.170
Was könnte das drüber aussagen?

00:37:42.250 --> 00:37:46.430
Da musst du ein bisschen, oft auch, okay, ein bisschen logisch drüber nachdenken.

00:37:47.230 --> 00:37:49.550
Okay, wie funktioniert das Modell? Was ist hier vielleicht das Problem?

00:37:51.490 --> 00:37:55.970
Was haben die Beispiele gemeinsam, die halt nicht so gut funktionieren?

00:37:56.070 --> 00:37:57.430
Vielleicht brauche ich auch einfach ein bisschen mehr Daten.

00:37:57.810 --> 00:38:00.730
Ich habe nur sehr wenige Beispiele aus diesem Bereich.

00:38:01.490 --> 00:38:04.630
Mal gucken, wie es funktioniert, wenn ich einfach ein bisschen mehr hinzugebe.

00:38:04.630 --> 00:38:33.270
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.

00:38:33.870 --> 00:38:36.450
Und das ist oft vielleicht ein bisschen einfacher

00:38:36.450 --> 00:38:37.470
im Kontext vorher zu sagen.

00:38:37.470 --> 00:38:38.330
Und dann kannst du immer noch sagen,

00:38:38.450 --> 00:38:43.170
okay, ist das, sobald ich weiß, da geht es um eine Lokalität,

00:38:43.850 --> 00:38:45.210
habe ich einen zweiten Prozess, der dann sagt,

00:38:45.310 --> 00:38:47.430
okay, der grenzt das ein bisschen mehr ein und so weiter.

00:38:47.490 --> 00:38:49.390
Das sind alles die Entscheidungen, die man halt treffen muss,

00:38:49.470 --> 00:38:52.250
die auch oft sehr spezifisch sind und darauf ankommen,

00:38:52.330 --> 00:38:53.510
was man halt für ein Problem lösen möchte.

00:38:56.670 --> 00:38:59.070
Ja, also so in der Praxis kriegt man dann immer oft so,

00:39:01.130 --> 00:39:03.710
was ich bei Textkategorisierungen

00:39:03.710 --> 00:39:05.150
dann die ganze Zeit gemacht habe,

00:39:05.230 --> 00:39:07.390
war halt so, in einem Preisvergleich

00:39:07.390 --> 00:39:09.230
Angebote in Kategorien sortieren

00:39:09.230 --> 00:39:10.870
und da ist es halt zum Beispiel,

00:39:11.330 --> 00:39:13.290
merkt man dann, wenn man viele Angebote

00:39:13.290 --> 00:39:15.110
hat und auch viele immer neu dazukommen von

00:39:15.110 --> 00:39:17.030
irgendwelchen Shops, die man vorher noch nicht gesehen hat,

00:39:17.450 --> 00:39:19.390
dass es unter Umständen sehr sinnvoll ist, so eine Kategorie

00:39:19.390 --> 00:39:19.950
zu haben wie

00:39:19.950 --> 00:39:22.990
alle Dinge, für die wir keine Kategorie haben, weil

00:39:22.990 --> 00:39:25.430
ansonsten verteilen die sich halt

00:39:25.430 --> 00:39:26.950
in alle Dinge, wo man eine hat

00:39:26.950 --> 00:39:29.030
und das ist gar nicht gut, weil dann

00:39:29.030 --> 00:39:31.230
Und dann denkt man sich, wo kommt dieser Kraml mal her?

00:39:32.950 --> 00:39:33.610
Ja, genau.

00:39:35.550 --> 00:39:38.410
Einerseits willst du dir natürlich vorher idealerweise Gedanken machen,

00:39:38.690 --> 00:39:39.790
wie ordne ich das ein.

00:39:40.070 --> 00:39:41.870
Du möchtest auch nicht, dass du während du das annotierst,

00:39:41.930 --> 00:39:42.830
dass jeder dann einfach mal,

00:39:42.870 --> 00:39:44.390
oh, hier habe ich noch eine Idee für eine Kategorie.

00:39:45.550 --> 00:39:47.110
So stellen sich das auch manchmal Leute vor,

00:39:47.210 --> 00:39:48.370
aber das ist natürlich nicht sinnvoll.

00:39:49.270 --> 00:39:50.590
Aber andererseits musst du dir auch überlegen,

00:39:50.690 --> 00:39:51.830
okay, wie gehe ich damit um?

00:39:51.990 --> 00:39:54.450
100 pro, du hast 1000 Beispiele annotiert.

00:39:54.510 --> 00:39:55.430
Und dann denkst du, ja, Mist,

00:39:55.430 --> 00:39:58.170
nee, hätte ich jetzt doch noch mal eine andere Kategorie machen sollen.

00:39:58.530 --> 00:40:13.050
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.

00:40:13.050 --> 00:40:31.630
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.

00:40:31.630 --> 00:40:46.650
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.

00:40:47.030 --> 00:41:15.310
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

00:41:15.310 --> 00:41:18.790
und dann setzt du das in der Praxis ein,

00:41:18.930 --> 00:41:23.730
wo auf einmal Leute nicht so typisch klassische deutsche Namen haben

00:41:23.730 --> 00:41:24.610
und dann geht das nicht.

00:41:24.770 --> 00:41:27.870
Und dann können die Leute deine Tools nicht nutzen

00:41:27.870 --> 00:41:30.770
oder haben dann ganz komische Probleme.

00:41:32.410 --> 00:41:33.730
Und das ist natürlich auch was,

00:41:33.810 --> 00:41:36.730
dass du erst rausfindest, wenn du mit den Daten arbeitest

00:41:36.730 --> 00:41:39.870
und da tatsächlich iterierst.

00:41:43.890 --> 00:41:44.410
Und...

00:41:45.310 --> 00:41:48.070
Ja, ich glaube, das ist auch

00:41:48.070 --> 00:41:50.230
das stellen sich viele Leute

00:41:50.230 --> 00:41:52.250
meistens dann zu einfach vor.

00:41:53.170 --> 00:41:54.570
Ja, es ist

00:41:54.570 --> 00:41:58.170
ja, und gute Tools

00:41:58.170 --> 00:42:00.030
an der Stelle. Sprache ist

00:42:00.030 --> 00:42:01.490
messy irgendwie, ja.

00:42:02.330 --> 00:42:04.210
Ja, und es macht auch spannend,

00:42:04.530 --> 00:42:04.790
aber

00:42:04.790 --> 00:42:08.270
es ist durchaus, also man, ich glaube,

00:42:08.270 --> 00:42:09.530
ja, man kommt nicht drum rum,

00:42:10.070 --> 00:42:11.370
sich auch wirklich Gedanken zu machen.

00:42:12.090 --> 00:42:15.050
Ja, von Ärger.

00:42:15.070 --> 00:42:17.370
es klingt so, ah, Künstliche Intelligenz

00:42:17.370 --> 00:42:18.150
macht das alles für uns.

00:42:19.150 --> 00:42:20.970
Nein, wenn du es benutzen möchtest

00:42:20.970 --> 00:42:21.870
und da wirklich,

00:42:22.890 --> 00:42:25.310
und nicht nur, du musst dir Gedanken machen, du solltest dir Gedanken machen.

00:42:25.410 --> 00:42:27.010
Ich finde es wichtig, dass wir uns alle

00:42:27.010 --> 00:42:29.070
Gedanken machen über das, was wir

00:42:29.070 --> 00:42:30.210
entwickeln,

00:42:31.050 --> 00:42:33.170
was wir erreichen wollen, wie wir das

00:42:33.170 --> 00:42:34.250
machen, ob es Sinn macht,

00:42:35.950 --> 00:42:37.150
was da für Probleme auftreten

00:42:37.150 --> 00:42:38.510
können und eben auch,

00:42:39.230 --> 00:42:40.970
wie es funktioniert. Ich glaube, es ist wichtig

00:42:40.970 --> 00:42:42.650
zu verstehen, grob,

00:42:43.130 --> 00:42:44.490
wie funktionieren diese Modelle

00:42:44.490 --> 00:42:47.750
was passiert da, auf welcher Basis

00:42:47.750 --> 00:42:49.230
machen die Vorhersagen

00:42:49.230 --> 00:42:51.110
und was bedeutet das am Ende

00:42:51.110 --> 00:42:53.750
und das bedeutet nicht, dass

00:42:53.750 --> 00:42:56.030
jeder genau im Detail

00:42:56.030 --> 00:42:57.830
Machine Learning verstehen muss

00:42:57.830 --> 00:42:59.690
genauso wie natürlich, wenn du dein Auto fährst

00:42:59.690 --> 00:43:01.670
musst du nicht verstehen, wie das Auto genau

00:43:01.670 --> 00:43:03.690
funktioniert, aber bis zum

00:43:03.690 --> 00:43:05.730
gewissen Grad ist es durchaus wichtig

00:43:05.730 --> 00:43:06.610
und deswegen finde ich es auch

00:43:06.610 --> 00:43:08.990
teilweise problematisch

00:43:08.990 --> 00:43:11.150
wenn das so ein bisschen in

00:43:11.150 --> 00:43:13.810
manchen Tools oder in manchen

00:43:13.810 --> 00:43:16.030
Produkten so komplett wegabstrahiert

00:43:16.030 --> 00:43:17.750
wird. So, uh, gib irgendwas ein, unsere

00:43:17.750 --> 00:43:19.890
magische künstliche Intelligenz macht das alles

00:43:19.890 --> 00:43:22.030
für euch. Und ich glaube,

00:43:22.110 --> 00:43:23.530
da das Problem ist, das ist halt

00:43:23.530 --> 00:43:26.050
schon allein

00:43:26.050 --> 00:43:27.970
für die

00:43:27.970 --> 00:43:29.770
Benutzer das deutlich

00:43:29.770 --> 00:43:31.870
intransparenter macht, was da eigentlich

00:43:31.870 --> 00:43:33.690
passiert. Obwohl

00:43:33.690 --> 00:43:35.710
eigentlich, glaube ich, auch der Endbenutzer sollte sich überlegen,

00:43:35.810 --> 00:43:37.330
okay, was geht da ab?

00:43:38.350 --> 00:43:39.330
Was, oder wenn, okay,

00:43:39.530 --> 00:43:41.830
eine KI macht das. Die erste

00:43:41.830 --> 00:43:43.770
Frage sollte sein, okay, womit wollt ihr die trainieren?

00:43:43.810 --> 00:43:48.230
oder auch, genau, in der Medienberichterstattung.

00:43:48.350 --> 00:43:52.210
Okay, cool, irgendwas mit KI, auf welcher Basis denn, was macht das?

00:43:53.970 --> 00:43:56.510
Und das einfach ein bisschen kritischer zu hinterfragen

00:43:56.510 --> 00:44:00.350
und ich glaube, dahin kommen wir nur, wenn wir halt, ja, auch dafür sorgen,

00:44:00.350 --> 00:44:04.890
dass jeder so ein bisschen grob eine Idee hat, wie das so funktioniert

00:44:04.890 --> 00:44:07.870
und das ein bisschen einschätzen kann.

00:44:09.710 --> 00:44:25.990
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.

00:44:28.350 --> 00:44:37.190
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.

00:44:37.190 --> 00:44:53.490
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.

00:44:54.510 --> 00:45:08.810
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.

00:45:09.510 --> 00:45:18.270
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.

00:45:20.910 --> 00:45:40.630
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.

00:45:40.630 --> 00:46:08.570
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.

00:46:10.630 --> 00:46:17.470
ich weiß nicht, die Zentralbanken ihren Zinssatz besser anpassen können.

00:46:17.630 --> 00:46:22.290
Das klingt erstmal super lame, ist jetzt nicht,

00:46:22.470 --> 00:46:26.370
nee, das ist jetzt als Beispiel so, so beginn, next,

00:46:26.770 --> 00:46:32.810
aber das ist tatsächlich was, was entsprechend auch einen sehr positiven Einfluss hat

00:46:32.810 --> 00:46:37.370
auf die Welt, auf die Wirtschaft, unser generelles Zusammenleben,

00:46:37.370 --> 00:46:40.550
also auch komplett, das ist noch nicht mal so ein Beispiel, wo du sagst,

00:46:40.590 --> 00:46:43.190
hier Finance, Evil,

00:46:43.330 --> 00:46:43.830
sondern das ist

00:46:43.830 --> 00:46:46.270
objektiv zu sagen, okay gut,

00:46:48.270 --> 00:46:49.250
davon

00:46:49.250 --> 00:46:50.150
haben wir eigentlich alle was.

00:46:52.650 --> 00:46:52.870
Jetzt

00:46:52.870 --> 00:46:54.710
als Beispiel, aber auch

00:46:54.710 --> 00:46:56.970
ja, also

00:46:56.970 --> 00:46:58.010
ich würde schon sagen,

00:46:58.010 --> 00:46:58.210
die

00:46:58.210 --> 00:47:02.050
Sachen,

00:47:02.210 --> 00:47:03.810
die relativ gut funktionieren,

00:47:03.870 --> 00:47:04.690
sind nicht immer die

00:47:04.690 --> 00:47:07.970
sexiesten, wie man so gerne sagt,

00:47:08.190 --> 00:47:08.450
aber

00:47:08.450 --> 00:47:11.390
ja.

00:47:14.090 --> 00:47:15.870
Ja, ich meine, ich kenne es halt

00:47:15.870 --> 00:47:18.030
häufig, ich weiß nicht, ob das jetzt die Welt wirklich

00:47:18.030 --> 00:47:20.190
besser macht, aber es wird viel verwendet

00:47:20.190 --> 00:47:21.870
eben in diesem ganzen Bereich, Werbung

00:47:21.870 --> 00:47:23.630
irgendwie automatisieren

00:47:23.630 --> 00:47:24.890
in gewisser Weise.

00:47:25.770 --> 00:47:27.890
Da kann man sich, glaube ich, schon, da kann man sich tatsächlich

00:47:27.890 --> 00:47:28.410
überstreiten.

00:47:32.590 --> 00:47:34.010
Was passiert eigentlich, wenn man so etwas wie

00:47:34.010 --> 00:47:36.010
Spacey auf Python als Sprache

00:47:36.010 --> 00:47:37.690
lassen würde, also Text in Python

00:47:37.690 --> 00:47:39.110
hatte eine Programmiersprache.

00:47:39.530 --> 00:47:41.750
Also Spacey jetzt an sich

00:47:41.750 --> 00:47:43.830
ist schwer zu sagen,

00:47:43.910 --> 00:47:45.990
weil natürlich die Implementationen,

00:47:45.990 --> 00:47:47.950
die wir jetzt entwickelt haben, die sind natürlich so ein bisschen

00:47:47.950 --> 00:47:49.810
getönt auf tatsächlich die natürliche Sprache.

00:47:49.910 --> 00:47:51.370
Aber es gibt sehr interessante Projekte

00:47:51.370 --> 00:47:52.210
zu

00:47:52.210 --> 00:47:55.350
Source-Code

00:47:55.350 --> 00:47:58.070
Analyse

00:47:58.070 --> 00:47:59.870
mit Machine Learning. Ich glaube GitHub hat dazu

00:47:59.870 --> 00:48:00.430
auch was gemacht.

00:48:01.950 --> 00:48:03.490
Das war sehr spannend und

00:48:03.490 --> 00:48:05.850
ja, es gibt auch ein paar Projekte, wo du

00:48:05.850 --> 00:48:06.870
halt siehst, oh cool,

00:48:07.670 --> 00:48:10.330
Auch dieser generative Ansatz, der funktioniert ja auch.

00:48:10.390 --> 00:48:13.530
Du kannst ja auch sagen, basierend auf diesen Wörtern

00:48:13.530 --> 00:48:17.090
oder diesen Tokens im Programmierensinne,

00:48:17.710 --> 00:48:20.450
sage die Nächsten voraus.

00:48:21.430 --> 00:48:24.250
Und so kannst du tatsächlich, und dann kannst du natürlich als,

00:48:26.350 --> 00:48:28.350
ja, du kannst natürlich sagen, was am Ende raus,

00:48:28.450 --> 00:48:31.970
das Ding produziert, muss natürlich gültiger Code sein,

00:48:32.030 --> 00:48:32.610
der auch läuft.

00:48:33.370 --> 00:48:35.930
Und so haben auch Modelle entwickelt,

00:48:35.930 --> 00:48:37.330
die natürlich dann

00:48:37.330 --> 00:48:39.690
programmieren können, also

00:48:39.690 --> 00:48:41.730
quasi reflektieren können, was sie

00:48:41.730 --> 00:48:43.410
irgendwie, was andere Leute auf GitHub

00:48:43.410 --> 00:48:45.250
gepostet haben. Oder der super

00:48:45.250 --> 00:48:47.870
Autocompetition oder sowas, das ist ja irgendwie dann auch

00:48:47.870 --> 00:48:49.870
relativ nah dran. Das ist zum Beispiel ein Bereich,

00:48:49.950 --> 00:48:51.790
wo ich sage, okay, das macht natürlich Sinn

00:48:51.790 --> 00:48:53.790
oder auch, wenn jetzt rein theoretisch, stell dir

00:48:53.790 --> 00:48:55.690
vor, du könntest sowas auf, wenn du hast eine

00:48:55.690 --> 00:48:57.590
riesen Codebase und du könntest sowas trainieren

00:48:57.590 --> 00:48:59.250
für deine eigene Codebase,

00:48:59.710 --> 00:49:01.590
das wäre zum Beispiel noch mal cooler

00:49:01.590 --> 00:49:03.650
als jetzt, okay, auf der Basis von

00:49:03.650 --> 00:49:05.610
vom ganzen Internet oder du hast, du

00:49:05.610 --> 00:49:06.070
finden.

00:49:06.070 --> 00:49:07.960
an mit so einem relativ

00:49:07.960 --> 00:49:10.000
generischen Modell, das jetzt irgendwie auf

00:49:10.000 --> 00:49:12.020
GitHub alles mögliche gesehen hat, dann passt das

00:49:12.020 --> 00:49:14.000
so ein bisschen an mit deiner Codebase und

00:49:14.000 --> 00:49:15.920
dann könnte es zum Beispiel dein Editor sagen,

00:49:16.020 --> 00:49:18.220
ja, hier hast du aber einen Namen benutzt,

00:49:18.300 --> 00:49:19.960
der irgendwie sieht

00:49:19.960 --> 00:49:21.300
komisch aus oder diese Variable

00:49:21.300 --> 00:49:24.220
das sieht irgendwie,

00:49:24.280 --> 00:49:25.840
das passt nicht und dann kannst du sagen, ah ja,

00:49:25.960 --> 00:49:28.040
stimmt, das war nicht so guter Stil

00:49:28.040 --> 00:49:29.980
oder stimmt, so machen

00:49:29.980 --> 00:49:31.980
wir das ja eigentlich nicht in dieser Codebase. Das ist

00:49:31.980 --> 00:49:33.820
zum Beispiel ganz spannend, aber das ist auch wieder

00:49:33.820 --> 00:49:35.620
sowas, das ist cool,

00:49:36.060 --> 00:49:37.740
Aber ist jetzt vielleicht nicht so

00:49:37.740 --> 00:49:39.960
hypig wie, wow,

00:49:40.100 --> 00:49:41.380
AI schreibt jetzt,

00:49:41.700 --> 00:49:43.300
programmiert jetzt für uns.

00:49:45.940 --> 00:49:47.480
Aber man muss eben auch sagen,

00:49:47.820 --> 00:49:49.620
auch selbst wenn du eben solche Modelle

00:49:49.620 --> 00:49:50.540
trainierst, die eben

00:49:50.540 --> 00:49:53.620
die nächsten Wörter vorhersagen, die können super

00:49:53.620 --> 00:49:55.520
interessante Dinge ausgeben.

00:49:55.640 --> 00:49:56.340
Aber im Endeffekt,

00:49:57.420 --> 00:49:59.120
dein Modell ist kein Programmierer.

00:49:59.240 --> 00:50:01.240
Dein Modell kopiert

00:50:01.240 --> 00:50:03.500
Programmierer.

00:50:03.500 --> 00:50:04.880
Genauso wie wenn du jetzt irgendwie

00:50:04.880 --> 00:50:07.040
so ein Modell fragst

00:50:07.040 --> 00:50:09.140
zu medizinischen

00:50:09.140 --> 00:50:11.120
Themen oder so, auch wenn das das ganze Internet

00:50:11.120 --> 00:50:13.000
gelesen hat, das kann sich

00:50:13.000 --> 00:50:14.920
dann als Doktor ausgeben oder so,

00:50:14.960 --> 00:50:16.720
als Arzt ausgeben oder es kann sich als

00:50:16.720 --> 00:50:19.080
es kann genau

00:50:19.080 --> 00:50:20.800
diesen Text produzieren,

00:50:20.920 --> 00:50:21.880
aber es kann nicht unbedingt

00:50:21.880 --> 00:50:25.360
Krebs heilen, weil es eben

00:50:25.360 --> 00:50:26.380
nur das

00:50:26.380 --> 00:50:28.780
repliziert, was

00:50:28.780 --> 00:50:30.420
existiert

00:50:30.420 --> 00:50:31.900
an Text über

00:50:31.900 --> 00:50:34.240
die Heilung von Krebs zum Beispiel.

00:50:34.880 --> 00:50:57.440
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.

00:50:57.600 --> 00:51:14.440
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.

00:51:14.660 --> 00:51:22.420
Jede Firma hat große Abteilungen, die sich halt mit Web, Apps, User Experience und so weiter beschäftigen.

00:51:22.460 --> 00:51:23.120
Das ist ganz normal.

00:51:24.340 --> 00:51:29.480
Und das geht auch nicht zurück, nur weil sich jeder jetzt irgendwie einen Online-Blog einrichten kann.

00:51:29.500 --> 00:51:33.360
Was sich halt vielleicht dann doch verändern könnte, ist halt irgendwie die Art und Weise, wie man sowas macht.

00:51:33.480 --> 00:51:39.180
Also dass man halt jetzt nicht vielleicht pure Syntax schreibt, sondern vielleicht irgendwie auch logische Gedanken irgendwie formulieren kann

00:51:39.180 --> 00:51:43.520
und die Syntax dafür dann übernommen wird vom Alkoholismus.

00:51:43.680 --> 00:51:45.420
Ich weiß nicht, ob das wirklich gehen kann.

00:51:46.820 --> 00:52:10.680
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.

00:52:10.680 --> 00:52:35.660
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.

00:52:35.660 --> 00:52:44.940
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…

00:52:44.940 --> 00:52:46.580
Bei den einen wäre es mehr, bei den anderen weniger, schade.

00:52:47.400 --> 00:53:00.840
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.

00:53:00.840 --> 00:53:02.900
also ich denke jetzt gerade an sowas wie Lehrer zum Beispiel,

00:53:03.140 --> 00:53:04.880
wo man sich sagt, ja gut, also wenn das

00:53:04.880 --> 00:53:06.960
jetzt mit dem, also vorher fand man

00:53:06.960 --> 00:53:08.700
das vielleicht mit irgendwie

00:53:08.700 --> 00:53:10.700
Remote-Dinge unterrichten oder so,

00:53:11.120 --> 00:53:12.940
pui bäh, und jetzt konnte man halt

00:53:12.940 --> 00:53:14.880
nicht anders und jetzt haben die Leute gesehen, ah, es geht ja doch,

00:53:15.200 --> 00:53:16.860
ist ja gar nicht so schlecht, warum

00:53:16.860 --> 00:53:18.880
ist das eigentlich besser,

00:53:19.040 --> 00:53:20.980
wenn das jemand, der aus dem gleichen

00:53:20.980 --> 00:53:22.040
Dorf kommt, wie ich macht,

00:53:22.240 --> 00:53:24.980
sozusagen, und könnte es nicht auch sein,

00:53:25.040 --> 00:53:26.980
dass ich da jemandem zuhöre,

00:53:26.980 --> 00:53:28.920
der wirklich richtig Ahnung davon hat, der muss aber

00:53:28.920 --> 00:53:29.740
nicht unbedingt hier sein.

00:53:30.840 --> 00:53:32.880
Hm, also es könnte schon sein, dass sich...

00:53:32.880 --> 00:53:38.080
Ich finde es schon spannend, was sich halt ja auch jetzt durch die Situation, die Corona-Situation da entwickelt.

00:53:38.080 --> 00:53:42.300
Und man muss auch, was jetzt Jobs angeht, man muss es natürlich realistisch sehen.

00:53:42.380 --> 00:53:50.440
Es gibt viele Jobs, die werden wegfallen oder die sind bereits weggefallen und werden durch Technologie generell wegfallen.

00:53:50.560 --> 00:53:55.080
Und das betrifft entsprechende Menschen und das betrifft auch entsprechende Bevölkerungsgruppen.

00:53:56.500 --> 00:54:02.380
Und eben leider auch entsprechende Bevölkerungsgruppen, die schon eh weniger privilegiert sind als andere.

00:54:03.080 --> 00:54:06.000
Das ist die Praxis. So ist es.

00:54:06.140 --> 00:54:09.040
Meistens so, aber ich weiß gar nicht, ob es diesmal so unbedingt sein muss.

00:54:09.160 --> 00:54:12.840
Oder mich würde es freuen, wenn es auch mal andere trifft.

00:54:13.000 --> 00:54:15.240
Aber gut, keine Ahnung. Vielleicht trifft es auch immer die gleichen.

00:54:16.080 --> 00:54:19.840
Die Sache, das ist halt immer ein viel tiefgehendes Problem.

00:54:19.980 --> 00:54:21.720
Natürlich, grundsätzlich ist es ja nicht schlecht.

00:54:21.800 --> 00:54:24.300
Wenn wir alle weniger arbeiten müssten, wäre das toll.

00:54:24.720 --> 00:54:46.560
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.

00:54:46.560 --> 00:54:59.400
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.

00:54:59.720 --> 00:55:13.460
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.

00:55:15.960 --> 00:55:37.700
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.

00:55:39.000 --> 00:55:41.840
Ich weiß nicht, ist es einfacher, juristische Texte zu verarbeiten?

00:55:42.840 --> 00:56:10.160
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.

00:56:10.160 --> 00:56:24.740
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.

00:56:24.740 --> 00:56:35.780
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.

00:56:36.640 --> 00:56:43.840
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.

00:56:44.720 --> 00:56:46.020
Formal, formulisiert.

00:56:46.100 --> 00:56:46.460
Formal.

00:56:47.060 --> 00:56:48.140
Irgendwie so, ich weiß nicht.

00:56:48.580 --> 00:56:53.460
Ja, das war jetzt so ein Anglizismus-Fail, also formulaic wollte ich sagen.

00:56:53.500 --> 00:56:53.880
Ah, ja.

00:56:54.260 --> 00:56:56.120
Egal, also

00:56:56.120 --> 00:56:58.840
es ist auf jeden Fall sehr spannend, aber natürlich, was man

00:56:58.840 --> 00:57:00.820
zum Beispiel auch im juristischen Bereich, du musst ja auch

00:57:00.820 --> 00:57:02.780
immer bedenken, am Ende sitzt da ein Richter oder so,

00:57:03.340 --> 00:57:03.680
wie jetzt in

00:57:03.680 --> 00:57:06.720
vielen Fällen, und trifft eine

00:57:06.720 --> 00:57:08.940
Entscheidung. Und das ist auch eine Entscheidung basierend

00:57:08.940 --> 00:57:10.620
auf einer

00:57:10.620 --> 00:57:11.720
menschlichen Interpretation.

00:57:12.760 --> 00:57:14.960
Und das steht ja nach wie vor

00:57:14.960 --> 00:57:15.900
am Ende. Und

00:57:15.900 --> 00:57:18.660
klar, man kann so ein bisschen, natürlich,

00:57:18.760 --> 00:57:20.640
man kann Technik nutzen, um Fehler

00:57:20.640 --> 00:57:22.020
zu vermeiden. Es gibt viele Dinge,

00:57:22.720 --> 00:57:25.400
wo man sagen kann, okay, du hast ganz viele Dokumente,

00:57:25.400 --> 00:57:28.760
da kannst du ein Computer drüber lesen lassen,

00:57:28.820 --> 00:57:31.240
wenn da irgendein Problem ist, wenn irgendwas anders ist,

00:57:31.320 --> 00:57:35.620
wenn irgendwas verdächtig aussieht, kannst du da halt nochmal Aufmerksamkeit ...

00:57:35.620 --> 00:57:37.420
Ich glaube, der Algorithmus könnte an der Stelle zum Beispiel

00:57:37.420 --> 00:57:42.180
relativ genau vorhersagen, was so der Spielraum realistischerweise denn ist.

00:57:42.600 --> 00:57:45.300
Ich meine, man kann jetzt irgendwie in einem juristischen Kommentar nachschlagen

00:57:45.300 --> 00:57:49.520
und gucken, wie könnte denn der jeweilige Sachverhalt interpretierbar sein.

00:57:50.080 --> 00:57:52.580
Und ich glaube, sowas kann halt der Algorithmus auch recht gut.

00:57:53.480 --> 00:58:08.800
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?

00:58:08.800 --> 00:58:38.780
Das ist ja das Straßenverkehrsrecht trainiert.

00:58:38.800 --> 00:58:40.720
übertreiben und dann Leuten zu erzählen,

00:58:40.820 --> 00:58:42.840
die ist 99,9%

00:58:42.840 --> 00:58:44.340
korrekt oder so.

00:58:45.100 --> 00:58:46.720
Was natürlich, schon allein

00:58:46.720 --> 00:58:48.580
wenn du sowas hörst, da müssen die eigentlich

00:58:48.580 --> 00:58:50.300
die Alarmglocken angehen. Aber

00:58:50.300 --> 00:58:51.980
Leute glauben das, weil ja,

00:58:52.140 --> 00:58:54.240
ist halt künstliche Intelligenz und

00:58:54.240 --> 00:58:56.280
dann soll

00:58:56.280 --> 00:58:58.440
diese künstliche Intelligenz entscheidet dann halt, ob

00:58:58.440 --> 00:59:00.380
jemand auf Bewährung entlassen wird oder nicht.

00:59:01.040 --> 00:59:02.540
Auf der Basis von, keine Ahnung,

00:59:02.660 --> 00:59:04.480
unklar, wird ja nicht gesagt, aber

00:59:04.480 --> 00:59:07.040
angeblich 99,9%

00:59:07.040 --> 00:59:07.700
korrekt oder so.

00:59:08.800 --> 00:59:19.180
Und da sind natürlich alle Entscheidungen, die Menschen gemacht haben, inklusive jeglicher Voreingenommenheit, ob gut oder ob schlecht, drin widergespiegelt.

00:59:20.880 --> 00:59:27.320
Aber andererseits gibt den Menschen das schöne Gefühl, das sind ja nicht wir, wir müssen ja jetzt die Entscheidung treffen.

00:59:27.820 --> 00:59:29.180
Das ist ja das System.

00:59:30.020 --> 00:59:31.820
Und das ist sehr, sehr gefährlich.

00:59:31.980 --> 00:59:33.560
Und eigentlich, was ich immer finde,

00:59:33.920 --> 00:59:36.200
Leute denken immer an diese Dystopie,

00:59:36.380 --> 00:59:40.440
wo die KI uns alle, weiß ich nicht, umbringt

00:59:40.440 --> 00:59:42.640
oder schlauer ist als wir alle

00:59:42.640 --> 00:59:44.180
und die Technologie funktioniert

00:59:44.180 --> 00:59:46.020
und die uns dann alle unterdrückt oder sowas.

00:59:46.380 --> 00:59:49.200
Aber was viel, viel gefährlicher ist,

00:59:49.240 --> 00:59:51.860
ist eine Zukunft, die auch viel früher passieren wird,

00:59:51.940 --> 00:59:54.460
wo es so lala funktioniert, wie momentan schon.

00:59:54.900 --> 00:59:56.580
Manches funktioniert ganz gut, manches halt nicht.

00:59:57.460 --> 00:59:59.160
Aber wo es gefährlich wird,

00:59:59.160 --> 00:59:59.880
ist, wenn

00:59:59.880 --> 01:00:02.720
die Allgemeinheit glaubt, dass es funktioniert.

01:00:02.860 --> 01:00:04.620
Das ist viel, viel gefährlicher als so eine dystopische

01:00:04.620 --> 01:00:07.060
KI-Zukunft, wo die Maschinen

01:00:07.060 --> 01:00:09.080
alles super machen

01:00:09.080 --> 01:00:10.820
und auf einmal super intelligent sind.

01:00:11.140 --> 01:00:13.040
Ja, wenn sie super intelligent werden, vielleicht machen sie es dann ja auch gut.

01:00:13.180 --> 01:00:13.400
Wer weiß.

01:00:14.260 --> 01:00:16.960
Aber auch wenn wirklich die Idee

01:00:16.960 --> 01:00:18.500
zumindest, diese Prämisse funktioniert.

01:00:19.560 --> 01:00:20.760
Was gefährlich ist,

01:00:20.820 --> 01:00:22.700
wenn du hast da ein System, was irgendjemand

01:00:22.700 --> 01:00:25.040
so zusammengehackt hat mit allem möglichen

01:00:25.040 --> 01:00:26.860
Zeugs, was gar nicht

01:00:26.860 --> 01:00:27.620
wirklich funktioniert.

01:00:28.520 --> 01:00:30.980
Golden Age für gute Entwickler, die können ja einfach

01:00:30.980 --> 01:00:32.620
dann so tun, als haben die ein gewünschtes Ergebnis

01:00:32.620 --> 01:00:34.240
und alle Leute glauben, was sie da erzählen.

01:00:34.320 --> 01:00:36.160
Ja, genau, das ist unglaublich.

01:00:36.300 --> 01:00:39.020
Zum Beispiel, auch hier historisch

01:00:39.020 --> 01:00:40.920
vielleicht ganz relevant, auch so für uns,

01:00:42.340 --> 01:00:42.760
dann kommt

01:00:42.760 --> 01:00:44.540
jemand an und holt deinen Nachbarn ab,

01:00:44.720 --> 01:00:46.980
weil das KI-System

01:00:46.980 --> 01:00:48.460
das 99,9%

01:00:48.460 --> 01:00:50.900
korrekt legt, gesagt hat, dass der ein Terrorist

01:00:50.900 --> 01:00:52.480
ist. Dann sagst du dir, ja,

01:00:52.820 --> 01:00:54.600
also du hoffentlich jetzt nicht, aber so,

01:00:54.600 --> 01:00:56.500
dann sagen sich viele Leute, ja gut, wenn das

01:00:56.500 --> 01:00:58.380
halt so ist, ist halt

01:00:58.380 --> 01:01:00.100
die Technologie, wenn die, das ist ja

01:01:00.100 --> 01:01:02.320
99,9 Prozent, das muss schon richtig sein.

01:01:03.980 --> 01:01:04.340
Und

01:01:04.340 --> 01:01:06.400
das ist sehr düster und

01:01:06.400 --> 01:01:08.280
das ist genauso düster,

01:01:08.400 --> 01:01:10.360
wenn das halt, was weiß ich, überhaupt nicht funktioniert

01:01:10.360 --> 01:01:12.260
und so ein komisches Modell ist, was man immer trainiert hat.

01:01:13.140 --> 01:01:14.480
Ja, aber solche Modelle gibt's

01:01:14.480 --> 01:01:16.380
ja schon. Wenn es halt gut genug funktioniert,

01:01:16.860 --> 01:01:18.320
wenn es halt gut genug funktioniert, dass man

01:01:18.320 --> 01:01:20.380
es einsetzt, aber einem

01:01:20.380 --> 01:01:22.300
dann halt egal ist, dass es halt sehr ungerecht ist

01:01:22.300 --> 01:01:24.220
und man sich dann auch nicht mehr dafür verantworten muss,

01:01:24.300 --> 01:01:25.880
weil es hat ja der Computer entschieden, dass es schon,

01:01:26.120 --> 01:01:27.580
Das ist halt so ein bisschen wie eben, man geht zur Bank

01:01:27.580 --> 01:01:29.820
und die hat einem gesagt, so, nee, kein Kredit für dich

01:01:29.820 --> 01:01:31.240
heute. Schade.

01:01:32.580 --> 01:01:33.540
Wo du halt irgendwie so

01:01:33.540 --> 01:01:35.240
Bewegungen getestet werden.

01:01:35.560 --> 01:01:38.000
Wo du halt von oben so Drohnen hast, die gucken, was du halt machst.

01:01:38.380 --> 01:01:39.780
Und wenn du dich halt auf den Parkplan setzt und halt

01:01:39.780 --> 01:01:41.340
dem Strom nicht folgst oder sowas, dann

01:01:41.340 --> 01:01:43.620
gehst du halt direkt in den Fokus desjenigen, der da

01:01:43.620 --> 01:01:45.140
guckt, was denn da los ist.

01:01:45.300 --> 01:01:47.100
Weil könnte ja sein, dass da irgendwas

01:01:47.100 --> 01:01:49.600
nicht in Ordnung ist. Ja, ich weiß gar nicht, wer das,

01:01:49.600 --> 01:01:51.520
von wem dieses Bild war, aber

01:01:51.520 --> 01:01:53.640
im Grunde,

01:01:54.020 --> 01:01:55.640
wenn man Leuten

01:01:55.640 --> 01:01:57.620
vermitteln möchte, was denn jetzt diese

01:01:57.620 --> 01:01:59.640
was denn

01:01:59.640 --> 01:02:01.620
in Zukunft, wie das denn funktioniert,

01:02:02.200 --> 01:02:03.620
dann fand ich das sehr hilfreich,

01:02:03.680 --> 01:02:05.460
sich das so vorzustellen, dass man sagt, naja, so

01:02:05.460 --> 01:02:07.600
künstliche Intelligenz, wir haben es im Grunde mit denen heute

01:02:07.600 --> 01:02:09.300
auch schon täglich zu tun,

01:02:09.900 --> 01:02:11.520
so mit denen wir es dann in Zukunft zu tun kriegen

01:02:11.520 --> 01:02:13.880
und zwar Unternehmen oder Organisationen,

01:02:13.920 --> 01:02:15.660
Behörden, die sind im Grunde schon

01:02:15.660 --> 01:02:17.540
sowas. Die sind nur halt sehr

01:02:17.540 --> 01:02:19.620
viel langsamer, aber im Grunde

01:02:19.620 --> 01:02:21.640
sind die so und

01:02:21.640 --> 01:02:23.500
man muss sich das nur vorstellen, die Dinger werden

01:02:23.500 --> 01:02:25.560
jetzt halt richtig schnell. So, dann

01:02:25.560 --> 01:02:27.660
hat man so eine Vorstellung, was da passieren

01:02:27.660 --> 01:02:29.740
wird. Das ist eigentlich

01:02:29.740 --> 01:02:31.520
eine ganz gute Analogie auch, weil

01:02:31.520 --> 01:02:33.600
okay, momentan auch so eine Behörde, okay, da hast

01:02:33.600 --> 01:02:35.760
du entsprechende Regeln, entsprechende

01:02:35.760 --> 01:02:39.560
Abläufe und das wird

01:02:39.560 --> 01:02:41.480
halt reproduziert von Menschen,

01:02:41.620 --> 01:02:42.880
die halt da sitzen am Schreibtisch.

01:02:44.180 --> 01:02:45.580
Und ja, und am Ende kannst

01:02:45.580 --> 01:02:47.600
du, ein Computer kann das genauso machen, natürlich,

01:02:47.840 --> 01:02:48.340
aber ohne

01:02:48.340 --> 01:02:50.500
ja.

01:02:51.240 --> 01:02:53.240
Ohne Rechtsweg, Rechtsweg ausgeschlossen.

01:02:53.620 --> 01:02:55.260
Ja, genau. Computer irrt nicht.

01:02:55.560 --> 01:03:22.680
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.

01:03:24.000 --> 01:03:25.740
damit halt nichts übersehen wird.

01:03:26.180 --> 01:03:29.200
Aber so muss man meiner Meinung nach auch an die Dinge rangehen.

01:03:29.340 --> 01:03:32.640
Wenn man sieht, ein neues System kann Tumore erkennen,

01:03:32.960 --> 01:03:36.740
kann genauso gut Tumore erkennen wie ein Mensch oder so.

01:03:37.140 --> 01:03:37.820
Das heißt ja erstmal,

01:03:38.000 --> 01:03:39.420
erstmal heißt das ja nicht,

01:03:39.620 --> 01:03:41.980
dass das System überhaupt besser ist als ein Mensch.

01:03:42.120 --> 01:03:43.720
Das heißt, dass normal,

01:03:44.040 --> 01:03:47.440
du hast das Datenset, mit dem das trainiert wurde,

01:03:47.800 --> 01:03:49.820
und dann hast du die Vergleichsdaten,

01:03:50.300 --> 01:03:51.460
an denen das ausgewertet wird.

01:03:51.460 --> 01:04:10.720
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.

01:04:12.640 --> 01:04:30.880
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.

01:04:30.880 --> 01:04:50.300
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.

01:04:51.160 --> 01:04:59.900
Ja, oder wahrscheinlich eher andere Menschen, die Maschinen benutzen, um uns zu versklavten. Die haben halt eine Intention, die Maschinen gar nicht so.

01:05:01.100 --> 01:05:03.180
Ja, ich glaube, das ist

01:05:03.180 --> 01:05:04.960
viel nähere

01:05:04.960 --> 01:05:06.460
und realistischere Problem,

01:05:07.700 --> 01:05:09.000
den wir uns stellen müssen.

01:05:09.160 --> 01:05:10.460
Oder wo sich auch, glaube ich, jeder Entwickler

01:05:10.460 --> 01:05:12.720
fragen muss, okay, was mache ich hier?

01:05:14.100 --> 01:05:15.040
Wozu trage ich

01:05:15.040 --> 01:05:16.560
hierbei? Ist das

01:05:16.560 --> 01:05:18.060
gut oder schlecht?

01:05:19.860 --> 01:05:20.980
Und ich glaube, das kann man

01:05:20.980 --> 01:05:22.720
nicht unbedingt voneinander trennen.

01:05:24.240 --> 01:05:24.980
Ich glaube, man kann

01:05:24.980 --> 01:05:27.040
nicht sitzen in seinem Vakuum und sagen, oh, ist mir egal,

01:05:27.140 --> 01:05:29.060
ich schreibe nur gut. Ja, man kann auch relativ

01:05:29.060 --> 01:05:30.720
wenig gegen machen. Also selbst wenn man jetzt irgendwie

01:05:30.720 --> 01:05:32.560
vernünftige Lizenzbedingungen nimmt, ob man da

01:05:32.560 --> 01:05:34.420
irgendwie dann sich aus dem Schein erhält, das ist schwierig.

01:05:35.760 --> 01:05:36.880
Ja, das ist auch

01:05:36.880 --> 01:05:38.580
was, wo wir uns Gedanken machen müssen, okay, wenn wir

01:05:38.580 --> 01:05:40.040
jetzt zum Beispiel mehr

01:05:40.040 --> 01:05:42.560
Funktionalitäten für bestimmte Sprachen zur Verfügung

01:05:42.560 --> 01:05:44.540
stellen, wer benutzt das?

01:05:46.020 --> 01:05:46.240
Wer

01:05:46.240 --> 01:05:48.780
und okay,

01:05:48.840 --> 01:05:50.700
wir machen das öffentlich verfügbar, open source.

01:05:52.000 --> 01:05:52.620
Wie viele

01:05:52.620 --> 01:05:54.700
Menschen gibt es, die diese Sprache sprechen? Welche Regierungen

01:05:54.700 --> 01:05:56.460
gibt es? Gibt es da

01:05:56.460 --> 01:05:58.540
Problematiken, wo die

01:05:58.540 --> 01:06:00.000
Regierung vielleicht, ja, eine

01:06:00.000 --> 01:06:01.840
Regierung, die eben zum Beispiel

01:06:01.840 --> 01:06:04.340
gegen entsprechende Bevölkerungsgruppen

01:06:04.340 --> 01:06:04.700
arbeitet

01:06:04.700 --> 01:06:07.940
und vielleicht die Möglichkeit hat,

01:06:08.280 --> 01:06:09.980
diese Technologie am effizientesten zu verwenden?

01:06:10.900 --> 01:06:11.260
Oder

01:06:11.260 --> 01:06:14.180
ist es sinnvoll

01:06:14.180 --> 01:06:16.040
für die Allgemeinheit, auch

01:06:16.040 --> 01:06:18.060
den einzelnen

01:06:18.060 --> 01:06:20.220
Individuen und Aktivisten oder was

01:06:20.220 --> 01:06:21.420
weiß ich, die Möglichkeit zu geben,

01:06:22.220 --> 01:06:24.200
die Technologie zu benutzen, wofür Open Source

01:06:24.200 --> 01:06:25.760
natürlich eine gute

01:06:25.760 --> 01:06:28.060
Möglichkeit ist. Also das ist auch

01:06:28.060 --> 01:06:29.940
tatsächlich was, wo wir uns in unserem Alltag

01:06:29.940 --> 01:06:32.040
Gedanken drüber machen müssen, okay, was

01:06:32.040 --> 01:06:33.760
und auch vor allem, okay,

01:06:35.020 --> 01:06:36.360
so eine Bibliothek wie Spacey

01:06:36.360 --> 01:06:38.460
ist sehr verbreitet,

01:06:38.620 --> 01:06:40.140
es ist sehr beliebt,

01:06:41.100 --> 01:06:42.120
viele Leute benutzen das.

01:06:45.320 --> 01:06:46.200
Zwei Millionen

01:06:46.200 --> 01:06:48.000
Downloads pro Monat

01:06:48.000 --> 01:06:50.280
gehen irgendwo raus

01:06:50.280 --> 01:06:52.140
an irgendwelche Systeme

01:06:52.140 --> 01:06:54.300
und an irgendwelche Server

01:06:54.300 --> 01:06:56.180
und Dinge, die Leute damit machen.

01:06:57.420 --> 01:06:58.220
Und in irgendwelche,

01:06:58.300 --> 01:07:01.020
tausende Firmen, die damit auch Dinge machen

01:07:01.020 --> 01:07:03.140
und wer weiß, wohin noch.

01:07:06.700 --> 01:07:09.320
Ja, es ist schwierig. Ich weiß auch nicht, inwiefern...

01:07:09.320 --> 01:07:11.000
Natürlich, also ich bin nach wie vor Verfechter von

01:07:11.000 --> 01:07:12.640
Open Source und ich glaube, Open Source als

01:07:12.640 --> 01:07:14.960
einerseits natürlich als

01:07:14.960 --> 01:07:16.580
Software-Modell, aber eben auch als

01:07:16.580 --> 01:07:18.840
und natürlich andererseits, muss man auch sagen, als

01:07:18.840 --> 01:07:21.020
Geschäftsmodell. Das ist ja eine...

01:07:22.160 --> 01:07:23.020
Open Source ist ja

01:07:23.020 --> 01:07:24.900
auch weiter und weiter

01:07:24.900 --> 01:07:25.780
verbreitet als

01:07:25.780 --> 01:07:28.780
Software-Vertrieb

01:07:28.780 --> 01:07:30.460
quasi. Das ist ja auch

01:07:30.460 --> 01:07:33.300
eine Realität der Open-Source-Software.

01:07:33.840 --> 01:07:34.400
Irgendwie

01:07:34.400 --> 01:07:36.240
tatsächlich hat sich das so

01:07:36.240 --> 01:07:38.080
durchgesetzt irgendwie.

01:07:38.780 --> 01:07:40.320
Ich erinnere mich noch an, das war

01:07:40.320 --> 01:07:42.100
an die Halloween-Papers

01:07:42.100 --> 01:07:43.700
1997 von Microsoft,

01:07:44.660 --> 01:07:46.480
wo sie geschrieben haben, oh nein, das wird

01:07:46.480 --> 01:07:48.020
uns irgendwann umbringen langfristig.

01:07:48.020 --> 01:07:49.560
Das ist tatsächlich passiert, sehr gut.

01:07:50.040 --> 01:07:51.540
Aber auf der anderen Seite, Microsoft heute ist auch wieder

01:07:51.540 --> 01:07:53.900
und Microsoft ist einer der Vorreiter

01:07:53.900 --> 01:07:54.540
Ja, ja, ja, genau.

01:07:55.380 --> 01:07:56.560
Im Bereich Open Source, ja.

01:07:57.560 --> 01:07:59.640
Hätte ich mir damals nicht träumen lassen, aber es ist tatsächlich

01:07:59.640 --> 01:08:01.140
passiert, ja, erstaunlich.

01:08:01.260 --> 01:08:03.320
Was interessant ist, finde ich auch da,

01:08:03.460 --> 01:08:05.120
im Bereich Open Source ist, ich glaube,

01:08:05.460 --> 01:08:07.040
es wird oft missverstanden, Leute denken, ah,

01:08:07.280 --> 01:08:09.900
Open Source ist verbreitet, weil es gratis ist.

01:08:10.540 --> 01:08:10.900
Natürlich,

01:08:11.460 --> 01:08:14.020
die Tatsache, dass es halt meist frei verfügbar ist,

01:08:14.020 --> 01:08:15.920
ist auf jeden Fall

01:08:15.920 --> 01:08:17.460
ein Aspekt, aber im

01:08:17.460 --> 01:08:19.280
kommerziellen Bereich oder

01:08:19.280 --> 01:08:20.780
was Firmen angeht,

01:08:21.640 --> 01:08:23.740
die Tatsache, dass es gratis ist, ist nicht

01:08:23.740 --> 01:08:25.660
unbedingt der Knackpunkt. Der Knackpunkt ist,

01:08:25.780 --> 01:08:27.160
dass es offen ist

01:08:27.160 --> 01:08:29.480
und dass man damit

01:08:29.480 --> 01:08:31.720
programmieren kann. Der Code ist

01:08:31.720 --> 01:08:33.600
da und wenn du diese Entwicklertools hast,

01:08:33.740 --> 01:08:35.720
die eben auch Open Source sind, also Open Source

01:08:35.720 --> 01:08:37.880
Bibliotheken, zur Verfügung gestellt

01:08:37.880 --> 01:08:39.180
wird und die

01:08:39.180 --> 01:08:41.460
Tatsache, dass du dich nicht auf

01:08:41.460 --> 01:08:43.880
eine Lösung

01:08:43.880 --> 01:08:45.620
festlegst oder auf einen Anbieter

01:08:45.620 --> 01:08:47.580
festlegen musst und dass

01:08:47.580 --> 01:08:49.780
du dich da nicht einschließen lässt

01:08:49.780 --> 01:08:51.660
und diese

01:08:51.660 --> 01:08:53.640
Autonomie bewahrst. Ich glaube, das ist in der

01:08:53.640 --> 01:08:55.460
Praxis tatsächlich, was für Firmen deutlich

01:08:55.460 --> 01:08:57.740
entscheidender ist, als die Tatsache, dass es 0 Euro kostet.

01:08:58.220 --> 01:08:59.820
Denn es kostet ja in der Praxis

01:08:59.820 --> 01:09:01.460
nicht 0 Euro, mit einer

01:09:01.460 --> 01:09:02.940
Open-Source-Bibliothek was zu entwickeln.

01:09:04.660 --> 01:09:05.400
Und da ist wieder

01:09:05.400 --> 01:09:07.080
unglaublich viel Geld rein investiert in

01:09:07.080 --> 01:09:09.820
vor allem KI, Machine Learning,

01:09:10.060 --> 01:09:11.400
die entsprechende Entwicklung. Das sind top

01:09:11.400 --> 01:09:12.220
bezahlte Entwickler.

01:09:13.520 --> 01:09:14.640
Weswegen auch zum Beispiel

01:09:14.640 --> 01:09:17.880
Entwicklertools und Developer Experience

01:09:17.880 --> 01:09:19.760
und Tools, die halt

01:09:19.760 --> 01:09:22.060
sowas fördern und

01:09:22.060 --> 01:09:23.440
einfach die Entwickler produktiver machen.

01:09:23.640 --> 01:09:26.020
großen Einfluss haben können, weil

01:09:26.020 --> 01:09:27.960
cool, wenn dein top bezahlter

01:09:27.960 --> 01:09:29.360
Machine Learning Entwickler

01:09:29.360 --> 01:09:32.320
ein bisschen weniger rumsitzen muss und

01:09:32.320 --> 01:09:34.420
ja,

01:09:34.540 --> 01:09:36.580
stupide Arbeit machen muss und einfach besser arbeiten kann,

01:09:36.720 --> 01:09:38.320
ist das natürlich besser

01:09:38.320 --> 01:09:40.300
für alle. Lohnt sich auf jeden Fall, aber

01:09:40.300 --> 01:09:42.460
ich weiß nicht genau, also ich habe doch häufig

01:09:42.460 --> 01:09:44.760
das Gefühl, dass es da so ein gewisses Marktversagen

01:09:44.760 --> 01:09:45.900
gibt irgendwie, weil

01:09:45.900 --> 01:09:48.360
wenn man jetzt sich zum Beispiel eben sowas

01:09:48.360 --> 01:09:50.380
anguckt wie Pandas oder Django oder

01:09:50.380 --> 01:09:52.580
Spaces, weiß ich es gar nicht genau,

01:09:52.880 --> 01:10:14.320
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.

01:10:14.320 --> 01:10:17.140
Tatsächlich ist es aber so, dass kaum Firmen das machen.

01:10:17.160 --> 01:10:24.220
Das liegt daran, dass die Informationsasymmetrie nicht zu irgendwelchen kompetenteren oder, ich sag mal, Entscheidungsträgern durchdringt, die Budgetverantwortung haben.

01:10:24.620 --> 01:10:29.640
Die wollen halt irgendwie Sachen, Projekte bekommen und die Projektmanager, die halt dann die Projekte bestellen oder bezahlen,

01:10:30.160 --> 01:10:34.460
die haben vielleicht schon mal von ihren Entwicklern irgendwie so ein bisschen was von oben zugehört, das irgendwie sinnvoll wäre,

01:10:34.880 --> 01:10:43.500
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.

01:10:44.080 --> 01:10:44.360
Tja.

01:10:44.920 --> 01:10:46.560
Aber so eine Versuchung ist eigentlich eine gute Idee.

01:10:47.840 --> 01:10:51.660
Also ich meine, es gibt ja verschiedene Versuche, das irgendwie zu lösen.

01:10:51.760 --> 01:10:52.660
Es ist immer ein bisschen problematisch.

01:10:53.280 --> 01:10:54.620
Es ist halt nicht einfach.

01:10:54.920 --> 01:10:58.060
Und ich glaube auch, einerseits, man sieht schon, es ändert sich was, auch in großen Firmen.

01:10:58.480 --> 01:11:06.300
Denn dieses Klischee vom alten Manager, der irgendwie kaum Computererfahrung hat, das stirbt ja langsam aus.

01:11:06.300 --> 01:11:11.040
Du hast jetzt Leute im Management, die sind in ihren 40ern, die programmieren seit ihrer Jugend.

01:11:11.200 --> 01:11:13.300
Das ist jetzt nicht mehr seltsam.

01:11:13.460 --> 01:11:17.740
Und eben auch diese Idee von so dummen Management, das irgendwie keine Ahnung hat.

01:11:18.260 --> 01:11:22.580
Gibt es immer noch, natürlich, aber in vielen Bereichen hast du halt Leute, die kennen sich aus mit Technik.

01:11:23.080 --> 01:11:26.180
Und denen kannst du auch nicht mehr irgendwelchen Schwachsinn andrehen unbedingt.

01:11:26.400 --> 01:11:30.640
Und die haben da auch Meinungen zu, zum gewissen Grad.

01:11:31.320 --> 01:11:38.020
Aber ich glaube, mit Open Source, ein Problem ist, es ist ja alles nicht wirklich standardisiert.

01:11:38.120 --> 01:11:42.800
Es gibt verschiedene Projekte, die aus den verschiedenen Motivationen heraus entstehen.

01:11:43.460 --> 01:11:48.120
Und manche sind natürlich jetzt mittlerweile gefördert von einer Stiftung.

01:11:48.220 --> 01:11:54.240
Das ist ja die Tatsache für viele dieser Scientific Computing-Geschichten auch im Python-Ökosystem.

01:11:54.920 --> 01:11:56.000
Und dann gibt es aber andere Projekte.

01:11:56.080 --> 01:11:59.140
Okay, das ist halt, irgendjemand hat das mal entwickelt, der hatte da Spaß dran.

01:12:00.300 --> 01:12:01.420
Das wurde populär.

01:12:03.040 --> 01:12:06.420
Und ja, jetzt sitzt da jemand mit einem erfolgreichen Projekt,

01:12:07.440 --> 01:12:09.460
aber keinem nicht unbedingt

01:12:09.460 --> 01:12:11.260
einem direkten Pfad

01:12:11.260 --> 01:12:13.620
zu etwas Kommerziellem

01:12:13.620 --> 01:12:14.920
draußen. Das kann man ja auch

01:12:14.920 --> 01:12:16.820
dem Entwickler nicht unbedingt anlasten.

01:12:18.380 --> 01:12:19.200
Sagen, okay, gut,

01:12:21.080 --> 01:12:21.820
das ist halt

01:12:21.820 --> 01:12:23.060
nun mal so und auch, okay, die Firmen,

01:12:23.260 --> 01:12:25.440
was willst du da machen?

01:12:29.940 --> 01:12:31.020
Es kommt halt immer darauf an,

01:12:31.020 --> 01:12:32.720
auch auf die Motivation, die zu einem

01:12:32.720 --> 01:12:34.960
Open-Source-Projekt führt. Es gibt andere Projekte, wo

01:12:34.960 --> 01:12:36.840
auch Firmen

01:12:36.840 --> 01:12:38.780
Entwickler speziell gesagt haben, okay, cool,

01:12:38.840 --> 01:12:40.700
ich entwickle das und ich habe eine Motivation,

01:12:41.680 --> 01:12:42.680
dass da entweder, wenn das

01:12:42.680 --> 01:12:44.620
populär wird, kann ich das für meine Karriere

01:12:44.620 --> 01:12:46.120
nutzen. Gibt es ja auch viele Entwickler,

01:12:46.600 --> 01:12:48.120
die sagen, hey,

01:12:48.880 --> 01:12:50.640
da kriege ich einen besseren Job. Funktioniert ja auch

01:12:50.640 --> 01:12:52.260
oft. Oder in unserem Bereich, wir haben es ja auch,

01:12:52.860 --> 01:12:53.940
die Idee war immer,

01:12:54.500 --> 01:12:56.580
wir wollen eine Firma

01:12:56.580 --> 01:12:58.060
gründen und wir wollen

01:12:58.060 --> 01:13:00.500
etwas machen in dem Bereich und

01:13:00.500 --> 01:13:02.600
in diesem Bereich arbeiten. Und die Tatsache,

01:13:02.720 --> 01:13:04.500
okay, Spacey is open source und das ist auch

01:13:04.500 --> 01:13:06.420
strategisch so,

01:13:06.800 --> 01:13:32.840
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.

01:13:34.060 --> 01:13:39.100
Der Algorithmus und die Bibliothek geben wir dir gratis und wenn du unsere Sachen gut findest und damit

01:13:39.100 --> 01:13:40.460
baust, haben wir andere Produkte,

01:13:41.140 --> 01:13:43.100
die dir auch gefallen würden, wenn du ein

01:13:43.100 --> 01:13:44.900
Spacey-Power-User bist zum Beispiel. Wenn jetzt

01:13:44.900 --> 01:13:47.220
deine Firma ein System

01:13:47.220 --> 01:13:49.000
auf Spacey aufbaut, dann willst du meistens

01:13:49.000 --> 01:13:51.000
auch deine Systeme trainieren und dann willst

01:13:51.000 --> 01:13:52.320
du Daten sammeln.

01:13:53.100 --> 01:13:55.140
Und dann hast du vielleicht auch Interesse

01:13:55.140 --> 01:13:57.100
an Prodigy und anderen Dingen, die wir

01:13:57.100 --> 01:13:58.320
darauf aufbauen.

01:13:59.040 --> 01:14:00.600
Kann Spacey Emotionen erkennen?

01:14:01.900 --> 01:14:02.820
Ja, klar.

01:14:03.420 --> 01:14:04.780
Das ist eine

01:14:04.780 --> 01:14:06.780
allgemeine Frage.

01:14:07.780 --> 01:14:08.960
Das ist jetzt erstmal meine Antwort.

01:14:09.080 --> 01:14:18.420
Nein, Gott, aber das ist halt sehr aufgeladene Emotionen, ist halt auch immer sehr abstrakt.

01:14:20.000 --> 01:14:23.420
Und es ist auch etwas, was sich nicht sehr gut generalisieren lässt.

01:14:24.260 --> 01:14:27.460
Du kannst natürlich sagen, du kannst bestimmt ein System trainieren,

01:14:28.040 --> 01:14:33.740
auf der Basis von entsprechenden Wörtern, Ausdrücken, wie Dinge präsentiert sind,

01:14:34.660 --> 01:14:53.300
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?

01:14:53.300 --> 01:14:55.340
meistens natürlich in der Marktforschung

01:14:55.340 --> 01:14:57.380
oder wer jetzt eine Marke Coca-Cola möchte

01:14:57.380 --> 01:14:59.260
wissen, wie Leute über Coca-Cola reden oder

01:14:59.260 --> 01:15:01.280
keine Ahnung. Aber

01:15:01.280 --> 01:15:03.260
ich bin auch, was ich sehr

01:15:03.260 --> 01:15:04.580
kritisch finde, sind diese

01:15:04.580 --> 01:15:06.860
General Purpose

01:15:06.860 --> 01:15:09.280
Modelle, die auch teilweise

01:15:09.280 --> 01:15:11.000
viele Cloud-Services anbieten, die sagen,

01:15:11.080 --> 01:15:12.980
oh, hier ist Sentiment Analysis für alles.

01:15:13.580 --> 01:15:15.280
Denn, selbst ob was

01:15:15.280 --> 01:15:17.060
positiv oder negativ ist oder ob was,

01:15:17.420 --> 01:15:18.540
welche Emotionen hinter

01:15:18.540 --> 01:15:21.160
einem etwas steht, selbst wenn du es messen

01:15:21.160 --> 01:15:23.200
könntest, ist unglaublich

01:15:23.200 --> 01:15:25.040
subjektiv und unglaublich

01:15:25.040 --> 01:15:26.800
themenspezifisch.

01:15:27.460 --> 01:15:29.480
Also, ein Beispiel, was ich zum Beispiel, glaube ich,

01:15:29.480 --> 01:15:31.380
in meinen Talks manchmal verwende, ist,

01:15:31.880 --> 01:15:33.300
du hast zwei Sätze.

01:15:33.460 --> 01:15:35.380
Ich liebe Katzen und ich hasse Katzen.

01:15:35.980 --> 01:15:37.680
Sind diese zwei Sätze ähnlich

01:15:37.680 --> 01:15:39.240
oder nicht ähnlich?

01:15:39.960 --> 01:15:41.480
Und teilweise frage ich, okay, kannst

01:15:41.480 --> 01:15:43.340
mal gut Publikum fragen und meistens hast du so vielleicht

01:15:43.340 --> 01:15:45.500
so 50-50 und für beides

01:15:45.500 --> 01:15:46.960
kannst du begründen.

01:15:47.220 --> 01:15:49.600
Wenn ich jetzt irgendwie generell

01:15:49.600 --> 01:15:50.400
Text analysiere,

01:15:50.940 --> 01:16:05.480
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.

01:16:06.520 --> 01:16:15.180
Aber wenn du jetzt eine Dating-App entwickelst und du möchtest gucken, ob zwei Leute aufgrund ihrer Profile zueinander passen,

01:16:15.680 --> 01:16:21.120
möchtest du das als sehr unähnlich ansehen.

01:16:21.420 --> 01:16:25.980
Weil ein Katzenhasser und ein Katzenliebhaber passen wahrscheinlich nicht zusammen.

01:16:26.060 --> 01:16:27.980
Das sind komplett polare Unterschiede.

01:16:28.460 --> 01:16:41.680
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.

01:16:43.300 --> 01:16:50.420
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.

01:16:50.700 --> 01:16:56.620
Du kannst das lösen, wenn du es eben wirklich speziell zuschneidest auf das, was du machst.

01:16:56.820 --> 01:17:02.000
Okay, also ob der Nachrichten-Informationswert positiv oder negativ ist, kriege ich dann für das jeweilige Unterfach.

01:17:02.000 --> 01:17:26.740
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.

01:17:26.820 --> 01:17:27.840
Oder sehr schlecht.

01:17:28.440 --> 01:17:31.040
Das Beispiel ist eigentlich auch ganz gut,

01:17:31.100 --> 01:17:32.220
weil das illustriert auch so ein bisschen,

01:17:33.120 --> 01:17:35.300
was man mit Machine Learning gut lösen kann

01:17:35.300 --> 01:17:36.160
und was eben zum Beispiel nicht.

01:17:36.260 --> 01:17:37.260
Also wir hatten, glaube ich, mal ein Beispiel,

01:17:37.420 --> 01:17:39.140
wo jemand versucht hat auch,

01:17:39.440 --> 01:17:43.460
ich glaube, es ging so um Supply Chain Risk und Management.

01:17:43.620 --> 01:17:45.720
Das ist auch sowas, klingt ein bisschen öde,

01:17:45.880 --> 01:17:48.180
aber ist tatsächlich was, was viel wert ist.

01:17:48.180 --> 01:17:51.020
Wenn du eben sagst, okay, du hast jetzt hier einen Händler in China,

01:17:51.140 --> 01:17:55.660
von dem beziehst du Waren, mit denen du dann irgendwas machst

01:17:55.660 --> 01:18:15.640
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.

01:18:16.360 --> 01:18:30.760
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.

01:18:30.780 --> 01:18:36.340
Ja, wenn die Kategorie Emotionen katastrophal werden würde, möchtest du das für den lokalen Ort dann wissen?

01:18:36.340 --> 01:18:40.300
Ja, oder irgendwie da und da passiert was, das möchtest du wissen und dann irgendwie zusammenhören.

01:18:40.680 --> 01:18:43.700
Und genau, also es gab irgendein so ähnlicher Fall war das.

01:18:44.080 --> 01:18:48.880
Und es ging einem auch darum, die Firma wollte rausfinden, okay, was ist jetzt gut für ihr Unternehmen?

01:18:50.000 --> 01:18:51.980
Und das ist natürlich so unglaublich abstrakt.

01:18:52.220 --> 01:18:54.900
Und der erste Schritt war, okay, die haben dann Trainingsdaten erstellt,

01:18:54.980 --> 01:18:58.080
wo sie alles, was gut für ihr Unternehmen ist, hervorgehoben haben.

01:18:59.140 --> 01:19:01.600
Inklusive Sachen, die komplett abstrakt waren.

01:19:01.780 --> 01:19:04.580
Also jetzt irgendwie, oder Dinge, die schlecht sind fürs eigene Unternehmen.

01:19:04.580 --> 01:19:31.960
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.

01:19:32.500 --> 01:19:36.900
Aber die Tatsache, dass vielleicht dein Lieferant was veröffentlicht, ist gut.

01:19:37.960 --> 01:19:39.080
So funktioniert das einfach nicht.

01:19:39.400 --> 01:19:41.580
Das wird auch ein bisschen klarer, wenn du dir überlegst,

01:19:41.660 --> 01:19:45.540
wie funktioniert das Modell und auf welcher Basis trifft das diese Vorhersagen?

01:19:45.600 --> 01:19:48.500
Was guckt sich das an? Worauf basiert das?

01:19:51.020 --> 01:19:53.300
Wie wird quasi die Information da enkodiert?

01:19:54.180 --> 01:19:58.320
Und da geht es dann wieder zurück in so, wie breche ich das runter?

01:20:00.560 --> 01:20:15.700
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.

01:20:17.020 --> 01:20:25.300
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.

01:20:25.600 --> 01:20:33.860
Denn der Kontext gibt da oft nicht so viel her und viel benötigt unglaublich viel Wissen und ist noch nicht mal so eindeutig.

01:20:36.420 --> 01:20:54.000
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.

01:20:54.000 --> 01:21:14.800
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?

01:21:14.800 --> 01:21:39.220
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.

01:21:40.580 --> 01:21:42.100
Das ist auch die Tatsache, dass gewisse Dinge

01:21:42.100 --> 01:21:43.960
jetzt möglich sind, heißt nicht unbedingt,

01:21:44.140 --> 01:21:45.600
dass du es so machen musst, denn oft

01:21:45.600 --> 01:21:47.920
wirklich

01:21:47.920 --> 01:21:49.880
der Großteil liegt darin,

01:21:50.220 --> 01:21:51.820
wie man das Problem definiert.

01:21:53.400 --> 01:21:53.760
Und ein bisschen

01:21:53.760 --> 01:21:56.120
ist natürlich, natürlich gibt es Unterschiede

01:21:56.120 --> 01:21:57.840
und auch selbst wenn du, selbst sowas wie ein, zwei

01:21:57.840 --> 01:21:59.660
Prozent Unterschied in Genauigkeit

01:21:59.660 --> 01:22:01.900
kann tatsächlich einen wirklich großen Unterschied machen,

01:22:01.980 --> 01:22:04.080
generell, also das hat einen großen Einfluss,

01:22:04.220 --> 01:22:04.520
aber

01:22:04.520 --> 01:22:08.200
man macht es sich viel schwerer, wenn du halt dein Problem

01:22:08.200 --> 01:22:10.400
nicht definierst

01:22:10.400 --> 01:22:12.660
wenn du es halt dem Modell schwerer machst, als

01:22:12.660 --> 01:22:13.500
du es müsstest.

01:22:17.320 --> 01:22:18.000
Ja, ja.

01:22:19.180 --> 01:22:20.640
Aber im Grunde so ein bisschen

01:22:20.640 --> 01:22:22.740
eben dieses Modell bei Spacey

01:22:22.740 --> 01:22:23.980
klang für mich auch so nach dem,

01:22:24.220 --> 01:22:27.200
das ist ja auch ein Modell, das viele, viele

01:22:27.200 --> 01:22:29.040
Open-Source-Projekte

01:22:29.040 --> 01:22:30.680
oder viele Leute, die dann mal

01:22:30.680 --> 01:22:32.560
ein Open-Source-Projekt, das dann

01:22:32.560 --> 01:22:34.620
erfolgreich geworden ist, gestartet

01:22:34.620 --> 01:22:36.360
haben, womit sie dann Geld verdienen,

01:22:36.360 --> 01:22:38.220
halt sozusagen so ein bisschen Consulting.

01:22:38.360 --> 01:22:39.980
Also es ist bei Spacey ein bisschen anders mit dem

01:22:39.980 --> 01:22:42.240
Annotations-Tool, aber es ist halt auch im Grunde

01:22:42.240 --> 01:22:43.740
so Dienstleistungen um

01:22:43.740 --> 01:22:46.300
das Open-Source-Projekt

01:22:46.300 --> 01:22:47.520
herum quasi.

01:22:48.220 --> 01:22:49.860
Ja, also generell,

01:22:50.020 --> 01:22:52.180
wir haben anfangs mal ein bisschen

01:22:52.180 --> 01:22:53.440
Consulting gemacht, vielleicht, also

01:22:53.440 --> 01:22:56.400
dann haben wir uns hauptsächlich auf Produkte

01:22:56.400 --> 01:22:58.460
spezialisiert, vielleicht machen wir in Zukunft

01:22:58.460 --> 01:23:00.560
mal ein bisschen mehr, weil es eigentlich immer ganz cool ist, auch so ein bisschen

01:23:00.560 --> 01:23:02.200
die Connection zu haben

01:23:02.200 --> 01:23:03.380
zu den Nutzern, aber

01:23:03.380 --> 01:23:06.380
eine Sache, die uns immer ganz wichtig war,

01:23:06.460 --> 01:23:08.220
war Support, finde ich

01:23:08.220 --> 01:23:10.040
immer bei vielen

01:23:10.040 --> 01:23:11.840
Dingen ein bisschen kritisch. Also es gibt Dinge,

01:23:11.960 --> 01:23:13.980
so Infrastruktur oder so. Ja gut,

01:23:14.120 --> 01:23:16.140
da braucht es, da macht es Sinn, jemanden zu haben,

01:23:16.260 --> 01:23:18.160
dem du bezahlst, der dir das dann alles einrichtet.

01:23:18.540 --> 01:23:19.560
Aber bei anderen

01:23:19.560 --> 01:23:21.500
Tools, vor allem Entwicklertools,

01:23:22.940 --> 01:23:24.200
wir

01:23:24.200 --> 01:23:25.420
möchten ja, dass es, dass

01:23:25.420 --> 01:23:28.020
das Tool auch wirklich benutzt wird. Es ist gut

01:23:28.020 --> 01:23:29.880
für uns, wenn natürlich Leute unsere

01:23:29.880 --> 01:23:32.060
Open-Source-Tools benutzen. Aber wenn

01:23:32.060 --> 01:23:33.560
jetzt unser Hauptgeschäftszweig

01:23:33.560 --> 01:23:35.960
Support ist, bedeutet das natürlich,

01:23:36.080 --> 01:23:37.880
dass wir mehr verdienen, wenn Leute mehr Support

01:23:37.880 --> 01:23:40.120
brauchen. Aber natürlich, wenn Leute

01:23:40.120 --> 01:23:42.000
mehr Support brauchen, dann verdienen wir

01:23:42.000 --> 01:23:43.960
aber auch andererseits weniger, weil es dann natürlich viel

01:23:43.960 --> 01:23:45.360
weniger Leute das Ding nutzen.

01:23:46.000 --> 01:23:47.640
Und ich finde das mal ein ganz komischer Kreislauf,

01:23:48.460 --> 01:23:51.740
der meiner Meinung nach nicht so gut funktioniert

01:23:51.740 --> 01:23:54.000
für viele Entwicklertools.

01:23:54.760 --> 01:23:56.180
Aber natürlich, Dinge drumherum

01:23:56.180 --> 01:23:57.980
ist gut. Und Open Source ist ja auch eine gute Art und Weise

01:23:57.980 --> 01:23:59.620
zu zeigen, hey, wir können

01:23:59.620 --> 01:24:01.180
gute Software bauen.

01:24:02.120 --> 01:24:03.060
Also, wenn man das

01:24:03.060 --> 01:24:06.000
strategisch so angeht, kann es

01:24:06.000 --> 01:24:07.640
gut sein. Also, ich bin jetzt nicht der Verfechter, der sagt,

01:24:07.700 --> 01:24:09.820
oh, jeder sollte jetzt hier seine ganze Freizeit

01:24:09.820 --> 01:24:11.380
mit Open-Source-Projekten verdienen

01:24:11.380 --> 01:24:15.280
und quasi gratis für Firmen arbeiten.

01:24:15.980 --> 01:24:17.900
Aber es ist durchaus so,

01:24:17.980 --> 01:24:20.320
dass man es auch strategisch angehen kann

01:24:20.320 --> 01:24:23.960
und das auch ein Pfad sein kann,

01:24:25.760 --> 01:24:28.480
erfolgreich zu sein und auch was zu machen,

01:24:28.600 --> 01:24:30.340
was vielleicht einem Spaß macht.

01:24:30.560 --> 01:24:32.360
Ja, im Prinzip ist das ja super, genau.

01:24:32.600 --> 01:24:33.580
Also das ist ja eigentlich sozusagen,

01:24:33.580 --> 01:24:35.060
würde ich ja schon mal ein bisschen

01:24:35.060 --> 01:24:37.440
Traumleben irgendwie beschreiben

01:24:37.440 --> 01:24:39.260
wollen, weil das ja, ich meine, das

01:24:39.260 --> 01:24:41.400
stellt man sich halt so vor. Man kann halt das tun, was man möchte

01:24:41.400 --> 01:24:43.200
und verdient damit halt genug Geld,

01:24:43.320 --> 01:24:44.920
dass das halt das möglich macht.

01:24:45.820 --> 01:24:47.180
Und wenn das funktioniert, ist es natürlich

01:24:47.180 --> 01:24:47.720
großartig.

01:24:49.040 --> 01:24:51.240
Ja, ich meine, ich glaube, man muss halt schon,

01:24:51.400 --> 01:24:53.220
ich glaube, es macht Sinn, es auch so anzugehen, dass man

01:24:53.220 --> 01:24:55.200
halt auch, man sollte schon ein Ziel

01:24:55.200 --> 01:24:56.440
haben, wenn man

01:24:56.440 --> 01:24:58.460
ein Projekt

01:24:58.460 --> 01:25:01.100
startet. Und ich glaube, es ist auch nicht falsch,

01:25:01.180 --> 01:25:03.060
zu sagen, okay, ich gehe das an, entweder

01:25:03.060 --> 01:25:04.800
ja, ich hab ein

01:25:04.800 --> 01:25:06.580
Open-Source-Projekt, ich möchte, ich sage Leuten,

01:25:06.640 --> 01:25:08.380
hey, benutzt das. Das ist ja auch so eine Sache.

01:25:08.680 --> 01:25:10.700
Okay, sagst du Leuten, mein Projekt ist geil,

01:25:10.800 --> 01:25:12.560
benutzt das, ihr solltet da alles drauf aufbauen, oder

01:25:12.560 --> 01:25:14.880
sagst du, oh, das ist nur so ein Nobby-Projekt,

01:25:15.260 --> 01:25:16.740
ich hab meinen Code einfach veröffentlicht

01:25:16.740 --> 01:25:18.860
und wenn jemand anders das nützlich findet,

01:25:19.020 --> 01:25:20.720
benutze es gerne. Oder

01:25:20.720 --> 01:25:22.620
dieses ein bisschen oldschooligere Modell, wir

01:25:22.620 --> 01:25:23.960
bauen was zusammen.

01:25:24.580 --> 01:25:26.640
Das sind so für mich die drei Arten

01:25:26.640 --> 01:25:28.140
von Open-Source. Einmal, okay,

01:25:28.740 --> 01:25:30.240
ich hab was gebaut, wenn jemand,

01:25:30.600 --> 01:25:32.580
ich geb's dir umsonst, wenn du Lust hast,

01:25:33.000 --> 01:25:34.960
vielleicht find's ja nützlich, oder wir

01:25:34.960 --> 01:25:36.820
bauen als Community, entwickeln wir was

01:25:36.820 --> 01:25:38.360
gemeinsam, oder wir

01:25:38.360 --> 01:25:41.020
haben ein Produkt entwickelt und wir geben es euch umsonst.

01:25:42.720 --> 01:25:42.840
Und

01:25:42.840 --> 01:25:44.820
ich glaube, davon hängt es halt auch

01:25:44.820 --> 01:25:46.840
ab, wie, ja, die Erwartungen,

01:25:46.980 --> 01:25:48.840
die man als Nutzer haben sollte an das Projekt.

01:25:48.940 --> 01:25:50.800
Und ich glaube, das wird halt auch oft nicht offen

01:25:50.800 --> 01:25:52.700
kommuniziert. Und da,

01:25:53.120 --> 01:25:54.780
das ist, wo viele der Missverständnis passieren,

01:25:55.660 --> 01:25:57.060
wenn man

01:25:57.060 --> 01:25:59.020
eben, ja, ein so ein persönliches

01:25:59.020 --> 01:26:00.720
Projekt betrachtet, wie ein kommerzielles Projekt,

01:26:00.820 --> 01:26:03.040
oder ein kommerzielles Projekt betrachtet,

01:26:03.140 --> 01:26:03.840
wie so ein Community.

01:26:05.120 --> 01:26:06.920
Oder wenn halt die Nutzer

01:26:06.920 --> 01:26:08.780
oder die Maintainer gar nicht sicher sind,

01:26:08.840 --> 01:26:09.560
was sie überhaupt sind.

01:26:09.960 --> 01:26:12.760
Das ist halt genau dann wahrscheinlich dieser

01:26:12.760 --> 01:26:14.780
Mismatch, dass dann die Nutzer denken, es ist ein

01:26:14.780 --> 01:26:16.960
Produkt, wo sie dann Support einfordern

01:26:16.960 --> 01:26:18.240
können und die Maintainer denken so,

01:26:18.540 --> 01:26:20.640
andere Leute haben Freizeit, warum

01:26:20.640 --> 01:26:22.380
habe ich eigentlich keine, warum sitze ich immer

01:26:22.380 --> 01:26:25.020
und muss irgendwie kostenlos Dienstleistungen

01:26:25.020 --> 01:26:25.640
für Leute machen,

01:26:26.540 --> 01:26:27.640
die mich gar nicht mehr bezahlen.

01:26:27.660 --> 01:26:30.060
Von den Firmen oder von den Nutzern, das ist ja nicht unbedingt

01:26:30.060 --> 01:26:32.040
immer der Respekt da, zu sagen, oh ja, das macht

01:26:32.040 --> 01:26:33.940
jetzt jemand in seiner Freizeit.

01:26:35.560 --> 01:26:36.300
Sondern, ja nö,

01:26:36.400 --> 01:26:37.920
ich brauche Support. Und in

01:26:37.920 --> 01:26:40.140
manchen Sachen, okay, wenn man halt Möglichkeiten

01:26:40.140 --> 01:26:42.020
schafft, die Maintainer zu bezahlen,

01:26:42.100 --> 01:26:44.500
kann das gut sein. Auch so GitHub hat ja GitHub-Sponsors

01:26:44.500 --> 01:26:45.680
und es gibt andere Möglichkeiten.

01:26:46.280 --> 01:26:47.920
Aber kann auch in manchen

01:26:47.920 --> 01:26:49.920
Situationen problematisch sein, wenn du halt

01:26:49.920 --> 01:26:52.000
vor allem, es geht ja nicht immer um diese

01:26:52.000 --> 01:26:54.140
riesen Beträge. Wenn du jetzt ein kleiner Entwickler bist,

01:26:54.220 --> 01:26:56.000
du sagst, hey, du hast so ein Hobbyprojekt, das hat auf einmal

01:26:56.000 --> 01:26:58.200
ein bisschen an Popularität gewonnen,

01:26:58.200 --> 01:26:59.880
das benutzen ein paar Firmen,

01:27:00.060 --> 01:27:17.320
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.

01:27:17.320 --> 01:27:18.660
oder die fühlen sich zumindest so.

01:27:19.480 --> 01:27:21.940
Ob das jemand hier Anforderungen stellen kann an dich,

01:27:22.000 --> 01:27:23.520
weil du dir 5 Euro zahlst, ist eine andere Frage.

01:27:23.620 --> 01:27:26.960
Aber die fühlen sich, als wären sie deine Kunden und sagen,

01:27:27.060 --> 01:27:29.360
wenn du jetzt diesen Bug nicht fixst bis morgen,

01:27:29.480 --> 01:27:31.980
dann ziehe ich aber hier meine Sponsorship zurück.

01:27:33.540 --> 01:27:35.580
Das ist jetzt nicht so das Allheilmittel.

01:27:35.580 --> 01:27:39.960
Das kann auch, glaube ich, durchaus Dinge noch komplizierter machen.

01:27:41.480 --> 01:27:44.500
Also ich habe jetzt keine Lösung dafür.

01:27:44.760 --> 01:27:47.920
Nö, es gibt wahrscheinlich keine Einfachlösung.

01:27:48.660 --> 01:27:48.880
Ja.

01:27:51.880 --> 01:27:52.760
Ich meine, eine Sache,

01:27:53.040 --> 01:27:55.000
ich bin der Meinung, dass

01:27:55.000 --> 01:27:56.440
Open Source

01:27:56.440 --> 01:27:59.180
quasi

01:27:59.180 --> 01:28:00.520
dass zum Beispiel

01:28:00.520 --> 01:28:03.480
Open Source staatlich gefördert werden sollte.

01:28:04.140 --> 01:28:05.920
Also zumindest, oder wenn wir in so einem System

01:28:05.920 --> 01:28:07.780
sind wie in Deutschland, finde ich,

01:28:07.980 --> 01:28:09.540
dass die Bundesregierung

01:28:09.540 --> 01:28:11.740
sollte finanzielle Mittel

01:28:11.740 --> 01:28:13.820
zur Verfügung stellen, die eben tatsächlich

01:28:13.820 --> 01:28:15.720
in die Open-Source-Entwicklung

01:28:15.720 --> 01:28:17.640
fließen soll oder wir sollten das,

01:28:17.820 --> 01:28:19.540
wir sollten quasi Open-Source als

01:28:19.540 --> 01:28:21.640
Common Good ansehen.

01:28:21.640 --> 01:28:23.280
Mit der Gießkanne oder kuratiert?

01:28:25.660 --> 01:28:26.260
Das ist halt

01:28:26.260 --> 01:28:28.000
eine Frage, das Problem ist halt auch,

01:28:28.100 --> 01:28:29.940
okay, momentan, wenn du dir das anguckst, okay, was

01:28:29.940 --> 01:28:32.200
wird so entwickelt, wer bekommt Zuschläge

01:28:32.200 --> 01:28:34.000
für die Entwicklung von was und wie funktioniert

01:28:34.000 --> 01:28:35.400
das am Ende und wie sieht das denn aus?

01:28:37.440 --> 01:28:37.960
Also ich

01:28:37.960 --> 01:28:39.160
finde, ich glaube schon,

01:28:40.020 --> 01:28:41.940
ich glaube,

01:28:42.080 --> 01:28:43.620
eine Lösung, wo

01:28:43.620 --> 01:28:46.020
da jemand sitzt, der weiß nicht, der

01:28:46.020 --> 01:28:48.280
Open-Source-Minister sitzt und sich die Open-Source-Projekte

01:28:48.280 --> 01:28:49.840
aussucht, finde ich auch problematisch.

01:28:50.200 --> 01:28:51.900
Ich glaube nicht, dass das etwas ist, was

01:28:51.900 --> 01:28:52.780
wir möchten.

01:28:55.240 --> 01:28:55.760
Ich kann mir auch

01:28:55.760 --> 01:28:57.840
momentan keinen Open-Source-Minister

01:28:57.840 --> 01:28:58.380
vorstellen.

01:29:00.020 --> 01:29:01.760
Es gibt nur sehr wenige

01:29:01.760 --> 01:29:04.060
politisch aktive Menschen momentan,

01:29:04.180 --> 01:29:05.980
die ich vorstellen könnte als Open-Source-Minister.

01:29:08.180 --> 01:29:10.260
Anni, schau ja nicht in dieser Impftags-Force

01:29:10.260 --> 01:29:12.200
jetzt. Schade, der wäre doch gut geeignet

01:29:12.200 --> 01:29:15.300
Ja, ich denke mir jetzt vor, du hast

01:29:15.300 --> 01:29:17.360
so ein Äquivalent von Horst Seehofer

01:29:17.360 --> 01:29:19.420
als Open-Source-Minister.

01:29:19.580 --> 01:29:21.240
Ich glaube, das wollen wir alle nicht.

01:29:23.280 --> 01:29:25.100
Aber wie gesagt, ich habe

01:29:25.100 --> 01:29:27.180
jetzt noch kein politisches Programm

01:29:27.180 --> 01:29:29.340
ausgearbeitet, das ich hier präsentieren möchte,

01:29:29.460 --> 01:29:31.220
aber ich glaube, das ist auf jeden Fall eine

01:29:31.220 --> 01:29:32.680
Richtung, die ich

01:29:32.680 --> 01:29:35.160
sehen könnte. Ich weiß nicht, ich hätte mal

01:29:35.160 --> 01:29:36.440
überlegt, das wäre doch ziemlich

01:29:36.440 --> 01:29:39.260
einfach, dass zumindest

01:29:39.260 --> 01:29:41.000
mal die Anforderungen von irgendwelchen

01:29:41.000 --> 01:29:42.940
öffentlichen, größeren Projekten reinzuschreiben,

01:29:43.300 --> 01:29:45.120
das ist halt selbstverständlich, wenn das halt mit öffentlichen

01:29:45.120 --> 01:29:46.620
Mitteln finanziert wird, auch

01:29:46.620 --> 01:29:49.200
dann als Infrastruktur wieder zurück

01:29:49.200 --> 01:29:51.040
an die Öffentlichkeit geht, aber

01:29:51.040 --> 01:29:52.260
ja, keine Ahnung.

01:29:52.880 --> 01:29:55.100
Ja, das würde ich auch unterstützen, vor allem

01:29:55.100 --> 01:29:57.200
ja, aber ich meine, ich kann mir auch

01:29:57.200 --> 01:29:58.320
gut vorstellen, warum die das nicht möchten,

01:29:58.860 --> 01:30:00.740
aber...

01:30:00.740 --> 01:30:03.080
Ja, ja, klar, also dass die Auftragnehmer das nicht möchten,

01:30:03.080 --> 01:30:05.080
das kann ich mir auch gut vorstellen, aber es ist halt, ja...

01:30:05.820 --> 01:30:06.800
Ich meine, ich könnte mir auch vorstellen,

01:30:06.880 --> 01:30:08.980
die jetzt vor manche dieser öffentlich finanzierten

01:30:08.980 --> 01:30:11.020
Projekte, auch die man dann so

01:30:11.020 --> 01:30:12.960
nur als Nutzer mal zu sehen

01:30:12.960 --> 01:30:14.820
kriegt, wenn man mit denen interagiert.

01:30:15.120 --> 01:30:15.620
Achso, ja.

01:30:16.800 --> 01:30:19.060
Oder sowas jetzt zum Beispiel, auch selbst so eine App

01:30:19.060 --> 01:30:20.740
oder irgendein Portal, irgendwas wird entwickelt,

01:30:20.840 --> 01:30:22.960
da wird auch nicht viel Geld reingebracht und

01:30:22.960 --> 01:30:24.480
okay, es gibt auf jeden Fall

01:30:24.480 --> 01:30:26.740
ein Argument zu sagen, das sollte

01:30:26.740 --> 01:30:28.180
Open Source sein, damit wir das auch

01:30:28.180 --> 01:30:30.720
sehen können. Zumindest

01:30:30.720 --> 01:30:32.960
jetzt nicht die ganze kritische Infrastruktur

01:30:32.960 --> 01:30:35.080
oder so, aber grob

01:30:35.080 --> 01:30:36.760
okay, wie funktioniert das? Was ist da

01:30:36.760 --> 01:30:37.300
hinter?

01:30:38.680 --> 01:30:39.900
Oder vielleicht ein paar Details.

01:30:40.060 --> 01:30:41.700
Okay, wenn die jetzt irgendwelche Modelle trainieren,

01:30:42.380 --> 01:30:46.100
dann wäre es schon gut,

01:30:46.720 --> 01:30:49.160
ein bisschen mehr Informationen dazu zu haben,

01:30:49.220 --> 01:30:50.220
was da jetzt reinfließt.

01:30:50.300 --> 01:30:51.220
Und wer hat das gebaut?

01:30:51.400 --> 01:30:52.900
Sind da überhaupt diese ganzen Fragen,

01:30:53.000 --> 01:30:54.580
die man eigentlich mal berücksichtigen sollte,

01:30:54.700 --> 01:30:55.860
sind die denn berücksichtigt worden?

01:30:56.240 --> 01:30:57.060
Hat da sich jemand drüber nachgedacht?

01:30:57.060 --> 01:30:57.440
Ja, genau.

01:30:57.960 --> 01:30:59.020
Ja, wahrscheinlich nicht.

01:30:59.020 --> 01:31:00.880
Und das wäre schon gut.

01:31:01.280 --> 01:31:05.560
Aber ich glaube, es gäbe dann auch

01:31:05.560 --> 01:31:07.420
so ein ganz neues neue Genre

01:31:07.420 --> 01:31:08.060
an

01:31:08.060 --> 01:31:11.460
Technikjournalisten,

01:31:11.800 --> 01:31:13.520
die sich wahrscheinlich den ganzen Tag damit beschäftigen

01:31:13.520 --> 01:31:15.520
könnten, die Open-Source-Projekte,

01:31:15.720 --> 01:31:17.240
die staatlich geförderten Open-Source-Projekte

01:31:17.240 --> 01:31:18.740
auseinanderzunehmen und zu analysieren.

01:31:20.900 --> 01:31:22.840
Was ja auch nicht schlecht wäre.

01:31:23.940 --> 01:31:24.380
Aber

01:31:24.380 --> 01:31:27.240
es gibt halt, wenn man sich

01:31:27.240 --> 01:31:29.400
Machine Learning anguckt, es gibt ja nicht wirklich

01:31:29.400 --> 01:31:29.920
Standards,

01:31:31.540 --> 01:31:33.220
die man da anbringen könnte. Und es ist ja auch

01:31:33.220 --> 01:31:33.560
schwierig.

01:31:35.420 --> 01:31:37.000
Und es gibt auch ja nix, was jemals,

01:31:37.200 --> 01:31:41.060
es gibt ja wenige Dinge, die bisher überhaupt von einem Gericht mal getestet wurden.

01:31:44.340 --> 01:31:48.140
Wenn es um auch so Themen, auch so Datensicherheit, bla,

01:31:48.500 --> 01:31:53.660
oder was, wenn jetzt so ein Korpus an Trainingsdaten,

01:31:54.220 --> 01:31:58.060
wenn der eine Lizenz hat, was bedeutet das für Modelle, die du trainierst?

01:31:58.060 --> 01:32:01.740
Es gibt Modelle natürlich, wo du am Ende die Originaldaten rekonstruieren kannst.

01:32:01.860 --> 01:32:05.020
Das ist, würde ich jetzt als Laie sagen, ein relativ klarer Fall.

01:32:05.140 --> 01:32:07.120
okay, das geht natürlich nicht, wenn jetzt

01:32:07.120 --> 01:32:08.240
die Daten nicht verfügbar sind.

01:32:08.880 --> 01:32:10.360
Dann gibt es aber andere Sachen, wo du, okay, nur

01:32:10.360 --> 01:32:13.260
wie abstrakt sollten

01:32:13.260 --> 01:32:14.940
diese Gewichtungen sein, die du trainierst,

01:32:15.380 --> 01:32:17.000
um halt das Argument

01:32:17.000 --> 01:32:19.260
machen zu können, das repliziert

01:32:19.260 --> 01:32:20.900
jetzt nicht unbedingt die

01:32:20.900 --> 01:32:22.960
Originaldaten. Kann man das überhaupt sagen?

01:32:22.960 --> 01:32:23.840
Ja, ja, das ist halt...

01:32:23.840 --> 01:32:26.840
Wenn jetzt Instagram oder Facebook sagt,

01:32:26.900 --> 01:32:28.180
oh, wir trainieren jetzt unsere Modelle

01:32:28.180 --> 01:32:30.240
anhand von

01:32:30.240 --> 01:32:33.020
Profilbildern unserer Nutzer. Geht das?

01:32:33.080 --> 01:32:34.900
Geht das nicht? Können die das dann verwenden?

01:32:35.140 --> 01:32:37.020
kannst du einfach das Internet scrapen

01:32:37.020 --> 01:32:39.060
und dann dein

01:32:39.060 --> 01:32:41.020
Modell veröffentlichen,

01:32:41.060 --> 01:32:42.540
dass dann alle möglichen Firmen benutzen

01:32:42.540 --> 01:32:45.060
und wenn irgendwas ist, wer ist schuld?

01:32:45.300 --> 01:32:46.560
Du? Die Firmen?

01:32:47.200 --> 01:32:48.940
Das sind alles Fragen, die

01:32:48.940 --> 01:32:49.720
haben...

01:32:49.720 --> 01:32:52.720
Da kann man sich drüber auslassen, ich bin, wie gesagt,

01:32:53.140 --> 01:32:54.500
ich bin bleie,

01:32:54.800 --> 01:32:56.720
ich hab da nur Meinungen oder Ideen zu,

01:32:56.920 --> 01:32:58.700
aber auch da kommst du ja gar nicht drauf an.

01:32:59.060 --> 01:33:00.700
Es ist am Ende, es gibt ja keine,

01:33:02.000 --> 01:33:02.660
es gibt kaum

01:33:02.920 --> 01:33:04.720
Entscheidungen dazu, es gibt kaum Fakten dazu,

01:33:04.860 --> 01:33:05.920
Du musst halt gucken.

01:33:09.180 --> 01:33:10.560
Naja, das wird noch eine ganze Zeit lang dauern,

01:33:10.620 --> 01:33:12.120
bis das einigermaßen...

01:33:12.120 --> 01:33:13.800
Bis das überhaupt jemand da irgendwo verstanden hat.

01:33:15.500 --> 01:33:16.640
Wahrscheinlich der...

01:33:16.640 --> 01:33:17.700
Selbst so diese...

01:33:17.700 --> 01:33:20.520
So diese Trolley-Probleme von wegen

01:33:20.520 --> 01:33:22.600
hier, okay, wer ist schuld, wenn das selbstfahrende

01:33:22.600 --> 01:33:24.840
Auto einen Menschen überfährt? Das gab's ja schon.

01:33:25.580 --> 01:33:26.900
So, wer ist da schuld?

01:33:29.160 --> 01:33:30.860
Die Firma, die das Auto hergestellt

01:33:30.860 --> 01:33:32.800
hat, die Person, der das Auto

01:33:32.800 --> 01:33:34.800
gehört, der Entwickler,

01:33:34.860 --> 01:33:36.280
der dieses Modell

01:33:36.280 --> 01:33:37.220
trainiert hat,

01:33:39.520 --> 01:33:44.780
die Person, die auf Mechanical Turk

01:33:44.780 --> 01:33:46.120
für drei Dollar die Stunde

01:33:46.120 --> 01:33:48.260
das falsch gelabelt hat.

01:33:48.940 --> 01:33:50.280
Das falsch gelabelt hat.

01:33:55.160 --> 01:33:56.720
Das sind auf jeden Fall

01:33:56.720 --> 01:33:57.300
interessante Fragen.

01:33:59.540 --> 01:34:00.980
Ich denke, der Weg

01:34:00.980 --> 01:34:02.060
zu sinnvollen und

01:34:02.060 --> 01:34:02.940
so

01:34:02.940 --> 01:34:05.260
Common Sense

01:34:05.260 --> 01:34:07.940
irgendwie Umgang damit im Alltag

01:34:07.940 --> 01:34:09.900
wird gepflastert sein mit einem Haufen

01:34:09.900 --> 01:34:12.020
Fehlentscheidungen, absurden Situationen und

01:34:12.020 --> 01:34:12.460
komischen

01:34:12.460 --> 01:34:15.540
Wie bei allem, ja.

01:34:15.540 --> 01:34:16.280
Wie bei allem, ja.

01:34:17.300 --> 01:34:17.540
Ja.

01:34:20.420 --> 01:34:20.860
Ja.

01:34:21.940 --> 01:34:23.440
Jetzt haben wir einen entspannenden Ausblick

01:34:23.440 --> 01:34:23.880
in die Zukunft.

01:34:24.860 --> 01:34:27.300
Ja, es ist alles

01:34:27.300 --> 01:34:28.880
nicht ganz schlecht.

01:34:29.300 --> 01:34:30.460
Es ist alles nicht super schön.

01:34:31.080 --> 01:34:32.360
Ja, ich finde solche Sachen sehr wertvoll.

01:34:33.540 --> 01:34:35.180
Schön, dass wir mal drüber geredet haben.

01:34:37.080 --> 01:34:38.300
Nein, wirklich, was du jetzt da geschrieben hast,

01:34:38.540 --> 01:34:40.660
ist etwas, was uns irgendwie weiterbringt.

01:34:41.100 --> 01:34:43.020
Es hilft dabei, so Gefühle

01:34:43.020 --> 01:34:44.660
zu kriegen, auf jeden Fall.

01:34:45.920 --> 01:34:47.340
Ich habe immer die Hoffnung,

01:34:47.440 --> 01:34:48.880
dass das irgendwann besser wird und nicht schlechter.

01:34:49.740 --> 01:34:49.940
Ja.

01:34:50.740 --> 01:34:51.920
Also objektiv betrachtet,

01:34:52.040 --> 01:34:53.860
Dinge werden ja besser.

01:34:54.720 --> 01:34:57.040
Natürlich ist es immer, man hat das subjektive

01:34:57.040 --> 01:34:59.140
Empfinden und es gibt natürlich andere Probleme.

01:34:59.140 --> 01:35:20.960
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.

01:35:21.160 --> 01:35:24.720
Ja, vor 100 Jahren haben die Leute Menschen noch im Zoo ausgestellt, das ist halt einfach, ja.

01:35:25.940 --> 01:35:46.520
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.

01:35:47.160 --> 01:36:12.460
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.

01:36:12.460 --> 01:36:42.120
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.

01:36:42.120 --> 01:36:43.740
Ja, oder wir nehmen die Antwort, die wir immer geben können,

01:36:43.840 --> 01:36:44.520
it depends.

01:36:44.680 --> 01:36:45.140
Ja, stimmt.

01:36:51.300 --> 01:36:52.340
Ich meine, es stimmt natürlich,

01:36:52.400 --> 01:36:53.820
oder auch jetzt in der aktuellen Situation,

01:36:54.280 --> 01:36:55.940
wo auch Remote Work

01:36:55.940 --> 01:36:58.040
normalisierter wird, wo es

01:36:58.040 --> 01:36:59.080
vielleicht ein bisschen weniger,

01:36:59.560 --> 01:37:01.900
schon immer war es durch das Internet,

01:37:01.960 --> 01:37:03.960
das Internet hat es immer weniger relevant gemacht, wo man

01:37:03.960 --> 01:37:04.940
denn gerade

01:37:04.940 --> 01:37:08.080
physisch war, oder schon

01:37:08.080 --> 01:37:09.320
allein die Tatsache, dass wir hier,

01:37:09.320 --> 01:37:11.100
wir sitzen hier,

01:37:11.220 --> 01:37:13.580
nehmen einen Podcast auf, ich bin in Australien,

01:37:14.100 --> 01:37:15.580
ihr seid in Deutschland, es läuft.

01:37:16.580 --> 01:37:17.780
Irgendjemand hört sich das an,

01:37:17.820 --> 01:37:19.580
der ist was weiß ich wo und

01:37:19.580 --> 01:37:21.160
das geht alles.

01:37:22.220 --> 01:37:23.600
Und jetzt, okay, es wird weniger

01:37:23.600 --> 01:37:25.180
wichtig, wo jemand arbeitet,

01:37:26.960 --> 01:37:27.800
wo jemand

01:37:27.800 --> 01:37:29.340
leben möchte. Ja, voll gut.

01:37:29.840 --> 01:37:30.520
Das ist auf jeden Fall

01:37:30.520 --> 01:37:33.260
theoretisch eine sehr positive

01:37:33.260 --> 01:37:35.760
Entwicklung oder kann eine sehr positive Entwicklung

01:37:35.760 --> 01:37:37.660
sein, wenn das entsprechend genutzt wird.

01:37:38.880 --> 01:37:39.680
Ich finde, das ist ein

01:37:39.680 --> 01:37:41.440
sehr tolles Schlusswort, ehrlich gesagt.

01:37:42.860 --> 01:37:43.780
Nee, klingt gut.

01:37:43.900 --> 01:37:45.160
Egal, wo ihr uns also hört.

01:37:45.480 --> 01:37:47.220
Ob ihr nachts, tagsüber,

01:37:47.660 --> 01:37:48.800
morgens, mittags, abends

01:37:48.800 --> 01:37:51.420
im Flieger oder im Boot

01:37:51.420 --> 01:37:53.260
oder auf der Couch

01:37:53.260 --> 01:37:55.300
zum Einschlafen, hab ich auch schon gehört.

01:37:55.360 --> 01:37:57.560
Denkt daran, es ist der Fortschritt, der gerade durch eure

01:37:57.560 --> 01:37:59.240
Kopfhörer in euer

01:37:59.240 --> 01:38:01.180
Gehirn ausstrahlt. Ganz genau.

01:38:01.180 --> 01:38:02.900
Vielen Dank, Ines, dass du heute dabei warst.

01:38:03.300 --> 01:38:03.760
Ja, war sehr schön.

01:38:04.300 --> 01:38:05.440
Danke für die Einladung.

01:38:07.120 --> 01:38:08.780
Bleibt uns gewogen und schaltet wieder rein.

01:38:09.680 --> 01:38:10.040
Tschüss.
