Transcript: Vermischtes über Data Science, Machine Learning und nbdev

· Back to episode

Full episode transcript. Timestamps refer to the audio playback.

Dominik

Ja, hallo, liebe Hörerinnen und Hörer, willkommen beim Python-Podcast in der 28. Episode heute.

Dominik

Es ist ein bisschen wieder eine Laber-Folge, und zwar über Machine Learning heute.

Dominik

Ja, hey Jochen, du bist wieder dabei, hier ist wieder Dominik.

Dominik

Ja, hallo Dominik.

Dominik

Und heute ist auch der Christian wieder da.

Dominik

Christian haben wir auch dabei, ja.

Dominik

Hey, willkommen.

Dominik

Danke.

Dominik

Ja, habt ihr euch schon was genaueres überlegt heute oder wolltet einfach so ein bisschen die Döniges erzählen?

Dominik

Wir haben heute übrigens, wir wollten es ja irgendwann mal anfangen zu sagen, 4. Februar 2021.

Jochen

Ja, ich glaube, diesmal wollten wir wieder so ein bisschen Richtung irgendwie Data Science, Machine Learning ein bisschen mehr.

Jochen

Wir hatten in letzter Zeit immer ganz, ganz viel Web-Entwicklung und so.

Jochen

Ja, und wegen uns da jetzt mal so ein bisschen, so wirklich das Thema haben wir noch nicht.

Jochen

Wir haben alle so ein bisschen was mitgebracht, mal schauen.

Dominik

Ja, wir hatten auch einige Hörerwünsche, was Datentypen zum Beispiel angeht.

Dominik

Wir wollten auch mal eine Folge machen, wo wir genau diese

Dominik

Build-in-Implementierung in Python

Dominik

dazu erklären, aber das wird dann eine

Dominik

der nächsten Folgen werden.

Dominik

Was wir euch aber noch mal fragen wollten, wenn ihr

Dominik

Feedback und Kritik und so habt, wie immer an

Dominik

hallo.pythonpodcast.de und sagt uns

Dominik

auch mal, auf welche Themen ihr so besonders Lust hättet.

Dominik

Dann werden wir die auch noch mal mit

Dominik

in unsere engere Auswahl nehmen.

Dominik

Ja,

Dominik

es gibt was Neues, es gibt eine

Dominik

möglichen Updates von

Dominik

Paketen, NumPy, Pandas,

Dominik

Pandas auch, MyPy,

Dominik

Nein, Pandas nicht. Doch, Pandas tatsächlich

Dominik

auch, fällt mir jetzt gerade so ein.

Jochen

Ich habe es jetzt hier gar nicht aufgeschrieben, aber ja,

Jochen

gab es jetzt auch letztens irgendwie eine neue,

Jochen

größere Version 1.2.

Jochen

Ich bin mir nicht ganz sicher. Aber tatsächlich

Jochen

auch NumPy hat die größte Release,

Jochen

also mit den meisten Pull-Requests seit

Jochen

x Jahren, jetzt mit

Jochen

1.20 und

Jochen

ähm, äh, Jupiter Lab

Jochen

3 ist draußen und

Jochen

äh, Spacey, äh,

Jochen

also die ganze Natural Language Processing

Jochen

Geschichte, Version 3

Jochen

ist jetzt gerade erschienen mit Support für Transformer.

Jochen

Also genau, das war mal so das erste, ich hab mir mal

Jochen

angeguckt, was ist denn alles Neues passiert, weil ich da auch schon lange nicht mehr

Jochen

drauf geguckt hab und da ist ja in letzter Zeit

Jochen

einiges, hat sich da...

Dominik

Falls ihr irgendwie tatsächlich mal den Einstieg finden wollt in NumPy

Dominik

und oder Pandas oder schon immer mal ein bisschen tiefer

Dominik

angucken wolltet, es gab einige richtig coole

Dominik

YouTube-Tutorials, die ich fand, die ich bis jetzt

Dominik

so die besten nicht kennengelernt hab, von Ben Gorman

Dominik

dazu und zwar

Dominik

NumPy for Grandmas und Pandas

Dominik

for your Grandpa. Okay.

Dominik

Ja, eine richtig schöne

Dominik

Einführungsserie

Dominik

für die beiden Bibliotheken, würde ich sagen,

Dominik

wo man mal so ein bisschen

Dominik

schon doch tiefer einkommen kann.

Dominik

Fand ich super.

Dominik

Genau, ja.

Dominik

Genau, weil wir so ein bisschen News machen,

Dominik

es gab noch ein paar andere

Jochen

Releases auch, MyPi

Jochen

kann man dazu was sagen, also ich weiß

Jochen

nur, das hat jetzt irgendwie Support für 3.9,

Jochen

Python 3.9,

Jochen

dann gibt es irgendwie für PIP

Jochen

gibt es einen neuen Resolver. Ich weiß nicht,

Jochen

hat sich den irgendjemand schon mal angeguckt,

Jochen

so ein bisschen?

Jochen

Ich hatte drüber gelesen

Christian

und ihn nochmal auf die

Christian

Wiedervorlage gepackt.

Christian

Tatsächlich bin ich mit,

Christian

was das Resolving angeht,

Christian

momentan,

Christian

ich bin immer noch an dem anderen Ende,

Christian

am Umdoktern, wie ich irgendwie

Christian

so einmal zusammengestellte Paketlisten

Christian

so fix und fertig

Christian

durch die Gegend verteile.

Christian

Deswegen hatte ich es wieder zur Seite gelegt, aber

Christian

ich merke auch, es hat uns nirgendwo

Christian

gebissen zumindest. Es stand ja so ein kleines

Christian

Teilchen drauf von, man kann noch

Christian

den alten Reserver, glaube ich, aktivieren, wenn

Christian

einer der Neue irgendwie Quatsch macht.

Christian

Aber

Christian

nee, erst mal nicht negativ

Christian

aufgefallen.

Jochen

Ja, nee, ich merke

Jochen

ab und zu funktioniert das halt irgendwie nicht so richtig

Jochen

und dann irgendwie meistens

Jochen

hilft irgendwie das Paket, was Ärger macht,

Jochen

nochmal auszukommentieren, nochmal wieder alles neu zu installieren

Jochen

Und dann wieder reinzunehmen, dann geht es irgendwie wieder.

Jochen

Ja, aber

Jochen

ich habe es auch eigentlich nicht, also insofern,

Jochen

es hat nicht wehgetan, insofern

Jochen

scheint alles halbwegs gut gelaufen

Jochen

zu sein. Wobei das, was du,

Christian

also wenn du das erzählst, ist aber genau so ein Fall

Christian

von, ja, nee, das kann ich nicht leiden.

Christian

Ja, ja, also

Jochen

das ist so ein schlechtes Gefühl, wenn ich sowas merke.

Jochen

Ja, ich

Christian

spiele halt ein bisschen rum mit

Christian

so einer Form von Logfiles,

Christian

dass ich halt ein Environment

Christian

beschreiben kann. Ich hatte, glaube ich,

Christian

an irgendeiner Stelle ja mal das App-Env

Christian

erwähnt gehabt, was

Christian

ich benutze, um so

Christian

fertiggebackene Virtual-Envs zu erzeugen.

Christian

Klingt nach Poetry.

Christian

So ein bisschen das Problem

Christian

bei Poetry war mir,

Christian

das ist zu viel. Das ist einfach

Christian

zu viel Kram. Ich brauche irgendwie was ganz

Christian

Kleines. Der

Christian

wichtigste Teil für mich ist,

Christian

wir haben so Projekte,

Christian

wo wir ein Repo haben, das

Christian

auschecken und dann

Christian

bringt das Repo im Prinzip sein Log-File

Christian

mit und das konkrete Tool,

Christian

was da dran hängt,

Christian

bootstrappt sich mit dem Log-File

Christian

selber durch ein kleines Bootstrap-Skript,

Christian

was in dem Repo drinnen liegt. Also

Christian

Bateau ist bei uns das große Werkzeug, was

Christian

das benutzt. Und dann hast

Christian

du dort ein, dann kann sozusagen jeder, der mit diesem

Christian

Projekt arbeitet, das Repo auschecken

Christian

und tippt einfach Punkt, Schrägstrich

Christian

in dem Fall Bateau oder auch irgendwas anderes.

Dominik

Du musst gleich nochmal kurz auf

Dominik

Bateau eingehen, gleich. Ja,

Dominik

kann ich auch.

Christian

Und dieses Skript, was in dem Repository eingecheckt ist, ist nur ein ganz kleines Bootstrap-Skript, so ein Single-File, was auch über mehrere, mindestens so, glaube ich, 3, 4 oder 3, 5 bis hoch zur aktuellsten halt kompatibel ist.

Christian

Und der ist ein kleiner Wrapper, dass wenn man ihn aufruft, guckt er, ob ein funktionierendes Virtual-Env für das Log-File oder halt auch das Requirements-Text-File vorhanden ist.

Christian

Und wenn ja, dann startet er sozusagen das eigentliche Kommando aus diesem Virtual Env statt sich selber.

Christian

So einmal durchgereicht wie so ein Exec.

Christian

Und wenn das aber eben nicht der Fall ist oder wenn das Virtual Env kaputt ist

Christian

oder wenn sich das Log-File geändert hat oder wenn du deinen Python-Interpreter geändert hast,

Christian

dann erkennt er das und macht in dem Moment sofort eine Reinstallation, ohne dass du irgendwas tun musst.

Christian

Du rufst einfach wie immer dein Tool auf, um zu sagen, ich will jetzt XY machen.

Christian

Und dann sagt der im schlimmsten Fall nur, ja Moment, weil zum Beispiel ein anderer im Projekt hat was committed, weswegen das Log-File sich geändert hat.

Christian

Und dann zieht der das sofort gerade.

Christian

Und dieses Self-Contained-Ding, es ist auch so, dass du kannst dann halt dieses Tool in sieben Projekten benutzen und jedes Projekt benutzt seine eigene Versionsliste automatisch.

Christian

Und du hast nie eine systemweite Installation dieses Tools, sondern das hängt immer konkret an den Projekten dran.

Christian

das ist ein Use Case, den habe ich nirgends

Christian

wo gefunden, der das so abbildet

Christian

und

Christian

Poetry hatte ich gesehen und das war aber sozusagen

Christian

dafür Poetry zu verwenden, wäre viel zu

Christian

aufwendig geworden, um dieses ganze Self-Bootstrapping

Christian

irgendwie anzugehen und ich merke da

Christian

da habe ich auch häufig

Christian

Gedanken und Ideen, wie ich möchte, dass das funktioniert

Christian

wo ich gegen andere Tools nicht

Christian

mehr ankämpfen möchte, so viel Code

Christian

ist es dann nicht, das selber zu bauen, als dass ich dann

Christian

einem Riesentool hinterherlaufe, dem man

Christian

ständig sagen muss, du ich brauch das aber so oder so

Dominik

Okay, und vielleicht

Dominik

das machst du mit Bato, oder

Dominik

das Tool heißt Bato, oder?

Christian

Also dieses Bootstrap-Tool

Christian

heißt AppEnv

Christian

das ist im Prinzip nur eine

Christian

einzige Datei, da gibt es bei uns

Christian

auf GitHub, GitHub, Flying Circus

Christian

IO, AppEnv

Christian

das ist nur eine einzige

Christian

Python-Datei, die legt man sich in ein Repo

Christian

und wenn in dem Repo

Christian

daneben eine Datei liegt, die

Christian

Requirements-Text heißt

Christian

Dann passiert folgendes, dann benennt man das Skript so wie das eigene Tool.

Christian

Das muss nicht Bateau sein, das kann irgendein Python-Package sein,

Christian

was ein Konsol-Skript hat, was genauso heißt wie das Skript, was du in deinem Repo ablegst.

Christian

Und dann installiert er alles das, was in dem Equipments-Text-File drin steht,

Christian

in eine geheime, in Anführungszeichen,

Christian

Position, also das heißt dann irgendwie Punkt

Christian

dein Tool-Name, Schrägstrich, und dann werden

Christian

da so gehäschte Virtual-Envs drin erzeugt

Christian

und auch wieder aufgeräumt und ruft

Christian

im Prinzip dann bloß Punkt

Christian

da aus dem Virtual-Env

Christian

bin und dieses Konsol-Skript auf,

Christian

viel mehr macht der nicht, und das ist das App-Env,

Christian

um so ein Bootstrapping-

Christian

Mechanismus da einmal

Christian

abzubilden.

Christian

Und Bateau ist ein Werkzeug, was das halt

Christian

benutzt. Wir haben so Bateau-Projekte, also

Christian

Also das ist ein Deployment-Werkzeug, ähnlich zu Ansible und anderen Tools.

Christian

Und ein Charakter von dem Ding ist halt, wenn du Bateau-Projekte machst

Christian

und wir haben bei uns bei den Mitarbeitern halt gerne das,

Christian

die haben 12, 15, 20 so Projekte rumfliegen, die sie jonglieren.

Christian

Und jedes davon, eins davon hat ein Kunde halt mal ein Dreivierteljahr nicht angefasst

Christian

und das ist jetzt auf einer Bateau-Version von vor anderthalb Jahren oder irgendwas.

Christian

Und dann will ich nicht überlegen müssen,

Christian

was muss ich tun, um diese Bateau-Version wieder zum Laufen zu kriegen,

Christian

weil meine letzten drei Projekte waren in einer anderen Bateau-Version.

Christian

Oder ist das Thema halt, nee, du brauchst bloß das Repo nehmen,

Christian

rufst .slash Bateau in dem Repo auf

Christian

und der zieht sich exakt die Version, die für dieses Projekt gebraucht wird, her

Christian

und du kannst dann halt in dutzenden Projekten

Christian

halt die Dependencies ordentlich managen,

Christian

ohne jemals händisch reingreifen zu müssen.

Christian

Das macht ja alles im Self-Bootstrapping

Christian

und auch ohne, dass in deinem System was anderes installiert ist, außer Python selber.

Christian

Also da sind auch noch so ein paar Hacks drin,

Christian

dass wenn du halt kaputte Pythons hast,

Christian

wie auf Debian üblich,

Christian

also Debian macht halt gerne Setup-Tools und Pip und so kaputt,

Christian

und dass die Standard-Library noch nicht mehr geht,

Christian

da ist überall so dieses kleine Wissen drin,

Christian

von wie ziehe ich mir das in so einem Moment halt alles gerade,

Christian

dass ich mich dann aus dem luftleeren Raum,

Christian

solange ich irgendwie einen Python habe,

Christian

was nicht nur ein bisschen kaputt gemacht wurde,

Christian

dass er sich daraus halt bootstrappen kann

Christian

und dir dann ein voll funktionierendes Virtual Env

Christian

auch zusammenbaut.

Christian

Und du musst nie überlegen,

Christian

muss ich das Virtual Env jetzt aufräumen

Christian

oder nicht, sondern er macht es halt immer, weil er

Christian

erkennt, wann das nötig ist.

Christian

Das klingt klasse.

Christian

Ja.

Jochen

Ja, ehrlich gesagt, hätte man an der Stelle

Jochen

schon

Jochen

eigentlich eine ganz gute Überleitung zu

Jochen

MBDev.

Jochen

Also das ist ja so ein Ding, mit dem

Jochen

spiele ich in letzter Zeit so ein bisschen rum.

Jochen

weil das

Jochen

im Grunde auch einen Großteil von

Jochen

diesen Dingen halt tut.

Dominik

Probleme lösen, wie man seine MGBung so

Dominik

einrichtet, dass man damit arbeiten kann, oder?

Jochen

Ja, wobei es halt auch

Jochen

sehr weit noch in den Bereich reinragt,

Jochen

irgendwie, wie kann man

Jochen

quasi ein Projekt so konfigurieren,

Jochen

dass hinterher dann auch Pakete für PyPI

Jochen

rausfallen

Jochen

und Dokumentation

Jochen

und

Jochen

