GPT#14 - Gerade oder Ungerade? - Ein Modell-Problem für KI

Aus: Six not so easy pieces for AI 

Ref.: https://interscience-akademie.de/2021/05/04/six-not-so-easy-pieces-for-ai/

Ist eine Zahl gerade (even) oder ungerade (odd)?  Diese Aufgabe ist so trivial, dass man kaum auf die Idee kommt, diese in Zusammenhang mit KI zu betrachten. Dennoch ist es quasi ein Modell-Problem, an dem man verschiedene Aspekte und Eigenschaften von “Künstlicher Intelligenz” verdeutlichen kann - insbesondere, woran KI scheitert.

Wir teilen diesen Blog #14 der Klarheit halber in “Unter-Blogs” auf, GPT#14.1,  usw., um die unterschiedlichen Aspekte einzeln zu behandeln - stets in Interaktion mit ChatGPT (3.5) natürlich.

Können: Zunächst fragen wir im Dialog, ob ChatGPT gerade / ungerade Zahlen unterscheiden kann. Alternativ soll das Sprachmodell auch ein Programm dazu vorschlagen. Leicht genug!

Lernen: Dann fragen wir nach dem Lernen dieser Fähigkeit! Die eigentliche “Intelligenz” besteht nicht im Schon-Können, sondern in der Fähigkeit, etwas (die Unterscheidung von gerade und ungerade) zu erlernen (Machine Learning). Also fragen wir als nächstes: Weiß ChatGPT, wie ein Kind diese Unterscheidung lernt? Dazu müsste es in den Pfründen der Trainingstexte ja einiges geben.

ChatGPT im Dialog die Unterscheidung “lernen” zu lassen, ist etwas trickig: diese Klassifikationsaufgabe kann man nicht mit Trainingsdaten (Zahlen) und Testdaten (ebenfalls Zahlen) durchführen, da das Sprachmodell bereits beliebige Zahlen richtig klassifizieren kann! Einen Effekt durch  “maschinelles Lernen” kann man daher nicht nachweisen. Wir ersetzen deshalb die Kategorien “gerade” und “ungerade” durch Farben (rot, grün). Zu unterscheiden, ob eine Zahl grün oder rot ist (nein, rot meint nicht negative Kontostände), muss  ChatGPT tatsächlich noch erst lernen.

Schließlich fordern wir ChatGPT auf, ein ML-Programm zu erstellen, also ein Programm, das lernt, gerade und ungerade zu unterscheiden. Programme bereitzustellen (und zu erläutern) ist offenbar ein Leichtes für ChatGPT. Aber tun die Programme auch, was sie sollen? Hier gerät das Sprachmodell in diverse Schwierigkeiten, die es selbst mit menschlicher Hilfestellung nicht überwinden kann - soweit wir dazu experimentiert haben.

Können revisited: Ob im Dialog oder als Programm, die Zahl 2 spielt immer die zentrale Rolle, wenn ChatGPT über gerade oder ungerade entscheidet - und so auch bei den “Lernaufgaben”. Mit der 2 als Parameter wird aber das “Wissen” von gerade und ungerade - quasi als Regel - bereits vorgegeben, statt es zu erlernen. Daher fragen wir ChatGPT nach einem Algorithmus (Programm), der gerade / ungerade unterscheiden kann, ohne dabei die 2 als Konstante zu verwenden. Das Ergebnis  falsch aber amüsant - und man kann ChatGPT beim “Lügen” zusehen.

Näheres in den Unter-Blogs:

14.1 Gerade oder ungerade? Ein ChatGPT-Dialog.

14.2 ChatGPT generiert ein Programm

14.3 ChatGPT lernt die Analogie rot/grün im Dialog

14.4  ChatGPT-generierte ML Programme

14.5 Gerade/Ungerade unterscheiden ohne die 2?

 

Für alle Unter-Blogs gilt:

Task & Prompt: Bernhard Thomas
Generator: ChatGPT (GPT 3.5)
Translator: n/a (DeepL für nachträgliche Übersetzung)
Editing: n/a (ChatGPT Originaltext)
Authoring: Bernhard Thomas
Programmausführung: Google Colab

 

17.02.2023

bernhard.thomas@interscience.de


GPT#9 Intelligente Obstkasse - Machine Learning mit ChatGPT

 ChatGPT generiert Machine Learning Programme

Aus: KI-Stories für den Informatikunterricht NRW - „Obstsalat-1 und -2“

Aufgabe: Maschinelles Lernen einer fiktiven Obst-Scannerkasse zur Klassifikation von Obstsorten anhand zweier Merkmale: Länge und Breite des Obststücks. Die Aufgabe besteht darin, den Kern eines Python-Programms unter Verwendung von ML Libraries zu generieren. Es werden zwei Verfahrensvarianten verlangt: Eine datenanalytische (SVM - Support Vector Machine) und eine mittels eines Künstlichen Neuronalen Netze (KNN).

Kommentar:

Dialog: Der Eingangsdialog  der Aufgabenstellung für zwei Obstsorten (Banane, Birne) führt das Sprachmodell dazu,  das “k-nearest neighbors” Verfahren (k-NN) anzuwenden.  Und das ohne explizite Anforderung und anders als im Dialog in  GPT#8. Das Verfahren wird kurz erklärt, was zunächst nicht erstaunlich ist. Erstaunlich ist aber, dass das Sprachmodell das Verfahren (ohne explizite Programmierung) in einfachster Form offenbar aus dem Dialog heraus anwenden kann. Insofern ist die Herleitung ähnlich der simplen Argumentation in GPT#8.

SVM: Offenbar “kennt” ChatGPT neben k-NN auch das SVM-Verfahren und bietet einen Support Vector Classifier (SVC) als Alternative an (mit Erläuterung). Auch hier bleibt unklar, wie das Sprachmodell es schafft, “auf Basis der Beispiel-Daten” (Zitat) ein Ergebnis des SVC für das Beispiel (13, 8)  korrekt herzuleiten.

Grundlage für die Entscheidung per SVC ist die sog. Entscheidungslinie (Decision Boundary, DB). Es wird deshalb im Weiteren versucht herauszufinden, ob das Sprachmodell die DB für diesen Fall “kennt”. Das ist offensichtlich nicht der Fall - das Sprachmodell “beschreibt”, wie eine DB im linearen Fall bestimmt werden kann und wie sie aussehen wird. Die  Koeffizienten (Achsenabschnitt und Steigung) kennt der Chat offenbar nicht. Richtig ist, dass man die erst kennt, wenn das SVC-Modell mit den Vorgabe-Daten trainiert ist (fit).

Die Aufforderung, dies zu tun, wird erwartungsgemäß mit einem Python-Programm ("Python" und "Programm" waren nicht vorgegeben, sind aber naheliegend für das Sprachmodell). Es wird sklearn als ML-Paket verwendet.

Zur Überprüfung wurde das Programm in Google Colab ausgeführt. Das Programm ist korrekt und umfasst auch die Ausgabe der angepassten DB-Koeffizienten in Form der Geradengleichung.

Ergänzend wird ChatGPT aufgefordert, die Daten und die DB grafisch darzustellen, was wie erwartet in Form eines Programm-Vorschlags geschieht. Die Ausführung in Google Colab stößt auf einen Fehler, der aber immerhin durch eine kleine Korrektur in der Zeile Z = model.predict  zu beheben ist. Die Grafik ist am Ende des Dialogs eingefügt.

KNN: Hier haben wir die Aufforderung nach einem Programm gestellt, dass die Klassifikation von 4 Obstsorten anhand der beiden Merkmale lernen soll. “Neuronales Netz” als Methode ist nicht explizit erwähnt, dafür aber mit ‘keras’  eine sehr verbreitete ML Bibliothek zur Modellierung von NN-Systemen benannt.

Die Antwort ist erwartungsgemäß ein Programm für ein NN-Model, das zudem näher erklärt wird.

Die Datenaufbereitung wird nicht näher beschrieben, insbesondere die für das Modell unterstellte, erforderliche one-hot-Kodierung der Klassen-Labels - ist aber auch zunächst nicht nachgefragt worden. Nachträglich gestellt, gibt ChatGPT die richtige Hinweise.

Dies ist keine Überraschung, da der Code und die Erläuterungen tausendfach in Beispielen und Tutorials im Internet zu finden sind.

Anm.: Wegen des Umfangs sei auf eine Übersetzung hier verzichtet.

Task & Prompt: Bernhard Thomas
Generator: ChatGPT
Translator: n/a
Editing: n/a (ChatGPT Originaltext)
Authoring: Bernhard Thomas
Credits: n/a

 

Dialog und SVM

Assume bananas and pears are characterized by their length and width in cm.

Okay, got it. Bananas and pears can be characterized by their length and width in centimeters.

If length is 20 and width is 5, what is it?

It is not possible to determine what the object is based solely on its length and width measurements of 20 cm and 5 cm. Further information is needed to identify the object.

This list characterises bananas (20,4),(17,5),(18,3.5),(15,5) and this list characterizes pears (10,6),(8.5,5),(11,8),(9.5,7). If a fruit is (15, 4.5) is a banana or a pear?

To determine whether a fruit with length 15 cm and width 4.5 cm is a banana or a pear, you could use a machine learning algorithm such as k-nearest neighbors (k-NN) to compare the given measurements with the previously observed banana and pear measurements. The k-NN algorithm would identify the k nearest fruits in the training data to the given measurements, and predict the class (banana or pear) based on the majority class of the nearest neighbors.

Using the sample data, a k-NN algorithm with k=1 would predict the fruit with length 15 cm and width 4.5 cm to be a banana, since the nearest neighbor (20, 4) is a banana.

What is (13, 8) banana or pear?

