IT SOLUTIONS FOR YOUR BUSINESS
by BROCKHAUS AG

Einfach wertvoll: Teil 1

Was uns bewegt?
Das BGM der BROCKHAUS AG!

07.04.2019: Die WHO (Weltgesundheitsorganisation) feiert ihren 71. Geburtstag.

„Ewig jung und gesund“ – das wäre was. Die Chancen dafür scheinen, nach kurzer Online-Recherche recht gut. Wir werden im Durchschnitt älter denn je und wenn wir uns an die vielen neunen Gesundheitstrends und Ernährungstipps halten und sie um traditionelle Methoden ergänzen, dann kommen wir der Sache bestimmt nahe. Damit aber nicht genug – um uns ganz persönlich zu optimieren und vital zu halten, begleiten uns Fitnessoptimierungs-Apps durch den Alltag.

weiterlesen

Wachs­tum meis­tern: DevOps – Teil IV

Teil 1: Defini­tion und Mo­ti­va­tion
Teil 2: Veränderungen als unverzichtbare Basis
Teil 3: Herausforderungen und Risikofaktoren
Teil 4: DevOps in der Praxis

 

Da das DevOps-Modell bald ein Jahrzehnt alt wird (s. Teil I), bestehen bei einigen Unternehmen bereits reichlich Erfahrungen in der praktischen Umsetzung. Das Modell passt schließlich hervorragend zu den Anforderungen des Marktes und zu den Anpassungen in den Unternehmen. Im letzten Teil der DevOps-Serie soll sich daher der Blick auf die bisherigen Erfahrungen und Erfolge richten.

DevOps in der Praxis

Konkrete Erkenntnisse wurden insbesondere bei der Teamzusammenstellung gewonnen. Feingefühl ist dabei ein wesentlicher Aspekt.
Für die Weitergabe von Know-how kann eine heterogene Gruppe aus Mitarbeitern mit unterschiedlich großer Erfahrungen von Vorteil sein, denn hier findet meist der größte Austausch an Wissen statt. Bei der Teamstärke hat sich eine Größe von fünf bis zehn Mitarbeitern bewährt. Bei größeren oder mehreren Projekten gibt es folglich mehrere Teams. Andernfalls würde das DevOps-Modell verwaschen werden.

In Bezug auf die Verantwortung kristallisieren sich verschiedene Modelle heraus. Die Theorie besagt, dass jeder Mitarbeiter gleichermaßen Verantwortung tragen muss. Doch in der Praxis sind teils die Development-Mitarbeiter hauptverantwortlich, während die Operations-Mitarbeiter als Dienstleister tätig sind. Um das Team zu entlasten ist es von Vorteil, wenn es von einem Infrastruktur-Spezialisten unterstützt wird.

Innerhalb der Teams wird zumeist nach Scrum gearbeitet. Wenn der Product Owner (meist von Kundenseite gestellt) und der Scrum Master in enger Abstimmung stehen, kann das Team in der Regel recht autark mit dem Kunden zusammenarbeiten. Der Scrum Master muss hier Fingerspitzengefühl beweisen und darf im optimalen Fall die Zusammensetzung der Teams autonom bestimmen, wobei der Vertrieb oder das Management im kundengegebenen Rahmen häufig die Gruppengröße bestimmen.

Bei der praktischen Umsetzung zeigt sich, dass der Erwerb von neuem Know-how im Unternehmen nicht vernachlässigt werden darf, insbesondere in Bezug auf Sicherheitsfragen. In einer

internationalen Umfrage

weiterlesen

Wachs­tum meis­tern: DevOps – Teil I

DevOps, Development, Operations, Contunuous Delivery, Continuous Deployment, Agil, Lean, Team, Qualitätssteigerung, Infrastructure as a Code
DevOps fördert in der IT mit all seinen Aspekten eine bessere Zusammenarbeit und erhöht die Qualität und Anzahl der Deployments