GitHub Actions, wo dann direkt

Jochen

irgendwie so ein

Jochen

Continuous-Integration-Zeugs

Jochen

halt läuft und... Also Jochen,

Dominik

man hört raus, mag Notebooks, Jupyter-Notebooks.

Dominik

Ja, also ich

Dominik

mag die tatsächlich

Jochen

und das Ding

Jochen

dreht halt quasi

Jochen

den Jupyter-Notebook-Level

Jochen

so auf 11, weil

Jochen

da schreibt man halt alles in Jupyter-Notebooks

Jochen

beziehungsweise das ist halt eigentlich

Jochen

so eine Art IDE und

Jochen

plus Projektverwaltungs-Dings irgendwie

Jochen

Und genau, also ist halt quasi so die Antwort auf die Frage, was wäre, wenn ich alles in Notebooks machen wollte? Und dann kommt es ungefähr das dabei raus. Und das hat einige interessante Vorteile. Also es hat auch interessante, also es ist halt auch ein bisschen komisch natürlich, also wenn man jetzt irgendwie eine IDE gewohnt ist oder irgendwie auch nur einen normalen Texteditor, dann kommt einem das alles so ein bisschen eigenartig vor.

Jochen

Es gibt ja auch so einen sehr populären Talk, ich weiß gar nicht wo, der gehalten, Joel Gruß, der macht auch so einen Data Science Podcast, Adversarial Learning, glaube ich, heißt der und der macht viele YouTube-Videos und der hatte halt so einen Talk gehalten, I don't like Notebooks, der dann oft irgendwie immer rumgeschickt wurde.

Jochen

Und wo er sagt, ja, ja, das

Jochen

encouraget irgendwie

Jochen

einen Haufen sehr schlechte

Jochen

Software-Entwicklungspraktiken

Jochen

und macht

Jochen

die funktionierenden Workflows, die ich habe, halt kaputt

Jochen

und deswegen, ich finde das alles doof und

Jochen

nicht deterministisch und

Jochen

ja, in gewisser Weise hat er da so einen Punkt,

Jochen

aber man kann da auch

Jochen

überall um diese ganzen Ecken drum herum

Jochen

arbeiten und manche Sachen

Jochen

sind halt auch sehr, sehr cool dabei.

Jochen

Also das, was

Jochen

es halt so ein bisschen möglich macht,

Jochen

ist halt ein Ideal,

Jochen

dass, ich glaube, Knut

Jochen

hatte das irgendwann mal

Jochen

1983 oder so aufgeschrieben, so von

Jochen

Literate Programming, dass man halt sozusagen

Jochen

nicht nur Code hinschreibt, sondern halt

Jochen

Dokumentation und Code oder beziehungsweise was der Code tun soll

Jochen

halt irgendwie zusammen. Gab es diverse

Jochen

Versuche, das irgendwie hinzukriegen.

Jochen

Ich glaube, mit die ersten war

Jochen

der erste Versuch war Mathematica, aber das ist halt

Jochen

irgendwie nicht so richtig populär geworden.

Jochen

Matlab,

Jochen

R-Studio geht auch in die

Jochen

Richtung. Und jetzt halt Jupyter Notebooks,

Jochen

damit würde ich sagen, war es halt so,

Jochen

hat es in gewisser Weise einen Durchbruch

Jochen

gehabt und wird jetzt überall verwendet.

Jochen

Und halt auch JupyterLab nochmal so als komplette

Jochen

IDE irgendwie dafür.

Jochen

Und genau,

Jochen

da gibt es dann halt auf diesen Talk auch eine Antwort

Jochen

von einem, der sich,

Jochen

also derjenige, der sich diese

Jochen

MBDF-Geschichte überlegt hat oder dann halt,

Jochen

ja, die dann entstanden ist bei der

Jochen

Entwicklung einer Bibliothek,

Jochen

das ist Jeremy Howard,

Jochen

der hat

Jochen

der hat halt Fast

Jochen

AI, die

Jochen

Library, das ist auch so ein Wrapper um PyTorch

Jochen

im Grunde,

Jochen

damit geschrieben, auch ein Buch darüber geschrieben,

Jochen

das ist auch wahrscheinlich so das empfehlenswerteste

Jochen

Buch über PyTorch ist

Jochen

und das

Jochen

Buch ist auch komplett mit MBDev geschrieben

Jochen

und

Jochen

das ist halt schon, das hat auch schon so was sehr

Jochen

sehr cooles und der argumentiert halt, ja,

Jochen

für mich ist das alles viel einfacher, so einmal

Jochen

diese ganzen Hässlichkeiten und da muss man leider

Jochen

sagen, es ist halt, es gibt viele Hässlichkeiten

Jochen

oder es fällt vielen Leuten

Jochen

total schwer, irgendwie Projekte ordentlich

Jochen

aufzusetzen. Das geht halt

Jochen

alles mehr oder weniger weg, wenn die Leute halt

Jochen

mit, also es gibt ja so ein Template für

Jochen

GitHub zum Beispiel, wo man einfach sagen kann, okay, erzeuge

Jochen

mir so ein MBDev-Projekt oder

Jochen

man sagt MBDev-New irgendwie, ich weiß

Jochen

jetzt gar nicht genau, wenn man das Papier installiert

Jochen

hat, dann erzeugt es einem halt

Jochen

so eine Projektstruktur, so ähnlich

Jochen

wie bei Portree, Portree

Jochen

Init oder so, nur es macht

Jochen

noch mehr, deutlich mehr.

Jochen

Und, ja, dann für ihn ist es halt total super, weil die Pull-Requests werden halt besser und er reviewt die Pull-Requests, da gibt es dann auch ein eigenes Tool für, dann direkt in einem Notebook, das halt irgendwo auf Binder oder irgendwie auf Google Colab oder so gestartet wird.

Jochen

Das heißt, ein Pull-Request kommt rein, er klickt halt auf einen Link, dann geht das halt in einem eigenen Notebook auf, das überhaupt nicht bei ihm läuft, sondern irgendwo in der Cloud. Und dann kann er halt auch direkt sehen, da das halt so ein bisschen Richtung Literate-Programming geht, was hat sich denn geändert? Also wie verändern sich zum Beispiel auch die Visualisierungen von irgendwelchen Dingen?

Jochen

Das ja ansonsten auch ein Problem wäre,

Jochen

wenn jemand ein Pull-Request stellt,

Jochen

jetzt sieht die Visualisierung von irgendeiner Geschichte besser aus.

Jochen

Ja, da muss man erst mal, okay, die Daten zusammensammeln,

Jochen

das dann irgendwie ausführen und dann sich das angucken.

Jochen

Oh, dann wo guckt man sich das an?

Jochen

Wie generiert man so diese Grafik eigentlich?

Jochen

Das ist alles ziemlich umständlich.

Jochen

Und da hat man es halt dann direkt, kann sehen,

Jochen

okay, ah, sieht besser aus als vorher, super,

Jochen

Pull-Request akzeptieren, fertig.

Jochen

Und auch ein schöner Vorteil ist halt,

Jochen

Tests und so, die sind da auch direkt mit im Notebook.

Jochen

Bei so klassischer Softwareentwicklung mit einer IDE oder so hast du dann halt schon auch die Tests oft in einem sehr anderen Bereich deines Pakets, als der Code, an dem man gerade schreibt.

Jochen

Und das ist halt auch immer nicht so richtig, also die liegen halt nicht nah beieinander.

Jochen

Während wenn man das jetzt in einem Notebook schreibt, dann hat man halt irgendwie den eigentlichen Code, der irgendwas tut.

Jochen

Und halt noch Dokumentation und Beispiele, wie man es halt ausführt und so drumherum.

Jochen

Plus die Tests, alle zusammen in einem Notebook.

Jochen

Und über den Teilen, die halt hinterher in der Library wirklich landen sollen, steht halt noch irgendwie Export in Markdown oben drüber und dann werden die halt in eine Library gepackt. Und der ganze Dokumentationscode nicht, aber der landet dann durchaus noch in der Dokumentation. Und das ist schon sehr nett. Also ich finde es auf jeden Fall einen sehr interessanten Ansatz.

Jochen

Und ja, also ...

Dominik

Ist das nicht dann irgendwie so ein ewig langes Endlos-Scrolling

Dominik

durch irgendwelche Projekte dann durch von Top to Bottom?

Jochen

Ja gut, du kannst das ja strukturieren.

Jochen

Natürlich können die Notebooks schon lang werden.

Jochen

Man kann das ja strukturieren, wie man möchte.

Jochen

Man kann auch viele Notebooks machen.

Jochen

Ist auch so, man kann auch Dinge dann in der Library ändern

Jochen

und die werden dann in die Notebooks zurückgesynct, der Code.

Jochen

und umgekehrt halt

Jochen

und das ist so, man muss

Jochen

wenn Dinge jetzt, wenn

Jochen

Klassen zum Beispiel sehr groß werden, dann muss man nicht alle

Jochen

Methoden direkt

Jochen

an die Klasse dran schreiben, sondern man kann das

Jochen

dann auch später machen, dann gibt es dann halt Dekoratoren

Jochen

die dann irgendwie

Jochen

Funktionen als Methoden wieder an Klassen dran klatschen

Jochen

dem Code, der da hinterher rausfällt

Jochen

den sieht man das nicht an, aber im Notebook ist das dann halt schön

Jochen

übersichtlich, weil die ganzen

Jochen

Methoden, die die Klasse groß machen, kommen dann

Jochen

halt erst so nach und nach dazu oder können halt auch in einem anderen

Jochen

Notebook dazukommen

Jochen

ja, also

Jochen

es ist sehr anders, als man normalerweise

Jochen

so entwickelt, aber ich finde, das ist interessant

Jochen

und ja, ich meine,

Jochen

ich muss

Jochen

mich so ein bisschen zwingen, also ich muss mich manchmal so ein bisschen

Jochen

zwingen, da immer mal so reinzugucken in solche

Jochen

Dinge. Ich habe auch zuerst, muss ich

Jochen

gestehen, Notebooks hielt

Jochen

ich erst für ziemlich

Jochen

ein Quatsch und

Jochen

ich musste erst Leute damit arbeiten sehen, um zu

Jochen

verstehen, dass das eigentlich eine

Jochen

ziemlich coole Geschichte ist.

Jochen

Das war auch relativ spät.

Jochen

Also ich hatte, ich weiß nicht,

Jochen

wann ich erfahren habe davon, dass es Notebooks gibt,

Jochen

aber schon wahrscheinlich relativ früh,

Jochen

kurz nachdem sie irgendwie da waren.

Jochen

Und dann aber gesehen, dass es eine coole Geschichte ist,

Jochen

habe ich erst 2015, Ende 2015 oder so.

Jochen

Und ja, wenn man es dann halt mal ausprobiert,

Jochen

dann merkt man doch, oh, für manche Sachen ist das total super.

Jochen

Ja, und genau, deswegen gucke ich mir das jetzt gerade an

Jochen

und probiere das halt auch mal aus.

Jochen

Und das ist halt auch so was,

Jochen

was der Autor von Imdingen dann in seinem Talk

Jochen

als Antwort auf diesen I-don't-like-notebooks-Talk

Jochen

erzählt hat, ja,

Jochen

also er hat immer, er findet, es funktioniert

Jochen

immer gut bei Anfängern oder bei sehr, sehr erfahrenen

Jochen

Leuten. Dazwischen, wenn

Jochen

die Leute so sich eingegroovt haben auf ihre

Jochen

Idee oder so, dann, die sind alle

Jochen

immer sehr skeptisch zuerst,

Jochen

weil das natürlich auch immer

Jochen

so eine harte Änderung ist. Ich merke das ja auch,

Jochen

ich bin eigentlich VI-User

Jochen

und ich habe jetzt dieses Jahr mich

Jochen

mehr mit PyCharm beschäftigt,

Jochen

wie es gut noch nicht so

Jochen

und das war schon schmerzhaft, also das war

Jochen

irgendwie nicht, ja, aber muss man

Jochen

ab und zu wohl mal machen, um einfach mal zu

Jochen

gucken, wie sind andere Entwicklungsumgebungen denn so.

Jochen

Vielleicht gibt es ja doch tolle Sachen.

Jochen

Ja, diesen Wettel haben wir auch bei uns immer ständig.

Dominik

Also, was ich mich frage, macht ihr gerne

Dominik

Notebooks? Könnt ihr bestimmt

Dominik

gerne mal Bescheid, schreibt uns eine E-Mail dazu oder sowas.

Dominik

Also ich benutze zum Beispiel Notebooks auch

Dominik

relativ gerne, so zum schnellen

Dominik

Debuggen oder sowas, wenn ich irgendwie neue

Dominik

Methoden, neue Funktionen baue, dann schreibe ich

Dominik

die gerne erstmal im Notebook, zum Beispiel in der Django-Shell

Dominik

dann auch oder so und probiere es dann direkt aus,

Dominik

ob es geht und muss halt nicht mehr das

Dominik

ganze Projekt immer starten und dann irgendwie

Dominik

den Web-Server hochfahren und dann da die Module

Dominik

oder die Routen aufrufen, sondern ich sehe halt irgendwie direkt, ob diese

Dominik

kleinen Teile gehen oder nicht.

Dominik

Das ersetzt so ein bisschen den Debugger vielleicht an der Stelle

Dominik

oder so. Finde ich sehr

Dominik

handlich.

Dominik

Das verkürzt so ein bisschen den Entwicklungssyklus,

Dominik

habe ich das Gefühl.

Christian

Das ist spannend, weil ich glaube, das ist ein Phänomen

Christian

von der Komplexität der

Christian

Frameworks und der Libraries, mit denen man zu tun

Christian

hat, weil also im Kern

Christian

ist ja die Handlichkeit, dass das

Christian

Python eh schon hat

Christian

und ich habe jetzt

Christian

ja eben in der letzten Zeit häufiger eher mit

Christian

sehr kleinen Sachen immer wieder zu tun

Christian

weil halt viel Systemintegration, viel so

Christian

Mini-Tooling, viel gerade

Christian

auch verteilt durch die Gegend

Christian

wo ich experimentellen Code

Christian

habe, wo ich merke, entweder mache ich so, dass ich da einen PyTest

Christian

reinwerfe, relativ

Christian

leichtgewichtig, um mir auch für Sachen, die ich gerade

Christian

sketche, gleich

Christian

auch die Test Cases dann

Christian

im Prinzip rauszulassen, indem ich

Christian

sage, ich muss gerade mal was verstehen und debuggen

Christian

und dann habe ich gleich ein Testcase zu oder

Christian

weil ich eh bloß so ein

Christian

30, 40 Zeiler habe, der irgendwo

Christian

auf einer Maschine läuft, wo ich halt

Christian

einen Haufen Bewegdaten brauche, weil es ist

Christian

irgendein Storage-Server und ich irgendwie die Krypto von

Christian

diesem komischen Ding da gerade auseinandernehme und die

Christian

Formate irgendwie auch verstehen möchte.

Christian

Da merke ich, da bin ich halt häufig in so

Christian

System-Integration-Sachen drinne

Christian

und ich fall irgendwie, so wie

Christian

du sagst, genau in diesen Mittelteil da irgendwie gerade

Christian

rein, dass

Christian

sozusagen, ja, für so einzelne Fälle haben mich

Christian

die Notebooks immer wieder angelockt.

Christian

Ich sehe auch so andere Kollegen für

Christian

bestimmte Fälle, die immer wieder rausholen.

Christian

Aber wenn ich es dann versuche, dann

Christian

stolpere ich in meinem Workflow

Christian

zu schnell drüber,

Christian

dass es mit irgendwie allen anderen Sachen nicht mehr so

Christian

richtig andockt, die ich bei mir so parat

Christian

liegen habe. Also ich würde es zum Beispiel

Christian

sehr gerne auch via das Code

Dominik

und da kann man die mittlerweile sogar integrativ

Dominik