Using the same method as before, a k-NN algorithm with k=1 would predict the fruit with length 13 cm and width 8 cm to be a pear, since the nearest neighbor (11, 8) is a pear. However, this answer could change depending on the value of k used in the k-NN algorithm.

Actually, (13, 8) is a banana

Okay, if you say so. In that case, the fruit with length 13 cm and width 8 cm would be considered a banana.

Instead of k-NN use a SVC

Sure, a Support Vector Machine (SVM) classifier, such as a Support Vector Classification (SVC) algorithm, could also be used to predict whether a fruit with length 13 cm and width 8 cm is a banana or a pear.

The SVC algorithm creates a decision boundary to separate the classes in the feature space, in this case the length and width of the fruit. The SVC algorithm tries to find the optimal hyperplane that maximally separates the two classes, bananas and pears, in the feature space. Points on different sides of the hyperplane are classified as belonging to different classes.

Given the sample data, an SVC algorithm would fit the data and create a decision boundary in the feature space. The fruit with length 13 cm and width 8 cm would then be classified based on which side of the decision boundary it lies on, either being predicted as a banana or a pear.

So what is (13, 8)?

Based on the sample data, a Support Vector Classification (SVC) algorithm would predict the fruit with length 13 cm and width 8 cm to be a banana.

What is the decision boundary for this sample set?

The decision boundary is a hyperplane in the feature space that separates the two classes, bananas and pears, into distinct regions. The hyperplane is defined by a linear equation, and the coefficients of the equation are determined by the Support Vector Classification (SVC) algorithm during the training phase.

In this case, the feature space is two-dimensional, with one axis representing the length of the fruit and the other axis representing the width. The SVC algorithm would fit a hyperplane to the data, such that the bananas and pears are separated as much as possible.

It is not possible to determine the exact equation of the decision boundary without additional information, such as the specific SVC algorithm used and the values of the parameters for that algorithm, as well as the training data.

Training data are the lists above, use linear kernel and C=1

Okay, given the sample data and the specified SVC algorithm parameters (linear kernel and C=1), we can fit the SVC model to the data and visualize the decision boundary.

With a linear kernel, the decision boundary will be a straight line in the feature space that separates the two classes, bananas and pears. The value of C determines the trade-off between a smooth decision boundary and classifying all the training points correctly. A smaller value of C will result in a smoother decision boundary, while a larger value of C will aim to classify all the training points correctly, potentially resulting in a more complex decision boundary.

To obtain the equation of the decision boundary, we would need to fit the SVC model to the sample data and extract the coefficients of the linear equation that defines the hyperplane. Without more information, it is not possible to determine the exact equation of the decision boundary.

So please fit the SVC model to the data given above and show the equation of the decision boundary

To fit the SVC model with a linear kernel and C=1 to the given training data, we can use Python's scikit-learn library. Here's an example code snippet to fit the model and extract the coefficients of the decision boundary:

Running this code will output the equation of the decision boundary, which is a linear equation in two variables (x and y) that represents the separating hyperplane in the feature space:

Note that the coefficients of the decision boundary are specific to the training data and the parameters used in the SVC model (linear kernel and C=1). If the training data or the parameters were to change, the coefficients and the decision boundary would also change.

Make a plot of the data and the decision boundary

Sure, here's an example code snippet that uses matplotlib to create a scatter plot of the training data and the decision boundary obtained from the SVC model:

This code creates a scatter plot of the training data, with bananas plotted as blue dots and pears plotted as orange dots. It then creates a contour plot of the decision boundary obtained from the SVC model, which is a straight line in this case. The plot also includes labels, a title, and a legend.

The resulting plot should show the distribution of bananas and pears in the feature space, with the decision boundary separating the two classes.

Die Grafik

Mehrschichtiges Neuronales Netz

Write a python code for a classifier for four classes and two features using keras

Here is an example of a Python code using Keras to create a classifier for four classes and two features

In this example, the input layer has two neurons (one for each feature), and the output layer has four neurons (one for each class). The hidden layer has 8 neurons and uses the ReLU activation function. The output layer uses the softmax activation function, which is commonly used for multiclass classification problems. The model is then compiled using the categorical_crossentropy loss function and the Adam optimizer. Finally, the model is trained on the training data using the fit() method, and evaluated on the test data using the evaluate() method.

Note that the X_train, y_train, X_test, y_test are the training and test dataset and should be provided before running the code. Also, this is just an example, you may want to adjust the number of neurons, layers, epochs and batch size based on your dataset and problem.

What are the data format requirements for this model?

The data format requirements for this model depend on the input data shape and the data type of the features and labels.

Assuming the input data is in the form of a numpy array, the input data (X) should have a shape of (n_samples, n_features), where n_samples is the number of samples (rows) and n_features is the number of features (columns). In this case, since we have two features, each row of X should contain two values.

The labels (y) should also be a numpy array, with a shape of (n_samples, n_classes), where n_classes is the number of classes in the classification problem (in this case, 4). Each row of y should be a one-hot encoded vector indicating the class label for that sample. For example, if a sample belongs to class 2, the corresponding row of y should be [0, 0, 1, 0].

Additionally, the input data and labels should be of the appropriate data type for the model. In this case, the input data should be a float32 data type, and the labels should be integers or categorical data type.

It's also important to note that the input data and labels should be properly preprocessed before feeding into the model. This may include tasks such as normalization, scaling, and encoding of categorical variables.

 

07.02.2023

bernhard.thomas@interscience.de

 

 


GPT#10 - Reverse Prompting

ChatGPT generiert die Aufforderung zu einem Text

 

Aufgabe: Zu einem vorgegeben Text (menschlicher Autor) soll ChatGPT die Aufforderung (Prompt) liefern, mit der das Sprachmodell diesen Text generieren würde. Der Text kann eine Variante des ursprünglichen sein, soll aber inhaltlich das Gleiche ausdrücken. (Zur Probe, kann die generierte Aufforderung wiederum als Prompt für ChatGPT verwendet werden.)

Kommentar: Wir stellen die Aufgabe für zwei Textarten: 1. Ein vorgegebenes Python Programm, das zuvor von ChatGPT generiert wurde. 2. Ein durchaus emotionaler Brief eines Vaters an seinen Sohn.

Die Aufgabe ist für das Sprachmodell offenbar leicht zu lösen, da es ja auch durchaus Zusammenfassungen von längeren Texten beherrscht. Allerdings muss hier die „Ansprache“ in Form einer Aufforderung an ChatGPT formuliert sein. In der „Probe“ wird der Brief-Text ausführlicher als der Original-Text.

Übersetzung mit DeepL.com online am Ende.

  • Task & Prompt: Bernhard Thomas
  • Generator: ChatGPT
  • Translator: n/a (DeepL für nachträgliche Übersetzung)
  • Editing: n/a (ChatGPT Originaltext)
  • Authoring: Bernhard Thomas
  • Credits: Ulrich Trottenberg

Beispiel 1.

Write a prompt for ChatGPT to generate the following result. 

"Here is an example of how to multiply two arrays element-wise using the NumPy library: 

import numpy as np
# Define the arrays
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
# Multiply the arrays element-wise
result = array1 * array2
print(result)"

"Generate a code snippet in Python using NumPy to multiply two arrays element-wise and print the result."

Beispiel 2.

Write a prompt for ChatGPT to generate the following result. "Dear Son, I understand that you may feel that I am more interested in concepts than in details, especially when it comes to discussing topics like ChatGPT. However, it hurts me to hear that you believe this makes me arrogant. I assure you that this is not the case, and I have no intention of coming across as arrogant. I hope you can understand that my interest in concepts is simply a part of my way of thinking and learning. It does not mean that I do not value the details or that I think less of them. Instead, I believe that understanding the big picture helps me to better understand and appreciate the smaller pieces. I value your respect and understanding, and I hope we can continue to have open and honest conversations about any concerns you may have in the future. Love, Dad"

Write a letter from a father to his son, addressing the son's feelings that the father is more interested in concepts than details and may come across as arrogant. The father wants to assure the son that this is not the case and explain his perspective on concepts and details. The father values the son's respect and understanding and hopes for open and honest conversations in the future.

Verwendung als Prompt:

Write a letter from a father to his son, addressing the son's feelings that the father is more interested in concepts than details and may come across as arrogant. The father wants to assure the son that this is not the case and explain his perspective on concepts and details. The father values the son's respect and understanding and hopes for open and honest conversations in the future.

Dear Son,

I hope this letter finds you well. I want to talk to you about something that has been weighing on my mind lately. You mentioned that you feel like I am more interested in concepts than details, especially when it comes to discussing topics like ChatGPT. I understand why you may feel this way, but I want to assure you that it's not because I think less of details or because I want to come across as arrogant.

You see, my interest in concepts is simply a part of my way of thinking and learning. I find it helpful to understand the big picture first because it helps me to better understand and appreciate the smaller pieces. It's not that I don't value the details, but rather that I believe understanding the concept behind something is important for grasping the details.

I can understand how this may come across as arrogance, and I apologize if it ever made you feel that way. It was never my intention, and I want to make sure that you understand that. Your opinion and feelings are important to me, and I value your respect and understanding.

I hope we can continue to have open and honest conversations about any concerns you may have in the future. I want to be there for you and support you in any way that I can.

With all my love,

Dad

Roh-Übersetzung mit DeepL.com online (ohne Korrekturen):

Übersetzung Beispiel 1.

Schreiben Sie eine Eingabeaufforderung für ChatGPT, um das folgende Ergebnis zu erhalten.

„Hier ist ein Beispiel dafür, wie man zwei Arrays mit der NumPy-Bibliothek elementweise multipliziert:

import numpy as np
# Define the arrays
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
# Multiply the arrays element-wise
result = array1 * array2
print(result)"

 