Teil 1:  Defini­tion und Mo­ti­va­tion
Teil 2: Veränderungen als unverzichtbare Basis
Teil 3: Herausforderungen und Risikofaktoren
Teil 4: DevOps in der Praxis

Betrachtet man Wirtschaft und Digitalisierung aus der Vogelperspektive heraus, hebt sich eine treibende Kraft besonders hervor:  Wachstum. Neben der zunehmenden Datenmenge und Komplexität, wächst die Frequenz, in der Innovationen und neue Anwendungen benötigt werden. Damit steigen auch die Herausforderungen, mit denen sich die Unternehmen konfrontiert sehen. Taucht man nun von der Vogelperspektive aus in die Tiefe, zum Fischen nach Lösungen, scheint DevOps ein guter Fang zu sein, wenn nicht sogar eine unumgängliche logische Konsequenz. Dieses ganzheitliche Modell versucht Wachstum durch Reduktion und kooperative Zusammenarbeit zu meistern.

Neben Lean-Ansätzen spielen auch Werte wie Teamgeist, Verantwortungsbewusstsein und Vertrauen entscheidende Rollen, ebenso wie die langfristige Entlastung der Mitarbeiter durch automatisierte Vorgänge. Die Folge sind schnelle Release-Zyklen und weitestgehend agil handelnde Teams. Mit der Optimierung, die dieses Modell verspricht, geht jedoch ein zunächst nicht ganz einfacher Weg einher.

Definition

Per Definition ist DevOps ein Modell, das die Bereiche der Softwareentwicklung (Development) und der Systemadministration (Operations & Betrieb) zusammenbringt und mittels gemeinsamer Anreize und Prozesse eine schlanke sowie effiziente Zusammenarbeit fördert.

Es soll zusammengehören, was auf den ersten Blick nicht zusammenpasst: Der Bereich Development hat mit der Produktion, Weiterentwicklung, dem Testen und der Inbetriebnahme von Software eher einen kreativ verändernden Charakter. Während hier die Mitarbeiter Systeme verändern möchten, ist der Bereich Operations im Anschluss verantwortlich für das reibungslose Funktionieren der Infrastruktur und bevorzugt Stabilität mit einer begrenzten Menge an Änderungen.
Das Ziel ist folglich, Bereiche zusammenarbeiten zu lassen, welche sonst im Softwareentwicklungs-Lebenszyklus teils konträre Interessen verfolgen.

Doch in der Praxis ist diese Zusammenfassung wesentlich komplexer, als es den Anschein macht. Denn es bedarf im Grunde einer übergeordneten Betrachtung des Application Lifecycle Management, also aller Bereiche, die auf die Qualität der Software, auf die Geschwindigkeit der Entwicklung und auf die Auslieferung einen positiven Einfluss haben. DevOps fasst demnach einen Mix aus Zielen, Unternehmenskultur, Infrastruktur-Anpassungen, Tools zur Automatisierung und organisatorischen Prozessen (z.B. Lean Management) zusammen, die aufeinander abgestimmt werden sollen.

Motivation für DevOps

Die hauptsächliche Motivation für DevOps besteht darin, Software den jeweiligen Kunden schneller, einfacher und in besserer Qualität bereitzustellen. Nachvollziehbarerweise geht es dabei übergeordnet um die Verbesserung von Rentabilitäts-, Produktivitäts- und Marktanteilszielen.

Hier spielt Software längst nicht mehr nur eine untergeordnete Rolle. Inzwischen bedingen Geschäftsprozesse in der Regel eine gut geölte IT-Maschinerie. Systeme und Anwendungen sind ein kritischer Bestandteil in allen Unternehmensbereichen. Intern, in der Produktion oder Verwaltung und nach außen hin, in fast allen Touchpoints, sind IT-Anwendungen nicht mehr wegzudenken. Die Kommunikation zwischen Kunden und Unternehmen findet zunehmend digital statt.

