====== 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. → [[lyx_-_programmiersprache:units:ml|std.ml]] · [[lyx_-_programmiersprache:units|Standard Library]] ---- ===== Ü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