Artikel aus dem Jahr 2023

Die Additivität der Entropie bei unabhängigen Zufallsvariablen

Akzeptiert man die Entropie als eine Kenngröße einer Wahrscheinlichkeitsverteilung, die die Ungewissheit über den Ausgang eines Zufallsexperimentes beschreibt, so wird man fordern, dass sich bei unabhängigen Zufallsexperimenten die Entropien addieren. Um diese Aussage schärfer formulieren zu können, wird die gemeinsame Entropie H(X, Y) von zwei Zufallsvariablen eingeführt. Es wird gezeigt, dass die übliche Definition der Entropie die Additivitätseigenschaft bei unabhängigen Zufallsvariablen X und Y besitzt.

Die Additivität der Entropie bei unabhängigen Zufallsvariablen

Veranschaulichung der freien Energie bei einer isochoren Zustandsänderung im TS-Diagramm

Am Beispiel der isochoren Erwärmung werden die Eigenschaften der freien Energie F = U - TS und der gebundenen Energie G = TS erläutert. Speziell wird gezeigt, wie man ihre Veränderung darstellen kann, wenn man vom US-Diagramm zum TS-Diagramm übergeht.

Veranschaulichung der freien Energie bei einer isochoren Zustandsänderung im TS-Diagramm

Textverarbeitung mit R: Die Funktionen substr() und substring() zum Extrahieren von Substrings

Die Funktionen substr() und substring() werden eingesetzt, um aus einem String einen Substring zu extrahieren. Dazu müssen die Indizes angegeben werden, wo sich der Substring befindet. In der replacement-Version kann der Substring verändert werden, der Rest des Strings bleibt unverändert. Da die Funktionen vektorisiert sind, kann anstelle einer einzigen Zeichenkette auch ein Vektor von Zeichenketten verarbeitet werden.

Textverarbeitung mit R: Die Funktionen substr() und substring() zum Extrahieren von Substrings

Docker-Volumes Verstehen und Einsetzen

Docker-Volumes spielen in Containeranwendungen eine entscheidende Rolle. Sie bieten einen Mechanismus zum Speichern, Verwalten und Zugreifen auf Daten innerhalb von Containern sowie zwischen Containern und dem Host-Computer. Docker-Volumes sind wichtig, um Daten über den Lebenszyklus eines Containers hinaus beizubehalten, Daten zwischen Containern auszutauschen und die Datenintegrität in zustandsbehafteten Anwendungen sicherzustellen.

Grundlagen von Kubernetes mit Spring Boot und Java

In diesem Tutorial werden wir uns mit den Grundlagen von Kubernetes beschäftigen und mit K3D eine einfache Spring Boot Anwendung in einem lokalen Kubernetes-Cluster implementieren. In einem kleinen Glossar haben wir auch einige grundlegende Konzepte im Zusammenhang mit Containerisierung und Kubernetes gesammelt, wie Pods, Services oder Deployments. Es werden grundlegende Kenntnisse in Docker und Java/Maven vorausgesetzt.

Textverarbeitung mit R: Die Funktion paste() zum Zusammenfügen von Vektoren als Erweiterung von paste0()

Die Funktion paste() dient ähnlich wie die Funktion paste0() dazu, mehrere Vektoren in Zeichenketten zu verwandeln, die entsprechenden Komponenten zusammenzufügen (1.Schritt) und diese zu einer einzigen Zeichenkette zusammenzusetzen (2. Schritt). In beiden Schritten kann eine Zeichenkette als Trennungszeichen eingefügt werden (die Argumente sep beziehungsweise collapse). Die Funktion paste0() besitzt kein Argument sep; für Aufgaben, die sich auch mit paste0() erledigen lassen, können dadurch mit paste() einfachere Quelltexte geschrieben werden. Beispiele und Spezialfälle werden erläutert.

Textverarbeitung mit R: Die Funktion paste() zum Zusammenfügen von Vektoren als Erweiterung von paste0()

Textverarbeitung mit R: Die Funktion paste0() zum Zusammenfügen von Vektoren

Die Funktion paste0() verknüpft entsprechende Komponenten von mehreren Vektoren; die Komponenten werden dazu in Zeichenketten verwandelt. Wird das Argument collapse nicht gesetzt, wird dieser Vektor von Zeichenketten zurückgegeben. Wird das Argument collapse gesetzt (es muss eine Zeichenkette sein), werden die Komponenten zu einer einzigen Zeichenkette zusammengefügt, wobei das Argument collapse als Trennungszeichen eingefügt wird. Typische Anwendungen und Spezialfälle werden erläutert.

Textverarbeitung mit R: Die Funktion paste0() zum Zusammenfügen von Vektoren

Textverarbeitung mit R: Mit format() verwandte Funktionen

Die Funktion format.info() liefert Informationen über den Rückgabewert von format(). Die Funktion formatC() bildet eine Alternative zu format() und mit ihr werden Formatierungsanweisungen ähnlich wie in der Programmiersprache C formuliert. Die Funktion prettyNum() wird von formatC() intern genutzt, um Zahlen zu formatieren.