Diese digitale Präsenz und die Nutzung digitaler Medien seitens der Kunden führen dazu, dass der Innovationsdruck immer stärker wird. Im technischen Zeitalter wird der Lebenszyklus von Innovationen immer kürzer. Derzeit erfolgreiche Geschäftsmodelle können schnell abgelöst werden und in ein Nischendasein rutschen. Das macht die Entwicklung neuer Anwendungen und Lösungen parallel zu den Bestehenden so wichtig. Neben erfolgreichen Geschäftsmodellen muss daher ein kreatives Klima als zweites konstantes Standbein bestehen.
Um bei diesem Innovationswettbewerb mithalten zu können, sind Unternehmen in der Pflicht, sich Strategien anzueignen, die agil, flexibel und zuverlässig Neuerungen schaffen können. Dies bringt DevOps mit seinen zahlreichen Facetten ins Spiel.

Wenn man sich das DevOps-Modell näher anschaut, fallen in der Regel schnell Schlagwörter, wie Continuous Deployment, Agilität oder Lean Management. Nicht verwunderlich, da der Begriff erstmalig während einer Konferenz in Gent (Belgien) 2009 auftauchte, die sich mit agilen Methoden beschäftigte. Während dieser Konferenz (DevOpsDays), hielt Patrick Debois einen Vortrag über die Anforderungen bei agilen Methoden und der sich verändernden Zusammenarbeit zwischen Programmierern, IT-Experten und dem operativen Produktionsmanagement. Die große Herausforderung sei dadurch gegeben, so Debois, dass die verschiedenen Abteilungen in verschiedenen Maßen agil vorgehen würden. Auch wenn die Unternehmensbereiche einzeln hervorragende Leistungen erbringen, mangelt es häufig an ihrem Zusammenspiel. Abteilungen, wie Produktmanagement oder IT-Betrieb, welche Arbeitsschritte nach dem klassischen Wasserfall-Modell abarbeiten, könnten mit den agilen Teams, die sich häufig in der Entwicklung finden, nicht mithalten.

Tatsächlich nehmen der Vorlauf für Planung und Beschaffung sowie die Testphasen umfangreich Zeit in Anspruch. Hier entstehen Bottlenecks, die Projekte durch inkompatible Prozesse ins Stocken bringen oder schnittstellenbedingte Fehler in den Systemen verursachen.
Einen Lösungsansatz bietet DevOps, welches als Konzept entlang des gesamten Lebenszyklus einer Anwendung, die Kommunikation und agile Zusammenarbeit zwischen den einzelnen Bereichen verbessert. Begleitend werden Konfigurations-, Verwaltungs- und Testingtools eingesetzt, was einen Geschwindigkeits- und Qualitätsvorteil bietet. Die fertiggestellte Anwendung wird schließlich gemeinsam verantwortet.

All diese Aspekte sollen dazu führen, die beteiligten Teams, Tools und Infrastrukturen optimal aufeinander abzustimmen, um Anwendungen in schnelleren Zyklen und in besserer Qualität auszuliefern oder weiterzuentwickeln. Mit Hilfe des DevOps-Modells möchte man sowohl die Anzahl der Deployments durch kürzere Release-Zyklen als auch die Stabilität der jeweiligen Systeme steigern. Durch die enge Zusammenarbeit können bereits bei der Entwicklung Voraussetzungen für einen reibungslosen Betrieb geschaffen werden. So müssen nicht erst im Nachhinein vermeidbare Fehler behoben werden.

Teil II:

weiterlesen

Advanced Analytics – Rück­blick auf alle Bei­trä­ge

Customer Journey, Wandel der Märkte, Digitale Tranformation und Big Data fördern den Analyseprozess
Advanced Analytics – die drei Treiber: Customer Journey, Wandel der Märkte, Digitale Tranformation und Big Data

Wie Künst­liche In­telli­genz Ver­­si­che­­rungs­­unter­­neh­­men bei Ent­­schei­­dun­­gen hilft