einfach nutzen. Das heißt, du hast sie dann einfach

Dominik

nirgendwo beiliegen, wie den anderen Code, den du auch

Dominik

drin hast und neben dem Terminal oder sowas und kannst halt dann

Dominik

direkt fast wie in der Shell

Dominik

irgendwie so nativ so hin und her switchen. Das ist schon

Dominik

nett.

Dominik

Ja, interessant.

Dominik

Ja.

Jochen

Ja, das ist schon, also

Jochen

ich finde, also das für mich total überzeugende

Jochen

Geschichte war dann halt, also gerade

Jochen

für so Data Science oder Machine Learning-Geschichten,

Jochen

wo man oft so Schritte hat, die lange dauern.

Jochen

Und das ist

Jochen

einfach, wenn man das anders macht, ist es halt,

Jochen

also kann man auch irgendwie,

Jochen

aber das lässt man dann manchmal weg, weil man da nicht dran denkt oder so.

Jochen

Man kann natürlich alles irgendwie cachen oder

Jochen

versuchen, das halt so hinzuschreiben,

Jochen

dass man es auch schnell wieder erzeugen

Jochen

kann oder so. Aber wenn man jetzt irgendwie

Jochen

ein Modell eine Stunde lang trainiert hat oder ein paar Stunden

Jochen

und da macht man irgendeinen blöden Fehler,

Jochen

Und dann ist halt das Ergebnis von einer Stundenberechnung einfach weg.

Jochen

Das kann einem im Notebook im Grunde nicht so wirklich passieren,

Jochen

weil dann hat man halt die Zelle, die das macht, ausgeführt.

Jochen

Und selbst wenn man irgendwo anders einen Fehler macht,

Jochen

dann macht das halt erst mal nichts kaputt,

Jochen

sondern dann ändert man das halt und dann führt man es nochmal aus

Jochen

und dann geht es halt weiter.

Jochen

Und das beschleunigt viele Dinge durchaus.

Jochen

Auch wenn man gerade mit großen Datenmengen irgendwie viel macht

Jochen

und die nicht so einfach mal laden kann.

Jochen

Also gerade so leidvolle Geschichten sind da sowas wie so fürchterliche Hadoop-Data-Lakes oder so,

Jochen

aus denen man die Daten nur ganz schlecht wieder rauskriegt.

Jochen

Und dann hat man es irgendwie geschafft, die Daten rauszukriegen.

Jochen

Und dann sind sie gleich wieder weg, wenn man irgendwie einen Fehler gemacht hat oder so.

Jochen

Also das war auch in dem Talk von Joel Gruß,

Jochen

hat dann jemand am Schluss, als dann Fragen aus dem Publikum kamen,

Jochen

meinte jemand dann so, ja, also ich habe ja das Problem, genau,

Jochen

meine Data-Sites sind halt groß und es nervt, wenn ich das irgendwie verliere.

Jochen

quasi das gleiche Argument, was ich jetzt auch gerade gebracht habe

Jochen

und er meinte dann so,

Jochen

ja, Moment, du hast, du machst

Jochen

explorative Datenanlöse-Geschichten

Jochen

mit Datasets, die so mehrere Gigabyte,

Jochen

zwölf Gigabyte groß sind oder so, und er so,

Jochen

ja, und ich dachte mir so,

Jochen

ja, ja, ich mache das auch sehr oft,

Jochen

das ist irgendwie, okay, ja, dann,

Jochen

dann, so, ja,

Jochen

das ist, also, finde ich, ist auch,

Jochen

das ist halt völlig normal, also, irgendwie,

Jochen

und er meinte, er macht das halt nie, und dann kann ich das auch

Jochen

verstehen, okay, wenn man diesen Fall nie hat, dann, okay,

Jochen

aber wenn man ihn hat, dann ist das sehr hilfreich,

Christian

Und interessanterweise triggert aber bei mir dieses Gefühl, und das ist so diese Frage, wer bringt da welchen Erfahrungshintergrund mit, bei mir triggert, wenn du beschreibst, du willst nicht aus Versehen irgendwas verlieren, dann ist mein Gefühl den Notebooks halt gegenüber viel stärker ein, ja das ist da irgendwo, ich habe keine Ahnung, wann der Punkt ist, wann ich es verliere.

Christian

Das ist so irgendwie noch unoffensichtlicher, während bei dem anderen ist es irgendwie offensichtlich und ich muss hier etwas machen, wo mir dann auch klar ist, wieso es jetzt persistent ist oder auch nicht. Ich glaube, daran spaltet sich, glaube ich, ein bisschen so das Publikum.

Jochen

Naja, man muss es halt immer dann noch irgendwie irgendwann ordentlich machen, aber manchmal will man einfach nur irgendwas ausprobieren.

Dominik

Ja, ich wollte gerade sagen, also ich habe also ein paar Müll-Notebooks, da schmeiße ich einfach irgendwas rein, manchmal auch richtig unformatierte Sachen, einfach um die Schnipsel irgendwo griffbereit zu haben und führe dann halt einfach mal so eine Zelle aus, um zu gucken, was da passiert und das ist halt von der Struktur vielleicht manchmal sogar entfernt, aber das ist echt hilfreich, weil also ich würde das halt nie irgendwie in das Projekt dann reinstecken, sondern das ist halt dann nur dann da drin und irgendwann zieht man das dann halt vielleicht mal gerade und baut dann irgendwie so ein kleines Modul da und dann funktioniert es, weil das super getestet ist und das kann man dann einfach copy-pasten eigentlich und es geht.

Christian

Also wo ich gespannt bin, das reißt jetzt so, jetzt kriegen wir so fast die Kurve zum Machine Learning rüber, da habe ich gesehen, dass das halt tatsächlich sehr häufig auch angeboten wird als Übungsplattform, dass du irgendwie vorgefertigte Notebooks eben hast, wo du eben halt so ein bisschen erzählerische Erklärungen hast und dann Code-Beispiele und dann halt auch das Zeug ausführen kannst, die Ergebnisse sehen und dann halt drinnen rumeditieren, um so ein bisschen mit dem Code zu arbeiten.

Christian

zu spielen.

Christian

Ich bin mal gespannt, weil ich mich jetzt durch

Christian

ein paar von den Sachen durcharbeite,

Christian

wie mir das didaktisch als jemand, der

Christian

auf der Konsumentenseite davon ist, gefällt.

Christian

Weil ich gleichzeitig mich selber

Christian

dann eher ertappe von,

Christian

wenn ich das schon so

Christian

vorgesetzt kriege, ist irgendwie die

Christian

Hürde oder es ist, gibt es

Christian

ein gewisses Risiko, dass ich schneller

Christian

durchgehe, als ich es tatsächlich verstehen

Christian

und konsumieren kann. Weil es

Christian

dir vorgaukelt mit, ja, du hast jetzt auf Play gedrückt

Christian

und jetzt kam das Ergebnis raus, ah ja, aha,

Christian

okay, weiter.

Christian

Da ist sozusagen

Christian

vom E-Learning-Faktor habe ich das

Christian

Gefühl, ich muss mich ja eigentlich noch

Christian

viel stärker mit dem Zeug auseinandersetzen

Christian

und jetzt muss ich aber noch weniger machen.

Christian

Also ist da so ein Gap von

Christian

was hat mein Hirn noch an Chancen, es zu

Christian

verstehen? Bin ich gespannt darauf.

Christian

Ja, es ist immer blöd, wenn man es nicht

Dominik

selber ausprobiert, dann ist es schnell wieder weg.

Jochen

Ja, eben. Also wenn man die Zeilen einfach nur

Jochen

nacheinander, viele Tutorials

Jochen

oder Videos, die man so sieht, bestehen

Jochen

daraus, dass jemand dann halt so eine Zeile nach der anderen ausführt,

Jochen

Das hilft einem natürlich nicht so richtig.

Jochen

Aber was toll ist und was man machen kann,

Jochen

ist ja selber dann halt irgendwann mal so damit rumzuspielen

Jochen

und halt zu gucken, okay, was ist denn da jetzt wirklich drin?

Jochen

Und das kann man halt auch einfach ...

Dominik

Ich hatte mal so am Anfang ja diese Tutorial-Reihe,

Dominik

der erwähnt, NumPy for Grandmas und Pandas for Grandpas.

Dominik

Der benutzt auch Google Colab, was ja auch im Prinzip das Notebook ist.

Dominik

Und er hat jedes Mal nach jedem Kapitel Übungen eingestellt,

Dominik

die ziemlich cool sind, wo man, weiß ich nicht,

Dominik

die Anwendung direkt praktisch an so Aufgaben üben kann.

Dominik

Und wenn man die halt selber versucht, dann stellt man halt fest, ob man das kann. Also meistens kann man es dann nicht, aber das ist ja nicht so schlimm, weil er hat ja die Lösung dann hinterher gezeigt. Aber durch das Ausprobieren bekommt man halt genau das Gefühl dafür, wann, wie, wo, was man vielleicht filtern, nutzen und so kann. Und auch halt mit dem Notebook. Und ich glaube, das ist so die einzige Methode, wie man tatsächlich dann versteht, was dann da passiert und was man da machen möchte.

Christian

Und mindestens ist es natürlich so, dass man auf jeden Fall erstmal eine lauffähige Umgebung hat.

Christian

Also dass man dort erstmal was hat, wo man sagt, okay, ich kann anfangen mit,

Christian

also hier gibt es Code, der sich selber beweist, dass er erstmal tut.

Christian

Das heißt, ich habe nicht das Problem, wenn ich dann irgendwie das Zeug aufbaue

Christian

und dann noch nicht so ganz weiß, ob meine Umgebung jetzt tatsächlich irgendwie clean ist

Christian

und warum kommt jetzt nicht das raus, was rauskommen soll?

Christian

Warum wirft man mir irgendwelche komischen Fehler? Bin ich schuld oder war die Umgebung schuld?

Christian

Da ist es natürlich schön, von einem definierten

Christian

Zustand aus loszulaufen.

Christian

Zumal ich auch eigentlich, eigentlich würde ich halt sagen,

Christian

mir liegt es total, Sachen halt

Christian

erstmal Ende-Ende zu begreifen.

Christian

Also wirklich mit,

Christian

wo fängt es hier an, was sind die kleinen Bauteile,

Christian

aus denen sich das zusammensetzt und wie löse

Christian

ich jetzt ein Problem einmal von vorne

Christian

bis hinten damit durch. Das taugt mir

Christian

total und

Christian

aber trotzdem triggert es mich an so ein paar

Christian

anderen Punkten.

Jochen

Ja, also

Jochen

genau, also ich würde sagen, kann man

Jochen

sich mal angucken.

Jochen

Ist ganz nett.

Jochen

Ja, genau.

Jochen

Eigentlich ein ganz guter Einstieg in dieses

Jochen

Machine Learning Ding.

Jochen

Ich würde sagen, dieses PyTorch Buch, was

Jochen

Jeremy Howard geschrieben hat, das kann man sich

Dominik

auf jeden Fall auch... Wie heißt nochmal dieser Rapper

Dominik

von PyTorch, von dem du am Anfang sprichst?

Dominik

Fast.ai.

Dominik

Könnte man jetzt

Dominik

eigentlich also direkt in Colab, also das kann man auch

Dominik

seinem Telefon ausprobieren, direkt Python ausführen

Dominik

im Browser und live und

Dominik

funktioniert einfach.

Dominik

Und dann kann man es importieren. Ich glaube, die Sachen sind alle

Dominik

dabei und los geht's, oder?

Dominik

Ja.

Jochen

Ich weiß jetzt nicht, ob ich das auf dem Telefon machen wollte.

Jochen

Aber gut.

Jochen

Wobei die Telefone, also

Christian

ich war ja von dem Machine Learning Thema

Christian

angetriggert, weil

Christian

ich mich jetzt mal angefangen habe,

Christian

ein bisschen umzugucken, was da so an Hardware

Christian

auf dem Markt eigentlich rumfliegt

Christian

und in den Libraries habe ich zumindest auch gesehen,

Christian

Tatsächlich das Mobil ist ja definitiv halt interessant, weil du hast halt inzwischen da überall nochmal irgendwelche Chips drin, die Machine Learning Tasks halt unterstützen.

Christian

Also ich meine, guck dir den bei Apple die ganze Reihe, da ist das ja irgendwie völlig klar.

Christian

Aber auch die Androids haben da ja schon Sachen drin.

Christian

Das ist halt, weil es ist ja für mich vom Verständnis jetzt mit dem, wie ich reingeputzelt bin über die letzten zwei Wochen, ist vor allem, dass es halt ein Trade-off ist, dass du mit weniger Strom mehr Punch kriegst.

Christian

Also die Verhältnisse, wenn du deine Algorithmen oder deine Pipelines halt richtig aufziehst, speziell nachher für die Inferenz, müssen nachher noch ein bisschen in die Themen, glaube ich, die Stichworte sortieren und ich habe auch noch welche, wo ich Fragezeichen im Kopf habe.

Christian

Also wenn ich tatsächlich für den Benutzer etwas rechnen will, um für ihn ein Ergebnis zu erzeugen, dann ist da wohl typischerweise ein Power-Faktor von 40 drin, was ich an Geschwindigkeit rausholen kann im Vergleich zu wenn ich es auf einer normalen CPU rechne.

Christian

Und gerade wenn ich halt ein stromlimitiertes Gerät habe, wie ein Telefon, dann ist Faktor 40 halt schon ein massiver Unterschied. Alle beschweren sich, dass sie gerade über den Tag kommen. Wenn ich das halt dann mal 40 mache, ist der Tag halt schon früh um acht vorbei.

Christian

Insofern, also das ist so das erste Verständnis von, warum fangen wir eigentlich da an, an dieser Ebene drauf reinzuhauen und das ist halt, auch wenn jetzt einige CPUs natürlich immer mehr Instructions kriegen, die bestimmte von den Operationen, die es da braucht, diese ganzen Vektor-Operationen in Hardware abbilden, die fallen einem auch gerne mal auf den Fuß.

Christian

Also mir ist dann letztens auch aufgefallen, dass einige von den etwas älteren Libraries, die sich im KI-artigen Bereich bewegen, also Tesseract für OCR, also Schrifterkennung, Texterkennung, die haben halt zum Beispiel jetzt Unterstützung für diese Vector Instructions von Intel.

Christian

Und das fällt einem auf die Füße, weil du auf einem Multicore-System mit diesen großen Instructions von den Vektoren halt gerne mal die Pipeline für drei, vier Kerne auf einen Schlag mal für 40, 50 Takte stilllegen kannst.

Christian

Und ja, das durch eine so eine Vektor-Operation erledigen zu lassen, ist in Summe schneller als durch viele kleine, aber nichtsdestotrotz hat das so Auswirkungen auf die Responsivität des Systems, weil das plötzlich, also das Ding frisst Strom, dann geht dir der Turbo-Boost verloren und so Auswirkungen, wenn du das dann auf einer virtuellen Maschine machst, dann müssen halt gegebenenfalls noch drei virtuelle Maschinen nebenan auch noch die Luft anhalten, weil, boah, das ist aber eine dicke Instruction, die kann ich jetzt aber nicht so auf einmal rechnen.

Christian

Und da merke ich, okay, ja, das macht Sinn,

Christian

da nochmal über spezialisierte Hardware nachzudenken

Christian

und Algorithmen, die sich genau darauf abbilden

Christian

lassen.

Christian

Ja, ja, ja, dieses Hardware-Thema

Jochen

ist natürlich total interessant. Ich meine, im Grunde

Jochen

hat man da nur

Jochen

bei einer speziellen Art von

Jochen

Machine Learning-Modellen

Jochen

irgendwie diesen Bedarf, halt bei

Jochen

den neuronalen Netzen,

Jochen

bei vielen

Jochen

anderen Sachen, also wenn man jetzt irgendwie,

Jochen

weiß ich nicht, lineare Modelle macht oder

Jochen

