Data Science und AI -  Michael Oettinger

Data Science und AI (eBook)

Eine praxisorientierte Einführung im Umfeld von Machine Learning, künstlicher Intelligenz und Big Data - 3. erweiterte Auflage
eBook Download: EPUB
2024 | 1. Auflage
248 Seiten
tredition (Verlag)
978-3-384-17624-0 (ISBN)
Systemvoraussetzungen
3,99 inkl. MwSt
  • Download sofort lieferbar
  • Zahlungsarten anzeigen
Im vorliegenden Buch soll eine praxisorientierte Einführung und ein aktueller Überblick darüber gegeben werden, was Data-Science und der Beruf Data-Scientist umfassen. Nach 4 Jahren seit Erscheinen der zweiten Auflage wurde die dritte Auflage notwendig, da sich Data-Science als Thema und vor allem die dazugehörende Softwaretechnologie weiterentwickelt. Spätestens mit der Veröffentlichung von ChatGPT ist das Thema künstliche Intelligenz in aller Munde und eine Einordnung von Data- Science, Machine Learning und Artificial Intelligence scheint dringend notwendig. Das Buch enthält neben einer Übersicht über Theorie und Praxis der Daten-Analyse nun auch Code-Beispiele in Python bzw. SQL und Cheat-Sheets zu ChatGPT und GenAI Tools.

Michael Oettinger ist ein freiberuflicher Data-Scientist und Geschäftsführer der oetti-ds GmbH. Er berät Unternehmen in unterschiedlichen Branchen. Nach einem Studium der Betriebswirtschaft mit Schwerpunkt auf mathematischen Verfahren und Marktforschung in Augsburg und Oviedo füllte er unterschiedliche Rollen bei PwC, IBM (u. a. SPSS), Fuzzy Logix und weiteren Softwareunternehmen aus. Als Mitglied bei MENSA beschäftigt er sich sowohl mit der menschlichen als auch mit der künstlichen Intelligenz. Schwerpunkt seiner Aktivitäten ist der konkrete und pragmatische Einsatz der existierenden analytischen Modelle in der betrieblichen Praxis mit den entsprechenden Softwaretools (v. a. Python, R, SQL, KNIME, RapidMiner, PySpark, und Tensorflow).

Datenanalyse

Im vorangegangenen Kapitel ging es um die Datenquellen, d. h. die Softwarekomponenten, in denen die zu analysierenden Daten gespeichert werden. In diesem Kapitel stehen nun die Komponenten im Fokus, mit denen die Analysen durchgeführt werden können. Sie sind die wichtigsten Werkzeuge für die Arbeit der Data-Scientists. Die Softwareprodukte und -services lassen sich unterscheiden in:

• Programmiersprachen,

• Data-Science-Plattformen,

• Machine Learning-Bibliotheken bzw. -Librarys sowie

• Machine Learning-Angebote der Cloud-Anbieter.

3.1 Programmiersprachen

Im Jahr 2018 hat Python Java als beliebteste Programmiersprache überholt. Das ist praktisch für Data-Scientists, denn Python ist die meistgenutzte Sprache für Machine Learning und die bedeutendste Schnittstelle zu allen relevanten Librarys. Alle anderen Sprachen kann man getrost vergessen!

Abbildung 3: PYPL PopularitY of Programming Language Dez. 2023.

Kurz vor der Rente stehende ‘Data-Miners‘ werden hier widersprechen und irgendwas von R faseln. Das Thema kann man aber aussitzen, es sei denn, im Unternehmen existiert noch ein Schrank voller Disketten mit geschäftskritischem R-Code. Dann sollte man den schleunigst in Python überführen, solange noch einer der Angestellten R-Kenntnisse aufweist.

Den historischen Verdienst von R als herstellerunabhängige Sprache für Machine Learning möchte ich damit nicht verleugnen, aber in die Zukunft gerichtet ist R der Programmiersprache Python bei Weitem unterlegen und wird daher noch an Bedeutung verlieren.

Rust wird derzeit (u. a. von Elon Musk) gehypt, aber ich wage die Prognose, dass es – ähnlich wie Scala zuvor – in einer Techie-Nische verbleiben und im Machine Learning-Mainstream nie hohe Bedeutung erreichen wird. Matlab ist eine herstellerexklusive Sprache und wird im Beliebtheitsranking mit Sicherheit nicht signifikant aufsteigen.

Nicht im PYPL-Ranking enthalten ist die Standarddatenbanksprache SQL. In der praktischen Arbeit in der Datenanalyse ist SQL aber wahrscheinlich sogar wichtiger als Python. Etwa 95 % des Zeitaufwandes in analytischen Aufgaben entstehen durch die Vor- und Aufbereitung der Daten, die meist SQL-Querys erfordert.