Teil 1: Customer Journey, Digitale Trans­forma­tion und Wandel der Märkte als Treiber für Big Data und Advanced Analytics

Digitalisierung bewirkt als Innovationstreiber des 21. Jahrhunderts die digitale Transformation bzw. technische Digitalisierung. Um hier mitzuhalten, müssen Unternehmen Digitalisierungsstrategien entwickeln und umsetzen, also umfangreich analoge Daten in digitale Daten umwandeln, sowie Daten zur Optimierung von Geschäftsprozessen sammeln und analysieren. Advanced Analytics (auch Advanced Intelligence) ist ein entscheidender Baustein dieser umfassenden Entwicklung.

Der Druck, bei der automatisierten Analyse mitzuhalten, ausgelöst durch die Aspekte Customer Journey, Digitale Transformation und Marktwandel, motiviert die Versicherer und verheißt einen enormen Wettbewerbsvorteil.
Das Bewusstsein, dass eine positive Customer Journey längst kein Zufall mehr ist, nimmt zu. Für eine hohe Kundenzufriedenheit ist die Erfahrung, die der Kunde während der Berührungspunkte mit dem Unternehmen und seinen Leistungen hat, kritisch. Daher gilt es, diese individuellen Punkte durch Analyse gezielt zu optimieren und innovative Angebote anzubieten.

Dem allgemeinen digitalen Wandel kann sich kein erfolgreiches Unternehmen entziehen. Kunden verlangen ein perfektes Zusammenspiel der einzelnen technischen Möglichkeiten. Aber auch im Backend profitieren Mitarbeiter von einer ausgeklügelten digitalen Datenanalyse, welche nicht nur Service und Produktpalette optimieren kann, sondern ebenfalls Prozesse effizienter gestaltet und klare Entscheidungsgrundlagen liefert. Advanced Analytics und Big Data bilden, gestützt durch die digitale Transformation, ein perfektes Paar, das aus dem Bouquet der Kundendaten wichtige Erkenntnisse ziehen kann. Ohne eine umfassende digitale Basis können diese Datenmenge nicht verarbeitet und beispielsweise für Telematiktarife genutzt werden.
All das bewirkt den Wandel der Märkte. Wer diesen Wandel mitgestaltet und nicht nur Angebote hinterherhinkend kopieren möchte, muss selbst in Bewegung bleiben. Starre Prozesse und das Ignorieren diverser Digitalisierungsstrategien haben bei Großunternehmen zur Folge, dass Start-Ups und agile Firmen Marktanteile abgreifen. Für zukunftsorientierte und pionierhafte Leistungen bedarf es einer umfassenden Datensammlung und Aufbereitung.

Teil 2: Definition, Schritte und Tools von Advanced Analytics

weiterlesen

Machine Learning: Ein Überblick über verschiedene Konzepte und mögliche Anwendungsgebiete

Machine_Learning-01

Das Verarbeiten von Daten hat in der Informatik und IT schon immer eine große Rolle gespielt. Klassische Algorithmen sind in den letzten Jahrzehnten dahingehend optimiert worden, möglichst allgemeine so wie auch spezielle Aufgaben zu erledigen und aus Daten Informationen zu extrahieren um diese zu verarbeiten. Doch Datensätze werden immer größer, komplexer und für Entwickler wird es immer schwieriger „Spielregeln“ für einen Algorithmus aufzustellen, damit dieser möglichst optimal arbeitet. Hier kommt Machine Learning ins Spiel: Statt immer komplexere Algorithmen mit einer Reihe von Sonderfällen mühsam zu beschreiben, wird diese Rolle von Machine Learning Algorithmen übernommen.