Superflexor-Maschinen oder so, da hilft einem das alles nicht

Jochen

so richtig.

Jochen

Aber eben bei

Jochen

neuronalen Netzen halt schon. Also alles,

Jochen

was irgendwie mit Matrizen-

Jochen

Multiplikationen irgendwie darauf

Jochen

dann letztlich irgendwie basiert.

Jochen

Ich finde das sowieso auch interessant, wie sich

Jochen

jetzt so die Hardware im Grunde

Jochen

so über die Jahrzehnte so in der

Jochen

Mathematik hochhangelt. Also wenn man jetzt

Jochen

sozusagen vom, wenn man sagt

Jochen

so irgendwie, keine Ahnung, ein Skalar ist irgendwie so

Jochen

Tensor-Nullterstufe oder sowas und dann hat man halt

Jochen

irgendwie so ein Vektor und

Jochen

dann irgendwie eine Matrix

Jochen

und dann irgendwie

Jochen

im allgemeinen Fall

Jochen

Tensoren oder

Jochen

Arrays mit N-Dimensionen.

Jochen

Was ist der Unterschied

Christian

eines Arrays mit N?

Christian

Also was ist der Unterschied eines Tensors mit einer Matrix?

Christian

Das ist genau

Jochen

eigentlich, ja, Matrix ist zweidimensional,

Jochen

Tensor ist quasi N-dimensional,

Jochen

wobei das halt in unterschiedlichen Communities

Jochen

auch unterschiedlich genannt wird.

Jochen

Wenn ich dann sowas sage,

Jochen

dann sagen die Leute, die aus der Mathematik kommen,

Jochen

das ist doch Quatsch. Dann die Leute, die aus der Physik

Jochen

kommen, sagen so, nee, Moment, Tensor, das ist für uns

Jochen

was ganz anderes.

Jochen

Ja, da musst du jetzt nochmal genau

Jochen

sagen, was denn Tensor für dich ist.

Jochen

Also das, was ich, also das

Jochen

Konzept sozusagen ist eigentlich quasi, du hast

Jochen

einen Skalar, das ist halt irgendwie sozusagen

Jochen

ein Ding, irgendwie eine

Jochen

Zahl. So, das nächste, die nächste

Jochen

Stufe wäre für mich jetzt halt irgendwie

Jochen

ein Vektor. Also

Dominik

eine Richtung in einem Raum.

Dominik

Ja, das ist dann

Jochen

schon eine Interpretation, was das da nun ist, aber

Jochen

das einfach nur so

Jochen

als Struktur. Das nächste wäre halt

Jochen

Matrix.

Christian

Genau, also ein Skalar ist ja tatsächlich

Christian

erst mal bloß ein Wert, der für sich steht.

Christian

Der ist dimensionslos.

Christian

Und

Christian

ein Vektor kann ja

Christian

n Dimensionen haben.

Christian

Und das ist ein Punkt in einem n-dimensionalen

Jochen

Raum. Genau, also

Jochen

aber da sieht man schon, dass das mit den Dimensionen nicht so

Jochen

ganz hinkommt, weil klar, natürlich hat der n Dimensionen,

Jochen

aber tatsächlich würde ich jetzt sagen, der hat

Jochen

irgendwie ist halt eine Liste von Zahlen

Jochen

und hat halt als Struktur eine

Jochen

Achse. Vielleicht einfach mal ein anderes Wort

Jochen

nehmen. Genau, ich kann,

Christian

die Frage ist jetzt, von welchem Ende komme ich halt erstmal,

Christian

aber ich bilde ja mit einem Vektor

Christian

einen Punkt in einem

Christian

n-dimensionalen Raum ab und dafür brauche

Christian

ich eine Liste, weil ich nämlich

Christian

halt n-Werte, n-Skalare

Christian

bilden halt

Christian

einen Vektor der

Christian

Dimension n. Genau.

Christian

Mit einer Matrix

Christian

mit einer Matrix kann ich jetzt mehrere

Christian

von solchen Vektoren nebeneinander

Christian

setzen. Da gibt es dann welche mit

Christian

bestimmten Eigenschaften, die, wenn ich, wenn die Matrix

Christian

genauso, wenn ich halt N

Christian

Vektoren der Dimension N

Christian

zusammenfasse, dann habe ich

Christian

genau eine

Christian

quadratische Matrix

Christian

und

Christian

solche Spielchen, wo man dann halt bestimmte

Christian

Dinge rechnen kann.

Jochen

Ja, aber genau, das wäre halt für mich die nächste Stufe

Jochen

sozusagen, dass du dann zwei Achsen hast,

Jochen

so in zwei unterschiedliche Richtungen

Jochen

und das nächste wären dann halt drei.

Jochen

Das hast du dann halt bei Bildern, da hast du dann halt

Jochen

nicht nur, also du könntest ja auch schon eine Matrix

Jochen

als Modell für

Jochen

ein Bild nehmen, wenn du jetzt nur schwarz und

Jochen

weiß hättest oder nur irgendwie

Jochen

einen Wert für, weiß ich nicht, die Helligkeit

Jochen

oder so, aber wenn du jetzt Farben hast,

Jochen

dann hast du schon Rot, Grün, Blau,

Jochen

das kannst du jetzt in eine Matrixzelle

Jochen

ja schon nicht mehr so richtig reinpacken

Jochen

und was man dann macht, ist halt, dann geht man halt noch

Jochen

eine Achse in die nächste

Jochen

Richtung sozusagen und dann hast du halt sozusagen

Jochen

eine Matrix pro Farbkanal

Jochen

sozusagen. Das kannst du ja abbilden

Christian

sozusagen über eine Matrix von Vektoren

Christian

oder über eine

Christian

statt einem Quadrat über einen Würfel.

Dominik

Ja, aber mit dem Würfel darstellen,

Dominik

glaube ich, das wird schwierig, weil was ist dann die vierte

Dominik

Dimension und die fünfte und so?

Dominik

Ja, das geht immer weiter.

Christian

Wir machen halt einen Hyperwürfel.

Jochen

Also das ist

Jochen

tatsächlich, Bilder

Jochen

sind halt im Rechner,

Jochen

also für Machine Learning-Geschichten

Jochen

sind halt, einzelne Bilder sind

Jochen

halt sozusagen

Jochen

Arrays mit drei Achsen, ja, so einer

Jochen

für halt Höhe, Breite.

Dominik

Das wäre wesentlich, wenn die so nebeneinander

Dominik

macht, oder? Dann hast du da drei Matrizen nebeneinander und

Dominik

dann hast du hinterher Reihen von

Jochen

Matrizen nebeneinander. Ja, aber die legt man

Jochen

übereinander und das spielt auch tatsächlich

Jochen

eine Rolle, dass das halt irgendwie nicht

Jochen

einfach getrennte Dinger sind, sondern dass es halt

Jochen

ein Array ist mit drei Achsen und

Jochen

nicht drei Matrizen.

Jochen

Und es ist so, tatsächlich ist es

Jochen

eher sogar so, dass man jetzt

Jochen

ein Trainingsset, als ein Array mit

Jochen

vier Achsen begreift. Nämlich, du hast dann halt auch noch die

Jochen

deine Trainingsbeispiele.

Jochen

Die Labels, oder?

Jochen

Die Labels

Jochen

sind getrennt davon, aber du hast halt

Jochen

sozusagen mehrere Trainingsbeispiele.

Jochen

Du hast

Jochen

immer Batches von so

Jochen

Bildern. Das heißt, du hast halt

Jochen

da auch nochmal eine Achse.

Jochen

Und dann bist du schon bei

Jochen

vier Achsen. Und dann,

Jochen

wenn du jetzt in Richtung Videos gehst, dann bist du auf jeden Fall schon mal

Jochen

bei fünf Achsen.

Jochen

Weil dann hast du nämlich auch noch Frames

Jochen

über die Zeit und so.

Jochen

Und dann wird es halt, irgendwann kann man

Jochen

es sich auch nicht mehr vorstellen, aber

Jochen

muss man ja vielleicht auch nicht. Ja, aber wenn man das halt so nebeneinander

Dominik

schreibt und dann wieder rein und dann wieder spalten,

Dominik

dann wieder rein und spalten von Dingen, die sich so ein bisschen

Dominik

schachteln, wie so eine Puppe,

Dominik

dann

Dominik

wird das vielleicht ein bisschen visualisierbarer.

Dominik

Ja, kann man auch.

Jochen

Auf jeden Fall. Aber genau.

Jochen

Also jedenfalls, das wird dann halt immer

Jochen

von der

Jochen

Struktur her schwieriger.

Jochen

Und was ich eigentlich nur am Anfang

Jochen

sagen wollte, was ich interessant finde, ist, dass jetzt sozusagen

Jochen

die Hardware halt diesen Prozess mitmacht.

Jochen

Nämlich halt

Jochen

von irgendwie, keine Ahnung,

Jochen

Vektorrechnern, wo man halt eine

Jochen

Instruktion hat, die dann nicht nur

Jochen

auf einem, mit einem Skalar

Jochen

quasi rechnet, sondern... Das ist der Aberkurs, der dann

Jochen

hin und her schiebt. Ja, sondern

Jochen

wo man die halt auf

Jochen

vielen Datendingern dann

Jochen

halt ausführt, sozusagen diese SIMD-Geschichten

Jochen

oder Vektorrechner halt. Und jetzt

Jochen

haben wir halt Tensor Cores

Jochen

in den Grafikkarten und den GPUs

Jochen

und da

Jochen

ist halt sozusagen, die rechnen dann halt nicht mit Vektoren,

Jochen

sondern die rechnen halt direkt mit

Jochen

Matrizen. Also klein,

Jochen

so 4x4 Matrizen, aber immerhin.

Jochen

Die machen halt dann in einem Takt schon

Jochen

Multiplikationen von zwei 4x4

Jochen

Matrizen, wo du

Jochen

normalerweise viel, viel mehr Takte brauchst, wenn

Jochen

du das halt irgendwie dann halt

Jochen

in Vektor-Operationen machst oder halt

Jochen

in der CPU

Jochen

als Skalar.

Jochen

Und ja, das ist

Jochen

eigentlich ganz faszinierend zu sehen, dass das jetzt so gerade mit der

Jochen

Zeit passiert.

Jochen

Ja. Also das ist auch der Hauptgrund

Dominik

dann, warum die Grafik

Dominik

Hardware so gerne dafür benutzt wird.

Dominik

Ja, weil halt die Dimensionalität bei

Dominik

Grafikoperationen eh schon so hoch gewesen

Dominik

sein muss.

Jochen

Ja, weil halt die Geschichten, auf die das optimiert

Jochen

ist, die mappen halt super auf die Operationen, die man

Jochen

halt für Machine Learning braucht.

Jochen

Also diese ganzen

Jochen

Matrix-Multiplikationen, beziehungsweise halt diese

Jochen

Convolution-Operationen, die man für

Jochen

diese Convolutional Neural Nets halt braucht,

Jochen

die sind halt damit super

Jochen

umzusetzen. Die brauchen wir halt auch für Spiele und so.

Jochen

Die machen ja auch im Grunde solche Sachen.

Dominik

Jetzt musst du vielleicht nochmal für all die Hörer erklären,

Dominik

was ein Convolutional Neural Network ist.

Dominik

Vielleicht einmal ganz kurz.

Jochen

Da hatten wir doch schon mal eine Episode dazu.

Jochen

Da war das nicht die Folge 8.

Jochen

Ehrlich gesagt, ich weiß nicht, ob ich das

Jochen

kann ich jetzt aus dem Stehgreif auch nicht.

Jochen

Also im Grunde, das ist halt eine spezielle Art von

Jochen

neuronalen Netz, wo halt

Jochen

zwischen den verschiedenen

Dominik

Layern, zwischen den Ebenen irgendwelche Dinge passieren.

Jochen

Das eignet sich halt vor allen Dingen, also es ist nicht nur

Jochen

Bildverarbeitung, also man kann das auch

Jochen

eindimensional dann halt für Audio

Jochen

machen oder für halt Text, aber

Jochen

es ist halt eine

Jochen

Operation, man kann sich das, muss man

Jochen

sich eigentlich auch mal ein Bild so angucken. Ich glaube,

Jochen

das kann man nicht so wirklich gut erklären.

Jochen

Das kriege ich irgendwie

Jochen

nicht so richtig hin. Aber

Jochen

genau, also es gibt auch noch andere

Jochen

Arten von Netzen, also die jetzt gerade eine große Rolle

Jochen

spielen mit so einem Transformer, ist zum Beispiel total heiß

Jochen

gerade. Und

Jochen

ja,

Jochen

das funktioniert, es gibt so unterschiedliche

Jochen

Architekturen, TPUs und so,

Jochen

Tensor Cores. Und das

Jochen

einzig Blöde ist jetzt, dass außerhalb von

Jochen

das eigentlich, das ist was halt

Jochen

wirklich doof ist, dass halt Nvidia da so ein Monopol

Jochen

auf den ganzen Kram hat. Das ist so richtig

Jochen

ätzend. Das macht das mit der Hardware auch ziemlich

Jochen

schwierig, finde ich, irgendwie. Und gut,

Jochen

ich meine, es gibt noch Google und so, die mit ihren TPUs

Jochen

dann auch mal eine eigene Geschichte machen, aber da kommt man ja auch nicht

Jochen

so richtig ran. So einen Laden kaufen kann man ja auch nicht.

Jochen

und

Jochen

tja, das ist halt, das macht das Ganze

Jochen

etwas unschön. Alles andere ist super

Jochen

toll, aber das ist ja, diese ganzen

Jochen

Geschichten sind etwas fies und natürlich

Jochen

ist es dann auch schwierig, die Dinger zu betreiben, weil wenn man

Jochen

jetzt zu Nvidia geht und sagt, also ich habe da so ein

Jochen

Rechenzentrum und da würde ich jetzt gerne irgendwie Machine Learning

Jochen

Server irgendwie mir hinstellen oder so,

Jochen

dann sagen die, ja gern, klar, super, hier,

Jochen

nimm doch mal die, weiß ich nicht,

Jochen

was haben wir da, A100 Karten oder so,

Jochen

aber die

Jochen

kosten dann halt ein Arm und ein Bein.

Jochen

Wobei das finde ich, also

Christian

ob die ein Arm und ein Bein kosten, kommt so ein bisschen darauf an.

Christian

Du hast halt das Thema, du kannst nicht unter

Christian

einer gewissen Mindestgröße einsteigen.

Christian

Und was mir bei Nvidia mit dem

Christian

Monopol tatsächlich aufgefallen ist, ist, die

Christian

segmentieren

Christian

sich den Markt zurecht.

Christian

Die haben sehr stark angefangen, über

Christian

Lizenzverträge zu knebeln.

Christian

Also speziell mit dem Thema, dass

Christian

die meisten Puppel-Grafikkappen

Christian

können

Christian

genau den Kram, den man da braucht. Die haben inzwischen

Christian

auch ausreichend RAM, es ist immer noch die Frage

Christian

nach welchen Modellgrößen kannst du rechnen

Christian

und Nvidia will ja nun mal die

Christian

Gamerszene bedienen

Christian

und verbietet dir aber halt für die

Christian

normalen Gamer-Grafikkarten

Christian

sie verbieten es, die Lizenz technisch

Christian

einfach sie dafür einzusetzen

Christian

sie sagen, auf diesen Karten darfst du kein

Christian

Machine Learning machen

Christian

so und dann

Christian

nimmst du bitte unsere, die A100 oder halt

Christian

auch ein paar kleinere oder irgendwas

Christian

und es ist schon krass, was die auf dem Gebrauchtmarkt teilweise ziehen

Christian

also es gibt jetzt irgendwie

Christian

bei Azure

Christian

gibt es die K80 unter anderem.

Christian

Die ist jetzt schon ganz schön in die Jahre gekommen,

Christian

glaube ich. Aber die kostet

Christian

halt das Stück immer noch 2.500 Euro

Christian