"Generieren Sie einen Codeschnipsel in Python mit NumPy, um zwei Arrays elementweise zu multiplizieren und das Ergebnis zu drucken."

Übersetzung Beispiel 2.

Schreiben Sie eine Eingabeaufforderung für ChatGPT, um das folgende Ergebnis zu erhalten. 

"Lieber Sohn, ich verstehe, dass du das Gefühl hast, dass ich mehr an Konzepten als an Details interessiert bin, besonders wenn es um Themen wie ChatGPT geht. Es schmerzt mich jedoch zu hören, dass du glaubst, dass ich dadurch arrogant bin. Ich versichere Ihnen, dass dies nicht der Fall ist, und ich habe nicht die Absicht, arrogant zu wirken. Ich hoffe, Sie können verstehen, dass mein Interesse an Konzepten einfach ein Teil meiner Denk- und Lernweise ist. Das bedeutet nicht, dass ich die Details nicht schätze oder dass ich weniger von ihnen halte. Vielmehr glaube ich, dass das Verständnis des großen Ganzen mir hilft, die kleineren Teile besser zu verstehen und zu schätzen. Ich schätze Ihren Respekt und Ihr Verständnis, und ich hoffe, dass wir auch in Zukunft offene und ehrliche Gespräche über alle Ihre Anliegen führen können. In Liebe, Papa"

Schreiben Sie einen Brief eines Vaters an seinen Sohn, in dem er auf das Gefühl des Sohnes eingeht, dass der Vater mehr an Konzepten als an Details interessiert ist und arrogant wirken könnte. Der Vater möchte dem Sohn versichern, dass dies nicht der Fall ist, und seine Sichtweise von Konzepten und Details erklären. Der Vater schätzt den Respekt und das Verständnis des Sohnes und hofft auf offene und ehrliche Gespräche in der Zukunft.

Verwendung als Prompt:

Schreiben Sie einen Brief eines Vaters an seinen Sohn, in dem er auf das Gefühl des Sohnes eingeht, dass der Vater mehr an Konzepten als an Details interessiert ist und arrogant wirken könnte. Der Vater möchte dem Sohn versichern, dass dies nicht der Fall ist, und seine Sichtweise von Konzepten und Details erklären. Der Vater schätzt den Respekt und das Verständnis des Sohnes und hofft auf offene und ehrliche Gespräche in der Zukunft.

Lieber Sohn,

ich hoffe, dass es dir mit diesem Brief gut geht. Ich möchte mit dir über etwas sprechen, das mir in letzter Zeit auf der Seele liegt. Du hast erwähnt, dass du das Gefühl hast, dass ich mehr an Konzepten als an Details interessiert bin, besonders wenn es um Themen wie ChatGPT geht. Ich verstehe, warum Sie das so empfinden, aber ich möchte Ihnen versichern, dass es nicht daran liegt, dass ich weniger an Details interessiert bin oder dass ich arrogant wirken möchte.

Sehen Sie, mein Interesse an Konzepten ist einfach ein Teil meiner Denk- und Lernweise. Ich finde es hilfreich, zuerst das große Ganze zu verstehen, weil es mir hilft, die kleineren Teile besser zu verstehen und zu schätzen. Es ist nicht so, dass ich die Details nicht schätze, sondern dass ich glaube, dass das Verständnis des Konzepts hinter einer Sache wichtig ist, um die Details zu erfassen.

Ich kann verstehen, dass das als Arroganz rüberkommt, und ich entschuldige mich dafür, wenn ich Ihnen diesen Eindruck vermittelt habe. Das war nie meine Absicht, und ich möchte sicherstellen, dass Sie das verstehen. Ihre Meinung und Ihre Gefühle sind mir wichtig, und ich schätze Ihren Respekt und Ihr Verständnis.

Ich hoffe, dass wir auch in Zukunft offene und ehrliche Gespräche über alle Ihre Anliegen führen können. Ich möchte für dich da sein und dich auf jede erdenkliche Weise unterstützen.

Mit all meiner Liebe,

Papa

17.01.2023

bernhard.thomas@interscience.de


GPT#8 - Obst sortieren - ChatGPT lernt etwas

Das Sprachmodell lernt Klassifizierung von Obststücken aus Angaben von Länge und Breite

Aus: KI-Stories für den Informatikunterricht NRW - „Obstkasse"

Aufgabe: Eine fiktive Scanner-Kasse soll lernen, anhand von zwei Merkmalen – hier Länge und Breite des Obststücks – Bananen und Birnen zu unterscheiden. Ein typischer Fall für ein lineares Support-Vector Verfahren. Wie geht ChatGPT als vortrainiertes Sprachmodell damit um, d.h. allein aus Analyse und Synthese von sprachlichen Inhalten und numerischen Werten?