Spezielle Algorithmen suchen Datensätze nach Mustern ab und stellen auf dieser Grundlage ein Modell (Model) auf. Diesem generierten Modell können dann neue Daten zur Beurteilung gegeben werden. Der essentielle Unterschied zu herkömmlichen Algorithmen ist, dass bei Machine Learning mehr Wert auf die Datensätze gelegt wird, mit denen ein Modell trainiert wird. Daneben spielen die verschiedenen Algorithmen mit denen maschinelles Lernen betrieben wird, natürlich auch eine Rolle und sind ebenfalls entscheidend für die Genauigkeit des Modells. Die Datensätze mit denen man die Algorithmen trainiert spielen also neben den Algorithmen auch eine sehr wichtige Rolle.

In welchen Anwendungen wird Machine Learning bereits genutzt?

Bereits heute wird in alltäglichen Produkten Machine Learning genutzt, um diverse Probleme zu lösen. Unter anderem nutzen Netflix und Amazon Machine Learning um Nutzern Film- und Produktvorschläge zu unterbreiten. Des Weiteren nutzt auch Google Machine Learning um bessere Ergebnisse im Bereich ihrer Suche – im Besonderen ihrer Bildersuche – zu erzielen. Werbung wird mit Hilfe von Machine Learning gezielt geschaltet und mit dem Google Übersetzer präzisere Übersetzungen geliefert. In Google Maps und Street View wird Machine Learning eingesetzt um Informationen aus Bildern zu ziehen und das Kartenmaterial aktuell zu halten.

Ein weiteres bekanntes Beispiel, welches im Machine Learning schon früh genutzt wurde, ist die Spamfilterung von E-Mails. Ein trainiertes Machine Learning Modell kann für ankommende E-Mails entscheiden, ob es sich um eine Spam E-Mail handelt und dementsprechend reagieren. Wie bereits oben angesprochen, wird Machine Learning nicht nur für klassische Datensätze eingesetzt, sondern auch für Medien wie Bilder. Die Analyse von Bildern wird vor allem für die Gesichtserkennung immer wichtiger. Ein Anwendungsbeispiel für Gesichtserkennung sind die sozialen Netzwerke wie Facebook oder Instagram, welche auf hochgeladenen Bildern Nutzer und Orte erkennen und zuordnen können. In den letzten Monaten kamen außerdem Produkte wie Google Home und Alexa von Amazon auf dem Markt, welche Spracherkennung auf der Basis von Machine Learning nutzen.

Machine Learning ist also keinesfalls eine Technologie die nur bestimmte Produkte verbessern kann. Im Gegenteil: Machine Learning ist als Technologie sehr vielfältig und kann auf unterschiedliche Arte und Weisen eingesetzt werden.

Die Parameter rund um ein Machine Learning Modell

Das Ziel von Machine Learning ist es, ein Modell aufzustellen, welches für neue Dateneinträge Vorhersagen bestimmen kann. Dabei wird jedes Attribut in einem Datensatz in zwei Gruppen eingeordnet. Das Label oder auch Target in einem Datensatz besteht aus einem Attribut. Weitere Attribute, welche im Beziehung zum Label stehen, sind Features. Ein Beispiel für einen Datensatz, welche in Label und Features unterteilt werden kann, ist ein Datensatz aus E-Mails, welche als Spam oder kein Spam gekennzeichnet sind. Diese Kennzeichnung ist das Label des Datensatzes. Die restlichen Attribute wie Text der E-Mail, Betreff und E-Mail-Adresse des Senders sind Features. Die Beziehung zwischen Features und Label wird als Funktion beschreiben. Üblicherweise wird in Machine Learning diese Funktion Modell genannt. Mit dem Modell kann wird anhand der Features das Label bestimmt. Ein Modell welches Spam E-Mails erkennen kann, kann dann an Hand von neuer unbekannter E-Mails erkennen, ob es sich um Spam oder keinen Spam handelt. Die Features sind also Eingabewerte für das Modell bzw. der Funktion und das Label ist der Rückgabewert des Modells.