auf dem

Christian

freien Markt.

Christian

Und wenn du mit einer A100 einsteigen willst,

Christian

bist du halt bei so 8.000, 9.000 Euro

Christian

etwa dabei netto.

Christian

Und da muss man aber im Hintergrund wissen, naja, das ist halt

Christian

schon genau für das High-End-Data-Center-Zeug

Christian

gedacht. Das heißt, eine davon kannst

Christian

du halt im Prinzip auch in sieben Teile zerteilen,

Christian

in virtuelle Maschinen reinpacken, kannst die irgendwie

Christian

in unterschiedliche Zuschnitte von

Christian

irgendwie unterschiedlichen

Christian

Rahmengrößen und was du denen an

Christian

Ressourcen zuweist, also da

Christian

Da ist dann schon auch Musik drin im Handling und wenn du dir das dann durchrechnest, dann merkst du, okay, das lohnt sich wirtschaftlich auch, aber es braucht halt diese Mindestgröße und klar, Nvidia verkauft ja halt auch, es gibt so eine A100, irgendwie vier Höheneinheiten, glaube ich, Riesenchassis mit acht von den Stück drin oder so, mit den tollen irgendwie auch noch speziellen Bussystemen, die die Karten untereinander verbinden.

Christian

Da kostet halt das Stück nur 250.000 Euro.

Christian

Das ist natürlich für mal anfangen und irgendwie loslegen und gucken,

Christian

wie experimentiere ich jetzt eigentlich damit.

Christian

Und du brauchst halt, ich habe noch nicht verstanden,

Christian

welche dieser Hardware, welche Operationen zum Beispiel in vergleichbarem Umfang,

Christian

vergleichbarem Takt, welche Modellgrößen für den RAM

Christian

und haben die nochmal unterstrichen,

Christian

da sind inzwischen auch acht Generationen, glaube ich, in Summe am Start,

Christian

was die tatsächlich können, welche Befehlssätze.

Christian

Das ist alles relativ unübersichtlich.

Christian

extrem viel Marketing-Fluff momentan

Christian

draußen und selbst die

Christian

Datasheets sind nicht

Christian

gut lesbar.

Christian

Was ich bei Nvidia zum Experimentieren gerade auf dem Schirm

Christian

habe, sind diese Jetson-Teile.

Christian

Das ist irgendwie deren Richtung

Christian

für eher kleine Embedded-Sachen, wo du so

Christian

in Richtung Robotik und so gehst. Und da kann man

Christian

tatsächlich mit dem allerkleinsten

Christian

für, glaube ich, 100 Dollar oder so, kannst du da reinwerfen.

Christian

Und das ist schon ein

Christian

Mini-PC, wie so ein Raspberry

Christian

im Prinzip. Da hast du schon Netzwerk und CPU

Christian

und alles irgendwie einmal als einen Bundle

Christian

und da findet man im Netz auch

Christian

für die ganzen klassischen Frameworks, die man jetzt so hat

Christian

wie PyTorch etc. Anleitungen

Christian

wie man die auf den Teilen dann betreibt, das heißt

Christian

das ist so für mich gerade der Vector

Christian

mal zu gucken, okay, so ein Stück

Christian

Hardware mal zu kriegen, wo man das Zeug

Christian

tatsächlich sehen kann von, bringt mir das

Christian

jetzt wirklich was in der Beschleunigung oder

Christian

ist das alles bloß heiße Luft

Christian

ja, das ist so ein Ende

Christian

ansonsten würde ich ja gerne

Christian

immer lieber noch ein bisschen AMD

Christian

kaufen. Und da macht sich

Christian

aber auch wieder Nvidia als Platzhörer

Christian

bemerkbar, dass viele von den Frameworks dann

Christian

mit den AMD-Karten wieder nichts anfangen können.

Christian

Das ist so ein bisschen,

Christian

ja, hm.

Jochen

Ja, das ist ganz blöd. Also nicht, dass ich wüsste,

Jochen

dass mit AMD da irgendwas zu machen wäre zur Zeit.

Jochen

Also das kann man ja auch

Christian

nicht kaufen kann. Ja, okay.

Christian

Also zum einen muss die

Christian

Playstation mal noch irgendwie gefertigt werden.

Christian

Die ziehen da ja Kapazität ab.

Christian

Und zum anderen die ganzen Bitcoin-

Christian

Miner, die scheinen das

Christian

Zeug schon direkt an der Fabrik abzuzweigen.

Christian

Ich habe ein paar Lieferanten gesprochen, die

Christian

eigentlich gern AMD anbieten würden. Sie meinen, sie haben noch

Christian

nicht einmal irgendeine der Karten

Christian

jemals in echt gesehen.

Christian

Oh, okay. Ja, gut.

Jochen

Ja, ja, das ist natürlich auch so ein Problem.

Jochen

Die Verfügbarkeit. Das ist auch teilweise bei den

Jochen

Nvidia-Karten auch immer

Jochen

so ein Problemchen, die es sind, wirklich zu bekommen.

Jochen

Ist manchmal gar nicht so einfach.

Jochen

Ja.

Jochen

Ja, also genau diese

Jochen

Marktskementierungsgeschichte ist halt das, was man dann...

Jochen

Das ist halt im Grunde die Art, wie man

Jochen

jetzt ein Monopol hat, wie man das zu Geld macht.

Jochen

IBM

Jochen

hat das früher ja dann auch schon gemacht.

Jochen

Man macht dann halt Functional Pricing.

Jochen

Man macht den Preis halt so,

Jochen

dass es zu dem Markt, das man

Jochen

bedienen möchte, passt. Im Grunde können die ganzen Dinge

Jochen

mehr oder weniger das Gleiche.

Jochen

Die RTX-Karten,

Jochen

die können im Grunde

Jochen

fast das, also die Gamer-Karten können halt

Jochen

im Grunde das Gleiche, was halt

Jochen

auch die

Jochen

großen Server-Karten können.

Jochen

Sie sind halt in bestimmten Operationen ein bisschen

Jochen

künstlich langsamer gemacht, damit man sie halt

Jochen

jetzt nicht so verwenden kann.

Jochen

Übrigens, ich weiß auch nicht, ob das irgendwie

Jochen

überhaupt geht. Also in den USA geht es vielleicht,

Jochen

aber ob man jetzt in Deutschland jemandem,

Jochen

der irgendwas

Jochen

abgekauft hat, dann hinterher verbieten kann,

Jochen

damit irgendwas zu tun. Ich glaube, das geht überhaupt gar nicht.

Jochen

Also auch eine Lizenz oder sowas

Jochen

schwierig wahrscheinlich.

Jochen

Insofern,

Jochen

ja, also

Jochen

vielleicht kann man

Jochen

das einfach trotzdem machen. Auf der anderen Seite

Jochen

ist es natürlich auch so, es ist

Jochen

nicht so einfach.

Christian

Ja, es ist halt für eine Geschäftsbeziehung keine Grundlage.

Christian

Also, was machst du denn?

Christian

Damit machst du dich deinem Hersteller gegenüber nackig

Christian

und der sagt, so, jetzt hast du

Christian

da dein Produkt aufgebaut und wir sollen dich beliefern.

Christian

Wäre aber schade, wenn du nicht mehr

Jochen

beliefert wirst. Ja, ja, gut, klar, natürlich.

Jochen

Das ist halt die Frage,

Jochen

ob man das machen kann.

Jochen

Ja, das ist schon, das ist natürlich

Jochen

so ein Punkt. Ja, und

Jochen

ein weiterer Punkt ist halt, es ist schwer,

Jochen

die Dinger zu betreiben nach wie vor.

Jochen

Also die Leistung steigt zwar auch immer noch,

Jochen

aber auch die Leistungsaufnahme steigt halt irgendwie einfach an Strom.

Jochen

Und so bei den, glaube ich, bei den RTX 3090-Karten,

Jochen

die aktuellsten, da ist es so, da musst du halt dann,

Jochen

also Netzteile, die normalerweise,

Jochen

also selbst die größten Netzteile, das funktioniert nicht mehr.

Jochen

Du brauchst dann nochmal externen Strom da dran.

Jochen

Und wenn du dann mehrere in ein Gehäuse steckst,

Jochen

dann kriegst du sofort Hitzeprobleme.

Jochen

Man muss halt immer zusehen, dass man genug Platz lässt

Jochen

und dann irgendwie Leute,

Jochen

also da gibt es ganze Bastelzähne,

Jochen

die versuchen, das irgendwie richtig hinzukriegen

Jochen

und das alles irgendwie,

Jochen

es ist nicht so einfach.

Jochen

Aber tatsächlich, das lohnt sich auch noch

Jochen

alles. Also wenn man das selber macht, dann kann man

Jochen

mindestens im Faktor 10 irgendwie günstiger

Jochen

sein, als wenn man das jetzt irgendwie fertig

Jochen

gebaut kauft und hat halt

Jochen

die gleiche Performance. Und das ist

Jochen

schon noch signifikant.

Christian

Ja, der Unterschied im fertig gekauft

Christian

beziehungsweise wenn du sie halt aus irgendeinem Cloud

Christian

Ding rausziehst, der Unterschied dort ist halt

Christian

du kannst halt hinklicken, dann kostet sich das

Christian

zwar auch ein Arm und ein Bein, aber du kannst es halt auch jederzeit

Christian

wieder abschießen und du musst nicht

Christian

fünf Monate lang ein Projekt

Christian

machen, dir zu überlegen, was kaufe ich

Christian

jetzt und wie stecke ich es zusammen etc. Insofern finde

Christian

ich das schon legitim.

Christian

Aber ich merke halt, also der

Christian

man darf das

Christian

nicht nur schätzen, was Flexibilität

Christian

und das ist ja eine

Christian

betriebswirtschaftliche

Christian

Grund

Christian

Erkenntnis,

Christian

Flexibilität oder Optionen

Christian

kosten Geld.

Christian

Die kosten immer irgendwas und

Christian

wenn man Investitionskosten und alle

Christian

wollen immer alles auf möglichst

Christian

OPEX umlegen heutzutage und wenig

Christian

kapitalintensiv irgendwie vorfinanzieren,

Christian

aber es kann halt manchmal passieren, dass wenn

Christian

du deine Lebensdauer von 12 bis 14,

Christian

von 12, 36

Christian

oder 60 Monaten anguckst,

Christian

dann ist das Ding in Summe 3 bis 4, 5 mal

Christian

so teuer, als wenn du es dann irgendwann mal selber in die Hand

Christian

genommen hättest. Da muss man

Christian

sich dann fragen, ist das für eine Basislast

Christian

ist das halt eigentlich dann irgendwann nicht mehr gerechtfertigt.

Christian

Also ich meine,

Christian

die A100 fand ich sogar

Christian

relativ zahm in der Hinsicht noch. Also ich

Christian

gucke gerade nochmal in das

Christian

Specsheet rein und wenn du halt eine PCIe-Karte

Christian

von der A100 ziehst und

Christian

die hat, was hat

Christian

die an RAM drin, 40 Gig

Christian

und

Christian

die zieht halt 250 Watt.

Christian

Das ist halt schon noch überschaubar. Das heißt,

Christian

also da habe ich bei den Netzteilen, was

Christian

wir so typischerweise Zeug verbauen,

Christian

ich würde ja in so einer Hinsicht halt auch weniger

Christian

gucken, irgendwie eine Karre möglichst

Christian

voll zu machen, sondern mehr

Christian

zuzusehen, dass man halt irgendwie dann in seinem

Christian

Pool vier, fünf, sechs

Christian

Maschinen damit bestückt,

Christian

weil man es ja auch irgendwie verteilen möchte, wenn mal was kaputt

Christian

geht, etc. Da bin

Christian

ich halt auch noch gespannt, weil

Christian

dann halt

Christian

die Kundenseite

Christian

für, ich rechne Modelle

Christian

um dir irgendwie Vorschläge

Christian

oder Klassifizierung oder irgendwie so ein Kram

Christian

zu rechnen.

Christian

Das ist ja immer sehr kurz von den

Christian

Transaktionen her. Da willst du ja innerhalb von

Christian

einer halben Sekunde deine Antwort haben

Christian

und dann ist es vorbei.

Christian

Wenn du aber tatsächlich so ein Ding hast mit

Christian

ich rechne hier mein

Christian

Training,

Christian

da habe ich noch nicht rausgefunden, was dann typische

Christian

Trainingsdauern sind. Aber wenn das halt mal Stunden

Christian

dauert und

Christian

die ganze Virtualisierung das noch nicht hergibt,

Christian

so ein Zeug transparent halt dann zwischen A

Christian

und B zu verschieben,

Christian

dann muss ich halt mittendrin operativ eingreifen können

Christian

und zu sagen, die eine Grafik da drüben, die fliegt jetzt mal weg.

Jochen

Ja, also es kommt halt darauf an, was man damit macht.

Jochen

Also die Leute, die das halt,

Jochen

also die ganze Kegel-Community,

Jochen

die da so kompetitives Machine Learning machen,

Jochen

die versuchen sich alle möglichst viele Karten

Jochen

in einen Rechner zu basteln halt irgendwie.

Jochen

Und das ist natürlich irgendwie auch nicht so einfach,

Jochen

aber weil du damit halt die Trainingszeiten runterkriegst.

Jochen

wenn du jetzt viele Karten, also wenn du

Jochen

mehrere Karten in unterschiedlichen Rechnern hast, das hilft dir nicht so

Jochen

viel. Also insofern,

Jochen

aber

Jochen

das hängt

Christian

da, also das Ende, an dem ich

Christian

noch dran bin, ist ein Gefühl dafür zu kriegen,

Christian

dann welche Modellgrößen sich dann

Christian

in welcher Geschwindigkeit aufhäufen, weil

Christian

da wir über Mehrdimensionalität reden,

Christian

ist es natürlich immer so, irgendwann kommt der

Christian

Punkt, wo jede neue Dimension

Christian

das ganze Ding natürlich

Christian

dir schnell weglaufen lässt und wenn du also

Christian

keine Ahnung, dein Modell zu trainieren

Christian

schon 20 Gig frisst und du kriegst noch eine

Christian

Dimension rein, dann kann ich mir gut vorstellen, bist du plötzlich

Christian

bei 40 und damit bist du schon beim

Christian

oberen Ende, was eine so eine Karte halt kann.

Jochen

Ja, kommt halt drauf an, was man macht. Also wenn man

Jochen

halt irgendwie so

Jochen

so klassische

Jochen

Bild,

Jochen

was ImageNet mäßiges macht, halt

Jochen

Klassifikation von Bildern oder so und da Modelle trainiert,

Jochen

da braucht man nicht so viel

Jochen

Hauptspeicher, aber wenn man jetzt Transformer-Geschichten macht,

Jochen

also Natural Language

Jochen

Processing auf irrsinnig

Jochen

großen Mengen Text oder so, da

Jochen

braucht man eigentlich so viel Hauptspeicher, wie man kriegen kann

Jochen

und da sind halt auch 24 Gig oder so, das ist

Jochen

halt so das, glaube ich, maximale, was

Jochen

man im Computer-Summe-Bereich kriegt, halt schnell

Jochen

vorbei und dann, ja.

Jochen

Kann man so eine A auch in

Dominik

seinen Gaming-PC einbauen? Ich frage nur aus

Jochen

Interesse. Ja, ja, kann man, kann man machen.

Jochen

Aber, ja.

Christian

Die A hat, glaube ich, die hat keine Grafik-Outputs,

Christian

glaube ich. Ich weiß nicht, ob die

Christian

tatsächlich was hilft.

Christian

Also für die

Dominik

Enthusiasten dann in der Szene.

Jochen

Nee, nee, also das sind ja, viele von den Karten benutzt man ja auch so, benutzen Spieler ja auch, weiß ich jetzt nicht genau, welche davon, aber das sind, also die, gerade die günstigen Dinger, das sind halt alles eigentlich Karten für den Gamermarkt, ja.

