 Herzlich willkommen zu ersten von zwei Vorlesungen zum Kapitel Data Science. Data Science ist eins der Herzstücke dieser Veranstaltung und ich freue mich, dass Sie diese mit mir wahrnehmen werden. Sie sehen, wir haben bereits einen sehr langen und auch anstrengenden Weg hinter uns durch verschiedenste Bereiche der Mathematik, der Finanzmärkte, Signaltheorie, Fraktale und wir widmen uns nun den sogenannten Datenwissenschaften Data Science der Kunst aus Datenerkennisse zu gewinnen. Und genau darum geht es in diesen zwei Vorlesungsteilen, die ich Ihnen hier präsentieren werde. Wir werden uns als erstes mal mit einer Einführung, einer Abgrenzung und einer Erläuterung der Begriffe Data Science und allen damit verbundenen technischen Termini, die so in der freien Wildbahn gängig sind befassen. Ich werde Ihnen den sogenannten Basswort so vorstellen. Es ist ein Sammelsurium an gängigen Begriffen, die durch Medien, Beraterchen und anderweitige Personen, die jetzt nicht so tief in den technischen Details drin sind, sehr gerne inflationär verwendet werden. Und zwar in einer Art und Weise, dass ich sage einmal für einen normalen Menschen nicht mehr sichtlich ist, was denn eigentlich genau dahinter steht. Das werden wir ein bisschen aufdröseln. Anschließend werde ich mit Ihnen das Data Science 101 besprechen. Was braucht denn ein Data Scientist überhaupt an Fähigkeiten? Was ist ein Data Scientist überhaupt? Was tut er? Was braucht er? Und was für technische Skills sind er nötig, um Data Science überhaupt betreiben zu können? Was uns dann in den Data Science Prozess führt? Wie führe ich denn ein professionell gemanagtes Data Science Projekt durch? Was ist der Arbeitsprozess, der hinter einem Data Science Anliegen steht? Und was für Jobarten gibt es denn? Was für Anstellungstitel gibt es denn? Was für Data Jobs nenne ich das jetzt mal, kann man denn in diesem Feld belegen? Und wir werden uns dem ganzen Top-Down widmen. Das heißt, wir fangen ganz von oben an und arbeiten uns dann Stück für Stück in die Details des Data Science hinein. Und wir werden anschließend tief einsteigen in die Machine Learning Methoden. Was ist denn Machine Learning? Was gibt es denn da? Und werden uns in einem separaten Kapitel mit neuronalen Netzwerken und dem Deep Learning befassen, bevor wir die Veranstaltung abschließen mit einem Ausblick und weiteren technologischen Möglichkeiten, die unsere Welt zu bieten hat. Wie bereits erwähnt, geht es in diesem Kapitel um das Feld der Datenwissenschaften, dem Data Science und um dessen Anwendungen und Methoden. Dieser Kurs setzt kein Vorwissen voraus und daher liegt der Fokus hier auf eine allgemeineren Einführung und wir werden keine Spezialmodelle erläutern oder keine langwierigen mathematischen Heerleitungen oder Ableitungen vornehmen. Das ist Teil von spezialisierten Data Science-Kursen mit mathematischem Fokus. Das ist hier nicht das Ziel. Das Ziel dieser Veranstaltung ist ein Top-Down-Ansatz. Das heißt, wir geben einen Überblick. Was ist denn Data Science überhaupt? Was gibt es denn da? Um dann in die Methoden einzusteigen, die eben standardmäßig benötigt werden. Das heißt, Sie werden danach wissen, wofür brauche ich diese Methode und wie kann ich die in einem einfachen Beispiel anwenden. Wenn Sie natürlich Spezialmodelle benötigen, müssen Sie natürlich entsprechende Literatur finden und sich dahin gegen selbst einarbeiten. Ziel dieser Veranstaltung ist ein Top-Down-Überblick und Sie in die Lage zu versetzen einfache Maschinen-Learning, neuronale Netze und Deep-Learning-Applikationen selbst in Paaten zu implementieren und zu verstehen, welche technische Möglichkeit und welche Methode denn wohin gehört. Daher ist der Ablauf wie folgt. Wir beginnen mit einer Erläuterung der Buswords und der Berufsbilder in den Datenwissenschaften. Wir erläutern den Standardprozess und geben einen Überblick über die Unternehmensarchitektur. Wir machen einen Einstieg in die Themenfelder und stellen relevante Methoden vor und ich gebe einen erweiterten Ausblick in die Datenwelt. Was heißt, wir werden einige Exkurse in Themenfelder machen, die nicht Hauptteil dieser Vorlesungen sind, die aber halt doch irgendwie dazugehören. Das werden wir am Ende vornehmen, dass Sie ein komplettes Bild bekommen, was Data Science ist, was AI ist und was dieses Ganze, ich sage es mal, etwas provokant neu technische Feld zu bieten hat. Der Grund, warum wir die Unternehmensarchitektur hier mit einbinden, kann ich direkt vorwegnehmen. Ein Data Scientist ist nicht nur jemand, der Couch schreiben kann und Daten manipuliert, sondern der unternehmensrelevante Fragestellungen mit Daten unterfüttert. Das bedeutet, ich werde Ihnen einen Einblick geben, wie man denn ein Unternehmen sich im Kopf denn so vorstellen kann, weil das wird Ihnen die Arbeit als Data Scientist, sofern Sie diese Karriere anstreben, bei weitem erleichtern. Was liefert dieses Kapitel? Ein Überblick über das Themenfeld, das habe ich, denke ich, schon das Öfteren erwähnt. Ein Verständnis der relevanten Begriffe und Anwendungen und die Möglichkeit anschließend weiterführende Themenkomplexe einordnen und sich aneignen zu können. Das ist der Fokus der gesamten Veranstaltung, dass sie relevante Begriffe verstehen können, dass sie die einordnen können und da, wo sie es wirklich brauchen in der Lage sind, sich weiterführende, tiefere komplexere Anwendungen aneignen zu können. Was uns dazu führt, was diese Vorlesung und dieses Kapitel einfach nicht liefern kann, das ist eine tiefgreifende mathematische Einführung sämtlicher Methoden und Anwendungen sowie Spezialmethoden. In der Regel ist es so, dass man Data Science inzwischen als kompletten Studiengang studieren kann. Daher ist es natürlich nicht möglich, in einer Top-Down-Veranstaltung sämtliche Nuancen dieses Feldes aufzuzeigen. Und daher bitte ich Sie, das mir auch nachzusehen, dass ich an manchen Stellen den Inhalt einfach kürze oder eben auf weiterführende Literatur verweise. Wenn Sie natürlich Fragen haben oder Literatur benötigen, geben Sie mir eine Moodle-E-Mail oder sollten Sie das sich auf YouTube ansehen, schreiben Sie mir einen Kommentar. Ich werde soweit es mir möglich ist, Sie mit Wissen versorgen. Wir beginnen hier direkt einmal mit dem Basswurzo. Der Basswurzo soll zunächst einmal einige gängige Begriffe und Schlagwörter, welche in der freien Wildbahn regelmäßig falsch und inflationär angewandt werden, aufgreifen und erläutern. Ziel ist es hier, direkt mit dem Top-Down-Ansatz zu beginnen und Sie erst einmal in die Lage zu versetzen, sich in realen Gesprächen mit echten Experten sich nicht zu blamieren. Es gibt sehr viele fähige Leute da draußen, es gibt sehr viele Experten, promovierte oder habilitierte Experten, die wissen von was sie sprechen und tun sie sich selbst den Gefallen, nicht negativ aufzufallen und sich zumindest mit den grundlegenden Begriffen auseinandergesetzt zu haben. Zudem sollten sie dann auch in der Lage sein, echte Experten, die sehr viel nur auch Haut tragen, die sich das über Jahre hinweg angeeignet haben von selbsternannten Experten zu unterscheiden, die ich will mich jetzt nicht zu weit aus dem Fenster legen, aber die irgendwelche Beraterchen sind, die mal 10 Minuten YouTube geschaut haben und jetzt meinen hier mit diesen Begriffen, um sich zu schmeißen und sich ja davon verstehen, das Geld aus der Tasche zu ziehen, solche Leute sollten sie schlicht und einfach vermeiden, davon gibt es in der Realwirtschaft viel zu viel. Ich möchte sie mit dieser Veranstaltung in eine Lage versetzen, zumindest rudimentär zu verstehen, worum es hierbei geht und sich mit denjenigen, die tatsächlich es nur Haut tragen und die unsere Welt und die Wirtschaft weiterbringen können, sich austauschen zu können und lernfähig zu sein und nicht auf selbsternannte YouTube-Experten einzulassen. Das ist mir persönlich ein Herzensanliegen, weil mir das in meiner Berufspraxis leider sehr oft schon untergekommen ist und das ist für alle beteiligten Parteien nicht sehr angenehm. Was machen wir noch? Zudem dienen die Begriffe gleichzeitig der Sortierung der Themen, also diese Basswörter, die ich Ihnen vorstellen werde, sind ja eigentlich auch richtige Fachbegriffe. Sie werden meistens einfach nur falsch verwendet und wir werden diese Begriffe nehmen und einfach mal richtig sortieren, in die richtige Reihenfolge bringen, so dass Sie damit letzten Endes auch etwas anfangen können. Ich beginne einfach auch nochmal diese Veranstaltung mit dem berühmten Zitat von Deming without data, you're just another person with an opinion. Ohne Daten bist du nur ein anderer. Suchen Sie sich ein beliebiges Schimpfwort aus mit einer Meinung. Das bedeutet, wenn Sie eine qualifizierte Meinung abgeben möchten, dann bitte Daten gestützt und empirisch belegt oder einfach auch gar nicht. Wir leben in einer Zeit von Social Media, in der es vielen Leuten gut tun würde, weniger Meinung und mehr Bücher lesen und sich ein bisschen mehr mit der empirischen Realität auseinanderzusetzen und darauf baut auch diese ganze Veranstaltung auf und das ist auch eine Herzensangelegenheit von mir. Ohne Daten sind Sie einfach nur jemanden mit einer Meinung und mehr halt auch nicht. Wir beginnen hier mal direkt mit unserem Buzzword Zoo. Ich habe Ihnen hier mal einige Begriffe zusammengestellt, welche wir entweder im Laufe dieser Veranstaltung kennenlernen werden oder zu denen ich hier noch ein paar Takte sagen werde und ich fange mal direkt an mit Digital Disruption und mit Disruptive Technology. Das ist eigentlich ein Lehrthema aus Harvard, in dem es um zerstörerische Innovationen geht, das heißt um Innovationen, die quasi die Welt nachhaltig verändern werden. Das beste Beispiel hierzu ist, denke ich, nehmen Sie Ihr Smartphone, schauen Sie es sich an und sagen Sie mir, dass die Erfindung eines Smartphones von Touchscreens diese ganze Branche auf den Kopf gekehrt hat. Ich denke, die wenigsten von Ihnen haben noch ein altes Klapp-Handy benutzen. Das ist hier ein Beispiel dafür. Das nächste Beispiel, das kennen Sie, denke ich, alle ist Amazon. Amazon ist ein Marktplatz mit fast keinen eigenen Gütern, so es gab es vorher auch nicht. Onlinehandel, das ist Disruptive. Was nicht Disruptive ist, wenn ein Berater in ein Unternehmen kommt und einige Excel-Tabellen automatisiert, das ist keine Disruption. Und ich muss Ihnen hier auch ganz ehrlich sagen, dass ich diese Begriffe eigentlich schon gar nicht mehr hören möchte, weil jeder Hins- und Kunst, der 3 Minuten gegoogelt hat und mir irgendetwas verkaufen möchte, sagt, das ist Disruptive, nein, ist es nicht. Ich möchte Sie bitten, diese Begriffe sehr, sehr, sehr sparsam zu verwenden, es sei denn Sie haben wirklich eine Technologie, die Sie hoffentlich vorher patentieren haben lassen, die die Märkte verändern werden und die einen Impact auf unsere Wirtschaft und auf unsere Welt haben, der spürbar ist. Nur, wenn Sie ein paar Excel-Tabellen automatisieren oder auf einen Server parken, ist das keine Disruption. Es tut mir sehr leid, dass ich hier ein bisschen energisch bei der Sache bin. Sie merken hier verschwimmen ein bisschen meine beruflichen, um meine akademischen Welten miteinander, aber ich möchte Sie in die Lage versetzen, hier bitte ein bisschen Ordnung, den Begriffen zu halten. Die ganzen Datenbank-Technologie brauchen wir eigentlich nicht ansprechen, das ist einfach nur eine Ansammlung relationaler Daten. Wir haben Big Data, dazu haben wir noch einen eigenen Exkurs, bestehende aus unstrukturierten, unstrukturierten Datenmassen, sozusagen die mit normalen Mechaniken gar nicht mehr ausgewertet werden können. Wir haben neuronale Netze, Deep Learning, Data Science, Machine Learning, Artificial Intelligence, was ich hier noch ein bisschen erläutern möchte, ist Augmented Reality. Das ist zum Beispiel, wenn Sie sich jetzt eine Google-Brille aufsetzen und der Ihnen zu irgendwelchen Restaurants, die Sie sehen, weitere Informationen Ihrem Display anzeigt. Oder Virtual Reality ist, wenn Sie eine VR-Brille aufhaben, wie Sie Facebook zum Beispiel hat, in der Sie sich mit Ihrem Körperbewegungen frei in einer virtuellen Welt bewegen können. Und ich denke, die anderen Sachen, die hier stehen, das ist dasselbe wie bei Disruptive Technology, nur weil Sie eine Excel-Tabelle automatisieren, ist das noch keine digitale Transformation. Und das nächste Wort, was wirklich tot benutzt wurde in meinen Augen ist Digitalisierung. Digitalisierung in meinen Augen ist für viele Unternehmen erst einmal verbunden mit Rationalisierung und Automatisierung und Prozessklettungen. Und letzten Endes ist auch verbunden mit einer Umschichtung im Personal. Das klingt allerdings weniger sexy wie wenn ein Unternehmen natürlich sagt, wir sind hier voll digitalisiert. Dass man dazu natürlich auch Veränderungen in ein Unternehmen bringen muss, das möchten viele natürlich immer nicht hören. Ich denke, Sie haben hier mal einen Überblick von einigen Begriffen bekommen. Die, die ich jetzt relativ schnell abgearbeitet habe, werden uns jetzt im folgenden Spiel tiefer beschäftigen, weshalb ich mich hier gar nicht so lange aufhalten möchte. Ich habe jetzt natürlich sehr viel Dampf abgelassen. Ich habe Ihnen erzählt, was was nicht ist. Aber wir haben uns noch nicht damit befasst, was ist denn jetzt eigentlich Data Science? Was ist ein Data Scientist? Deswegen beginnen wir jetzt einfach mal mit dem Data Science 101. Was ist denn Data Science? Was ist hiermit gemeint? Und wir beginnen hier mit erst einmal einen Überblick über die Begriffe Artificial Intelligence, Machine Learning, Deep Learning und Data Science zu geben. Also künstliche Intelligenz, Maschinelles Lernen, tiefes Lernen und die Datenlissenschaften. Wie hängt das denn alles miteinander zusammen? Und ich fange damit an, Ihnen auf hoher Ebene darzulegen, welche Fähigkeiten man denn als Data Scientist braucht und worauf es denn eigentlich ankommt. Daher habe ich Ihnen hier einfach mal ein Übersichtsbild gebaut. Wir beginnen doch einfach mal was ist denn künstliche Intelligenz? Was ist Artificial Intelligence? AI besteht hier aus den Themengebieten Maschinelles Lernen, Machine Learning und das Machine Learning selbst hat einen Teil der nennt sich Deep Learning. Das heißt, wir haben hier eine Hierarchie, das AI besteht aus vielen Dingen unter anderem der Maschinellen Lernen und das Maschinelle Lernen beinhaltet neuronale Netze und tiefes Lernen, also Deep Learning und was ist jetzt nun Data Science? Data Science ist eine Datenwissenschaft die sich mit Problemstellungen von Unternehmen und der Welt auf Datenbasis befasst und sich diesen AI, ML und DL Technologien bedient um eben diese Fragestellung zu beantworten. Das heißt, AI setzt sich zusammen aus ML und DL und die Data Science ist da so eine Schnittmenge deren sich Data Scientisten bedienen können. Das heißt, die ganzen Methoden Technologie und Ideen kommen in die Data Science Welt mit rein, aber nicht ausschließlich. Was ist denn jetzt nun Data Science? Das ist ein sehr interessantes Themengebiet, wo sie sich auch deftig darüber streiten können, was das jetzt denn nun ist, weil Data Science ist definitiv nicht gleich Data Science, je nachdem welches Aufgabengebiet sie wahrnehmen, welche Branche sie haben, aus welcher Industrie sie kommen und welche individuelle Ausbildung sie denn genossen haben differiert das Data Scientist sein massiv. Wenn ich mich jetzt nun selbst vergleiche, wir sind ja hier ja in den quantitativen Finanzmärkten unterwegs mit jemandem der Medizintechnik macht oder der in der Automobilindustrie tätig ist oder jemandem der aus dem produzierenden Gewerbe anderer Art kommt, wenn man diese Lorde an ein Tisch setzt und sich unterhalten lässt, da werden massive Differenzen sich obwohl alle eigentlich Data Science betreiben und je nachdem welchen Experten man eben befragt, wird man unterschiedlichste Antworten erhalten. Das heißt, es ist ein sehr heterogenes Feld mit einem sehr heterogenen Berufsbild je nachdem, in welchem Bereich in welcher Branche sie denn gerade tätig sind und welches Vorwissen sie dann mitbrennen und ich habe ja einen sehr guten Artikel vom Benjamin Aunkor vorgefunden der einen Data Science Knowledge Stack vorgestellt hat in einem Artikel, also ein Schichtenmodell was die, ich sage mal die Kernessenzen des Data Scientist Science und die Anforderungen zusammengestellt hat und das möchte ich Ihnen hier auch mal kurz vorstellen den sogenannten Data Science Knowledge Stack. Sie können natürlich auch von oben nach unten gehen, wir fangen jetzt hier mal oben an, wir haben natürlich die Expertise also die Domänenerfahrung was haben Sie denn gelernt, sind Sie Physiker machen Sie Engineering sind Sie wie wir hier im Finance Bereich unterwegs sind Sie Mediziner woher kommen Sie denn, sind Sie Biologe Geologe, was ist Ihre Domänexpertise was ist Ihr Bildungshintergrund und der fließt rein in die Data Science Methods also was sind die Methoden, das ist dann natürlich die Statistik mit der wir uns hier im Rahmen der Finanzmärkte ausführlich schon befasst haben, das heißt das Ganze wird Sie einholen, das werden Sie später schon noch merken, wir haben die Visualisierung von Daten, Optimisierung Maschinelles Lernen, Deep Learning Ansätze, das sind die Methoden die man sich hier bedient und dann hat man natürlich die Tools in Libraries mit denen man das machen kann wenn wir jetzt zum Beispiel neuronale Netze uns programmieren möchten können wir das natürlich vom Grund auf selbst machen oder wir können uns massiven Bibliotheken bedienen wie Scikit-Learn und TensorFlow unter anderem mit den beiden werden wir uns in den Coding-Videos auch noch befassen und je nachdem welche Pakete und Libraries oder Bibliotheken Sie nutzen wollen hängt auch davon ab welche Programmiersprachen Sie benutzen wir, haben hier Python für uns auserwählt Sie können das Ganze aber auch mit Julia ein R machen oder klassisch in C++ Java oder was Ihnen sonst dazu einfällt uns in diesem Kurs hier befasst das Maschinelle Lernen und die AI mit Python und wir werden mit den Paketen TensorFlow und Scikit-Learn arbeiten damit Sie sich das gleich schon mal vor abmerken können und was mache ich denn jetzt nun wenn ich Domänenerfahrung habe, die Methoden habe mir die Bibliotheken ausgesucht habe und eine Programmiersprache mir ausgesucht habe dann brauche ich natürlich die Daten ich brauche den Zugang zu den Daten und ich muss die Daten natürlich manipulieren ich muss die transformieren in eine Art und Weise und das hängt an bei der Datenextraktion aus einem Datenbankensystem oder wo auch immer Sie das herbekommen Sie müssen natürlich dann die Netzwerkarchitektur kennen Sie müssen die Datensicherheit haben wenn Sie in einem Unternehmen sind vielleicht auch noch die Verschlüsselung damit nicht die innersten Werte eines Unternehmens, die geheim intern Daten nach außen fließen können das möchte man natürlich auch nicht und unten drunter, ganz unten drunter ist natürlich dann die Datenbanktechnologie SQL Datenbanken NoSQL Datenbanken sonstige Formate z.B. Chasings sind ganz nett mit denen man arbeiten kann und das insgesamt gibt diesen Wissenstack den ein Data Scientist halt eben auch mal braucht wir fangen von unten jetzt auch mal nach oben nochmal an wir brauchen Daten, die müssen irgendwo drin liegen da hat man normalerweise eine Datenbanktechnologie die das tut, dann müssen wir auf die Daten zugreifen können wir müssen die Daten transformieren können das macht man in der Regel mit einer Programmiersprache und damit man nicht alles von Grund auf Neukoden muss bedient man sich eben Tools und Bibliotheken wie z.B. TensorFlow oder Skykit Learn was wir in Python kennengelernt haben Pandas und NumPy und andere wissenschaftlichen Bibliotheken was machen wir dann wenn wir die Daten schön aufbereitet haben mittels dieser Pakete wir möchten uns das natürlich auch anschauen können wir möchten statistischen Statistiken berechnen können wir möchten Algorithmen darauf laufen lassen können das ist eben hier diese Data Science Methoden und je nachdem natürlich auch diese Sachen zu interpretieren ob liegt natürlich der Domänerfahrung es ist eine Sache einen Datensatz statistisch auszuwerten mit diesen ganzen Dingen, die ich gerade genannt habe wenn sie einen biologischen Datensatz haben und sie sind jetzt aber leider ein Auto-Bauer dann können sie das vielleicht mechanisch handwerklich auswerten aber bei der Interpretation könnte es etwas schwierig werden der Frage welche Variablen sind nun relevant und welche können als obsolet entfallen da benötigen sie eben die Expertise die auf ihrem Bildungshintergrund aufbaut man kann das natürlich auch noch abkürzen die meisten Data Science Vorlesungen die sie im akademischen hören werden und wahrnehmen werden sind eben etwas abgekürzt da geht es darum, wir haben Data Engineering das heißt wir bekommen irgendwo die Daten halt her und da wird der Fokus meistens eben auf diese ganzen Methoden und die Programmieranwendungen gelegt und das werden wir hier im Weiteren natürlich genauso machen und das zahnt eben in die Expertise die Methoden werden natürlich abweichen je nachdem in welchem Fachbereich sie denn nun unterwegs sind und ich denke, das gibt ihnen einen netten Überblick was bedeutet denn Data Science was ist denn eigentlich alles relevant um Data Scientist überhaupt zu sein und das ist unabhängig davon in der Fachbereich sie denn unterwegs sind diesen Stack benötigen sie eigentlich immer um ein Projekt überhaupt durchführen zu können und wenn wir gerade schon bei Projektdurchführung sind und wie ich auch vorher erwähnt habe dass Data Science nicht nur eine Schnittmenge der AI ist sondern auch mit Geschäftsprozessen und Unternehmen zu tun hat möchte ich Ihnen das hier anhand der Unternehmensarchitektur einmal darlegen wie Sie hier sehen können habe ich mal eine eigene Webseite ist aber an der Enterprise Architecture Management Guideline des Bitcoin Verlags orientiert hier sehen sie alle Strukturen eines Unternehmens erlaubt es Ihnen alle Prozesse eines Unternehmens vom Datenpunkt bis hin zur Strategie in einem Bild darstellen zu können hier gibt es ganze Frameworks mit denen Sie Unternehmen auf einem Stück Papier durchblicken können das heißt Sie sehen wenn Sie irgendein Datenformat ändern welche Datenbanken betrifft das welche Geschäftsprozesse betrifft das und ist das Strategie relevant ja oder nein das ist für jeden Berater für jeden der im Unternehmensumfeld tätig ist ganz nett zu wissen wie sich so etwas dann zusammensetzt deswegen gehe ich mit Ihnen hier mal ganz kurz durch wir haben top down natürlich ein Unternehmen unser großer Kasten hier ist unser Unternehmen und unser Unternehmen hat eine Strategie und ein Ziel das nennt sich dann Business Strategy das ist unsere oberste Layer unser oberster Block ist die Geschäftsstrategie und aufbaut auf der Geschäftsstrategie gibt es natürlich die Business Architecture das heißt wir haben unsere Geschäftsprozesse unsere Business Processes und unsere Unit Interconnections das heißt wie sind denn die Geschäftseinheiten die Abteilungen miteinander verwoben welche Geschäftsprozesse gibt es denn die dazu dienen diese Strategien und Ziele des Unternehmens umzusetzen und um diese Geschäftsprozesse überhaupt laufen lassen zu können um die überhaupt durchführen zu können benötigen wir eine Applications Architektur indem die IT Services Applications und Interfaces vorhanden sind das heißt die ganzen Anwendungen mit denen sie ihre tägliche Arbeit machen beispielsweise MS Excel ist so ein IT Service den sie nutzen können ein E-Mail System sonstiges und diese ganzen Applikationen müssen ja auch irgendwo wohnen die müssen irgendwo zu Hause sein deswegen gibt es auch eine AIT Architektur bestehend aus den Business Objects und den Daten und selbst wenn wir eine AIT Architektur haben und Applikationen haben die auch wieder eine Architektur haben fußt das ganze auf einer technologischen Architektur das heißt die Plattform, Infrastruktur, Hardware und den ganzen Netzwerken ich wiederhole das ganze nochmal bottom up das heißt wir haben eine Plattform, eine technische Struktur, Hardware, Computer Server, Netzwerke auf diesen technischen technologischen Architekturen bauen wir unsere AIT Architektur das sind unsere Business Objects drin, unsere Datenbank Strukturen, unsere Daten und unsere AIT Services, Applications, Interfaces das heißt die ganzen AIT Anwendungen die sie benötigen um ihre Arbeit über durchführen zu können und auf Basis dessen laufen Geschäftsprozesse und sind Abteilungen miteinander verwoben, da spielt auch das Riesenthema Identity in Access Management mit rein das heißt wer darf denn was und warum und diese ganzen Geschäftsprozesse miteinander verwoben dienen natürlich einem Ziel und das ist die Strategie und das Ziel der Business Strategy das heißt der Geschäftsstrategie und sie können mit einem EAM das alles in eine Bild darstellen und sie können das durchdringen so das hat jetzt mit Data Science erst mal ja noch gar nichts zu tun das ist wie kann ich eine Unternehmensarchitektur denn grafisch darstellen und was für Bereiche gibt es denn da wo kommt jetzt hier Data Science mit rein Data Science beschäftigt sich damit anhand von Daten Geschäftsrelevante Fragestellungen empirisch, statistisch oder datengetrieben zu beantworten und wir haben ja gerade diesen Data Science Knowledge Stack gesehen einmal in einer weiten Definition und einmal in einer eher längeren Definition und ich habe ihnen jetzt hier mal diese Broad Definition als blaue Scheibe eingefügt und sie sehen dass sich die Wissensgebiete dieser Knowledge Stack durch die gesamte Unternehmens Architektur hindurchzieht von der Strategie bis zur technologischen Struktur die sie benötigen um ihre Daten überhaupt so zu bekommen dass sie damit arbeiten können die breite Definition von Data Science ist die Schnittmenge durch ihre Unternehmens Architektur Lassen Sie sich das mal auf der Zunge zergehen Sie haben auf der einen Seite natürlich die Schnittmenge durch die AI Machine Learning, Deep Learning und auf der anderen Seite haben sie ihre Enterprise Architektur und als breite Definition von Data Science sehe ich die Schnittmenge durch Ihr gesamtes Unternehmen Ein guter Data Scientist versteht es nicht nur irgendwelche Algorithmen zu rechnen sondern versteht wo die herkommen für was er das tut und was die Anforderungen eines Unternehmens der Geschäftsbereiche und der Stakeholder dieses Unternehmens denn nun sind und wenn wir jetzt auf die ich sage mal engere Definition kommen die sich nur mit den Methoden und der Programmierung befasst sage ich das mal salopp haben wir nicht die gesamte Unternehmens Architektur als Schnittmenge und die Daten sage ich mal und die Services und Applikationen mit denen wir eben diese Visualisierungen und Auswertungen und Statistiken berechnen können warum habe ich jetzt so viel Zeit damit ich sage es mal verbracht Ihnen das dazu legen mir ist es wichtig dass Sie nicht zu der Generation Data Scientisten gehören die denken neuronale Netzwerke sind alles Sie haben immer zwei Seiten Sie haben die technische Seite des Data Scientist Science indem Sie Ihre ganzen Methoden, Algorithmen Programmiersprachen sonstiges haben und Sie haben den anderen Teil und das ist der Teil für den Sie letzten Endes bezahlt werden nämlich ein Verständnis dafür wie funktioniert das Unternehmen für das ich tätig bin egal ob jetzt nun frei beruflich oder angestellt was sind die Anforderungen der Geschäftsleitung was ist das Ziel und was sind die kritischen Anforderungen die ich mit meinen Analysenden überhaupt tangieren möchte und das fließt ganz stark in dieses Gebiet Domänexpertise mit rein gepaart mit einem Grundverständnis wie funktioniert denn überhaupt ein wirtschaftlicher Betrieb wie ist ein Unternehmen aufgebaut welche architekturellen Hintergründe stehen denn dahinter weil wie möchten Sie denn als Data Scientist geschäftskritische Fragestellungen Datengetrieben beantworten wenn Sie dieses Geschäft noch nicht einmal durchblicken können deswegen habe ich Ihnen das hier nochmal etwas ordentlicher hingemalt damit Sie das mal gesehen haben und das führt uns direkt hier zu uns die Frage zu stellen was gibt es denn jetzt an Data Science Jobs was gibt es an Data Jobs was ist ein Data Science Prozess wir haben jetzt sehr viel zu Unternehmensarchitektur gehört und dazu gehört dass ein Data Scientist nicht nur rein technisch unterwegs ist sondern auch ein rudimentäres Verständnis von geschäftlichen Prozessen mitbringen muss deswegen beschäftigen wir uns jetzt in diesem Abschnitt damit was ist denn der Data Science Prozess und welche Jobs welche Anstellungsarten welche Data Jobs gibt es denn die BuzzFeed Inflation führt natürlich auch dazu dass die Jobrollen und Berufsbilder in den Data Science Bereichen lange nicht wirklich klar waren vor allem wenn es dann so Histories gibt dass ein normaler IT Entwickler oder IT Architekt sagt er ist Data Scientist als gehypten Beruf natürlich mehr Geld bezahlt wird effektiv für fast dieselbe Arbeit lasse ich jetzt einfach mal unkommentiert stehen wir werden uns jetzt mal mit den Job Kategorien ein bisschen befassen und zwar mit den drei größten Job Kategorien die es eben gibt und zudem werden wir uns mit dem eigentlichen Data Science Prozess auseinandersetzen um zu sehen wie dieser Formal vonstatten gehen sollte und was denn eigentlich erforderlich ist um ein Data Science Projekt überhaupt durchzuführen die drei Berufe welche ich ihnen hier aufzeigen möchte es sind einmal der Data Analyst der Data Engineer und der Data Scientist und natürlich gibt es Überschneidungen andere Variitäten an Berufsbezeichnungen und wahrscheinlich sehr sehr viele Unterkategorien je nachdem in welchem Fachbereich in welcher Branche und in welchem Unternehmen man eben tätig ist aber das sind so die drei großen Kategorien die man einfach mal auseinander differenzieren muss und ich werde da nachher nochmal eine Anekdote dazu erzählen wir beginnen hier aber zunächst einmal mit dem Data Analyst der Data Analyst kann verschiedene Bezeichnungen und Untergliederungen aufweisen wie beispielsweise Business Analyst, Business Intelligence Analyst Operations Analyst, Database Analyst oder einige anderen auch ich subsumiere das jetzt einfach mal unter dem Begriff Data Analyst und der Data Analyst bildet die Schnittstelle der Fachbereiche und der Daten und IT Abteilungen die Aufgaben umfassen eben die Bereinigung und Organisation von Rohdatenbeständen die Erstellung deskriptiver Statistiken zur Datenaufbereitung Trendanalysen, Datenbasiert, Entscheidungsvorlagen technische Präsentation von Analysen für interne Teams oder andere Stakeholder fahren wir zunächst einmal fort mit dem sogenannten Data Engineer Dateningenieurer sind für die Erstellung und Optimierung der technischen Systeme welche die Grundlage der Arbeit von Data Scientist und Analysen darstellt verantwortlich und die Fokussierung liegt hier viel mehr auf der Softwareentwicklung als auf der Datenauswertung und die Aufgaben umfassen unter anderem die Konstruktion von Data Pipelines also Datenlinien Skalierung der Datenhaushalte Bereitstellung von Datentools Pflege und Management von Datenbanken die Erstellung von APIs Anwendungen von Applications Transformationen Performance Optimierung der Systeme und so weiter und nun kommen wir mal dazu was ist denn ein Data Scientist der Data Scientist ist ein Spezialist in der Statistik der Programmierung und der Konzeption von Maschinelarning Modellen um quantifizierbare Vorhersagen für Kerngeschäftsfragen zu erzeugen ich denke darauf bin ich vorher relativ detailliert eingegangen und zudem wird eine sogenannte Expertise gefordert das haben wir denke ich auch schon hinreichend erörtert was damit gemeint ist und die Aufgaben umfassen neben dem bereinigen, analysieren und visualisieren von Daten als Schnittmenge mit dem Data Analyst zudem das trainieren und optimieren von Maschinelarning Modellen um tiefgreifende Geschäftsfragen die vorher natürlich verstanden werden möchten algorithmisch zu quantifizieren und visuelle Entscheidungsgrundlagen zu erzeugen und dann kommen wir zu der Anekdote die ich hier mal darstellen möchte stellen Sie sich vor Sie sind jetzt ein Unternehmen Sie haben festgestellt, oha wir haben mehr Daten die wir nicht nutzen wir holen uns ein Data Scientist der Data Scientist fängt dann natürlich an und stellt fest dazu bräuchte man eigentlich ein Data Engineer und ein Data Analyst bevor ich hier überhaupt was machen kann aber gut, ich mache jetzt ein auf Allrounder das ist natürlich alles es ist natürlich möglich dass ein Data Scientist die Arbeit eines Analysten und eines Ingeniers irgendwie gemacht bekommt und der bekommt das dann auch irgendwie gemacht es wäre zwar natürlich einfacher einen rein Analysten und einen rein Daten Engineer dahin zu setzen weil die das wesentlich schneller, wesentlich effizienter und wesentlich besser machen könnten aber der Data Scientist bekommt das gemacht und die Geschäftsleitung ist dann ein Data Scientist das ist das Problem wenn ein Unternehmen sich selbst mit der Batterie nicht befasst oder die zuständigen Personaler auch nicht wirklich eine Ahnung haben wen sie denn für welches Problem einstellen müssen das ist in vielen Unternehmen der Fall und auch wenn ich mich da jetzt in die Nesseln damit setze es ist einfach so, tut mir sehr leid deswegen ist es wichtig vorher zu wissen gerade wenn sie in diesen Daten Bereichen arbeiten möchten wo liegt denn ihr Schwerpunkt sind sie lieber Machine Learning Modelle trainieren, optimieren um damit Kerngeschäftsfragen beantworten sind sie eher so der Namba Cruncher der eigentlich nur die Bereinigung und die Daten Analyse machen möchte oder sind sie wirklich der Entwickler der die ganzen Pipelines baut in welcher Rolle sehen sie sich denn da können sie ein bisschen gucken sie werden feststellen, dass in den Jobbeschreibungen inzwischen wird es langsam besser aber es gab eine Zeit wo das alles war und ich habe ihnen hier mal noch ein Wend diagram mitgebracht what are the role requirements for data scientists wo wir 4 große Kern Skills haben die sie benötigen und das ist einmal die Kommunikation Statistik, Programmierung unter die Geschäftskentnisse und ich möchte hier auf einen Punkt im Speziellen eingehen nur weil sie gut reden können heißt das noch lang nicht dass sie von irgendwas eine Ahnung haben heiße Luft gibt's wie Strand am Meer so was brauchen sie in diesen Bereichen nicht ich gehe jetzt mal nur auf den idealen perfekten Data Scientist ein der perfekte Data Scientist der hier in der Mitte steht der versteht was vom Geschäft das heißt er kann die Anforderungen und die Strategie des Unternehmens durchdringen und verstehen, der weiß wie man programmiert er kann ein bisschen Statistik das heißt er kann programmatisch Statistiken erzeugen und im idealen Fall wenn sie nicht der Drew Conways Data Scientist sein wollen können sie das auch noch in normale Worte fassen die ein nicht Statistiker noch und eine Geschäftsführung noch verstehen kann dann sind sie der perfekte Data Scientist wenn sie die Geschäftsanforderungen verstehen die Daten statistisch erheben und programmatisch auswerten können und die Ergebnisse noch verständlich kommunizieren können dann sind sie ein sehr sehr guter Data Scientist natürlich gibt es noch jede Menge außen rum das können sie sich ja mal gemütlich ansehen aber wir steigen hier jetzt erstmal tiefer ein und befassen uns mit dem Data Science Prozess also mit dem tatsächlichen Ablauf wie ich denn als Data Scientist diese Datenanalyse für geschäftskritische Fragenstellungen überhaupt ausführen kann und das ist eine Abfolge der geforderten Tätigkeiten und notwendigen Arbeitsschritten welche eben zu einem erfolgreichen Arbeitsablauf notwendig sind und ich möchte jetzt hier kein Beraterbashing machen und ich möchte jetzt hier auch nicht mich in irgendeiner Art und Weise Böse äußern aber es gibt hier keine Shortcuts, es gibt kein Quick Fix, es gibt kein Workaround oder andere heiße Luft in Business, jargon gepresst den die meisten englischsprachigen Länder ja gar nicht kennen es gibt keine Frozen Zones, es gibt kein Stopping, es gibt einfach nur kein mal schnell zu Ergebnissen kommen es gibt einen geordneten Prozessablauf und ein professionelles Datenprojekt sollte auch entsprechend aufgesetzt durchgeführt und dokumentiert werden wenn sie sich nicht bis aufs Blub lamieren möchten oder das ganze Kind eben gegen die Wand klatschen das war jetzt nicht sehr akademisch ausgedrückt, aber sie sollten wenn sie ein Datenprojekt in dieser Dimension fahren möchten ein professionelles Datenprojektmanagement aufsetzen sie müssen ihre Arbeitsabläufe ordnen und sie sollten sich an diesen Data Science Prozess tunlichst halten damit sie Ergebnisse erlangen und erzielen können, die tatsächlich geschäftstrategisch relevant auswertbar sind und es ist bei Datenprojekten so wie bei allem anderen wo nicht ich sag mal alle anderen Bereiche wo keine Fancy-Basswörter auf der Tapete stehen immer das Gigoprinzip Garbage in, Garbage out wenn sie ein neuronales Netzwerk mit schlechten redundanten oder falschen Daten füttern oder unvollständigen Daten füttern dann brauchen sie nicht erwarten, dass dann Goldbahnen am Ende rauskommt wenn sie Schrott oben reinschmeißen um es mal ganz salopp zu sagen dann kommt auch Schrott unten raus, egal wie Sophisticated und egal wie komplex ihr Algorithmus sein wird Darum sollten die Regeln der Standardstatistik der angewandten Statistik nicht mehr greifen, nur weil jetzt ein anderer Name auf dem Deckel drauf steht sie werden es noch nicht einmal schaffen eine Lineare zu fütten wenn ihre Daten kompletter Mist sind Das ist jetzt für eine Vorlesung kein angemessener Tonfall, ich möchte mich dafür auch entschuldigen, aber aus meinem Berufsleben heraus muss ich einfach sagen, dass darauf viel zu wenig Wert gelegt wird wir erzählen schnelle Ergebnisse und wir müssen unsere Deadlines halten und bla bla bla Tut mir leid, Fachbegriff bla bla bla, wenn sie ein Datenprojekt anfangen verstehen sie das erst wir werden später noch kennenlernen welche Schritte dafür genau notwendig sind, dazu kommen wir gleich tun sie sich den Gefallen diesen Data Science Prozess zu beherzigen, dann kommen sie auch zu Ergebnissen, die sie einer Geschäftsleitung vorlegen können nach den Grund- und Bodenschämen zu müssen wir steigen jetzt doch mal direkt ein wie sieht denn dieser Data Science Prozess aus und zwar, sie fangen an definiere das Ziel was ist denn ihre Aufgabe was ist denn die kritische Geschäftsfrage die geklärt werden muss was benötige ich dafür auch das heißt ich setze mich hin und denke erstmal nach was möchte ich denn überhaupt danach hole ich mir die Daten bereinige diese Daten reichere diese Daten an indem ich aus den bestehenden Daten neue Daten erzeuge ich manipuliere diese Daten ich baue mir neue Variablen daraus und danach gehe ich her und schau mir das erstmal an ich versuche Einsichten zu bekommen indem ich mir erstmal ein paar Bildchen mache um Zusammenhänge sehen zu können die allein durch tabellarische Anschauung den meisten nicht möglich ist und das wenn ich verstanden habe was ist mein Ziel dann habe ich Daten die sind bereinigt die sind enriched und die sind visuell schon mal so dargestellt das ich weiß in welche Richtung ich laufen möchte dann aber erst dann gehe ich her und erzeuge ein Maschinenlearning Modell oder ein anderen statistischen Algorithmus der mir Ergebnisse liefert und dann fange ich von vorne an da nehme ich diese Ergebnisse denke darüber nach und schau ist das Ziel dasselbe geblieben oder muss ich von vorne anfangen das ist der Standard Ansatz den sie bitte beherzigen mögen es gibt hier das sogenannte OSAM Framework der fängt an mit Obtain das heißt ich sammle meine Daten ich scrubber meine Daten das heißt ich bereinige meine Daten und zwar nicht nur dass ich irgendwie Fehlformatierung rauswerfe sondern ich bereinige die Daten in eine Art und Weise dass ein Computer oder ein Maschinenlearning Algorithmus damit tatsächlich arbeiten kann dann explore ich die Daten das heißt ich schaue mir die Daten an ich schaue ob ich Trends finden kann oder ob ich gewisse Strukturen erkennen kann das kann man mittels statistischer Methoden tun da haben ja schon einige davon kennengelernt und anschließend gehe ich her in die Modellierung ich baue ein Modell was für Predictionen und Vorhersagen geeignet ist und dann nehme ich diese Erkenntnisse die ich aus diesem aufwendigen Prozess gewonnen habe um nutzbare interpretierbare Ergebnisse zu erzeugen mit denen man geschäftsrelevante Entscheidungen treffen kann es gibt hier noch den Cross-Industry-Standard-Prozess für Datamining, den CRISP-DM-Prozess der sagt in der Regel eigentlich fast das gleiche wie fangen hier oben an und es beginnt und endet eigentlich alles damit das Geschäft zu verstehen Business Understanding wie funktioniert mein Unternehmen was sind die geschäftskritischen Fragestellungen das ist das erste was ich verstehen muss und dann muss ich schauen wie viel Daten habe ich denn was für Daten sind denn da dann muss ich erstmal die Daten verstehen was sagen mir diese Daten denn das beste Beispiel hierzu ist ein Modell zu bauen wann denn ein Kunde einen Bankkredit kündigt und ob ich mir jetzt eine Variable ansehe die mir die Restlaufzeit des Kredites ausgibt oder die noch ausstehenden Raten im Endeffekt genau dasselbe wann ist dieser Kredit denn zu Ende und daher brauche ich erstmal ein Datenverständnis fußend auf den Geschäftsanforderungen und den Geschäftsproblematiken wenn ich das einmal verstanden habe dann kann ich hergehen und die Daten reparieren dann kann ich modellieren dann kann ich das Modell evaluieren und je nach dem was da rauskommt wenn ich zufrieden bin mit dem was rauskommt kann ich es einsetzen, kann ich es deployen oder ich fange eben von vorne an nichts taugt, wenn da am Ende was da rauskommt was nicht das ist was ich benötige dann fange ich schlicht von vorne an dann muss ich alles was ich gemacht habe erstmal nehmen zur Seite legen, weißes Blatt Papier und dann fange ich von vorne an immer und immer wieder, das ist der CRISP-DM Prozess und es gibt auch noch eine andere Prozess A das ist die sogenannte Data Science Life Cycle Darstellung und sie fangen erst einmal an indem sie Daten sammeln, sie aquarieren Daten sie geben die ein, sie erzeugen die dann maintainen sie die das heißt sie müssen irgendwo gespeichert werden in einem Data Warehouse, dann bereinigen sie die Daten, sie bauen eine Datenarchitektur und einen Datenprozessablauf wie die Daten verarbeitet werden dann gehen sie her und meinen die Daten klustern die Daten, modellieren die Daten fassen die Daten zusammen mit Deskriptive oder anderweitiger Statistik dann werden die analysiert explorativ, Vorhersage, Techniken Regressionen, Textmining Qualitative Analyse da haben wir schon einiges davon kennengelernt und werden auch noch einiges kennenlernen und danach kommunizieren sie ihre Ergebnisse und das ist ein Punkt der wird sehr oft unterschätzt es ist schön, dass sie ein sehr komplexes Modell gebaut haben, was funktioniert es hilft ihnen nicht wenn sie das können, aber nicht in der Lage sind diese Ergebnisse transparent und einfach verständlich allen anderen Beteiligten im Unternehmen darzustellen sie müssen das ganze reporten sie müssen das visualisieren, am besten noch mit BI Anwendungen und sie müssen eben eine Entscheidungsvorlage daraus ableiten können das ist das Ziel der ganzen Übung ich habe geschäftskritische Fragestellungen, die ich Daten getrieben beantworten möchte das ist das Ziel, das ist die Aufgabe und das ist der Lebenszyklus den ich ihnen hier mal gezeigt habe das ist das letzte Bild zum Lebenszyklus der ist von Microsoft der sogenannte Team Data Science Prozess der ist geeignet für sehr große Unternehmen für sehr große Projekte und der ist etwas komplexer, sie beginnen aber wie bei allem anderen vorher in einem Verständnis des Geschäfts Business Understanding ich kann das nur oft genug wiederholen weil es gibt sehr viele Menschen da draußen, die tun das eben nicht ich muss bevor ich loslegen irgendwie Wildalgorithmen auf irgendwelche Daten schmeiß was ist das Geschäft was sind die Anforderungen und was sind die kritischen Fragestellungen die wir denn überhaupt klären müssen und darauf aufbauend akquiriere ich meine Daten ich source die Daten ich baue mir das Ergebnis auf ich bereinige die Daten und ich muss die Daten aber auch erst einmal verstehen was sagen mir denn meine Daten und vor allem was sagen wir meine Daten denn nicht dann gehe ich natürlich her und baue erstmal ein Modell da kann ich dann Feature Engineering Betreiben, Modell Trading Modellevaluation, das ist das was wir meistens als Data Science kennen und lernen und wo wir auch noch mit darauf eingehen werden aber das ist das nächste was sie tun und danach deployen sie danach packen sie ihre Modelle tatsächlich in die produktiven Umgebungen und das ist natürlich so, dass sie diese Modelle bewerten müssen und je nachdem wie gut oder schlecht das abschneidet fangen sie schlicht von vorne an erst am Ende wenn ihr Endkunde und wenn sie jetzt Berater in einem Unternehmen sind ist der Endkunde quasi die Geschäftsleitung für die sie tätig sind oder wenn sie das Unternehmen selbst sind ihr Endkunde draußen damit zufrieden ist, vorher sind sie nicht fertig sie werden das so lange machen bis ihr Kunde bis der Interessensgeber für den sie arbeiten zufrieden ist und so lange bis da Ergebnisse rauskommen mit denen sie vertretbar arbeiten können keine Quick Fixes, keine Workarounds strukturiert ordentlich arbeiten in diesem Sinne beginnen wir jetzt auch tatsächlich mit dem Teil der zumeist als Data Science gelernt wird nämlich Machine Learning als Teil der AI und wir beginnen hier mit einem Methodenüberblick und den Kategorien die es im Machine Learning eben gibt und anschließend werden wir uns mit einigen Grundlegenden beziehungsweise am meisten verwendeten Konzepten zum Beispiel Support Maschines befassen und Deep Learning und Neuronale Netze obwohl diese ein Teilgebiet des Machine Learning sind befassen uns in einem separaten Abschnitt ich habe mich dafür entschieden weil Deep Learning und Neuronale Netze inzwischen so ein großes Gebiet geworden sind, dass es durchaus Respekt findet das einzeln darzustellen aber behalten sie sich im Hinterkopf dass Neuronale Netze und Deep Learning grundsätzlich zum Machine Learning gehört ich ist hier aber dem Umfang halber separat darstellen werde Grundlegend im Machine Learning genauso wie in der angewandten Statistik das kennen sie aus den vorherigen Vorlesungen kann man zwischen diskreten und stetigen Datensätzen unterscheiden und zudem, das ist jetzt neu kann man zwischen labeled und non labeled Datensätzen differenzieren, das bedeutet dass ich zum Beispiel ein Bild von einem Hund habe und ich habe noch eine Zusatzinformation, ein sogenanntes Label was sagt, das ist ein Hund also die Klassifizierung des jeweiligen Datenpunktes oder der jeweiligen Variable ist hier mitgegeben oder eben nicht das heißt, wir haben hier schon mal 4 Grundunterscheidungen Diskret stetig und labeled und non labeled darauf kommen wir nachher nochmal zurück und es existieren 3 große Kategorien und 3 deswegen, weil ich ganz unten das Reinforcement Learning einfach zu semi supervised learning dazu gepackt habe sie werden sehen, dass es andere differiente Darstellungen auch gibt aber um es über einen Kampf zu scheren haben wir 3 große Kategorien supervised learning, unsupervised learning und semi supervised learning inklusive reinforcement learning das heißt, wir haben überwachtes lernen, unüberwachtes lernen und so halbüberwachtes lernen und man kann natürlich auch andere weitere Klassifikationen wie online versus batch learning oder instant based versus model based learning daran orientieren wir uns hier nicht wir orientieren uns an diesen 3 zuvor genannten Kategorien und seien sie sich aber bewusst dass Überschneidungen durchaus möglich sind die sind nicht abgrenzbar 1 zu 1 es gibt tankige Teilgebiete da überschneiden die sich aber wir teilen das machine learning diese 3 Kategorien ein bevor wir uns hier auf die einzelnen Methoden stürzen, möchte ich Ihnen auch ein beispielhaften Methoden überblick geben dieser ist bei Weiten nicht vollständig sie werden für jedes dieser Kategorien, Beispiele Unterkategorien finden und weitergreifen die Methoden, ich möchte Ihnen aber einige der bekanntesten hier mal in den Kategorien nennen fachlich inhaltlich kommen wir zu einigen dieser Methoden später wir haben im supervised learning das ist das überwachte Lernen beispielsweise den naive bias lineare und logistische regressionen k nearest neighbor, klassifikation support vector machines decision and random trees und einige neuronale Netzwerke nicht alle, aber einige wenn wir uns da hingehend das unüberwachte Lernen betrachten, also das supervised learning finden sie den k means algorithmus die hca also principle component analysis locally linear embeddings t distributives stochastic neighbor embeddings also t s n e association rules und wieder einige neuronale Netzwerke sie sehen neuronale Netzwerke greifen so ein bisschen über diese Kategorien, die wir aufgefächert haben und es gibt noch semi supervised learning algorithms das sind teil überwachte Algorithmen, da haben wir zum Beispiel die sogenannten GANS als Teil des self supervised learnings das heißt, dass selbst überwachte Lernen intelligente Lernen von sogenannten evolutionären Algorithmen auf die wir später noch zu sprechen kommen wir haben das Q learning im Sinne des reinforcement learnings und wir haben deep belief networks restricted bolzmann machines die Teil dieses semi supervised learnings sind und ich habe mir die Freiheit genommen ihnen um diese riesen Masse an Methoden mal grafisch in einem Bild darzustellen habe ich mir die Arbeit gemacht ihnen das hier mal in eine Tabelle zu packen der Grund warum wir da als immer einzeln über diese Methoden drübergegangen sind ist, dass diese Tabelle doch schon etwas komplexer ist sie haben hier eine Differenzierung danach ob die Daten ein Label tragen oder kein Label haben oder ob die nur teilweise gelabelt sind dann haben sie eine Unterscheidung nach Diskret und Stetik und dementsprechend die Einteilung nach supervised an supervised semi supervised und sie haben hier 4 große Unterkategorien und zwar die Klassifikation, die Regression, die Clusterings und die Dimensionsreduktion das heißt die Embeddings und zwischendrin haben sie die semi supervised Methoden die sie einmal nach self supervised Modellierungen oder Modifikation auf Basis des Reinforcement Learnings differenzieren können und ein großer Punkt der eigentlich an supervised und supervised mit umfassen müsste ist die Optimization and Control, das heißt da gibt es genetische Algorithmen evolutionäre Algorithmen und Varianten von tiefgehenden Netzwerken von deep neural networks die sie hier anwenden können wir werden einige davon jetzt näher sprechen, ich möchte ihnen allerdings hier das ganze mal grafisch in einem Bild darstellen dass sie eine kompakte Handreichung haben um eben diese ganzen Methoden die neu aufgekocht sind aus alten statistischen Konzepten oder komplett neu generiert wurden einordnen können, das ist ja eines meiner Hauptanliegen mit dieser Veranstaltung sie in die Lage zu versetzen diesen ganze Wortgewalt die da auf sie einprasselt in diese Kategorien einordnen zu können und hier haben sie meiner Meinung nach eine ganz nette Übersicht über die ganzen Machine Learning Klassifikationen ich habe ihnen das hier auch mal grafisch mitgebracht und zwar nicht nur mit Modellnennungen sondern mit Anwendungsgebieten ich fange jetzt einfach mal links oben an im Ansupervised Learning bei den Clusterings haben sie zum Beispiel Marketing Recommender Systems zu denen wir noch einen Exkurs später sehen werden wir haben Customer Segmentation und wenn wir Dimensionsreduktierungen uns anschauen wir finden uns im Bereich von Big Data und Big Data Visualisierungen wie kann ich massive Datenmengen vereinfachen und runter reduzieren um daraus bedeutsame Strukturen und Variablen also Features herauszuarbeiten und wenn wir uns jetzt nach unten bewegen haben wir das sogenannte Reinforcement Learning als Teil des Semi Supervised Learning hier sind wir bei Website Entscheidungen Robotik, Lernaufgaben und vor allem auch bei der Computerspiele AI die wahrscheinlich einige von ihnen schon mal gesehen haben auch dazu haben wir später in unseren Coding Videos ein Beispiel und wenn wir uns die rechts oben das Supervised Learning anschauen haben wir eben Predictionen von Population Grows Marktvorhersagen wo wir mehr in die Richtung sehen werden dass wir auch in dieser Vorlesung sehr sehr sehr viel mit Forecasting Modellen gearbeitet haben das spielt sich alles mehr in dieser Ecke ab und was wir auch haben sind Klassifikationen gerade für Banken interessant Identitäbstiebstähle oder andere Frauddelikte die man diagnostizieren kann und wenn wir schon in der Diagnose sind sehr spannend die Diagnostics wie kann ich denn anhand von Bildern oder anderen Daten Vorhersagen ob ein Patient nun eine Krebserkrankung aufweist oder nicht und ich habe ihnen das alles hier mal in einem Bild dargestellt das heißt ich springe noch mal ein zurück hier haben sie das ganze Tabellarisch ein bisschen aufgearbeitet und hier haben sie ein großes Übersichtsbild welche Anwendungsfelder denn in welchem Bereich in welcher Kategorisierungen denn anzusiedeln sind und dass das mit einem Problem konfrontiert sind können sie sich erst einmal überlegen in welchen dieser Bereiche fällt das denn und dann können sie sich die Methoden aussuchen damit sie hier nicht einfach nur blind durch die Gegend fischen müssen oder das mit Try and Error jahrelang testen müssen gibt es von Skykit Learn von dem Python Package gibt es hier ein schönes algorithmisches Cheat Sheets sie werden für fast alle Pakete und große Bibliotheken solche Cheats-Cheats finden an denen sie sich orientieren können das ist quasi hier ein kleiner Entscheidungsbaum an dem sie sich entlang hangeln können um herauszufinden welche Methode, welches Modell ist denn für ihr Problem am besten geeignet und sie sehen allein schon an der ersten Note dass sie unter 50 Samples das sind sie wieder eine Standardstatistik weit weg von diesen fancy Begriffen die sie immer hören sie brauchen einfach sehr viel Daten dafür sie sehen hier, wenn sie die Notes sich ein bisschen angucken, dass sie in der Regel 10.000 oder mehr wie 100.000 Datenpunkte brauchen um überhaupt irgendwas Sinnvolles anfangen zu können und die Auswahl an, ich sag mal Methoden die mit wenig Daten auskommen sind schon sehr gering, das heißt wir sind Daten getrieben, wir sind ein Informationszeitaltern, das heißt sie müssen auch, wenn sie solche Projekte machen, die nötige Datenmenge Datenqualität vorliegen haben, um hier loslegen zu können ich werde jetzt nicht auf die einzelnen Entscheidungsbäume eingehen, das können sie sich selber ansehen, sie können natürlich auch auf die Seite von Skikid Learn selber gehen und sich das ansehen ich möchte das ja einfach nur einmal erwähnt haben dass sie wissen es gibt hier verschiedene Kategorien im Machine Learning, die kann man einteilen und es gibt Entscheidungsbäume die mir helfen die richtigen Modelle zu finden bevor wir uns jetzt tatsächlich mit den Tiefen dieser Modelle befassen und einige uns auch tatsächlich anschauen werden, habe ich ihnen noch ein Mini-Exkurs zum Thema Datenstrukturen und abstrakten Datenstrukturen eingefügt, weil ich der Meinung bin, dass sie den Python Code, den wir später durchnehmen werden, oder auch andere Literatur wesentlich besser verstehen können, wenn sie denn wissen, was es denn für abstrakte Datentypen Datenstrukturen auch genannt denn gibt eine Datenstruktur ist ein Objekt, welches zur Speicherung und Organisation von Daten dient und das ist insofern wichtig, wenn man dynamische Speicherungen vornimmt die richtigen Datenformate dazu vorab ausgewählt zu haben das Ziel ist es hier eine effiziente Datenverwaltung durch entsprechende Anordnungen und Verknüpfung herzustellen und die Festlegung, das heißt die Definition von Datenstrukturen erfolgt durch sogenannte Spezifikation zur Datenhaltung und Operationalisierung das heißt sie sehen man braucht einen Ressourcenbedarf, Laufzeit und Effizienz von Algorithmen welche halt auch von den verwendeten Datenstrukturen abhängen je nachdem welches Datenformat ich als Input in ein Programm eingebe kann das sein, dass der Algorithmus länger braucht oder gar nicht erst ausführbar ist, weil die vorhandenen Ressourcen überschritten werden das heißt das ist schon nicht nur irgendein Informatikstudium Bachelor erstes Semester in Datenstrukturen Exkurs sondern es ist von absoluter Relevanz, sich hier mit auszukennen um zu wissen welche Datenstrukturen kann ich denn verwenden um Effizienz herzustellen und oder eben Laufzeiten zu optimieren ich habe Ihnen hier nur mal einen Überblick von einigen wichtigen gegeben und ich werde die jetzt mal nacheinander kurz erläutern ein Array den kennen Sie vielleicht ist einfach nur eine Tabelle mit einem Index versehen wo jeder Wert einen Index trägt in der Regel sprechen wir von Vektoren und Matrizen wenn Sie das Ganze natürlich noch gehasht haben dann haben Sie eine Sonderform eines Arrays das lassen wir hier aber auch erstmal weg ein Array ist für uns entweder ein Vektor oder eben eine Matrix als nächstes haben wir die verketterte Liste die sogenannte LinkedList das ist einfach eine Datenstruktur die Speicherung von beliebig vielen Objekten achten Sie darauf dass Listen stets lineare Strukturen haben aber es auch genutzt werden kann um komplizierte Datenstrukturen zu verwalten und eben aus Effizienzgründen meist direkt auf Elementebenen zu verarbeiten mehr möchte ich dazu eigentlich auch nicht sagen als nächstes haben wir den sogenannten Stack also die Stapelspeicherung kann auch eine beliebige Anzahl von Objekten speichern der Unterschied ist jedoch dass wir umgekehrte Reihenfolge im Auslesen haben das heißt die haben hier ein sogenanntes Lifoprinzip was Sie beachten müssen also PushPop und Top oder Peak das sind die Sachen die Sie hier anwenden können das ist bei gewissen Anwendungen sinnhaft haben Sie es einfach im Hinterkopf danach haben wir den sogenannten Köl also eine Warteschlange kann auch eine beliebige Anzahl von Objekten speichern jedoch können die gespeicherten Objekte in gleichen Reihenfolge wieder gelesen werden wie sie eingespeichert wurden das ist das sogenannte FIFO-Prinzip falls Sie das schon mal gehört haben und Sie haben hier die Operation N-Köl und D-Köl wo Sie das eben einlesen und auslesen können dann gibt es die sogenannten Grafen das ist auch eine Datenstruktur die Uni Direktionalität der Verknüpfungen überwinden kann ich werde darauf nicht weiter eingehen die bekannteste Repräsentation von Grafen sind hier die Adiaszenzmatrizen zu denen kommen wir später noch wir haben sogenannte Bäume zu denen werden wir auch noch kommen Entscheidungsbäume oder andere Pinäerbäume auf die werde ich jetzt nicht so genau eingehen weil da werden wir noch welche sehen wir haben eine sogenannte Halde, einen Hieb das vereint die Datenstrukturen eines Baumes mit den Operationen einer Warteschlange da werde ich auch nicht so genau auf eingehen die brauchen wir hier auch so nicht wirklich wir werden uns mit den Arrays am meisten befassen mit Listen und mit Grafen und Bäumen und es gibt noch die sogenannte Streuwertabelle das ist die sogenannte Hashtable die Hashtabelle ist eine spezielle Indexstruktur bei der die Speicherposition direkt berechnet werden kann werden wir noch sehen wenn wir uns ganz am Ende dieser Veranstaltung in einem Exkurs in die Blockchain begeben werden da wird uns das wieder über den Weg laufen ich möchte jetzt auch nicht zu viel Zeit damit zu verbringen ihnen Datenstrukturen im Detail zu erläutern mir war es einfach nur ein Anliegen das für diejenigen unter ihnen die das noch nie gehört haben das mal auf dem Tisch landet das wenn sie das programmatisch umsetzen wollen sie sich dessen bewusst sind dass sie nach dem welchen Datentypen sie verwenden Algorithmen anders laufen andere Ressourcen benötigen und anders zu verarbeiten sind ich habe es ja im Verlauf dieser Veranstaltung schon öfter anklicken lassen und auch gerade eben mit den Datenstrukturen nochmal implizient erwähnt um Machine Learning effektiv einzusetzen gilt es verschiedene Herausforderungen zu überwinden und die top Herausforderung ist unzureichende Quantität so wie Qualität von Daten wenn ich zu wenige Daten habe oder von der Qualität inakzeptable Daten habe brauche ich mit Machine Learning nicht anfangen das ist eine unangenehme Wahrheit die sehr viele Unternehmen, Geschäftsleitungen nicht wahrhaben möchten da werden Millionen in AI-Projekte investiert die zum Schluss von einem Startup investiert werden die gar kein AI haben das ich schweife ab aber kommen wir auf den Punkt zurück sie brauchen eine hinreichende Quantität und Qualität von Daten um einen Machine Learning Algorithmus welcher Art auch immer ordentlich zu implementieren wenn ihr Unternehmen das nicht hergibt dann beginnen sie mit einer Unternehmens Restrukturierung eine Automatisierung der Datenbestände das Aufbaus eines nicht redundanten einheitlichen Datenbankensystems bevor sie damit anfangen alles andere verbrennt Geld und mehr nicht es hilft ihnen nichts und es hilft ihnen auch als Angestellter nichts Machine Learning Algorithmen zu implementieren wenn die Daten nicht vorhanden sind oder die Daten die vorhanden sind einfach nichts taugen das ist eine unangenehme Wahrheit das ist eine Wahrheit wo man sich auch eingestehen muss dass das Unternehmen nicht so modern ist wie man es sich gerne zusammenspint in seinem Kopf da trifft die Realität wirklich auf die Vorstellung mancher Führungsposition und es ist einfach so wenn die Daten nicht quantitativ und qualitativ ausreichend sind dann hilft ihnen dieses ganze Data Science Feld überhaupt nicht da brauchen sie dann eine Unternehmens restrukturierung und den Aufbau eines EAMS was tatsächlich sie in eine wirtschaftliche Lage versetzt diese Methoden und Konzepte sinnvoll einzusetzen nehmen wir an obiges ist gegeben wir haben hinreichend viele Daten in einer notwendigen Qualität dann haben wir tatsächlich Probleme die sich wirklich mit dem Machine Learning selbst befassen und nicht aus der Organisation Struktur außen rum her geboren sind einfach mal an mit nicht repräsentativen Trainingsdaten setzen das ist der sogenannte Sampling Bias wenn ich das sagen wir mal neuronale Netzwerk mit Datentrainieren die für mein Problem nicht repräsentativ sind dann hilft mir das Ergebnis auch nicht da sind wir wenn wir an unseren Lebenszyklus zurückdenken an den Punkt verstehe bitte die Daten und das nächste ist da natürlich auch redundante oder irrelevante Daten zu haben und zwar nicht weil die Quantität und Qualität wichtig ist sondern weil der Algorithmus diese nicht benötigt oder diese für die Problemstellung irrelevant oder doppelt vorhanden sind was dann meistens dazu führt dass man entweder ein Over oder Underfitting der Daten hat wenn ich natürlich ein Algorithmus trainiere den entweder zu langen trainiere oder falsch trainiere das sind wir dann wirklich in den Mechaniken und Techniken des Machine Learning selbst drin und nicht mehr in der Org Struktur und um das ganze hier nochmal deutlich darzustellen wir machen hier ja top down ich habe ihnen hier mal die Schritte eines end to end real Daten Machine Learning Projekts aufgemalt an dem sie sich Schritt für Schritt entlang hangeln können und gewährleisten können dass sie nichts vergessen und ordentlich arbeiten Sie fangen als allererstes mal an mit einem Big Picture einen gesamten Überblick verschaffen was ist mein Unternehmen, was ist mein Problem was sind die Daten was ist denn die Problemstellung und wo befinde ich mich hier überhaupt was ist denn das Spielfeld als zweites ramen sie das Problem ein und definieren das ganze was ist denn mein Problem was ich Daten getrieben lösen möchte was ist meine Problemstellung meine kritische Geschäftsfrage die ich mittels Daten beantworten möchte dann wählen sie sich ein Performance aus an dem sie die Qualität ihrer Lösung messen können und dann setzen sie sich erst mal hin und denken nochmal drüber nach sie validieren kritisch die Annahmen die sie getroffen haben die Problemdefinition und die Selektionen von Performance Maßen und anderen Primissen die sie getroffen haben und erst dann und keine Minute vorher fangen sie an Daten zu sammeln eine isolierte Arbeitsumgebung zu erzeugen und die Daten bereitzustellen oder herunter zu laden je nachdem in welchen Umfeld sie arbeiten das ist von Essenz dass sie sich erst Gedanken darüber machen was ihr Problem ist und was sie möchten bevor sie blind loslegen und Geld und Ressourcen verschwenden was machen wir als nächstes als nächstes verschaffen wir uns einen kurzen Überblick über die Datenstrukturen ein Auszug daraus haben sie ja gerade gesehen wir erzeugen uns ein Test Set wir entdecken unsere Daten eine visuelle Daten-Explorationsanalyse analysieren Korrelationsstrukturen und machen eine experimentelle empirische Attributs-Kombinationsanalyse wo wir einfach feststellen können wo raus sind in unsere Daten beschaffen wie hängen die voneinander ab was sind da Erkenntnisse die ich daraus gewinnen kann und erst dann kann ich überhaupt erst damit anfangen die Daten-Learning-Algorithmen einzusetzen sie sehen es fängt sehr viel an mit Denken und klassischen statistischen Methoden Data Science ist kein neu erfundenes Rad nur weil es einen besseren Namen hat wie angewandte Statistik was machen wir als nächstes wir haben unsere Daten bereinigt das Problem ist sauber definiert die Daten sind aufbereitet und vorab analysiert und nun bereiten wir diese Daten und zwar als erstes werden die Daten bereinigt dann wird die Verarbeitung von Texts sowie kategorialen Attributen vorgenommen die Daten werden transformiert wir betreiben ein Featurescaling also eine Datenvariable-Inskalierung und dann generieren wir Transformationslinien in denen wir eben dieses Modell einsetzen können und danach wählen wir unser Modell aus also Modellselektion und Training das heißt wir suchen uns ein Modell implementieren das ganze trainieren das und evaluieren die Performance anhand des Training Sets und wir können auch sogenanntes Cross Evaluation nutzen um eben diesen ganzen Prozess zu verbessern da implementiert man einen Validierungsdatensatz der als neutrale Mittel gilt wenn das getan ist können wir ein sogenanntes Fine Tuning des Modelles vornehmen und dann können wir das ganze aufgelistet Sie können auch nur eins davon nehmen also 15.1 bis 15.3 können Sie sich eins aussuchen oder Sie können verschiedene Sachen kombinieren Sie haben Grid Search randomisierte Suchmethoden oder Ensemblmethoden die Sie verwenden können und Sie können anschließend eine Optimierungsanalyse Bester Modelle und Fehlermase fahren um eben das was Sie da implementieren noch zu optimieren das Sets wenn das dann alles erledigt ist können Sie das ganze in die Produktion überführen, implementieren und anwenden aber da ist das noch nicht vorbei das Datenprojekt hört dann noch nicht auf nur weil Sie ein Modell fertig trainiert haben Sie müssen das ganze monitoren Sie müssen das ganze in Stand halten das gehört ebenfalls zu einem professionellen Datenprojekt dazu diese ganzen Schritte die ich Ihnen hier jetzt aufgezeigt habe Sie müssen es befolgen garantiere ich Ihnen, dass Sie ein höherer Erfolg mit Ihrem Projekt haben werden wie wenn Sie einfach nur blind drauf los eiern das klingt jetzt wieder sehr nicht akademisch aber es ist einfach so Sie müssen sich vorher überlegen was Sie möchten Sie müssen ordentlich und strukturiert arbeiten um ein Datenprojekt zum Erfolg zu führen weil es hier eben keine kürzere Variante gibt die tatsächlich sinnvolle und verwertbare Ergebnisse liefert nun sind wir auch endlich soweit endlich endlich nach ganz viel top down und nach ganz viel außen herum uns mit den tatsächlichen Methoden des Machine Learnings auseinander zu setzen und ich habe Ihnen hier immer farbiger vorgehoben in welchem Bereich dieser Kategorisierungen diese Methoden die ich Ihnen vorstellen werde sich denn befinden wir haben hier jetzt die Klassifikationen diskrete Datensätze mit einem Label in einem überwachten Lernsystem sogenannte Classifications mit denen befassen wir uns als nächstes Klassifikationen sind diskrete, überwachte Machine Learning Methoden oder Probleme und die Grundlage jedes Algorithmus und das wird uns auch in den anderen Kategorien wieder über den Weg laufen ist der sogenannte Datensplit also die Aufteilung unserer Daten ein Test und in ein Training Set wenn Sie eine verbesserte Validierung erreichen möchten können Sie natürlich auch ein Test, Trainings und Validierungs Split machen und zudem gibt es einige Performance Scores bei der Klassifikation gibt es Binäre, das heißt korrekt oder incorrecte Klassifikation als auch multiple Klassifikation welche man anhand einer sogenannten Confusion Matrix aufzeigen und auswerten kann das bedeutet ich habe ein Bild eines Hundes und Binäre heißt es ist ein Hund oder es ist kein Hund als Beispiel was uns noch beschäftigen wird wenn wir uns mit einer Confusion Matrix befassen ist das was Sie aus der Standardstatistik kennen wenn Sie einen Hypothesentest machen Sie haben einen Typ 1 Fehler und einen Typ 2 Fehler ein False Positive und ein False Negative Error das heißt was wir in der Zeitreinanalyse auch schon gesehen haben ein Typ 1 Fehler ist das False Positive das heißt wie hier unten dargestellt ich sage jemandem er sei schwanger obwohl er es nicht ist und der Typ 2 Fehler ist der False Negative das heißt ich sage jemandem er sei nicht schwanger obwohl er es ist da haben Sie denke ich in Ihren Standardstatistik Vorlesungen schon etliche Beispiele davon gesehen ich habe mir halt gedacht ich mache nochmal ein hübsches Bildchen für Sie dass das eben auch noch mal ins Gedächtnis kommt und zeige Ihnen hier dann mal so eine Confusion Matrix das ist das was Sie hier in Rot sehen und ich habe Ihnen eine Selektion von Performance Maßen die Sie aus dieser Confusion Matrix ableiten können dazu geschrieben auf die werde ich jetzt nicht einzeln eingehen das können Sie sich selbst ansehen das haben Sie in Ihren Vorlesungsunterlagen enthalten Sie teilen quasi einfach eine Matrix auf und sagen okay der Zustand meiner Gesamtpopulation positiv und negativ und die Zustände meiner Vorhersagen positiv und negativ und daran kann ich ablesen wie viele positive Werte der Grundpopulation habe ich korrekt vorhergesagt aber ich habe den nicht das ist insbesondere dann interessant wenn ich Klassifikation in der Medizin mache hat ein Patient Krebs ja oder nein schlecht wäre es natürlich wenn ich einem Patienten der Krebs hat sage er hat es nicht also die Typ 2 Fehler sind hier sehr gefährlich weil lieber sage ich einem Patienten er habe Krebs und er hat ihn dann doch nicht wie dass ich einem Kranken sage dass er nicht krank und dieser stirbt daran also Sie sehen es ist nicht nur eine Confusion Matrix irgendwas Statistisches sondern das ist für die Anwendung je nach Domäne dieser Machine Learning Klassifikationsalgorithmen sehr relevant diese Matrix verstanden zu haben und auch die Bedeutung die da Inherent dahinter steht der nächste Punkt auf den ich noch eingehen möchte ist die sogenannte Datenanpassung also sogenannte Data Fitting Sie sehen ich habe hier mit steigender Komplexität Fehler die ich mache in meinen Trainingsdaten und wenn die Trainingsdaten mit steigender Komplexität also mit höheren Fitting weniger Fehler machen dann ist das schon mal gut das heißt mein Training funktioniert allerdings muss ich darauf achten dass wenn ich diesem Algorithmus neue Daten die er nicht kennt die nicht im Trainingsdaten selbst vorhanden sind gebe die Overfitter das sehen Sie hier die Testdaten sind unsere Orange Linie und so fahren die Orange Linie wie der steigt obwohl die grüne Linie unsere Trainingsdaten sinkt dann bin ich im Overfitting das heißt mein Algorithmus ist zu sehr auf die Trainingsdaten eingeschossen und macht dann Fehler wenn ich ihm neue Daten präsentiere wenn ich natürlich zu früh aufhöre diesen Algorithmus zu trainieren dann kann es natürlich sein dass ich das Fehler mache weil der Algorithmus noch nicht auf den Datensatz eingestellt ist im generellen das heißt es ist die Grätchenfrage des Machine Learnings oder auch bei neuronalen Netzen den richtigen Trainingsgrad den richtigen Punkt zu finden indem ich weder Underfitter noch Overfitter das können Sie hier sehr schön sehen und ich lasse das jetzt auch einfach mal so im Raum stehen wir beginnen jetzt einfach mal mit dem ersten Teil der Klassifikationen des Machine Learnings sogenannten Decision Trees Entscheidungsbäume sind geordnete gerichtete Bäume die Entscheidungsregeln als Baumdiagramm darstellen können die Darstellung entspricht einer sukzessiven hierarchischen Kaskade von Entscheidungen das heißt aufeinander folgende Entscheidungen und sie dienen zu automatisierten Klassifikation von Datenobjekten und zur Lösung Entscheidungsproblemen die zum Teil sehr komplex werden können ein Baum besteht immer aus Wurzelknoten inneren Knoten um mindestens zwei Blätter jeder Knoten präsentiert hier eine logische Regel und jedes Blatt eine Antwort auf diese Entscheidungsproblematik wo verwende ich jetzt Decision Trees wo kann ich das anwenden zum einen in der Stochastik bei bedingten Erwartungswerten bei automatisierten Klassifikationsproblemen wie gerade schon erwähnt im Data-Meining in der Entscheidungstheorie und in sogenannten BRMS also in Business Rural Management Systems die Managern auch helfen können komplexe Entscheidungen zu treffen jeder Knoten gibt ein Attribut wieder welches ausgelesen werden kann um die Klassifikation und die Klassifikation ist hier das Blatt eines Datenobjektes zu bestimmen automatisierte Induktion das heißt das ist die ML Variante zur manuellen Expertenspezifikation erfolgt Rekursiv und Top Down Expertenspezifikation bedeutet hier dass ich einen sehr erfahrenen Angestellten nehme oder einen Expertenanheure der eben diese Bäume per Hand aufsetzt es gibt aber auch die automatisierte Induktion in dem der Algorithmus diesen Baum selbst erzeugt es gibt hier verschiedene Klassifikationsmaße zum einen die Entropy und den Genie Index die Entropy wird uns später noch einmal über den Weg laufen was gibt es denn jetzt für Decision Tree Algorithms was gibt es denn für Algorithmen in den Entscheidungsbäumen es gibt den sogenannten Chite Algorithmus also die G-Square Automatic Interaction Detectors die sind aus dem Jahr 1964 dann gibt es die sogenannten Cards es sind Classification and Regression Trees das ist quasi die Erweiterung der Chites und eigentlich so das was heutzutage meistens verwendet wird, es gibt noch die ID3 also die iterative Dichotomizer Algorithmen und es gibt den C4.5 und den C5.0 das sind so die gängigen Algorithmen bei Entscheidungsbäumen die ich hier nicht im Detail vorstellen kann aber sollten sie in der Praxis solchen Problemen für den Weg laufen können sie sich da gerne einmal einlesen was ist denn jetzt der Vorteil eines Entscheidungsbaums er ist interpretierbar und erklärbar und er ist ein Zwischenschritt der häufig genutzt wird um komplexere Algorithmen zu optimieren was ist denn der Nachteil von diesen Entscheidungsbäumen wenn wir realwertige Datenräume haben ist die Klassifikationsgüte dieser Entscheidungsbäume einfach schlecht und die Größe der Bäume bei komplexen Problemen wird auch relativ umfangreich es gibt eine sogenannte Prunning Methode mit der man das in den Griff bekommen kann aber die Größe dieser Bäume bei komplexen Problemen ist nicht zu verachten und wir haben eine sehr hohe Anfälligkeit für Overfitting das sollte eben bewusst sein bevor sie sich dafür entscheiden Entscheidungsbäume zu implementieren was ist denn jetzt nun ein Entscheidungsbaum ich habe ihnen hier mal ein Entscheidungsbaum abgetragen indem es darum geht soll ich ein neues Jobangebot annehmen oder nicht da habe ich eben einen Wurzelknoten der mir sagt ist das gehalten mindestens 50.000 Euro wert ja oder nein bei nein lehne ich das Jobangebot ab und bei ja stelle ich mir die nächste Frage da kommen dann die Entscheidungsknoten und zwar muss ich mehr wie eine Stunde fahren falls ja lehne ich das wieder ab falls nein stelle ich mir die nächste Frage und zwar gibt es da Kaffee umsonst falls nicht gibt es halt auch keinen Job offer dann werde ich das ablehnen und wenn es mehr wie 50.000 Euro gibt wo ich nicht länger wie eine Stunde fahren muss und der Kaffee auch noch umsonst für mich ist dann nehme ich diesen Job natürlich an so kann man einen einzelnen Entscheidungsbaum aufbauen die Letter die sie sehen sind natürlich die Aktionen die daraus quasi sich ergeben Annahme des Angebots oder Ablehno jetzt haben diejenigen von ihnen die natürlich sich mit Data Science schon intensiver befasst haben schon gemerkt ich habe es ja nur von Entscheidungsbäumen gesprochen von Decision Trees und ich habe noch nichts von Random Forests erzählt und das machen wir jetzt hier Decision Trees versus Random Forests die Erweiterung der Klassifikationsgüte im Einsatz von mehreren Entscheidungsbäumen welche aus auch als Entscheidungswald also Decision Forests bezeichnet werden ist eben nicht verkehrt sag ich mal sie können diesen einzelnen Entscheidungsbaum erweitern indem sie mehrere Entscheidungsbäume simultan verwenden sogenannte Decision Forests und diese können sie mit Ensemble Techniken optimieren hier gibt es das Boosting, Bagging und Arking und das ist natürlich auch mit einem neuronalen Netzwerk kombinierbar ich habe ja vorher schon gesagt dass die Entscheidungsbäume teilweise als Vorstufe zu weiteren Machine Learning Algorithmen genutzt werden z.B. Tree Based Null Networks das Problem was sie hierbei haben wenn sie mit multiplen Entscheidungsbäumen arbeiten die relativ umfangreich werden können dass die Interpretierbarkeit durch den Menschen gar nicht mehr so einfach ist in meiner beruflichen Laufbahn habe ich bisher sehr wenige Menschen kennengelernt die in höheren Dimensionen gleichzeitig denken können und selbst dann wird das noch schwierig wenn sie z.B. 15 solcher Bäume simultan einsetzen sich das selbst noch vorstellen zu können d.h. wenn sie von einem einfachen Entscheidungsbaum wie bei unserem Job Angebot weggehen und mehrere Entscheidungsbäume gleichzeitig verwenden ist die Interpretierbarkeit schon ein Thema über das man mal diskutieren kann was ist denn nun ein Random Forest randomisiert man nun die Erzeugung von Entscheidungsbäumen durch einen ML Algorithmus erhält man sogenannte Zufallswälder also auch sogenannte Random Forests auf Basis von gewissen Maßen wird hieraus eine Entscheidung automatisiert generiert und hierbei werden meist Bootstrapping Verfahren angewandt d.h. wir haben festgestellt ein Baum ist ein bisschen wenig das ist zu einfach wir nehmen multiple Bäume und wenn wir die Erzeugung dieser Wälder durch ein ML Algorithmus randomisieren und automatisieren erhalten wir Random Forests die automatisch Entscheidungen generieren können ich habe für diejenigen die sich das jetzt im Kopf nicht vorstellen können mal ein Sinnbild hier ihnen noch mitgebracht wir haben ein Datenset und aus diesen Datensets generieren wir zufällig decision trees wir machen Entscheidungsbäume zufällig aus diesem Datensets heraus ein Stück davon und dann wird eine Votierungsregel implementiert entweder der Durchschnitt oder die Mehrheitsbestimmung da sind wir schon fast in der Demokratie die eben aus diesen N Ergebnissen die diese N verschiedenen Zufallsbäume mit sich bringen ein finales Ergebnis herausarbeiten was nächstes befassen wir uns mit einer die Art-Klassifikationsmethode nämlich den sogenannten Support Vector Machines SVMs und das ist eine andere diskrete Klassifikationsmethode wie ich es bereits gerade erwähnt habe, bitte vermeiden Sie den Begriff Stützvektormaschine diese deutsche Übersetzung ist nicht gebräuchlich was ist denn jetzt nun ein SVM eine Support Vector Maschine ist eine Methode welche eine Menge von Objekten in Klassen unterteilt dass um die Klassen Grenzen herum ein möglichst breiter Bereich frei von Objekten bleibt und das nennt sich auch Large Margin Classifier und das ist ein rein mathematisches Verfahren der Mustererkennung und jedes Objekt wird durch einen Vektor in einem Vektorraum repräsentiert welche durch die Support Vector Maschine mittels einer Hyper Ebene in Klassen geteilt wird die Ankündigung dass sie die Standard Mathematik lineare Algebra und Statistik einholt bewahrheitet sich nun jetzt wird es ein bisschen wieder mathematischer aber wie ich denke wir führen sie da ganz gut durch jetzt schauen wir uns doch erstmal an was ist denn eine Hyper Ebene zumindest in 2 Dimensionalen ist das nichts anderes wie eine Lineare gerade sofern es linear ist oder eben eine Kurve die nicht linear ist wir sehen hier wir haben grüne Punkte und wir haben rote Punkte und wir möchten die irgendwie voneinander separieren und in unserem linken Bild reicht es indem wir da einfach eine gerade durchmalen und unserem nicht linearen Beispiel sehen wir da ist das keine gerade mehr aber deswegen heißt das Ding auch Hyper Ebene weil wann sie jetzt nun höher dimensionierte Datensätze haben dann haben sie entweder eine Ebene oder eben ein 3 Dimensionalen Trennkörper auch immer je nachdem wie der Datensatz beschaffen ist wir bleiben hier erstmal bei unserem 2 Dimensionalen Koordinatensystem und wir sehen wir können den linken Datensatz mit einer gerade drinnen und den nicht linearen naja wird halt ein bisschen komplizierter aber sie sehen wir versuchen diesen Datensatz in 2 Teile zu teilen und zu klassifizieren ich habe es gerade ja auch schon gesagt es gibt Lineare als auch nicht linearere Support Vector Machines und die Versicherung welche ich Ihnen hier vorstellen werde werden wir anhand eines b näheren linearen Problems ördnern und als Beispiel soll hier der E-Mail Spam Filter dienen einfach nur eine E-Mail hat jeder von Ihnen wahrscheinlich schon einmal geschrieben und ein Spam Filter kennt auch jeder von Ihnen und wenn sie in einem Unternehmen tätig sind hat jeder in der Regel einen vorgefertigten Spam Filter auf seine Unternehmens E-Mail Adresse sitzen oder um diese Adresse herum jetzt nun einfach mal folgende E-Mails der Mitarbeiter eines Unternehmens sollen automatisiert sörrerseitig mittels eines Spam Filters gefiltert werden es soll eine Möglichkeit zur Klassifikation der E-Mails gefunden implementiert und optimiert werden das heißt sie haben jetzt ein Problem sie müssen E-Mails filtern und sie müssen jetzt sagen diese E-Mail ist ein Spam Weil und diese E-Mail ist kein Spam Weil und das müssen sie für aber tausende E-Mails gleichzeitig tun wie mache ich das denn jetzt nun wir haben als erstes mal einen Instanzenraum X indem eben Datenpunkte drin liegen und jede E-Mail als binäre Vektor dargestellt enthalten ist das bedeutet jedes Wort in dieser E-Mail bekommt einen Wert zugeordnet einen binären Wert 0 und 1 und diese 0,1-Vektoren sind unsere X-Vektoren und die Länge dieser Vektoren sind eben die Punkte die in unserem Instanzenraum enthalten sind zudem haben wir DeFeatures das heißt halt andere Variablen und Klassifikationen und Zufallsvariablen idealerweise haben wir da ganz ganz viele davon so ca. um die 100.000 und wir haben einen Klassenraum Y und in diesem Klassenraum ist eben drin ob das ganze jetzt ein Spam ist oder nicht das Ziel dieser ganzen Übung ist jetzt nun die Klassifizierung eingehender E-Mails in Spam oder Ham also Nicht Spam E-Mails und daher um das zusammenzufassen ergibt sich ein binäres lineares Klassifikationsproblem wie ich das bereits schon gesagt habe wir haben eine E-Mail und wir müssen der E-Mail jetzt eine Klasse zuordnen Spam oder Nicht Spam und das machen wir anhand eben eines Instanzenraumes in dem wir jedem Wort die jeder E-Mail einen binären Wert zuordnen und eben jede E-Mail als binären Vektor darstellt binäre Klassifikation folgt hier mittels eines linearen Modelles mit einem Grenzwert und das habe ich Ihnen hier unten mal dargestellt wir haben eine Funktion die eben unser binären Vektor X aufnimmt und die eben den Wert plus 1 annimmt wenn die Gewichtete Summe aller unsere binären Wörter eben einen gewissen Grenzwert überschreitet das heißt wir haben zum Beispiel böse Wörter wie Sex, Bitcoins Drogen, Viagra die bekommen sich etwas aus sie bekommen positive Werte zugeordnet und wir haben Werte die bekommen eine Null zugeordnet das ist zum Beispiel Akte, Unterschrift oder eben normal gebräuchliche Wörter und die werden hier Gewichte zusammen gezählt sie können natürlich sagen Wörter wie Drogen, Waffenverkauf oder sonstiges bekommen eine höhere Gewichtung wie jetzt zum Beispiel das Wort Viagra und je nachdem gewichten sie die Wörter jeder E-Mail und wenn diese Gewichtung diese Wörter, diese Summierung einen gewissen Grenzwert überschreitet wird das Ganze als plus 1 also als Spam klassifiziert und als minus 1 wenn diese Grenzwert eben nicht überschritten wird, dann ist es keine Spam E-Mail und die Inputs für das Ganze sind eben diese reelle Vektoren X die eben mit der euklidischen Distanz normalisiert werden und eben den Labels Y, wobei Y hier unsere Spam oder Ham Labels sind das Ziel ist es jetzt nun einen Gewichtungsvektor W zu finden der eben das Ganze hier ordentlich abbilden kann und dazu benutzen wir eben einen Linearen Classifier, so wie hier dargestellt das heißt, wir haben hier einfach nur unsere Funktion F von X die eben diese Kategorisierung vornehmen soll als das innere Produkt und unseren X oder dem Vektor W und dem Vektor X das ist das ganze Geheimnis dahinter ich habe nachdem das doch ein bisschen kompliziert für diejenigen ist, die es nicht so mit Lineare Algebra haben dann werden sie sich in den Maschinen Learning Algorithmen aber generell etwas schwer tun, da wird sie die Lineare Algebra wieder einholen ich habe Ihnen hier das mal Grafisch dargestellt wir haben hier unseren Vektor X1 das ist eben ein Wort einer E-Mail und den Vektor X2 das ist ein anderes Wort einer E-Mail und wir haben ein Gewicht W und wir haben hier unsere gerade WX gleich Null und je nachdem was hier am Ende dabei rauskommt haben wir eine Spam-Klassifikation oder eine Hams-Klassifikation so wir wollen unsere Daten natürlich separieren, das heißt wir haben einen Separationsvorgehen zum Beispiel eben für unser X1 Y1, das heißt Wörter X, die ich eben habe die in den reellen Zahlen da sind wird eben ein Label minus 1 und plus 1 zugeordnet und daraus folgt ein inneres Produkt so wie das hier eben dargestellt ist und dann finde ich eine Separationslinie schön, ich habe das Ihnen hier mal grafisch nochmal dargestellt wir haben unsere roten Punkte bitte beachten Sie, dass die blauen Punkte ebenfalls rote Punkte sind, die ich zur Visualisierung anders dargestellt habe für schwarze Punkte und wir müssen die jetzt irgendwie separieren voneinander mit eben einer Separationslinie die wir wie gerade gesehen haben eben dieses innere Produkt darstellt W mal X ist eben diese Summe, die Sie hier unten sehen können und jetzt ist natürlich die Frage wie lege ich denn diese Linie in mein Koordinatensystem um eben eine richtige Klassifikation vornehmen zu können wenn wir jetzt die Senkrechte angucken, diese Senkrechte orange Linie die ist vom Punkt C nicht sehr weit entfernt, d.h. der Punkt C ist hier nicht sehr vertrauenswürdig während der Punkt A sehr weit weg von dieser Separationslinie liegt und sehr vertrauenswürdig ist d.h. die Frage ist jetzt wie finde ich die richtige Linie wie finde ich die richtige Separationslinie um diese Klassifikation ordentlich vornehmen zu können wie löse ich jetzt dieses Problem und zwar finde diejenige Hyper Ebene welche die größte Margin Gamma besitzt wobei eine Margin die Distanz das nächst liegenden Datenpunkt ist zur Hyper Ebene darstellt daher stellt sich nun ein Maximierungsproblem bezüglich der Margin ich klicke nochmal 2 Folien zurück sogar 3 Folien zurück wir sehen hier unsere Separationslinie zwischen Ham und Spam das ist hier diese Orange Linie das ist unsere Hyper Ebene WX gleich Null das ist in dem Fall hier die Separationsebenen wir sehen, dass das X2 ein Spam Wort ist oder eine Spam Email ist und das X1 sehen wir hier oh das ist eine gute E-Mail die ist in Ordnung und wir sagen wir berechnen ein inneres Produkt W mal X für alle Daten und Labels die wir haben und daraus ergibt sich die Separationslinie und wir haben hier aber das Problem dass wir diese Linie erstmal finden müssen weil es natürlich mehrere Wege gibt hier eine Linie reinzulegen die das kann und wir haben gerade gelernt dass der Abstand zwischen den Punkten und meiner Linie die Margin darstellt und wir eben so eine Margin haben wollen die so groß wie möglich ist so das heißt ich möchte für meine Hyper Ebene eine Margin finden die zu einer punkte Wolke den maximalen Abstand hat das heißt wir haben hier ein Maximierungsproblem und ich hab das Ihnen hier in einer anderen Grafik nochmal dargestellt wir haben hier unsere Separationsgeraden A und B und wir haben eine Margin um diese gerade herum und Sie sehen, dass wenn ich die gerade A nehme ich eine wesentlich größere Breite um die gerade außenrum habe in der keine Datenobjekte liegen wie bei der gerade B zum Beispiel das heißt die gerade A wäre in diesem Fall besser geeignet wie B das heißt wir kommen zurück zur Frage wie groß ist denn der Abstand von einem Punkt zu unserer Geraden und wie maximiere ich meine Margin Gamma und da kommen wir zurück zu Linie an Algebra wo Sie sehen können dass sich den Abstand zwischen 2 Vektoren A und B durch das Punktprodukt eben ausrechnen kann wie hier eben dargestellt die Länge A mal die Länge B mal den Cosinus zwischen den beiden Vektoren nehmen und dann kann ich das bitte ausrechnen wie sieht das denn ganz jetzt nun grafisch aus wir haben unsere Separationslinie L wir haben unseren Gewichtungsfaktor unseren Gewichtungsvektor W und wir haben unseren Punkt A und ich möchte wissen ok wie sieht das Ganze denn aus ich hab zum ein den Abstand der gerade L zu unserem Ursprung 0,0 und ich habe unseren Punkt A unserem Punkt H und ich möchte jetzt die Distanz haben D von A zu L das heißt ich möchte wissen wie weit sind den A und H diese Distanz möchte ich denn bitte haben wie weit ist denn mein Punkt A von der Separationslinie L weg die meine E-Mail A trennt zwischen Spam und Nichtspam für diese Separationslinie in der Grafik die ich Ihnen gerade gezeigt habe gilt Wx plus B ist gleich 0 und das ist hier in dem Fall W1 x1 plus W2 plus x2 plus B wie ich das Ihnen gerade gezeigt habe und unserem Punkt A und ich berechne hier die Distanz und für die Distanz ich habe Ihnen das hier grafisch einmal dargestellt wie das Formal von Statten geht ich werde jetzt nicht näher darauf eingehen ich denke lineare Algebra kann jeder von Ihnen und ansonsten müssen Sie sich das halt mal ausrechnen ich berechne auf jeden Fall mein Punkt A zu meiner Separationsgerade L und für die Vorhersage gilt demnach das Vorzeichen diese gerade mit Konfidenzniveau Wx plus B mal Y und für den I-Ten-Tatenpunkt gilt eben, dass die Margin dieses Datenpunkt nichts anderes ist wie WxI plus B mal YI und die größtmögliche Margin ist daher die Maximierung dieses Gewichtungs- Vektors W während ich die Margin minimiere d.h. ich möchte die minimale Margin bei maximalen W d.h. ich möchte die maximale Margin eben für jedes I und dafür, dass jedes gelabelte Datenpunkt hier in unserem Datensatz minimum die Margin Gamma hat, wie es hier unten eben dargestellt ist und genau dieses Maximum findet eben dieses Support-Vektor mal schön ich habe Ihnen hier das nochmal Grafisch dargestellt wir haben hier unsere Separationslinie Wx minus B gleich null und Sie sehen, dass der blaue Punkt und der grüne Punkt der genau am Rande der Margin liegt eben Minimum diese Margin als Abstand haben wenn nicht größer und ich habe Ihnen ja vorher gezeigt es gibt nicht nur eine lineare Hyper-Ebene es gibt auch nicht lineare Hyper-Ebenen hierfür für nicht lineare Interaktationen gibt es den sogenannten Kerneltrick welcher durch Vladimir Envapnik bekannt gemacht wurde und hier wird das Punktprodukt der Vektoren durch nicht linear spezifizierte kerndichte Funktion ersetzt was es eben erlaubt nicht lineare höher dimensionierte Datensätze ebenfalls zu klassieren und eben einer Ham- oder Spam-Klasse zuzuordnen und nicht lineare SVMs sind für die Veranstaltung folgen aber demselben Ziel der Klassifikation der Daten wie wir es eben gesehen haben für unsere Ham-Spam-Email-Filter ich recapituliere das Ganze noch einmal ich springe hier noch einmal ein guter Stück zurück hierher wir haben verschiedene Emails die hier reinkommen Spam und Ham-Emails und wir möchten diese Emails klassifizieren und wir möchten die einteilen in sind es Spam-Emails oder nicht und wir machen das Ganze mit einer Separationslinie wir haben hier A oder B und wir haben gerade gelernt dass wir diejenige Linie nehmen sollen welche eben die Margin maximiert und wir sehen hier dass die gerade B einen sehr geringen Abstand hat zu den Punkten während bei der gerade A die Margin eben maximiert ist wie das nun formal gerade gezeigt und wir sehen dass die Support-Vector-Maschine die Margin in der Art bestimmt dass der minimale Abstand zwischen jedem Punkt und der Separationslinie gleich Gamma ist das bedeutet wir suchen uns eine Linie in der Art dass jeder Punkt Min Gamma entfernt von dieser Linie ist und dieses Gamma maximieren wir der Vorteil davon ist je größer dieses Gamma ist desto verlässlicher ist unsere Separation und desto sauberer ist die Einteilung zum Beispiel der Emails in Spam und nicht Spam damit sind wir mit der Klassifikation am Ende und wir befassen uns jetzt mit den stetigen Datensätzen des Supervised Machine Learnings nämlich den Regressionen Regressionen sind stetige Supervised Machine Learning Methoden oder Probleme was eine normale lineare Regression ist haben wir in unserer Vorlesung zur Zeitrein-Analyse ja schon ausführlich erörtert und wo jetzt der Unterschied ist zu einer linearen Regressionsgleichung zu den anderen Methoden dieses Kapitels sehen wir gleich wir beginnen hier jedoch erstmal dass wir sehen können hier gibt es Regressionsfehlermaße sowie lineare Regressionsmodelle das OLS CLRM und ich möchte hier erstmal einige dieser Fehlermaße vorstellen bevor wir fortfahren ich habe hier einen Auszug mitgebracht da gibt es wesentlich mehr wie die die ich ihnen hier zeige ich gebe ihnen einfach mal die die standardmäßig hauptsächlich verwendet werden und diese Klassifikation können mittels Regressionsfehlermaßen erroiert werden das heißt das ist ein Maß dafür wie gut oder schlecht ich denn diese Klassifikation vorgenommen habe und es gibt hier zum Beispiel den mean absolute error den mean squared error und den root mean squared error die werde ich ihnen hier erstmal vorstellen der mean absolute error ist nichts anderes wie der Schnitt über die Abweichungen die absoluten Abweichungen zwischen meinem echten Datenpunkt und meiner Schätzung ich denke also haben wir in den linearen Kapiteln in der 2-3-Analysis schon gesehen dass ich ja eine Punktebrücke habe da lege ich eine gerade rein und dann habe ich meine Abweichungen zwischen meinen realen Datenpunkten und meiner gerade und genau das misst mein mean absolute error auch ich habe mein realen Datenpunkt yi und ich habe meine Schätzung yi und da den Betrag davon also das absolute davon aufsummiert und durch die Anzahl geteilt gibt eben mein mean absolute error der Nachteil davon ist dass das MAE keine Bestrafung für Outlierer, das heißt große Fehler besitzt wenn wir uns jetzt den mean squared error anschauen ist es natürlich so dass wir diese Abweichungen quadrieren das ist das was wir aus der linearen Regressionsanalyse ebenfalls kennen das ist von der Systematik das gleiche wir summieren und machen einen Durchschnitt über die quadrierten Abweichungen für große Werte gibt es natürlich noch größere Werte weswegen wir hier eine Bestrafung für große Fehlerwerte sogenannte Outlierer haben das Problem was wir haben ist dass wir eine Quadratur vornehmen und diese nicht mehr wirklich interpretieren können daher gibt es den root mean squared error RMSE was nichts anderes ist wie die Wurzel der MSE was bedeutet dass wir hier eine y Dimension wieder herstellen das heißt die Fehlerwerte in y Dimension angeben und somit auch interpretieren nachdem wir uns im laufe dieser veranstaltung ja schon ausführlich mit dem normalen CLRM Regressionsmodell befasst haben beschäftigen wir uns hier jetzt mit der sogenannten logistischen Regression und Klassifikationen mittels dieser logistischen Regression verwendet man dann sofern die Annahmen des klassischen Regressions sind beispielsweise normalverteilung der residuen homoskedastizität und die ganzen anderen Eigenschaften die wir im laufe dieser veranstaltung schon kennengelernt haben das sogenannte Logitmodell löst hier zuverlässiger Probleme welche eben mittels des klassischen Regressionsmodells zu Fehlspezifikationen führen kann unter der Bedingung dass keine Multikolinearität vorliegt das bedeutet dass eine Lineartransformation einer anderen Inputvariablen ist es gibt noch eine Erweiterung der Logitmodelle das sind sogenannte Probitmodelle auf die wir hier auch nicht eingehen werden wo wende ich denn diese Logistic Regressions an ich kann wieder unsere E-Mails BAM Filter Klassifikation damit machen ich kann Credit Defaults also Credit Ausfallbestimmungen vornehmen, Diagnostik in der Medizin und eben die anderen Bereiche und wie funktioniert das denn jetzt genau die abhängigen Variablen sind meist diskret während die unabhängige Variable ein beliebiges Galniveau aufweisen kann normalerweise geht man von Dichotom also binären abhängigen Variablen aus oder zerlegt diese zuvor mittels Dummy-Variablen solche und kodiert diese eben mit 0 und 1 und die Modellierung solcher Variablen kann zwar mittels des klassischen Regressionsmodells so her sage der Wahrscheinlichkeiten interpretiert werden allerdings ist es jedoch so dass gerade bei diesen Klassifikationen wir entweder eine 0 oder eine 1 haben möchten und bei dem klassischen Modell halt auch Werte außerhalb dieses Bereich es möglich sind und das sind einfach ich sage mal Eigenschaften die wir nicht möchten und was mache ich jetzt bei der Logistischen und Regression durch Transformation des Erwartungswertes der abhängigen Variablen löst das Logit-Modell also die logistische Regression diese Problematik und ich bekomme hier eine binomiale logistische Regressionsfunktion die ist hier grafisch oder formal einfach mal dargestellt und für diejenigen die sich schon ein bisschen mit Deep Learning und Neuronalen Netzen auseinandergesetzt haben den müsst jetzt hier ein Licht aufgehen weil man stellt nämlich fest dass dies die Siegmeutfunktion ist welche wir eben im Kapitel zur Neuronalen Netzen noch kennenlernen werden, das ist eine Aktivierungsfunktion derer wir uns später noch bedienen werden und ich habe ihnen hier einfach mal ein Beispiel mitgebracht wie denn so eine logistische Funktion eben diese Siegmeutfunktion aussehen kann wir haben hier auf der Y-Achse die Wahrscheinlichkeit ein Examen zu bestehen und auf der X-Achse die Stunden die sie da benötigen zum Lernen können Sie sehen halt hier mit welcher Wahrscheinlichkeit Sie dieses Examen eben bestehen werden unter der Bedingung der Stunden die sie hier reingesteckt haben dafür können Sie das ganz gut benutzen wir fangen jetzt direkt an mit dem nächsten Teil und zwar dem Clustering und das Clustering ist unsuperweist Learning mit keinen Labels kreten Datensätzen an was ist denn jetzt Clustering Clustering sind wie gerade eben schon gesagt das krete unsuperweist Machine Learning Methoden oder Probleme und Clustering Algorithmen also Ballungsanalysen sind Verfahren zur Entdeckung von Ähnlichkeitsstrukturen in großen Datenbeständen welche auch als Cluster bezeichnet werden und ist eine Disziplin des sogenannten Data Mining im Gegensatz zur Klassifikation also zu dem was wir gerade kennengelernt haben werden hier neue Gruppierungen der Daten gefunden also Pattern Recognition betrieben ich fasse das nochmal zusammen in der Klassifikation bekommen wir Labels mitgeliefert da habe ich ein Bild von einem Hund und ich habe ein Label das tatsächlich sagt das ist ein Hund und wenn ich jetzt Clustering betreibe bekommt der Algorithmus nur ein Bild eines Hundes stellen das ist ein Tier und das ist ein Hund das ist jetzt etwas plakativ aber der große Unterschied zwischen Clustering und Classifications ist eben das kein Label vorhanden sind und die Clustering Algorithmen diese Patterns diese Muster und diese Gruppierungen selbst finden muss ich habe ihnen hier einfach mal eine Übersicht der Cluster Verfahren mitgebracht sie haben eigentlich vier große Kategorien die Grafentheoretischen Cluster Hierarchische Cluster die man aufteilen kann in Divisiv und Agglomerativ sie haben partitionierende Cluster Verfahren hier können sie unterschieden zwischen Austausch Verfahren und Etterierenden Minimal Distanz Verfahren und sie haben optimierende Cluster Verfahren nachdem wir hier eine Top-Down Veranstaltung machen habe ich ihnen hier einfach mal Beispiele der jeweiligen Kategorien mitgebracht bei partitionierenden Cluster Verfahren haben sie den K-Means Algorithmus K-Means++ den K-Median Algorithmus mit Manhattan Distanzen K-Medioids den sogenannten PAM Algorithmus FACISIS EM Algorithmus und Affinity Propagations wenn sie die hierarchischen Cluster Verfahren sich anschauen haben sie die Diana Analyse Distanz und Ähnlichkeitsmaßes Single Linkages und Wortmethoden bei der Dichte basierten Cluster Verfahren haben sie eben den DB Scan Algorithmus, Optics und eben Maximum Margin Clustering das ist ähnlich zu den Support Vector Machines nur eben auf Cluster Rings umgemünzt, aber so sie können das ganz grob, ich möchte mich jetzt nicht aus dem Fenster lehnen aber grob können sie das miteinander vergleichen und sie haben kombinierte Cluster Verfahren da haben sie die Spektral Clustering also das sind Grafenknoten mit Adjacensen Matritzen sie haben MultiView Clusters und sie haben den sogenannten Burke Algorithmus und Bee Cluster Rings und ich möchte Ihnen hier nur ein Teil davon vorstellen ich bin jetzt auch relativ schnell drüber gegangen einfach der Zeithalber und meine Aufgabe ist es ja Ihnen mal zu zeigen welche Methoden in welche Kategorie und zu welcher Überkategorie des Machine Learnings gehört also wegen bin ich da relativ schnell drüber gegangen was ich Ihnen hier jetzt allerdings vorstellen möchte weil der ist relativ bekannt und sehr gängig, das ist der sogenannte K-Means Algorithmus und der K-Means Algorithmus ist ein Verfahren zur Vector Quantisierung zum Zwecke der Cluster Analyse und was wird da gemacht was ist ein K-Means Algorithmus wir haben eine gewisse Menge ähnliche Objekte und aus dieser Menge ähnliche Objekte wird eine Anzahl von K-Gruppen gebildet K ist das was im Namen steht K-Means und ich bilde aus einer Anzahl von Objekten, aus einer Menge aus einer Datengruppe eben aus einer Datenwolke K-Gruppen das habe ich Ihnen unten hier mal dargestellt dass Sie Originaldaten haben und wie der K-Means Cluster diese Daten gruppiert und wie eben auch dieser Erwartungswert Maximierungsalgorithmus das macht einfach nur dass Sie das mal gesehen haben wir werden uns hier im Teil zur Python-Programmierung noch intensiver damit befassen und ich möchte Ihnen jetzt erst einmal vorstellen was macht ein K-Means Algorithmus was mache ich da denn überhaupt also das praktische Vorgehen ist folgendes ich bestimme ein K ich lege fest wie viele Gruppen möchte ich denn eigentlich haben dann nehme ich mal ein Datensatz und teile den willkürlich also zufällig in Gruppen ein das heißt ich nehme jedem Punkt in meiner Datenwolke und füge dem ein Cluster zu das heißt ich teile meine Punkte zufällig in Cluster ein und danach iteriere ich der Schritt 3 wird so lang ausgeführt bis sich diese Cluster, bis sich diese Gruppen eine Teilung nicht mehr verändert und zwar berechne ich den Cluster Schwerpunkt mittels Mittelwertvektoren die Punkte die sich in diesem Cluster befinden deswegen heißt der Algorithmus auch K-Means das Min zieht sich hier auf den Mittelwert und ich ordne die Punkte demnächst gelegenen Cluster zu das wiederhole ich so lang bis sich diese Cluster nicht mehr verändern die theoretische Problemstellung die jetzt hinter diesem Praktikeransatz steht ist halt den Datensatz so in Ka-Partitionen zu teilen, dass die Summe der quadrierten Abweichungen von den Cluster Schwerpunkten minimal ist wie nehme ich jetzt diese Minimierung vor und zwar indem ich ein Optimierungsproblem der nachstehenden Funktion habe diese Funktion nimmt eigentlich die Abstände der Punkte zu meinem Schwerpunkt und quadriert diese, summiert die auf und das möchte ich minimiert haben Sie merken, dass die ganzen Machine Learning Algorithmen ein Problem zu tun haben und dass wir bei sehr vielen Ansätzen hergehen und Abstände zwischen Punkten und gewissen vorgefertigten Maßen minimieren oder maximieren müssen, damit müssen sie sich leider abfinden, nachdem wir hier nicht sehr tief einsteigen können, dem Umfang entsprechend verlassen wir hier die Cluster Rings auch schon wieder, wir werden hier im Teil Python noch einen K-Means Algorithmus selbst implementieren und wir fahren hier jetzt fort weiter im Unsupervised Learning mit den sogenannten Embeddings oder eben Dimensional Reductions Dimensionsreduzierenden Verfahren, die für Unsupervised Machine Learning No Label stetig anfallen und was sind Embeddings Embeddings sind stetige Unsupervised Machine Learning Methoden oder Probleme, wie ich es eben gerade schon genannt habe und man nutzt diese Methoden zu Reduktion der Anzahl der betrachteten Zufallsvariablen durch Erzeugung von sogenannten Principle Variables die allerdings in der Interpretation nicht mehr ganz so einfach sind Sie haben hier 3 Strategien Sie können Filtern, Sie können Wrappen und Sie können Embedden und wir stellen Ihnen hier jetzt einfach mal die ich denke mal die bekannteste Variante der Dimensionsreduzierung vor und zwar die Principle Component Analysis also die Hauptkomponentenanalyse Hauptachsentransformation oder Singulärwertzerlegung PCA und was ist das denn was ist die Principle Component Analysis ist der Multivariaten Statistik zu zuordnen und dient zur Strukturierung umfangreicher Datensätze und dies geschieht durch eine möglichst geringe Zahl von Linearkombination wenn ich hier vom umfangreichen Datensätzen spreche dann meine ich umfangreiche Datensätze 2-3 Exelsheet sind keine umfangreichen Datensätze sondern wenn sie wirklich massive Datenmengen haben die sie so nicht mehr analysieren können oder die sie ich sage mal nur schwer mit Standardmethoden auswerten können dann ist die PCA natürlich sehr spannend weil sie die Variablenzahl von mehreren Tausend auf mehrere Dutzend runterbrechen können oder teilweise auch nur auf 2-3 Variablen tatsächlich arbeiten können viele von ihnen denken sich jetzt okay es gibt ja noch Faktoranalyse das ist doch ungefähr derselbe nicht ganz also der Unterschied zur Faktorenanalyse ist folgender die Hauptkomponentenanalyse also Principle Component Analysis beginnt damit dass sie einen niedrigdimensionalen linearen Unterraum untersuchen dass er auch der Sinn davon der die Daten am besten beschreibt dieser Unterraum ist linear ein lineares Modell beschrieben werden und ist daher auch diskriptiv und explorativ die Faktorenanalyse hingegen lebt ein lineares Modell zu Grunde und untersucht die beobachtete Covariance und Korrelationsmatrix und versucht diese eben zu approximieren und fällt daher unter modellbasierte Verfahren das ist einer der Hauptunterschiede die sie beachten mögen und ein anderer ist das PCI die sie vorgibt gegeben durch die absteigenden Eigenwerte der Covariance oder Korrelationsmatrix und in der Faktorenanalyse wird zunächst die Dimension des Faktoraums festgelegt und alle Vektoren stehen gleichberechtigt nebeneinander das haben sie bei der PCI nicht, da sind die eben geordnet und in der Faktorenanalyse eben nicht beachten wir nun das Statistische Modell was hinter der PCI steht als erwartungswert zentrierte Zufallsvariable in X, J gegeben und diese sind in einem p-dimensionalen Zufallsvektor X zusammengefasst und verfügen über den 0-Vektor als erwartungswert Vektor sowie eine P-Kreuz-P-Symmetrische und positiv semi-definite Covariancematrix Sigma und die Eigenwerte Kleinlamp da J gleich von 1 bis P sind absteigend der Größe nach sortiert und bilden die Diagonalelemente und die Zugehörigen Eigenvektor und bilden die Diagonalematrix großes Gamma und dann gilt eben das die Diagonalmatrix Großlamp da, gleich die transponierte Gammamatrix ist mal Sigma mal wieder Gamma und wird der Zufallsvektor X linear transformiert dass dieser Zufallsvektor eben auf Y gleich Gamma transponiert mal X abgebildet wird ist eben die Covariancematrix von Y gerade gleich der Diagonalmatrix von Lamp da was bedeutet das jetzt nun für den Algorithmus an sich wir legen die erste Achse so durch die Punkte Wolko dass die Varianz der Daten in diese Richtung maximal wird und die zweite Achse steht orthogonal also senkrecht auf der ersten und die Varianz dieser Achse ist eben die zweitgrößte und so weiter und die totale Varianz ist hier ein Maß für den Informationsgehalt das Problem ist das was ich eingangs schon erwähnt habe dass wir keine inhaltliche Interpretation der Hauptkomponenten vornehmen können weil das eine rein mathematische Transformation ist wie keine interpretatorischen Maßgabe folgt und ich habe Ihnen das hier mal grafisch mitgebracht ich denke mit der Statistischen Beschreibung können einige was anfangen aber wahrscheinlich nicht alle wir haben einfach mal ein Bild gemalt wir haben hier eine Punkte Wolko und wir legen da unseren ersten Faktor durch der eben die maximale Varianz beschreibt oder den größten Anteil beschreibt und der zweite Faktor steht hier senkrecht ich habe Ihnen das auch an Echtdaten hier mal geplottet dass Sie das mal sehen können und so können wir große Datenmengen effektiv auf zwei Untervariablen runterbrechen mit denen wir arbeiten können die einen großen Erklärungsgehalt aufweisen die sogenannte Dimensionsreduktion und wir werden das hier auch noch in Python berechnen ich habe Ihnen einen Python Script vorbereitet indem wir mal eine Principle, Komponent und Analyse gemeinsam durchführen können wir fahren hier mit unserem Überblick fort Sie sehen wir haben jetzt das Supervice und an Supervice Machine Learning etwas tangiert, wir haben einige Konzepte vorgestellt wir werden an unseren Coding Videos auch noch einige Konzepte selbst anwenden jetzt fort mit dem Semisupervice Machine Learning speziell mit dem Reinforcement Learning und was ist denn jetzt Reinforcement Learning Reinforcement sind heil überwachte Machine Learning Modifikationsmethoden oder Probleme und Reinforcement Learning ist ein Machine Learning Konzept in welchem ein Agent ohne anfängliche Informationen über sein Umfeld oder die Auswirkungen seines Handelns dazu trainiert werden soll wie wir das Maximieren wir haben hier sechs Schritte Überwachung Aktionselektion, gemäß einer Policy die Aktion ausführen ein Reward oder eine Penalty erhalten die PolicyUpdaten das ist dann hier der Lernschritt und das solange wiederholen bis man eine optimale Policy gefunden hat ich erklär das jetzt mal an unserem Bildchen wir haben hier unseren süßen Roboter in der Mitte das ist unser Agent der weiß nicht was ein Wassertopf ist der weiß nicht was ein Feuer ist er wird da reingeschmissen und muss effektiver rausfinden was denn jetzt gut oder schlecht ist das heißt wir sehen hier der Roboter geht zuerst zum Feuer das ist die Aktion die ausführt dafür bekommt er eine Bestrafung weil Feuer ist böse, das ist heiß das tut weh, deswegen die Bestrafung sieht für den Computer folgendermaßen aus dass er einen negativen Wert erhält obwohl er ein Maximierungsproblem kommt und dann sehen wir dass der Agent hier denkt okay das Feuer ist böse das tut weh, das nächste mal gehe ich da nicht mehr hin dann ist die Wahrscheinlichkeit schon gegeben dass er das nächste mal zum Wasser geht und schaut ob das positiver ist und so kann man natürlich diesen Agent trainieren das zu tun gemäß einer Policy was man erreichen möchte der große Kuh an der Sache ist dass dieser Agent aber selber herausfinden muss das sagen wir ihm nicht vorher was haben wir im Reinforcement Learning denn für Methoden es gibt da sogenannte Q Learning das ist ein modellfreier Reinforcement Machine Learning Algorithmus welcher auf stochastischen Übergängen beruht und kein Modell benötigt wir sagen diesem Agent vorher gar nichts wir unterstellen kein Modell sondern wir nehmen ein modellfreien Algorithmus das ist das Q Learning und für jeden finiten Markov Entscheidungsprozess Q Learning eine optimale Police welche den erwarteten Wert also der totalen Belohnung maximiert eine tiefere Vorstellung inklusive mathematische Darstellung entfällt hier leider weil wir haben den Kursumfang doch schon relativ groß und da kann ich leider nicht auch noch darauf eingehen was Markov Prozesse sind haben wir allerdings schon gelernt was ich Ihnen hier ersatzweise anbieten kann ich habe Ihnen hier einfach mal einen von Reinforcement Algorithmen aufgeschrieben daran können Sie sich ein bisschen orientieren da ist unser Q Learning dabei Varianten des Q Learnings und auch eine Monte Carlo Simulation von der haben wir auch schon was gehört und je nach dem was Sie natürlich dann in Ihrer praktischen Anwendung brauchen können Sie mal durch diese Algorithmen durchsehen wir verlassen hier dieses Themenfeld auch schon wieder und beschäftigen uns jetzt einmal in der Kürze mit Self Supervised Semisupervised Machine Learning Methoden was ist Self Supervised Learning selbst überwachtes Lernen ist die Automatisierung des überwachten Lernens welches keine vor up Label benötigt das heißt, wir nehmen Supervised Learning und automatisieren das viele Forscher sehen hier die Zukunft der Eientwicklung und betiteln dies teilweise als revolutionäre Technik da keine unmaßen an Daten mehr benötigt werden hierfür natürlich gehen die Meinungen hier auseinander ich möchte hier auch keine Stellung beziehen ich habe nur gesehen dass ein Großteil der Literatur sagt dass das Self Supervised Learning eben eine Zukunft hat und ich stelle Ihnen hier die sogenannten Gans vor Generative Adversarial Networks und das sind eine Gruppe von Algorithmen welche unüberwacht lernen können diese Gans bestehen aus zwei neuronalen Netzen die ein Nullsummenspiel durchführen das erste Netzwerk erstellt einen Kandidaten, also einen Generator und das zweite Netzwerk bewertet diesen also das ist der sogenannte Diskriminator und der Generator erzeugt einen Vektor, Latente, Variablen welcher sich um Zeitablauf an eine bestimmte Verteilung annähern soll und Details sind hier im Kursumfang leider auch nicht enthalten Sie können sich so vorstellen Sie haben zwei neuronale Netzwerke das eine macht Vorschläge und das andere bewertet diese Vorschläge solange bis eine gewünschte Verteilungsvariante dabei herauskommt und sie haben keinerlei Interaktion dieser Algorithmus lernt von alleine wir kommen jetzt zum letzten Punkt und zwar der Optimization and Control und was ist denn eine Optimization hier wir sehen uns in ein ganz exotisches Themengebiet und auch ein ganz faszinierendes Themengebiet und zwar in die Evolutionären Algorithmen Evolutionäre Algorithmen sind eine Klasse von stochastischen metaheuristischen Optimierungsverfahren und die Verfahren verschiedener Evolutionäre Algorithmen unterscheiden sich untereinander in erster Linie durch die genutzten Selektions Reekombinations und Mutationsoperatoren Phenotyp-Phenotyp-Mapping sowie die Problemrepräsentation und es gab eine Zeit in der es vier Hauptströmungen zu unterscheiden galt das sind zum einen genetische Algorithmen Evolutionäre Algorithmen und die genetische sowie Evolutionäre Programmierung wie läuft denn jetzt nun ein Evolutionäre Algorithmus überhaupt ab der Skrobbeverfahren die Evolutionäre Algorithmen besteht meist aus einer Initialisierung und einer Schleife, die so lange durchlaufen wird bis ein Abbruchkriterium erfüllt ist ich denke diesen Ansatz haben wir bei anderen Methoden schon gesehen dass wir so lange etwas etarieren bis ein gewisses Kriterium erfüllt ist und wir beginnen einen Evolutionären Algorithmus indem wir die Initialisierung vornehmen das heißt die erste Generation von Lösungenkandidaten wird zufällig erzeugt das heißt jedem Lösungenkandidaten der Generation wird entsprechend seiner Güte ein Wert der Fitnessfunktion zugewiesen das bedeutet jeder dieser möglichen Kandidaten bekommt eine Fitnessfunktion und wir schauen dann welcher dieser Kandidaten am besten performt und wir durchlaufen dann einige Schritte bis ein Abbruchkriterium erfüllt ist das heißt der dritte Schritt nach der Initialisierung ist der Durchlauf einer Schleife und zwar wir selektieren Individuen für eine Reekombination wir reekombinieren diese ausgewählten Individuen wir mutieren diese Individuen die wir dann ausgewählt haben und lassen hier zufällige Veränderungen der Nachfahren also der Nachfolge Generation einfließen und evaluieren das wieder dann selektieren wir wieder eine neue Generation und dann fangen wir von vorne an das heißt wir kreieren Lösungsagenten die eine Fitnessfunktion bekommen die sollen ein Problem lösen und aus dem besten wird eine neue Generation erzeugt die durch zufällige Veränderungen andere Eigenschaften erhält und das wird so lange gemacht bis ein Problem hinreichend gelöst wurde das ist tatsächlich angelehnt an die Natur an die Genetik, an Davin und evolutionäre Algorithmen unterscheiden sich untereinander vor allem in der jeweiligen genetischen Repräsentation der Fitnessfunktion und den genutzten genetischen Operatoren also in der Mutation, Reekombination und Selektion und ich möchte hier auch nicht weiter darauf eingehen wir können Details im Kursumfang leider nicht abhandeln obwohl das ein sehr spannendes Thema ist wir werden uns hier jedoch im Teil über den Ausblick in die Forschung noch einmal kurz mit evolutionären Algorithmen auseinandersetzen in diesem Sinne sind wir auch mit dem ersten Teil der Vorlesung fertig, das heißt was haben Sie gelernt, ich rekapituliere einmal die Gesamtvorlesung Sie haben gelernt was Data Science ist, wie Sie AIML und Deep Learning auseinanderhalten können Sie haben eine Klassifikation von Machine Learning in Kategorien erhalten und wir haben uns mit jeder Kategorie zumindest kurz einmal befasst und Sie haben einige Modelle und Methoden dieser Kategorien kennengelernt die werden wir in unserem Partenteil auch noch mal implementieren dass Sie das nicht nur grob einmal irgendwie gehört haben sondern dass Sie das in Code schon einmal vor sich gesehen haben wir fahren in der zweiten Vorlesung fort mit neuronalen Netzen und Deep Learning und ich wünsche Ihnen bis dahin alles Gute