Durch die verschiedenen Parameter einer E-Mail kann ein Machine Learning Modell bestimmen, ob eine E-Mail Spam oder kein Spam ist. Dies ist möglich durch die Generierung des Wissens, welches ein Machine Learning Algorithmus bei dem Erstellen eines Machine Learning Modells aus einem Datensatz gewonnen hat. Das Modell trifft durch sein Wissen gewisse Entscheidungen und kann dementsprechend für eine neue E-Mail sagen, ob sie Spam oder kein Spam ist. So sind unter anderen Absenderadressen von E-Mail mit einer kostenlosen Domain eher Spam als Absenderadressen mit einer kostenpflichtigen Domain. Ein weiteres Indiz wären gewisse Wörterkonstellationen im Betreff, welche die Aufmerksamkeit des Empfängers gewinnen sollen. All diese Indizien kann eine Machine Learning Algorithmus aus einem Datensatz lernen und in einem Modell beschreiben.

Hier wird auch noch einmal der Unterschied zwischen Machine Learning Algorithmen und konventionellen Algorithmen deutlich. Bei der Entwicklung von konventionellen Algorithmen wird eine konkrete Funktion beschrieben. Ein konventioneller Algorithmus ist zum Beispiel ein Sortieralgorithmus*, welcher konkret in ein paar Zeilen Code beschrieben werden kann. Hier können Entwickler nachvollziehen, was der Algorithmus tut, da diese Algorithmen von anderen Menschen geschrieben wurden. Dies ist bei Machine Learning Algorithmen nicht der Fall. Bei Machine Learning Algorithmen wird, anders als bei herkömmlichen Algorithmen, ein Modell auf Basis von vorliegenden Daten durch den Algorithmus erstellt. Die Entscheidungen erfolgen durch das Wissen und die Erfahrung welches das Modell durch die vorherigen Daten gesammelt hat.

Welche Analyseverfahren gibt es im Machine Learning?

Es gibt drei Hauptkategorien von Problemen, welche versucht werden durch Machine Learning Algorithmen zu lösen.

Zu einem wäre da das Klassifizierungsverfahren (Classification), in dem die Algorithmen versuchen, neuen Datensätzen Kategorien (Labels) zuzuordnen. Die Filterung von Spam E-Mails ist ein Beispiel für ein Klassifizierungsproblem. Entweder ist eine ankommende E-Mail Spam oder sie ist kein Spam. In diesem konkreten Fall wird von binärer Klassifizierung (Binary Classification) gesprochen, da es nur zwei Labels gibt. Das Modell wird per Klassifizierungsverfahren trainiert, indem Datensätzen mit Labels einem passenden Machine Learning Algorithmus übergeben werden. Es gibt viele verschiedene Machine Learning Algorithmen, welche für einen Datensatz besser oder schlechter geeignet sind. Es müssen die Charakteristiken aus einem Datensatz herausgearbeitet werden, (wie z.B. Anzahl der Attribute oder Größe des Datensatzes) , um einen passenden Algorithmus auswählen zu können. Dieser versucht dann eine Beziehung zwischen Features und Labels zu ermittelten und zu beschreiben.

Ein anderes Analyseverfahren (Regression Analysis), bei der versucht wird, eine Beziehung zwischen Features und einer oder mehrere Zielvariablen (Targets) aufzustellen, ist die Regressionsanalyse. Ein populäres Beispiel für die Regressionsanalyse ist die Bestimmung von Immobilienpreisen auf Basis von Features, wie dem Alter des Hauses und der Anzahl der Räume. Für einen neuen Dateneintrag, also für ein neues Haus, würde dann das Modell den Hauspreis approximativ bestimmen. Trainiert wird bei einer Regressionsanalyse wie beim Klassifizierungsverfahren, nur mit dem Unterschied, dass es keine festen Labels gibt, sondern eine oder mehrere Zielvariablen (Targets). Diese sind dann z.B. in numerischer Form (Hauspreis).