Christian

Aber kann der, wie ist das auch mit diesen externen Grafikkarten dann, schließe ich die Displays an die externen Grafikkarten an oder schleifen die das Rechenergebnis wieder zurück und ich schicke das irgendwie über einen anderen Output raus?

Christian

Ich meine, man schließt die direkt an.

Christian

Ja, das ja auch, weil es gibt

Christian

auch Nvidia hat an der Stelle halt von ihren

Christian

von den Sachen, die haben

Christian

ja dann auch zum Beispiel noch Spezialkarten,

Christian

siehe Marktsegmentierung, die so für

Christian

AI-Unterstützung,

Christian

Maschinenunterstützung zum Beispiel für Architekten

Christian

ist und das sind dann Karten, die haben

Christian

halt entsprechend auch wieder ein Output dran

Christian

und dann gibt es halt noch

Christian

da gibt es ja noch dann wieder die Karten, die für

Christian

Desktop-Virtualisierung gemacht sind

Christian

da habe ich auch gerade einen Kollegen, der da

Christian

an dem Ende bei sich

Christian

rumarbeitet, also das ist nicht bei uns in der Firma,

Christian

sondern woanders, die halt

Christian

jetzt dank Corona

Christian

und Homeoffice haben sich anscheinend

Christian

viele Unternehmen entschieden, die Windows-Desktops ihrer User,

Christian

damit die Daten

Christian

nicht bei den Usern zu Hause liegen, alles über

Christian

so Remote-Desktop zu machen

Christian

und die musst du aber tatsächlich auch durch

Christian

eine Acceleration durchschicken.

Christian

Naja, weil auch

Christian

das Windows auf der VM

Christian

rechnet dir irgendwelche Transparenzen

Christian

aus und das willst du nicht mehr

Christian

in CPU machen.

Christian

Und da haben sie dann auch wieder

Christian

Spezialkarten für, die halt genau dafür

Christian

wiederum getrimmt sind.

Christian

Ja.

Christian

Naja, also

Jochen

gut, ich kenne es halt nur von den Leuten,

Jochen

die das halt, ja,

Jochen

die das jetzt nicht, also

Jochen

mit den ganzen Enthusiasten sozusagen, die

Jochen

nehmen alle die Gamer-Karten und basteln

Jochen

halt selber. Dann gut,

Jochen

wenn man jetzt im Datacenter machen will,

Jochen

dann, ja, nimmt man vielleicht

Jochen

halt dann einfach in Kauf, dass das Zeug halt zehnmal

Jochen

so teuer ist.

Jochen

Die sind dann auch in den Nantien-Bereichen noch ein bisschen schneller,

Jochen

aber da kommt es halt darauf an, was man damit machen möchte.

Jochen

Für Transformer braucht man halt viel Hauptspeicher,

Jochen

für viele andere kleinere

Jochen

Sachen reichen halt auch die

Jochen

mit weniger Hauptspeicher.

Jochen

Es ist sowieso so, dass man ja im Grunde braucht man

Jochen

diese ganze Power eigentlich nur dann, wenn man

Jochen

tatsächlich größere

Jochen

Trainingsdatenmengen halt

Jochen

hat und irgendwie Modelle

Jochen

quasi von Grund auf trainiert.

Jochen

Also wenn man jetzt irgendwie

Jochen

und das würde ich jetzt, ist halt

Jochen

die Frage, was das für ein Anwendungsfall ist, aber wenn man jetzt

Jochen

den Anwendungsfall hat, wo ich denke,

Jochen

der kommt in der Praxis sehr, sehr häufig vor,

Jochen

man hat im Grunde, man nimmt irgendwie fertig

Jochen

trainierte Modelle von

Jochen

irgendwo her und feintunt die jetzt

Jochen

auf das Problem, das man hat. Also man

Jochen

hat halt irgendwie, keine Ahnung, man möchte irgendein Produkt für

Jochen

was irgendwie, das kriegt halt Bilder und soll dann

Jochen

irgendwas zu den Bildern sagen,

Jochen

die irgendwie klassifizieren oder da

Jochen

halt irgendwie, weiß ich nicht, irgendwas drauf erkennen

Jochen

oder so, was jetzt nicht

Jochen

in den ImageNet-Klassen

Jochen

schon drin ist, dann würde man einfach

Jochen

ein ImageNet-Modell nehmen und dann halt das noch

Jochen

feintunen auf das Problem. Dafür braucht man nicht viel Trainingsdaten

Jochen

und dafür reicht irgendwie so eine

Jochen

billige, diskrete GPU, weiß ich nicht,

Jochen

irgendwie so eine NVIDIA

Jochen

1070 oder sowas, was ganz billiges, so ein paar

Jochen

hundert Euro, das reicht ja schon aus, um das

Jochen

irgendwie machen zu können. Wenn man jetzt

Jochen

tatsächlich das ImageNet-Dataset

Jochen

komplett neu trainieren möchte für

Jochen

irgendwas, also, oder ein

Jochen

Dataset der Größe,

Jochen

also, jenseits,

Jochen

also schon so ein paar hundert,

Jochen

jenseits von 100 Gigabyte irgendwie Bilder

Jochen

und dann halt von Grund auf das Trainieren,

Jochen

dann braucht man eigentlich alles,

Jochen

was man an Power kriegen kann,

Jochen

weil dann kann es sein,

Jochen

dass so ein Trainingslauf halt mal eine Woche läuft

Jochen

und ob der eine Woche läuft oder eine halbe Woche läuft,

Jochen

macht dann einen großen Unterschied,

Jochen

weil dann kann man halt unter Umständen

Jochen

doppelt so schnell iterieren.

Jochen

Und ja, also,

Jochen

tja,

Jochen

ich denke mal,

Jochen

die allermeisten Leute brauchen das gar nicht so wirklich,

Jochen

Boah, ehrlich gesagt.

Jochen

Aber vielleicht wissen sie das auch nicht.

Dominik

Wir hätten gerne alle so ein Machine Learning Ding dabei,

Dominik

wenn wir zum Beispiel irgendwelche Geräte

Dominik

bewegen oder sowas, die alles dann direkt selber

Dominik

wahrnehmen können.

Christian

Genau, aber das ist ja immer sozusagen das Ende von

Christian

die benutzen die Modelle ja nur

Christian

und schärfen sie vielleicht noch ein bisschen nach.

Christian

Aber die rechnen ja die Modelle nicht.

Christian

Nee, nicht von Grund auf, genau.

Christian

Wäre doch schön, wenn sich das Modell

Dominik

parallel anpasst. Aber naja,

Jochen

wir träumen hier ein bisschen. Doch, den kann man ja

Jochen

tun, aber die unteren Ebenen,

Jochen

also sozusagen du trainierst halt bei so einem

Jochen

Feintuning, was du da machst, ist halt, du

Jochen

passt halt nur

Jochen

die oberen, also

Jochen

sozusagen nur einen Teil der Layer an. Also du

Jochen

frierst halt die Gewichte für den Großteil

Jochen

deines Modells ein und passt halt nur

Jochen

noch Details

Jochen

davon an. Wenn jetzt irgendwas über ImageNet

Jochen

gelaufen ist,

Jochen

was halt jetzt

Jochen

also ein Modell, was jetzt super

Jochen

gelernt hat, wie man Haare erkennt

Jochen

oder Augen oder sowas,

Jochen

das macht eigentlich keinen großen Sinn, wenn

Jochen

du jetzt eine spezielle Art von Tier irgendwie

Jochen

erkennen willst auf Bildern,

Jochen

das nochmal alles von Grund auf neu zu

Jochen

machen, so zu trainieren, wie man Fälle

Jochen

erkennt oder so, weil das funktioniert schon super.

Jochen

Du willst halt nur, dass deine Klasse von Tier

Jochen

jetzt dann noch gut erkannt wird, aber dafür musst du eigentlich nur

Jochen

ein paar Layer irgendwie...

Dominik

Bei Live-Videodaten oder sowas, ist das vielleicht noch

Dominik

anders?

Jochen

Also es kommen halt auch... Ich meine, Video ist sowieso

Jochen

ein Ding, wo es noch nicht so viel gibt.

Jochen

Das wäre, wenn... Also

Jochen

klar, wenn du jetzt eine neue Geschichte machst, die

Jochen

sonst noch keiner gemacht hat, dann hast du natürlich genau... Oder wenn du

Jochen

auch neue Modelle ausprobieren willst, wenn du

Jochen

die Architektur änderst und sagst,

Jochen

mir ist jetzt eingefallen, wie man

Jochen

eine ganz neue, tolle Art von

Jochen

Maschinen-Learning-Modell hat, bauen kann,

Jochen

die alles viel besser macht und

Jochen

dann musst du halt von Grund auf neu trainieren, weil

Jochen

ja, du willst ja demonstrieren, dass es besser ist.

Jochen

Dann, ja, also wenn du

Jochen

Maschinen-Learning-Forschung machst und so, klar, dann

Jochen

brauchst du, aber auch da

Jochen

brauchst du unter Umständen keine so wahnsinnig

Jochen

wahnsinnig

Jochen

große Rechenleistung für.

Jochen

du brauchst die, ja, wenn du

Jochen

Forschung im Bereich von Transformer machen willst, dann brauchst

Jochen

du halt richtig viel Hauptspeicher und richtig

Jochen

fette Leistungen. Aber ich meine, wer macht

Jochen

denn sowas? Also so,

Jochen

also ich, die Leute, die Werbung,

Jochen

die Leute, die

Christian

die Werbung auf die Webseiten

Christian

drücken wollen.

Christian

Da fließt

Christian

doch das ganze Geld rein. Das Geld fließt da rein,

Christian

dass die Leute mehr auf die Werbung

Christian

klicken. Ja, ja,

Jochen

ich hab da, also die haben auch,

Jochen

Da habe ich auch mal an so einer Maschinen-Competition

Jochen

teilgenommen. Da gibt es die französische

Jochen

Firma Criteo, oder ich habe jetzt schon wieder

Jochen

den Namen vergessen.

Jochen

Die machen irgendwie sowas wie

Jochen

zum Beispiel Vorhersagen, wie wahrscheinlich ist es, dass

Jochen

ein User irgendwie auf

Jochen

Werbung klickt oder so.

Jochen

Und die Modelle, die da

Jochen

aber gewonnen haben, gut, das ist jetzt auch schon lange her, aber

Jochen

das war alles total einfach, das war alles

Jochen

linear, das war alles so

Jochen

Logistic Regression-mäßig.

Jochen

Ich bin mal gespannt.

Jochen

Ich habe mich ja jetzt mal

Christian

Also ich habe, um da ein bisschen tiefer auch in das Thema für mich einzusteigen, weil ich halt eigentlich immer gerne verstehen will, wie ist das handwerklich gemacht, habe ich mich in so einen Coursera-Kurs eingeschrieben und da kommen natürlich dann diese ganzen Standardteile, unter anderem dann halt auch irgendwelche Recommendation Systems und ich wollte ja ganz kurz irgendwie den Schreibtisch abräumen und alles in die Ecke pfeffern, als dann die Aussage war, dass ja irgendwie so die tollen positiven Beispiele, die sind, wie Netflix dir halt neue Sachen empfiehlt und Amazon.

Christian

Und ich denke mir so, ja, aber das sind doch die Beispiele für, das hilft gerade genau gar nicht.

Christian

Also ich meine, wofür brauche ich Machine Learning, damit mir meine Plattform sagt, du hast gerade einen Schraubenzieher gekauft.

Christian

Ich glaube, du willst einen Schraubenzieher kaufen.

Christian

Also ich habe es ja noch nie in Funktionierend gesehen, dass da irgendwie sinnvolles Zeug rauskam.

Christian

Mich würde wirklich interessieren, wo jemand nachgewiesen hat, dass das was bringt.

Christian

Also vielleicht bin ich auch einfach als Nerd

Christian

so ein bisschen komisch an der Stelle.

Dominik

Also ganz wichtig, Recommendation-Systeme,

Dominik

das geht gerade besonders gut.

Dominik

Einfach die Sachen, die am häufigsten gekauft werden,

Dominik

die viralisieren sich dann einfach weiter.

Dominik

Das scheint ja auch so funktionieren.

Dominik

Naja, also

Jochen

das ist jetzt aber auch schon da ganz lange her,

Jochen

aber zum Beispiel Netflix hat da ja tatsächlich

Jochen

mal einen Preis für ausgelobt.

Jochen

Für eben

Jochen

Leuten Videos empfehlen.

Jochen

Und

Jochen

das weiß gar nicht, wann das war.

Jochen

das muss, das ist jetzt auch schon über 10 Jahre her,

Jochen

oh mein Gott. Und da,

Jochen

sie haben da eine Million Dollar drauf

Jochen

ausgesetzt und das, was die Leute

Jochen

daraus da gemacht haben, war auch sehr

Jochen

interessant. Und

Jochen

die Verbesserung in dieser,

Jochen

in diesem Wettbewerb von, wie

Jochen

war das am Anfang oder was hat Netflix

Jochen

quasi, sie haben als Baseline auch angegeben,

Jochen

was sie momentan verwenden für ein Verfahren

Jochen

und wie gut das ist. Und

Jochen

das, was dann hinterher gewonnen hat,

Jochen

das war schon deutlich besser. Also

Jochen

das hat richtig was gebracht.

Jochen

Aber ehrlich gesagt, natürlich, es ist immer noch nicht

Jochen

wirklich gut.

Jochen

Ja, es war so mittelgut, ne?

Jochen

Ja.

Christian

Gerade Netflix muss sich halt dann an der Stelle

Christian

auch gefallen lassen, ihr Katalog

Christian

ist halt nicht so groß.

Christian

Also, wenn ich es halt vergleiche,

Christian

auch die

Christian

eingeschränkte Art, wie man es häufig browsen kann,

Christian

dass du gar nicht mehr so richtig

Christian

wirklich strukturiert durch die Kataloge durchkommst,

Christian

sondern immer nur noch nach irgendwelchen

Christian

vor

Christian

gefertigten Kategorien,

Christian

die so ein bisschen merkwürdig sind und dann

Christian

irgendwie so Unterkategorien haben, die

Christian

Netflix irgendwie gefallen,

Christian

dann hilft es mir ja nichts,

Christian

wenn er mir die 20 Filme,

Christian

die er für mich gut findet, mal in der

Christian

und mal in der und mal in der Reihenfolge anzeigt.

Christian

Das ist ja das, was momentan irgendwie

Christian

gefühlt für mich dabei rauskommt, ist

Christian

nach so einer Pandemie

Christian

nach einem Jahr, Netflix ist ja gerade was

Christian

Filme angeht immer ziemlich hintendran,

Christian

dann hast du eh schon alles

Christian

durchgeguckt. Und jetzt

Christian

empfehlen sie dir das, aber halt einmal in der

Christian

und in der und in der Reihenfolge.

Christian

Wie viel Machine Learning brauche ich

Christian

dafür? Ja, es ist

Jochen

auch die Frage, ob das eben tatsächlich ein Machine Learning

Jochen

Problem ist oder vielleicht doch eher ein User

Jochen

Interface Problem. Ich finde das auch total

Jochen

schrecklich. Ich habe auch immer das Gefühl,

Jochen

ich weiß nicht, auf was sie da optimieren, aber manchmal

Jochen

habe ich das Gefühl, sie optimieren darauf, dass man da möglichst

Jochen

lange drin rumsucht. Also es ist halt irgendwo

Jochen

ein Incentive falsch gesetzt oder irgendein

Jochen

KPI geht einfach

Jochen

in die falsche Richtung. Es ist halt

Christian

Ja, sie haben eine Variable oder irgendeine Dimension in ihrem Ding drin, wo aus Versehen drauf optimiert wird und es entspricht, und das ist ja sozusagen, als ich angefangen habe, mir so ein bisschen nochmal die mathematischen Grundlagen, bin ich da zwar relativ schnell ausgestiegen, aber so die groben Ideen davon anzugucken, ist mir schon immer mal, so ein bisschen sind mir die nicht vorhandenen Haare zu Berge gestanden,

