# Parameter (Künstliche Intelligenz)

Ein Parameter bei künstlicher Intelligenz (KI) und bei maschinellem Lernen ist eine Konfigurationsvariable, die im KI-Modell intern vorhanden ist und deren Wert aus Daten durch einen Algorithmus geschätzt wird. Die Parameter werden vom Modell benötigt, um Vorhersagen zu treffen. Ihre Werte definieren die Fähigkeit des Modells, eine Aufgabe zu lösen. Sie werden aus Daten gelernt oder geschätzt. Die Zahl der verwendeten Parameter beeinflusst den benötigten Rechenaufwand, die Geschwindigkeit und die Genauigkeit der Resultate.

## Abhängigkeit von KI-Modellen

Je nach Art des gewählten KI-Modells werden unterschiedliche Parameter benutzt:
* Lineare Regression: In einem einfachen linearen Regressionsmodell sind die Parameter die Steigung und der y-Achsenabschnitt.
* Deterministische neuronale Netze (NN): Parameter umfassen Basiswerte und Gewichte für jedes Neuron im Netzwerk. Die Gewichte steuern das Signal (oder die Stärke der Verbindung) zwischen zwei Neuronen. Bei realisierten NN-Modellen werden Milliarden von Parametern genutzt. Bei GPT-3 von OpenAI waren es bereits 175 Milliarden Parameter.
* Probabilistische neuronale Netze: Zusätzlich zu Parametern von deterministischen NN mit Gewichtungen werden in Kombination Unsicherheitsparameter verwendet.
* Entscheidungsbäume: Parameter können Fragen über die Daten sein, die gestellt werden, oder die Ergebnisse an den Blattknoten des Baums.
* Support Vector Machines (SVM): Parameter umfassen die Stützvektoren, welche die Hyperebene definieren, die Klassen trennt.
Diese Parameter werden während der Trainingsphase des Modellaufbaus gelernt. Der Lernprozess beinhaltet die Verwendung eines Trainingsdatensatzes und eines Optimierungsalgorithmus, der die Parameter anpasst, um eine Verlustfunktion zu minimieren. Diese Verlustfunktion ist ein Maß für den Fehler des Modells bezogen auf die Trainingsdaten.

## Parametermodi

Parameter können verschiedene Modi haben, wie Eingabe, Ausgabe oder Eingabe/Ausgabe, abhängig davon, wie sie in der Unterfunktion verwendet werden. Eingabeparameter werden nur für die Eingabe verwendet, Ausgabeparameter nur für die Ausgabe und Eingabe/Ausgabeparameter sowohl für die Eingabe als auch für die Ausgabe. Der Parametermodus wird normalerweise durch ein Schlüsselwort in der Definition eines Unterprogramms angegeben, wie in, out oder inout.

## Parameterübergabe

Der Mechanismus zur Zuordnung von Argumenten zu Parametern wird Parameterübergabe genannt und hängt von der Auswertungsstrategie der Programmsprache ab. Die gebräuchlichsten Strategien sind Call by Value und Call by Reference. Call by Value bedeutet, dass der Wert des Arguments auf den Parameter kopiert wird, während Call by Reference bedeutet, dass der Parameter auf denselben Speicherort verweist wie das Argument.

## Hyperparameter

Parameter unterscheiden sich von Hyperparametern. Während Parameter aus Daten erlernt werden, werden Hyperparameter vor dem Lernprozess festgelegt und dienen dazu, den Lernprozess zu leiten. Beispiele für Hyperparameter sind die Lernrate in einem Optimierungsalgorithmus, die Anzahl der verborgenen Schichten in einem neuronalen Netzwerk oder die Anzahl der Entscheidungsbäume in einem Random-Forest-Modell.