Zuletzt wäre da noch die Clusteranalyse (Clustering). Bei der Clusteranalyse wird ein Modell nicht durch einen Datensatz mit Features und Labels trainiert, sondern der Datensatz beinhält nur Features. Der Algorithmus muss dann passende Strukturen in und zwischen den Features entdecken und sogenannten Cluster aufzustellen. Diese bilden dann Kategorien, in die ein neuer Datensatz eingeordnet werden kann.

Welche weiteren technischen Konzepte gibt es im Machine Learning?

Neben den drei genannten Analyseverfahren, gibt es noch weitere interessante Konzepte im Machine Learning. Zum einen wäre da das überwachte Lernen (Supervised Learning) und das passende Gegenstück, das unüberwachte Lernen (Unsupervised Learning).

Beim überwachten Lernen handelt es sich häufig um Klassifizierungs- oder Regressionsverfahren. Der Datensatz, mit dem ein passendes Modell trainiert werden soll, beinhaltet Features und Labels bei einer Klassifizierungsanalyse oder ein Target beim Regressionsverfahren. Im Gegenstück handelt es beim unüberwachten Lernen häufig um Clustering Probleme, da dort die Datensätze ohne passende Labels oder Targets vorliegen. Ein Beispiel für überwachtes Lernen wäre die Filterung von Spam E-Mails, welche als Spam oder kein Spam gekennzeichnet sind. Dagegen wäre die Erkennung bestimmter ungewöhnlicher Verhalten wie zum Beispiel die Erkennung von Cyberangriffen auf ein bestimmtes Netzwerk ein Fall für unüberwachtes Lernen.

Ein Machine Learning Modell kann des Weiteren durch zwei verschiedene Arten trainiert werden. Entweder liegen – wie beim batch learning – alle Daten vor, sodass das Modell sofort mit allen Daten auf einmal trainiert werden kann. Oder aber es liegen nicht alle Daten auf einmal vor und es handelt sich um online learning. Beim online learning wird ein Modell mit kleineren Gruppen von Datensätzen fortlaufend trainiert. Online learning ist nützlich für Modelle die sich über die Zeit verändern und zu denen immer wieder neue Daten vorliegen. Ein Beispiel für online learning ist die Vorhersage von Aktienpreisen. Mit aktuellen Aktienkursen wird das Modell weitertrainiert und somit in seinen Vorhersagen verbessert.

Batch und online learning haben beide Vor- und Nachteile. Je nach Einsatz wird entschieden, ob online learning für eine Machine Learning Modell die richtige Wahl ist, oder ob es genügt, alle paar Wochen oder Monate das Modell neu mit batch learning zu trainieren. Ein sinnvoller Einsatz für online learning sind Situationen, in denen sich jederzeit Datensätze ändern und sich neue Muster in den Datensätzen bilden. Dies wäre unter anderem auf dem Aktienmarkt der Fall. Andersrum ist der Einsatz von batch learning bei einem Datensatz, welcher sich halbjährig aktualisiert, sinnvoller.

Ein weiteres wichtiges Konzept im Machine Learning ist das bestärkende Lernen (Reinforcement Learning). Beim bestärkenden Lernen existiert ein virtueller Agent, welcher die Umgebung beobachtet, Aktionen ausführt und durch sogenannte Belohnungen und Bestrafungen lernt. Dadurch lernt der Agent am besten, welche Strategie die Beste ist, um das angestrebte Ziel zu erreichen.

Ein populäres Beispiel für eine Anwendung von bestärkenden Lernen ist Alpha Go. Alpha Go ist ein vom Google Tochterunternehmen Deepmind entwickeltes Computerprogramm, welches darauf ausgelegt ist das Brettspiel Go zu meistern. Bei dem Brettspiel Go wird auf einem 19 mal 19 Spielfeld gespielt, in das abwechselnd weiße und schwarze Steine gelegt werden. Das Ziel des Spiels ist es, ein größeres Gebiet zu beherrschen als der Gegenspieler. Auf Grund der einfachen Spielregeln und des großen Spielfeldes, gibt es in Go mehr Stellungen auf dem Brett als Atome im Universum. Dadurch ist Go viel intuitiver und komplexer als beispielsweise Schach. Alpha Go lernet aus Spielpartien mit menschlichen Gegenspielern, als auch aus Spielen gegen sich selbst und konnte damit im März 2016 gegen den Südkoreaner Lee Sedol gewinnen, welcher als einer der weltbesten Spieler in Go angesehen wird.