Christian

weil damit gerade in Tutorials mit anderen Nonchalance über relativ schwer wichtige Entscheidungen über was nehme ich hier, wie mache ich Feature Extraction, wie mache ich das jenes, mal so schnell drüber gebügelt wird mit einer Erklärung, wo ich dann denke von, ja, nee, du verwechselst, also die machen ein Beispiel, worum ging es da?

Christian

Ich glaube, es ging um Feature Extraction und die Ähnlichkeit von Repräsentanten im System.

Christian

Und sie hatten als Beispiel irgendwie Stolz und Vorurteil und irgendwie mit welchen Dimensionen

Christian

und wie man jetzt eigentlich rausfindet, welche Charaktere, wenn sie über diverse Dimensionen abgebildet werden,

Christian

sind eigentlich näher aneinander dran, also sind sich ähnlicher zueinander und gehen darüber hinweg.

Christian

und ich sitze danach da und sage, aber das war doch jetzt gerade

Christian

eben keine Erklärung für etwas, was man

Christian

automatisieren kann.

Christian

Das ist ja, du hast ja

Christian

a posteriori

Christian

einen eigentlichen

Christian

der ohne Menschen laufenden Prozess sinnbildlich auf eine Art erklärt, wo ich sage, das kann der ja gerade nicht, das heißt, was du mir gerade erklärt hast, ist, der macht dann nachher irgendwas draus und du kannst nicht mal mehr nachvollziehen, ob das jetzt wirklich Hand und Fuß hat oder nicht und dann kommt man an so einen Punkt, wie wir es jetzt gerade hatten, von müssen wir jetzt darüber nachdenken, dass da ein Bias im System drin war, den keiner gesehen hat, weil das Ding sich selber irgendwo ein lokales Maximum gesucht hat in der Optimierung und eben aus Versehen darauf optimiert hat,

Christian

dass die User möglichst lange den Katalog

Christian

browsen und möglichst wenig gucken,

Christian

damit Netflix möglichst wenig

Christian

Lizenzgebühren bezahlen muss.

Christian

Ja, das ist auch ein

Christian

Kundenbedingungs-Effekt. Vielleicht ist das eine mögliche Erklärung.

Jochen

Und tatsächlich ist das

Jochen

ein Phänomen, dass... Ja, ich habe mich tatsächlich

Dominik

auf die Nutzungsdauer pro Kunde

Dominik

optimiert. Also wie lange gucken

Dominik

die Leute? Und wenn du jedes Mal

Dominik

10 Minuten extra guckst für eine Suche, gucken die Leute

Dominik

die längere Suche länger. Und UI-mäßig würde ich...

Christian

Ich würde dem auch zustimmen, dass es ein UI-Problem ist, im Sinne von

Christian

ich will manchmal einfach bloß den Button haben, zu sagen

Christian

blend doch mal aus diesen ganzen Vorschlägen

Christian

den ganzen Quatsch raus, den ich schon mal geguckt habe.

Christian

Ja, es gibt bestimmte

Christian

Filme, die gucke ich immer wieder. Da muss halt zum

Christian

35. Mal Big Lebowski laufen.

Christian

Aber das ist nicht

Christian

der Standardfall, wenn ich durch den Katalog suche.

Christian

Dann will ich einfach mal alles weghaben.

Christian

Und dass es solche Sachen nicht mehr gibt

Christian

und dass es nur noch über die Recommendation

Christian

läuft.

Dominik

Also ich hätte gerne am liebsten einen Film

Dominik

angezeigt und zwar genau den, den ich gerade in dem Moment

Dominik

gucken will.

Dominik

Ja, das geht ja nicht.

Christian

Das verkürzt ja die Komplexität menschlichen Daseins so massiv.

Dominik

Naja, aber vielleicht kann der Algorithmus ja sich mit mir irgendwie koppeln

Dominik

und irgendwie einen Faktor reinnehmen, dass er versteht, was ich gerade möchte.

Dominik

Ich glaube auch nicht, dass er aus meinem historischen Guckverhalten sowas schon wüsste.

Dominik

Ja, aber so durch vollständige Information.

Dominik

Das ist ja das andere Problem.

Christian

Du kannst ja nur, also wie ist es auch in den Tutorials, bei wem war es?

Christian

Ich glaube, das war bei meinem aktuellen Coursera-Kurs.

Christian

Da war der Vergleich von Machine Learning hat im Prinzip zum Ziel,

Christian

ungefähr das menschliche Lernverhalten, was wir im Alter von vier Jahren haben, nachzubilden.

Christian

Und das würde ich sagen, das kriegen wir ziemlich gut hin.

Christian

Ja.

Christian

Also viele Leute machen ja Witze drüber, dass Machine Learning sich so anstellt wie ein kleines Kind.

Christian

Ja, es gibt ja haufenweise Memes, die immer, ist das ein Brokkoli?

Christian

Nein, das ist kein, doch, das ist ein Brokkoli.

Christian

Was ist das? Es ist kein Brokkoli.

Christian

Doch, das ist ein Brokkoli.

Christian

Na gut, das ist jetzt ein Brokkoli.

Christian

Und gleichzeitig wird dem aber eine ominöse Fähigkeit zugeschrieben,

Christian

die weit über das hinausgeht.

Christian

Also wenn man auf der einen Seite ehrlich sagt und sagt,

Christian

okay, wir versuchen so ein biologisch inspiriertes Lernverhalten

Christian

von einem Vierjährigen und der kann ja was.

Christian

Also das Hirn und das ganze Pattern-Matching, was wir haben

Christian

und dieses, wie trainiere ich das halt an?

Christian

Das ist ja nicht so, dass das nichts kann.

Christian

Aber ich kann halt auch einen Vierjährigen nicht drauf trainieren, mich anzugucken und sich zu fragen, wie geht es mir eigentlich?

Christian

Oder was bräuchte, was würde mir jetzt als Erwachsener eigentlich gut tun?

Christian

Dafür ist ein Vierjähriger halt nicht gemacht.

Jochen

Ja, ich glaube auch eher, es ist halt unklar.

Jochen

Deswegen sind halt die Erwartungen teilweise vielleicht völlig daneben und zu optimistisch.

Jochen

Teilweise aber auch vielleicht zu pessimistisch, dass man glaubt, da geht gar nichts und manche Sachen, es gibt schon sehr beeindruckende Dinge, die man damit auch machen kann und Fortschritte, die da passiert sind. Insofern ist es halt einfach momentan nicht klar, was da überhaupt geht und was passiert. Das werden wir dann halt mit der Zeit irgendwann rausfinden.

Christian

Naja, ich glaube, ein wichtiger Aspekt davon ist ja die Frage, das kommt jetzt aus dem ganzen Thema Komplexität, nutze ich es, um menschliche Kognitionsprozesse zu ersetzen oder zu unterstützen? Also das ist ja Augmentation.

Christian

Ja, ich würde auch augmentieren haben wollen.

Dominik

Also es gibt jetzt auch so neue tolle Kontaktlinsen,

Dominik

mit denen man sowas augmentieren kann.

Dominik

Ja, sehr schön.

Dominik

Und durch diese Augmentierung,

Dominik

wenn die halt machine learning gestützt ist,

Dominik

das ist natürlich schon super cool,

Dominik

weil du halt einfach Zusatzinformationen bekommst,

Dominik

die du vielleicht sonst nicht hättest.

Christian

Und das ist auf der einen Seite viel leichter,

Christian

es ist ethisch auch viel einfacher zu kontrollieren,

Christian

aber natürlich hängt jedes Startup

Christian

und jeder immer erstmal hin,

Christian

nein, nein, das machen wir hier, wir ersetzen das, wir lösen das Problem komplett.

Christian

Und ich glaube, das ist halt eine massive Sackgasse.

Christian

Also ich habe so ein paar Beispiele, die man immer sieht, ist ja auch dieses Thema Krebszellen erkennen.

Christian

Das ist ja gedacht als Augmentierung.

Christian

Das ist ja nicht dafür gedacht, dass der Arzt das nicht mehr drauf guckt,

Christian

aber das ist halt gedacht, dass wenn du halt eine gewisse Menge schon vorverarbeitete Zellbilder hast,

Christian

auf denen bestimmte Parameter wie irgendwie die Klumpigkeit und der Farbton und die Schärfe von der Umrandung

Christian

und ich glaube es sind so 15, 16 Dimensionen, nach denen das dann auch bewertet und gelabelt wird.

Christian

Und dann kannst du mit einer relativ hohen Konfidenz von irgendwie so 90 Prozent da halt die Sachen erkennen.

Christian

Und wenn ein Arzt natürlich die Unterstützung hat zu sagen, so guck mal, hier hat ein Algorithmus jetzt dir Prozentwerte drangeschrieben und gerankt,

Christian

guck dir mal bitte zuerst die hier an mit besonderer Vorsicht und bei denen bin ich mir unsicher und das da glaube ich ist es übrigens nicht,

Christian

Dann kann der natürlich nochmal anders rangehen, weil er hat einen Sparringspartner, er guckt selber nochmal drauf, was sagt seine professionelle Intuition zu diesem Ding, wo er sagt, das hätte ich irgendwie anders bewertet, nochmal genauer hingucken, ah ja, okay.

Christian

Und dann ist das tatsächlich, das ist Augmentation, das heißt, das Hirn von dem Arzt, der das bewertet, ist weiterhin dran zu arbeiten, wird aber entlastet, irgendwie die komplette Bewertung zu machen, sondern kriegt halt schon mal so ein bisschen Sparring dazu, ist aber, er ist der, der am Steuer sitzt.

Christian

Und das ist aber was anderes, als wenn du halt

Christian

sagst, naja, das Ding läuft auf Vollautomatismus

Dominik

und wenn es tief geht, dann muss halt

Christian

jemand irgendwie ein Postmortem

Christian

machen. Im wahrsten Sinne des Wortes.

Christian

Ja.

Dominik

Ja, es hat halt viele Wirklichkeiten. Das Problem ist halt,

Dominik

dass du halt diese Granularität

Dominik

nur durch vollständigere Informationen

Dominik

auf dem höheren, ja,

Dominik

Treffergrad bekommst, ja.

Dominik

Das heißt, wenn du jetzt wirklich irgendwie so eine

Dominik

Genschere machen wolltest, die die entsprechenden Teile

Dominik

genau an der richtigen Stelle rauszieht,

Dominik

dann müsstest du wahrscheinlich relativ hohe Datenmengen

Dominik

und relativ hohe Experimente machen.

Dominik

Und das Problem beim Machine Learning ist ja irgendwie,

Dominik

dass er irgendwie selbstständig irgendwelche Zufallsexperimente macht

Dominik

in irgendwelchen Datenpatterns, die wir gar nicht so genau sehen können,

Dominik

weil er irgendwie da, weiß ich nicht, binär reinguckt oder so.

Dominik

Und dann halt irgendwelche Zufallswerte generiert,

Dominik

aus denen er dann irgendwie die wahrscheinlichste Wiederholung bemerkt.

Dominik

Das sind ja keine Zufallswerte.

Dominik

Das sind keine Zufallswerte.

Jochen

Nicht alle Machine Learning Modelle haben irgendwas mit Statistik zu tun.

Jochen

Das ist auch nicht so.

Jochen

Ja, aber so ein bisschen

Jochen

macht es erst mal schon, oder?

Jochen

Kommt auf das Modell an. Es gibt sehr unterschiedliche Modelle.

Jochen

Okay, dann müssen wir

Dominik

das vielleicht nochmal in einer anderen Folge genauer

Christian

auseinandersetzen. Ja, also der Klassiker, wenn du

Christian

über die neuronalen Netze halt nachdenkst,

Christian

mit einer Backpropagation,

Christian

dann ist es halt schon so, das sieht für uns aus,

Christian

ja, der kriegt dann immer,

Christian

der hat sein,

Christian

häufig haben sie ein random

Christian

initialisiertes Modell. Das gibt's schon.

Christian

Und dann ist es aber so,

Christian

dass das an den Gewichten rumdrehen ist halt

Christian

eine deterministische Funktion.

Christian

Das ist, du hast halt,

Christian

du hast ja dein gelabeltes Datenset

Christian

und sagst so, hier kommt mein Input.

Christian

Liebes neuronales Netz, rechne mal.

Christian

Und dann kommt

Christian

dann nachher raus, ich glaube

Christian

der Output ist folgender und dann vergleichst du das

Christian

mit dem gelabelten Output, der zu diesem Beispiel

Christian

gehört hat und daraus ergibt sich ein Fehler.

Christian

Und dann macht man da eine

Christian

Bewertungsfunktion für den Fehler und er

Christian

sagt, okay, damit

Christian

dieses Bild oder dieser Input

Christian

besser vom

Christian

neuronalen Netz verarbeitet würde, hätten die Gewichte

Christian

anders sein müssen. Und er rechnet

Christian

sozusagen von dem Fehler wieder zurück,

Christian

was man an jedem Gewicht ein bisschen drehen

Christian

müsste. Das wird gedämpft, also nicht jedes

Christian

ist es sozusagen so, wie man am Steuer sitzt.

Christian

Wenn du merkst, dein Auto fährt ein bisschen in die falsche Richtung,

Christian

schlägst du ja nicht volle Kanne

Christian

90 Grad in die andere Richtung ein, sondern

Christian

der sagt dann, okay, ich habe hier einen Fehler

Christian

und der Fehler darf jetzt um 1%

Christian

nachsteuern.

Christian

Das heißt, wenn du 100 solche

Christian

Bilder hast, dann haben die vielleicht

Christian

um 30%

Christian

nachgesteuert, aber

Christian

es ist halt nicht so, dass es

Christian

random ist, sondern er rechnet immer aus,

Christian

wie hätte das aussehen müssen für die perfekte

Christian

Lösung, da ich aber nicht nur dieses eine Bild

Christian

bewerten können will, das wäre dann ja overfitting,

Christian

muss ich mich in der

Christian

Anpassung ein bisschen dämpfen

Christian

und jedes Bild, was

Christian

einen kleinen Fehler hat, korrigiert

Christian

das Netz immer wieder ein kleines bisschen nach.

Christian

Aber das ist nicht random an der

Christian

Stelle, das müsste sogar eigentlich deterministisch

Christian

sein.

Christian

Und ich glaube, dass man sie random

Christian

initialisiert macht, glaube ich, ist eine Idee,

Christian

dass man halt versucht, irgendeinen Bias zu

Christian

vermeiden, dass man irgendwie an einem

Christian

Extremwert einsteigt, der das Modell halt

Christian

völlig verzerrt.

Christian

Der Frage nach dem Motto, alles steht auf Null und dann kommt

Christian

er halt nie vom Fleck. Das ist so ein bisschen, wenn du dir an

Christian

Newton denkst,

Christian

wenn du halt eine Newton'sche Approximation

Christian

probierst, da ist es auch

Christian

immer so, dass du schon mal so grob in irgendeine Richtung

Christian

werfen musst, weil wenn du

Christian

halt irgendwie völlig bei Null oder

Christian

einem blöden Punkt

Christian

anfängst, dann

Christian

kommst du halt nie zum Ziel.

Christian

Naja.

Christian

Oder es dauert sehr lange.

Christian

Ja.

Christian

Ja.

Christian

Ich überlege gerade.

Christian

Ja, also ich

Christian

weiß nicht genau.

Jochen

Ich würde es eher allgemeiner,

Jochen

also auch gerade was das Lernen

Jochen

angeht, ich würde sagen Machine Learning oder so was,

Jochen

Das versucht es halt, Software hinzubekommen,

Jochen

die halt mit Erfahrung besser wird.

Jochen

Und ich würde das tatsächlich so allgemein lassen.

Jochen

Was das genau tut, kann man gar nicht so sagen.

Jochen

Es gibt alles Mögliche.