Textverarbeitung mit R: Mit format() verwandte Funktionen

GPTBot – der Webcrawler von OpenAI

Die neulich veröffentlichte Dokumentation von OpenAI zur Konfiguration von GPTBot für den Zugriff auf Websites hat eine Debatte über die Verwendung von Inhalten und den Rechten am geistigem Eigentum beim Trainieren von KI-Modellen. Die Community von DeviantArt hat sich schon viel früher mit dieser Frage beschäftig und entsprechende noai und noimageai Meta-Tags eingeführt.

Interpretation der Zufallsexperimente Ziehen mit Zurücklegen und Ziehen ohne Zurücklegen durch Pfade auf einem Gitter

Die Zufallsexperimente Ziehen mit Zurücklegen beziehungsweise Ziehen ohne Zurücklegen werden umformuliert in eine Zufallsbewegung auf einem Gitter. Dadurch lassen sich viele Herleitungen besser veranschaulichen. Gezeigt wird dies hier für die Verteilungen der Zufallsvariablen, die die Anzahl der Treffer oder die Wartezeit bis zu einem bestimmten Treffer beschreiben.

Interpretation der Zufallsexperimente Ziehen mit Zurücklegen und Ziehen ohne Zurücklegen durch Pfade auf einem Gitter

ChatGPT als Helfer in der Shell

ChatGPT ist schon ohnehin ein sehr mächtiges Werkzeug, über die Integration in die Kommandozeile, können wir es aber noch einen Ticken effektiver nutzen. In einer Schritt-für-Schritt Anleitung erstellen wir drei Scripte, die direkt die ChatGPT API in die zsh Shell einbinden. Und das (fast) ohne zusätzliche Bibliotheken und mit nur wenigen Zeilen Code.

Approximation von Funktionen durch Taylor-Polynome: die Integraldarstellung des Restgliedes

Um zu quantifizieren, wie gut ein Taylor-Polynom eine gegebene Funktion f(x) approximiert, wird das Restglied in Integraldarstellung hergeleitet. Ist f(x) genügend oft stetig differenzierbar, wird es sukzessive durch partielle Integration berechnet.

Approximation von Funktionen durch Taylor-Polynome: die Integraldarstellung des Restgliedes

Approximation von Funktionen durch Taylor-Polynome mit beliebigem Entwicklungspunkt

An zwei einfachen Beispielen (Logarithmusfunktion und Wurzelfunktion) wird demonstriert, wie man zu einer gegeben Funktion f(x) das Taylor-Polynom berechnet: Dazu wird der Ansatz verallgemeinert, wie zum Entwicklungspunkt 0 aus den Ableitungen von f(x) die Koeffizienten des Taylor-Polynoms berechnet werden.

Approximation von Funktionen durch Taylor-Polynome mit beliebigem Entwicklungspunkt

Approximation von Funktionen durch Taylor-Polynome: Motivation und einfache Beispiele

An zwei einfachen Beispielen (Exponentialfunktion und Kosinusfunktion) wird die Vorgehensweise demonstriert, wie man zu einer gegeben Funktion das Taylor-Polynom berechnet: Am Entwicklungspunkt wird der Funktionswert und der Wert der Ableitungen (bis zum Grad n) berechnet. Das Taylor-Polynom ist das Polynom n-ten Grades, das genau diese Funktions- und Ableitungswerte im Entwicklungspunkt besitzt. Weitere Eigenschaften der Taylor-Entwicklung werden nur angedeutet, aber hier nicht diskutiert.

Approximation von Funktionen durch Taylor-Polynome: Motivation und einfache Beispiele

Textverarbeitung mit R: Die Funktion format() zum Formatieren von Objekten für Ausgaben

Die Funktion format() dient dazu Ausgaben zu formatieren. Meist wird sie verwendet, um Gleitkommazahlen mit einer geeigneten Anzahl von gültigen Stellen darzustellen. Diese und weitere Einsatzmöglichkeiten (wissenschaftliche Darstellung von Zahlen) sowie Eigenschaften der Implementierung von format() (wie etwa weitere Eingabewerte, der Rückgabewert von format()) werden an zahlreichen Beispielen erläutert.

Machine Learning For Dummies

"Machine Learning For Dummies" bietet eine fundierte und zugleich praxisnahe Einführung in die Welt des maschinellen Lernens, bei der der Schwerpunkt klar auf der praktischen Anwendung liegt, anstatt sich in theoretischen Details zu verlieren. Die Autoren, John Paul Mueller und Luca Massaron, zeigen anschaulich, wie man mit Python und TensorFlow eigene Modelle erstellen, trainieren und optimieren kann. Schritt für Schritt lernen Einsteiger, wie maschinelles Lernen funktioniert und welche realen Probleme sich damit lösen lassen – von der Datenvorbereitung bis zur Implementierung komplexer Algorithmen. Das Buch ist ideal für Leser, die sich auf verständliche Weise und mit vielen praktischen Beispielen in dieses zukunftsweisende Thema einarbeiten möchten.

Machine Learning For Dummies