Was ist Deep Learning?

Neben bestärkenden Lernen wurden auch künstliche neuronale Netze eingesetzt, um Go zu meistern. Durch neuronale Netze (Deep Learning) lernt der Computer Aufgaben intuitiv zu lösen, was gerade bei Go extrem wichtig ist. Aber auch bei Spracherkennung und Gesichtserkennung werden neuronale Netze einsetzt um Muster und Sprache zu erkennen.

Aufgebaut ist jedes neuronale Netz durch drei stark verbundene hierarchische Schichten (Layer). In der ersten Schicht (Input Layer) werden die Features und weitere Rohdaten wie Bilder eingegeben. Diese Daten werden in die zweite Schicht weitergeleitet (Hidden Layer) und dort verarbeitet. Die zweite Schicht besteht meist wiederum aus mehreren Schichten. Von dort aus wird das Ergebnis an die letzte Schicht weitergeleitet. Ein Vorteil bei neuronalen Netzen zu anderen Machine Learning Algorithmen, ist das neuronale Netze aus unterschiedlichen Quellen Informationen nutzen können, um ein Ziel zu lösen. Dadurch sind die Anpassungsmöglichkeiten groß und vielfältig.

Wie kann Machine Learning Unternehmen helfen?

Machine Learning ist eine innovative Technologie, welche Unternehmen auf diverse Arten helfen kann, ihre Produkte zu verbessern. Die „Großen“ wie Google, Amazon und Co. machen es vor. Doch auch kleinere Unternehmen müssen in der Zukunft auf Machine Learning setzen, damit sie konkurrenzfähig bleiben und innovative Produkte anbieten können. Neben der individuellen Verbesserung der einzelnen Produkte durch Machine Learning, kann die Analyse von Kundendaten vorzeitiges Eingreifen von Unternehmen ermöglichen, um die Kundenzufriedenheit zu erhöhen und den steigenden Wünschen des Kunden gerecht zu werden.

 

*Sortieralgorithmen sind Algorithmen welche Datenstrukturen nach einer bestimmten Ordnung (z.B. die lexikographische Ordnung) sortieren können. Bekannte Sortieralgorithmen sind Bubblesort, Quicksort oder auch Mergesort.

 

Quellen

Real World Machine Learning von Joseph W. Richards (2016)
The Master Algorithm von Pedro Domingos (2015)
Maschinelles Lernen
Klassifikationsverfahren
Regressionsanalyse
Die Machine Learning Akquisitionen der Big Five

Everyday Examples of Artificial and Machine Learning

weiterlesen

Advanced Analytics V: Wie Künst­liche In­telli­genz Ver­siche­rungs­unter­neh­men bei Ent­schei­dun­gen hilft

Mein Berufs­ein­stieg in den Pro­jekt­all­tag

Gerade noch studierte ich Informatik an der Technischen Universität Dortmund, hatte viel Zeit mit Computerspielen und der Programmierung kleinerer Anwendungen verbracht und schon stand der erste Arbeitstag vor der Tür. Ich gebe zu, ich hatte vor meinem Berufseinstieg ein wenig Angst. Werde ich die an mich gestellten Aufgaben bewältigen können? Werde ich mich in meinem neuen Arbeitsumfeld wohl fühlen? Das sind Fragen, die sicherlich viele Berufseinsteiger nachvollziehen können.

weiterlesen

Advanced Analytics IV: Wie Künst­liche In­telli­genz Ver­siche­rungs­unter­neh­men bei Ent­schei­dun­gen hilft