Jochen

Also es gibt auch, also das ist nicht immer in einer bestimmten Art,

Jochen

sondern das ist halt so, es gibt die unterschiedlichsten Geschichten.

Christian

Ja, was man halt, ich glaube an einer Stelle,

Christian

ich habe da, der Trick ist ja, das ist ja ein technisches Werkzeug.

Christian

Das kann was, das kann bestimmte andere Sachen nicht.

Christian

Und da habe ich erstmal ja null Probleme mit.

Christian

Und ich glaube, wo wir in der Öffentlichkeit ein Problem haben, ist eben dieses Zuschreiben, es ist so komplex, dass man ja nur über Vereinfachungen, über Bilder darüber reden kann.

Christian

Und wenn die Leute aber dann mit diesen vereinfachten Bildern weiterdenken wollen, dann führt das halt ganz schnell zu logischen Schlussfolgerungsfallen, weil man halt auf Basis dieser Analogien nicht mehr dem technischen Kern gerecht wird.

Christian

Und ich meine, was ich spannend finde, ist erstmal, wenn man diese Unterteilung nochmal anguckt zwischen Supervised und Unsupervised, dann sind gerade die Supervised-Sachen natürlich immer interessant, weil ich kann mir die Extremwerte nochmal angucken und kann schauen, also ich kann es halt evaluieren und ich kann halt prüfen, wenn ich feststelle, ich habe hier komische Fehler drin, die ich so nicht beabsichtigt habe, woran liegt denn das?

Christian

muss ich noch eine Dimension dazunehmen,

Christian

fehlt mir bei einer Dimension irgendwas, ist in meinen

Christian

Eingangsdaten irgendwas komisch, weshalb

Christian

das Training in bestimmten Varianten

Christian

halt in die falsche Richtung läuft

Christian

und kann das dann halt auch immer

Christian

weitertreiben, weil das ist ja was, das kann

Christian

Machine Learning an der Stelle nicht,

Christian

Machine Learning kann ja nicht selber feststellen und

Christian

sagen, du brauchst eigentlich ganz andere

Christian

Eingangsdaten für dein Problem.

Christian

Das kann es dir ja nicht liefern.

Christian

Doch, doch, doch.

Jochen

Also, naja, man kann sich schon

Jochen

angucken, zum Beispiel man kann sich die Kurve angucken

Jochen

mit zunehmenden

Jochen

also

Jochen

man trägt dann halt

Jochen

den Trainingserror

Jochen

gegen den Testerror auf

Jochen

zum Beispiel, dann kann man sich halt

Jochen

je nachdem wie das dann aussieht

Jochen

also wenn die beiden Kurven sehr weit auseinander liegen

Jochen

also sozusagen wenn man

Jochen

wenn der Fehler auf den

Jochen

Trainingsdaten gering wird

Jochen

aber auf den Testdaten nicht

Jochen

und die beiden Kurven sehr weit auseinander liegen

Jochen

dann weiß man, man hat zu wenig Trainingsdaten

Jochen

oder die falschen

Jochen

oder die sind halt nicht gut verteilt.

Jochen

Wenn das Ding

Jochen

sich über, wenn die Kurven

Jochen

anfangen sich zu überschneiden oder so, weiß man halt, okay,

Jochen

ja, man

Jochen

overfittet gerade zum Beispiel.

Christian

Aber das sind ja Sachen, die werden

Christian

zum Beispiel, da kommen wir in den Bereich, das ist

Christian

Augmented und das ist ein Prozess, den wir als Menschen

Christian

halt begleiten. Das ist halt

Christian

was, also dann diese Entscheidung zu treffen,

Christian

jetzt ist es so weit, dass ich das halt anders machen

Christian

muss, das kann das Modell nicht

Christian

für dich und das Modell kann dir auch nicht sagen, was

Christian

das andere ist, was es braucht.

Christian

Ja.

Christian

Gehen wir nochmal auf die

Christian

Krebszellen. Die haben dann halt da irgendwie

Christian

ihre Dimensionen, wonach sie das Zeug

Christian

bewerten. Und das sind sozusagen die

Christian

Erkenntnisse von, okay, wir nehmen

Christian

mal die Daten, die die Ärzte

Christian

uns gesagt haben, danach bewerten

Christian

sie, ob so ein Ding

Christian

gut ist oder nicht. Da ist ja der Vorteil,

Christian

dass in der Medizin, da ja auch die Prozesse

Christian

gut standardisiert werden, dass man halt

Christian

eben das auch explizieren kann, dass man nicht irgendwie

Christian

fünf Leute fragen müssen, die kratzen sich am Kopf

Christian

und ja, wie mache ich das eigentlich so? Und das ist ja gut

Christian

standardisiert. Und aber ob du das, wenn

Christian

du es im mathematischen Modell dann tatsächlich hast,

Christian

über so ein, dann kannst

Christian

du, ich gehe mit, man kann halt

Christian

über die Evaluation,

Christian

über die Qualitätskriterien

Christian

nachher rausfinden,

Christian

Mist, hier stimmt was nicht.

Christian

Aber zu einer Entscheidung zu kommen,

Christian

zu sagen, du übrigens, wir müssen

Christian

uns noch angucken, ob das Ding Fransen

Christian

hat oder keine Fransen.

Christian

Das kann das, das ist eine semantische

Christian

Ebene, die kann das Ding dir nicht sagen.

Christian

Für das Bell

Jochen

sind das ja nur, also ich weiß

Jochen

es nicht, also

Christian

Was macht das? Du hast ja

Christian

entscheidend irgendwas da gerade in der Intention, was dir sagt,

Christian

da versteckt sich was Interessantes.

Christian

Finde ich jetzt interessant.

Christian

Ja, also

Jochen

ich weiß es nicht, also

Jochen

ich

Jochen

auch, also

Jochen

dass da

Jochen

das Problem

Jochen

würde ich auch daran, also ich meine, gerade

Jochen

in der Medizin, naja gut,

Jochen

ist auch wieder so ein weites Feld dann direkt.

Jochen

Es ist ja so,

Jochen

dass wir momentan ja eigentlich sehr,

Jochen

sehr grobe

Jochen

Geschichten machen. Also wenn man ja

Jochen

so eine Diagnose und dann

Jochen

was macht man jetzt irgendwie, wenn man die

Jochen

Diagnose hat? Das ist halt

Jochen

sehr, sehr, auch was gibt man für

Jochen

Medikamente? Das ist ja alles super grob.

Jochen

Das ist ja überhaupt nicht angepasst auf

Jochen

jemanden individuell oder so.

Jochen

Nee, nee, das ist also

Jochen

Ja, und wenn jetzt, also man könnte jetzt das aber so angenommen, man nimmt jetzt, weiß ich nicht, irgendwie Daten, was auch immer, alle möglichen Daten, die man jetzt über irgendwie einen Patienten hat und ein Modell sagt einem jetzt, okay, ich nehme jetzt nicht irgendwie zwei Tabletten von der Sorte jeden Tag oder so, morgens oder abends, keine Ahnung, sondern irgendwie wir mixen jetzt folgende Wirkstoffe in der Kombination zusammen und das muss zu den Zeiten.

Jochen

Das könnte ein einzelner Arzt ja niemals machen, im Grunde, in der Granularität.

Christian

Ja, nee, aber ich bin ja gerade an einem, ich bin, nochmal ganz kurz zu meinem, da würde ich gerne anknüpfen, aber wo ich halt davor stehe, ist, wenn wir Feature Extraction halt haben,

Christian

Und ja, durchaus teilweise eine Qualität von Features, die eine sehr hohe kognitive Leistung erstmal haben.

Christian

Deswegen geht mir dieses Krebszellenerkennungsding nicht aus dem Weg.

Christian

Es geht ja nicht darum, dass dieses, es ist ja kein Image-Processing, was da stattfindet.

Christian

Sondern, also ich habe ein ganz konkretes Modell gerade, was da steht.

Christian

Und die machen halt kein Image-Processing, sondern die haben Feature-extrahierte Sachen, wo Menschen halt auf so einen Fleck drauf gucken und sagen, der hat folgende Eigenschaften.

Christian

Und das sind sehr, sehr kognitiv hochwertige Eigenschaften.

Christian

Also hat es eine regelmäßige Kante?

Christian

Ist es irgendwie besonders scharf abgegrenzt?

Christian

Hat es irgendwie kleine Ausstülpungen?

Christian

Hat es dies, hat es das, hat es jenes?

Christian

Und das sind die Features, die dann in das Modell reingehen, wo er sagt, okay, bei dem, mit diesen Eigenschaften würde ich sagen, das ist eine Krebszelle, bei dem anderen, das ist es nicht, bei dem nächsten, das ist es und darauf kannst du halt ein Modell trainieren.

Christian

Wenn du sowas trainierst, so ein Modell, und du findest mit den Qualitätskriterien, die du zwischen deinen Tests und deinen Trainingsdaten heraus, dass das gerade nicht passt, ja, dann kannst du das als Signal nehmen, dass du als Mensch hergehen musst und sagen musst, das Modell reicht so nicht, das kann ich so nicht in Betrieb nehmen.

Christian

Aber das Modell selber kann dir nicht sagen,

Christian

ja, überleg dir mal noch mal, ob die Farbe eine Rolle spielt.

Christian

Das kann das Modell halt nicht.

Jochen

Da würde ich sagen, also das kommt halt darauf an,

Jochen

was man für ein Modell nimmt.

Jochen

Aber wenn man jetzt die Bilder nimmt,

Jochen

ohne die ganzen menschlich extrahierten Features,

Jochen

würde ich sagen, also die Deep Learning-Modelle,

Jochen

die machen genau das.

Jochen

Die extrahieren die ganzen Features selber.

Jochen

Ja, natürlich.

Christian

Aber was sie nicht können, sie können sich nicht ausmalen, welche anderen Daten ihnen helfen würden, noch akkurater zu werden. Also Beispiel, du gibst denen Bilder, das Ding kann dir ja nicht sagen, ey, und wenn du mir ein UV-Bild davon machst, kann ich es besser.

Christian

Ja, nee, gut.

Christian

Das meine ich gerade. Sie können nicht aus ihrem System raus. Sie sind ja selbstreferenziell, sie sind in sich beschränkt. Und das ist das, wo ich meine. Das ist ja das, was ein Vierjähriger kann.

Christian

Du kannst den Vierjährigen trainieren

Christian

und der kann das,

Christian

aber der kann halt häufig nicht die nächste Leistung,

Christian

also der kann noch nicht die nächste Leistung bringen

Christian

und sagen, ja, da draußen in der Welt

Christian

ist ja noch mehr, von dem ich noch nicht weiß,

Christian

was hier vielleicht jetzt passen würde.

Christian

Deswegen, also ja, das kann mit den Daten arbeiten,

Christian

das kann auf den Daten ganz coole Sachen machen

Christian

und auch diese automatischen Feature-Experiment,

Christian

die können alles.

Christian

Aber dann zu sagen,

Christian

du hast mir jetzt Fotos gezeigt von den Zellen,

Christian

ich bräuchte aber mal noch,

Christian

was der die letzte Woche gegessen hat.

Christian

Ja, die Auflösung beim

Christian

Vieljährigen ist auch einfach viel höher.

Christian

Viel mehr Informationen

Christian

drin.

Christian

Viel, viel mehr.

Christian

Keine Ahnung, was Menschen machen,

Christian

weiß ich jetzt nicht.

Christian

Aber

Jochen

dass man andere Informationen mit reinnimmt,

Jochen

das geht auch.

Christian

Was ich aber sage ist, das Modell kann

Christian

dir nicht sagen, gib mir diese Art

Christian

von anderen Informationen.

Christian

Nö, aber man kann dem alle geben.

Christian

Genau, und ich glaube,

Christian

Aber das ist etwas, ich versuche noch irgendwie zu dem Punkt zu kommen, wo ich da stehe,

Christian

ist, das ist was, wo Machine Learning einfach falsch wahrgenommen wird.

Christian

Das löst irgendwie diese und jene und so Probleme und alles.

Christian

Aber Machine Learning kann nie die eigenen Grenzen erkennen und überschreiten.

Christian

Das geht halt nicht.

Christian

Und das ist für mich dieser Punkt, weswegen Augmentation so wichtig ist,

Christian

dass du dort jemanden hast,

Christian

dass du dort jemanden hast, der

Christian

als körperliche, biologische

Christian

Entität in der Welt ist und in der Lage

Christian

ist, seine eigenen Grenzen

Christian

infrage zu stellen und zu überschreiten.

Christian

Bei der

Christian

Grenzerkennung gehe ich mit.

Christian

Also, dass ein Modell Safety Belts haben kann

Christian

und sagen kann, du, hier komme ich an meine Grenze.

Christian

Ja, aber es kann nichts selber sagen,

Christian

ich mache jetzt ein Forschungsprojekt und finde raus.

Christian

Aber man könnte ja

Dominik

vielleicht mehrere Netze miteinander kombinieren.

Dominik

ja, dass du einen Cluster von Netzen hast,

Dominik

wo ein Netz auf sowas achtet.

Christian

Das ist der Mensch. Das ist nicht das

Christian

Machine Learning, was das macht.

Jochen

Ja, also

Jochen

ja, keine Ahnung.

Jochen

Wir sind halt noch nicht so weit.

Jochen

Wenn wir Katzen von Hunden unterscheiden können,

Jochen

sind wir total glücklich. Also insofern,

Jochen

ja, das mal schauen.

Jochen

Keine Ahnung.

Dominik

Ich finde, das mit den Katzen von Hunden unterscheiden wäre ein super Schlusswort

Dominik

für diese Machine Learning-Folge.

Dominik

Ja.

Dominik

Hattet ihr noch einen wichtigen Punkt?

Dominik

Ich wollte euch nicht ganz so abwägen.

Jochen

Ja, tatsächlich

Jochen

nee.

Jochen

Sonst machen wir einfach das nächste Mal.

Jochen

Stimmt, wir sind auch schon eine ganze Zeit dran.

Jochen

Ja, und es ist spät.

Christian

Was ich noch spannend fände, wenn vielleicht auch Hörer

Christian

tatsächlich an der Stelle

Christian

wollen, dass wir dem Thema treu bleiben

Christian

und damit nochmal, weil ich glaube, das können wir nochmal

Christian

ein bisschen, wenn ich da tiefer eingegangen bin,

Christian

nochmal ein bisschen praktischer und ein bisschen Python-orientierter

Christian

machen, weil wonach ich tatsächlich momentan

Christian

so ein bisschen Ausschau halte, ist so ein bisschen Spielprojekte.

Christian

nach denen ich mir nämlich mal genau

Christian

das ausprobieren will, so in welchen Anwendungsfällen

Christian

von qualitativer Bewertung

Christian

und für diese ganzen unterschiedlichen Teildisziplinen

Christian

von Machine Learning,

Christian

auf welche Arten von Daten kann man das eigentlich mal

Christian

loslassen, weil da merke

Christian

ich so, jetzt langsam muss ich da mal einfach

Christian

irgendwas selber bauen mit

Christian

den eigenen Daten, die hier so rumfliegen.

Christian

Vielleicht gibt es ja auch noch ein paar Leute, die

Christian

gerade ein Haus gebaut haben und

Christian

ein bisschen Hausautomatisierung machen.

Christian

Wir kommen so nicht. Oh ja, das ist auch noch

Christian

ein großes Thema. Aber dann, genau, schreibt

Dominik

das doch an hallo at peißenpodcast.de

Dominik

und sagt uns Bescheid, wie ihr das fandet.

Dominik

Ja.

Dominik

Ja, dann einen wunderschönen

Dominik

guten Abend. Bleibt uns gewogen.

Dominik

Schön, dass Christian wieder dabei war.

Dominik

Gerne, jederzeit.

Dominik

Ja, dann

Dominik

hören wir uns nächstes Mal. Alles klar.

Dominik

Tschüss. Tschüss. Ciao.