std.ml_full
Erweiterte Machine-Learning-Algorithmen und Modelle: Deep Learning Layers, Convolutional Networks, Rekurrente Netze (LSTM), Gradient Boosting und Ensemble-Methoden. Aufbauend auf std.ml mit schwergewichtigen Implementierungen für Produktionseinsatz.
Überblick
| Bereich | Algorithmen |
| Neural Networks | Dense Layer, Conv2D, MaxPool, LSTM, GRU, Dropout, BatchNorm |
| Gradient Boosting | XGBoost-kompatibles API, LightGBM-Stil |
| Ensemble | Random Forest (voll), Voting Classifier, Stacking |
| Optimierer | SGD, Adam, AdaGrad, RMSProp |
| Verlustfunktionen | MSE, CrossEntropy, Hinge, Huber |
Verwendung (Neural Network)
import std.ml_full;
// Sequenzielles Netz aufbauen
var net: MlNet := MlNetNew();
MlNetAddDense(net, 128, ML_ACTIVATION_RELU);
MlNetAddDropout(net, 0.3);
MlNetAddDense(net, 64, ML_ACTIVATION_RELU);
MlNetAddDense(net, 10, ML_ACTIVATION_SOFTMAX);
// Kompilieren
MlNetCompile(net, ML_OPT_ADAM, ML_LOSS_CROSS_ENTROPY, 0.001);
// Training
MlNetFit(net, xTrain, yTrain, nSamples, 50, 32); // 50 Epochen, Batch 32
// Vorhersage
var pred: pchar := MlNetPredict(net, xTest, nTest);
MlNetFree(net);
Konstanten
| Konstante | Beschreibung |
|---|---|
ML_ACTIVATION_RELU | ReLU-Aktivierung |
ML_ACTIVATION_SIGMOID | Sigmoid-Aktivierung |
ML_ACTIVATION_TANH | Tanh-Aktivierung |
ML_ACTIVATION_SOFTMAX | Softmax (Ausgabeschicht Klassifikation) |
ML_OPT_SGD | Stochastic Gradient Descent |
ML_OPT_ADAM | Adam-Optimierer |
ML_OPT_RMSPROP | RMSProp-Optimierer |
ML_LOSS_MSE | Mean Squared Error |
ML_LOSS_CROSS_ENTROPY | Kreuzentropie (Klassifikation) |
ML_LOSS_HUBER | Huber-Verlust (robust gegen Ausreißer) |
Funktionen
| Signatur | Sichtbarkeit | Beschreibung |
|---|---|---|
MlNetNew(): MlNet | pub | Erzeugt neues sequenzielles Netz |
MlNetAddDense(net: MlNet, units: int64, activation: int64): void | pub | Fügt vollverbundene Schicht hinzu |
MlNetAddDropout(net: MlNet, rate: f64): void | pub | Fügt Dropout-Regularisierung hinzu |
MlNetAddConv2D(net: MlNet, filters: int64, kernelSize: int64, activation: int64): void | pub | Fügt Conv2D-Schicht hinzu |
MlNetAddLSTM(net: MlNet, units: int64): void | pub | Fügt LSTM-Schicht hinzu |
MlNetCompile(net: MlNet, optimizer: int64, loss: int64, lr: f64): void | pub | Konfiguriert Training |
MlNetFit(net: MlNet, x: pchar, y: pchar, n: int64, epochs: int64, batchSize: int64): void | pub | Trainiert das Netz |
MlNetPredict(net: MlNet, x: pchar, n: int64): pchar | pub | Gibt Vorhersagen für n Samples zurück |
MlNetSave(net: MlNet, path: pchar): void | pub | Speichert Modell im LFD-Format |
MlNetLoad(path: pchar): MlNet | pub | Lädt Modell aus LFD-Datei |
MlNetFree(net: MlNet): void | pub | Gibt Netz-Ressourcen frei |
MlGradBoostNew(maxDepth: int64, nTrees: int64, lr: f64): MlGradBoost | pub | Erzeugt Gradient-Boosting-Modell |
MlGradBoostFit(m: MlGradBoost, x: pchar, y: pchar, n: int64): void | pub | Trainiert Gradient Boosting |
MlGradBoostPredict(m: MlGradBoost, x: pchar, n: int64): pchar | pub | Vorhersage mit Gradient Boosting |
MlGradBoostFree(m: MlGradBoost): void | pub | Gibt Modell-Ressourcen frei |
Letzte Aktualisierung: 2026-05-22