Fazit: Als Data-Scientist muss man SQL und Python können. Basta!

Im Folgenden soll übersichtsartig auf Python, R und SQL eingegangen werden.

3.1.1 Python

Python ist eine allgemeine höhere Programmiersprache, die seit Anfang der 1990er Jahre entwickelt wird. Das Ziel dabei war es, eine einfach zu erlernende, klar strukturierte, funktionale und objektorientierte Programmiersprache zu schaffen. Python ist weitgehend plattformunabhängig und als Open-Source-Produkt kostenlos verfügbar.

Die Strukturierung des Quellcodes erfolgt durch Einrückungen und nicht durch Klammern, wodurch eine Übersichtlichkeit des Programmcodes gegeben ist. Es handelt sich um eine Interpreter-Sprache, sodass einerseits die Entwicklung von Programmcode schneller abläuft (da kein Compiling notwendig ist), die Performance aber andererseits etwas geringer ausfällt als bei Compiler-Sprachen bzw. nur über Umwege verbessert werden kann.

Die Sprache kommt mit relativ wenigen Schlüsselwörtern aus und die Syntax ist vergleichsweise minimalistisch auf Übersichtlichkeit hin optimiert. Dadurch lassen sich Python-Programme oft knapper formulieren als in anderen Sprachen. Von der Idee her ist Python eine kompakte Sprache, die durch Bibliotheken übersichtlich aber funktional praktisch unbegrenzt erweitert werden kann.

Genau darin liegt ein maßgeblicher Grund, warum Python eine so große Bedeutung im Rahmen der Data-Science besitzt. Es sind die Programm- und Funktionsbibliotheken, die aus Python ein universelles Werkzeug für Data-Scientists machen. Durch die hohe Verbreitung von Python bieten auch viele der Standardsoftwarepakete eine Schnittstelle zu Python an. Dadurch lassen sich Python-Programme als Module in Data-Science-Plattformen einbinden. Apache Spark nutzt zur Steuerung und Parametrisierung neben seiner Muttersprache Scala noch Java und Python. Auch dadurch wird die Bedeutung von Python betont.

Python-Bibliotheken für Data-Science

Es gibt allgemeine Programmbibliotheken mit den grundlegenden mathematischen und datenmanipulierenden Verfahren. Dazu zählen vor allem die Folgenden:

• NumPy ist eine Programmbibliothek für die Handhabung von Vektoren, Matrizen oder generell großen multidimensionalen Arrays. Neben den Datenstrukturen bietet NumPy auch Funktionen für numerische Berechnungen.

• SciPy ist eine Python-Bibliothek mit mathematischen Werkzeugen wie Algorithmen zur numerischen Integration und Optimierung.

• Matplotlib ist eine Plotting-Library, die die grafische Darstellung mathematischer Funktionen erlaubt.

Neben diesen allgemeineren Bibliotheken sind zahlreiche Module speziell für die Bereiche Data-Mining bzw. Machine Learning verfügbar. Oft setzen die Module eine der grundlegenden Bibliotheken voraus. Bedeutend in diesem Bereich sind:

• Pandas (Python Data Analysis Library) umfasst Funktionen zur Manipulation und Analyse von Daten.

• Scikit-learn umfasst Klassifikations-, Regressions- und Clustering-Algorithmen. Unterstützt werden z. B. Random Forests, GradientBoosting, k-Means und DBSCAN.

• TensorFlow ist eine aus einem Google-Projekt entstandene Programmbibliothek für Graphenalgorithmen und neuronale Netze (s. Kapitel 3.3.1).

• Keras ist eine Open-Source-Bibliothek zum Thema Deep Learning, einerseits eine eigenständige Bibliothek aber auch Teil der TensorFlow-Core-API.

• PySpark ist eine Bibliothek und gleichzeitig die Schnittstelle zum Spark-Universum, mit dem die Vorteile des Parallel Computing in Spark genutzt werden können.

• Mlpy (Machine Learning Python) umfasst Machine Learning-Algorithmen u. a. für Regression, Klassifikation, Clustering und Dimensionsreduzierung.

• Statsmodels bietet grundlegende statistische Funktionen wie Tests, Datenexploration und Gütekriterien.

• NetworkX ist ein Softwarepaket für die Erstellung, Manipulation und Analyse komplexer Netzwerkstrukturen und Graphen.

• PyBrain unterstützt die Erstellung neuronaler Netzwerke.

