{"id":656,"date":"2018-12-01T15:38:28","date_gmt":"2018-12-01T15:38:28","guid":{"rendered":"https:\/\/rocketloop.de\/?p=656"},"modified":"2021-09-08T15:57:24","modified_gmt":"2021-09-08T15:57:24","slug":"what-is-machine-learning","status":"publish","type":"post","link":"https:\/\/rocketloop.de\/de\/blog\/was-ist-machine-learning\/","title":{"rendered":"Was ist Machine Learning?"},"content":{"rendered":"<p>Machine Learning erm\u00f6glicht Computern Wissen aus Daten zu erlernen, ohne dieses explizit zu programmieren. Dieses Wissen stellt eine Funktion dar, die einem Input einen passenden Output zuordnet. Ein Algorithmus passt die Funktion dabei so lange an, bis sie die gew\u00fcnschten Ergebnisse erzielt. Man spricht vom Training des Modells. In den letzten Jahren haben sich eine Reihe von Trainingsverfahren etabliert, die erst mit der Verf\u00fcgbarkeit von sehr gro\u00dfen Datens\u00e4tzen zu guten Ergebnissen f\u00fchren. Die Formulierung \u201eDaten sind das neue \u00d6l\u201c bezieht sich h\u00e4ufig auf die Tatsache, dass Unternehmen mit reicheren Datens\u00e4tzen m\u00e4chtigere Modelle trainieren k\u00f6nnen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Narrow AI vs. General AI<\/h2>\n\n\n\n<p>Unsere heutigen Machine Learning Algorithmen sind grunds\u00e4tzlich nur auf sehr spezifische Probleme anwendbar. Man spricht von einer sogenannten Narrow AI. Im Gegensatz dazu steht die sogenannte General AI. Unter einer General AI versteht man einen Algorithmus, der ein abstraktes Weltbildmodell erlernt. Dieser w\u00e4re in der Lage, \u00e4hnlich wie ein Mensch, Wissen aus verschiedenen Bereichen zu kombinieren und dieses auf bisher unbekannte Probleme zu \u00fcbertragen. Von einer solchen General AI sind wir jedoch noch entfernt. Es ist nicht einmal gekl\u00e4rt, ob eine solche General AI grunds\u00e4tzlich m\u00f6glich ist. Dennoch: Narrow AI ist heute schon in der Lage, Probleme, die fr\u00fcher schwer oder gar nicht durch Computer zu l\u00f6sen waren, effizienter als Menschen zu l\u00f6sen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"605\" src=\"https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/narrowAI_vs_generalAI.png\" alt=\"Graphical comparison of the difference between Narrow AI and General AI\" class=\"wp-image-1061\" srcset=\"https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/narrowAI_vs_generalAI.png 1024w, https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/narrowAI_vs_generalAI-300x177.png 300w, https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/narrowAI_vs_generalAI-768x454.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Comparison of a Narrow AI and General AI<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"supervised-unsupervised-learning\">Supervised und Unsupervised Learning<\/h3>\n\n\n\n<p>Es existieren zwei Ans\u00e4tze Machine Learning Modelle zu trainieren. Einerseits gibt es das Supervised Learning und andererseits das Unsupervised Learning. Bei Supervised Learning sind zur Trainingszeit der Input und der dazu gew\u00fcnschte Output bekannt. Der Algorithmus erzeugt aus diesen Informationen ein Modell, das die Beziehung von Input zu Output beschreibt. Dieses Modell kann nach dem Training allgemeine, das hei\u00dft nicht auf den Traningsdatensatz beschr\u00e4nkte, Ergebnisse zu einem Input liefern. So verwendet man Supervised Learning Training f\u00fcr das Erkennen von Bildinhalten. Beim Training werden Bilder mit einer Liste von Bildinhalten f\u00fcr jedes Bild als Input geliefert. Durch das Training soll das Modell als Output die richtigen Objekte erkennen k\u00f6nnen.<\/p>\n\n\n\n<p>In Unsupervised Learning, however, the program does not receive any information about the desired output. The program then has to create a model that generates suitable outputs for given inputs on the basis of their similarities. It is difficult to judge the result of such a model qualitatively because there is no specification for the results. The automatic recognition of <a href=\"\/de\/blog\/clustering\/#cluster\" data-type=\"URL\" data-id=\"\/blog\/clustering\/#cluster\" target=\"_blank\" rel=\"noreferrer noopener\">clusters<\/a> in quantitative data is a typical problem, however, unsupervised learning models achieve good results. Among other things, a program can automatically recognize outliers and new patterns in data.&nbsp;&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Problemstellungen die Machine Learning l\u00f6sen kann<\/h2>\n\n\n\n<p>Wie bereits erw\u00e4hnt, werden Machine Learning Algorithmen aktuell auf sehr spezifische Probleme angewendet. Es k\u00f6nnen drei abstrakte Problemtypen gel\u00f6st werden:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Das Klassifizierungsproblem<\/h3>\n\n\n\n<p class=\" translation-block\">Unter dem <a href=\"\/de\/blog\/klassifizierungsverfahren\/\" target=\"_self\">Klassifizierungsproblem <\/a> versteht man das automatisierte Zusammenfassen von Objekten zu Klassen. Ein klassisches Beispiel hierf\u00fcr ist ein Programm, das in der Lage ist zu erkennen, ob sich auf einem Bild eine Katze oder ein Hund befindet. F\u00fcr Klassifizierungsprobleme finden Supervised Learning Modelle h\u00e4ufig Verwendung. Anhand von geeigneten Beispielen erlernt das Modell selbstst\u00e4ndig, Objekte den richtigen Klasse zuzuordnen. Welche Eigenschaften dabei betrachtet werden, wird dem Modell je nach Verfahren vorgegeben (Feature Engineering), oder ebenfalls automatisiert erlernt.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Das Regressionsproblem<\/h3>\n\n\n\n<p class=\" translation-block\">Bei dem <a href=\"\/de\/blog\/regressionsprobleme\/\" target=\"_self\">Regressionsproblem <\/a>geht es darum, den zuk\u00fcnftigen Verlauf einer Funktion abzusch\u00e4tzen. Ein klassisches Beispiel hierf\u00fcr w\u00e4re die Vorhersage des Pegelstands eines Flusses. Hierbei werden R\u00fcckschl\u00fcsse aus den Vorjahren gezogen, um den zuk\u00fcnftigen Stand vorherzusehen. Oft kommt hierf\u00fcr ein Supervised Learning Modell zum Einsatz. Dieses l\u00e4sst sich mit historischen Daten trainieren, welche Schl\u00fcsse auf zuk\u00fcnftige Daten zulassen<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Das Clusteringproblem<\/h3>\n\n\n\n<p class=\" translation-block\">Die Zielstellung beim <a href=\"\/de\/blog\/clustering-with-machine-learning\/\" target=\"_self\">Clusteringproblem <\/a>ist es, einen Algorithmus zu entwerfen, der selbstst\u00e4ndig gegebene Daten in Gruppen \u00e4hnlicher Objekte kategorisiert. H\u00e4ufig wird dazu ein Unsupervised Learning Modell verwendet. Ein solches Modell braucht keine genaueren Vorgaben, wonach es kategorisieren soll. Dadurch kann man sicherstellen, dass man gewisse Gruppen von Daten, die man selber als Entwickler wom\u00f6glich gar nicht als solche wahrnimmt, nicht von vorne herein ausschlie\u00dft. Ein klassisches Beispiel w\u00e4re die Zielgruppenanalyse im Marketing, wie die personenbezogene Werbung. Dabei werden Kunden in verschiedene Gruppen eingeteilt, um ihnen spezifische Werbung anzuzeigen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"612\" src=\"https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/machine_learning_diagramm_probleme.png\" alt=\"Different machine learning algorithems categorized by classification, regression, and clustering\" class=\"wp-image-1062\" srcset=\"https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/machine_learning_diagramm_probleme.png 1024w, https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/machine_learning_diagramm_probleme-300x179.png 300w, https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/machine_learning_diagramm_probleme-768x459.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Machine Learning Algorithmen nach Problemstellungen<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Herausforderungen beim Einsatz von Machine Learning Verfahren<\/h2>\n\n\n\n<p>Beim Einsatz von Machine Learning Verfahren ergeben sich aber trotz der Menge an Vorteilen einige Herausforderungen wie:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Datenqualit\u00e4t<\/h3>\n\n\n\n<p>In der Praxis besteht ein Gro\u00dfteil der Arbeit von Machine Learning Projekten darin, die richtigen Daten zu beschaffen, zu verstehen und aufzubereiten. Dieser, im Allgemeinen \u201ePreprocessing\u201c genannte, Schritt stellt sicher, dass die Daten genau repr\u00e4sentieren, worauf das Modell auch tats\u00e4chlich trainiert werden soll. Besonders in gr\u00f6\u00dferen Organisationen ist bereits die Beschaffung und Aggregation der Daten keine triviale Aufgabe, bei der mehrere Abteilungen miteinander Kooperieren m\u00fcssen. Stehen die n\u00f6tigen Daten nicht um gew\u00fcnschten Umfang oder der n\u00f6tigen Qualit\u00e4t zur Verf\u00fcgung, besteht die erste Projektphase h\u00e4ufig daraus, diese Daten zu sammeln und aufzubereiten.<\/p>\n\n\n\n<p>Fehler und Verzerrungen in den Daten k\u00f6nnen dazu f\u00fchren, dass das trainierte Modell diese ebenfalls erlernt, man spricht hier von \u201eBiases\u201c, also Vorurteilen, die sich aus den Daten abzeichnen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Unterschiede zwischen verschiedenen Machine Learning Verfahren in Bezug zu Performance und Erkl\u00e4rbarkeit<\/h3>\n\n\n\n<p>Die verschiedenen Machine Learning Verfahren unterscheiden sich in Bezug zu ihrer Performance und ihrer jeweiligen Erkl\u00e4rbarkeit. Allgemein gilt, dass wenn ein Machine Learning Modell eine hohe Performance erzielt, seine Erkl\u00e4rbarkeit sinkt, wie auch umgekehrt.<\/p>\n\n\n\n<p>Beispielsweise erzielen neuronale Netze eine sehr gute Performance, aber versucht man den L\u00f6sungsweg nachzuvollziehen, erkennt man, dass dieser nicht viel mit dem zu tun hat, was wir als logische Probleml\u00f6sung verstehen w\u00fcrden. Das liegt daran, dass die Modelle aus zum Teil hunderten, oder gar mehr unabh\u00e4ngigen Variablen und noch viel mehr Berechnungen bestehen. Man spricht vom Black Box Problem. Problematisch wird diese Eigenschaft immer dann, wenn diese Informationen wichtig sind, z.B. bei lebenswichtigen Entscheidungen wie in der Medizin, wenn ein Machine Learning Modell eine Behandlung vorschl\u00e4gt.<\/p>\n\n\n\n<p>Im Gegensatz dazu gibt es Verfahren, wie die lineare Regression oder Decision Trees, die sehr evident sind. Das f\u00fchrt dazu, dass die Ergebnisse dieser Modelle zwar recht leicht erkl\u00e4rbar, die Modelle aber nicht gut f\u00fcr komplexe Probleme anwendbar sind.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"604\" src=\"https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/ml_performance_explainability.png\" alt=\"Graph of different machine learning algorithems by performance and explainability\" class=\"wp-image-1063\" srcset=\"https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/ml_performance_explainability.png 1024w, https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/ml_performance_explainability-300x177.png 300w, https:\/\/rocketloop.de\/wp-content\/uploads\/2018\/12\/ml_performance_explainability-768x453.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Machine Learning Algorithmen nach Performance und Erkl\u00e4rbarkeit<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Overfitting<\/h3>\n\n\n\n<p class=\" translation-block\">Man spricht von <a href=\"\/de\/blog\/model-validation-and-overfitting\/#overfitting-underfitting\" target=\"_self\">Overfitting<\/a>, wenn ein Machine Learning Modell nach dem Training nicht mehr in der Lage ist, allgemeine Ergebnisse zu erzielen. Das passiert, wenn man ein Machine Learning Modell zu h\u00e4ufig auf einem zu kleinen Trainingssatz trainiert. Die Fehlerquote bei diesem wird zwar immer kleiner, die Performance aber nicht unbedingt besser. Denn anstatt, dass das Modell eine allgemeine Funktion erzeugt, wirkt es eher als h\u00e4tte es die Daten auswendig gelernt. Schlie\u00dfend werden korrekte Ergebnisse nur noch auf dem Trainigssatz erreicht.<\/p>","protected":false},"excerpt":{"rendered":"<p>Machine Learning enables computers to learn knowledge from data without someone or something explicitly programming it. This knowledge is a function that assigns a suitable output to an input. An algorithm adjusts the function until it achieves the desired results. In recent years, a number of training methods have been established, which only lead to [&hellip;]<\/p>","protected":false},"author":2,"featured_media":1060,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_seopress_robots_primary_cat":"none","footnotes":""},"categories":[8],"tags":[],"class_list":["post-656","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-machine-learning"],"acf":[],"_links":{"self":[{"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/posts\/656","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/comments?post=656"}],"version-history":[{"count":12,"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/posts\/656\/revisions"}],"predecessor-version":[{"id":7711,"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/posts\/656\/revisions\/7711"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/media\/1060"}],"wp:attachment":[{"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/media?parent=656"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/categories?post=656"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rocketloop.de\/de\/wp-json\/wp\/v2\/tags?post=656"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}