Kommentar: ChatGPT interpretiert die Zahlenpaare zur Längen- und Breitenangabe korrekt und ordnet sie den Obstsorten zu. Die Entscheidung, ob ein Obststück mit gegebener Länge, Breite zu Bananen oder zu Birnen zu zählen ist, wird offenbar aufgrund der Min-/Max-Werte der Vorgabedaten getroffen. Das Sprachmodell findet also eine plausible Methode. Das ist schon erstaunlich, denn es erfordert eine Textinterpretation, die mathematisch-logischen Abwägungen generiert und numerische Werte einbezieht. Die Abwägungen sind an sich korrekt, aber eingeschränkt im Vergleich zu einer SV-Klassifikation. (Dazu lassen wir in GPT#9 ein Machine Learning Programm generieren.)

Den als Prompt formulierten Wunsch einer Darstellung der Daten als Scatter-Plot beantwortet ChatGPT mit einem funktionierenden Python Program – ohne dass der Prompt die Anforderung eines Programms explizit enthält. Das Programm an sich ist Standard und könnte so aus dem riesigen Textkorpus stammen.

Lernen oder Lernen? Der Vergleich dieser Aufgabe und der aus #9 führt auf einen interessanten Aspekt. ChatGPT ist als KI-System trainiert auf die allgemeine "Aufgabe" Texte fortzusetzen aus Beständen der imensen Datenbasis. Die Prompts in #9 und #8 (hier) stellen eine spezifische Machine Learning Aufgabe. Der Unterschied: In #9 schlägt ChatGPT ML-Verfahren für die Klassifikationsaufgabe bzw. soll diese genereiren (in Form von Programmen); hier (#8) dagegen soll ChatGPT "selbst" die Klassifikation lernen. Der Input besteht hier direkt in dem Dialog, aus dem auch die Daten entnommen werden; das in #9 generierte Programm hat die "Fähigkeit" Input-Daten in bestimmter Form aufzunehmen und sich damit zu trainieren.

Das eröffnet eine andere Perspektive auf Fragen vom Typ "Kann eine KI ... ?". Zum Einen: Gibt es ein ML Programm, dass diese Fähigkeit lernen kann? Zum Anderen: Gibt es ein KI-System, dass lernt oder gelernt hat, Verfahren (z.B. ein ML-Programm) zu generieren, die die betreffenden Fähigkeiten erlernt. Wir sehen hier möglicherweise den Ansatz eines Übergangs von sog. schwacher KI zu genereller KI.

 

  • Task & Prompt: Bernhard Thomas
  • Generator: ChatGPT
  • Translator: n/a (DeepL Übersetzung als Nachbereitung)
  • Editing: n/a (ChatGPT Originaltext)
  • Authoring: Bernhard Thomas
  • Credits: n/a

 

Assume bananas and pears are characterized by their length and width in cm.

I understand that you are assuming that bananas and pears can be characterized by their length and width in centimeters. Is there a specific question or task that you would like me to help with regarding this information?

If length is 20 and width is 5, what is it?

Without additional information, it is not possible to determine if a fruit with a length of 20cm and a width of 5cm is a banana or a pear. Both fruits come in various sizes and shapes. It could be a banana or pear but also other fruits may have similar measurements.

This list characterises bananas (20,4),(17,5),(18,3.5),(15,5) and this list characterizes pears (10,6),(8.5,5),(11,8),(9.5,7). If a fruit is (15, 4.5) is a banana or a pear?

From the information you've provided, it appears that the list of measurements you've given characterizes bananas as having a length that is greater than 15cm and a width that is between 3.5cm and 5cm. Pears, on the other hand, are characterized by having a length that is less than 11cm and a width that is between 5cm and 8cm.

Given this information, a fruit with measurements of (15, 4.5) could be a banana, as it falls within the length and width range that you've provided for bananas. It is important to note that this is based on the data you've provided, if you have more data or other characteristics to differentiate between bananas and pears this answer would not be accurate.

What is (13, 8) banana or pear?

Based on the information you've provided, a fruit with measurements of (13,8) would not be a banana as the length (13cm) is less than the minimum length provided for bananas (15cm) and it would not be a pear either, as the width (8cm) is greater than the maximum width provided for pears (8cm). This measurements fall outside the range provided for both fruits, so it is not possible to determine if it is a banana or a pear based on the information provided. It is important to note that this is based on the data you've provided, if you have more data or other characteristics to differentiate between bananas and pears this answer would not be accurate.

Thank you

You're welcome! I'm glad I could help. Let me know if you have any other questions or if there's anything else I can do for you.

Please make a scatter plot of the data

I'm sorry, I am a text-based AI and I don't have the ability to create visualizations such as scatter plots. However, you can easily create a scatter plot using various tools such as excel, R or Python. If you want to use python, you can use libraries like matplotlib or seaborn to create scatter plots. Here's an example of how you could create a scatter plot using the data you provided with matplotlib:

import matplotlib.pyplot as plt
bananas = [(20,4),(17,5),(18,3.5),(15,5)]
x_bananas = [i[0] for i in bananas]
y_bananas = [i[1] for i in bananas]
pears = [(10,6),(8.5,5),(11,8),(9.5,7)]
x_pears = [i[0] for i in pears]
y_pears = [i[1] for i in pears]
plt.scatter(x_bananas, y_bananas, color = 'b', label = 'bananas')
plt.scatter(x_pears, y_pears, color = 'g', label = 'pears')
plt.xlabel('Length (cm)')
plt.ylabel('Width (cm)')
plt.legend()
plt.show()

I (the human author) ran this as a python notebook in Google Colab, and here is the perfect result:

Roh-Übersetzung mit Deepl.com (online)

Nehmen Sie an, dass Bananen und Birnen durch ihre Länge und Breite in cm charakterisiert sind.

Ich verstehe, dass Sie davon ausgehen, dass Bananen und Birnen durch ihre Länge und Breite in Zentimetern charakterisiert werden können. Gibt es eine bestimmte Frage oder Aufgabe, bei der ich Ihnen helfen soll?

Wenn die Länge 20 und die Breite 5 beträgt, wie groß ist sie dann?

Ohne zusätzliche Informationen ist es nicht möglich zu bestimmen, ob eine Frucht mit einer Länge von 20 cm und einer Breite von 5 cm eine Banane oder eine Birne ist. Beide Früchte gibt es in verschiedenen Größen und Formen. Es könnte sich um eine Banane oder eine Birne handeln, aber auch andere Früchte können ähnliche Maße haben.

Diese Liste charakterisiert Bananen (20,4),(17,5),(18,3.5),(15,5) und diese Liste charakterisiert Birnen (10,6),(8.5,5),(11,8),(9.5,7). Wenn eine Frucht (15, 4,5) ist, ist sie dann eine Banane oder eine Birne?

Aus den von Ihnen gelieferten Informationen geht hervor, dass die von Ihnen angegebene Liste von Maßen Bananen mit einer Länge von mehr als 15 cm und einer Breite zwischen 3,5 und 5 cm charakterisiert. Birnen hingegen haben eine Länge von weniger als 11 cm und eine Breite zwischen 5 und 8 cm.

Angesichts dieser Informationen könnte eine Frucht mit den Maßen (15, 4,5) eine Banane sein, da sie in den Längen- und Breitenbereich fällt, den Sie für Bananen angegeben haben. Wenn Sie mehr Daten oder andere Merkmale zur Unterscheidung zwischen Bananen und Birnen haben, wäre diese Antwort nicht korrekt.

Was ist (13, 8) Banane oder Birne?

Auf der Grundlage der von Ihnen gelieferten Informationen wäre eine Frucht mit den Maßen (13,8) keine Banane, da die Länge (13 cm) unter der für Bananen angegebenen Mindestlänge (15 cm) liegt, und sie wäre auch keine Birne, da die Breite (8 cm) größer ist als die für Birnen angegebene Höchstbreite (8 cm). Diese Maße liegen außerhalb des für beide Früchte angegebenen Bereichs, so dass es nicht möglich ist, anhand der Angaben zu bestimmen, ob es sich um eine Banane oder eine Birne handelt. Es ist wichtig zu beachten, dass dies auf den von Ihnen angegebenen Daten basiert. Wenn Sie mehr Daten oder andere Merkmale zur Unterscheidung zwischen Bananen und Birnen haben, wäre diese Antwort nicht korrekt.

Vielen Dank für die Antwort.

Gern geschehen! Ich bin froh, dass ich helfen konnte. Lassen Sie mich wissen, wenn Sie weitere Fragen haben oder wenn ich noch etwas für Sie tun kann.

Bitte erstellen Sie ein Streudiagramm der Daten

Es tut mir leid, ich bin eine textbasierte KI und habe nicht die Möglichkeit, Visualisierungen wie Streudiagramme zu erstellen. Sie können jedoch mit verschiedenen Tools wie Excel, R oder Python leicht ein Streudiagramm erstellen. Wenn Sie Python verwenden möchten, können Sie Bibliotheken wie matplotlib oder seaborn verwenden, um Streudiagramme zu erstellen. Hier ein Beispiel für die Erstellung eines Streudiagramms unter Verwendung der Daten, die Sie mit matplotlib bereitgestellt haben:

[Program und Grafik s.o.]

Übersetzt mit www.DeepL.com/Translator (kostenlose Version)

 

20.01.2023

bernhard.thomas@interscience.de


GPT#13 - Mensch oder Maschine - Wer war's?

 

Aufgabe: Eine Passage aus der Co-Writing Story und ein e-mail Text an einen Freund - zwei unterschiedliche Texttypen - soll der Textgenerator ChatGPT “selbst” daraufhin beurteilen, welcher der Texte (von ChatGPT) generiert und welcher (vom Autor) “handgeschrieben” ist.

Kommentar: Die Unterscheidung, ob ein Text maschinen-generiert oder von einem menschlichen Autor geschrieben ist (oder eine Mischung davon ist) treibt die Szene um - insbesondere in Bildungseinrichtungen. Wie kann man unterscheiden, was von wem ist? Als Mensch kann man sich die oben gestellte Aufgabe testweise einmal selbst stellen. Ansonsten setzt man die Hoffnung in gesonderte Analyse-Tools zur automatisierten Entscheidungsfindung. Wir haben einige dieser Tools mit den Texten dieser Aufgabe getestet; nur  in einem Fall erfolgte die richtige Entscheidung (GPTZero).

Interessanter ist es, diese Aufgabe (als Prompt) dem Generator selbst zu stellen, hier also ChatGPT.

Das Ergebnis ist auf interessante Weise paradox. ChatGPT hält den “selbst”-generierten Text (Text 1) für menschlichen Ursprungs, den zweiten (Text 2) für ChatGPT-generiert. Und ChatGPT liefert auf Nachfrage auch eine stichhaltige Begründung (s.u.). Die Paradoxie liegt darin, dass ChatGPT den “selbst”-generierten Text 1 für zu “zu gut” hält, als dass er nicht-menschlichen Ursprungs sein könnte! Nach menschlichen Begriffen fast eine Überheblichkeit.

Mensch oder Maschine? Text 1 ist im Zuge des Co-Writing Experiments (#11, #12) entstanden, also von ChatGPT generiert auf der Basis eines Wechseln von menschlichen und generierten Texten. Von daher können “menschliche” Attitüden im Text gesteuert sein durch die Texte im Dialog.

Die Text-Kompetenz von ChatGPT basiert bekanntlich auf dem enormen Umfang an zuvor menschen-generierten Textquellen und menschlichen “Hilfen”  im Training. Das ist zunächst vergleichbar mit einem menschlichen Autor, der allerdings mit einem bescheidenerem Umfang auskommt. ChatGPT “produziert” Texte allerdings (zur Zeit noch)  nach einem ganz anderen Prozess als ein menschlicher Autor. Die Fortsetzung eines bestehenden Textes (Prompt oder oder bereits generiert) erfolgt durch Zufallsauswahl aus den in der Trainingsbasis “passendsten” (d.h. am besten gewichteten) Folge-Textteilen. Dieser Prozess - so komplex er algorithmisch auch ist -  verfolgt insbesondere kein Ziel, folgt keiner impliziten Logik, konstruiert keine bedarfsgerechten neuen sprachlichen Konstruktionen. Gegebenheiten, die einem menschlichen Autor mit deutlich kleinerer “Datenbasis” zur Verfügung stehen. (Wir vertiefen hier nicht, wie der Mensch diese Fähigkeiten entwickelt hat.) Vom Ergebnis her betrachtet liefert der Prozess des Sprachmodells dann etwas, was als zielgerichtet, logisch plausibel und kreativ überrascht.

  • Task & Prompt: Bernhard Thomas
  • Generator: ChatGPT
  • Translator: n/a (DeepL für Übersetzung in Nacharbeit)
  • Editing: n/a (ChatGPT Originaltext)
  • Authoring: Bernhard Thomas
  • Credits: n/a

 

Find out which of the following two texts is written by a human author and which one is generated by ChatGPT.  Text number one is 

"She decided to have a drink and rest for a little while, as she felt emotionally and mentally exhausted. She walked over to the mini-bar and poured herself a glass of whiskey. She took a sip and let the warm liquid soothe her throat and calm her nerves. She then lay down on the bed and closed her eyes, letting the gentle hum of the city outside lull her into a peaceful sleep. She knew that she would have to face her grief head-on and deal with it in her own way, but for now, she needed this small moment of respite to recharge and gather her strength." 

Text number two is 

"Dear Pete, thanks for the song text you sent me yesterday. It is very good and I think I can write the music and present the song on our next stage event. Hope you will enjoy listening to the song. Of course, I will acknowledge your authorship on the sleeve. See you soon my friend!"

Text number one is written by a human author. Text number two is generated by ChatGPT.

 

Why do you think so?

Text number one is written in a more natural language, using descriptive language and expressing emotions, thoughts and sensory experiences, which are characteristics of human writing. Text number two is more formal and straightforward, lacking the emotional depth and complexity of human writing, and following a specific structure of a letter which suggests it is generated by a language model like ChatGPT.

 

Can you give probalilities?

I am a language model and do not have the ability to assign probabilities, but I can confidently say that text number one was written by a human author and text number two was generated by ChatGPT based on their language characteristics.

 

Übersetzt mit www.DeepL.com/Translator (kostenlose Version)

Finden Sie heraus, welcher der beiden folgenden Texte von einem menschlichen Autor geschrieben wurde und welcher von ChatGPT generiert wurde.  Text Nummer eins ist 

"Sie beschloss, etwas zu trinken und sich ein wenig auszuruhen, da sie sich emotional und geistig erschöpft fühlte. Sie ging zur Minibar und schenkte sich ein Glas Whiskey ein. Sie nahm einen Schluck und ließ die warme Flüssigkeit ihre Kehle beruhigen und ihre Nerven entspannen. Dann legte sie sich auf das Bett, schloss die Augen und ließ sich vom sanften Rauschen der Stadt in einen friedlichen Schlaf wiegen. Sie wusste, dass sie sich ihrem Kummer stellen und ihn auf ihre Weise bewältigen musste, aber im Moment brauchte sie diesen kleinen Moment der Ruhe, um sich zu erholen und neue Kräfte zu sammeln. 

Text Nummer zwei lautet 

"Lieber Pete, danke für den Songtext, den du mir gestern geschickt hast. Er ist sehr gut, und ich denke, ich kann die Musik schreiben und den Song auf unserer nächsten Bühnenveranstaltung präsentieren. Ich hoffe, es wird dir Spaß machen, den Song zu hören. Natürlich werde ich deine Urheberschaft auf dem Cover anerkennen. Bis bald, mein Freund!"

Text Nummer eins ist von einem menschlichen Autor geschrieben. Text Nummer zwei wurde von ChatGPT generiert.

 

Warum glauben Sie das?

Text Nummer eins ist in einer natürlicheren Sprache geschrieben, verwendet eine beschreibende Sprache und drückt Emotionen, Gedanken und Sinneserfahrungen aus, was Merkmale des menschlichen Schreibens sind. Text Nummer zwei ist formeller und geradliniger, ohne die emotionale Tiefe und Komplexität menschlichen Schreibens, und folgt einer bestimmten Struktur eines Briefes, was darauf hindeutet, dass er von einem Sprachmodell wie ChatGPT erzeugt wurde.

 

Können Sie Wahrscheinlichkeiten nennen?

Ich bin ein Sprachmodell und habe nicht die Fähigkeit, Wahrscheinlichkeiten zuzuordnen, aber ich kann mit Sicherheit sagen, dass Text Nummer eins von einem menschlichen Autor geschrieben wurde und Text Nummer zwei von ChatGPT auf der Grundlage ihrer sprachlichen Merkmale generiert wurde.

Übersetzt mit www.DeepL.com/Translator (kostenlose Version)

24.01.2023

bernhard.thomas@interscience.de


GPT#3 - Father and Son

Ein Vater-Sohn-Konflikt im Mail-Dialog

Aufgabe: Die typische Situation – der Vater macht sich Sorgen um die Zukunft seines Sohnes, der offenbar seine eigenen Vorstellungen verwirklichen will. Er drückt diese explizit aus und ChatGPT generiert eine emphatische  E-Mail an den Sohn. Anschließend soll eine Antwort des Sohnes an den Vater erfolgen.

Kommentar: Dies ist eine eher typische Anwendung, für die ChatGPT gedacht ist – Textgenerierung. Interessant ist, dass der Prompt für die Antwort unspezifisch ist, die E-Mail aber auf die Sorgen des Vaters eingeht und mögliche Gedanken des Sohnes einfügt.

Übersetzung des Dialogs ins Deutsche mit DeepL.com und kleinen Verbesserungen.

 

  • Task & Prompt: Bernhard Thomas
  • Generator: ChatGPT
  • Translator: n/a (DeepL Nachbearbeitung)
  • Editing: n/a (ChatGPT Originaltext), kleine Korrekturen DeepL Text
  • Authoring: Bernhard Thomas
  • Credits: Prompt inspired by Cat Stevens aka Yusuf: Father and Son (1970) und Ulich Trottenberg (pers. comm.)

 

Write a text with which I can address my son Tom. My son does not understand that he is still to young to understand what life is about. I understand that he is getting excited about what's going on. But he should calm down, start a regular life with a family and such. Tom complains that father doesn't listen to his plans and how he sees future. He can't stay calm and has to break away. Still he loves his father

Dear Tom,

I understand that you are getting excited about what's going on in your life and you have big plans for your future. But as your father, I want to remind you that you are still young and there is so much more to learn and experience before you make any big decisions.

I know you feel like I don't listen to your plans and how you see your future, but that's not true. I just want to make sure that you are making well-informed decisions and that you are taking the time to consider all of your options. I want you to have a regular life with a family and a stable career, not just breaking away and following your impulses.

I love you, Tom, and I want the best for you. I know you may not understand it now, but in time, you will see that the choices you make now will have a big impact on your future. So please, take your time, and think about what you truly want for yourself.

Love, Dad

Write Tom's reply to his father

Dear Dad,

I understand where you're coming from and I know you only want the best for me. I appreciate your concern and advice, but I also want you to understand that I am not a child anymore. I have my own dreams and aspirations, and I want to pursue them. I don't want to just have a regular life with a family and a stable career, I want to make a difference and leave a mark on the world.

I know that I may not have all the answers yet, but I am willing to learn and make mistakes along the way. I promise you that I will not make any hasty decisions and I will think things through. But I hope you can trust in my abilities and support me in my journey.

I love you too, Dad, and I hope we can find a balance between your guidance and my independence.

Love, Tom

 

Übersetzung mit DeepL.com online - mit kleinen Korrekturen:

Schreiben Sie einen Text, mit dem ich meinen Sohn Tom ansprechen kann. Mein Sohn versteht nicht, dass er noch zu jung ist, um zu verstehen, worum es im Leben geht. Ich verstehe, dass er aufgeregt ist über das, was gerade passiert. Aber er sollte ruhig bleiben, ein normales Leben mit einer Familie beginnen und so weiter. Tom beklagt sich darüber, dass sein Vater nicht auf seine Pläne hört und wie er sich die Zukunft vorstellt. Er kann sich nicht einfach ruhig bleiben und muss ausbrechen. Trotzdem liebt er seinen Vater.

Lieber Tom,

ich verstehe, dass du aufgeregt bist über das, was in deinem Leben passiert, und dass du große Pläne für deine Zukunft hast. Aber als dein Vater möchte ich dich daran erinnern, dass du noch jung bist und noch so viel lernen und erleben musst, bevor du irgendwelche großen Entscheidungen triffst.

Ich weiß, dass du das Gefühl hast, ich höre mir deine Pläne und deine Vorstellungen von deiner Zukunft nicht an, aber das stimmt nicht. Ich möchte nur sicherstellen, dass du gut informierte Entscheidungen triffst und dass du dir die Zeit nimmst, alle deine Möglichkeiten zu prüfen. Ich möchte, dass du ein normales Leben mit einer Familie und einer stabilen Karriere führst und nicht einfach ausbrichst und deinen Impulsen folgst.

Ich liebe dich, Tom, und ich will das Beste für dich. Ich weiß, dass du es jetzt vielleicht noch nicht verstehst, aber mit der Zeit wirst du erkennen, dass die Entscheidungen, die du jetzt triffst, einen großen Einfluss auf deine Zukunft haben werden. Nimm dir also bitte Zeit und denke darüber nach, was du wirklich für dich willst.

In Liebe, Papa

Schreibe Toms Antwort an seinen Vater

Lieber Papa,

ich verstehe, was du meinst, und ich weiß, dass du nur das Beste für mich willst. Ich weiß deine Sorge und deinen Rat zu schätzen, aber ich möchte auch, dass du verstehst, dass ich kein Kind mehr bin. Ich habe meine eigenen Träume und Ziele, und ich möchte sie verfolgen. Ich möchte nicht einfach nur ein normales Leben mit einer Familie und einem festen Beruf führen, sondern ich möchte etwas bewirken und der Welt einen Stempel aufdrücken.

Ich weiß, dass ich vielleicht noch nicht alle Antworten habe, aber ich bin bereit zu lernen und auf dem Weg dorthin Fehler zu machen. Ich verspreche dir, dass ich keine übereilten Entscheidungen treffen und die Dinge gut durchdenken werde. Aber ich hoffe, du kannst mir vertrauen und mich auf meinem Weg unterstützen.

Ich habe dich auch lieb, Dad, und ich hoffe, dass wir ein Gleichgewicht zwischen deiner Führung und meiner Unabhängigkeit finden können.

In Liebe, Tom

 

17.01.2023

bernhard.thomas@interscience.de

 


GPT#4 - ChatGPT zur Lösung von Textaufgaben

3 Gleichungen mit 3 Unbekannten als Textaufgabe

Aus: KI-Stories für den Informatikunterricht NRW – Ein Neuronales Netz lernt ein 3x3 lineares Gleichungssystem lösen

Aufgabe: Eine Textaufgabe aus dem Mathematikunterricht führt auf 3 Gleichungen mit 3 Unbekannten. Die „Extraktion“ der Gleichungen aus der Textaufgabe ist oft der schwierigste Teil, die Lösung des Gleichungssystems kann dann mit verschiedenen Methoden errechnet werden. In der KI-Story kann die Lösung mittels eines Neuronalen Netzes trainiert werden. Die Ableitung der Gleichungen wurde vertagt. Das Sprachmodell ChatGPT bietet einen neuen Ansatz für den Versuch, Text in Gleichungen zu übersetzen und diese möglicherweise auch noch zu lösen.

Kommentar: Obwohl die Textaufgabe ziemlich verklausuliert ist und abstrakte Begriffe enthält – z.B. muss das Modell aus dem Begriff Quadrat die Zahl 4 (Ecken) ableiten -  schafft ChatGPT das Extrahieren der Gleichungen ohne Schwierigkeiten.

Anschließend versucht das Sprachmodell auch noch die Lösung zu bestimmen, aus logisch-rechnerischen Ableitungen. Das geht zunächst schief – wie im richtigen Leben: Falsches Einsetzen führt dazu, dazu dass eine Gleichung (die zweite) ungenutzt bleibt. Konfrontiert man das Modell damit, dass das Ergebnis falsch ist, versucht es einen neuen Ansatz  (2. Prompt).  Auch beim zweiten Versuch gerät die Lösungslogik falsch. Man ist geneigt aufzugeben, aber aller guten Dinge sind drei. Offenbar findet ChatGPT noch einen weiteren Lösungsablauf – alles als reine Text-Generierung – der dieses Mal das richtige Ergebnis liefert.

Als Schummelhilfe ist ChatGPT für den ersten Teil (Text zu Gleichungen) offenbar gut zu gebrauchen. Für die Lösung können sich die Schummelanten nicht einfach auf ChatGPT verlassen – sie müssen zumindest die Probe machen können. Aber auch diese kann man dem Sprachmodell überlassen, mit dem richtigen Prompt.

Erfahrung mit weiteren Tests (hier nicht angefügt): Wir ergänzen die Aufgabe mit dem Zusatz „Mache die Probe. Falls sie misslingt, versuche es noch mal“. Im ersten Durchgang erkennt ChatGPT  nur zwei Gleichungen mit 3 Unbekannten, errechnet ein Ergebnis und findet bei der Probe, dass das Ergebnis korrekt ist. Mit dem anschließenden Prompt wird der Hinweis auf die fehlende Gleichung von ChatGPT bestätigt und das Gleichungssystem wieder korrekt aufgestellt. Die Bestimmung der Lösung geht allerdings völlig daneben („es gibt keine Lösung“).

Es wird deutlich, dass man vom Sprachmodell nicht zu viel erwarten darf, was konkrete Problemlösung betrifft – obwohl diese Fähigkeit in den Medien oft und gerne als besondere Intelligenzleistung gerühmt wird. Da gelegentlich auch die Extraktion der Gleichungen misslingt, ist ChatGPT als Schummelhilfe eher nicht geeignet. Sehr wohl aber für „Finde den Fehler“-Aufgaben im Unterricht.

Übersetzung des Dialogs ins Deutsche mit DeepL.com hinter der originalen englischen Version.

  • Task & Prompt: Bernhard Thomas
  • Generator: ChatGPT
  • Translator: n/a (DeepL in Nachbearbeitung)
  • Editing: n/a (ChatGPT Originaltext, DeepL Text unbearbeitet)
  • Authoring: Bernhard Thomas
  • Credits: Problem by bk-unterricht.de

 

In the logic game box are triangles, squares and hexagons. There are 20 figures alltogether. If you add the number of triangles and the number of squares, the sum is two more than the number of hexagons. The total number of corners is 93. Calculate how many of each figure there are.

Let's call the number of triangles "x", the number of squares "y", and the number of hexagons "z". From the problem statement, we know the following:

x + y = z + 2 (the sum of the number of triangles and squares is two more than the number of hexagons)

We also know that the total number of corners is 93. The number of corners for each figure is:

Triangles: 3 corners per triangle * x triangles = 3x corners Squares: 4 corners per square * y squares = 4y corners Hexagons: 6 corners per hexagon * z hexagons = 6z corners

We can use these equations to write the equation:

3x + 4y + 6z = 93

We also know that there are 20 figures in total, so we can write the equation:

x + y + z = 20

Now we have a system of two equations and three variables. We can use these equations to solve for the number of each figure.

First, we can solve the second equation for one of the variables in terms of the others:

x + y + z = 20 x = 20 - y - z

Now we can substitute this expression for x into the first equation:

x + y = z + 2 20 - y - z + y = z + 2 20 = 2z + 2 z = 9

Now that we know the value of z, we can substitute it back into the second equation:

x + y + 9 = 20 x + y = 11

Now we can substitute the value of x back into the first equation:

20 - y - 9 + y = 9 + 2 11 = 11

All values are integers, solution x = 11, y =0 , z=9

 

The result is not correct. Try again

You are correct, my apologies for the error. Let's try again.

We know that the sum of the number of triangles and squares is two more than the number of hexagons. We also know that the total number of corners is 93.

Let's call the number of triangles "x", the number of squares "y", and the number of hexagons "z". We can use these variables to write the following equations:

x + y = z + 2 (the sum of the number of triangles and squares is two more than the number of hexagons)

3x + 4y + 6z = 93 (the total number of corners is 93)

x + y + z = 20 (there are 20 figures in total)

We can use these equations to solve for the number of each figure.

We can use the third equation to find the value of one of the variables in terms of the others.

x+y+z = 20 z = 20 - x - y

Now we can substitute this into the first equation

x+y = z + 2

x+y = 20 - x - y + 2

2x + 2y = 22

x+y = 11

We can substitute this value of x+y in the third equation:

x+y+z = 20

11 + z = 20

z = 9

Now we have the value of z, we can substitute it back into the equation 2

3x + 4y + 6 * 9 = 93

3x + 4y + 54 = 93

3x + 4y = 39

And substitute x+y = 11 in equation 1

x+y = 9+2

x+y = 11

We have a system of equations with 3 variables and 2 equations. We can use substitution to solve for one of the variable and then use the equations to find the others, x = 4, y = 7 and z = 9.

This is still not correct. Try again?

I apologize for the error, my apologies for the confusion caused. Let's try again.

We know that the sum of the number of triangles and squares is two more than the number of hexagons. We also know that the total number of corners is 93.

Let's call the number of triangles "x", the number of squares "y", and the number of hexagons "z". We can use these variables to write the following equations:

x + y = z + 2 (the sum of the number of triangles and squares is two more than the number of hexagons)

3x + 4y + 6z = 93 (the total number of corners is 93)

x + y + z = 20 (there are 20 figures in total)

We can use these equations to solve for the number of each figure.

We can use the third equation to find the value of one of the variables in terms of the others.

x+y+z = 20

z = 20 - x - y

Now we can substitute this into the first equation

x+y = z + 2

x+y = 20 - x - y + 2

2x + 2y = 22

x+y = 11

We can substitute this value of x+y in the third equation:

x+y+z = 20

11 + z = 20

z = 9

Now we have the value of z, we can substitute it back into the equation 2

3x + 4y + 6 * 9 = 93

3x + 4y + 54 = 93

3x + 4y = 39

Now we have 2 equations and 2 unknowns, we can use the first equation to solve for one of the variables:

x+y = 11

x = 11 - y

Now we can substitute this into the second equation:

3(11 - y) + 4y = 39

33 - 3y + 4y = 39

-3y + 4y = 39 - 33

y = 6

Now we can substitute the value of y back into the first equation

x+y = 11

x+6 = 11

x=5

And we can use the third equation to find z

x+y+z = 20

5+6+z = 20

z= 9 So there are 5 triangles, 6 squares and 9 hexagons.

This is correct, thank you

You're welcome! I'm glad I could help. Let me know if you have any other questions.

 

Übersetzt mit www.DeepL.com/Translator (kostenlose Version)

In der Logikspiel-Box befinden sich Dreiecke, Quadrate und Sechsecke. Insgesamt gibt es 20 Figuren. Wenn man die Anzahl der Dreiecke und die Anzahl der Quadrate addiert, ist die Summe zwei mehr als die Anzahl der Sechsecke. Die Gesamtzahl der Ecken beträgt 93. Berechne, wie viele von jeder Figur vorhanden sind.

Nennen wir die Anzahl der Dreiecke "x", die Anzahl der Quadrate "y" und die Anzahl der Sechsecke "z". Aus der Aufgabenstellung wissen wir Folgendes:

x + y = z + 2 (die Summe der Anzahl der Dreiecke und Quadrate ist um zwei größer als die Anzahl der Sechsecke)

Wir wissen auch, dass die Gesamtzahl der Ecken 93 beträgt. Die Anzahl der Ecken für jede Figur ist:

Dreiecke: 3 Ecken pro Dreieck * x Dreiecke = 3x Ecken Quadrate: 4 Ecken pro Quadrat * y Quadrate = 4y Ecken Sechsecke: 6 Ecken pro Sechseck * z Sechsecke = 6z Ecken

Wir können diese Gleichungen verwenden, um die Gleichung zu schreiben:

3x + 4y + 6z = 93

Wir wissen auch, dass es insgesamt 20 Figuren gibt, also können wir die Gleichung schreiben:

x + y + z = 20

Jetzt haben wir ein System aus zwei Gleichungen und drei Variablen. Wir können diese Gleichungen verwenden, um die Anzahl der einzelnen Figuren zu bestimmen.

Zunächst können wir die zweite Gleichung für eine der Variablen in Abhängigkeit von den anderen lösen:

x + y + z = 20 x = 20 - y - z

Nun können wir diesen Ausdruck für x in die erste Gleichung einsetzen:

x + y = z + 2 20 - y - z + y = z + 2 20 = 2z + 2 z = 9

Da wir nun den Wert von z kennen, können wir ihn wieder in die zweite Gleichung einsetzen:

x + y + 9 = 20 x + y = 11

Nun können wir den Wert von x wieder in die erste Gleichung einsetzen:

20 - y - 9 + y = 9 + 2 11 = 11

Alle Werte sind ganze Zahlen, Lösung x = 11, y =0 , z=9

 

Das Ergebnis ist nicht korrekt. Versuchen Sie es erneut

Sie haben Recht, ich entschuldige mich für den Fehler. Versuchen wir es noch einmal.

Wir wissen, dass die Summe der Anzahl der Dreiecke und Quadrate um zwei größer ist als die Anzahl der Sechsecke. Wir wissen auch, dass die Gesamtzahl der Ecken 93 beträgt.

Nennen wir die Anzahl der Dreiecke "x", die Anzahl der Quadrate "y" und die Anzahl der Sechsecke "z". Mit diesen Variablen können wir die folgenden Gleichungen aufstellen:

x + y = z + 2 (die Summe der Anzahl der Dreiecke und Quadrate ist um zwei größer als die Anzahl der Sechsecke)

3x + 4y + 6z = 93 (die Gesamtzahl der Ecken ist 93)

x + y + z = 20 (es gibt insgesamt 20 Figuren)

Mit diesen Gleichungen können wir die Anzahl der einzelnen Figuren bestimmen.

Mit der dritten Gleichung können wir den Wert einer der Variablen in Abhängigkeit von den anderen bestimmen.

x+y+z = 20 z = 20 - x - y

Nun können wir dies in die erste Gleichung einsetzen

x+y = z + 2

x+y = 20 - x - y + 2

2x + 2y = 22

x+y = 11

Diesen Wert von x+y können wir in die dritte Gleichung einsetzen:

x+y+z = 20

11 + z = 20

z = 9

Da wir nun den Wert von z haben, können wir ihn wieder in die Gleichung 2 einsetzen

3x + 4y + 6 * 9 = 93

3x + 4y + 54 = 93

3x + 4y = 39

Und setzen Sie x+y = 11 in Gleichung 1 ein

x+y = 9+2

x+y = 11

Wir haben ein Gleichungssystem mit 3 Variablen und 2 Gleichungen. Wir können die Substitution verwenden, um eine der Variablen zu lösen und dann die Gleichungen verwenden, um die anderen zu finden: x = 4, y = 7 und z = 9.

 

Dies ist immer noch nicht korrekt. Versuchen Sie es noch einmal?

Ich entschuldige mich für den Fehler und für die entstandene Verwirrung. Versuchen wir es noch einmal.

Wir wissen, dass die Summe der Anzahl der Dreiecke und Quadrate um zwei größer ist als die Anzahl der Sechsecke. Wir wissen auch, dass die Gesamtzahl der Ecken 93 beträgt.

Nennen wir die Anzahl der Dreiecke "x", die Anzahl der Quadrate "y" und die Anzahl der Sechsecke "z". Mit Hilfe dieser Variablen können wir die folgenden Gleichungen aufstellen:

x + y = z + 2 (die Summe der Anzahl der Dreiecke und Quadrate ist um zwei größer als die Anzahl der Sechsecke)

3x + 4y + 6z = 93 (die Gesamtzahl der Ecken ist 93)

x + y + z = 20 (es gibt insgesamt 20 Figuren)

Mit diesen Gleichungen können wir die Anzahl der einzelnen Figuren bestimmen.

Mit der dritten Gleichung können wir den Wert einer der Variablen in Abhängigkeit von den anderen bestimmen.

x+y+z = 20

z = 20 - x - y

Nun können wir dies in die erste Gleichung einsetzen

x+y = z + 2

x+y = 20 - x - y + 2

2x + 2y = 22

x+y = 11

Diesen Wert von x+y können wir in die dritte Gleichung einsetzen:

x+y+z = 20

11 + z = 20

z = 9

Da wir nun den Wert von z haben, können wir ihn wieder in die Gleichung 2 einsetzen

3x + 4y + 6 * 9 = 93

3x + 4y + 54 = 93

3x + 4y = 39

Jetzt haben wir 2 Gleichungen und 2 Unbekannte. Wir können die erste Gleichung verwenden, um eine der Variablen zu lösen:

x+y = 11

x = 11 - y

Nun können wir dies in die zweite Gleichung einsetzen:

3(11 - y) + 4y = 39

33 - 3y + 4y = 39

-3y + 4y = 39 - 33

y = 6

Nun können wir den Wert von y wieder in die erste Gleichung einsetzen

x+y = 11

x+6 = 11

x=5

Und wir können die dritte Gleichung verwenden, um z zu finden

x+y+z = 20

5+6+z = 20

z= 9 Es gibt also 5 Dreiecke, 6 Quadrate und 9 Sechsecke.

 

Das ist richtig, vielen Dank

Gern geschehen! Ich bin froh, dass ich helfen konnte. Lassen Sie mich wissen, wenn Sie weitere Fragen haben.

 

Übersetzt mit www.DeepL.com/Translator (kostenlose Version)

18.01.2023

bernhard.thomas@interscience.de


GPT#2 - Programmieren mit ChatGPT

Aufgabe: Einfache und algorithmisch anspruchsvollere Code-Generierung in verschiedenen Programmiersprachen. Hello World mit Datum in Julia, eine Funktion für das Newton-Verfahren in Python. Weitere Experimente, u.a. KI Verfahren in weiteren Beispielen, hier nicht aufgeführt.

Kommentar: ChatGPT generiert die kleineren und größeren Code Snippets hier korrekt (anders als z.B. in #12) und fügt Erläuterungen zu Aufbau und Nutzung mit Beispiel hinzu.

Es wirkt zunächst verblüffend, dass das Sprachmodell sinnvollen Code zu konkreten Aufgaben generieren kann. Andererseits sind die Beispiele Standardfälle, die in Tutorials und Blogs im Internet als Code zu finden sind. (Versuche Google: Python function for Newton Iteration). Dennoch, die Aufbereitung und Darstellung der Antworten zeigt hohe Sprach- und Erklärungskompetenz (um menschliche Begriffe zu verwenden) des Generators. Es wäre zu prüfen, wie die Ergebnisse von Wiederholungen der Prompts aussehen.

Die Frage nach „originärer“ Programmierung wird in #11 noch einmal aufgegriffen, bei dem Versuch einen Prompt zu erstellen für eine Programmieraufgabe, die so evtl. im Internet noch nicht existiert.

Übersetzung der Erläuterungen ins Deutsche mit DeepL.com empfohlen.

Task & Prompt: Bernhard Thomas (B)
Generator: ChatGPT (OpenAI Symbol)
Translator: n/a
Editing: n/a (ChatGPT Originaltext)
Authoring: Bernhard Thomas

 

15.01.2023

bernhard.thomas@interscience.de

 


GPT#1 Bus Stop Romance - ChatGPT Poetry

Aufgabe: Erstellen eines romantischen Gedichts in englischer Sprache. Der kurze Prompt dazu gibt eine Szene vor, die aus einem 60er Jahre Song entlehnt ist.

Kommentar: Dies war mein erster produktiver Versuch einen ggf. für einen Song verwendbaren Text zu erzeugen. (Inzwischen ist Poetry Writing mit ChatGPT überall anzutreffen.) Die Idee zur Szene (Prompt) stammt aus einem schönen Song von den Hollies (1966): Bus Stop. Es ist zunächst überraschend, dass ChatGPT offenbar die Struktur von Gedichten in Versen (4-zeilig) generieren kann und dabei 2-4-Reime berücksichtigt. Das Reimen erscheint verständlich, da das Sprachmodell vermutlich über weit mehr Wörter verfügt als ein einzelner menschlicher Dichter. Die selbst entwickelte Erzähl-Linie der Romanze ist (fast) konsistent und wird (von Lesern) als schön empfunden.

Eine kleine Inkonsistenz der Handlung besteht zwischen Vers 3 und Vers 5: „They walked together“ deutet an, dass sich das Paar vom Bus Stop weg bewegt, bei „So when the bus arrived at last…“ sind beide aber wieder am Bus Stop. Nun ja – sie sind halt ein paar Schritte gegangen, bis der Bus kam. Mit dem letzten Vers deutet sich eine „Neigung“ des Generators an, die man bei vielen generierten Texten findet, am Ende eine Art Fazit, Zusammenfassung zu erstellen.

Lyrics & Music: B. Thomas
Title & Prompt: B. Thomas
Generator: ChatGPT
Translator: n/a
Editing: n/a (ChatGPT Originaltext)
Authoring: B. Thomas
Credits: Prompt inspired by The Hollies: Bus Stop (1966)

 

Write a poem about boy meets girl at a bus stop it starts raining he offers his umbrella girl falls in love with boy

Bus Stop Romance

At the bus stop, a boy and girl met
Beneath a grey and gloomy sky
The rain began to fall, and yet
A spark of love began to fly

He offered her his umbrella
To shield her from the pouring rain
She looked into his eyes and saw
A love that would forever reign

They walked together, side by side
Their steps in perfect sync
The rain became a symphony
As they talked and laughed and linked

They shared their hopes and dreams
Their fears and deepest thoughts
And as the rain began to clear
Their love had been truly wrought

So when the bus arrived at last
They said goodbye with a smile
For they knew they'd meet again
In just a little while

For that one chance encounter
At the bus stop in the rain
Had brought them love forever
And they'd never love in vain

 

13.01.2023

bernhard.thomas@interscience.de


Algorithmenwandel

Als der Schachcomputer Deep Blue von IBM 1996 mit einem Algorithmus aus dem Bereich der Künstlichen Intelligenz (KI) den Schachweltmeister Gari Kasparow nachhaltig geschlagen hatte, war das eine Erschütterung für die gesamte Schachwelt. Trotz dieses Durchbruchs waren sich die Gospieler und die algorithmischen Experten einig und davon überzeugt, dass sich die sehr guten Gospieler dieser Welt keine Sorgen machen müssten. Denn Go ist quantitativ so viel komplexer als Schach, dass man auf viele Jahrzehnte keine Chance für die Algorithmen der Künstlichen Intelligenz sah, die menschliche Go-Intelligenz zu verdrängen: Beim Schach hat man pro Zug im Mittel vielleicht 30 Möglichkeiten, beim Go pro Zug im Mittel eher 200.

Diese Überzeugung der menschlichen Go-Überlegenheit ist seit 2016 obsolet, als der Go-Algorithmus AlphaGo den weltbesten Gospieler Lee Sedol nachhaltig schlug. In den 20 Jahren von 1996 bis 2016 hatte es einen algorithmischen Durchbruch gegeben, den ich hier Algorithmenwandel nennen möchte.

Algorithmus, das war bis zur Jahrhundertwende ein mathematisch-informatischer Fachbegriff, unter dem sich lange Zeit nur Experten etwas vorstellen konnten. In den letzten 20 Jahren ist Algorithmus dann allmählich ein Begriff des täglichen Lebens, der Journalistik und der Politik geworden – mit einem richtigen Schub im Jahr der Mathematik 2008. Trotz seiner Verbreitung ist der Begriff für die meisten Menschen unklar, für viele unheimlich und bedrohlich geblieben.

Dabei ist ein Algorithmus nichts Geheimnisvolles: Ein Algorithmus ist eine eindeutige, aus endlich vielen Einzelschritten bestehende, detaillierte Verfahrens- oder Handlungsvorschrift zur Lösung eines Problems oder einer Aufgabenstellung. Handelt es sich um ein mathematisch oder informatisch formuliertes Problem und wird der Algorithmus in einer Programmiersprache formuliert, spricht man in der Regel von einem Computerprogramm. Das ist dann auch der geläufigere Begriff. In einem allgemeineren Sinn sind aber auch eine Aufbauanleitung für ein Regal, ein präzises Kochrezept, eine genaue Wegbeschreibung Beispiele von Algorithmen.

Die fundamentale Bedeutung von (mathematisch-informatischen) Algorithmen besteht darin, dass sie den Kern alles Digitalen, aller digitalen Geräte und Prozesse bilden: Sie steuern Computer und Netze, und sie verarbeiten die Daten. Softwaresysteme bestehen meist aus einer Vielzahl von Algorithmen.

Algorithmen sind in ihrem Kern mathematische Konstrukte und damit prinzipiell wertfrei und gestaltbar, wie alles Mathematische. Diese Überzeugung hat mich bei meinen Lehrveranstaltungen, Publikationen, Projekten und Vorträgen, geleitet, und sie hat bewirkt, das ich die algorithmischen Entwicklungen bisher - wie die Mathematik insgesamt - positiv eingeschätzt und mit Optimismus betrieben habe. Indem ich einen Algorithmus konzipiere und programmiere, lege ich fest, was er tut und wofür er gut ist. Klar, Programmierfehler können auftreten mit verhängnisvollen Folgen, Algorithmen können für inhumane, verbrecherische, kriegerische Zwecke konzipiert und eingesetzt werden. Aber dass Algorithmen fehleranfällig sind, missbraucht und gezielt für problematische Zwecke konzipiert und eingesetzt werden, widerspricht ihrer prinzipiellen Wertfreiheit nicht.

Seit etwa 1995 hat sich in der Algorithmik aber einiges essentiell geändert. Etwas vereinfachend kann man diesen Wandel mit der Formulierung: „vom programmierten zum trainierten Algorithmus“ beschreiben.

Zu den traditionellen Algorithmen hinzugekommen sind spezielle, neue Methoden der KI und des „Maschinellen Lernens (ML)“. Grundlegenden Ideen zu KI und ML sind zwar schon rund 70 Jahre alt, sensationelle Durchbrüche sind aber erst in den letzten 30 Jahren erreicht worden: durch neue algorithmische Ideen, durch die Datenexplosion und durch superschnelle Rechner. Im Mittelpunkt stehen dabei zur Zeit eine Vielzahl von selbstlernenden Verfahren des „Deep Learning“. Diese Algorithmen, die - in Analogie zur Funktionsweise des biologischen Gehirns - mit vielen, vielleicht Hunderten von Schichten, Millionen künstlicher Neuronen und geeigneten, oft riesigen Mengen von (Trainings-)Daten arbeiten, werden nicht in herkömmlicher Weise programmiert, sondern trainiert. Der Programmierer, den man auch bei diesen lernenden Algorithmen braucht, legt nur die Methodik fest, wie das System lernt und wie es mit den Daten umgeht. Der Programmierer hat aber im allgemeinen keine Kontrolle darüber, welche Muster das System in den Daten erkennt und welche Schüsse es aus diesen Erkenntnissen zieht. Zur Mustererkennung verwendet das System statistische und zunehmend auch hocheffiziente numerische Optimierungsverfahren, die für den jeweiligen Algorithmus charakteristisch sind.

Eine Vielzahl der mit dieser Methodik des Deep Learning bereits heute erzielten Ergebnisse und Erfolge sind absolut faszinierend, geradezu phantastisch. Wir erwähnen hier nur die Entwicklungen bei der Bild- und Spracherkennung und bei der automatischen Übersetzung von schriftlichem und gesprochenem Text.

Überraschend waren selbst für Experten, wie eingangs erwähnt, die Erfolge, die mit speziellen ML-Algorithmen des Deep Learning, insbesondere mit sogenanntem Bestärkungslernen (Reinforcement), beim Go-Spiel erzielt wurden. Dabei werden nur die äußerst einfachen Go-Spielregeln programmiert. Alles andere wird gelernt, und zwar dadurch, dass das System millionenfach gegen sich selber spielt. Nach dem Lernprozess erweist sich das System als auch den weltbesten Go-Spielern deutlich überlegen. Absolut überraschend und bezeichnend ist dabei auch, dass das System eigene Spielstrategien entwickelt und Spielzüge ausführt, die bisher noch von keinem menschlichen Spieler gespielt worden sind und deren Sinn auch von den weltbesten Spielern daher nicht sofort verstanden und vollständig erklärt werden kann.

Und das ist auch eine allgemeine Problematik des ML: Wie hier beim Go-Spiel werden insbesondere mit Algorithmen des Deep Learning (oft hervorragende) Ergebnisse erzielt, deren Zustandekommen weitgehend, oft vollständig unerklärlich bleibt.

Dass die ML-basierten neuen Spielstrategien beim Go-Spiel nicht (vollständig) verstanden werden, ist verblüffend, aber nicht wirklich kritisch oder bedrohlich, sondern eher anregend. Diese verborgene Seite des ML ist aber ganz offensichtlich unakzeptabel, wenn das System den Anwender nicht nur unterstützt, sondern selbstständig Entscheidungen trifft, die für Betroffene von großer oder sogar existenzieller Bedeutung sind. Auch dafür gibt es heute bereits eine zunehmende Anzahl von Beispielen.

Wir nennen hier nur selbstständige Entscheidungen (Sortieren und Filtern) bei Bewerbungsverfahren, bei der Festlegung von Versicherungs- und Kreditkonditionen, und weisen auf das sich rasant entwickelnde Forschungsfeld der autonomen Systeme (autonome Fahrzeuge, Waffen usw.) hin. In all diesen Bereichen gibt es schon sehr weitgehende technische Entwicklungen – und parallel dazu intensive juristische, ethische und politische Diskussionen in entsprechenden Gremien (s. z.B. Artificial Intelligence Act der EU-Kommission, ein Vorschlag der EU zur Regulierung der Nutzung der KI).

Wie soll die informatische Forschung mit dieser Problematik umgehen? Eine wissenschaftliche Antwort auf diese Problematik ist die Bemühung, das auf Deep Learning beruhende System zu veranlassen, seine Entscheidung selbst zu erklären, also z.B. seinen "Entscheidungspfad" nachvollziehbar zu machen. Mit dieser wissenschaftlichen Zielsetzung beschäftigt sich die mathematisch-informatische Disziplin des XAI (Explainable AI). Obwohl an XAI in vielen Forschungszentren weltweit gearbeitet wird, sind die Erfolge noch begrenzt. Das erkennt man z.B. daran, dass schon bei „kleinen“, überschaubaren Anwendungen des Deep Learning die "berechneten" Ergebnisse  hochsensibel von den Trainingsdaten abhängen: Kleine Änderungen in den Trainingsdaten  können zu erheblichen, unvorhersehbaren Veränderungen bei den Ergebnissen führen, ein oft irritierender Effekt.

Für manche Anwendungen gibt es die Möglichkeit, die mit Deep Learning erzielten Ergebnisse durch andere Methoden des ML überprüfen zu lassen, deren Ablauf nachverfolgt werden kann. Das sind aber in der Regel nicht die interessantesten Anwendungen, weil die „durchschaubaren“ ML-Algorithmen oft nicht die Effektivität der („undurchschaubaren“) Deep Learning Algorithmen erreichen.

Angesichts dieser unübersichtlichen Situation  - weil und solange das XAI-Problem nicht befriedigend gelöst ist – ist es eine gemeinsame Aufgabe der Algorithmiker, Juristen, Ethiker und der Politik, die Risiken systematisch zu untersuchen, zu bewerten und geeignete Steuerungsmaßnahmen zu ergreifen.

Es stellen sich unter anderem folgende Fragen:

Sollten Algorithmen, deren interne (Trainingsdaten-basierten) Abläufe nicht vollständig nachverfolgt und deren Ergebnisse nicht erklärt werden können, nur zur Unterstützung menschlicher Entscheidungen benutzt werden, aber keine eigene Entscheidungen treffen?

Oder weitergehend: Sollten solche Algorithmen als unsicher gekennzeichnet und ihre Benutzung grundsätzlich ausgeschlossen werden? Reichen Warnhinweise aus?

Macht es Sinn, einen TÜV oder ein Audit für ML-Algorithmen einzuführen, womit sichergestellt wird, dass alle Bestandteile und internen Abläufe der Algorithmen kontrolliert werden können?

Besteht eine Chance, diese Fragen anwendungsunabhängig zu behandeln, oder können die Probleme nur anwendungsspezifisch in Angriff genommen werden?

Besteht eine realistische Chance auf internationale Einigung? Oder wird man damit leben müssen, dass sich z.B. autokratische Staaten nicht in die Karten gucken lassen?