• MDP 3.5 ist eine Bibliothek verbreiteter ML-Algorithmen, die als Module für Pipelines (Prozessketten) bzw. als Knoten eines Netzwerkes genutzt werden können.

• Theano und Caffe sind Deep-Learning-Bibliotheken für Python.

• Pattern ist eine Bibliothek, die Funktionalitäten in den Bereichen Web-Mining, Spracherkennung, Sentiment-Analyse und Machine Learning bietet.

• Vaex ermöglicht die Visualisierung, Exploration, Analyse und Machine Learning tabellarischer Datensätze, die nicht von der Größe des Arbeitsspeichers, sondern jener der Festplatte begrenzt sind. Dadurch können also auf einem üblichen Arbeitsplatzrechner Datensätze mit einem Umfang in der Größenordnung mehreren Hundert Gigabyte in vertretbarer Geschwindigkeit verarbeitet werden.2

Eine der bedeutendsten Arbeitsumgebungen für Data-Scientists ist das Jupyter-Notebook.

Ein Jupyter-Notebook ist ein versionierbares Dokument, das Eingabezellen (Python-Programmiercode sowie Beschreibungstext) und Ausgabezellen (z. B. Graphen, Diagramme und Ergebnisse) kombiniert und sich daher für das iterative Vorgehen bei analytischen Aufgaben hervorragend eignet.

In Kapitel 5.4 sind beispielhafte Python-Snippets aufgeführt und in Kapitel 5.5 wird anhand eines Jupyter-Notebooks ein typisches Machine Learning-Projekt skizziert.

3.1.2 R

R ist eine Programmiersprache für statistische Berechnungen und Grafiken, die sowohl in der Wissenschaft als auch in der Industrie als bedeutendste Standardsprache für statistische Problemstellungen galt. Sie ist Teil des GNU-Projekts und als Open-Source-Lösung für Windows, Mac OS, Linux und Unix erhältlich. Es handelt sich um eine Interpreter-Sprache, die nicht kompiliert werden muss.

Die einfachste Datenstruktur in R ist ein Vektor. Die Elemente von Vektoren (eindimensional), Matrizen (ein- oder zweidimensional) und Arrays (beliebig dimensional) müssen den gleichen Datentyp aufweisen, damit auf diese Rechenoperationen angewendet werden können. Neben diesen homogenen Datenstrukturen werden oft Data-Frames verwendet, um Daten als Datensatz darzustellen. Sie sind matrizenförmig, können jedoch aus Spalten unterschiedlicher Datentypen bestehen....

Erscheint lt. Verlag 17.3.2024
Sprache deutsch
Themenwelt Mathematik / Informatik Informatik
ISBN-10 3-384-17624-3 / 3384176243
ISBN-13 978-3-384-17624-0 / 9783384176240
Haben Sie eine Frage zum Produkt?
EPUBEPUB (Wasserzeichen)
Größe: 14,2 MB

DRM: Digitales Wasserzeichen
Dieses eBook enthält ein digitales Wasser­zeichen und ist damit für Sie persona­lisiert. Bei einer missbräuch­lichen Weiter­gabe des eBooks an Dritte ist eine Rück­ver­folgung an die Quelle möglich.

Dateiformat: EPUB (Electronic Publication)
EPUB ist ein offener Standard für eBooks und eignet sich besonders zur Darstellung von Belle­tristik und Sach­büchern. Der Fließ­text wird dynamisch an die Display- und Schrift­größe ange­passt. Auch für mobile Lese­geräte ist EPUB daher gut geeignet.

Systemvoraussetzungen:
PC/Mac: Mit einem PC oder Mac können Sie dieses eBook lesen. Sie benötigen dafür die kostenlose Software Adobe Digital Editions.
eReader: Dieses eBook kann mit (fast) allen eBook-Readern gelesen werden. Mit dem amazon-Kindle ist es aber nicht kompatibel.
Smartphone/Tablet: Egal ob Apple oder Android, dieses eBook können Sie lesen. Sie benötigen dafür eine kostenlose App.
Geräteliste und zusätzliche Hinweise

Buying eBooks from abroad
For tax law reasons we can sell eBooks just within Germany and Switzerland. Regrettably we cannot fulfill eBook-orders from other countries.

Mehr entdecken
aus dem Bereich
Konzepte, Methoden, Lösungen und Arbeitshilfen für die Praxis

von Ernst Tiemeyer

eBook Download (2023)
Carl Hanser Verlag GmbH & Co. KG
69,99
Konzepte, Methoden, Lösungen und Arbeitshilfen für die Praxis

von Ernst Tiemeyer

eBook Download (2023)
Carl Hanser Verlag GmbH & Co. KG
69,99