From e6215e60319499253fccb709ef50c77d9f7fae24 Mon Sep 17 00:00:00 2001 From: Nicolas Date: Sun, 18 Jan 2026 18:30:21 +0100 Subject: [PATCH 1/4] Implementation of the shampoo optimizer including tests and experiments --- scripts/nn/optim/shampoo.dml | 499 ++++++++++++++++++ .../shampoo_optimizer/diagram_creation.ipynb | 461 ++++++++++++++++ .../diagrams/diagram_metrics_mnist.png | Bin 0 -> 65314 bytes .../metrics/metrics_adam_cifar.csv | 90 ++++ .../metrics/metrics_adam_cifar.csv.mtd | 12 + .../metrics/metrics_adam_mnist.csv | 60 +++ .../metrics/metrics_adam_mnist.csv.mtd | 12 + .../metrics/metrics_shampoo_cifar.csv | 90 ++++ .../metrics/metrics_shampoo_cifar.csv.mtd | 12 + .../metrics_shampoo_diagonal_mnist.csv | 60 +++ .../metrics_shampoo_diagonal_mnist.csv.mtd | 12 + .../metrics_shampoo_heuristic_cifar.csv | 90 ++++ .../metrics_shampoo_heuristic_cifar.csv.mtd | 12 + ...trics_shampoo_heuristic_diagonal_mnist.csv | 60 +++ ...s_shampoo_heuristic_diagonal_mnist.csv.mtd | 12 + .../metrics_shampoo_heuristic_mnist.csv | 60 +++ .../metrics_shampoo_heuristic_mnist.csv.mtd | 12 + .../metrics/metrics_shampoo_mnist.csv | 60 +++ .../metrics/metrics_shampoo_mnist.csv.mtd | 12 + .../metrics_shampoo_momentum_cifar.csv | 90 ++++ .../metrics_shampoo_momentum_cifar.csv.mtd | 12 + ...etrics_shampoo_momentum_diagonal_mnist.csv | 60 +++ ...cs_shampoo_momentum_diagonal_mnist.csv.mtd | 12 + .../metrics_shampoo_momentum_mnist.csv | 60 +++ .../metrics_shampoo_momentum_mnist.csv.mtd | 12 + .../shampoo_optimizer_experiments.dml | 482 +++++++++++++++++ .../nn/component/shampoo_test.dml | 437 +++++++++++++++ .../applications/nn/component/shampoo_test.py | 225 ++++++++ .../nn/component/shampoo_test2.dml | 34 ++ 29 files changed, 3050 insertions(+) create mode 100644 scripts/nn/optim/shampoo.dml create mode 100644 scripts/staging/shampoo_optimizer/diagram_creation.ipynb create mode 100644 scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml create mode 100644 src/test/scripts/applications/nn/component/shampoo_test.dml create mode 100644 src/test/scripts/applications/nn/component/shampoo_test.py create mode 100644 src/test/scripts/applications/nn/component/shampoo_test2.dml diff --git a/scripts/nn/optim/shampoo.dml b/scripts/nn/optim/shampoo.dml new file mode 100644 index 00000000000..e8832bdaf9a --- /dev/null +++ b/scripts/nn/optim/shampoo.dml @@ -0,0 +1,499 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +/* + * Shampoo optimizer. + * + * Implementation of the Shampoo optimizer as described in: + * + * Gupta et al., "Shampoo: Preconditioned Stochastic Tensor Optimization" + * https://arxiv.org/abs/1802.09568 + * + * Shampoo is a second-order optimization method that preconditions + * gradients using estimates of the row- and column-wise covariance + * of the gradients. Compared to first-order optimizers (SGD, Adam), + * Shampoo can converge faster but is significantly more memory-intensive. + * + * This implementation supports: + * - Full-matrix Shampoo (exact preconditioning) + * - Diagonal Shampoo (memory-efficient approximation) + * + * The choice between the two modes is determined by the shape of X + * and the preconditioner initialization. + */ + +update = function(matrix[double] X, matrix[double] dX, double lr, + matrix[double] preconL, matrix[double] preconR, boolean useDiag) + return(matrix[double] X, matrix[double] preconL, matrix[double] preconR){ + /* + * Performs one optimization step using the Shampoo update rule. + * + * + * Inputs: + * - X: Parameter matrix to be updated (n × m) + * - dX: Gradient of the loss w.r.t. X (n × m) + * - lr: Learning rate. + * - preconL: Left (row) preconditioner + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconR: Right (column) preconditioner + * - Full: (m × m) + * - Diagonal: (1 × m) + * - useDiag: Boolean flag indicating whether diagonal Shampoo is used + * + * Outputs: + * - X: Updated parameter matrix (n × m) + * - preconL: Updated left preconditioner + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconR: Updated right preconditioner + * - Full: (m × m) + * - Diagonal: (1 × m) + */ + + # Full-matrix Shampoo: + # Only used if both dimensions are small enough + if(useDiag==FALSE){ + + preconL = preconL + dX %*% t(dX) + preconR = preconR + t(dX) %*% dX + + [LEigenvalue, LEigenvector] = eigen(preconL) + preconLInvPowerRoot = LEigenvector %*% diag(LEigenvalue^(-0.25)) %*% t(LEigenvector) + + [REigenvalue, REigenvector] = eigen(preconR) + preconRInvPowerRoot = REigenvector %*% diag(REigenvalue^(-0.25)) %*% t(REigenvector) + + X = X - lr * preconLInvPowerRoot %*% dX %*% preconRInvPowerRoot + + # Diagonal Shampoo: + # Memory-efficient approximation for large parameter matrices + } else{ + n = nrow(dX) + m = ncol(dX) + + preconL = preconL + rowSums(dX^2) + preconR = preconR + colSums(dX^2) + + preconLScale = preconL^(-0.25) + preconRScale = preconR^(-0.25) + + preconLMatrix = preconLScale %*% matrix(1, rows=1, cols=m) + preconRMatrix = matrix(1, rows=n, cols=1) %*% preconRScale + + scaledGrad = dX * preconLMatrix; + scaledGrad = scaledGrad * preconRMatrix; + + X = X - lr * scaledGrad; + + } +} + +init = function(matrix[double] X, double epsilon, int useDiagThreshold) + return (matrix[double] preconL, matrix[double] preconR, boolean useDiag) { + /* + * Initializes the Shampoo preconditioners for a given parameter matrix. + * + * Depending on the size of X, this function initializes either: + * - Full identity matrices (exact Shampoo), or + * - Diagonal vectors (approximate Shampoo) + * + * This threshold is crucial to avoid excessive memory usage, + * as full Shampoo requires O(n^2 + m^2) memory per parameter matrix. + * + * Inputs: + * - X: Parameter matrix to be optimized (n, m) + * - epsilon: Numerical stability constant + * - useDiagThreshold: Dimension threshold above which diagonal + * preconditioning is used + * + * Outputs: + * - preconL: Initial left preconditioner + * - Full: (n × n) identity scaled by epsilon + * - Diagonal: (n × 1) filled with epsilon + * - preconR: Initial right preconditioner + * - Full: (m × m) identity scaled by epsilon + * - Diagonal: (1 × m) filled with epsilon + * - useDiag: Boolean flag indicating whether diagonal Shampoo is used + */ + + # Use diagonal Shampoo if parameter matrix is too large + if((nrow(X) > useDiagThreshold) | (ncol(X) > useDiagThreshold)){ + preconL = matrix(epsilon, rows=nrow(X), cols=1); + preconR = matrix(epsilon, rows=1, cols=ncol(X)); + useDiag = TRUE + + # Use full Shampoo if parameter matrix is small enough + } else { + preconL = matrix(0, rows=nrow(X), cols=nrow(X)); + index = 1; + while (index <= nrow(X)){ + preconL[index, index] = epsilon * 1 + index = index + 1 + } + preconR = matrix(0, rows=ncol(X), cols=ncol(X)); + index = 1; + while (index <= ncol(X)){ + preconR[index, index] = epsilon * 1 + index = index + 1 + } + useDiag = FALSE + } +} + +update_momentum = function(matrix[double] X, matrix[double] dX, double lr, + matrix[double] preconL, matrix[double] preconR, + matrix[double] momentum, boolean useDiag) + return(matrix[double] X, matrix[double] preconL, matrix[double] preconR, + matrix[double] momentum){ + /* + * Performs one optimization step using the Shampoo update rule, while using momentum. + * + * + * Inputs: + * - X: Parameter matrix to be updated (n × m) + * - dX: Gradient of the loss w.r.t. X (n × m) + * - lr: Learning rate. + * - preconL: Left (row) preconditioner + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconR: Right (column) preconditioner + * - Full: (m × m) + * - Diagonal: (1 × m) + * - momentum: momentum (n × m) + * - useDiag: Boolean flag indicating whether diagonal Shampoo is used + * + * Outputs: + * - X: Updated parameter matrix (n × m) + * - preconL: Updated left preconditioner + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconR: Updated right preconditioner + * - Full: (m × m) + * - Diagonal: (1 × m) + * - momentum: Updated momentum (n × m) + */ + + # calculating the updated momentum + momentum = 0.9 * momentum + (0.1)*dX + + # Full-matrix Shampoo: + # Only used if both dimensions are small enough + if(useDiag==FALSE){ + + preconL = preconL + dX %*% t(dX) + preconR = preconR + t(dX) %*% dX + + [LEigenvalue, LEigenvector] = eigen(preconL) + preconLInvPowerRoot = LEigenvector %*% diag(LEigenvalue^(-0.25)) %*% t(LEigenvector) + + [REigenvalue, REigenvector] = eigen(preconR) + preconRInvPowerRoot = REigenvector %*% diag(REigenvalue^(-0.25)) %*% t(REigenvector) + + X = X - lr * preconLInvPowerRoot %*% momentum %*% preconRInvPowerRoot + + # Diagonal Shampoo: + # Memory-efficient approximation for large parameter matrices + } else{ + n = nrow(dX) + m = ncol(dX) + + preconL = preconL + rowSums(dX ^ 2) + preconR = preconR + colSums(dX ^ 2) + + preconLScale = preconL^(-0.25) + preconRScale = preconR^(-0.25) + + preconLMatrix = preconLScale %*% matrix(1, rows=1, cols=m) + preconRMatrix = matrix(1, rows=n, cols=1) %*% preconRScale + + scaledGrad = momentum * preconLMatrix + scaledGrad = scaledGrad * preconRMatrix + + X = X - lr * scaledGrad + } +} + +init_momentum = function(matrix[double] X, double epsilon, int useDiagThreshold) + return (matrix[double] preconL, matrix[double] preconR, + matrix[double] momentum, boolean useDiag) { + /* + * Initializes the Shampoo preconditioners and momentum for a given parameter matrix. + * + * Depending on the size of X, this function initializes either: + * - Full identity matrices (exact Shampoo), or + * - Diagonal vectors (approximate Shampoo) + * + * This threshold is crucial to avoid excessive memory usage, + * as full Shampoo requires O(n² + m²) memory per parameter matrix. + * + * Inputs: + * - X: Parameter matrix to be optimized (n, m) + * - epsilon: Numerical stability constant + * - useDiagThreshold: Dimension threshold above which diagonal + * preconditioning is used + * + * Outputs: + * - preconL: Initial left preconditioner + * - Full: (n × n) identity scaled by epsilon + * - Diagonal: (n × 1) filled with epsilon + * - preconR: Initial right preconditioner + * - Full: (m × m) identity scaled by epsilon + * - Diagonal: (1 × m) filled with epsilon + * - momentum: Initial momentum (n × m), initialized to zeros + * - useDiag: Boolean flag indicating whether diagonal Shampoo is used + */ + + # Use diagonal Shampoo if parameter matrix is too large + if((nrow(X) > useDiagThreshold) | (ncol(X) > useDiagThreshold)){ + preconL = matrix(epsilon, rows=nrow(X), cols=1); + preconR = matrix(epsilon, rows=1, cols=ncol(X)); + useDiag = TRUE + + # Use full Shampoo if parameter matrix is small enough + } else { + preconL = matrix(0, rows=nrow(X), cols=nrow(X)); + index = 1; + while (index <= nrow(X)){ + preconL[index, index] = epsilon * 1 + index = index + 1 + } + preconR = matrix(0, rows=ncol(X), cols=ncol(X)); + index = 1; + while (index <= ncol(X)){ + preconR[index, index] = epsilon * 1 + index = index + 1 + } + useDiag = FALSE + } + momentum = X * 0 +} + +update_heuristic = function(matrix[double] X, matrix[double] dX, double lr, + matrix[double] preconL, matrix[double] preconR, matrix[double] momentum, + int stepCounter, int rootEvery, int preconEvery, matrix[double] bufferL, + matrix[double] bufferR, matrix[double] preconLInvPowerRoot, + matrix[double] preconRInvPowerRoot, boolean useDiag) + return (matrix[double] X, matrix[double] preconL, matrix[double] preconR, + matrix[double] momentum, int stepCounter, matrix[double] bufferL, + matrix[double] bufferR, matrix[double] preconLInvPowerRoot, + matrix[double] preconRInvPowerRoot){ + /* + * Performs one optimization step using the Shampoo update rule, while using momentum + * and a heuristic for runtime improvements. + * + * + * Inputs: + * - X: Parameter matrix to be updated (n × m) + * - dX: Gradient of the loss w.r.t. X (n × m) + * - lr: Learning rate. + * - preconL: Left (row) preconditioner + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconR: Right (column) preconditioner + * - Full: (m × m) + * - Diagonal: (1 × m) + * - momentum: momentum (n × m) + * - stepCounter: Step counter (int), incremented each call + * - rootEvery: Frequency for recomputing inverse roots (int) + * - preconEvery: Frequency for applying buffered updates to preconditioners (int) + * - bufferL: Buffer accumulating left curvature updates + * - Full: (n × n) + * - Diagonal: (n × 1) + * - bufferR: Buffer accumulating right curvature updates + * - Full: (m × m) + * - Diagonal: (1 × m) + * - preconLInvPowerRoot: Cached preconL^{-1/4} + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconRInvPowerRoot: Cached preconR^{-1/4} + * - Full: (m × m) + * - Diagonal: (1 × m) + * - useDiag: Boolean flag indicating whether diagonal Shampoo is used + * + * Outputs: + * - X: Updated parameter matrix (n × m) + * - preconL: Updated left preconditioner + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconR: Updated right preconditioner + * - Full: (m × m) + * - Diagonal: (1 × m) + * - momentum: momentum (n × m) + * - stepCounter: Updated step counter (int) + * - bufferL: Updated bufferL (reset to 0 when applied) + * - Full: (n × n) + * - Diagonal: (n × 1) + * - bufferR: Updated bufferR (reset to 0 when applied) + * - Full: (m × m) + * - Diagonal: (1 × m) + * - preconLInvPowerRoot: Updated cached inverse root (when recomputed) + * - Full: (n × n) + * - Diagonal: (n × 1) + * - preconRInvPowerRoot: Updated cached inverse root (when recomputed) + * - Full: (m × m) + * - Diagonal: (1 × m) + */ + + # calculating the updated momentum + momentum = 0.9 * momentum + (0.1)*dX + + # Full-matrix Shampoo: + # Only used if both dimensions are small enough + if(useDiag==FALSE){ + bufferL = bufferL + (dX %*% t(dX)) + bufferR = bufferR + (t(dX) %*% dX) + + if ((stepCounter > 0) & (stepCounter %% preconEvery == 0)){ + preconL = preconL + bufferL + preconR = preconR + bufferR + bufferL = bufferL * 0 + bufferR = bufferR * 0 + } + + + if ((stepCounter > 0) & (stepCounter %% rootEvery == 0)){ + [LEigenvalue, LEigenvector] = eigen(preconL) + preconLInvPowerRoot = LEigenvector %*% diag(LEigenvalue^(-0.25)) %*% t(LEigenvector) + + [REigenvalue, REigenvector] = eigen(preconR) + preconRInvPowerRoot = REigenvector %*% diag(REigenvalue^(-0.25)) %*% t(REigenvector) + } + + X = X - lr * preconLInvPowerRoot %*% momentum %*% preconRInvPowerRoot + + stepCounter = stepCounter + 1 + + # Diagonal Shampoo: + # Memory-efficient approximation for large parameter matrices + } else{ + n = nrow(dX) + m = ncol(dX) + + bufferL = bufferL + rowSums(dX ^ 2) + bufferR = bufferR + colSums(dX ^ 2) + + if ((stepCounter > 0) & (stepCounter %% preconEvery == 0)){ + preconL = preconL + bufferL + preconR = preconR + bufferR + bufferL = bufferL * 0 + bufferR = bufferR * 0 + } + + if ((stepCounter > 0) & (stepCounter %% rootEvery == 0)){ + preconLInvPowerRoot = (preconL^(-0.25)) + preconRInvPowerRoot = (preconR^(-0.25)) + } + preconLMatrix = preconLInvPowerRoot %*% matrix(1, rows=1, cols=m) + preconRMatrix = matrix(1, rows=n, cols=1) %*% preconRInvPowerRoot + + scaledGrad = momentum * preconLMatrix + scaledGrad = scaledGrad * preconRMatrix + + X = X - lr * scaledGrad + stepCounter = stepCounter + 1 + } +} + + + +init_heuristic = function(matrix[double] X, double epsilon, int useDiagThreshold) + return (matrix[double] preconL, matrix[double] preconR, int stepCounter, + matrix[double] bufferL, matrix[double] bufferR, matrix[double] momentum, + matrix[double] preconLInvPowerRoot, matrix[double] preconRInvPowerRoot, + boolean useDiag) { + /* + * Initializes Shampoo preconditioners, buffers, cached inverse roots, + * and momentum for the heuristic variant. + * + * Depending on the size of X, this function initializes either: + * - Full identity matrices (exact Shampoo), or + * - Diagonal vectors (approximate Shampoo) + * + * This threshold is crucial to avoid excessive memory usage, + * as full Shampoo requires O(n^2 + m^2) memory per parameter matrix. + * + * Inputs: + * - X: Parameter matrix to be optimized (n, m) + * - epsilon: Numerical stability constant + * - useDiagThreshold: Dimension threshold above which diagonal + * preconditioning is used + * + * Outputs: + * - preconL: Initial left preconditioner (n × n) or (n × 1) + * - preconR: Initial right preconditioner (m × m) or (1 × m) + * - stepCounter: Initialized to 0 + * - bufferL: Initialized to zeros, same shape as preconL + * - bufferR: Initialized to zeros, same shape as preconR + * - momentum: Initialized to zeros, same shape as X (n × m) + * - preconLInvPowerRoot: Cached inverse fourth root of preconL + * - Full: initialized to epsilon^{-1/4} * I (n × n) + * - Diagonal: initialized to preconL^{-1/4} (n × 1) + * - preconRInvPowerRoot: Cached inverse fourth root of preconR + * - Full: initialized to epsilon^{-1/4} * I (m × m) + * - Diagonal: initialized to preconR^{-1/4} (1 × m) + * - useDiag: Boolean flag indicating whether diagonal Shampoo is used + */ + + # Use diagonal Shampoo if parameter matrix is too large + if((nrow(X) > useDiagThreshold) | (ncol(X) > useDiagThreshold)){ + preconL = matrix(epsilon, rows=nrow(X), cols=1); + preconR = matrix(epsilon, rows=1, cols=ncol(X)); + preconLInvPowerRoot = preconL^(-0.25) + preconRInvPowerRoot = preconR^(-0.25) + useDiag = TRUE + + # Use full Shampoo if parameter matrix is small enough + } else { + preconL = matrix(0, rows=nrow(X), cols=nrow(X)); + index = 1; + while (index <= nrow(X)){ + preconL[index, index] = epsilon * 1 + index = index + 1 + } + preconR = matrix(0, rows=ncol(X), cols=ncol(X)); + index = 1; + while (index <= ncol(X)){ + preconR[index, index] = epsilon * 1 + index = index + 1 + } + + preconLInvPowerRoot = preconL + i = 1 + while(i <= nrow(preconLInvPowerRoot)) { + preconLInvPowerRoot[i,i] = epsilon^(-0.25) + i = i + 1 + } + + preconRInvPowerRoot = preconR + j = 1 + while(j <= nrow(preconRInvPowerRoot)) { + preconRInvPowerRoot[j,j] = epsilon^(-0.25) + j = j + 1 + } + + useDiag = FALSE + } + bufferR = preconR * 0 + bufferL = preconL * 0 + stepCounter = 0 + momentum = X * 0 +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/diagram_creation.ipynb b/scripts/staging/shampoo_optimizer/diagram_creation.ipynb new file mode 100644 index 00000000000..251f7e6a4f3 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/diagram_creation.ipynb @@ -0,0 +1,461 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "id": "400c10c6", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " epochs train_losses train_accuracies val_losses val_accuracies \\\n", + "0 1.0 1.529923 0.615625 0.416351 0.873 \n", + "1 2.0 0.250601 0.927000 0.229524 0.916 \n", + "2 3.0 0.154800 0.954250 0.162009 0.940 \n", + "3 4.0 0.113356 0.964625 0.135608 0.955 \n", + "4 5.0 0.090430 0.971625 0.123288 0.963 \n", + "5 6.0 0.076361 0.976625 0.114561 0.968 \n", + "6 7.0 0.066914 0.979625 0.109109 0.969 \n", + "7 8.0 0.059269 0.982500 0.105038 0.971 \n", + "8 9.0 0.053242 0.983750 0.101710 0.971 \n", + "9 10.0 0.048538 0.985125 0.099977 0.971 \n", + "10 11.0 0.044405 0.985750 0.098380 0.971 \n", + "11 12.0 0.040600 0.987250 0.097781 0.972 \n", + "12 13.0 0.037342 0.988250 0.097132 0.974 \n", + "13 14.0 0.034315 0.988750 0.096922 0.974 \n", + "14 15.0 0.031616 0.989750 0.097324 0.976 \n", + "15 16.0 0.029328 0.990125 0.096786 0.974 \n", + "16 17.0 0.027317 0.990875 0.096020 0.975 \n", + "17 18.0 0.025400 0.991250 0.094932 0.975 \n", + "18 19.0 0.023850 0.992375 0.094315 0.975 \n", + "19 20.0 0.022360 0.992875 0.094448 0.975 \n", + "20 21.0 0.021041 0.993375 0.094068 0.976 \n", + "21 22.0 0.019816 0.993750 0.093970 0.976 \n", + "22 23.0 0.018703 0.994375 0.093682 0.976 \n", + "23 24.0 0.017558 0.995000 0.093167 0.976 \n", + "24 25.0 0.016504 0.995375 0.093128 0.976 \n", + "25 26.0 0.015547 0.996000 0.093137 0.976 \n", + "26 27.0 0.014641 0.996250 0.092622 0.975 \n", + "27 28.0 0.013850 0.996375 0.092436 0.975 \n", + "28 29.0 0.013045 0.996750 0.091737 0.974 \n", + "29 30.0 0.012308 0.996875 0.091197 0.974 \n", + "30 31.0 0.011605 0.997375 0.090616 0.973 \n", + "31 32.0 0.010950 0.997625 0.089798 0.973 \n", + "32 33.0 0.010404 0.997625 0.089589 0.973 \n", + "33 34.0 0.009935 0.997750 0.089403 0.973 \n", + "34 35.0 0.009448 0.997750 0.088787 0.973 \n", + "35 36.0 0.008966 0.997875 0.088232 0.974 \n", + "36 37.0 0.008522 0.998250 0.088025 0.973 \n", + "37 38.0 0.008150 0.998375 0.088028 0.973 \n", + "38 39.0 0.007784 0.998500 0.087388 0.973 \n", + "39 40.0 0.007437 0.998500 0.087394 0.973 \n", + "40 41.0 0.007119 0.998625 0.087162 0.973 \n", + "41 42.0 0.006813 0.998625 0.086621 0.974 \n", + "42 43.0 0.006518 0.998750 0.086615 0.975 \n", + "43 44.0 0.006219 0.999000 0.086452 0.973 \n", + "44 45.0 0.005936 0.999250 0.086182 0.973 \n", + "45 46.0 0.005689 0.999250 0.085994 0.973 \n", + "46 47.0 0.005452 0.999250 0.086067 0.973 \n", + "47 48.0 0.005212 0.999250 0.085938 0.973 \n", + "48 49.0 0.004984 0.999250 0.085857 0.973 \n", + "49 50.0 0.004777 0.999375 0.085784 0.973 \n", + "50 51.0 0.004596 0.999375 0.086051 0.973 \n", + "51 52.0 0.004398 0.999375 0.085878 0.974 \n", + "52 53.0 0.004203 0.999500 0.085930 0.974 \n", + "53 54.0 0.004026 0.999500 0.085631 0.974 \n", + "54 55.0 0.003847 0.999625 0.085347 0.975 \n", + "55 56.0 0.003690 0.999750 0.085356 0.975 \n", + "56 57.0 0.003528 0.999875 0.085206 0.975 \n", + "57 58.0 0.003375 1.000000 0.085179 0.976 \n", + "58 59.0 0.003247 1.000000 0.085019 0.976 \n", + "59 60.0 0.003124 1.000000 0.084813 0.977 \n", + "\n", + " optimizer \n", + "0 shampoo \n", + "1 shampoo \n", + "2 shampoo \n", + "3 shampoo \n", + "4 shampoo \n", + "5 shampoo \n", + "6 shampoo \n", + "7 shampoo \n", + "8 shampoo \n", + "9 shampoo \n", + "10 shampoo \n", + "11 shampoo \n", + "12 shampoo \n", + "13 shampoo \n", + "14 shampoo \n", + "15 shampoo \n", + "16 shampoo \n", + "17 shampoo \n", + "18 shampoo \n", + "19 shampoo \n", + "20 shampoo \n", + "21 shampoo \n", + "22 shampoo \n", + "23 shampoo \n", + "24 shampoo \n", + "25 shampoo \n", + "26 shampoo \n", + "27 shampoo \n", + "28 shampoo \n", + "29 shampoo \n", + "30 shampoo \n", + "31 shampoo \n", + "32 shampoo \n", + "33 shampoo \n", + "34 shampoo \n", + "35 shampoo \n", + "36 shampoo \n", + "37 shampoo \n", + "38 shampoo \n", + "39 shampoo \n", + "40 shampoo \n", + "41 shampoo \n", + "42 shampoo \n", + "43 shampoo \n", + "44 shampoo \n", + "45 shampoo \n", + "46 shampoo \n", + "47 shampoo \n", + "48 shampoo \n", + "49 shampoo \n", + "50 shampoo \n", + "51 shampoo \n", + "52 shampoo \n", + "53 shampoo \n", + "54 shampoo \n", + "55 shampoo \n", + "56 shampoo \n", + "57 shampoo \n", + "58 shampoo \n", + "59 shampoo \n", + " epochs train_losses train_accuracies val_losses val_accuracies \\\n", + "0 1.0 0.639533 0.801500 0.327239 0.902 \n", + "1 2.0 0.184752 0.945375 0.221243 0.937 \n", + "2 3.0 0.134242 0.959750 0.188511 0.941 \n", + "3 4.0 0.100303 0.970375 0.166702 0.951 \n", + "4 5.0 0.079379 0.976000 0.156010 0.957 \n", + "5 6.0 0.069202 0.979125 0.164982 0.957 \n", + "6 7.0 0.060592 0.981250 0.171788 0.958 \n", + "7 8.0 0.054129 0.982750 0.163366 0.962 \n", + "8 9.0 0.048112 0.985375 0.149752 0.963 \n", + "9 10.0 0.042714 0.987625 0.135282 0.964 \n", + "10 11.0 0.037989 0.989000 0.122572 0.966 \n", + "11 12.0 0.033369 0.990125 0.114374 0.968 \n", + "12 13.0 0.029285 0.991125 0.106545 0.973 \n", + "13 14.0 0.025636 0.992250 0.100020 0.971 \n", + "14 15.0 0.022314 0.993375 0.093786 0.970 \n", + "15 16.0 0.019570 0.994750 0.088490 0.973 \n", + "16 17.0 0.017252 0.996125 0.084034 0.976 \n", + "17 18.0 0.015548 0.996250 0.082103 0.976 \n", + "18 19.0 0.014139 0.996875 0.080609 0.976 \n", + "19 20.0 0.012960 0.997750 0.078689 0.976 \n", + "20 21.0 0.012004 0.997500 0.077240 0.977 \n", + "21 22.0 0.011114 0.997500 0.076127 0.977 \n", + "22 23.0 0.010281 0.998000 0.075846 0.976 \n", + "23 24.0 0.009678 0.998000 0.074256 0.976 \n", + "24 25.0 0.008997 0.998000 0.073674 0.977 \n", + "25 26.0 0.008524 0.998000 0.072962 0.977 \n", + "26 27.0 0.007974 0.998250 0.072336 0.976 \n", + "27 28.0 0.007519 0.998625 0.071772 0.975 \n", + "28 29.0 0.007067 0.998750 0.070253 0.974 \n", + "29 30.0 0.006566 0.999000 0.069656 0.974 \n", + "30 31.0 0.006089 0.999000 0.068200 0.977 \n", + "31 32.0 0.005608 0.999125 0.066946 0.977 \n", + "32 33.0 0.005141 0.999250 0.065950 0.978 \n", + "33 34.0 0.004759 0.999250 0.064440 0.978 \n", + "34 35.0 0.004381 0.999375 0.063538 0.978 \n", + "35 36.0 0.004047 0.999750 0.062533 0.979 \n", + "36 37.0 0.003787 0.999750 0.061590 0.979 \n", + "37 38.0 0.003497 1.000000 0.060816 0.979 \n", + "38 39.0 0.003270 1.000000 0.060142 0.979 \n", + "39 40.0 0.003096 1.000000 0.059449 0.979 \n", + "40 41.0 0.002915 1.000000 0.059109 0.979 \n", + "41 42.0 0.002747 1.000000 0.058858 0.980 \n", + "42 43.0 0.002602 1.000000 0.058758 0.980 \n", + "43 44.0 0.002453 1.000000 0.058751 0.980 \n", + "44 45.0 0.002325 1.000000 0.058833 0.980 \n", + "45 46.0 0.002200 1.000000 0.059313 0.980 \n", + "46 47.0 0.002075 1.000000 0.059344 0.980 \n", + "47 48.0 0.001972 1.000000 0.059808 0.980 \n", + "48 49.0 0.001866 1.000000 0.060284 0.980 \n", + "49 50.0 0.001785 1.000000 0.060728 0.980 \n", + "50 51.0 0.001703 1.000000 0.061150 0.980 \n", + "51 52.0 0.001626 1.000000 0.061556 0.979 \n", + "52 53.0 0.001560 1.000000 0.061923 0.979 \n", + "53 54.0 0.001492 1.000000 0.062277 0.979 \n", + "54 55.0 0.001441 1.000000 0.062653 0.979 \n", + "55 56.0 0.001381 1.000000 0.063042 0.979 \n", + "56 57.0 0.001333 1.000000 0.063426 0.979 \n", + "57 58.0 0.001282 1.000000 0.063787 0.979 \n", + "58 59.0 0.001239 1.000000 0.064086 0.979 \n", + "59 60.0 0.001195 1.000000 0.064313 0.980 \n", + "\n", + " optimizer \n", + "0 shampoo_momentum \n", + "1 shampoo_momentum \n", + "2 shampoo_momentum \n", + "3 shampoo_momentum \n", + "4 shampoo_momentum \n", + "5 shampoo_momentum \n", + "6 shampoo_momentum \n", + "7 shampoo_momentum \n", + "8 shampoo_momentum \n", + "9 shampoo_momentum \n", + "10 shampoo_momentum \n", + "11 shampoo_momentum \n", + "12 shampoo_momentum \n", + "13 shampoo_momentum \n", + "14 shampoo_momentum \n", + "15 shampoo_momentum \n", + "16 shampoo_momentum \n", + "17 shampoo_momentum \n", + "18 shampoo_momentum \n", + "19 shampoo_momentum \n", + "20 shampoo_momentum \n", + "21 shampoo_momentum \n", + "22 shampoo_momentum \n", + "23 shampoo_momentum \n", + "24 shampoo_momentum \n", + "25 shampoo_momentum \n", + "26 shampoo_momentum \n", + "27 shampoo_momentum \n", + "28 shampoo_momentum \n", + "29 shampoo_momentum \n", + "30 shampoo_momentum \n", + "31 shampoo_momentum \n", + "32 shampoo_momentum \n", + "33 shampoo_momentum \n", + "34 shampoo_momentum \n", + "35 shampoo_momentum \n", + "36 shampoo_momentum \n", + "37 shampoo_momentum \n", + "38 shampoo_momentum \n", + "39 shampoo_momentum \n", + "40 shampoo_momentum \n", + "41 shampoo_momentum \n", + "42 shampoo_momentum \n", + "43 shampoo_momentum \n", + "44 shampoo_momentum \n", + "45 shampoo_momentum \n", + "46 shampoo_momentum \n", + "47 shampoo_momentum \n", + "48 shampoo_momentum \n", + "49 shampoo_momentum \n", + "50 shampoo_momentum \n", + "51 shampoo_momentum \n", + "52 shampoo_momentum \n", + "53 shampoo_momentum \n", + "54 shampoo_momentum \n", + "55 shampoo_momentum \n", + "56 shampoo_momentum \n", + "57 shampoo_momentum \n", + "58 shampoo_momentum \n", + "59 shampoo_momentum \n", + " epochs train_losses train_accuracies val_losses val_accuracies \\\n", + "0 1.0 0.660083 0.791992 0.458462 0.844 \n", + "1 2.0 0.256014 0.923000 0.306052 0.909 \n", + "2 3.0 0.179122 0.947125 0.213270 0.933 \n", + "3 4.0 0.139948 0.957750 0.173651 0.942 \n", + "4 5.0 0.107507 0.967500 0.150592 0.952 \n", + "5 6.0 0.090241 0.971875 0.152722 0.949 \n", + "6 7.0 0.081093 0.974000 0.182535 0.943 \n", + "7 8.0 0.073433 0.976500 0.196313 0.936 \n", + "8 9.0 0.064927 0.979250 0.161399 0.948 \n", + "9 10.0 0.055647 0.982500 0.158130 0.949 \n", + "10 11.0 0.048851 0.984625 0.136853 0.958 \n", + "11 12.0 0.043453 0.986000 0.129564 0.963 \n", + "12 13.0 0.037899 0.988125 0.128100 0.964 \n", + "13 14.0 0.034403 0.989750 0.120332 0.967 \n", + "14 15.0 0.031140 0.990500 0.144659 0.956 \n", + "15 16.0 0.027824 0.992000 0.139351 0.959 \n", + "16 17.0 0.025904 0.992875 0.138057 0.960 \n", + "17 18.0 0.023049 0.994000 0.139043 0.958 \n", + "18 19.0 0.021960 0.993750 0.145674 0.953 \n", + "19 20.0 0.022683 0.992875 0.131017 0.962 \n", + "20 21.0 0.019511 0.993750 0.163879 0.953 \n", + "21 22.0 0.020723 0.993375 0.131990 0.963 \n", + "22 23.0 0.015733 0.995500 0.115951 0.966 \n", + "23 24.0 0.016863 0.994625 0.124647 0.964 \n", + "24 25.0 0.011906 0.996750 0.095556 0.975 \n", + "25 26.0 0.013877 0.995000 0.075135 0.973 \n", + "26 27.0 0.014348 0.995250 0.097998 0.973 \n", + "27 28.0 0.014791 0.995000 0.099138 0.970 \n", + "28 29.0 0.017454 0.995000 0.108553 0.967 \n", + "29 30.0 0.016810 0.994625 0.091436 0.972 \n", + "30 31.0 0.013777 0.995125 0.099723 0.973 \n", + "31 32.0 0.012082 0.995875 0.104254 0.971 \n", + "32 33.0 0.009674 0.997000 0.081663 0.976 \n", + "33 34.0 0.010131 0.997750 0.083600 0.975 \n", + "34 35.0 0.009486 0.996375 0.094651 0.969 \n", + "35 36.0 0.011784 0.996498 0.122534 0.964 \n", + "36 37.0 0.012858 0.995500 0.077891 0.973 \n", + "37 38.0 0.005532 0.998750 0.085279 0.978 \n", + "38 39.0 0.004174 0.999250 0.062567 0.980 \n", + "39 40.0 0.003725 0.999375 0.065963 0.977 \n", + "40 41.0 0.003737 0.999000 0.106305 0.975 \n", + "41 42.0 0.004466 0.998750 0.069676 0.983 \n", + "42 43.0 0.003353 0.999125 0.063304 0.984 \n", + "43 44.0 0.002823 0.999375 0.082333 0.979 \n", + "44 45.0 0.002750 0.999750 0.069678 0.983 \n", + "45 46.0 0.002190 0.999500 0.122289 0.971 \n", + "46 47.0 0.014585 0.994625 0.117514 0.973 \n", + "47 48.0 0.003940 0.999125 0.072986 0.982 \n", + "48 49.0 0.002838 0.999375 0.057956 0.986 \n", + "49 50.0 0.002429 0.999250 0.071051 0.980 \n", + "50 51.0 0.000884 1.000000 0.063533 0.984 \n", + "51 52.0 0.000639 1.000000 0.062502 0.986 \n", + "52 53.0 0.001002 0.999750 0.085928 0.977 \n", + "53 54.0 0.003981 0.998750 0.142024 0.964 \n", + "54 55.0 0.009453 0.997250 0.112729 0.969 \n", + "55 56.0 0.020304 0.994000 0.221027 0.961 \n", + "56 57.0 0.020196 0.992625 0.074609 0.980 \n", + "57 58.0 0.012778 0.996250 0.084888 0.980 \n", + "58 59.0 0.005098 0.998625 0.070511 0.983 \n", + "59 60.0 0.002206 0.999500 0.067209 0.985 \n", + "\n", + " optimizer \n", + "0 adam \n", + "1 adam \n", + "2 adam \n", + "3 adam \n", + "4 adam \n", + "5 adam \n", + "6 adam \n", + "7 adam \n", + "8 adam \n", + "9 adam \n", + "10 adam \n", + "11 adam \n", + "12 adam \n", + "13 adam \n", + "14 adam \n", + "15 adam \n", + "16 adam \n", + "17 adam \n", + "18 adam \n", + "19 adam \n", + "20 adam \n", + "21 adam \n", + "22 adam \n", + "23 adam \n", + "24 adam \n", + "25 adam \n", + "26 adam \n", + "27 adam \n", + "28 adam \n", + "29 adam \n", + "30 adam \n", + "31 adam \n", + "32 adam \n", + "33 adam \n", + "34 adam \n", + "35 adam \n", + "36 adam \n", + "37 adam \n", + "38 adam \n", + "39 adam \n", + "40 adam \n", + "41 adam \n", + "42 adam \n", + "43 adam \n", + "44 adam \n", + "45 adam \n", + "46 adam \n", + "47 adam \n", + "48 adam \n", + "49 adam \n", + "50 adam \n", + "51 adam \n", + "52 adam \n", + "53 adam \n", + "54 adam \n", + "55 adam \n", + "56 adam \n", + "57 adam \n", + "58 adam \n", + "59 adam \n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_9880\\3072135520.py:12: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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cgtnnXVWvesM8m+/Mxw4cIDo6Gj69evH5ZdfztGjRwG59h3tu+++Y8KECVx00UWEh4czduxY3nrrLffj3envrgTBHSAvLw+Hw0FERES9+yMiIsjKyvLQqHon1/WWn0XHczqd3HnnnUybNo0RI0YA2vU3mUwEBgbWO1auf/vZtWsXvr6+mM1mbrzxRr7++muGDRsm174TfPLJJ2zdupVFixad8Jhc/441adIk3nvvPZYuXcprr73G4cOHmTFjBqWlpXLtO9ihQ4d47bXXGDhwIMuWLeOmm27i9ttv5/333we6199dg6cHIIToGW655RZ2795dLy9PdLzBgwezfft2iouL+eKLL1i4cCErV6709LB6vLS0NO644w6WL1+OxWLx9HB6nTPPPNO9P2rUKCZNmkRcXByfffYZXl5eHhxZz+d0OpkwYQL/+te/ABg7diy7d+/m9ddfZ+HChR4eXcvITHAHCA0NRa/Xn7ASNTs7m8jISA+NqndyXW/5WXSsW2+9lR9++IHffvuNmJgY9/2RkZFYrVaKiorqHS/Xv/2YTCYGDBjA+PHjWbRoEaNHj+aFF16Qa9/BtmzZQk5ODuPGjcNgMGAwGFi5ciUvvvgiBoOBiIgIuf6dKDAwkEGDBpGSkiL/9jtYVFQUw4YNq3ff0KFD3eko3envrgTBHcBkMjF+/HhWrFjhvs/pdLJixQqmTJniwZH1PgkJCURGRtb7WZSUlLBhwwb5WbQDVVW59dZb+frrr/n1119JSEio9/j48eMxGo31rn9ycjJHjx6V699BnE4n1dXVcu072Jw5c9i1axfbt293bxMmTODyyy9378v17zxlZWUcPHiQqKgo+bffwaZNm3ZCKcz9+/cTFxcHdLO/u55emddTffLJJ6rZbFbfe+89de/eveoNN9ygBgYGqllZWZ4eWo9TWlqqbtu2Td22bZsKqM8++6y6bds29ciRI6qqquqTTz6pBgYGqt9++626c+dO9ZxzzlETEhLUyspKD4+8+7vpppvUgIAANTExUT127Jh7q6iocB9z4403qn379lV//fVXdfPmzeqUKVPUKVOmeHDUPcd9992nrly5Uj18+LC6c+dO9b777lMVRVF//vlnVVXl2ne2utUhVFWuf0e655571MTERPXw4cPqmjVr1Llz56qhoaFqTk6Oqqpy7TvSxo0bVYPBoD7xxBPq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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "from matplotlib import pyplot as plt\n", + "collected_data = pd.DataFrame(columns=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"optimizer\"])\n", + "dataset = \"mnist\"\n", + "# \"shampoo\", \"shampoo_diagonal\", \"shampoo_momentum\", \"shampoo_momentum_diagonal\", \"shampoo_heuristic\", \"shampoo_heuristic_diagonal\", \"adam\"\n", + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"adam\"] \n", + "\n", + "for optimizer in optimizers:\n", + " path = f\"metrics/metrics_{optimizer}_{dataset}.csv\"\n", + " df = pd.read_csv(path, names=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\"])\n", + " df[\"optimizer\"] = optimizer\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n", + "\n", + "figure = plt.figure(figsize=(8,8))\n", + "for optimizer in optimizers:\n", + " print(collected_data[collected_data[\"optimizer\"]==optimizer])\n", + " optimzer_data = collected_data[collected_data[\"optimizer\"]==optimizer]\n", + " plt.plot(optimzer_data[\"epochs\"], optimzer_data[\"val_losses\"], label = optimizer)\n", + "\n", + "plt.title(\"Comparison between multiple variants of the shampoo optimizer and adam\")\n", + "plt.xlabel(\"epochs\")\n", + "plt.ylabel(\"validation loss\")\n", + "plt.legend()\n", + "plt.show()\n", + "figure.savefig(f\"diagrams/diagram_metrics_{dataset}.png\", format=\"png\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "65b2c54b", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.9" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_mnist.png new file mode 100644 index 0000000000000000000000000000000000000000..11cfa4b58e12cc1436aa5f15b791db8babc929af GIT binary patch literal 65314 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 literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv new file mode 100644 index 00000000000..efcfbc37287 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv @@ -0,0 +1,90 @@ +1.0,2.0366285569366878,0.26598543709489775,1.9111378509607304,0.328 +2.0,1.863508219437754,0.3412155143759349,1.8029196566374601,0.3632 +3.0,1.7781075000737478,0.37343204670101376,1.7365597405952091,0.3826 +4.0,1.7178380710578425,0.3947648329732425,1.6806893259419955,0.4002 +5.0,1.669877784216493,0.41048020192787105,1.6390592825854502,0.4138 +6.0,1.6350585694820974,0.42428172261924546,1.6146616228664268,0.4242 +7.0,1.6090974892669985,0.4327987369120824,1.5910762546497168,0.4314 +8.0,1.587529581892735,0.44248223782615925,1.5692068211402614,0.4374 +9.0,1.5657862599669354,0.4502518904769819,1.5481026555575144,0.4452 +10.0,1.5430813878099718,0.45822149742396545,1.5275131045309027,0.4538 +11.0,1.5199649145732006,0.46613397457204586,1.506689447582152,0.4618 +12.0,1.4982848263026722,0.4736133039720792,1.488505237593026,0.4718 +13.0,1.4789747560435527,0.48032605534319434,1.4727941864822314,0.4766 +14.0,1.4621960038234303,0.4855388898121987,1.4603915792006466,0.4802 +15.0,1.4475009074972,0.4910233505068971,1.4511544780956973,0.483 +16.0,1.4349582625238917,0.49627929200598303,1.4428575600357896,0.485 +17.0,1.423895901496466,0.4997927746385241,1.4336665640797934,0.4904 +18.0,1.414059771299443,0.5039585757021772,1.4282307999663446,0.4916 +19.0,1.404377145998948,0.5074814068472661,1.4222616630433387,0.4968 +20.0,1.3953288419933125,0.5116233172677415,1.4168349642383111,0.499 +21.0,1.386648730995609,0.5150796701013794,1.4117382901756448,0.5014 +22.0,1.37796944077023,0.5181361143426957,1.4065785507454347,0.5026 +23.0,1.3696668695223018,0.5211639936845605,1.402195989771859,0.505 +24.0,1.3616434672260533,0.5245060869203922,1.3972141118943933,0.5052 +25.0,1.3542630371676898,0.5273719253780954,1.3935068999222704,0.5078 +26.0,1.3473694290558793,0.5303141100216054,1.3907051889091704,0.5102 +27.0,1.3402073426222127,0.5322232840285857,1.3892659032226624,0.508 +28.0,1.3336872003973426,0.5347987992354993,1.3865499433195474,0.506 +29.0,1.327384157679365,0.537255380588333,1.3873974009402807,0.5034 +30.0,1.3216604201787392,0.5391406639521356,1.3836836288514893,0.5054 +31.0,1.3161280598647895,0.5419685889978394,1.3832381357516508,0.507 +32.0,1.3105416127136869,0.5436824829649327,1.3800900635777025,0.5088 +33.0,1.3047664781705213,0.5450535981386072,1.3801428125459738,0.5088 +34.0,1.2996126109982393,0.5470817059996675,1.3776929353987932,0.5116 +35.0,1.293823188412723,0.5487145795246802,1.375557900607078,0.514 +36.0,1.2884030433697722,0.5512854204753199,1.3705886811509542,0.5142 +37.0,1.2831253551292954,0.552880380588333,1.3683649044462805,0.5134 +38.0,1.2783286448400695,0.553456352833638,1.3651622891751962,0.515 +39.0,1.2733306632853874,0.5543226483297324,1.3643001109138162,0.5164 +40.0,1.268891600263991,0.5557508933023101,1.3617116557796567,0.5192 +41.0,1.264266710657484,0.557293397872694,1.3587595770290883,0.5178 +42.0,1.2596929659095248,0.5590452052517866,1.3554118331969724,0.519 +43.0,1.2553917233114704,0.560554470666445,1.3546034200212493,0.5224 +44.0,1.2516899362081932,0.5619302600963936,1.353135177682238,0.5236 +45.0,1.2473519464193588,0.5630967467176333,1.3521054237005408,0.5234 +46.0,1.2433013995256341,0.5652105492770483,1.3513343518829966,0.5234 +47.0,1.239448787494256,0.5670148121987701,1.3487089014064364,0.5268 +48.0,1.2354618536988764,0.5683812531161708,1.3461108297962203,0.5266 +49.0,1.2318261814835512,0.5694667192953299,1.3446704091638717,0.5274 +50.0,1.2282065364187986,0.5719851047033405,1.344586378891869,0.5296 +51.0,1.224133646245753,0.5726992271896294,1.3432699487117177,0.5304 +52.0,1.220546875066253,0.5752082640850922,1.3426149725440661,0.5308 +53.0,1.217120690696172,0.5763555343194283,1.3426393843545892,0.5318 +54.0,1.213568203392273,0.577783779292006,1.3404433750471476,0.5328 +55.0,1.2103219298678027,0.5786931818181817,1.3395115771735926,0.5354 +56.0,1.206984211848854,0.5799261467508725,1.3372971072601654,0.5356 +57.0,1.2037463317947639,0.5816639313611434,1.3349564292855296,0.5356 +58.0,1.2002898800179351,0.5821495346518198,1.334121740633766,0.535 +59.0,1.196807843220183,0.5832921306298819,1.3337720183945212,0.537 +60.0,1.193598377912578,0.5850345894964267,1.3323687113361222,0.5366 +61.0,1.1900622506273248,0.5858058417816187,1.331289361658365,0.5352 +62.0,1.1871378053459447,0.5867438092072461,1.3306094609968828,0.5378 +63.0,1.1841863183111265,0.5882577488781785,1.3306050856582037,0.5376 +64.0,1.1808866625784924,0.5883720084759847,1.3297544647820971,0.5372 +65.0,1.1784611619616456,0.5891718256606282,1.3293163604280938,0.539 +66.0,1.1754922767281581,0.5895146044540468,1.3281268708805458,0.539 +67.0,1.1727712033092526,0.591171368622237,1.3243216554218156,0.5398 +68.0,1.16986368405737,0.5916948853249128,1.3250558910354457,0.5402 +69.0,1.1669975974070492,0.5933277588499252,1.32206820973747,0.541 +70.0,1.1640628770424661,0.5947419810536813,1.3229685907464526,0.5398 +71.0,1.1614204583284387,0.5954083222536147,1.324079172392963,0.5418 +72.0,1.1584428785720262,0.5964034194781452,1.322592790482728,0.54 +73.0,1.155897042957851,0.5969840659797241,1.321316808597242,0.5404 +74.0,1.1533538946445323,0.5984221788266578,1.3240338764937882,0.5402 +75.0,1.150596395153521,0.5990838457703174,1.3250515243843302,0.5414 +76.0,1.1479828276607542,0.5997361642014293,1.3213816765518247,0.5408 +77.0,1.1456013991649443,0.6007359356822337,1.322209337122594,0.5414 +78.0,1.1428948834559163,0.6021402900116337,1.3208159001419877,0.5416 +79.0,1.1405840977255453,0.6030258018946318,1.3190405319298553,0.5436 +80.0,1.138456276159628,0.6046540011633704,1.319016162754993,0.5428 +81.0,1.1360969314308267,0.604801499916902,1.317674437313949,0.5436 +82.0,1.1335010399508012,0.6058584011966096,1.3186716090087884,0.5436 +83.0,1.13123556274039,0.60646761259764,1.3147843189430144,0.5432 +84.0,1.1291076858663522,0.6074959489778959,1.3154507688752388,0.5422 +85.0,1.1270488055037702,0.6081815065647332,1.3113865161079785,0.5454 +86.0,1.1246272411531353,0.6084671555592488,1.31230086333935,0.543 +87.0,1.1226729512819174,0.6089195196941998,1.3106131954976976,0.5432 +88.0,1.1202892968081963,0.6099572045870034,1.3103511664799978,0.5434 +89.0,1.11780839667264,0.6109523018115339,1.3103589073105326,0.5418 +90.0,1.115877186853028,0.6116378593983712,1.3095933331067162,0.5456 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd new file mode 100644 index 00000000000..d13a02334c8 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 90, + "cols": 5, + "nnz": 450, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-17 19:35:45 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv new file mode 100644 index 00000000000..5fa736eb04c --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv @@ -0,0 +1,60 @@ +1.0,0.6600831748999706,0.7919920634920635,0.45846249291763935,0.844 +2.0,0.25601354551075184,0.923,0.3060521207758516,0.909 +3.0,0.1791216355591798,0.947125,0.21327004292691254,0.933 +4.0,0.1399477948175259,0.95775,0.1736507581045767,0.942 +5.0,0.10750665179781986,0.9675,0.1505918516055093,0.952 +6.0,0.09024092394376199,0.971875,0.15272215195884234,0.949 +7.0,0.08109318636628057,0.974,0.18253549984362463,0.943 +8.0,0.07343285225967074,0.9765,0.1963133682103849,0.936 +9.0,0.06492667107394304,0.97925,0.16139850527851352,0.948 +10.0,0.05564659771922558,0.9825,0.15813024537483578,0.949 +11.0,0.04885065099874338,0.984625,0.13685280674984188,0.958 +12.0,0.04345266142523965,0.986,0.1295635143772901,0.963 +13.0,0.03789947918193832,0.988125,0.1280999416145119,0.964 +14.0,0.03440348961873195,0.98975,0.12033225446550745,0.967 +15.0,0.03113956579003195,0.9905,0.14465871496448326,0.956 +16.0,0.02782411652521333,0.992,0.13935065575895655,0.959 +17.0,0.025903924198902143,0.992875,0.13805741037482513,0.96 +18.0,0.023049034921953607,0.994,0.1390425642677865,0.958 +19.0,0.021960489895278133,0.99375,0.14567394365139114,0.953 +20.0,0.022683080115491985,0.992875,0.13101678745364734,0.962 +21.0,0.01951068056535099,0.99375,0.16387851254291194,0.953 +22.0,0.02072305049782118,0.993375,0.13199021229927832,0.963 +23.0,0.01573298327963868,0.9955,0.11595083667347869,0.966 +24.0,0.016863144556757713,0.994625,0.12464655755935368,0.964 +25.0,0.011906263883559153,0.99675,0.09555637996964318,0.975 +26.0,0.01387731248733787,0.995,0.07513476435524133,0.973 +27.0,0.014348454929750287,0.99525,0.09799803592380817,0.973 +28.0,0.014791121236119583,0.995,0.09913795348726741,0.97 +29.0,0.01745363921146775,0.995,0.10855312385534872,0.967 +30.0,0.016810133122882962,0.994625,0.09143590778251723,0.972 +31.0,0.013776919442576465,0.995125,0.09972306275201406,0.973 +32.0,0.012081841240356836,0.995875,0.1042540514767386,0.971 +33.0,0.009673850822736923,0.997,0.08166328277502062,0.976 +34.0,0.010130896530972777,0.99775,0.08359973442180495,0.975 +35.0,0.009486136169168992,0.996375,0.09465088299135849,0.969 +36.0,0.011784477117724483,0.9964980158730159,0.12253367435178857,0.964 +37.0,0.01285823612554023,0.9955,0.0778909504372984,0.973 +38.0,0.005531593403143221,0.99875,0.08527911368874061,0.978 +39.0,0.004174380412227944,0.99925,0.06256664584964217,0.98 +40.0,0.003724836264838745,0.999375,0.06596277050627802,0.977 +41.0,0.00373747439026559,0.999,0.106305429921357,0.975 +42.0,0.00446614766949216,0.99875,0.06967587883698868,0.983 +43.0,0.0033526953383332878,0.999125,0.06330396928658376,0.984 +44.0,0.0028230799970961214,0.999375,0.08233284112176356,0.979 +45.0,0.0027498272954112166,0.99975,0.06967829332529306,0.983 +46.0,0.0021902541798457316,0.9995,0.12228901254433457,0.971 +47.0,0.014584827217146804,0.994625,0.11751439804792264,0.973 +48.0,0.003940440886971421,0.999125,0.07298610902463333,0.982 +49.0,0.002838167116175086,0.999375,0.05795638638785478,0.986 +50.0,0.0024289928108280536,0.99925,0.07105060997549256,0.98 +51.0,8.843184635752194E-4,1.0,0.06353335404859009,0.984 +52.0,6.38977018076913E-4,1.0,0.06250178394164058,0.986 +53.0,0.0010020022685720159,0.99975,0.08592793990596928,0.977 +54.0,0.003981127656437652,0.99875,0.14202391884937093,0.964 +55.0,0.009452855843030253,0.99725,0.11272917235094357,0.969 +56.0,0.02030383425854622,0.994,0.22102710131762598,0.961 +57.0,0.0201962723872667,0.992625,0.0746092794797957,0.98 +58.0,0.012778119867117035,0.99625,0.08488781163569933,0.98 +59.0,0.005098323074058392,0.998625,0.0705106763422874,0.983 +60.0,0.002205910690743962,0.9995,0.06720935609152047,0.985 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd new file mode 100644 index 00000000000..04598b34d75 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 60, + "cols": 5, + "nnz": 300, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-18 12:40:31 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv new file mode 100644 index 00000000000..06ae4237297 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv @@ -0,0 +1,90 @@ +1.0,2.308857970725247,0.09733879009473159,2.303781414916082,0.1044 +2.0,2.304008930124782,0.09928120325743726,2.3033522297439544,0.1044 +3.0,2.3037258759929133,0.09828143177663287,2.303188402061223,0.1044 +4.0,2.3035719744954597,0.09843931776632873,2.3031009169012147,0.1044 +5.0,2.3034703247407293,0.09878209655974737,2.303046278570225,0.1044 +6.0,2.303396340692825,0.09849644756523183,2.303008793363021,0.1044 +7.0,2.303339197122346,0.09803940917400697,2.3029813853473597,0.1044 +8.0,2.303293240514144,0.09798227937510387,2.3029603952712767,0.1044 +9.0,2.3032551783927606,0.097525240983879,2.302943743402374,0.1044 +10.0,2.303222941068266,0.09741098138607279,2.3029301622777862,0.1044 +11.0,2.30319515139901,0.0971538972910088,2.3029188364644875,0.1044 +12.0,2.3031708517290452,0.09735385158716968,2.3029092180000568,0.1044 +13.0,2.303149352177799,0.09749667608442746,2.30290092519086,0.1044 +14.0,2.303130141169306,0.09738241648662123,2.3028936839986205,0.1044 +15.0,2.303112830057921,0.09746811118497589,2.3028872925240407,0.1044 +16.0,2.303097117460817,0.0978394548778461,2.3028815986504196,0.1044 +17.0,2.303082765498494,0.09755380588333055,2.3028764855041284,0.1044 +18.0,2.303069583506499,0.09738241648662123,2.302871861726882,0.1044 +19.0,2.303057416587966,0.09738241648662123,2.3028676548032334,0.1044 +20.0,2.3030461373916387,0.09772519528003988,2.3028638063815388,0.1044 +21.0,2.303035640092217,0.09789658467674921,2.302860268927418,0.1044 +22.0,2.303025835907424,0.09781088997839454,2.3028570032873428,0.1044 +23.0,2.3030166497080473,0.09775376017949143,2.302853976886092,0.1044 +24.0,2.303008017419134,0.09758237078278212,2.302851162373504,0.1044 +25.0,2.3029998840026313,0.09763950058168522,2.3028485365948654,0.1044 +26.0,2.3029922018735722,0.09755380588333055,2.3028460797978676,0.0958 +27.0,2.3029849296437037,0.09726815688881502,2.3028437750148405,0.0958 +28.0,2.302978031115318,0.09718246219046035,2.3028416075764797,0.0958 +29.0,2.3029714744683667,0.09718246219046035,2.302839564725359,0.0958 +30.0,2.302965231598419,0.09675398869868705,2.3028376353059916,0.0958 +31.0,2.3029592775733714,0.09721102708991192,2.3028358095141903,0.0958 +32.0,2.3029535901845293,0.09703963769320259,2.3028340786928005,0.0958 +33.0,2.3029481495732043,0.09718246219046035,2.3028324351640124,0.0958 +34.0,2.302942937918265,0.09683968339704171,2.3028308720907593,0.0958 +35.0,2.3029379391731855,0.09683968339704171,2.3028293833614257,0.0958 +36.0,2.302933138843571,0.09695394299484793,2.3028279634933666,0.0958 +37.0,2.30292852379795,0.09689681319594481,2.302826607551716,0.0958 +38.0,2.3029240821061667,0.09692537809539638,2.3028253110806913,0.0958 +39.0,2.3029198029006626,0.09689681319594481,2.302824070045189,0.0958 +40.0,2.302915676256911,0.09695394299484793,2.3028228807808824,0.0958 +41.0,2.302911693089989,0.09701107279375104,2.3028217399514026,0.0958 +42.0,2.3029078450647407,0.09695394299484793,2.302820644511436,0.0958 +43.0,2.302904124517459,0.09695394299484793,2.302819591674796,0.0958 +44.0,2.302900524387369,0.09695394299484793,2.3028185788866904,0.0958 +45.0,2.30289703815653,0.09686824829649326,2.3028176037995474,0.0958 +46.0,2.302893659796928,0.09669685889978394,2.3028166642518713,0.0958 +47.0,2.3028903837237644,0.09695394299484793,2.302815758249686,0.0958 +48.0,2.3028872047540805,0.09695394299484793,2.302814883950203,0.0958 +49.0,2.302884118070067,0.09701107279375104,2.3028140396473953,0.0958 +50.0,2.302881119186381,0.09709676749210569,2.3028132237592303,0.0958 +51.0,2.302878203920975,0.09741098138607279,2.302812434816333,0.0958 +52.0,2.302875368369051,0.09726815688881502,2.302811671451892,0.0958 +53.0,2.3028726088796594,0.09712533239155725,2.3028109323926556,0.0958 +54.0,2.302869922034726,0.09695394299484793,2.302810216450874,0.0958 +55.0,2.3028673046301313,0.09701107279375104,2.3028095225170846,0.0958 +56.0,2.302864753658669,0.09692537809539638,2.3028088495536134,0.0958 +57.0,2.302862266294632,0.0971538972910088,2.3028081965887446,0.0958 +58.0,2.3028598398798685,0.0971538972910088,2.302807562711441,0.0958 +59.0,2.30285747191109,0.09726815688881502,2.3028069470665855,0.0958 +60.0,2.3028551600284204,0.09726815688881502,2.302806348850665,0.0958 +61.0,2.3028529020048816,0.09726815688881502,2.302805767307857,0.0958 +62.0,2.3028506957368564,0.09741098138607279,2.3028052017264735,0.0958 +63.0,2.3028485392353937,0.09732528668771813,2.3028046514357197,0.0958 +64.0,2.3028464306182124,0.09743954628552434,2.3028041158027452,0.0958 +65.0,2.3028443681023987,0.09769663038058833,2.3028035942299465,0.0958 +66.0,2.302842349997736,0.09772519528003988,2.3028030861525015,0.0958 +67.0,2.3028403747005197,0.09766806548113678,2.30280259103611,0.0958 +68.0,2.3028384406879288,0.09761093568223367,2.3028021083749253,0.0958 +69.0,2.3028365465127987,0.09755380588333055,2.3028016376896474,0.0958 +70.0,2.302834690798834,0.09758237078278212,2.3028011785257787,0.0958 +71.0,2.302832872236157,0.09749667608442746,2.302800730452008,0.0958 +72.0,2.3028310895772277,0.09772519528003988,2.302800293058731,0.0958 +73.0,2.3028293416330525,0.09769663038058833,2.3027998659566746,0.0958 +74.0,2.3028276272696626,0.097782325078943,2.302799448775633,0.0958 +75.0,2.302825945404852,0.09786801977729766,2.3027990411632944,0.0958 +76.0,2.302824295005185,0.09801084427455542,2.302798642784158,0.0958 +77.0,2.3028226750831555,0.09841075286687717,2.3027982533185245,0.0958 +78.0,2.3028210846945876,0.09838218796742562,2.3027978724615648,0.0958 +79.0,2.3028195229362116,0.09826792836961941,2.3027974999224523,0.0958 +80.0,2.302817988943382,0.09806797407345853,2.302797135423554,0.0958 +81.0,2.3028164818879793,0.09818223367126475,2.302796778699684,0.0958 +82.0,2.3028150009764223,0.09830064816353665,2.302796429497398,0.0958 +83.0,2.302813545447827,0.09830064816353665,2.3027960875743467,0.0958 +84.0,2.302812114572304,0.09818638856573043,2.3027957526986635,0.0958 +85.0,2.302810707649296,0.09815782366627888,2.3027954246483984,0.0958 +86.0,2.3028093240061196,0.09818638856573043,2.302795103210983,0.0958 +87.0,2.302807962996513,0.09804356406847267,2.3027947881827373,0.0958 +88.0,2.3028066239993126,0.09804356406847267,2.3027944793684005,0.0958 +89.0,2.3028053064172282,0.09784360977231178,2.3027941765806963,0.0958 +90.0,2.3028040096756257,0.09795786937011801,2.3027938796399248,0.0958 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd new file mode 100644 index 00000000000..85c0deb5c72 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 90, + "cols": 5, + "nnz": 450, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-17 14:31:06 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv new file mode 100644 index 00000000000..ded8beac83a --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv @@ -0,0 +1,60 @@ +1.0,1.529923114957812,0.615625,0.4163508024364405,0.873 +2.0,0.25060122984207545,0.927,0.22952393475133331,0.916 +3.0,0.1548000660061219,0.95425,0.16200895599016565,0.94 +4.0,0.11335569472656531,0.964625,0.13560831935242834,0.955 +5.0,0.09042976548413022,0.971625,0.12328820920087886,0.963 +6.0,0.07636142457008835,0.976625,0.11456082728594813,0.968 +7.0,0.06691350664721099,0.979625,0.109108661140788,0.969 +8.0,0.05926908260776385,0.9825,0.10503831758586746,0.971 +9.0,0.053242110795777134,0.98375,0.1017104393824572,0.971 +10.0,0.048538005602347,0.985125,0.09997651189079403,0.971 +11.0,0.04440544159683867,0.98575,0.09838001759437191,0.971 +12.0,0.040599887346924705,0.98725,0.09778095571436933,0.972 +13.0,0.03734205810908477,0.98825,0.09713194222471225,0.974 +14.0,0.03431520433747054,0.98875,0.09692151531360448,0.974 +15.0,0.0316160967130946,0.98975,0.09732424066243325,0.976 +16.0,0.029327893562393736,0.990125,0.09678624020161315,0.974 +17.0,0.02731709621117975,0.990875,0.09601975312839364,0.975 +18.0,0.025400220810051326,0.99125,0.09493154669329465,0.975 +19.0,0.023849761916733277,0.992375,0.09431458155105914,0.975 +20.0,0.022359802493171675,0.992875,0.09444793298522774,0.975 +21.0,0.02104063762906861,0.993375,0.0940675280289127,0.976 +22.0,0.019815579920937687,0.99375,0.09397031760585552,0.976 +23.0,0.018703144105318287,0.994375,0.09368188701034882,0.976 +24.0,0.01755765508691582,0.995,0.09316670018928445,0.976 +25.0,0.016504243053257428,0.995375,0.09312778676414861,0.976 +26.0,0.015547213662833325,0.996,0.09313668530584004,0.976 +27.0,0.01464135909303369,0.99625,0.09262190180664727,0.975 +28.0,0.013849651145544097,0.996375,0.09243578056237582,0.975 +29.0,0.013045399463127353,0.99675,0.09173679387095408,0.974 +30.0,0.012308034427099244,0.996875,0.09119741075842759,0.974 +31.0,0.01160452532703958,0.997375,0.09061579657563777,0.973 +32.0,0.010950352937654438,0.997625,0.08979792576235757,0.973 +33.0,0.010404225456806958,0.997625,0.08958915530484804,0.973 +34.0,0.00993531874403182,0.99775,0.08940260293029532,0.973 +35.0,0.009447877428045336,0.99775,0.08878696599496204,0.973 +36.0,0.008965917585343961,0.997875,0.08823171309031336,0.974 +37.0,0.008521583132989957,0.99825,0.08802536709390377,0.973 +38.0,0.008150154841642552,0.998375,0.08802838909372968,0.973 +39.0,0.007784229895554334,0.9985,0.08738821101087546,0.973 +40.0,0.00743699102601898,0.9985,0.08739398647224264,0.973 +41.0,0.007119215903327162,0.998625,0.0871615661765243,0.973 +42.0,0.006813014561591904,0.998625,0.08662144756724738,0.974 +43.0,0.006518437802804398,0.99875,0.08661521760369693,0.975 +44.0,0.006218632411764271,0.999,0.08645243665206297,0.973 +45.0,0.005935930756546657,0.99925,0.08618233389590946,0.973 +46.0,0.005689173929135219,0.99925,0.08599448297307472,0.973 +47.0,0.0054517521228319875,0.99925,0.08606674894466114,0.973 +48.0,0.005212159802743296,0.99925,0.08593790211989807,0.973 +49.0,0.0049843212661704744,0.99925,0.08585662017134629,0.973 +50.0,0.00477715303486137,0.999375,0.08578410203580478,0.973 +51.0,0.0045963000060570336,0.999375,0.08605111424505173,0.973 +52.0,0.004398328314693466,0.999375,0.0858784041018631,0.974 +53.0,0.004202551847212241,0.9995,0.08593016807062147,0.974 +54.0,0.004025727697865245,0.9995,0.08563104128541399,0.974 +55.0,0.003846586555499973,0.999625,0.08534700218134265,0.975 +56.0,0.0036902008756122787,0.99975,0.08535591916811447,0.975 +57.0,0.0035283367720043307,0.999875,0.08520610388234004,0.975 +58.0,0.0033746694849511975,1.0,0.0851791314692245,0.976 +59.0,0.0032474977805542946,1.0,0.08501889027122635,0.976 +60.0,0.00312400676742454,1.0,0.08481266555259098,0.977 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd new file mode 100644 index 00000000000..e25dd89e1b6 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 60, + "cols": 5, + "nnz": 300, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-17 12:04:45 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv new file mode 100644 index 00000000000..d0762291631 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv @@ -0,0 +1,90 @@ +1.0,2.303354277121383,0.09927237410669769,2.3026645264806,0.088 +2.0,2.3024429019304438,0.09835829732424797,2.302395347533886,0.0912 +3.0,2.3022537470495514,0.09710144174837959,2.3022451434900346,0.092 +4.0,2.3020886355946986,0.10289492271896293,2.302096100276622,0.1392 +5.0,2.3019041482290583,0.12017668688715306,2.3019092225507234,0.158 +6.0,2.301688531255859,0.13920090992188797,2.301681104703284,0.145 +7.0,2.3014280018530657,0.14300004154894466,2.301399021947866,0.1332 +8.0,2.301109485417331,0.14231448396210736,2.301052050694326,0.1334 +9.0,2.3007171148037786,0.14319999584510554,2.300619124932079,0.1382 +10.0,2.3002324038562887,0.1473133413661293,2.3000753268846386,0.1498 +11.0,2.2996250406346364,0.15494951803224197,2.299390727424242,0.1668 +12.0,2.298875319802741,0.16842747631710153,2.298581855353828,0.1826 +13.0,2.2979581473242936,0.18157667857736415,2.2975821039931352,0.1988 +14.0,2.296838431406206,0.19601130131294664,2.2963575161816574,0.2086 +15.0,2.295479784689714,0.2057093443576533,2.2948736290852683,0.2054 +16.0,2.2938451276224763,0.21202218713644672,2.2931041844251396,0.2144 +17.0,2.2919033381267577,0.21262205002492934,2.291004362607398,0.215 +18.0,2.2896238508484257,0.21265061492438092,2.288558037422181,0.2122 +19.0,2.286979065939002,0.21156514874522186,2.285732886786278,0.2112 +20.0,2.2839381179310227,0.21030829316935348,2.2824818251091212,0.2096 +21.0,2.2804795042279915,0.20924204337709823,2.2788294933816533,0.2084 +22.0,2.27661619286966,0.2084422261924547,2.27476184874041,0.2082 +23.0,2.27233921479588,0.20778990776134285,2.270293209378558,0.2086 +24.0,2.267662648526721,0.20636166278876517,2.2654318172890657,0.2086 +25.0,2.2626192756606813,0.207332869370118,2.260219881002514,0.2076 +26.0,2.2572590182860295,0.20756138856573042,2.2547077733439878,0.2098 +27.0,2.2516373187233776,0.2081326865547615,2.2489572231627677,0.2108 +28.0,2.245814456526489,0.20861828984543793,2.2430298475130375,0.212 +29.0,2.239854898346882,0.20981801562240318,2.23699057143831,0.215 +30.0,2.2338232484515137,0.21070352750540136,2.2308996938500947,0.216 +31.0,2.227779156047962,0.21227459697523682,2.2248143943377916,0.2164 +32.0,2.221777624187474,0.21447409423300648,2.2187839689159294,0.2168 +33.0,2.215869242739315,0.21642118165198604,2.212859492208603,0.219 +34.0,2.2100970410566547,0.21776373192620907,2.207076999483368,0.221 +35.0,2.2044948909552398,0.2199632291839787,2.201472196746826,0.222 +36.0,2.199092194103585,0.2212818888150241,2.1960714225106948,0.2244 +37.0,2.1939100113217833,0.22248161459198937,2.190890716689774,0.2252 +38.0,2.18896049922426,0.22430976815688883,2.185943191743232,0.2272 +39.0,2.184248558275656,0.22576657802891809,2.181228442466861,0.2278 +40.0,2.1797760513002586,0.22645213561575536,2.1767469219366973,0.2296 +41.0,2.1755397102667793,0.22762329649326907,2.1724977070890747,0.23 +42.0,2.1715336259991895,0.22870876267242812,2.1684688117747153,0.2324 +43.0,2.167749590700271,0.22910867126474987,2.164655458022773,0.233 +44.0,2.16417730105029,0.22999418314774805,2.1610486141209355,0.2332 +45.0,2.1608063211125814,0.23087969503074623,2.157636642520351,0.2326 +46.0,2.1576246790351115,0.2315652526175835,2.154407637714963,0.2342 +47.0,2.154617104468484,0.23242219960113014,2.1513416793938696,0.235 +48.0,2.1517599169780426,0.23252711068638857,2.1484218399487305,0.2358 +49.0,2.149066816222913,0.23321266827322584,2.145675349150036,0.2364 +50.0,2.1465245866633307,0.23366970666445072,2.1430793565890967,0.2378 +51.0,2.14412072766194,0.2344409589496427,2.140617606284286,0.239 +52.0,2.1418439754982397,0.2351836463353831,2.138280235881615,0.2398 +53.0,2.139685512113253,0.2356121198271564,2.13605717653691,0.2402 +54.0,2.137635492810324,0.23606915821838126,2.133940270945409,0.2408 +55.0,2.1356854486646553,0.23681184560412166,2.13192250053105,0.2404 +56.0,2.1338272048501303,0.23744027339205587,2.1299960314510455,0.242 +57.0,2.1320540810077424,0.23829722037560247,2.1281568242149995,0.2426 +58.0,2.1303613659253196,0.23858286937011802,2.126397779975742,0.2434 +59.0,2.1287450851810075,0.23869712896792422,2.124716807678159,0.2438 +60.0,2.1271998321934493,0.23912560245969755,2.1231064529381376,0.2442 +61.0,2.1257209692206427,0.23955407595147085,2.1215637509056395,0.2446 +62.0,2.1243035036437874,0.24003967924214728,2.1200814646668116,0.2452 +63.0,2.122943037851745,0.24066810703008146,2.118657105482082,0.2452 +64.0,2.121635884560944,0.24098232092404856,2.1172868604212627,0.2456 +65.0,2.120378615583713,0.2413822295163703,2.1159680410580592,0.2456 +66.0,2.1191679446234666,0.24166787851088584,2.1146974962627203,0.2464 +67.0,2.1180009668346935,0.24209635200265914,2.113471173048431,0.2468 +68.0,2.116874691196301,0.24218672095728766,2.1122863875401126,0.2474 +69.0,2.1157867655260487,0.24244380505235166,2.111141636758149,0.248 +70.0,2.1147352368261987,0.24270088914741564,2.1100332378539677,0.2482 +71.0,2.113718002806775,0.24307690709655977,2.1089602225780317,0.249 +72.0,2.112733184646633,0.2436767699850424,2.107919882704548,0.2494 +73.0,2.1117789394143482,0.24381959448230017,2.106913026103143,0.2488 +74.0,2.110853316989593,0.24421950307462192,2.1059350834636765,0.2498 +75.0,2.109955079089359,0.2445290427123151,2.104985952301633,0.2502 +76.0,2.109082620696774,0.24475756190792752,2.1040617864167523,0.251 +77.0,2.1082346435077755,0.24478612680737907,2.1031627040313423,0.2512 +78.0,2.1074095248882703,0.2450146460029915,2.1022870982946626,0.252 +79.0,2.1066062067836695,0.24510034070134618,2.1014329767324553,0.2518 +80.0,2.1058225393256165,0.24535742479641015,2.100595247228801,0.252 +81.0,2.1050574606919588,0.24572876848928035,2.099777698683264,0.2526 +82.0,2.1043111830414234,0.24621437177995678,2.0989845437353187,0.2532 +83.0,2.1035842211982745,0.24630006647831143,2.0982143244746703,0.254 +84.0,2.102876376387279,0.24672853997008476,2.0974656861364447,0.253 +85.0,2.10218567299019,0.24707131876350338,2.0967362386813306,0.2536 +86.0,2.1015113351260197,0.24721414326076116,2.096022887408198,0.2534 +87.0,2.100852094441317,0.24738553265747049,2.095325468476296,0.2536 +88.0,2.1002072680052266,0.24758548695363136,2.094641673375884,0.2538 +89.0,2.0995766034511516,0.2474997922552767,2.093973751766461,0.2544 +90.0,2.098959302207614,0.24758548695363136,2.0933196838290935,0.255 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd new file mode 100644 index 00000000000..7bf18c4774f --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 90, + "cols": 5, + "nnz": 450, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-17 16:41:31 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv new file mode 100644 index 00000000000..61c471f700d --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv @@ -0,0 +1,60 @@ +1.0,1.866423388179165,0.5742242063492063,1.6439261632170747,0.64 +2.0,1.4928910617188813,0.7032321428571429,1.3853969008124252,0.683 +3.0,1.272710742254421,0.7394861111111111,1.2131369327400596,0.711 +4.0,1.1254325674232708,0.7601150793650794,1.095144211752259,0.727 +5.0,1.022459770574194,0.7726170634920635,1.0101238395751708,0.74 +6.0,0.946530560718444,0.7826170634920635,0.9456451197422426,0.751 +7.0,0.8880268839828795,0.7903670634920635,0.8949212750028692,0.765 +8.0,0.8415278206758608,0.7978670634920635,0.854089316705041,0.768 +9.0,0.8035827965978666,0.8036190476190476,0.8202159641777057,0.774 +10.0,0.7718674883077749,0.8092440476190476,0.7916438039580443,0.781 +11.0,0.7448529883790529,0.8146190476190476,0.7670526565955637,0.792 +12.0,0.721458277224362,0.8191190476190476,0.745724482535323,0.798 +13.0,0.7009611157389515,0.8232440476190476,0.7268900229389159,0.801 +14.0,0.6827906144486946,0.8262440476190476,0.7101796206958488,0.803 +15.0,0.6665491364904129,0.8307460317460317,0.6951588756175966,0.804 +16.0,0.6518900515924803,0.8338710317460317,0.6816308662811724,0.807 +17.0,0.6385824868896167,0.8378710317460317,0.6692585415240807,0.809 +18.0,0.626401446142148,0.8412460317460317,0.657986591683656,0.81 +19.0,0.6152151008879067,0.8434960317460317,0.6475896323415835,0.81 +20.0,0.6048551240028875,0.8463710317460317,0.6380074275770728,0.816 +21.0,0.595226790651475,0.8477460317460317,0.6291030696035893,0.819 +22.0,0.5862262284167258,0.8484960317460317,0.6207762320382855,0.821 +23.0,0.5777942203740585,0.8506210317460317,0.6129073353307255,0.824 +24.0,0.569829336052029,0.8521210317460317,0.6055186920462967,0.827 +25.0,0.562322087467323,0.8549960317460317,0.5984862630477912,0.829 +26.0,0.5551972532193233,0.8561210317460317,0.5918507350880778,0.831 +27.0,0.5483922690557319,0.8568710317460317,0.5854528969297884,0.83 +28.0,0.5417717020101807,0.8577460317460317,0.5791749719268132,0.834 +29.0,0.5353834920310123,0.8588710317460317,0.573021548269845,0.838 +30.0,0.5291950049277978,0.8594980158730159,0.5671532053783704,0.84 +31.0,0.5232429187125389,0.8608730158730159,0.561629254937016,0.841 +32.0,0.5176039971163227,0.8618730158730159,0.5564097976587178,0.843 +33.0,0.5122833004991232,0.8626230158730159,0.5514111670120752,0.844 +34.0,0.5072275346885798,0.8628730158730159,0.5466137422719917,0.846 +35.0,0.5023701417154098,0.864998015873016,0.5420622512278893,0.846 +36.0,0.49771279900284227,0.8653730158730158,0.5377322462760586,0.848 +37.0,0.49325002706494225,0.8657480158730159,0.5335120751616993,0.847 +38.0,0.4889316669931411,0.8663730158730159,0.5294598410779857,0.847 +39.0,0.4847795598700526,0.8673730158730159,0.5256187227433868,0.847 +40.0,0.4808159819962951,0.8683730158730159,0.5218443641381453,0.848 +41.0,0.4769954353746303,0.8692480158730159,0.5181261701052222,0.847 +42.0,0.4732806998370051,0.8706230158730159,0.514536341695689,0.847 +43.0,0.4696791877007013,0.8717480158730159,0.5111297293916626,0.847 +44.0,0.466207952568916,0.8723730158730159,0.5078820073977189,0.847 +45.0,0.4628588261989359,0.8731230158730159,0.504615170638606,0.848 +46.0,0.45960234279588047,0.8742480158730159,0.5016026210614756,0.848 +47.0,0.4564797005612003,0.8744980158730159,0.49853096066258135,0.848 +48.0,0.45340866555174103,0.8748730158730159,0.4956449103544591,0.848 +49.0,0.4504369793890093,0.8758730158730159,0.49280215847599296,0.848 +50.0,0.4475359327883268,0.8763730158730159,0.490056720180492,0.849 +51.0,0.4447109415788691,0.8772480158730159,0.48734386450053985,0.85 +52.0,0.44194446747002286,0.8773730158730159,0.48479191333510535,0.853 +53.0,0.439268379013645,0.8781230158730159,0.4822259811676885,0.855 +54.0,0.4366447818848977,0.8789980158730158,0.47979430296590536,0.855 +55.0,0.4341039553458775,0.879875,0.47737496308325084,0.856 +56.0,0.4316169860382033,0.8805,0.47503514269851493,0.857 +57.0,0.4291959500256212,0.881375,0.4727302757008901,0.857 +58.0,0.42682299095231074,0.88225,0.4704963291546497,0.858 +59.0,0.4245037978579831,0.882875,0.46832729836663517,0.858 +60.0,0.4222409407797942,0.883,0.46619377517871974,0.859 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd new file mode 100644 index 00000000000..bc5790ab0e1 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 60, + "cols": 5, + "nnz": 300, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-17 12:53:09 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv new file mode 100644 index 00000000000..74604775d39 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv @@ -0,0 +1,60 @@ +1.0,1.866423388179165,0.5742242063492063,1.6439261632170745,0.64 +2.0,1.492891061718881,0.7032321428571429,1.385396900812425,0.683 +3.0,1.2727107422544208,0.7394861111111111,1.2131369327400594,0.711 +4.0,1.1254325674232704,0.7601150793650794,1.0951442117522587,0.727 +5.0,1.0224597705741936,0.7726170634920635,1.0101238395751704,0.74 +6.0,0.9465305607184437,0.7826170634920635,0.9456451197422422,0.751 +7.0,0.8880268839828789,0.7903670634920635,0.8949212750028689,0.765 +8.0,0.84152782067586,0.7978670634920635,0.8540893167050403,0.768 +9.0,0.803582796597866,0.8036190476190476,0.8202159641777054,0.774 +10.0,0.7718674883077745,0.8092440476190476,0.7916438039580438,0.781 +11.0,0.7448529883790521,0.8146190476190476,0.7670526565955632,0.792 +12.0,0.7214582772243614,0.8191190476190476,0.7457244825353226,0.798 +13.0,0.7009611157389508,0.8232440476190476,0.7268900229389155,0.801 +14.0,0.6827906144486944,0.8262440476190476,0.7101796206958487,0.803 +15.0,0.6665491364904125,0.8307460317460317,0.6951588756175962,0.804 +16.0,0.6518900515924798,0.8338710317460317,0.6816308662811721,0.807 +17.0,0.6385824868896166,0.8378710317460317,0.6692585415240803,0.809 +18.0,0.6264014461421475,0.8412460317460317,0.6579865916836556,0.81 +19.0,0.6152151008879062,0.8434960317460317,0.6475896323415832,0.81 +20.0,0.604855124002887,0.8463710317460317,0.6380074275770723,0.816 +21.0,0.5952267906514745,0.8477460317460317,0.629103069603589,0.819 +22.0,0.5862262284167256,0.8484960317460317,0.6207762320382852,0.821 +23.0,0.5777942203740583,0.8506210317460317,0.6129073353307254,0.824 +24.0,0.5698293360520286,0.8521210317460317,0.6055186920462965,0.827 +25.0,0.5623220874673228,0.8549960317460317,0.5984862630477912,0.829 +26.0,0.5551972532193232,0.8561210317460317,0.5918507350880776,0.831 +27.0,0.5483922690557316,0.8568710317460317,0.5854528969297881,0.83 +28.0,0.5417717020101804,0.8577460317460317,0.5791749719268128,0.834 +29.0,0.5353834920310118,0.8588710317460317,0.5730215482698446,0.838 +30.0,0.5291950049277971,0.8594980158730159,0.5671532053783702,0.84 +31.0,0.5232429187125387,0.8608730158730159,0.5616292549370158,0.841 +32.0,0.5176039971163221,0.8618730158730159,0.5564097976587177,0.843 +33.0,0.5122833004991226,0.8626230158730159,0.5514111670120748,0.844 +34.0,0.5072275346885796,0.8628730158730159,0.5466137422719916,0.846 +35.0,0.5023701417154097,0.864998015873016,0.5420622512278892,0.846 +36.0,0.497712799002842,0.8653730158730158,0.5377322462760586,0.848 +37.0,0.4932500270649419,0.8657480158730159,0.5335120751616992,0.847 +38.0,0.4889316669931409,0.8663730158730159,0.5294598410779855,0.847 +39.0,0.4847795598700526,0.8673730158730159,0.525618722743387,0.847 +40.0,0.48081598199629483,0.8683730158730159,0.5218443641381452,0.848 +41.0,0.4769954353746303,0.8692480158730159,0.5181261701052222,0.847 +42.0,0.473280699837005,0.8706230158730159,0.514536341695689,0.847 +43.0,0.4696791877007012,0.8717480158730159,0.5111297293916625,0.847 +44.0,0.46620795256891595,0.8723730158730159,0.5078820073977189,0.847 +45.0,0.46285882619893565,0.8731230158730159,0.504615170638606,0.848 +46.0,0.4596023427958802,0.8742480158730159,0.5016026210614756,0.848 +47.0,0.45647970056120024,0.8744980158730159,0.4985309606625814,0.848 +48.0,0.45340866555174086,0.8748730158730159,0.4956449103544591,0.848 +49.0,0.4504369793890092,0.8758730158730159,0.49280215847599296,0.848 +50.0,0.44753593278832665,0.8763730158730159,0.49005672018049207,0.849 +51.0,0.4447109415788691,0.8772480158730159,0.48734386450053974,0.85 +52.0,0.44194446747002264,0.8773730158730159,0.48479191333510524,0.853 +53.0,0.43926837901364496,0.8781230158730159,0.48222598116768844,0.855 +54.0,0.43664478188489775,0.8789980158730158,0.4797943029659054,0.855 +55.0,0.43410395534587737,0.879875,0.4773749630832509,0.856 +56.0,0.43161698603820314,0.8805,0.4750351426985147,0.857 +57.0,0.4291959500256211,0.881375,0.4727302757008901,0.857 +58.0,0.42682299095231074,0.88225,0.4704963291546497,0.858 +59.0,0.42450379785798303,0.882875,0.4683272983666352,0.858 +60.0,0.4222409407797941,0.883,0.4661937751787198,0.859 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd new file mode 100644 index 00000000000..39ca9b83ca4 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 60, + "cols": 5, + "nnz": 300, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-18 12:30:06 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv new file mode 100644 index 00000000000..bf5fe82079c --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv @@ -0,0 +1,60 @@ +1.0,1.5299231149614017,0.615625,0.41635080243384964,0.873 +2.0,0.2506012298428366,0.927,0.22952393475157162,0.916 +3.0,0.15480006600605273,0.95425,0.1620089559895203,0.94 +4.0,0.11335569472662702,0.964625,0.13560831935160117,0.955 +5.0,0.09042976548384442,0.971625,0.12328820920011867,0.963 +6.0,0.07636142456988171,0.976625,0.11456082728567903,0.968 +7.0,0.06691350664702883,0.979625,0.10910866114092198,0.969 +8.0,0.059269082607526495,0.9825,0.10503831758585568,0.971 +9.0,0.053242110795707065,0.98375,0.10171043938325056,0.971 +10.0,0.04853800560203754,0.985125,0.09997651189261585,0.971 +11.0,0.044405441596568826,0.98575,0.09838001759817647,0.971 +12.0,0.040599887346456684,0.98725,0.097780955718731,0.972 +13.0,0.03734205810884943,0.98825,0.09713194222958135,0.974 +14.0,0.03431520433712973,0.98875,0.09692151531860237,0.974 +15.0,0.03161609671275515,0.98975,0.0973242406668757,0.976 +16.0,0.02932789356176544,0.990125,0.09678624020786661,0.974 +17.0,0.027317096210515864,0.990875,0.09601975313441609,0.975 +18.0,0.025400220809541275,0.99125,0.09493154670227145,0.975 +19.0,0.023849761916380875,0.992375,0.09431458156343589,0.975 +20.0,0.02235980249269527,0.992875,0.09444793299463022,0.975 +21.0,0.021040637629279574,0.993375,0.09406752804026423,0.976 +22.0,0.01981557992146146,0.99375,0.09397031761636573,0.976 +23.0,0.018703144106497697,0.994375,0.0936818870241683,0.976 +24.0,0.01755765508786901,0.995,0.09316670020081608,0.976 +25.0,0.01650424305425841,0.995375,0.09312778677582582,0.976 +26.0,0.015547213664301573,0.996,0.09313668531755637,0.976 +27.0,0.014641359094149346,0.99625,0.09262190181973926,0.975 +28.0,0.013849651147343996,0.996375,0.0924357805757844,0.975 +29.0,0.013045399464671547,0.99675,0.0917367938821814,0.974 +30.0,0.01230803442885487,0.996875,0.09119741077156332,0.974 +31.0,0.011604525329266091,0.997375,0.09061579658698077,0.973 +32.0,0.010950352940047849,0.997625,0.08979792577002656,0.973 +33.0,0.010404225458991357,0.997625,0.08958915531131897,0.973 +34.0,0.009935318745837484,0.99775,0.0894026029257118,0.973 +35.0,0.009447877430231724,0.99775,0.08878696599874977,0.973 +36.0,0.008965917587196202,0.997875,0.08823171309225875,0.974 +37.0,0.0085215831353927,0.99825,0.08802536709661077,0.973 +38.0,0.008150154843487975,0.998375,0.08802838908367926,0.973 +39.0,0.007784229897606622,0.9985,0.08738821100377808,0.973 +40.0,0.007436991028673095,0.9985,0.08739398645698664,0.973 +41.0,0.0071192159066914345,0.998625,0.08716156616155904,0.973 +42.0,0.006813014565763649,0.998625,0.08662144756300286,0.974 +43.0,0.0065184378060441145,0.99875,0.08661521759366482,0.975 +44.0,0.006218632412817654,0.999,0.08645243663927514,0.973 +45.0,0.005935930757015673,0.99925,0.08618233388001328,0.973 +46.0,0.005689173931263665,0.99925,0.08599448294668054,0.973 +47.0,0.005451752123017894,0.99925,0.08606674891635356,0.973 +48.0,0.005212159804542434,0.99925,0.08593790210578428,0.973 +49.0,0.004984321267572547,0.99925,0.08585662011359306,0.973 +50.0,0.004777153036591143,0.999375,0.08578410196981058,0.973 +51.0,0.0045963000083057756,0.999375,0.0860511141682166,0.973 +52.0,0.004398328316017485,0.999375,0.08587840406791315,0.974 +53.0,0.00420255185037797,0.9995,0.08593016802382229,0.974 +54.0,0.004025727702078051,0.9995,0.0856310412373703,0.974 +55.0,0.003846586557412409,0.999625,0.08534700213479356,0.975 +56.0,0.003690200877363095,0.99975,0.0853559191273964,0.975 +57.0,0.003528336774508031,0.999875,0.08520610384158768,0.975 +58.0,0.0033746694859510206,1.0,0.08517913142356824,0.976 +59.0,0.0032474977825223453,1.0,0.08501889024451946,0.976 +60.0,0.0031240067693776782,1.0,0.0848126655488919,0.977 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd new file mode 100644 index 00000000000..bdad9be7c54 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 60, + "cols": 5, + "nnz": 300, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-18 12:10:29 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv new file mode 100644 index 00000000000..a0083b7d42b --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv @@ -0,0 +1,90 @@ +1.0,2.3052508540430696,0.0977101337876018,2.303963296401079,0.1044 +2.0,2.303944458910519,0.0991955085590826,2.3035221142468574,0.1044 +3.0,2.3036721115786545,0.09878209655974737,2.303348806933503,0.0986 +4.0,2.3035195526911423,0.09792514957620076,2.3032560152519927,0.0986 +5.0,2.3034184316980806,0.097782325078943,2.303197726078531,0.0986 +6.0,2.3033450284556385,0.09803940917400697,2.303157331622366,0.0986 +7.0,2.303288583012619,0.0981536687718132,2.3031273807533745,0.0986 +8.0,2.303243403976425,0.09775376017949143,2.303104046162939,0.0986 +9.0,2.303206158991423,0.097782325078943,2.30308516976094,0.0986 +10.0,2.303174749851404,0.09729672178826658,2.303069447232022,0.0986 +11.0,2.3031477810136294,0.09675398869868705,2.3030560461012657,0.0986 +12.0,2.303124283577331,0.09681111849759015,2.3030444108621255,0.0986 +13.0,2.3031035611613118,0.09712533239155725,2.3030341567229007,0.0986 +14.0,2.3030850987567844,0.09763950058168522,2.303025008490508,0.0986 +15.0,2.3030685062423215,0.0975293958783447,2.303016763823304,0.0986 +16.0,2.3030534819916095,0.09704379258766828,2.30300927028908,0.0958 +17.0,2.3030397886431664,0.09621541050357321,2.3030024105684137,0.0958 +18.0,2.3030272365062925,0.09641536479973409,2.302996092635205,0.0958 +19.0,2.3030156719152237,0.09658675419644341,2.3029902430729923,0.0958 +20.0,2.3030049688788137,0.09715805218547449,2.3029848024211437,0.0958 +21.0,2.3029950229784286,0.09724374688382915,2.3029797218672385,0.0958 +22.0,2.3029857468327006,0.09701522768821673,2.3029749608519454,0.0958 +23.0,2.3029770666752962,0.09695809788931362,2.302970485304816,0.0958 +24.0,2.3029689197369243,0.09701522768821673,2.302966266324296,0.0958 +25.0,2.3029612522174836,0.09712948728602294,2.3029622791757705,0.0958 +26.0,2.302954017697477,0.0968438382915074,2.302958502520811,0.0958 +27.0,2.30294717588051,0.09681527339205585,2.3029549178169453,0.0958 +28.0,2.302940691588364,0.09698666278876517,2.3029515088448482,0.0958 +29.0,2.3029345339507907,0.09644392969918565,2.302948261331938,0.0958 +30.0,2.3029286757469483,0.09627254030247633,2.302945162649764,0.0958 +31.0,2.302923092866068,0.09601545620741234,2.3029422015684697,0.0958 +32.0,2.3029177638626317,0.09615828070467011,2.3029393680558727,0.0958 +33.0,2.302912669587062,0.09624397540302476,2.3029366531117326,0.0958 +34.0,2.3029077928772526,0.09675814359315274,2.3029340486300307,0.0958 +35.0,2.302903118299415,0.09681527339205585,2.302931547283736,0.0958 +36.0,2.302898631929166,0.09692953298986207,2.3029291424277525,0.0958 +37.0,2.302894321165697,0.09681527339205585,2.3029268280166884,0.0958 +38.0,2.3028901745732164,0.09755796077779624,2.3029245985347893,0.0958 +39.0,2.302886181745126,0.09741513628053848,2.3029224489359157,0.0958 +40.0,2.302882333187097,0.09738657138108693,2.302920374591868,0.0958 +41.0,2.3028786202160454,0.09744370117999003,2.3029183712476917,0.0958 +42.0,2.3028750348725207,0.0974722660794416,2.3029164349828504,0.0958 +43.0,2.302871569844405,0.0976436554761509,2.302914562177353,0.0958 +44.0,2.3028682184002816,0.09767222037560247,2.3029127494820916,0.0958 +45.0,2.3028649743310323,0.0975293958783447,2.3029109937927728,0.0958 +46.0,2.302861831898485,0.0975293958783447,2.3029092922269156,0.0958 +47.0,2.3028587857900877,0.09767222037560247,2.3029076421035097,0.0958 +48.0,2.302855831078908,0.09798643426956956,2.302906040924949,0.0958 +49.0,2.302852963188079,0.09804356406847267,2.302904486360953,0.0958 +50.0,2.3028501778592187,0.09801499916902111,2.302902976234211,0.0958 +51.0,2.3028474711242892,0.09847203756024597,2.3029015085075333,0.0958 +52.0,2.302844839280435,0.09855773225860064,2.302900081272322,0.0958 +53.0,2.3028422788674385,0.09844347266079442,2.3028986927381987,0.0958 +54.0,2.3028397866475188,0.09838634286189131,2.3028973412236535,0.0958 +55.0,2.3028373595871368,0.09858629715805219,2.3028960251475996,0.0958 +56.0,2.302834994840583,0.09844347266079442,2.302894743021725,0.0958 +57.0,2.3028326897351916,0.09847203756024597,2.30289349344355,0.0958 +58.0,2.302830441757941,0.09844347266079442,2.302892275090126,0.0958 +59.0,2.3028282485432734,0.09835777796243976,2.302891086712291,0.0958 +60.0,2.3028261078621295,0.09841490776134287,2.3028899271294314,0.0958 +61.0,2.3028240176118455,0.09844347266079442,2.3028887952246992,0.0958 +62.0,2.3028219758070656,0.09870055675585841,2.302887689940629,0.0958 +63.0,2.302819980571373,0.09867199185640685,2.3028866102751295,0.0958 +64.0,2.3028180301296777,0.09884338125311617,2.302885555277795,0.0958 +65.0,2.3028161228012136,0.09875768655476151,2.302884524046522,0.0958 +66.0,2.302814256993192,0.09878625145421306,2.3028835157243908,0.0958 +67.0,2.3028124311948646,0.09878625145421306,2.302882529496792,0.0958 +68.0,2.3028106439721734,0.09870055675585841,2.302881564588779,0.0958 +69.0,2.3028088939627684,0.09872912165530996,2.302880620262613,0.0958 +70.0,2.3028071798714174,0.09872912165530996,2.3028796958155,0.0958 +71.0,2.3028055004658077,0.09870055675585841,2.3028787905774917,0.0958 +72.0,2.302803854572614,0.09867199185640685,2.302877903909538,0.0958 +73.0,2.302802241073912,0.09884338125311617,2.302877035201682,0.0958 +74.0,2.302800658903833,0.09884338125311617,2.30287618387138,0.0958 +75.0,2.3027991070454563,0.0990147706498255,2.3028753493619405,0.0958 +76.0,2.302797584527948,0.0990147706498255,2.302874531141072,0.0958 +77.0,2.3027960904238864,0.0990147706498255,2.3028737286995273,0.0958 +78.0,2.3027946238467796,0.0990719004487286,2.302872941549839,0.0958 +79.0,2.302793183948759,0.0990719004487286,2.30287216922514,0.0958 +80.0,2.3027917699184237,0.09904333554927705,2.3028714112780633,0.0958 +81.0,2.3027903809788377,0.09904333554927705,2.3028706672797075,0.0958 +82.0,2.302789016385661,0.09892907595147084,2.3028699368186745,0.0958 +83.0,2.302787675425392,0.09895764085092239,2.302869219500162,0.0958 +84.0,2.302786357413738,0.09884338125311617,2.3028685149451196,0.0958 +85.0,2.3027850616940877,0.09875768655476151,2.3028678227894512,0.0958 +86.0,2.302783787636076,0.09847203756024597,2.302867142683268,0.0958 +87.0,2.3027825346342436,0.09838634286189131,2.3028664742901888,0.0958 +88.0,2.3027813021067707,0.09838634286189131,2.3028658172866763,0.0958 +89.0,2.3027800894943056,0.09838634286189131,2.302865171361421,0.0958 +90.0,2.3027788962588445,0.09847203756024597,2.302864536214754,0.0958 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd new file mode 100644 index 00000000000..3337bcddcd5 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 90, + "cols": 5, + "nnz": 450, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-17 15:02:57 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv new file mode 100644 index 00000000000..df2e0b9dec5 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv @@ -0,0 +1,60 @@ +1.0,0.6395330965863911,0.8015,0.3272391477006809,0.902 +2.0,0.18475208110972252,0.945375,0.22124293746528123,0.937 +3.0,0.13424154347106543,0.95975,0.18851124248025902,0.941 +4.0,0.10030261909915536,0.970375,0.1667022281154376,0.951 +5.0,0.07937873593518888,0.976,0.15600958058409162,0.957 +6.0,0.06920171125717522,0.979125,0.16498212073116425,0.957 +7.0,0.060592194621787006,0.98125,0.17178759629686993,0.958 +8.0,0.05412933187594701,0.98275,0.1633657632581319,0.962 +9.0,0.04811218647175158,0.985375,0.1497524304739882,0.963 +10.0,0.042713873413571295,0.987625,0.13528177549249587,0.964 +11.0,0.03798921289828895,0.989,0.12257248782459493,0.966 +12.0,0.033368917980423234,0.990125,0.11437361989464159,0.968 +13.0,0.02928468918448111,0.991125,0.10654460042550556,0.973 +14.0,0.025635927828060606,0.99225,0.10001953244032351,0.971 +15.0,0.022313700189017967,0.993375,0.09378573210443951,0.97 +16.0,0.01957044397816946,0.99475,0.0884900055429675,0.973 +17.0,0.01725229577517209,0.996125,0.0840339954715082,0.976 +18.0,0.015548186647948697,0.99625,0.08210346019097332,0.976 +19.0,0.014139138023695867,0.996875,0.08060906399263776,0.976 +20.0,0.012959707879691243,0.99775,0.07868875058565629,0.976 +21.0,0.012004452751684604,0.9975,0.07724035363259926,0.977 +22.0,0.0111136327233965,0.9975,0.07612728983693134,0.977 +23.0,0.010281475186653103,0.998,0.07584562740464813,0.976 +24.0,0.009677989022521137,0.998,0.07425610274151832,0.976 +25.0,0.008997284040789153,0.998,0.0736737006721429,0.977 +26.0,0.008524000701748208,0.998,0.07296239630790295,0.977 +27.0,0.007973775129518497,0.99825,0.07233596593358264,0.976 +28.0,0.0075191435573975,0.998625,0.0717720466101364,0.975 +29.0,0.007066838280190324,0.99875,0.0702526716863536,0.974 +30.0,0.006566122743096105,0.999,0.06965647460292666,0.974 +31.0,0.006089250289720929,0.999,0.06819989827467632,0.977 +32.0,0.005608455593168797,0.999125,0.06694592070023135,0.977 +33.0,0.005141466669596634,0.99925,0.06595043354269733,0.978 +34.0,0.004759061968380032,0.99925,0.06443985064969614,0.978 +35.0,0.004380594774155363,0.999375,0.06353770184635456,0.978 +36.0,0.004046733048490616,0.99975,0.06253301596760709,0.979 +37.0,0.003786776513232984,0.99975,0.061590454895157895,0.979 +38.0,0.00349652858317629,1.0,0.0608157597997437,0.979 +39.0,0.003270031704071804,1.0,0.06014196945494181,0.979 +40.0,0.0030958052763965156,1.0,0.05944900177792484,0.979 +41.0,0.0029148209401834786,1.0,0.05910852235695886,0.979 +42.0,0.002747487564857834,1.0,0.05885799247405729,0.98 +43.0,0.002601885279135758,1.0,0.05875771036367837,0.98 +44.0,0.002452998785943756,1.0,0.05875073571192066,0.98 +45.0,0.0023251227606833993,1.0,0.05883290853287607,0.98 +46.0,0.002200477357490353,1.0,0.05931266420926622,0.98 +47.0,0.0020748584217780814,1.0,0.059344483349665564,0.98 +48.0,0.001972244440490512,1.0,0.059807717143902615,0.98 +49.0,0.001866432894600097,1.0,0.06028438945471628,0.98 +50.0,0.0017845509941932457,1.0,0.06072764247481106,0.98 +51.0,0.0017029988093170635,1.0,0.06114998420916026,0.98 +52.0,0.0016256411665798158,1.0,0.06155595808269873,0.979 +53.0,0.0015603666542434512,1.0,0.061922900447717436,0.979 +54.0,0.0014921414498039287,1.0,0.06227737736439052,0.979 +55.0,0.001441256508702496,1.0,0.06265306885356355,0.979 +56.0,0.0013807884045605036,1.0,0.06304211962247053,0.979 +57.0,0.0013330958389548527,1.0,0.063426241980221,0.979 +58.0,0.0012818933369036054,1.0,0.06378686691752658,0.979 +59.0,0.0012389867278221342,1.0,0.06408567297048824,0.979 +60.0,0.001195307205982342,1.0,0.06431335760551511,0.98 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd new file mode 100644 index 00000000000..e3d62bb00c8 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 60, + "cols": 5, + "nnz": 300, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-17 12:21:48 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv new file mode 100644 index 00000000000..475eacfbd8b --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv @@ -0,0 +1,60 @@ +1.0,0.6395330965863912,0.8015,0.32723914770068085,0.902 +2.0,0.18475208110972235,0.945375,0.22124293746528062,0.937 +3.0,0.1342415434710652,0.95975,0.18851124248025777,0.941 +4.0,0.10030261909915518,0.970375,0.16670222811543603,0.951 +5.0,0.07937873593518883,0.976,0.15600958058409148,0.957 +6.0,0.06920171125717528,0.979125,0.1649821207311639,0.957 +7.0,0.06059219462178708,0.98125,0.17178759629687052,0.958 +8.0,0.05412933187594715,0.98275,0.16336576325813237,0.962 +9.0,0.048112186471751854,0.985375,0.1497524304739886,0.963 +10.0,0.04271387341357169,0.987625,0.13528177549249676,0.964 +11.0,0.037989212898289285,0.989,0.12257248782459636,0.966 +12.0,0.0333689179804235,0.990125,0.11437361989464215,0.968 +13.0,0.029284689184481228,0.991125,0.10654460042550568,0.973 +14.0,0.02563592782806072,0.99225,0.10001953244032429,0.971 +15.0,0.022313700189017974,0.993375,0.09378573210444012,0.97 +16.0,0.01957044397816949,0.99475,0.08849000554296813,0.973 +17.0,0.017252295775172097,0.996125,0.08403399547150898,0.976 +18.0,0.015548186647948742,0.99625,0.08210346019097452,0.976 +19.0,0.014139138023695867,0.996875,0.08060906399263904,0.976 +20.0,0.012959707879691218,0.99775,0.07868875058565691,0.976 +21.0,0.012004452751684557,0.9975,0.07724035363260007,0.977 +22.0,0.01111363272339649,0.9975,0.07612728983693215,0.977 +23.0,0.010281475186653124,0.998,0.07584562740464891,0.976 +24.0,0.009677989022521148,0.998,0.07425610274151902,0.976 +25.0,0.008997284040789163,0.998,0.07367370067214365,0.977 +26.0,0.008524000701748191,0.998,0.0729623963079035,0.977 +27.0,0.00797377512951854,0.99825,0.07233596593358348,0.976 +28.0,0.007519143557397548,0.998625,0.07177204661013718,0.975 +29.0,0.007066838280190385,0.99875,0.07025267168635428,0.974 +30.0,0.006566122743096165,0.999,0.06965647460292756,0.974 +31.0,0.006089250289720989,0.999,0.06819989827467741,0.977 +32.0,0.005608455593168826,0.999125,0.06694592070023227,0.977 +33.0,0.005141466669596642,0.99925,0.06595043354269849,0.978 +34.0,0.004759061968380081,0.99925,0.06443985064969704,0.978 +35.0,0.004380594774155382,0.999375,0.0635377018463556,0.978 +36.0,0.004046733048490658,0.99975,0.06253301596760812,0.979 +37.0,0.0037867765132330333,0.99975,0.06159045489515902,0.979 +38.0,0.003496528583176314,1.0,0.060815759799744844,0.979 +39.0,0.00327003170407184,1.0,0.060141969454942976,0.979 +40.0,0.0030958052763965277,1.0,0.05944900177792594,0.979 +41.0,0.0029148209401835042,1.0,0.05910852235696025,0.979 +42.0,0.0027474875648578626,1.0,0.05885799247405899,0.98 +43.0,0.0026018852791357774,1.0,0.05875771036368049,0.98 +44.0,0.002452998785943783,1.0,0.058750735711922415,0.98 +45.0,0.002325122760683419,1.0,0.058832908532878384,0.98 +46.0,0.0022004773574903613,1.0,0.05931266420926835,0.98 +47.0,0.0020748584217780996,1.0,0.059344483349667965,0.98 +48.0,0.001972244440490512,1.0,0.0598077171439049,0.98 +49.0,0.001866432894600093,1.0,0.060284389454718604,0.98 +50.0,0.001784550994193222,1.0,0.06072764247481326,0.98 +51.0,0.0017029988093170592,1.0,0.061149984209162594,0.98 +52.0,0.00162564116657979,1.0,0.061555958082701305,0.979 +53.0,0.0015603666542434351,1.0,0.061922900447719774,0.979 +54.0,0.0014921414498039198,1.0,0.062277377364392435,0.979 +55.0,0.001441256508702488,1.0,0.06265306885356571,0.979 +56.0,0.0013807884045604901,1.0,0.06304211962247282,0.979 +57.0,0.0013330958389548362,1.0,0.06342624198022304,0.979 +58.0,0.0012818933369035971,1.0,0.06378686691752886,0.979 +59.0,0.0012389867278221167,1.0,0.06408567297049027,0.979 +60.0,0.0011953072059823309,1.0,0.06431335760551778,0.98 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd new file mode 100644 index 00000000000..604f85a9c2e --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 60, + "cols": 5, + "nnz": 300, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-01-18 12:19:24 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml b/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml new file mode 100644 index 00000000000..658724473eb --- /dev/null +++ b/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml @@ -0,0 +1,482 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +source("scripts/nn/optim/shampoo.dml") as shampoo +source("scripts/nn/optim/adagrad.dml") as adagrad +source("scripts/nn/optim/adam.dml") as adam + +source("scripts/nn/layers/conv2d_builtin.dml") as conv2d +source("scripts/nn/layers/avg_pool2d_builtin.dml") as avg_pool2d +source("scripts/nn/layers/relu.dml") as relu +source("scripts/nn/layers/cross_entropy_loss.dml") as cross_entropy_loss +source("scripts/nn/layers/softmax.dml") as softmax + +source("src/test/scripts/applications/nn/util.dml") as test_util + + +# defining forward pass +modelPredict = function(matrix[double] X, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc, list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins) + return(matrix[double] softMaxOut, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred){ # + filters = 64 + conv_kernel = 5 + pool_kernel = 4 + conv_padding = 2 + pool_padding = 1 + + h_in = as.integer(as.scalar(h_ins[1])) + h_in_1 = as.integer(as.scalar(h_ins[2])) + h_in_2 = as.integer(as.scalar(h_ins[3])) + h_in_3 = as.integer(as.scalar(h_ins[4])) + h_in_4 = as.integer(as.scalar(h_ins[5])) + + w_in = as.integer(as.scalar(w_ins[1])) + w_in_1 = as.integer(as.scalar(w_ins[2])) + w_in_2 = as.integer(as.scalar(w_ins[3])) + w_in_3 = as.integer(as.scalar(w_ins[4])) + w_in_4 = as.integer(as.scalar(w_ins[5])) + + c_in = as.integer(as.scalar(c_ins[1])) + c_in_1 = as.integer(as.scalar(c_ins[2])) + + # first block + [convOut1, Hout, Wout] = conv2d::forward(X, W1, b1, c_in, h_in, w_in, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + [poolOut1, Hout, Wout] = avg_pool2d::forward(convOut1, c_in_1, h_in_1, w_in_1, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + reluOut1 = relu::forward(poolOut1) + + # second block + [convOut2, Hout, Wout] = conv2d::forward(reluOut1, W2, b2, c_in_1, h_in_2, w_in_2, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + [poolOut2, Hout, Wout] = avg_pool2d::forward(convOut2, c_in_1, h_in_3, w_in_3, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + reluOut2 = relu::forward(poolOut2) + + pred = reluOut2 %*% t(W_fc) + t(b_fc) + + softMaxOut = softmax::forward(pred) + + #Xs = list(X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred, softMaxOut) + + } + +#defining backward pass +modelBackward = function(matrix[double] target, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc, list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred, matrix[double] softMaxOut) + return (matrix[double] gradient_lin_layer_W, matrix[double] gradient_lin_layer_b, matrix[double] gradient_W2, matrix[double] gradient_b2, matrix[double] gradient_W1, matrix[double] gradient_b1){ + filters = 64 + conv_kernel = 5 + pool_kernel = 4 + conv_padding = 2 + pool_padding = 1 + + h_in = as.integer(as.scalar(h_ins[1])) + h_in_1 = as.integer(as.scalar(h_ins[2])) + h_in_2 = as.integer(as.scalar(h_ins[3])) + h_in_3 = as.integer(as.scalar(h_ins[4])) + h_in_4 = as.integer(as.scalar(h_ins[5])) + + w_in = as.integer(as.scalar(w_ins[1])) + w_in_1 = as.integer(as.scalar(w_ins[2])) + w_in_2 = as.integer(as.scalar(w_ins[3])) + w_in_3 = as.integer(as.scalar(w_ins[4])) + w_in_4 = as.integer(as.scalar(w_ins[5])) + + c_in = as.integer(as.scalar(c_ins[1])) + c_in_1 = as.integer(as.scalar(c_ins[2])) + + # gradient of loss function + gradient_lossfn = cross_entropy_loss::backward(softMaxOut, target) + + # gradient Softmax + gradient_softmax = softmax::backward(gradient_lossfn, pred) + + # gradients Linear layer + gradient_lin_layer_W = t(gradient_softmax) %*% reluOut2 + gradient_lin_layer_b = t(colSums(gradient_softmax)) + gradient_lin_layer_X = gradient_softmax %*% W_fc + + # gradient second Relu + gradient_relu = relu::backward(gradient_lin_layer_X, poolOut2) + + # gradient second pooling layer + gradient_second_pooling = avg_pool2d::backward(gradient_relu, h_in_4, w_in_4, convOut2, c_in_1, h_in_3, w_in_3, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + # gradient second conv layer + [gradient_second_conv_X, gradient_W2, gradient_b2] = conv2d::backward(gradient_second_pooling, h_in_3, w_in_3, reluOut1, W2, b2, c_in_1, h_in_2, w_in_2, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + # gradient of the first Relu + gradient_relu = relu::backward(gradient_second_conv_X, poolOut1) + + # gradient first pooling layer + gradient_first_pooling = avg_pool2d::backward(gradient_relu, h_in_2, w_in_2, convOut1, c_in_1, h_in_1, w_in_1, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + # gradient first conv layer + [gradient_first_conv_X, gradient_W1, gradient_b1] = conv2d::backward(gradient_first_pooling, h_in_1, w_in_1, X, W1, b1, c_in, h_in, w_in, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + } + + +definingData = function(string dataset_name) + return(matrix[double] X_train, matrix[double] Y_train, matrix[double] X_val, matrix[double] Y_val, matrix[double] X_test, matrix[double] Y_test){ + if (dataset_name=="mnist"){ + data = read("src/test/resources/datasets/MNIST/mnist_test.csv", format="csv") + train = data[1:8999,] + test = data[9000:nrow(data),] + + images = train[,2:ncol(train)] + images = images / 255.0 + labels = train[,1] + images_test = test[,2:ncol(test)] + labels_test = test[,1] + + N = nrow(images) + N_test = nrow(images_test) + + X_train = images[1001:nrow(images),] + labels_train = labels[1001:nrow(images),] + Y_train = table(seq(1, nrow(X_train)), labels_train+1, nrow(X_train), 10) + + X_val = images[1:1000,] + labels_val = labels[1:1000,] + Y_val = table(seq(1, nrow(X_val)), labels_val+1, nrow(X_val), 10) + + X_test = images_test + Y_test = table(seq(1, N_test), labels_test+1, N_test, 10) + } + if (dataset_name=="cifar"){ + data = read("scripts/staging/shampoo_optimizer/cifar10.csv", format="csv") + train = data[1:39999,] + test = data[40000:nrow(data),] + + images = train[,2:ncol(train)] + images = images / 255.0 + labels = train[,1] + images_test = test[,2:ncol(test)] + labels_test = test[,1] + + N = nrow(images) + N_test = nrow(images_test) + + X_train = images[5001:nrow(images),] + labels_train = labels[5001:nrow(images),] + Y_train = table(seq(1, nrow(X_train)), labels_train+1, nrow(X_train), 10) + + X_val = images[1:5000,] + labels_val = labels[1:5000,] + Y_val = table(seq(1, nrow(X_val)), labels_val+1, nrow(X_val), 10) + + X_test = images_test + Y_test = table(seq(1, N_test), labels_test+1, N_test, 10) + } +} + +# Define image properties + +defining_image_properties = function(string dataset_name) + return(int h_in, int w_in, int c_in, int classes){ + if(dataset_name=="mnist"){ + h_in = 28 + w_in = 28 + c_in = 1 + classes = 10 + } + if(dataset_name=="cifar"){ + h_in = 32 + w_in = 32 + c_in = 3 + classes = 10 + } +} + +# Define training parameters +defining_training_parameters = function(string optimizer) + return(int epochs, int batch_size, double epsilon, double lr, int diagThreshold, int rootEvery, int preconEvery){ + if(optimizer=="adam"){ + epsilon = 1e-8 + lr = 0.001 + } + else if((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + epsilon = 1e-5 + lr = 0.005 + } + else{ + epsilon = 1e-3 + lr = 0.6 + } + epochs = 60 + batch_size = 64 + diagThreshold = 1200 + rootEvery = 10 + preconEvery = 2 +} + +defining_model_parameters = function() + return(int filters, int conv_kernel, int pool_kernel, int conv_padding, int pool_padding, int seed){ + + filters = 64 + conv_kernel = 5 + pool_kernel = 4 + conv_padding = 2 + pool_padding = 1 + seed = 42 +} + +# create simple nn for image classification +defining_nn_image_classification = function(int h_in, int w_in, int c_in, int classes, int filters, int conv_kernel, int pool_kernel, int conv_padding, int pool_padding, int seed) + return(list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc){ + + # convolution layer 1 + [W1, b1] = conv2d::init(filters, c_in, conv_kernel, conv_kernel, seed) + h_in_1 = h_in + conv_padding*2 - (conv_kernel - 1) + w_in_1 = w_in + conv_padding*2 - (conv_kernel - 1) + c_in_1 = filters + # pooling + h_in_2 = floor((h_in_1 + pool_padding*2 - pool_kernel)/2)+1 + w_in_2 = floor((w_in_1 + pool_padding*2 - pool_kernel)/2)+1 + # relu + + # convolution layer 2 + [W2, b2] = conv2d::init(filters, c_in_1, conv_kernel, conv_kernel, seed) + h_in_3 = h_in_2 + conv_padding*2 - (conv_kernel - 1) + w_in_3 = w_in_2 + conv_padding*2 - (conv_kernel - 1) + c_in_1 = filters + # pooling + h_in_4 = floor((h_in_3 + pool_padding*2 - pool_kernel)/2)+1 + w_in_4 = floor((w_in_3 + pool_padding*2 - pool_kernel)/2)+1 + # relu + + # Linear + W_fc = rand(rows=classes, cols=h_in_4*w_in_4*c_in_1, pdf="uniform", min=-0.1, max=0.1, seed=seed) + b_fc = matrix(0, rows=classes, cols=1) + + h_ins = list(h_in, h_in_1, h_in_2, h_in_3, h_in_4) + w_ins = list(w_in, w_in_1, w_in_2, w_in_3, w_in_4) + c_ins = list(c_in, c_in_1) +} + +get_optimizer = function(int optimizer_index) + return(string optimizer){ + + if (optimizer_index==4) + { + optimizer = "adam" + } + if (optimizer_index==1) + { + optimizer = "shampoo" + } + if (optimizer_index==5) + { + optimizer = "shampoo_diagonal" + } + if (optimizer_index==2) + { + optimizer = "shampoo_momentum" + } + if (optimizer_index==6) + { + optimizer = "shampoo_momentum_diagonal" + } + if (optimizer_index==3) + { + optimizer = "shampoo_heuristic" + } + if (optimizer_index==7) + { + optimizer = "shampoo_heuristic_diagonal" + } +} + +# set parameters for the experiments +############################################################################################# +dataset_name = "mnist" #Alternatives: "mnist" or "cifar" +optimizers_to_experiment = list("shampoo", "shampoo_momentum", "shampoo_heuristic", "adam") +# Alternatives: ("shampoo", "shampoo_diagonal", "shampoo_momentum", +# "shampoo_momentum_diagonal", "shampoo_heuristic", "shampoo_heuristic_diagonal", "adam") +############################################################################################# + +for (optimizer_index in 1:length(optimizers_to_experiment)){ + optimizer = get_optimizer(optimizer_index) + print("Starting with " + optimizer) + + # get the data + [X_train, Y_train, X_val, Y_val, X_test, Y_test] = definingData(dataset_name) + + # get image properties + [h_in, w_in, c_in, classes] = defining_image_properties(dataset_name) + + # get model parameters + [filters, conv_kernel, pool_kernel, conv_padding, pool_padding, seed] = defining_model_parameters() + + #get model weights + [h_ins, w_ins, c_ins, W1, b1, W2, b2, W_fc, b_fc] = defining_nn_image_classification(h_in, w_in, c_in, classes, filters, conv_kernel, pool_kernel, conv_padding, pool_padding, seed) + + # get training parameters + [epochs, batch_size, epsilon, lr, diagThreshold, rootEvery, preconEvery]= defining_training_parameters(optimizer) + + + if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + [preconL_W1, preconR_W1, useDiag_W1] = shampoo::init(W1, epsilon, diagThreshold) + [preconL_b1, preconR_b1, useDiag_b1] = shampoo::init(b1, epsilon, diagThreshold) + [preconL_W2, preconR_W2, useDiag_W2] = shampoo::init(W2, epsilon, diagThreshold) + [preconL_b2, preconR_b2, useDiag_b2] = shampoo::init(b2, epsilon, diagThreshold) + [preconL_W_fc, preconR_W_fc, useDiag_W_fc] = shampoo::init(W_fc, epsilon, diagThreshold) + [preconL_b_fc, preconR_b_fc, useDiag_b_fc] = shampoo::init(b_fc, epsilon, diagThreshold) + } + if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + [preconL_W1, preconR_W1, momentum_W1, useDiag_W1] = shampoo::init_momentum(W1, epsilon, diagThreshold) + [preconL_b1, preconR_b1, momentum_b1, useDiag_b1] = shampoo::init_momentum(b1, epsilon, diagThreshold) + [preconL_W2, preconR_W2, momentum_W2, useDiag_W2] = shampoo::init_momentum(W2, epsilon, diagThreshold) + [preconL_b2, preconR_b2, momentum_b2, useDiag_b2] = shampoo::init_momentum(b2, epsilon, diagThreshold) + [preconL_W_fc, preconR_W_fc, momentum_W_fc, useDiag_W_fc] = shampoo::init_momentum(W_fc, epsilon, diagThreshold) + [preconL_b_fc, preconR_b_fc, momentum_b_fc, useDiag_b_fc] = shampoo::init_momentum(b_fc, epsilon, diagThreshold) + } + if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + [preconL_W1, preconR_W1, stepCounter_W1, bufferL_W1, bufferR_W1, momentum_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1, useDiag_W1] = shampoo::init_heuristic(W1, epsilon, diagThreshold) + [preconL_b1, preconR_b1, stepCounter_b1, bufferL_b1, bufferR_b1, momentum_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1, useDiag_b1] = shampoo::init_heuristic(b1, epsilon, diagThreshold) + [preconL_W2, preconR_W2, stepCounter_W2, bufferL_W2, bufferR_W2, momentum_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2, useDiag_W2] = shampoo::init_heuristic(W2, epsilon, diagThreshold) + [preconL_b2, preconR_b2, stepCounter_b2, bufferL_b2, bufferR_b2, momentum_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2, useDiag_b2] = shampoo::init_heuristic(b2, epsilon, diagThreshold) + [preconL_W_fc, preconR_W_fc, stepCounter_W_fc, bufferL_W_fc, bufferR_W_fc, momentum_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc, useDiag_W_fc] = shampoo::init_heuristic(W_fc, epsilon, diagThreshold) + [preconL_b_fc, preconR_b_fc, stepCounter_b_fc, bufferL_b_fc, bufferR_b_fc, momentum_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc, useDiag_b_fc] = shampoo::init_heuristic(b_fc, epsilon, diagThreshold) + } + if (optimizer == "adam"){ + [m_W1, v_W1] = adam::init(W1) + [m_b1, v_b1] = adam::init(b1) + [m_W2, v_W2] = adam::init(W2) + [m_b2, v_b2] = adam::init(b2) + [m_W_fc, v_W_fc] = adam::init(W_fc) + [m_b_fc, v_b_fc] = adam::init(b_fc) + } + + data_val_X = X_val + data_val_Y = Y_val + + # define the training + + train_losses = matrix(0, rows=epochs, cols=1) + train_accuracies = matrix(0, rows=epochs, cols=1) + val_accuracies = matrix(0, rows=epochs, cols=1) + val_losses = matrix(0, rows=epochs, cols=1) + Ntrain = nrow(X_train) + + timestep = 0 + + for(epoch in 1:epochs){ + + print("Epoch " + epoch + " of " + epochs + " epochs") + + accuracy_value = 0 + accuracy_count = 0 + loss_value = 0 + loss_count = 0 + + + for(start_index in seq(1, Ntrain, batch_size)){ + #start_index = (i - 1) * batch_size + 1 + end_index = min(start_index + batch_size - 1, Ntrain) + data_train_X = X_train[start_index:end_index,] + data_train_Y = Y_train[start_index:end_index,] + + [softMaxOut, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred] = modelPredict(data_train_X, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + + predicted_value = rowIndexMax(softMaxOut) - 1 + accuracy = sum(predicted_value==rowIndexMax(data_train_Y)-1) / length(predicted_value) + accuracy_value = accuracy_value + accuracy + accuracy_count = accuracy_count + 1 + + loss = cross_entropy_loss::forward(softMaxOut, data_train_Y) + loss_value = loss_value + loss + loss_count = loss_count + 1 + + + [gradient_lin_layer_W, gradient_lin_layer_b, gradient_W2, gradient_b2, gradient_W1, gradient_b1] = modelBackward(data_train_Y, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred, softMaxOut) + + if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + [W1, preconL_W1, preconR_W1] = shampoo::update(W1, gradient_W1, lr, preconL_W1, preconR_W1, useDiag_W1) + [b1, preconL_b1, preconR_b1] = shampoo::update(b1, gradient_b1, lr, preconL_b1, preconR_b1, useDiag_b1) + [W2, preconL_W2, preconR_W2] = shampoo::update(W2, gradient_W2, lr, preconL_W2, preconR_W2, useDiag_W2) + [b2, preconL_b2, preconR_b2] = shampoo::update(b2, gradient_b2, lr, preconL_b2, preconR_b2, useDiag_b2) + [W_fc, preconL_W_fc, preconR_W_fc] = shampoo::update(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, useDiag_W_fc) + [b_fc, preconL_b_fc, preconR_b_fc] = shampoo::update(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, useDiag_b_fc) + } + if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + [W1, preconL_W1, preconR_W1, momentum_W1] = shampoo::update_momentum(W1, gradient_W1, lr, preconL_W1, preconR_W1, momentum_W1, useDiag_W1) + [b1, preconL_b1, preconR_b1, momentum_b1] = shampoo::update_momentum(b1, gradient_b1, lr, preconL_b1, preconR_b1, momentum_b1, useDiag_b1) + [W2, preconL_W2, preconR_W2, momentum_W2] = shampoo::update_momentum(W2, gradient_W2, lr, preconL_W2, preconR_W2, momentum_W2, useDiag_W2) + [b2, preconL_b2, preconR_b2, momentum_b2] = shampoo::update_momentum(b2, gradient_b2, lr, preconL_b2, preconR_b2, momentum_b2, useDiag_b2) + [W_fc, preconL_W_fc, preconR_W_fc, momentum_W_fc] = shampoo::update_momentum(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, momentum_W_fc, useDiag_W_fc) + [b_fc, preconL_b_fc, preconR_b_fc, momentum_b_fc] = shampoo::update_momentum(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, momentum_b_fc, useDiag_b_fc) + } + if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + [W1, preconL_W1, preconR_W1, momentum_W1, stepCounter_W1, bufferL_W1, bufferR_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1] = shampoo::update_heuristic(W1, gradient_W1, lr, preconL_W1, preconR_W1, momentum_W1, stepCounter_W1, rootEvery, preconEvery, bufferL_W1, bufferR_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1, useDiag_W1) + [b1, preconL_b1, preconR_b1, momentum_b1, stepCounter_b1, bufferL_b1, bufferR_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1] = shampoo::update_heuristic(b1, gradient_b1, lr, preconL_b1, preconR_b1, momentum_b1, stepCounter_b1, rootEvery, preconEvery, bufferL_b1, bufferR_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1, useDiag_b1) + [W2, preconL_W2, preconR_W2, momentum_W2, stepCounter_W2, bufferL_W2, bufferR_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2] = shampoo::update_heuristic(W2, gradient_W2, lr, preconL_W2, preconR_W2, momentum_W2, stepCounter_W2, rootEvery, preconEvery, bufferL_W2, bufferR_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2, useDiag_W2) + [b2, preconL_b2, preconR_b2, momentum_b2, stepCounter_b2, bufferL_b2, bufferR_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2] = shampoo::update_heuristic(b2, gradient_b2, lr, preconL_b2, preconR_b2, momentum_b2, stepCounter_b2, rootEvery, preconEvery, bufferL_b2, bufferR_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2, useDiag_b2) + [W_fc, preconL_W_fc, preconR_W_fc, momentum_W_fc, stepCounter_W_fc, bufferL_W_fc, bufferR_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc] = shampoo::update_heuristic(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, momentum_W_fc, stepCounter_W_fc, rootEvery, preconEvery, bufferL_W_fc, bufferR_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc, useDiag_W_fc) + [b_fc, preconL_b_fc, preconR_b_fc, momentum_b_fc, stepCounter_b_fc, bufferL_b_fc, bufferR_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc] = shampoo::update_heuristic(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, momentum_b_fc, stepCounter_b_fc, rootEvery, preconEvery, bufferL_b_fc, bufferR_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc, useDiag_b_fc) + } + if (optimizer == "adam"){ + [W1, m_W1, v_W1] = adam::update(W1, gradient_W1, lr, 0.9, 0.999, epsilon, timestep, m_W1, v_W1) + [b1, m_b1, v_b1] = adam::update(b1, gradient_b1, lr, 0.9, 0.999, epsilon, timestep, m_b1, v_b1) + [W2, m_W2, v_W2] = adam::update(W2, gradient_W2, lr, 0.9, 0.999, epsilon, timestep, m_W2, v_W2) + [b2, m_b2, v_b2] = adam::update(b2, gradient_b2, lr, 0.9, 0.999, epsilon, timestep, m_b2, v_b2) + [W_fc, m_W_fc, v_W_fc] = adam::update(W_fc, gradient_lin_layer_W, lr, 0.9, 0.999, epsilon, timestep, m_W_fc, v_W_fc) + [b_fc, m_b_fc, v_b_fc] = adam::update(b_fc, gradient_lin_layer_b, lr, 0.9, 0.999, epsilon, timestep, m_b_fc, v_b_fc) + timestep = timestep + 1 + } + } + + train_losses[epoch,1] = loss_value / loss_count + train_accuracies[epoch,1] = accuracy_value/accuracy_count + + [softMaxOut_val, X_val, convOut1_val, poolOut1_val, reluOut1_val, convOut2_val, poolOut2_val, reluOut2_val, pred_val] = modelPredict(X_val, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + + + predicted_value_val = rowIndexMax(softMaxOut_val) - 1 + accuracy_val = sum(predicted_value_val==rowIndexMax(Y_val)-1) / length(predicted_value_val) + + val_accuracies[epoch,1] = accuracy_val + + loss = cross_entropy_loss::forward(softMaxOut_val, Y_val) + val_losses[epoch,1] = loss + } + + + # define the testing + + [softMaxOut_test, X_test, convOut1_test, poolOut1_test, reluOut1_test, convOut2_test, poolOut2_test, reluOut2_test, pred_test] = modelPredict(X_test, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + + predicted_value = rowIndexMax(softMaxOut_test) - 1 + accuracy = sum(predicted_value==rowIndexMax(Y_test)-1) / length(predicted_value) + + loss = cross_entropy_loss::forward(softMaxOut_test, Y_test) + + outDir = "scripts/staging/shampoo_optimizer/metrics" + epochs = nrow(train_losses) + epoch_col = seq(1, epochs) + M = cbind(epoch_col, train_losses, train_accuracies, val_losses, val_accuracies) + write(M, outDir + "/metrics" + "_" + optimizer + "_" + dataset_name + ".csv", format="csv") + + print("Test Accuracy of " + optimizer + " on " + dataset_name + " = " + accuracy) + print("Test Loss of " + optimizer + " on " + dataset_name + " = " + loss) + +} + diff --git a/src/test/scripts/applications/nn/component/shampoo_test.dml b/src/test/scripts/applications/nn/component/shampoo_test.dml new file mode 100644 index 00000000000..2ed90845261 --- /dev/null +++ b/src/test/scripts/applications/nn/component/shampoo_test.dml @@ -0,0 +1,437 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +source("scripts/nn/optim/shampoo.dml") as shampoo +source("scripts/nn/optim/adagrad.dml") as adagrad +source("scripts/nn/optim/adam.dml") as adam + +source("scripts/nn/layers/conv2d_builtin.dml") as conv2d +source("scripts/nn/layers/avg_pool2d_builtin.dml") as avg_pool2d +source("scripts/nn/layers/relu.dml") as relu +source("scripts/nn/layers/cross_entropy_loss.dml") as cross_entropy_loss +source("scripts/nn/layers/softmax.dml") as softmax + + + +# defining forward pass +modelPredict = function(matrix[double] X, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc, list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins) + return(matrix[double] softMaxOut, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred){ # + filters = 64 + conv_kernel = 5 + pool_kernel = 4 + conv_padding = 2 + pool_padding = 1 + + h_in = as.integer(as.scalar(h_ins[1])) + h_in_1 = as.integer(as.scalar(h_ins[2])) + h_in_2 = as.integer(as.scalar(h_ins[3])) + h_in_3 = as.integer(as.scalar(h_ins[4])) + h_in_4 = as.integer(as.scalar(h_ins[5])) + + w_in = as.integer(as.scalar(w_ins[1])) + w_in_1 = as.integer(as.scalar(w_ins[2])) + w_in_2 = as.integer(as.scalar(w_ins[3])) + w_in_3 = as.integer(as.scalar(w_ins[4])) + w_in_4 = as.integer(as.scalar(w_ins[5])) + + c_in = as.integer(as.scalar(c_ins[1])) + c_in_1 = as.integer(as.scalar(c_ins[2])) + + # first block + [convOut1, Hout, Wout] = conv2d::forward(X, W1, b1, c_in, h_in, w_in, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + [poolOut1, Hout, Wout] = avg_pool2d::forward(convOut1, c_in_1, h_in_1, w_in_1, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + reluOut1 = relu::forward(poolOut1) + + # second block + [convOut2, Hout, Wout] = conv2d::forward(reluOut1, W2, b2, c_in_1, h_in_2, w_in_2, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + [poolOut2, Hout, Wout] = avg_pool2d::forward(convOut2, c_in_1, h_in_3, w_in_3, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + reluOut2 = relu::forward(poolOut2) + + pred = reluOut2 %*% t(W_fc) + t(b_fc) + + softMaxOut = softmax::forward(pred) + + #Xs = list(X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred, softMaxOut) + + } + +#defining backward pass +modelBackward = function(matrix[double] target, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc, list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred, matrix[double] softMaxOut) + return (matrix[double] gradient_lin_layer_W, matrix[double] gradient_lin_layer_b, matrix[double] gradient_W2, matrix[double] gradient_b2, matrix[double] gradient_W1, matrix[double] gradient_b1){ + filters = 64 + conv_kernel = 5 + pool_kernel = 4 + conv_padding = 2 + pool_padding = 1 + + h_in = as.integer(as.scalar(h_ins[1])) + h_in_1 = as.integer(as.scalar(h_ins[2])) + h_in_2 = as.integer(as.scalar(h_ins[3])) + h_in_3 = as.integer(as.scalar(h_ins[4])) + h_in_4 = as.integer(as.scalar(h_ins[5])) + + w_in = as.integer(as.scalar(w_ins[1])) + w_in_1 = as.integer(as.scalar(w_ins[2])) + w_in_2 = as.integer(as.scalar(w_ins[3])) + w_in_3 = as.integer(as.scalar(w_ins[4])) + w_in_4 = as.integer(as.scalar(w_ins[5])) + + c_in = as.integer(as.scalar(c_ins[1])) + c_in_1 = as.integer(as.scalar(c_ins[2])) + + # gradient of loss function + gradient_lossfn = cross_entropy_loss::backward(softMaxOut, target) + + # gradient Softmax + gradient_softmax = softmax::backward(gradient_lossfn, pred) + + # gradients Linear layer + gradient_lin_layer_W = t(gradient_softmax) %*% reluOut2 + gradient_lin_layer_b = t(colSums(gradient_softmax)) + gradient_lin_layer_X = gradient_softmax %*% W_fc + + # gradient second Relu + gradient_relu = relu::backward(gradient_lin_layer_X, poolOut2) + + # gradient second pooling layer + gradient_second_pooling = avg_pool2d::backward(gradient_relu, h_in_4, w_in_4, convOut2, c_in_1, h_in_3, w_in_3, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + # gradient second conv layer + [gradient_second_conv_X, gradient_W2, gradient_b2] = conv2d::backward(gradient_second_pooling, h_in_3, w_in_3, reluOut1, W2, b2, c_in_1, h_in_2, w_in_2, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + # gradient of the first Relu + gradient_relu = relu::backward(gradient_second_conv_X, poolOut1) + + # gradient first pooling layer + gradient_first_pooling = avg_pool2d::backward(gradient_relu, h_in_2, w_in_2, convOut1, c_in_1, h_in_1, w_in_1, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + + # gradient first conv layer + [gradient_first_conv_X, gradient_W1, gradient_b1] = conv2d::backward(gradient_first_pooling, h_in_1, w_in_1, X, W1, b1, c_in, h_in, w_in, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + + } + + +definingData = function() + return(matrix[double] X_train, matrix[double] Y_train, matrix[double] X_val, matrix[double] Y_val, matrix[double] X_test, matrix[double] Y_test){ + + data = read("src/test/resources/datasets/MNIST/mnist_test.csv", format="csv") + train = data[1:8999,] + test = data[9000:nrow(data),] + + images = train[,2:ncol(train)] + images = images / 255.0 + labels = train[,1] + images_test = test[,2:ncol(test)] + labels_test = test[,1] + + N = nrow(images) + N_test = nrow(images_test) + + X_train = images[1001:nrow(images),] + labels_train = labels[1001:nrow(images),] + Y_train = table(seq(1, nrow(X_train)), labels_train+1, nrow(X_train), 10) + + X_val = images[1:1000,] + labels_val = labels[1:1000,] + Y_val = table(seq(1, nrow(X_val)), labels_val+1, nrow(X_val), 10) + + X_test = images_test + Y_test = table(seq(1, N_test), labels_test+1, N_test, 10) +} + +# Define image properties + +defining_image_properties = function() + return(int h_in, int w_in, int c_in, int classes){ + + h_in = 28 + w_in = 28 + c_in = 1 + classes = 10 + +} + +# Define training parameters +defining_training_parameters = function(string optimizer) + return(int epochs, int batch_size, double epsilon, double lr, int rootEvery, int preconEvery){ + + if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + epochs = 30 + batch_size = 64 + epsilon = 1e-4 + lr = 0.005 + rootEvery = 10 + preconEvery = 2 + }else{ + epochs = 30 + batch_size = 64 + epsilon = 1e-4 + lr = 0.005 + rootEvery = 0 + preconEvery = 0 + } +} + +defining_model_parameters = function() + return(int filters, int conv_kernel, int pool_kernel, int conv_padding, int pool_padding, int seed){ + + filters = 64 + conv_kernel = 5 + pool_kernel = 4 + conv_padding = 2 + pool_padding = 1 + seed = 42 +} + +# create simple nn for image classification +defining_nn_image_classification = function(int h_in, int w_in, int c_in, int classes, int filters, int conv_kernel, int pool_kernel, int conv_padding, int pool_padding, int seed) + return(list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc){ + + # convolution layer 1 + [W1, b1] = conv2d::init(filters, c_in, conv_kernel, conv_kernel, seed) + h_in_1 = h_in + conv_padding*2 - (conv_kernel - 1) + w_in_1 = w_in + conv_padding*2 - (conv_kernel - 1) + c_in_1 = filters + # pooling + h_in_2 = floor((h_in_1 + pool_padding*2 - pool_kernel)/2)+1 + w_in_2 = floor((w_in_1 + pool_padding*2 - pool_kernel)/2)+1 + # relu + + # convolution layer 2 + [W2, b2] = conv2d::init(filters, c_in_1, conv_kernel, conv_kernel, seed) + h_in_3 = h_in_2 + conv_padding*2 - (conv_kernel - 1) + w_in_3 = w_in_2 + conv_padding*2 - (conv_kernel - 1) + c_in_1 = filters + # pooling + h_in_4 = floor((h_in_3 + pool_padding*2 - pool_kernel)/2)+1 + w_in_4 = floor((w_in_3 + pool_padding*2 - pool_kernel)/2)+1 + # relu + + # Linear + W_fc = rand(rows=classes, cols=h_in_4*w_in_4*c_in_1, pdf="uniform", min=-0.1, max=0.1, seed=seed) + b_fc = matrix(0, rows=classes, cols=1) + + h_ins = list(h_in, h_in_1, h_in_2, h_in_3, h_in_4) + w_ins = list(w_in, w_in_1, w_in_2, w_in_3, w_in_4) + c_ins = list(c_in, c_in_1) +} + +get_optimizer = function(int optimizer_index) + return(string optimizer){ + + if (optimizer_index==1) + { + optimizer = "shampoo" + } + if (optimizer_index==2) + { + optimizer = "shampoo_diagonal" + } + if (optimizer_index==3) + { + optimizer = "shampoo_momentum" + } + if (optimizer_index==4) + { + optimizer = "shampoo_momentum_diagonal" + } + if (optimizer_index==5) + { + optimizer = "shampoo_heuristic" + } + if (optimizer_index==6) + { + optimizer = "shampoo_heuristic_diagonal" + } +} + +# set parameters for the tests +############################################################################################# +optimizers_to_experiment = list("shampoo", "shampoo_diagonal", "shampoo_momentum", + "shampoo_momentum_diagonal", "shampoo_heuristic", "shampoo_heuristic_diagonal") +############################################################################################# + +for (optimizer_index in 1:length(optimizers_to_experiment)){ + optimizer = get_optimizer(optimizer_index) + print("Starting with " + optimizer) + + # get the data + [X_train, Y_train, X_val, Y_val, X_test, Y_test] = definingData() + + # get image properties + [h_in, w_in, c_in, classes] = defining_image_properties() + + # get model parameters + [filters, conv_kernel, pool_kernel, conv_padding, pool_padding, seed] = defining_model_parameters() + + #get model weights + [h_ins, w_ins, c_ins, W1, b1, W2, b2, W_fc, b_fc] = defining_nn_image_classification(h_in, w_in, c_in, classes, filters, conv_kernel, pool_kernel, conv_padding, pool_padding, seed) + + # get training parameters + [epochs, batch_size, epsilon, lr, rootEvery, preconEvery]= defining_training_parameters(optimizer) + + + if ((optimizer == "shampoo") | (optimizer == "shampoo_momentum") | (optimizer == "shampoo_heuristic")){ + diagThreshold = 1200 + }else{ + diagThreshold = 1 + } + + if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + [preconL_W1, preconR_W1, useDiag_W1] = shampoo::init(W1, epsilon, diagThreshold) + [preconL_b1, preconR_b1, useDiag_b1] = shampoo::init(b1, epsilon, diagThreshold) + [preconL_W2, preconR_W2, useDiag_W2] = shampoo::init(W2, epsilon, diagThreshold) + [preconL_b2, preconR_b2, useDiag_b2] = shampoo::init(b2, epsilon, diagThreshold) + [preconL_W_fc, preconR_W_fc, useDiag_W_fc] = shampoo::init(W_fc, epsilon, diagThreshold) + [preconL_b_fc, preconR_b_fc, useDiag_b_fc] = shampoo::init(b_fc, epsilon, diagThreshold) + } + + if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + [preconL_W1, preconR_W1, momentum_W1, useDiag_W1] = shampoo::init_momentum(W1, epsilon, diagThreshold) + [preconL_b1, preconR_b1, momentum_b1, useDiag_b1] = shampoo::init_momentum(b1, epsilon, diagThreshold) + [preconL_W2, preconR_W2, momentum_W2, useDiag_W2] = shampoo::init_momentum(W2, epsilon, diagThreshold) + [preconL_b2, preconR_b2, momentum_b2, useDiag_b2] = shampoo::init_momentum(b2, epsilon, diagThreshold) + [preconL_W_fc, preconR_W_fc, momentum_W_fc, useDiag_W_fc] = shampoo::init_momentum(W_fc, epsilon, diagThreshold) + [preconL_b_fc, preconR_b_fc, momentum_b_fc, useDiag_b_fc] = shampoo::init_momentum(b_fc, epsilon, diagThreshold) + } + if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + [preconL_W1, preconR_W1, stepCounter_W1, bufferL_W1, bufferR_W1, momentum_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1, useDiag_W1] = shampoo::init_heuristic(W1, epsilon, diagThreshold) + [preconL_b1, preconR_b1, stepCounter_b1, bufferL_b1, bufferR_b1, momentum_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1, useDiag_b1] = shampoo::init_heuristic(b1, epsilon, diagThreshold) + [preconL_W2, preconR_W2, stepCounter_W2, bufferL_W2, bufferR_W2, momentum_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2, useDiag_W2] = shampoo::init_heuristic(W2, epsilon, diagThreshold) + [preconL_b2, preconR_b2, stepCounter_b2, bufferL_b2, bufferR_b2, momentum_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2, useDiag_b2] = shampoo::init_heuristic(b2, epsilon, diagThreshold) + [preconL_W_fc, preconR_W_fc, stepCounter_W_fc, bufferL_W_fc, bufferR_W_fc, momentum_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc, useDiag_W_fc] = shampoo::init_heuristic(W_fc, epsilon, diagThreshold) + [preconL_b_fc, preconR_b_fc, stepCounter_b_fc, bufferL_b_fc, bufferR_b_fc, momentum_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc, useDiag_b_fc] = shampoo::init_heuristic(b_fc, epsilon, diagThreshold) + } + print(useDiag_W1) + print(useDiag_b1) + print(useDiag_W2) + print(useDiag_b2) + print(useDiag_W_fc) + print(useDiag_b_fc) + data_val_X = X_val + data_val_Y = Y_val + + # define the training + + train_losses = matrix(0, rows=epochs, cols=1) + train_accuracies = matrix(0, rows=epochs, cols=1) + val_accuracies = matrix(0, rows=epochs, cols=1) + val_losses = matrix(0, rows=epochs, cols=1) + Ntrain = nrow(X_train) + + timestep = 0 + + for(epoch in 1:epochs){ + + print("Epoch " + epoch + " of " + epochs + " epochs") + + accuracy_value = 0 + accuracy_count = 0 + loss_value = 0 + loss_count = 0 + + + for(start_index in seq(1, Ntrain, batch_size)){ + #start_index = (i - 1) * batch_size + 1 + end_index = min(start_index + batch_size - 1, Ntrain) + data_train_X = X_train[start_index:end_index,] + data_train_Y = Y_train[start_index:end_index,] + + [softMaxOut, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred] = modelPredict(data_train_X, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + + predicted_value = rowIndexMax(softMaxOut) - 1 + accuracy = sum(predicted_value==rowIndexMax(data_train_Y)-1) / length(predicted_value) + accuracy_value = accuracy_value + accuracy + accuracy_count = accuracy_count + 1 + + loss = cross_entropy_loss::forward(softMaxOut, data_train_Y) + loss_value = loss_value + loss + loss_count = loss_count + 1 + + + [gradient_lin_layer_W, gradient_lin_layer_b, gradient_W2, rootEvery, preconEveryadient_b2, gradient_W1, gradient_b1] = modelBackward(data_train_Y, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred, softMaxOut) + + if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + [W1, preconL_W1, preconR_W1] = shampoo::update(W1, gradient_W1, lr, preconL_W1, preconR_W1, useDiag_W1) + [b1, preconL_b1, preconR_b1] = shampoo::update(b1, gradient_b1, lr, preconL_b1, preconR_b1, useDiag_b1) + [W2, preconL_W2, preconR_W2] = shampoo::update(W2, gradient_W2, lr, preconL_W2, preconR_W2, useDiag_W2) + [b2, preconL_b2, preconR_b2] = shampoo::update(b2, gradient_b2, lr, preconL_b2, preconR_b2, useDiag_b2) + [W_fc, preconL_W_fc, preconR_W_fc] = shampoo::update(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, useDiag_W_fc) + [b_fc, preconL_b_fc, preconR_b_fc] = shampoo::update(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, useDiag_b_fc) + } + if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + [W1, preconL_W1, preconR_W1, momentum_W1] = shampoo::update_momentum(W1, gradient_W1, lr, preconL_W1, preconR_W1, momentum_W1, useDiag_W1) + [b1, preconL_b1, preconR_b1, momentum_b1] = shampoo::update_momentum(b1, gradient_b1, lr, preconL_b1, preconR_b1, momentum_b1, useDiag_b1) + [W2, preconL_W2, preconR_W2, momentum_W2] = shampoo::update_momentum(W2, gradient_W2, lr, preconL_W2, preconR_W2, momentum_W2, useDiag_W2) + [b2, preconL_b2, preconR_b2, momentum_b2] = shampoo::update_momentum(b2, gradient_b2, lr, preconL_b2, preconR_b2, momentum_b2, useDiag_b2) + [W_fc, preconL_W_fc, preconR_W_fc, momentum_W_fc] = shampoo::update_momentum(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, momentum_W_fc, useDiag_W_fc) + [b_fc, preconL_b_fc, preconR_b_fc, momentum_b_fc] = shampoo::update_momentum(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, momentum_b_fc, useDiag_b_fc) + } + if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + [W1, preconL_W1, preconR_W1, momentum_W1, stepCounter_W1, bufferL_W1, bufferR_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1] = shampoo::update_heuristic(W1, gradient_W1, lr, preconL_W1, preconR_W1, momentum_W1, stepCounter_W1, rootEvery, preconEvery, bufferL_W1, bufferR_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1, useDiag_W1) + [b1, preconL_b1, preconR_b1, momentum_b1, stepCounter_b1, bufferL_b1, bufferR_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1] = shampoo::update_heuristic(b1, gradient_b1, lr, preconL_b1, preconR_b1, momentum_b1, stepCounter_b1, rootEvery, preconEvery, bufferL_b1, bufferR_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1, useDiag_b1) + [W2, preconL_W2, preconR_W2, momentum_W2, stepCounter_W2, bufferL_W2, bufferR_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2] = shampoo::update_heuristic(W2, gradient_W2, lr, preconL_W2, preconR_W2, momentum_W2, stepCounter_W2, rootEvery, preconEvery, bufferL_W2, bufferR_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2, useDiag_W2) + [b2, preconL_b2, preconR_b2, momentum_b2, stepCounter_b2, bufferL_b2, bufferR_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2] = shampoo::update_heuristic(b2, gradient_b2, lr, preconL_b2, preconR_b2, momentum_b2, stepCounter_b2, rootEvery, preconEvery, bufferL_b2, bufferR_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2, useDiag_b2) + [W_fc, preconL_W_fc, preconR_W_fc, momentum_W_fc, stepCounter_W_fc, bufferL_W_fc, bufferR_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc] = shampoo::update_heuristic(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, momentum_W_fc, stepCounter_W_fc, rootEvery, preconEvery, bufferL_W_fc, bufferR_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc, useDiag_W_fc) + [b_fc, preconL_b_fc, preconR_b_fc, momentum_b_fc, stepCounter_b_fc, bufferL_b_fc, bufferR_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc] = shampoo::update_heuristic(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, momentum_b_fc, stepCounter_b_fc, rootEvery, preconEvery, bufferL_b_fc, bufferR_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc, useDiag_b_fc) + } + } + + train_losses[epoch,1] = loss_value / loss_count + train_accuracies[epoch,1] = accuracy_value/accuracy_count + + [softMaxOut_val, X_val, convOut1_val, poolOut1_val, reluOut1_val, convOut2_val, poolOut2_val, reluOut2_val, pred_val] = modelPredict(X_val, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + + + predicted_value_val = rowIndexMax(softMaxOut_val) - 1 + accuracy_val = sum(predicted_value_val==rowIndexMax(Y_val)-1) / length(predicted_value_val) + + val_accuracies[epoch,1] = accuracy_val + + loss = cross_entropy_loss::forward(softMaxOut_val, Y_val) + val_losses[epoch,1] = loss + } + + + # define the testing + + [softMaxOut_test, X_test, convOut1_test, poolOut1_test, reluOut1_test, convOut2_test, poolOut2_test, reluOut2_test, pred_test] = modelPredict(X_test, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + + predicted_value = rowIndexMax(softMaxOut_test) - 1 + accuracy = sum(predicted_value==rowIndexMax(Y_test)-1) / length(predicted_value) + + loss = cross_entropy_loss::forward(softMaxOut_test, Y_test) + + print("Test Accuracy of " + optimizer + " = " + accuracy) + print("Test Loss of " + optimizer + " = " + loss) + + if (accuracy > 0.7){ + print("Test passed") + } else{ + print("Test failed") + } + +} + diff --git a/src/test/scripts/applications/nn/component/shampoo_test.py b/src/test/scripts/applications/nn/component/shampoo_test.py new file mode 100644 index 00000000000..94028ca443d --- /dev/null +++ b/src/test/scripts/applications/nn/component/shampoo_test.py @@ -0,0 +1,225 @@ +import numpy as np + +# update shampoo +def update_shampoo(X, dX, lr, preconL, preconR, useDiag): + if(not useDiag): + + preconL = preconL + dX @ dX.T + preconR = preconR + dX.T @dX + + LEigenvalue, LEigenvector = np.linalg.eig(preconL) + preconLInvPowerRoot = LEigenvector @ np.diag(LEigenvalue**(-0.25)) @ LEigenvector.T + + REigenvalue, REigenvector = np.linalg.eig(preconR) + preconRInvPowerRoot = REigenvector @ np.diag(REigenvalue**(-0.25)) @ REigenvector.T + + X = X - lr * preconLInvPowerRoot @ dX @ preconRInvPowerRoot + + # Diagonal Shampoo: + # Memory-efficient approximation for large parameter matrices + else: + n = dX.shape[0] + m = dX.shape[1] + + preconL = preconL + (dX**2).sum(axis=1, keepdims=True) + preconR = preconR + (dX**2).sum(axis=0, keepdims=True) + + preconLScale = preconL**(-0.25) + preconRScale = preconR**(-0.25) + + preconLMatrix = preconLScale @ np.ones(shape=[1, m]) + preconRMatrix = np.ones(shape=(n, 1)) @ preconRScale + + scaledGrad = dX * preconLMatrix + scaledGrad = scaledGrad * preconRMatrix + + X = X - lr * scaledGrad + + return(X, preconL, preconR) + +# init shampoo + +def init_shampoo(X, epsilon, useDiagThreshold): + if((X.shape[0] > useDiagThreshold) or (X.shape[1] > useDiagThreshold)): + preconL = np.full(shape=(X.shape[0], 1), fill_value=epsilon, dtype=np.float64) + preconR = np.full(shape=(1, X.shape[1]), fill_value=epsilon, dtype=np.float64) + useDiag = True + else: + preconL = np.eye(X.shape[0], dtype=np.float64) * epsilon + preconR = np.eye(X.shape[1], dtype=np.float64) * epsilon + + useDiag = False + return(preconL, preconR, useDiag) + +# update shampoo +def update_shampoo_momentum(X, dX, lr, preconL, preconR, momentum, useDiag): + momentum = 0.9 * momentum + (0.1)*dX + if(not useDiag): + + preconL = preconL + dX @ dX.T + preconR = preconR + dX.T @dX + + LEigenvalue, LEigenvector = np.linalg.eig(preconL) + preconLInvPowerRoot = LEigenvector @ np.diag(LEigenvalue**(-0.25)) @ LEigenvector.T + + REigenvalue, REigenvector = np.linalg.eig(preconR) + preconRInvPowerRoot = REigenvector @ np.diag(REigenvalue**(-0.25)) @ REigenvector.T + + X = X - lr * preconLInvPowerRoot @ momentum @ preconRInvPowerRoot + + # Diagonal Shampoo: + # Memory-efficient approximation for large parameter matrices + else: + n = dX.shape[0] + m = dX.shape[1] + + preconL = preconL + (dX**2).sum(axis=1, keepdims=True) + preconR = preconR + (dX**2).sum(axis=0, keepdims=True) + + preconLScale = preconL**(-0.25) + preconRScale = preconR**(-0.25) + + preconLMatrix = preconLScale @ np.ones(shape=[1, m]) + preconRMatrix = np.ones(shape=(n, 1)) @ preconRScale + + scaledGrad = momentum * preconLMatrix + scaledGrad = scaledGrad * preconRMatrix + + X = X - lr * scaledGrad + + return(X, preconL, preconR, momentum) + +# init shampoo + +def init_shampoo_momentum(X, epsilon, useDiagThreshold): + if((X.shape[0] > useDiagThreshold) or (X.shape[1] > useDiagThreshold)): + preconL = np.full(shape=(X.shape[0], 1), fill_value=epsilon, dtype=np.float64) + preconR = np.full(shape=(1, X.shape[1]), fill_value=epsilon, dtype=np.float64) + useDiag = True + else: + preconL = np.eye(X.shape[0], dtype=np.float64) * epsilon + preconR = np.eye(X.shape[1], dtype=np.float64) * epsilon + + useDiag = False + + momentum = X * 0 + return(preconL, preconR, momentum, useDiag) + +# update shampoo +def update_shampoo_heuristic(X, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag): + momentum = 0.9 * momentum + (0.1)*dX + if(not useDiag): + bufferL = bufferL + (dX @ dX.T) + bufferR = bufferR + (dX.T @dX) + + if ((stepCounter > 0) and (stepCounter % preconEvery == 0)): + preconL = preconL + bufferL + preconR = preconR + bufferR + bufferL = bufferL * 0 + bufferR = bufferR * 0 + + if ((stepCounter > 0) and (stepCounter % rootEvery == 0)): + LEigenvalue, LEigenvector = np.linalg.eig(preconL) + preconLInvPowerRoot = LEigenvector @ np.diag(LEigenvalue**(-0.25)) @ LEigenvector.T + + REigenvalue, REigenvector = np.linalg.eig(preconR) + preconRInvPowerRoot = REigenvector @ np.diag(REigenvalue**(-0.25)) @ REigenvector.T + + X = X - lr * preconLInvPowerRoot @ momentum @ preconRInvPowerRoot + + # Diagonal Shampoo: + # Memory-efficient approximation for large parameter matrices + else: + n = dX.shape[0] + m = dX.shape[1] + + bufferL = bufferL + (dX**2).sum(axis=1, keepdims=True) + bufferR = bufferR + (dX**2).sum(axis=0, keepdims=True) + + if ((stepCounter > 0) and (stepCounter % preconEvery == 0)): + preconL = preconL + bufferL + preconR = preconR + bufferR + bufferL = bufferL * 0 + bufferR = bufferR * 0 + + if ((stepCounter > 0) and (stepCounter % rootEvery == 0)): + preconLInvPowerRoot = preconL**(-0.25) + preconRInvPowerRoot = preconR**(-0.25) + + preconLMatrix = preconLInvPowerRoot @ np.ones(shape=[1, m]) + preconRMatrix = np.ones(shape=(n, 1)) @ preconRInvPowerRoot + + scaledGrad = momentum * preconLMatrix + scaledGrad = scaledGrad * preconRMatrix + + X = X - lr * scaledGrad + + return(X, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot) + +# init shampoo + +def init_shampoo_heuristic(X, epsilon, useDiagThreshold): + if((X.shape[0] > useDiagThreshold) or (X.shape[1] > useDiagThreshold)): + preconL = np.full(shape=(X.shape[0], 1), fill_value=epsilon, dtype=np.float64) + preconR = np.full(shape=(1, X.shape[1]), fill_value=epsilon, dtype=np.float64) + preconLInvPowerRoot = preconL**(-0.25) + preconRInvPowerRoot = preconR**(-0.25) + useDiag = True + else: + preconL = np.eye(X.shape[0], dtype=np.float64) * epsilon + preconR = np.eye(X.shape[1], dtype=np.float64) * epsilon + preconLInvPowerRoot = np.eye(X.shape[0], dtype=np.float64) * epsilon**(-0.25) + preconRInvPowerRoot = np.eye(X.shape[1], dtype=np.float64) * epsilon**(-0.25) + + useDiag = False + + momentum = X * 0 + bufferR = preconR * 0 + bufferL = preconL * 0 + stepCounter = 0 + momentum = X * 0 + return(preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) + +n = 5 +m = 5 +epsilon = 1e-4 +lr = 0.005 +diagThreshold = 10 +rootEvery=10 +preconEvery=10 + +# define weight matrix +X = np.array([ + [ 0.12, -0.45, 0.33, 0.08, -0.19], + [-0.27, 0.41, -0.05, 0.22, 0.14], + [ 0.09, -0.31, 0.26, -0.48, 0.37], + [ 0.44, 0.06, -0.29, 0.15, -0.11], + [-0.38, 0.24, 0.17, -0.07, 0.52], +], dtype=np.float64) + +# define gradient +dX_main = np.array([ + [ 0.015, -0.022, 0.008, 0.031, -0.012], + [-0.009, 0.027, -0.014, 0.005, 0.019], + [ 0.021, -0.006, 0.011, -0.025, 0.004], + [-0.018, 0.013, -0.029, 0.007, -0.016], + [ 0.010, -0.017, 0.024, -0.003, 0.028], +], dtype=np.float64) + +for diagThreshold in (1, 10): + X_py = X.copy() + dX = dX_main.copy() + + # preconL_py, preconR_py, useDiag_py = init_shampoo(X_py, epsilon, diagThreshold) + # X_py, preconL_py, preconR_py = update_shampoo(X_py, dX, lr, preconL_py, preconR_py, useDiag_py) + + # preconL_py, preconR_py, momentum_py, useDiag_py = init_shampoo_momentum(X_py, epsilon, diagThreshold) + # X_py, preconL_py, preconR_py, momentum_py = update_shampoo_momentum(X_py, dX, lr, preconL_py, preconR_py, momentum_py, useDiag_py) + + preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag = init_shampoo_heuristic(X_py, epsilon, diagThreshold) + X_py, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot = update_shampoo_heuristic(X_py, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) + + print("diagThreshold: " + str(diagThreshold)) + print(X_py) + + \ No newline at end of file diff --git a/src/test/scripts/applications/nn/component/shampoo_test2.dml b/src/test/scripts/applications/nn/component/shampoo_test2.dml new file mode 100644 index 00000000000..750bdeef7c0 --- /dev/null +++ b/src/test/scripts/applications/nn/component/shampoo_test2.dml @@ -0,0 +1,34 @@ +source("scripts/nn/optim/shampoo.dml") as shampoo + +X_main = matrix("0.12 -0.45 0.33 0.08 -0.19 -0.27 0.41 -0.05 0.22 0.14 0.09 -0.31 0.26 -0.48 0.37 0.44 0.06 -0.29 0.15 -0.11 -0.38 0.24 0.17 -0.07 0.52", + rows=5, cols=5 +) + +dX_main = matrix("0.015 -0.022 0.008 0.031 -0.012 -0.009 0.027 -0.014 0.005 0.019 0.021 -0.006 0.011 -0.025 0.004 -0.018 0.013 -0.029 0.007 -0.016 0.010 -0.017 0.024 -0.003 0.028", + rows=5, cols=5 +) + +epsilon = 1e-4 +lr = 0.005 +diagThreshold = 10 +rootEvery = 10 +preconEvery = 10 + +for (diagThreshold in seq(1, 10, 9)){ + X = X_main + dX = dX_main + #[preconL, preconR, useDiag] = shampoo::init(X, epsilon, diagThreshold) + #[X, preconL, preconR] = shampoo::update(X, dX, lr, preconL, preconR, useDiag) + + #[preconL, preconR, momentum, useDiag] = shampoo::init_momentum(X, epsilon, diagThreshold) + #[X, preconL, preconR, momentum] = shampoo::update_momentum(X, dX, lr, preconL, preconR, momentum, useDiag) + + [preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag] = shampoo::init_heuristic(X, epsilon, diagThreshold) + [X, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot] = shampoo::update_heuristic(X, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) + + print("diagThreshold: " + diagThreshold) + print(X) +} + + + From 1f54461a0448e359a5681ba6a7056df64e70cf1b Mon Sep 17 00:00:00 2001 From: Nicolas Date: Mon, 2 Feb 2026 11:10:25 +0100 Subject: [PATCH 2/4] Add missing license headers --- .../shampoo_optimizer/diagram_creation.ipynb | 37 +++++++++++++++---- .../applications/nn/component/shampoo_test.py | 21 +++++++++++ .../nn/component/shampoo_test2.dml | 21 +++++++++++ 3 files changed, 71 insertions(+), 8 deletions(-) diff --git a/scripts/staging/shampoo_optimizer/diagram_creation.ipynb b/scripts/staging/shampoo_optimizer/diagram_creation.ipynb index 251f7e6a4f3..54345970e18 100644 --- a/scripts/staging/shampoo_optimizer/diagram_creation.ipynb +++ b/scripts/staging/shampoo_optimizer/diagram_creation.ipynb @@ -1,5 +1,34 @@ { "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "93259be8", + "metadata": {}, + "outputs": [], + "source": [ + "#-------------------------------------------------------------\n", + "#\n", + "# Licensed to the Apache Software Foundation (ASF) under one\n", + "# or more contributor license agreements. See the NOTICE file\n", + "# distributed with this work for additional information\n", + "# regarding copyright ownership. The ASF licenses this file\n", + "# to you under the Apache License, Version 2.0 (the\n", + "# \"License\"); you may not use this file except in compliance\n", + "# with the License. You may obtain a copy of the License at\n", + "#\n", + "# http://www.apache.org/licenses/LICENSE-2.0\n", + "#\n", + "# Unless required by applicable law or agreed to in writing,\n", + "# software distributed under the License is distributed on an\n", + "# \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n", + "# KIND, either express or implied. See the License for the\n", + "# specific language governing permissions and limitations\n", + "# under the License.\n", + "#\n", + "#-------------------------------------------------------------" + ] + }, { "cell_type": "code", "execution_count": 2, @@ -427,14 +456,6 @@ "plt.show()\n", "figure.savefig(f\"diagrams/diagram_metrics_{dataset}.png\", format=\"png\")" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "65b2c54b", - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/src/test/scripts/applications/nn/component/shampoo_test.py b/src/test/scripts/applications/nn/component/shampoo_test.py index 94028ca443d..6e4e1290cad 100644 --- a/src/test/scripts/applications/nn/component/shampoo_test.py +++ b/src/test/scripts/applications/nn/component/shampoo_test.py @@ -1,3 +1,24 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + import numpy as np # update shampoo diff --git a/src/test/scripts/applications/nn/component/shampoo_test2.dml b/src/test/scripts/applications/nn/component/shampoo_test2.dml index 750bdeef7c0..fcfac1aa03f 100644 --- a/src/test/scripts/applications/nn/component/shampoo_test2.dml +++ b/src/test/scripts/applications/nn/component/shampoo_test2.dml @@ -1,3 +1,24 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + source("scripts/nn/optim/shampoo.dml") as shampoo X_main = matrix("0.12 -0.45 0.33 0.08 -0.19 -0.27 0.41 -0.05 0.22 0.14 0.09 -0.31 0.26 -0.48 0.37 0.44 0.06 -0.29 0.15 -0.11 -0.38 0.24 0.17 -0.07 0.52", From c55931c9ac06a4773f5be18a8da54d02bd1538a2 Mon Sep 17 00:00:00 2001 From: Nicolas Date: Mon, 16 Feb 2026 19:56:08 +0100 Subject: [PATCH 3/4] Finalizing Experiments and Tests --- .../shampoo_optimizer/cifar_creation.py | 83 + .../shampoo_optimizer/diagram_creation.ipynb | 1579 ++++++++++++----- .../diagrams/convergence_times_cifar.png | Bin 0 -> 51797 bytes .../diagrams/convergence_times_mnist.png | Bin 0 -> 48498 bytes .../convergence_times_shampoo_cifar.png | Bin 0 -> 41049 bytes ...vergence_times_shampoo_heuristic_cifar.png | Bin 0 -> 45092 bytes ...vergence_times_shampoo_heuristic_mnist.png | Bin 0 -> 42848 bytes .../convergence_times_shampoo_mnist.png | Bin 0 -> 38759 bytes ...nvergence_times_shampoo_momentum_cifar.png | Bin 0 -> 45215 bytes ...nvergence_times_shampoo_momentum_mnist.png | Bin 0 -> 41096 bytes .../diagrams/diagram_metrics_cifar.png | Bin 0 -> 56790 bytes .../diagrams/diagram_metrics_mnist.png | Bin 65314 -> 82375 bytes .../run_times_shampoo_total_cifar.png | Bin 0 -> 86501 bytes .../run_times_shampoo_total_mnist.png | Bin 0 -> 81043 bytes ..._diagonal_nondiagonal_comparison_cifar.png | Bin 0 -> 43736 bytes ..._diagonal_nondiagonal_comparison_mnist.png | Bin 0 -> 43729 bytes ..._diagonal_nondiagonal_comparison_cifar.png | Bin 0 -> 50348 bytes ..._diagonal_nondiagonal_comparison_mnist.png | Bin 0 -> 51166 bytes .../shampoo_implementations_cifar.png | Bin 0 -> 55479 bytes .../shampoo_implementations_mnist.png | Bin 0 -> 49459 bytes ..._diagonal_nondiagonal_comparison_cifar.png | Bin 0 -> 48379 bytes ..._diagonal_nondiagonal_comparison_mnist.png | Bin 0 -> 47654 bytes .../diagrams/total_comparison_cifar.png | Bin 0 -> 80434 bytes .../diagrams/total_comparison_mnist.png | Bin 0 -> 84299 bytes .../diagrams/update_step_times_single_bar.png | Bin 0 -> 157020 bytes .../metrics/metrics_adagrad_cifar.csv | 200 +++ .../metrics/metrics_adagrad_cifar.csv.mtd | 12 + .../metrics/metrics_adagrad_mnist.csv | 30 + .../metrics/metrics_adagrad_mnist.csv.mtd | 12 + .../metrics/metrics_adam_cifar.csv | 290 ++- .../metrics/metrics_adam_cifar.csv.mtd | 8 +- .../metrics/metrics_adam_mnist.csv | 90 +- .../metrics/metrics_adam_mnist.csv.mtd | 8 +- .../metrics/metrics_sgd_cifar.csv | 200 +++ .../metrics/metrics_sgd_cifar.csv.mtd | 12 + .../metrics/metrics_sgd_mnist.csv | 30 + .../metrics/metrics_sgd_mnist.csv.mtd | 12 + .../metrics/metrics_shampoo_cifar.csv | 290 ++- .../metrics/metrics_shampoo_cifar.csv.mtd | 8 +- .../metrics_shampoo_diagonal_cifar.csv | 200 +++ .../metrics_shampoo_diagonal_cifar.csv.mtd | 12 + .../metrics_shampoo_diagonal_mnist.csv | 90 +- .../metrics_shampoo_diagonal_mnist.csv.mtd | 8 +- .../metrics_shampoo_heuristic_cifar.csv | 290 ++- .../metrics_shampoo_heuristic_cifar.csv.mtd | 8 +- ...trics_shampoo_heuristic_diagonal_cifar.csv | 200 +++ ...s_shampoo_heuristic_diagonal_cifar.csv.mtd | 12 + ...trics_shampoo_heuristic_diagonal_mnist.csv | 90 +- ...s_shampoo_heuristic_diagonal_mnist.csv.mtd | 8 +- .../metrics_shampoo_heuristic_mnist.csv | 90 +- .../metrics_shampoo_heuristic_mnist.csv.mtd | 8 +- .../metrics/metrics_shampoo_mnist.csv | 90 +- .../metrics/metrics_shampoo_mnist.csv.mtd | 8 +- .../metrics_shampoo_momentum_cifar.csv | 290 ++- .../metrics_shampoo_momentum_cifar.csv.mtd | 8 +- ...etrics_shampoo_momentum_diagonal_cifar.csv | 200 +++ ...cs_shampoo_momentum_diagonal_cifar.csv.mtd | 12 + ...etrics_shampoo_momentum_diagonal_mnist.csv | 90 +- ...cs_shampoo_momentum_diagonal_mnist.csv.mtd | 8 +- .../metrics_shampoo_momentum_mnist.csv | 90 +- .../metrics_shampoo_momentum_mnist.csv.mtd | 8 +- .../metrics/update_step_times.csv | 18 + .../metrics/update_step_times.csv.mtd | 12 + scripts/staging/shampoo_optimizer/readme.md | 69 + .../shampoo_experiment_time.dml | 174 ++ .../shampoo_optimizer_experiments.dml | 1081 ++++++++--- .../shampoo_optimizer_experiments_resnet.dml | 734 ++++++++ .../applications/nn/component/shampoo_test.py | 58 +- .../nn/component/shampoo_test2.dml | 72 +- 69 files changed, 5343 insertions(+), 1559 deletions(-) create mode 100644 scripts/staging/shampoo_optimizer/cifar_creation.py create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_heuristic_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_heuristic_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_momentum_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_momentum_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/run_times_shampoo_total_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/run_times_shampoo_total_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_diagonal_nondiagonal_comparison_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_diagonal_nondiagonal_comparison_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_heuristic_diagonal_nondiagonal_comparison_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_heuristic_diagonal_nondiagonal_comparison_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_implementations_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_implementations_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_momentum_diagonal_nondiagonal_comparison_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/shampoo_momentum_diagonal_nondiagonal_comparison_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/total_comparison_cifar.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/total_comparison_mnist.png create mode 100644 scripts/staging/shampoo_optimizer/diagrams/update_step_times_single_bar.png create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/metrics/update_step_times.csv create mode 100644 scripts/staging/shampoo_optimizer/metrics/update_step_times.csv.mtd create mode 100644 scripts/staging/shampoo_optimizer/readme.md create mode 100644 scripts/staging/shampoo_optimizer/shampoo_experiment_time.dml create mode 100644 scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments_resnet.dml diff --git a/scripts/staging/shampoo_optimizer/cifar_creation.py b/scripts/staging/shampoo_optimizer/cifar_creation.py new file mode 100644 index 00000000000..9635381bebf --- /dev/null +++ b/scripts/staging/shampoo_optimizer/cifar_creation.py @@ -0,0 +1,83 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- +import torch +from torchvision import datasets, transforms +from torch.utils.data import DataLoader +import pandas as pd +import numpy as np +import os +import os.path + +# check if data already is downloaded +os.makedirs("scripts/staging/shampoo_optimizer/data", exist_ok=True) +data_exists = os.path.exists("scripts/staging/shampoo_optimizer/data/cifar-10-python.tar.gz") +data_exists = not data_exists + +# get data +base = transforms.ToTensor() +train_raw = datasets.CIFAR10(root="scripts/staging/shampoo_optimizer/data", train=True, download=data_exists, transform=base) +raw_loader = DataLoader(train_raw, batch_size=512, shuffle=False, num_workers=0) + +# Mean/Std for each channel +n = 0 +channel_sum = torch.zeros(3) +channel_sum_sq = torch.zeros(3) + +for x, _ in raw_loader: + # x: [B,3,32,32] in [0,1] + b = x.size(0) + x = x.view(b, 3, -1) # [B,3,1024] + channel_sum += x.mean(dim=2).sum(dim=0) + channel_sum_sq += (x ** 2).view(b, 3, -1).mean(dim=2).sum(dim=0) + n += b + +mean = (channel_sum / n).tolist() +std = ((channel_sum_sq / n - torch.tensor(mean) ** 2).sqrt()).tolist() + +# 1. Original (only normalisation) +transform_base = transforms.Compose([ + transforms.ToTensor(), + transforms.Normalize(mean, std), +]) + +# 2. Augmentation (Flip + Crop) +transform_aug = transforms.Compose([ + transforms.RandomCrop(32, padding=4), + transforms.RandomHorizontalFlip(p=1.0), + transforms.ToTensor(), + transforms.Normalize(mean, std), +]) + +train_base = datasets.CIFAR10(root="scripts/staging/shampoo_optimizer/data", train=True, download=False, transform=transform_base) +train_aug = datasets.CIFAR10(root="scripts/staging/shampoo_optimizer/data", train=True, download=False, transform=transform_aug) +full_dataset = torch.utils.data.ConcatDataset([train_base, train_aug]) +loader = DataLoader(full_dataset, batch_size=128, shuffle=True, num_workers=0) + +data = [] +for x_batch, y_batch in loader: + x_batch_reshaped = torch.reshape(x_batch, (x_batch.shape[0], -1)) + batch_reshaped = torch.cat((y_batch.unsqueeze(1), x_batch_reshaped), dim=1) + data.append(batch_reshaped) + +data = torch.vstack(data).cpu().numpy() +df = pd.DataFrame(data) +df[0] = df[0].astype("Int16") +df.to_csv("scripts/staging/shampoo_optimizer/cifar10.csv",index=False, header=False) \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/diagram_creation.ipynb b/scripts/staging/shampoo_optimizer/diagram_creation.ipynb index 54345970e18..82e813777a8 100644 --- a/scripts/staging/shampoo_optimizer/diagram_creation.ipynb +++ b/scripts/staging/shampoo_optimizer/diagram_creation.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "id": "93259be8", "metadata": {}, "outputs": [], @@ -29,398 +29,490 @@ "#-------------------------------------------------------------" ] }, + { + "cell_type": "markdown", + "id": "804d532c", + "metadata": {}, + "source": [ + "## Base functions for showing results" + ] + }, { "cell_type": "code", "execution_count": 2, - "id": "400c10c6", + "id": "d9b8b2c8", + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "from matplotlib import pyplot as plt\n", + "\n", + "def create_diagram(optimizers: list, dataset: str, save_figure: bool, title: str, save_path: str):\n", + " \"\"\"\n", + " Loads per-epoch metrics for multiple optimizers and plots validation loss vs. epochs.\n", + "\n", + " Reads `metrics/metrics_{optimizer}_{dataset}.csv` for each optimizer, expecting columns:\n", + " [epochs, train_losses, train_accuracies, val_losses, val_accuracies, time_for_epoch].\n", + " Aggregates all runs into one DataFrame, plots one line per optimizer, and optionally\n", + " saves the figure as a PNG.\n", + "\n", + " Args:\n", + " optimizers: List of optimizer names to compare (used in the metrics file names).\n", + " dataset: Dataset identifier used in the metrics file names (e.g., \"mnist\", \"cifar\").\n", + " save_figure: If True, saves the plot to `save_path`.\n", + " title: Plot title.\n", + " save_path: Output path for the PNG (only used if `save_figure` is True).\n", + " \"\"\"\n", + " collected_data = pd.DataFrame(columns=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"optimizer\"])\n", + "\n", + " for optimizer in optimizers:\n", + " path = f\"metrics/metrics_{optimizer}_{dataset}.csv\"\n", + " df = pd.read_csv(path, names=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"time_for_epoch\"])\n", + " df[\"optimizer\"] = optimizer\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n", + "\n", + " figure = plt.figure(figsize=(8,8))\n", + " for optimizer in optimizers:\n", + " optimzer_data = collected_data[collected_data[\"optimizer\"]==optimizer]\n", + " plt.plot(optimzer_data[\"epochs\"], optimzer_data[\"val_losses\"], label = optimizer)\n", + "\n", + " plt.title(title)\n", + " plt.xlabel(\"epochs\")\n", + " plt.ylabel(\"validation loss\")\n", + " plt.legend()\n", + " if save_figure:\n", + " figure.savefig(save_path, format=\"png\")\n", + " plt.show()\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "a4008643", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "\n", + "def create_diagram_convergence(optimizers: list, dataset: str, save_figure: bool, title: str, save_path: str):\n", + " \"\"\"\n", + " Computes and visualizes convergence time per optimizer based on validation loss.\n", + "\n", + " For each optimizer, this function loads `metrics/metrics_{optimizer}_{dataset}.csv`\n", + " with columns:\n", + " [epochs, train_losses, train_accuracies, val_losses, val_accuracies, time_for_epoch].\n", + "\n", + " Convergence is defined as the epoch where `val_losses` reaches its minimum.\n", + " The convergence time is the cumulative sum of `time_for_epoch` from epoch 1 up to\n", + " (and including) that best epoch. Results are sorted by convergence time (fastest first)\n", + " and plotted as a bar chart with one distinct color per optimizer and a seconds label\n", + " above each bar.\n", + "\n", + " Args:\n", + " optimizers: List of optimizer names to compare (used in the metrics file names).\n", + " dataset: Dataset identifier used in the metrics file names (e.g., \"mnist\", \"cifar\").\n", + " save_figure: If True, saves the plot to `save_path`.\n", + " title: Plot title.\n", + " save_path: Output path for the PNG (only used if `save_figure` is True).\n", + " \"\"\"\n", + " collected_data = pd.DataFrame(columns=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"optimizer\"])\n", + "\n", + " for optimizer in optimizers:\n", + " path = f\"metrics/metrics_{optimizer}_{dataset}.csv\"\n", + " df = pd.read_csv(path, names=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"time_for_epoch\"])\n", + " df[\"optimizer\"] = optimizer\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n", + "\n", + " figure = plt.figure(figsize=(15,8))\n", + "\n", + " times = []\n", + " epochs_to_converge = []\n", + "\n", + " for optimizer in optimizers:\n", + " optimzer_data = collected_data[collected_data[\"optimizer\"] == optimizer].copy()\n", + " optimzer_data = optimzer_data.sort_values(\"epochs\")\n", + "\n", + " idx = optimzer_data[\"val_losses\"].astype(float).idxmin()\n", + " epoch_to_converge = float(optimzer_data.loc[idx, \"epochs\"])\n", + " time_until_convergence = float(optimzer_data.loc[optimzer_data[\"epochs\"] <= epoch_to_converge, \"time_for_epoch\"].sum())\n", + "\n", + " times.append(time_until_convergence)\n", + " epochs_to_converge.append(epoch_to_converge)\n", + "\n", + " # sort by convergence time\n", + " sorted_idx = np.argsort(times)\n", + " optimizers = [optimizers[i] for i in sorted_idx]\n", + " times = [times[i] for i in sorted_idx]\n", + " epochs_to_converge = [epochs_to_converge[i] for i in sorted_idx]\n", + "\n", + " # one color per optimizer\n", + " cmap = plt.get_cmap(\"tab10\")\n", + " colors = [cmap(i % 10) for i in range(len(optimizers))]\n", + "\n", + " bars = plt.bar(optimizers, times, color=colors)\n", + " plt.title(title)\n", + " plt.xlabel(\"optimizer\")\n", + " plt.ylabel(\"time until best val loss (sec)\")\n", + " plt.xticks(rotation=25, ha=\"right\")\n", + "\n", + " for bar, t, e in zip(bars, times, epochs_to_converge):\n", + " plt.text(\n", + " bar.get_x() + bar.get_width() / 2,\n", + " bar.get_height(),\n", + " f\"{t:.2f}s\",\n", + " ha=\"center\",\n", + " va=\"bottom\",\n", + " fontsize=10\n", + " )\n", + "\n", + "\n", + " if save_figure:\n", + " figure.savefig(save_path, format=\"png\")\n", + " plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "185e4aa9", + "metadata": {}, + "outputs": [], + "source": [ + "def create_diagram_total_runtime(optimizers: list, dataset: str, save_figure: bool, title: str, save_path: str):\n", + " \"\"\"\n", + " Computes and visualizes total training runtime per optimizer across all epochs.\n", + "\n", + " For each optimizer, this function loads `metrics/metrics_{optimizer}_{dataset}.csv`\n", + " with columns:\n", + " [epochs, train_losses, train_accuracies, val_losses, val_accuracies, time_for_epoch].\n", + "\n", + " The total runtime is defined as the sum of `time_for_epoch` over all recorded epochs.\n", + " Results are sorted by total runtime (fastest first) and plotted as a bar chart with\n", + " one distinct color per optimizer and a seconds label above each bar.\n", + "\n", + " Args:\n", + " optimizers: List of optimizer names to compare (used in the metrics file names).\n", + " dataset: Dataset identifier used in the metrics file names (e.g., \"mnist\", \"cifar\").\n", + " save_figure: If True, saves the plot to `save_path`.\n", + " title: Plot title.\n", + " save_path: Output path for the PNG (only used if `save_figure` is True).\n", + " \"\"\"\n", + " collected_data = pd.DataFrame(columns=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"optimizer\"])\n", + "\n", + " for optimizer in optimizers:\n", + " path = f\"metrics/metrics_{optimizer}_{dataset}.csv\"\n", + " df = pd.read_csv(path, names=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"time_for_epoch\"])\n", + " df[\"optimizer\"] = optimizer\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n", + "\n", + " figure = plt.figure(figsize=(15,8))\n", + "\n", + " runtimes = []\n", + " epochs_total = []\n", + "\n", + " for optimizer in optimizers:\n", + " optimzer_data = collected_data[collected_data[\"optimizer\"] == optimizer].copy()\n", + " optimzer_data = optimzer_data.sort_values(\"epochs\")\n", + "\n", + " runtime = float(optimzer_data[\"time_for_epoch\"].astype(float).sum())\n", + " runtimes.append(runtime)\n", + "\n", + " epochs_total.append(int(optimzer_data[\"epochs\"].max()))\n", + "\n", + " # sort by total runtime (ascending)\n", + " sorted_idx = np.argsort(runtimes)\n", + " optimizers = [optimizers[i] for i in sorted_idx]\n", + " runtimes = [runtimes[i] for i in sorted_idx]\n", + " epochs_total = [epochs_total[i] for i in sorted_idx]\n", + "\n", + " # colors\n", + " cmap = plt.get_cmap(\"tab10\")\n", + " colors = [cmap(i % 10) for i in range(len(optimizers))]\n", + "\n", + " bars = plt.bar(optimizers, runtimes, color=colors)\n", + "\n", + " plt.title(title)\n", + " plt.xlabel(\"optimizer\")\n", + " plt.ylabel(\"total runtime (sec)\")\n", + " plt.xticks(rotation=25, ha=\"right\")\n", + "\n", + " # labels on bars (seconds + epochs)\n", + " for bar, rt, ep in zip(bars, runtimes, epochs_total):\n", + " plt.text(\n", + " bar.get_x() + bar.get_width() / 2,\n", + " bar.get_height(),\n", + " f\"{rt:.2f}s\",\n", + " ha=\"center\",\n", + " va=\"bottom\",\n", + " fontsize=10\n", + " )\n", + "\n", + " plt.tight_layout()\n", + "\n", + " if save_figure:\n", + " figure.savefig(save_path, format=\"png\", dpi=150, bbox_inches=\"tight\")\n", + "\n", + " plt.show()\n", + "\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "c86bfc26", + "metadata": {}, + "outputs": [], + "source": [ + "from matplotlib.patches import Patch\n", + "\n", + "def create_diagram_single_step_times(\n", + " optimizers_to_experiment: list,\n", + " csv_path: str,\n", + " title: str,\n", + " save_figure: bool,\n", + " save_path: str,\n", + " log_y: bool = False\n", + "):\n", + " \"\"\"\n", + " Plots single-step (per-update) runtimes.\n", + "\n", + " Reads `csv_path` containing rows:\n", + " [optimizer_index, diagThreshold, diagonalFlag, time_sec], maps optimizer_index to\n", + " names via `optimizers_to_experiment`, and builds a bar chart sorted by runtime.\n", + "\n", + " For Shampoo variants (\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\"), both\n", + " diagonal and non-diagonal modes are plotted as separate bars (distinguished by\n", + " hatching). For non-Shampoo optimizers, only the fastest measured time is shown.\n", + "\n", + " Args:\n", + " optimizers_to_experiment: Optimizer names in the same order as used to write\n", + " optimizer_index in the CSV.\n", + " csv_path: Path to the timing CSV (no header).\n", + " title: Plot title.\n", + " save_figure: If True, saves the plot to `save_path`.\n", + " save_path: Output path for the PNG (only used if `save_figure` is True).\n", + " log_y: If True, uses a log-scaled y-axis for better visibility across\n", + " large runtime differences.\n", + " \"\"\"\n", + " # CSV: optimizer_index, diagThreshold, diagonalFlag, time_sec\n", + " collected_data = pd.read_csv(\n", + " csv_path,\n", + " header=None,\n", + " names=[\"optimizer_index\", \"diagThreshold\", \"diagonal\", \"time_sec\"]\n", + " )\n", + "\n", + " # index -> optimizer name\n", + " idx_to_name = {i + 1: optimizers_to_experiment[i] for i in range(len(optimizers_to_experiment))}\n", + " collected_data[\"optimizer\"] = collected_data[\"optimizer_index\"].map(idx_to_name)\n", + "\n", + " # diagonalFlag -> string\n", + " collected_data[\"mode\"] = np.where(collected_data[\"diagonal\"] == 1, \"diagonal\", \"non-diagonal\")\n", + "\n", + "\n", + " shampoo_variants = {\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\"}\n", + "\n", + " bars = [] # (label, time_sec, base_optimizer, mode)\n", + " for optimizer in optimizers_to_experiment:\n", + " optimizer_data = collected_data[collected_data[\"optimizer\"] == optimizer].copy()\n", + "\n", + " if optimizer in shampoo_variants:\n", + " # both modi ((non)diagonal)\n", + " for mode in [\"diagonal\", \"non-diagonal\"]:\n", + " mode_data = optimizer_data[optimizer_data[\"mode\"] == mode]\n", + " if len(mode_data) == 0:\n", + " continue\n", + " time_value = float(mode_data[\"time_sec\"].min())\n", + " label = f\"{optimizer} {mode}\"\n", + " bars.append((label, time_value, optimizer, mode))\n", + " else:\n", + " # non-shampoo: take the fastest of both values\n", + " time_value = float(optimizer_data[\"time_sec\"].min())\n", + " label = optimizer\n", + " bars.append((label, time_value, optimizer, \"best\"))\n", + "\n", + " # sort from fast to slow\n", + " bars.sort(key=lambda x: x[1])\n", + "\n", + " labels = [b[0] for b in bars]\n", + " times = [b[1] for b in bars]\n", + " base_opts = [b[2] for b in bars]\n", + " modes = [b[3] for b in bars]\n", + "\n", + " figure = plt.figure(figsize=(15, 7))\n", + "\n", + " # per base optimizer one color\n", + " cmap = plt.get_cmap(\"tab10\")\n", + " unique_base = []\n", + " for b in base_opts:\n", + " if b not in unique_base:\n", + " unique_base.append(b)\n", + " color_map = {b: cmap(i % 10) for i, b in enumerate(unique_base)}\n", + " colors = [color_map[b] for b in base_opts]\n", + "\n", + " # Hatches: diagonal vs non-diagonal for Shampoo\n", + " hatches = []\n", + " for m in modes:\n", + " if m == \"diagonal\":\n", + " hatches.append(\"//\")\n", + " elif m == \"non-diagonal\":\n", + " hatches.append(\"\")\n", + " else:\n", + " hatches.append(\"\") # non-shampoo (best)\n", + "\n", + " bar_container = plt.bar(labels, times, color=colors)\n", + " for rect, hatch in zip(bar_container, hatches):\n", + " rect.set_hatch(hatch)\n", + "\n", + " plt.title(title)\n", + " plt.xlabel(\"optimizer\")\n", + " plt.ylabel(\"time per update (sec)\")\n", + " if log_y:\n", + " plt.yscale(\"log\")\n", + " plt.ylabel(\"time per update (sec, log scale)\")\n", + "\n", + " # annotate seconds\n", + " for rect, t in zip(bar_container, times):\n", + " plt.text(\n", + " rect.get_x() + rect.get_width()/2,\n", + " rect.get_height(),\n", + " f\"{t:.2e}s\",\n", + " ha=\"center\",\n", + " va=\"bottom\",\n", + " fontsize=9\n", + " )\n", + "\n", + " plt.xticks(rotation=25, ha=\"right\")\n", + "\n", + " # legend for Hatches\n", + " legend_handles = [\n", + " Patch(facecolor=\"white\", edgecolor=\"black\", hatch=\"//\", label=\"diagonal (Shampoo only)\"),\n", + " Patch(facecolor=\"white\", edgecolor=\"black\", hatch=\"\", label=\"non-diagonal (Shampoo only)\"),\n", + " Patch(facecolor=\"white\", edgecolor=\"black\", hatch=\"\", label=\"best-case (non-Shampoo)\")\n", + " ]\n", + " plt.legend(handles=legend_handles, loc=\"upper left\")\n", + "\n", + " plt.tight_layout()\n", + "\n", + " if save_figure:\n", + " figure.savefig(save_path, dpi=150, bbox_inches=\"tight\")\n", + "\n", + " plt.show()\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "id": "17953fe6", + "metadata": {}, + "source": [ + "## Experiment 0: Comparison between shampoo diagonal vs non-diagonal implementations on MNIST and CIFAR10" + ] + }, + { + "cell_type": "markdown", + "id": "60fb5090", + "metadata": {}, + "source": [ + "### Comparison of shampoo vs shampoo_diagonal" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "c3cdcd44", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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9O+//45evXrByckJ7u7uGDZsGE6ePGmwj+49fu7cOcTGxsLd3R1ubm6Ii4tDQUGBwb7GvveN0b59e/Tt27fCdo1GgyZNmmDkyJH6bZb4/Xfx4kVMnDgRrVu3hqOjI7y8vPDwww9X+P1g7HstJCQEx48fxx9//GH0v+zz8/Mxbdo0BAUFQaFQoHXr1liyZEmF3/+6x/Xjjz+iffv2UCgUaNeunf6xGaN79+5o3rw5vvrqK4PtX375JQYNGgRPT89K7+fi4oIXXngBP//8c4VsYIykpCS0a9eu0kErX19fk9sziiC9Jk2aiNDQUKP3HzdunAAgRo4cKVauXCnGjh0rAIjhw4cb7BccHCxat24tAgICxJw5c8S7774rmjRpIpydncUXX3whmjVrJhYuXCgWLlwo3NzcRIsWLYRarTY4joODg2jZsqV44oknxIoVK8T9998vAIhZs2YZHKtp06Zi4sSJYsWKFWLp0qWiW7duAoD45ZdfDPYDINq0aSN8fHzE3LlzxcqVK8W///6rv+3111/X7ztmzBghl8tFfHy8+N///icWLVokhg4dKr744gv9Pp999pkAILp27Sreffdd8fLLLwtHR0cREhIibt68WeGxtGvXTjz55JPigw8+EA899JAAIFatWlXtc/76668LACI6OlosX75cTJ48WchkMtG1a1ehUqmEEEL88MMPYsSIEQKA+OCDD8S6devEkSNHqmyzR48ews3NTbz22mvif//7n3jrrbdE3759xR9//FHhNfTz8xOvvPKKWLFihbjrrruERCIR//33n36/AwcOiLCwMPHyyy+LDz/8UMybN080adJEuLm5iStXruj327lzpwAgIiMjRffu3cX7778vnn/+eSGRSMQjjzwixowZIwYPHixWrlwpnnjiCQFAzJ07t8Jr2L59e+Ht7S3mzZsnFi1aJIKDg4Wjo6M4duyYfr///vtPODk5iYCAADF//nyxcOFC0bx5c6FQKMTff/+t3y81NVX4+fkJFxcX8eqrr4qlS5eKjh07CqlUKjZu3FjtaxMcHCzGjRun/173nujUqZPo16+fWL58uZg2bZqQyWRi1KhRd2xrz549YsCAAQKAWLdunf4ihBAXLlzQt9uiRQuxaNEisXjxYuHt7S2aNm2qfx/oHrubm5to27atWLRokVixYoW49957hUQiqfYxaTQace+9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RERECcZuMSHbbUK2e2DBGVBmRPEF5Ugg9gbR5QvEDPWK3hd5H4A7aWRMI8kATEREREQqg8GgDkXKdNq0LmdQcFAVEREREekKAzARERER6QoDMBERERHpCgMwEREREekKAzARERER6QoDMBERERHpCgMwEREREekKAzARERER6QoDMBERERHpCgMwEREREekKAzARERER6QoDMBERERHpCgMwEREREekKAzARERER6QoDMBERERHpCgMwEREREekKAzARERER6QoDMBERERHpCgMwEREREekKAzARERER6QoDMBERERHpCgMwEREREekKAzARERER6QoDMBERERHpCgMwEREREemKWesChiMhBACgs7NT40qIiIiIqD/hnBbObQPBANyPrq4uAMCYMWM0roSIiIiIrqWrqwtut3tAnzGIm4nNCU6WZVy6dAlOpxMGg6HfYzo7OzFmzBhcuHABLpdriCskgOdgOOA50B7PgfZ4DoYHngftDfU5EEKgq6sLubm5MBoHNqqXPcD9MBqNyMvLu6FjXS4XG5rGeA60x3OgPZ4D7fEcDA88D9obynMw0J7fMN4ER0RERES6wgBMRERERLrCAHyTbDYbNm7cCJvNpnUpusVzoD2eA+3xHGiP52B44HnQ3kg6B7wJjoiIiIh0hT3ARERERKQrDMBEREREpCsMwERERESkKwzARERERKQrDMA34dVXX0VhYSHsdjvKyspw+PBhrUvSlU2bNsFgMMQsEydO1LqshPbJJ59g0aJFyM3NhcFgwF/+8peY/UIIvPDCC8jJyUFSUhLmzZuH06dPa1NsgrreOXjooYeuaBcLFizQptgEtWXLFkybNg1OpxOjR4/G4sWLUVNTE3OM1+vF6tWrkZ6eDofDgaVLl+Ly5csaVZx4buQcfPvb376iLfz4xz/WqOLE89prr6GkpER92EV5eTn+8Y9/qPtHShtgAB6gt99+G2vXrsXGjRvx73//G6WlpZg/fz4aGxu1Lk1XJk+ejPr6enX517/+pXVJCa2npwelpaV49dVX+93/8ssvY/v27Xj99dfx6aefIiUlBfPnz4fX6x3iShPX9c4BACxYsCCmXezatWsIK0x8FRUVWL16NQ4dOoQPPvgAgUAAd999N3p6etRj1qxZg/fffx/vvvsuKioqcOnSJSxZskTDqhPLjZwDAHj00Udj2sLL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DUePHoXZbMaqVavUfStWrEBeXh6OHDmCqqoq/PznP4fFYhncL4aIKI4MQgihdRFERKT0zKalpeHDDz9EeXm5uv2RRx6Bx+PBY489hjlz5uCtt97C8uXLAQCtra3Iy8vDjh07sGzZMqxYsQJNTU3Yu3ev+vlnnnkGe/bswYkTJ3Dq1ClMmDABH3zwAebNm3dFDfv378ecOXPw4YcfYu7cuQCAv//977jnnnvQ29sLu90Ol8uFV155BStXrhzkb4SIaHCwB5iIaJg4c+YMPB4Pvvvd78LhcKjLm2++idraWvW46HCclpaGCRMm4OTJkwCAkydPYubMmTE/d+bMmTh9+jQkSUJ1dTVMJhNmz559zVpKSkrU9ZycHABAY2MjAGDt2rV45JFHMG/ePGzdujWmNiKikYABmIhomOju7gYA7NmzB9XV1ery+eefq+OAv66kpKQbOi56SIPBYACgjE8GgE2bNuHEiRO45557sG/fPkyaNAm7d++OS31EREOBAZiIaJiYNGkSbDYb6urqUFxcHLOMGTNGPe7QoUPqeltbG06dOoXbbrsNAHDbbbfhwIEDMT/3wIEDGD9+PEwmE6ZMmQJZlmPGFN+M8ePHY82aNdi7dy+WLFmCN95442v9PCKioWTWugAiIlI4nU48/fTTWLNmDWRZxje/+U10dHTgwIEDcLlcKCgoAAC8+OKLSE9PR1ZWFp5//nlkZGRg8eLFAICf/exnmDZtGl566SUsX74clZWV+M1vfoPf/va3AIDCwkKsXLkSq1atwvbt21FaWorz58+jsbERy5Ytu26Nvb29WLduHe677z4UFRXh4sWLOHLkCJYuXTpo3wsRUbwxABMRDSMvvfQSMjMzsWXLFnz55ZdITU3FHXfcgfXr16tDELZu3Yonn3wSp0+fxje+8Q28//77sFqtAIA77rgD77zzDl544QW89NJLyMnJwYsvvoiHHnpI/TNee+01rF+/Ho8//jhaWlqQn5+P9evX31B9JpMJLS0tePDBB3H58mVkZGRgyZIl2Lx5c9y/CyKiwcJZIIiIRojwDA1tbW1ITU3VuhwiohGLY4CJiIiISFcYgImIiIhIVzgEgoiIiIh0hT3ARERERKQrDMBEREREpCsMwERERESkKwzARERERKQrDMBEREREpCsMwERERESkKwzARERERKQrDMBEREREpCv/HzYt9D0FcHDQAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_diagonal\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison of shampoo in the diagonal and non-diagonal variant on MNIST\"\n", + "save_path = f\"diagrams/shampoo_diagonal_nondiagonal_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "20cc7da0", "metadata": {}, "outputs": [ { - "name": "stdout", + "name": "stderr", "output_type": "stream", "text": [ - " epochs train_losses train_accuracies val_losses val_accuracies \\\n", - "0 1.0 1.529923 0.615625 0.416351 0.873 \n", - "1 2.0 0.250601 0.927000 0.229524 0.916 \n", - "2 3.0 0.154800 0.954250 0.162009 0.940 \n", - "3 4.0 0.113356 0.964625 0.135608 0.955 \n", - "4 5.0 0.090430 0.971625 0.123288 0.963 \n", - "5 6.0 0.076361 0.976625 0.114561 0.968 \n", - "6 7.0 0.066914 0.979625 0.109109 0.969 \n", - "7 8.0 0.059269 0.982500 0.105038 0.971 \n", - "8 9.0 0.053242 0.983750 0.101710 0.971 \n", - "9 10.0 0.048538 0.985125 0.099977 0.971 \n", - "10 11.0 0.044405 0.985750 0.098380 0.971 \n", - "11 12.0 0.040600 0.987250 0.097781 0.972 \n", - "12 13.0 0.037342 0.988250 0.097132 0.974 \n", - "13 14.0 0.034315 0.988750 0.096922 0.974 \n", - "14 15.0 0.031616 0.989750 0.097324 0.976 \n", - "15 16.0 0.029328 0.990125 0.096786 0.974 \n", - "16 17.0 0.027317 0.990875 0.096020 0.975 \n", - "17 18.0 0.025400 0.991250 0.094932 0.975 \n", - "18 19.0 0.023850 0.992375 0.094315 0.975 \n", - "19 20.0 0.022360 0.992875 0.094448 0.975 \n", - "20 21.0 0.021041 0.993375 0.094068 0.976 \n", - "21 22.0 0.019816 0.993750 0.093970 0.976 \n", - "22 23.0 0.018703 0.994375 0.093682 0.976 \n", - "23 24.0 0.017558 0.995000 0.093167 0.976 \n", - "24 25.0 0.016504 0.995375 0.093128 0.976 \n", - "25 26.0 0.015547 0.996000 0.093137 0.976 \n", - "26 27.0 0.014641 0.996250 0.092622 0.975 \n", - "27 28.0 0.013850 0.996375 0.092436 0.975 \n", - "28 29.0 0.013045 0.996750 0.091737 0.974 \n", - "29 30.0 0.012308 0.996875 0.091197 0.974 \n", - "30 31.0 0.011605 0.997375 0.090616 0.973 \n", - "31 32.0 0.010950 0.997625 0.089798 0.973 \n", - "32 33.0 0.010404 0.997625 0.089589 0.973 \n", - "33 34.0 0.009935 0.997750 0.089403 0.973 \n", - "34 35.0 0.009448 0.997750 0.088787 0.973 \n", - "35 36.0 0.008966 0.997875 0.088232 0.974 \n", - "36 37.0 0.008522 0.998250 0.088025 0.973 \n", - "37 38.0 0.008150 0.998375 0.088028 0.973 \n", - "38 39.0 0.007784 0.998500 0.087388 0.973 \n", - "39 40.0 0.007437 0.998500 0.087394 0.973 \n", - "40 41.0 0.007119 0.998625 0.087162 0.973 \n", - "41 42.0 0.006813 0.998625 0.086621 0.974 \n", - "42 43.0 0.006518 0.998750 0.086615 0.975 \n", - "43 44.0 0.006219 0.999000 0.086452 0.973 \n", - "44 45.0 0.005936 0.999250 0.086182 0.973 \n", - "45 46.0 0.005689 0.999250 0.085994 0.973 \n", - "46 47.0 0.005452 0.999250 0.086067 0.973 \n", - "47 48.0 0.005212 0.999250 0.085938 0.973 \n", - "48 49.0 0.004984 0.999250 0.085857 0.973 \n", - "49 50.0 0.004777 0.999375 0.085784 0.973 \n", - "50 51.0 0.004596 0.999375 0.086051 0.973 \n", - "51 52.0 0.004398 0.999375 0.085878 0.974 \n", - "52 53.0 0.004203 0.999500 0.085930 0.974 \n", - "53 54.0 0.004026 0.999500 0.085631 0.974 \n", - "54 55.0 0.003847 0.999625 0.085347 0.975 \n", - "55 56.0 0.003690 0.999750 0.085356 0.975 \n", - "56 57.0 0.003528 0.999875 0.085206 0.975 \n", - "57 58.0 0.003375 1.000000 0.085179 0.976 \n", - "58 59.0 0.003247 1.000000 0.085019 0.976 \n", - "59 60.0 0.003124 1.000000 0.084813 0.977 \n", - "\n", - " optimizer \n", - "0 shampoo \n", - "1 shampoo \n", - "2 shampoo \n", - "3 shampoo \n", - "4 shampoo \n", - "5 shampoo \n", - "6 shampoo \n", - "7 shampoo \n", - "8 shampoo \n", - "9 shampoo \n", - "10 shampoo \n", - "11 shampoo \n", - "12 shampoo \n", - "13 shampoo \n", - "14 shampoo \n", - "15 shampoo \n", - "16 shampoo \n", - "17 shampoo \n", - "18 shampoo \n", - "19 shampoo \n", - "20 shampoo \n", - "21 shampoo \n", - "22 shampoo \n", - "23 shampoo \n", - "24 shampoo \n", - "25 shampoo \n", - "26 shampoo \n", - "27 shampoo \n", - "28 shampoo \n", - "29 shampoo \n", - "30 shampoo \n", - "31 shampoo \n", - "32 shampoo \n", - "33 shampoo \n", - "34 shampoo \n", - "35 shampoo \n", - "36 shampoo \n", - "37 shampoo \n", - "38 shampoo \n", - "39 shampoo \n", - "40 shampoo \n", - "41 shampoo \n", - "42 shampoo \n", - "43 shampoo \n", - "44 shampoo \n", - "45 shampoo \n", - "46 shampoo \n", - "47 shampoo \n", - "48 shampoo \n", - "49 shampoo \n", - "50 shampoo \n", - "51 shampoo \n", - "52 shampoo \n", - "53 shampoo \n", - "54 shampoo \n", - "55 shampoo \n", - "56 shampoo \n", - "57 shampoo \n", - "58 shampoo \n", - "59 shampoo \n", - " epochs train_losses train_accuracies val_losses val_accuracies \\\n", - "0 1.0 0.639533 0.801500 0.327239 0.902 \n", - "1 2.0 0.184752 0.945375 0.221243 0.937 \n", - "2 3.0 0.134242 0.959750 0.188511 0.941 \n", - "3 4.0 0.100303 0.970375 0.166702 0.951 \n", - "4 5.0 0.079379 0.976000 0.156010 0.957 \n", - "5 6.0 0.069202 0.979125 0.164982 0.957 \n", - "6 7.0 0.060592 0.981250 0.171788 0.958 \n", - "7 8.0 0.054129 0.982750 0.163366 0.962 \n", - "8 9.0 0.048112 0.985375 0.149752 0.963 \n", - "9 10.0 0.042714 0.987625 0.135282 0.964 \n", - "10 11.0 0.037989 0.989000 0.122572 0.966 \n", - "11 12.0 0.033369 0.990125 0.114374 0.968 \n", - "12 13.0 0.029285 0.991125 0.106545 0.973 \n", - "13 14.0 0.025636 0.992250 0.100020 0.971 \n", - "14 15.0 0.022314 0.993375 0.093786 0.970 \n", - "15 16.0 0.019570 0.994750 0.088490 0.973 \n", - "16 17.0 0.017252 0.996125 0.084034 0.976 \n", - "17 18.0 0.015548 0.996250 0.082103 0.976 \n", - "18 19.0 0.014139 0.996875 0.080609 0.976 \n", - "19 20.0 0.012960 0.997750 0.078689 0.976 \n", - "20 21.0 0.012004 0.997500 0.077240 0.977 \n", - "21 22.0 0.011114 0.997500 0.076127 0.977 \n", - "22 23.0 0.010281 0.998000 0.075846 0.976 \n", - "23 24.0 0.009678 0.998000 0.074256 0.976 \n", - "24 25.0 0.008997 0.998000 0.073674 0.977 \n", - "25 26.0 0.008524 0.998000 0.072962 0.977 \n", - "26 27.0 0.007974 0.998250 0.072336 0.976 \n", - "27 28.0 0.007519 0.998625 0.071772 0.975 \n", - "28 29.0 0.007067 0.998750 0.070253 0.974 \n", - "29 30.0 0.006566 0.999000 0.069656 0.974 \n", - "30 31.0 0.006089 0.999000 0.068200 0.977 \n", - "31 32.0 0.005608 0.999125 0.066946 0.977 \n", - "32 33.0 0.005141 0.999250 0.065950 0.978 \n", - "33 34.0 0.004759 0.999250 0.064440 0.978 \n", - "34 35.0 0.004381 0.999375 0.063538 0.978 \n", - "35 36.0 0.004047 0.999750 0.062533 0.979 \n", - "36 37.0 0.003787 0.999750 0.061590 0.979 \n", - "37 38.0 0.003497 1.000000 0.060816 0.979 \n", - "38 39.0 0.003270 1.000000 0.060142 0.979 \n", - "39 40.0 0.003096 1.000000 0.059449 0.979 \n", - "40 41.0 0.002915 1.000000 0.059109 0.979 \n", - "41 42.0 0.002747 1.000000 0.058858 0.980 \n", - "42 43.0 0.002602 1.000000 0.058758 0.980 \n", - "43 44.0 0.002453 1.000000 0.058751 0.980 \n", - "44 45.0 0.002325 1.000000 0.058833 0.980 \n", - "45 46.0 0.002200 1.000000 0.059313 0.980 \n", - "46 47.0 0.002075 1.000000 0.059344 0.980 \n", - "47 48.0 0.001972 1.000000 0.059808 0.980 \n", - "48 49.0 0.001866 1.000000 0.060284 0.980 \n", - "49 50.0 0.001785 1.000000 0.060728 0.980 \n", - "50 51.0 0.001703 1.000000 0.061150 0.980 \n", - "51 52.0 0.001626 1.000000 0.061556 0.979 \n", - "52 53.0 0.001560 1.000000 0.061923 0.979 \n", - "53 54.0 0.001492 1.000000 0.062277 0.979 \n", - "54 55.0 0.001441 1.000000 0.062653 0.979 \n", - "55 56.0 0.001381 1.000000 0.063042 0.979 \n", - "56 57.0 0.001333 1.000000 0.063426 0.979 \n", - "57 58.0 0.001282 1.000000 0.063787 0.979 \n", - "58 59.0 0.001239 1.000000 0.064086 0.979 \n", - "59 60.0 0.001195 1.000000 0.064313 0.980 \n", - "\n", - " optimizer \n", - "0 shampoo_momentum \n", - "1 shampoo_momentum \n", - "2 shampoo_momentum \n", - "3 shampoo_momentum \n", - "4 shampoo_momentum \n", - "5 shampoo_momentum \n", - "6 shampoo_momentum \n", - "7 shampoo_momentum \n", - "8 shampoo_momentum \n", - "9 shampoo_momentum \n", - "10 shampoo_momentum \n", - "11 shampoo_momentum \n", - "12 shampoo_momentum \n", - "13 shampoo_momentum \n", - "14 shampoo_momentum \n", - "15 shampoo_momentum \n", - "16 shampoo_momentum \n", - "17 shampoo_momentum \n", - "18 shampoo_momentum \n", - "19 shampoo_momentum \n", - "20 shampoo_momentum \n", - "21 shampoo_momentum \n", - "22 shampoo_momentum \n", - "23 shampoo_momentum \n", - "24 shampoo_momentum \n", - "25 shampoo_momentum \n", - "26 shampoo_momentum \n", - "27 shampoo_momentum \n", - "28 shampoo_momentum \n", - "29 shampoo_momentum \n", - "30 shampoo_momentum \n", - "31 shampoo_momentum \n", - "32 shampoo_momentum \n", - "33 shampoo_momentum \n", - "34 shampoo_momentum \n", - "35 shampoo_momentum \n", - "36 shampoo_momentum \n", - "37 shampoo_momentum \n", - "38 shampoo_momentum \n", - "39 shampoo_momentum \n", - "40 shampoo_momentum \n", - "41 shampoo_momentum \n", - "42 shampoo_momentum \n", - "43 shampoo_momentum \n", - "44 shampoo_momentum \n", - "45 shampoo_momentum \n", - "46 shampoo_momentum \n", - "47 shampoo_momentum \n", - "48 shampoo_momentum \n", - "49 shampoo_momentum \n", - "50 shampoo_momentum \n", - "51 shampoo_momentum \n", - "52 shampoo_momentum \n", - "53 shampoo_momentum \n", - "54 shampoo_momentum \n", - "55 shampoo_momentum \n", - "56 shampoo_momentum \n", - "57 shampoo_momentum \n", - "58 shampoo_momentum \n", - "59 shampoo_momentum \n", - " epochs train_losses train_accuracies val_losses val_accuracies \\\n", - "0 1.0 0.660083 0.791992 0.458462 0.844 \n", - "1 2.0 0.256014 0.923000 0.306052 0.909 \n", - "2 3.0 0.179122 0.947125 0.213270 0.933 \n", - "3 4.0 0.139948 0.957750 0.173651 0.942 \n", - "4 5.0 0.107507 0.967500 0.150592 0.952 \n", - "5 6.0 0.090241 0.971875 0.152722 0.949 \n", - "6 7.0 0.081093 0.974000 0.182535 0.943 \n", - "7 8.0 0.073433 0.976500 0.196313 0.936 \n", - "8 9.0 0.064927 0.979250 0.161399 0.948 \n", - "9 10.0 0.055647 0.982500 0.158130 0.949 \n", - "10 11.0 0.048851 0.984625 0.136853 0.958 \n", - "11 12.0 0.043453 0.986000 0.129564 0.963 \n", - "12 13.0 0.037899 0.988125 0.128100 0.964 \n", - "13 14.0 0.034403 0.989750 0.120332 0.967 \n", - "14 15.0 0.031140 0.990500 0.144659 0.956 \n", - "15 16.0 0.027824 0.992000 0.139351 0.959 \n", - "16 17.0 0.025904 0.992875 0.138057 0.960 \n", - "17 18.0 0.023049 0.994000 0.139043 0.958 \n", - "18 19.0 0.021960 0.993750 0.145674 0.953 \n", - "19 20.0 0.022683 0.992875 0.131017 0.962 \n", - "20 21.0 0.019511 0.993750 0.163879 0.953 \n", - "21 22.0 0.020723 0.993375 0.131990 0.963 \n", - "22 23.0 0.015733 0.995500 0.115951 0.966 \n", - "23 24.0 0.016863 0.994625 0.124647 0.964 \n", - "24 25.0 0.011906 0.996750 0.095556 0.975 \n", - "25 26.0 0.013877 0.995000 0.075135 0.973 \n", - "26 27.0 0.014348 0.995250 0.097998 0.973 \n", - "27 28.0 0.014791 0.995000 0.099138 0.970 \n", - "28 29.0 0.017454 0.995000 0.108553 0.967 \n", - "29 30.0 0.016810 0.994625 0.091436 0.972 \n", - "30 31.0 0.013777 0.995125 0.099723 0.973 \n", - "31 32.0 0.012082 0.995875 0.104254 0.971 \n", - "32 33.0 0.009674 0.997000 0.081663 0.976 \n", - "33 34.0 0.010131 0.997750 0.083600 0.975 \n", - "34 35.0 0.009486 0.996375 0.094651 0.969 \n", - "35 36.0 0.011784 0.996498 0.122534 0.964 \n", - "36 37.0 0.012858 0.995500 0.077891 0.973 \n", - "37 38.0 0.005532 0.998750 0.085279 0.978 \n", - "38 39.0 0.004174 0.999250 0.062567 0.980 \n", - "39 40.0 0.003725 0.999375 0.065963 0.977 \n", - "40 41.0 0.003737 0.999000 0.106305 0.975 \n", - "41 42.0 0.004466 0.998750 0.069676 0.983 \n", - "42 43.0 0.003353 0.999125 0.063304 0.984 \n", - "43 44.0 0.002823 0.999375 0.082333 0.979 \n", - "44 45.0 0.002750 0.999750 0.069678 0.983 \n", - "45 46.0 0.002190 0.999500 0.122289 0.971 \n", - "46 47.0 0.014585 0.994625 0.117514 0.973 \n", - "47 48.0 0.003940 0.999125 0.072986 0.982 \n", - "48 49.0 0.002838 0.999375 0.057956 0.986 \n", - "49 50.0 0.002429 0.999250 0.071051 0.980 \n", - "50 51.0 0.000884 1.000000 0.063533 0.984 \n", - "51 52.0 0.000639 1.000000 0.062502 0.986 \n", - "52 53.0 0.001002 0.999750 0.085928 0.977 \n", - "53 54.0 0.003981 0.998750 0.142024 0.964 \n", - "54 55.0 0.009453 0.997250 0.112729 0.969 \n", - "55 56.0 0.020304 0.994000 0.221027 0.961 \n", - "56 57.0 0.020196 0.992625 0.074609 0.980 \n", - "57 58.0 0.012778 0.996250 0.084888 0.980 \n", - "58 59.0 0.005098 0.998625 0.070511 0.983 \n", - "59 60.0 0.002206 0.999500 0.067209 0.985 \n", - "\n", - " optimizer \n", - "0 adam \n", - "1 adam \n", - "2 adam \n", - "3 adam \n", - "4 adam \n", - "5 adam \n", - "6 adam \n", - "7 adam \n", - "8 adam \n", - "9 adam \n", - "10 adam \n", - "11 adam \n", - "12 adam \n", - "13 adam \n", - "14 adam \n", - "15 adam \n", - "16 adam \n", - "17 adam \n", - "18 adam \n", - "19 adam \n", - "20 adam \n", - "21 adam \n", - "22 adam \n", - "23 adam \n", - "24 adam \n", - "25 adam \n", - "26 adam \n", - "27 adam \n", - "28 adam \n", - "29 adam \n", - "30 adam \n", - "31 adam \n", - "32 adam \n", - "33 adam \n", - "34 adam \n", - "35 adam \n", - "36 adam \n", - "37 adam \n", - "38 adam \n", - "39 adam \n", - "40 adam \n", - "41 adam \n", - "42 adam \n", - "43 adam \n", - "44 adam \n", - "45 adam \n", - "46 adam \n", - "47 adam \n", - "48 adam \n", - "49 adam \n", - "50 adam \n", - "51 adam \n", - "52 adam \n", - "53 adam \n", - "54 adam \n", - "55 adam \n", - "56 adam \n", - "57 adam \n", - "58 adam \n", - "59 adam \n" + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" ] }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAr8AAAK9CAYAAAAt0QTlAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAClV0lEQVR4nOzdd3hTZf8G8PtkdqbQBS2UllEoe5clG0GQ6ctQfMWigAoICCgiP5WhMhRRGSoO4EUQlKGIqICCyJIhe48yBTqA7jZN8vz+OE1oaKEJpDkd9+e6erU9OTn5ZjS9+/R7nkcSQggQEREREZUCKqULICIiIiJyF4ZfIiIiIio1GH6JiIiIqNRg+CUiIiKiUoPhl4iIiIhKDYZfIiIiIio1GH6JiIiIqNRg+CUiIiKiUoPhl4iIiIhKDYbfEkaSJEyePFnpMh7a0qVLERUVBa1WizJlyjzUsSIiItC9e3fXFFZCRUREICYmptBv58KFC5AkCR988EGh39b9bn/x4sW2bZMnT4YkSYrU4w5F7f7l9xwUd4sXL4YkSbhw4YJtW7t27dCuXTvFaipsRfH+lZTff1T4Slz4PXfuHF544QVUqVIFHh4eMBgMaNWqFT7++GNkZGQoXR454OTJk4iJiUHVqlXxxRdfYOHChUqXRE7asGEDfwkRUYmzYMGCIvuHW3JyMqZMmYL69evDx8cHnp6eqFOnDiZMmIB///3Xtl9MTAx8fHzsrtuuXTtIkpTvx8mTJ+32jY6OhiRJ+PTTT/Otw/rHoPVDo9GgQoUKiImJwdWrV/Psv2fPHgwfPhyNGzeGVqst8I/1r776CjVr1oSHhwciIyMxd+5cRx8iG43T1yjCfv75Z/Tr1w96vR6DBg1CnTp1YDQasX37drz66qs4duxYiQ9SGRkZ0GiK99O6detWWCwWfPzxx6hWrZrS5ZQKp06dgkrlur+FN2zYgPnz5xeLAPx///d/eP3115Uug0qYjRs3Kl1CqeOO338LFixAYGCgW/5T5ozz58+jU6dOuHTpEvr164dhw4ZBp9Ph8OHD+Oqrr7B27VqcPn36vseoWLEipk+fnmd7aGio7eszZ85g7969iIiIwLJly/DSSy/d83hTp05F5cqVkZmZid27d2Px4sXYvn07jh49Cg8PD9t+GzZswJdffol69eqhSpUq963z888/x4svvoj//Oc/GDt2LP766y+MGjUK6enpmDBhwn3vX27FOyXlEhsbiyeffBLh4eH4448/EBISYrtsxIgROHv2LH7++WcFKyw8FosFRqMRHh4edi+o4iouLg4AHrrdgRyn1+uVLkExGo2m2P/BSEWPTqdTuoRSoaT9/nsQJpMJTzzxBG7cuIGtW7fikUcesbv83XffxcyZMws8jp+fH/773//ed59vvvkGwcHBmD17Nvr27YsLFy4gIiIi3327du2KJk2aAACGDBmCwMBAzJw5E+vWrUP//v1t+7300kuYMGECPD09MXLkyHuG34yMDEyaNAmPP/44Vq1aBQAYOnQoLBYLpk2bhmHDhqFs2bIF3k+gBLU9zJo1C6mpqfjqq6/sgq9VtWrVMHr0aNv3JpMJ06ZNQ9WqVaHX6xEREYE33ngDWVlZdtez9otu3boVTZo0gaenJ+rWrYutW7cCANasWYO6devCw8MDjRs3xoEDB+yub/33wvnz59GlSxd4e3sjNDQUU6dOhRDCbt8PPvgALVu2REBAADw9PdG4cWPbE5ybJEkYOXIkli1bhtq1a0Ov1+PXX3+1XZZ7tC0lJQVjxoxBREQE9Ho9goOD8eijj+Kff/6xO+b333+Pxo0bw9PTE4GBgfjvf/+b598T1vty9epV9O7dGz4+PggKCsL48eNhNpvv8czYW7Bgga3m0NBQjBgxArdv37Z7vN9++20AQFBQUIE9XNevX8fgwYNRsWJF6PV6hISEoFevXna9d1bbt29HdHQ0PDw8UKVKFfzvf/+zu/zmzZsYP3486tatCx8fHxgMBnTt2hWHDh2y22/r1q2QJAnfffcdpkyZggoVKsDX1xd9+/ZFUlISsrKyMGbMGAQHB8PHxweDBw/O87rK/RzWqFHD9vrZtm1bnroPHDiArl27wmAwwMfHBx07dsTu3bvz7Hf+/Hn069cP/v7+8PLyQvPmzR3+g+/unl/rv6127NiBsWPHIigoCN7e3ujTpw/i4+Pve6yYmBjMnz/fdj+tH3dbuHCh7eevadOm2Lt3b559Tp48ib59+8Lf3x8eHh5o0qQJ1q1b59B9un37NmJiYuDn54cyZcrg2WeftXutWeXXE7to0SJ06NABwcHB0Ov1qFWrVr7/4rNYLJg8eTJCQ0Ph5eWF9u3b4/jx4/n2UDvy/OR+bb377ruoWLEiPDw80LFjR5w9e9Zu37/++gv9+vVDpUqVoNfrERYWhldeeeWB27scPZ4z7wOOPgf5cfY1WNB7CyD/a7dOnTo4fvw42rdvDy8vL1SoUAGzZs1y+HE6duwYOnToAE9PT1SsWBHvvPMOLBZLnv3u7ok1Go1466230LhxY/j5+cHb2xutW7fGli1b8lw3MTERzzzzDAwGg+1xO3ToUL690n/88Qdat24Nb29vlClTBr169cKJEyfs9rG+xs+ePYuYmBiUKVMGfn5+GDx4MNLT0+32dfS174g6deqgffv2ebZbLBZUqFABffv2tW0rjN9/Fy9exPDhw1GjRg14enoiICAA/fr1y/P7wdHXWkREBI4dO4Y///zT9r5WUN9zWloaxo0bh7CwMOj1etSoUQMffPBBnt//1vv1ww8/oE6dOtDr9ahdu7btvt3P6tWrcejQIUyaNClP8AUAg8GAd999t8DjOGL58uXo27cvunfvDj8/Pyxfvtzh67Zu3RqA3J6aW7ly5eDp6Vng9bds2YLExEQMHz7cbvuIESOQlpbm3ACnKCEqVKggqlSp4vD+zz77rAAg+vbtK+bPny8GDRokAIjevXvb7RceHi5q1KghQkJCxOTJk8WcOXNEhQoVhI+Pj/jmm29EpUqVxIwZM8SMGTOEn5+fqFatmjCbzXa34+HhISIjI8Uzzzwj5s2bJ7p37y4AiDfffNPutipWrCiGDx8u5s2bJz788EMRHR0tAIj169fb7QdA1KxZUwQFBYkpU6aI+fPniwMHDtgue/vtt237Dhw4UOh0OjF27Fjx5ZdfipkzZ4oePXqIb775xrbPokWLBADRtGlTMWfOHPH6668LT09PERERIW7dupXnvtSuXVs899xz4tNPPxX/+c9/BACxYMGCAh/zt99+WwAQnTp1EnPnzhUjR44UarVaNG3aVBiNRiGEEGvXrhV9+vQRAMSnn34qli5dKg4dOnTPY7Zs2VL4+fmJ//u//xNffvmleO+990T79u3Fn3/+mec5LFeunHjjjTfEvHnzRKNGjYQkSeLo0aO2/fbu3SuqVq0qXn/9dfH555+LqVOnigoVKgg/Pz9x9epV235btmwRAESDBg1EixYtxCeffCJGjRolJEkSTz75pBg4cKDo2rWrmD9/vnjmmWcEADFlypQ8z2GdOnVEYGCgmDp1qpg5c6YIDw8Xnp6e4siRI7b9jh49Kry9vUVISIiYNm2amDFjhqhcubLQ6/Vi9+7dtv2uX78uypUrJ3x9fcWkSZPEhx9+KOrXry9UKpVYs2ZNgc9NeHi4ePbZZ23fW18TDRs2FB06dBBz584V48aNE2q1WvTv3/++x9q5c6d49NFHBQCxdOlS24cQQsTGxtqOW61aNTFz5kwxa9YsERgYKCpWrGh7HVjvu5+fn6hVq5aYOXOmmDdvnmjTpo2QJKnA+2SxWESbNm2ESqUSw4cPF3PnzhUdOnQQ9erVEwDEokWLbPtaX5e5NW3aVMTExIg5c+aIuXPnis6dOwsAYt68eXb7vfbaawKA6NGjh5g3b54YOnSoqFixoggMDLR7PB19fqyvrYYNG4rGjRuLOXPmiMmTJwsvLy8RHR1td9svv/yy6Natm3jvvffE559/Lp5//nmhVqtF37597fbL7/7lx9HjOfo+4MxzkB9nXoOOvLcIIUTbtm1FaGioCAsLE6NHjxYLFiwQHTp0EADEhg0bCnyMrl27JoKCgkTZsmXF5MmTxfvvvy8iIyNt9yk2Ntbuttq2bWv7Pj4+XoSEhIixY8eKTz/9VMyaNUvUqFFDaLVa2/u3EEKYzWbRokULoVarxciRI8W8efPEo48+KurXr5/ncdu0aZPQaDSievXqYtasWWLKlCkiMDBQlC1b1q4W6+PTsGFD8cQTT4gFCxaIIUOGCADitddes7uPjr72775/+Zk6dapQqVTi2rVrdtv//PNPAUB8//33tm2F8fvv+++/F/Xr1xdvvfWWWLhwoXjjjTdE2bJlRXh4uEhLS7Pt5+hrbe3ataJixYoiKirK9r62cePGe95/i8UiOnToICRJEkOGDBHz5s0TPXr0EADEmDFj8tyv+vXr297rP/roI1GlShXh5eUlEhIS7vs4Dxw4UAAQly5duu9+Vs8++6zw9va229a2bVsRFRUl4uPj7T5SUlJs++zevVsAEH/99ZcQQojnnntO1KpVK8/xrY/n3r177bbPmzfP9rv9XkaMGHHP96t33nlHABA3btyw256VlSVUKpUYO3bs/e94LiUi/CYlJQkAolevXg7tf/DgQQFADBkyxG77+PHjBQDxxx9/2LaFh4cLAGLnzp22bb/99psAIDw9PcXFixdt2z///HMBQGzZssW2zRqyX375Zds2i8UiHn/8caHT6UR8fLxte3p6ul09RqNR1KlTR3To0MFuOwChUqnEsWPH8ty3u3/4/fz8xIgRI+75WBiNRhEcHCzq1KkjMjIybNvXr18vAIi33norz32ZOnWq3TGsv6jvJy4uTuh0OtG5c2e7Pw6sPwxff/21bZv1jTr3Y5OfW7duCQDi/fffv+9+1udw27ZtdvXo9Xoxbtw427bMzEy72oSQw5per7e7z9aAUqdOHbtfrE899ZSQJEl07drV7hgtWrQQ4eHhdtsACABi3759tm0XL14UHh4eok+fPrZtvXv3FjqdTpw7d8627d9//xW+vr6iTZs2tm1jxoyxe1MSQoiUlBRRuXJlERERked+5fcY5Rd+O3XqJCwWi237K6+8ItRqtbh9+/Z9j3evNzBr+A0ICBA3b960bf/xxx8FAPHTTz/ZtnXs2FHUrVtXZGZm2rZZLBbRsmVLERkZed/b/+GHHwQAMWvWLNs2k8kkWrdu7VD4vftnUQghunTpYvcH9vXr14VGo8nzB/PkyZMFALvH09Hnx/raqlmzpsjKyrLt+/HHHwsAdn8Y5Vfj9OnThSRJdu9LjoZfR4/n6PuAM89Bfhx9DTrz3tK2bVsBQPzvf/+zbcvKyhLly5cX//nPf+5bjxB3nse///7bti0uLk74+fkVGH5NJpPdcyqE/B5Wrlw58dxzz9m2rV69WgAQH330kW2b2Wy2hfTcj1uDBg1EcHCwSExMtG07dOiQUKlUYtCgQbZt1tdA7tsRQog+ffqIgIAAu22OvPbzu3/5OXXqlAAg5s6da7d9+PDhwsfHx+62CuP3X373ZdeuXXleA86839WuXbvA+21l/Rl455137Lb37dtXSJIkzp49a1e7Tqez23bo0KF8H7+7NWzYUPj5+TlUkxD3Dr/W30u5P3K/j40cOVKEhYXZHqONGzcKAHZ/vAlx5/HcvHmziI+PF5cvXxarVq0SQUFBQq/Xi8uXL9+ztvuF3xEjRgi1Wp3vZUFBQeLJJ5904N7LSkTbQ3JyMgDA19fXof03bNgAABg7dqzd9nHjxgFAnqHzWrVqoUWLFrbvmzVrBgDo0KEDKlWqlGf7+fPn89zmyJEjbV9b/71hNBqxefNm2/bcw/63bt1CUlISWrdunadFAQDatm2LWrVqFXBP5b7Zv//+2+5Mz9z27duHuLg4DB8+3K5f6vHHH0dUVFS+/0Z48cUX7b5v3bp1vvc5t82bN8NoNGLMmDF2J1YNHToUBoPhgfqxPT09odPpsHXrVty6deu++9aqVcv2LxdAbqmoUaOGXd16vd5Wm9lsRmJiInx8fFCjRo18n4NBgwZBq9Xavm/WrBmEEHjuuefs9mvWrBkuX74Mk8lkt71FixZo3Lix7ftKlSqhV69e+O2332A2m2E2m7Fx40b07t0bVapUse0XEhKCgQMHYvv27bbX/oYNGxAdHW33Ly8fHx8MGzYMFy5cwPHjx+/7+NzLsGHD7FoCWrduDbPZjIsXLz7Q8awGDBhg15tlfW6sz8fNmzfxxx9/oH///khJSUFCQgISEhKQmJiILl264MyZM/meNWy1YcMGaDQau5Mx1Go1Xn75ZYfqy/2zmJSUhISEBLRt2xbnz59HUlISAOD333+HyWTK8y+4/G7D2edn8ODBdj2jdz8+d9eYlpaGhIQEtGzZEkKIPO1Xzt5nR45X0PvAwz4HVgW9Bp19b/Hx8bHra9TpdIiOji7wPcx6n5o3b47o6GjbtqCgIDz99NMFXletVtueU4vFgps3b8JkMqFJkyZ27y+//vortFothg4datumUqkwYsQIu+Ndu3YNBw8eRExMDPz9/W3b69Wrh0cffdT2ey63/J6zxMRE2/sI4Nhr31HVq1dHgwYNsHLlSts2s9mMVatWoUePHna3VRi//3IfMzs7G4mJiahWrRrKlCmT73Fd/X63YcMGqNVqjBo1ym77uHHjIITAL7/8Yre9U6dOqFq1qu37evXqwWAwFPjaTE5Odjj/3E9ERAQ2bdpk9/Haa68BkFtFV65ciQEDBtgeI2t7zLJly/I9XqdOnRAUFISwsDD07dsX3t7eWLduHSpWrPhA9WVkZNyzl97Dw8Oplq8SEX4NBgMAub/VERcvXoRKpcozk0D58uVRpkyZPC/03AEXkJvCASAsLCzf7XcHMZVKZRdeAPlNAYBd79H69evRvHlzeHh4wN/fH0FBQfj000/zfcOpXLlyQXcTgNwLffToUYSFhSE6OhqTJ0+2+0Gy3tcaNWrkuW5UVFSex8LDwwNBQUF228qWLVtg+LzX7eh0OlSpUuWB3lz0ej1mzpyJX375BeXKlUObNm0wa9YsXL9+Pc++dz+H+dVtsVgwZ84cREZGQq/XIzAwEEFBQTh8+HC+z4EzrwuLxZLnGJGRkXmOWb16daSnpyM+Ph7x8fFIT0/P97mpWbMmLBYLLl++DEB+fO+1n/XyB3H3fbQG1oKe74c97tmzZyGEwJtvvomgoCC7D2tPuPXEyPxcvHgRISEheabzye8xys+OHTvQqVMnWx9lUFAQ3njjDQCwPY/Wx/Tu9xF/f/88J104+/w48rhfunTJFnysfbdt27a1q9EZzhzPkfeBh30OrAp6LJx9b6lYsWKeHu+7a79+/brdh/WX6sWLF/P9uXX0Pi1ZsgT16tWDh4cHAgICEBQUhJ9//tnu8bU+bl5eXnbXvft1dr/37po1ayIhIQFpaWl22x15XTny2nfGgAEDsGPHDtsfq1u3bkVcXBwGDBhgt19h/P7LyMjAW2+9Zeu3tb6n375926H39Id9v7t48SJCQ0PzBFNHf+6tNRR0+waDweH8cz/e3t7o1KmT3Yf1j4yNGzciPj4e0dHROHv2LM6ePYvY2Fi0b98e3377bb597/Pnz8emTZuwatUqdOvWDQkJCQ91crWnpyeMRmO+l2VmZjrUN2xVIk5xNhgMCA0NxdGjR526nqMTv6vVaqe2i7sa2R3x119/oWfPnmjTpg0WLFiAkJAQaLVaLFq0KN+Gckef5P79+6N169ZYu3YtNm7ciPfffx8zZ87EmjVr0LVrV6frvNd9VsqYMWPQo0cP/PDDD/jtt9/w5ptvYvr06fjjjz/QsGFD236OPFfvvfce3nzzTTz33HOYNm0a/P39oVKpMGbMmHx/sN3xulBaYd2Xgo5rfbzHjx+PLl265LtvYU2Dd+7cOXTs2BFRUVH48MMPERYWBp1Ohw0bNmDOnDn5vhZcraDHx2w249FHH8XNmzcxYcIEREVFwdvbG1evXkVMTIzTNTp7PHe+D7j6NejI8e4+aXrRokUPPbXVN998g5iYGPTu3RuvvvoqgoODoVarMX369DwnABWWgu57Ybz2BwwYgIkTJ+L777/HmDFj8N1338HPzw+PPfaYbZ/C+v338ssvY9GiRRgzZgxatGgBPz8/SJKEJ5980qn3dHe9dz/o7UdFReHAgQO4fPlynsEXV7GO7uaepSG3P//8M8/JjdHR0bbZHnr37o1HHnkEAwcOxKlTp/L8UeyIkJAQmM1mxMXFITg42LbdaDQiMTHRbkq2gpSI8AsA3bt3x8KFC7Fr1y67FoX8hIeHw2Kx4MyZM7a/wADgxo0buH37NsLDw11am8Viwfnz522jvQBsU3lYpwhZvXo1PDw88Ntvv9n9ZbRo0aKHvv2QkBAMHz4cw4cPR1xcHBo1aoR3330XXbt2td3XU6dOoUOHDnbXO3XqlMsei9y3k3sU3Gg0IjY2Fp06dXrgY1etWhXjxo3DuHHjcObMGTRo0ACzZ8/GN99849RxVq1ahfbt2+Orr76y23779m0EBgY+cH33cubMmTzbTp8+DS8vL9uompeXF06dOpVnv5MnT0KlUtne6MLDw++5n/Vyd3rYFcWsrxGtVvtAr43w8HD8/vvvSE1NtXuTze8xuttPP/2ErKwsrFu3zm4k5u6z8q2P6dmzZ+1GohITE/OM1Lj6+Tly5AhOnz6NJUuWYNCgQbbtmzZtcuo4hXU84OGeA2dvx3pcV7233H2/a9eubbut/H5uHblPq1atQpUqVbBmzRq7nw/rfzKswsPDsWXLFqSnp9uN/t4920fu+323kydPIjAwEN7e3gXWlZujr31nVK5cGdHR0Vi5ciVGjhyJNWvWoHfv3na/5wrr99+qVavw7LPPYvbs2bZtmZmZDs84kh9n3tvCw8OxefNmpKSk2I3+uvp9uUePHvj222/xzTffYOLEiS45Zm5paWn48ccfMWDAALsZOqxGjRqFZcuW5Tuzh5X1D7327dtj3rx5DzS3eoMGDQDI7ZrdunWzbd+3bx8sFovtckeUiLYHAHjttdfg7e2NIUOG4MaNG3kuP3fuHD7++GMAsD1oH330kd0+H374IQC539XV5s2bZ/taCIF58+ZBq9WiY8eOAOQXhiRJdlMFXbhwAT/88MMD36bZbM7zr53g4GCEhobapt5q0qQJgoOD8dlnn9lNx/XLL7/gxIkTLnssOnXqBJ1Oh08++cTur9ivvvoKSUlJD3Q76enpyMzMtNtWtWpV+Pr65plazBFqtTrPX9jff//9fXtLH8auXbvs+s4uX76MH3/8EZ07d4ZarYZarUbnzp3x448/2rXH3LhxA8uXL8cjjzxia/np1q0b9uzZg127dtn2S0tLw8KFCxEREeFQf5wrWX/pPugvmeDgYLRr1w6ff/45rl27lufygqZb69atG0wmk90UTWaz2aGVgKyjL7lfC0lJSXl+EXfs2BEajSbPNFC5f9Zz1+PK5ye/GoUQtvc4Z7n6eMDDPQfOKIz3lrv/9WsdCe7WrRt2796NPXv22PaNj4+/Z89jbvk9xn///bfdawIAunTpguzsbHzxxRe2bRaLxTZ9oFVISAgaNGiAJUuW2P2cHT16FBs3brQLB45y9LXvrAEDBmD37t34+uuvkZCQkKfloTB+/1mPe/d7+ty5cx2emjM/3t7eDr+vdevWDWazOc97wpw5cyBJ0gP99zU/ffv2Rd26dfHuu+/meT0BckvopEmTHvj4a9euRVpaGkaMGIG+ffvm+ejevTtWr15d4O/ddu3aITo6Gh999FGe392O6NChA/z9/fO853766afw8vJy6me9xIz8Vq1aFcuXL8eAAQNQs2ZNuxXedu7cie+//972b6v69evj2WefxcKFC3H79m20bdsWe/bswZIlS9C7d+/7/vXyIDw8PPDrr7/i2WefRbNmzfDLL7/g559/xhtvvGEb4Xv88cfx4Ycf4rHHHsPAgQMRFxeH+fPno1q1ajh8+PAD3W5KSgoqVqyIvn372pY73Lx5M/bu3Wv7S1ir1WLmzJkYPHgw2rZti6eeego3btzAxx9/jIiICLzyyisueQyCgoIwceJETJkyBY899hh69uyJU6dOYcGCBWjatGmBE2vn5/Tp0+jYsSP69++PWrVqQaPRYO3atbhx4waefPJJp4/XvXt3TJ06FYMHD0bLli1x5MgRLFu2LE+/tqvUqVMHXbp0wahRo6DX67FgwQIAwJQpU2z7vPPOO9i0aRMeeeQRDB8+HBqNBp9//jmysrLs5iZ9/fXX8e2336Jr164YNWoU/P39sWTJEsTGxmL16tUuXb3NEdYT+UaNGoUuXbpArVY7/ZzMnz8fjzzyCOrWrYuhQ4eiSpUquHHjBnbt2oUrV67kmX85tx49eqBVq1Z4/fXXceHCBdSqVQtr1qxxqGexc+fO0Ol06NGjB1544QWkpqbiiy++QHBwsF0QL1euHEaPHo3Zs2ejZ8+eeOyxx3Do0CH88ssvCAwMtBshcvXzExUVhapVq2L8+PG4evUqDAYDVq9e/cC9ia4+HvBwz4EzCuO95V5ee+01LF26FI899hhGjx4Nb29vLFy4EOHh4QW+T3fv3h1r1qxBnz598PjjjyM2NhafffYZatWqhdTUVNt+vXv3RnR0NMaNG4ezZ88iKioK69atw82bNwHYjzy+//776Nq1K1q0aIHnn38eGRkZmDt3Lvz8/B5odUVHX/vO6t+/P8aPH4/x48fD398/z2h8Yfz+A+THfOnSpfDz80OtWrWwa9cubN68GQEBAQ98zMaNG+PTTz/FO++8g2rVqiE4ODjPf02tevTogfbt22PSpEm4cOEC6tevj40bN+LHH3/EmDFj7E5uexharRZr1qxBp06d0KZNG/Tv3x+tWrWCVqvFsWPHsHz5cpQtW/aB5/pdtmwZAgIC0LJly3wv79mzJ7744gv8/PPPeOKJJ+57rFdffRX9+vXD4sWLbSdgXrx4EUuXLgUgj+IC8u8+QB4df+aZZwDI7S7Tpk3DiBEj0K9fP3Tp0gV//fUXvvnmG7z77rt2J34WyOF5IYqJ06dPi6FDh4qIiAih0+mEr6+vaNWqlZg7d67dlEnZ2dliypQponLlykKr1YqwsDAxceJEu32EkKeAevzxx/PcDoA8U4hZp3HKPfWWdUqRc+fOic6dOwsvLy9Rrlw58fbbb+eZfuqrr74SkZGRQq/Xi6ioKLFo0aJ8pynK77ZzX2ad6iUrK0u8+uqron79+sLX11d4e3uL+vXr5zsn78qVK0XDhg2FXq8X/v7+4umnnxZXrlyx2ye/6VGEcHwqJSHk6YeioqKEVqsV5cqVEy+99JLdXMK5j1fQVGcJCQlixIgRIioqSnh7ews/Pz/RrFkz8d1339ntd6/n8O6pejIzM8W4ceNESEiI8PT0FK1atRK7du3Ks591Oqrcc1QKce+5DfO7P9bn8JtvvrE95w0bNrSbJs/qn3/+EV26dBE+Pj7Cy8tLtG/f3m7qPatz586Jvn37ijJlyggPDw8RHR2dZ47Me7nXVGd33xfrfc+vztxMJpN4+eWXRVBQkJAkyfb6yO9nxCr3azf3fRo0aJAoX7680Gq1okKFCqJ79+5i1apVBd6nxMRE8cwzzwiDwSD8/PzEM888Iw4cOODQVGfr1q0T9erVEx4eHiIiIkLMnDlTfP3113mmszKZTOLNN98U5cuXF56enqJDhw7ixIkTIiAgQLz44ot57ktBz8+9XlvWxy133cePHxedOnUSPj4+IjAwUAwdOtQ2NVJB9y8/jh7PmfcBR5+D/Dj7GnTkvaVt27aidu3aeW7r2WefzTMd4b0cPnxYtG3bVnh4eIgKFSqIadOmia+++qrAqc4sFot47733RHh4uO3nff369fnednx8vBg4cKDw9fUVfn5+IiYmRuzYsUMAECtWrLDbd/PmzaJVq1bC09NTGAwG0aNHD3H8+HG7fe71nmp9jHPX7ehr35GpznJr1aqVQD5TjFq5+vefEPJUcoMHDxaBgYHCx8dHdOnSRZw8efKh3u+uX78uHn/8ceHr6ysAFPgYpKSkiFdeeUWEhoYKrVYrIiMjxfvvv283pdr97tfdtd7PrVu3xFtvvSXq1q0rvLy8hIeHh6hTp46YOHGi3VzL95rqLL+fjRs3bgiNRiOeeeaZe95uenq68PLysk3Tea/HUwh52r6qVauKqlWrCpPJJIS48zjn95Hf47tw4UJRo0YNodPpRNWqVcWcOXPyPJ4FkYQohmfhFCMxMTFYtWqV3V/2RJIkYcSIEfn+i5yKt9u3b6Ns2bJ45513HupfjUS5/fDDD+jTpw+2b9+OVq1aKV0OUbFWYnp+iYjcLb95Ja3nEhS07CnRvdz9urL2ShsMBjRq1EihqohKjhLT80tE5G4rV67E4sWL0a1bN/j4+GD79u349ttv0blzZ47O0QN7+eWXkZGRgRYtWiArKwtr1qzBzp078d577zk1lykR5Y/hl4joAdWrVw8ajQazZs1CcnKy7SQ468kaRA+iQ4cOmD17NtavX4/MzExUq1YNc+fOtVsplIgeHHt+iYiIiKjUYM8vEREREZUaDL9EREREVGqUup5fi8WCf//9F76+vg+9BCsRERERuZ4QAikpKQgNDXX5Qk2lLvz++++/CAsLU7oMIiIiIirA5cuXUbFiRZces9SFX19fXwDyg2kwGBSuhoiIiIjulpycjLCwMFtuc6VSF36trQ4Gg4Hhl4iIiKgIK4wWVZ7wRkRERESlBsMvEREREZUaDL9EREREVGqUup5fIiKi4s5sNiM7O1vpMogeilarhVqtdvvtMvwSEREVI6mpqbhy5QqEEEqXQvRQJElCxYoV4ePj49bbZfglIiIqJsxmM65cuQIvLy8EBQVxsSYqtoQQiI+Px5UrVxAZGenWEWCGXyIiomIiOzsbQggEBQXB09NT6XKIHkpQUBAuXLiA7Oxst4ZfnvBGRERUzHDEl0oCpV7HDL9EREREVGow/BIRERFRqcHwS0RERIqJiYlB7969lS6DShGGXyIiIiIqNRh+iYiIiKjUYPglIiIqpoQQSDeaFPlwdpGNVatWoW7duvD09ERAQAA6deqEtLQ02+UffPABQkJCEBAQgBEjRtitYLd06VI0adIEvr6+KF++PAYOHIi4uDjb5Vu3boUkSfjtt9/QsGFDeHp6okOHDoiLi8Mvv/yCmjVrwmAwYODAgUhPT7ddr127dhg5ciRGjhwJPz8/BAYG4s0337S7b7du3cKgQYNQtmxZeHl5oWvXrjhz5ozdfVu9ejVq164NvV6PiIgIzJ4926nHhtyL8/wSEREVUxnZZtR66zdFbvv41C7w0jkWI65du4annnoKs2bNQp8+fZCSkoK//vrLFjK3bNmCkJAQbNmyBWfPnsWAAQPQoEEDDB06FIA8v/G0adNQo0YNxMXFYezYsYiJicGGDRvsbmfy5MmYN28evLy80L9/f/Tv3x96vR7Lly9Hamoq+vTpg7lz52LChAm26yxZsgTPP/889uzZg3379mHYsGGoVKmS7bZjYmJw5swZrFu3DgaDARMmTEC3bt1w/PhxaLVa7N+/H/3798fkyZMxYMAA7Ny5E8OHD0dAQABiYmJc8EiTq0milK2PmJycDD8/PyQlJcFgMChdDhERkcMyMzMRGxuLypUrw8PDA+lGU7EIv//88w8aN26MCxcuIDw83O6ymJgYbN26FefOnbMtdNC/f3+oVCqsWLEi3+Pt27cPTZs2RUpKCnx8fLB161a0b98emzdvRseOHQEAM2bMwMSJE3Hu3DlUqVIFAPDiiy/iwoUL+PXXXwHII79xcXE4duyYbc7Z119/HevWrcPx48dx5swZVK9eHTt27EDLli0BAImJiQgLC8OSJUvQr18/PP3004iPj8fGjRtt9b322mv4+eefcezYMUcfzlLp7tdzboWZ1zjyS0REVEx5atU4PrWLYrftqPr166Njx46oW7cuunTpgs6dO6Nv374oW7YsAKB27dp2K3yFhITgyJEjtu/379+PyZMn49ChQ7h16xYsFgsA4NKlS6hVq5Ztv3r16tm+LleuHLy8vGzB17ptz549drU1b97cbrGFFi1aYPbs2TCbzThx4gQ0Gg2aNWtmuzwgIAA1atTAiRMnAAAnTpxAr1697I7ZqlUrfPTRRzCbzW5duYwcw/BLRERUTEmS5PDoq5LUajU2bdqEnTt3YuPGjZg7dy4mTZqEv//+GwCg1Wrt9pckyRZw09LS0KVLF3Tp0gXLli1DUFAQLl26hC5dusBoNNpdL/dxJEm673Gp9FL0hLfp06ejadOm8PX1RXBwMHr37o1Tp07d9zpffPEFWrdujbJly6Js2bLo1KlTnr/iiIiIqGiRJAmtWrXClClTcODAAeh0Oqxdu7bA6508eRKJiYmYMWMGWrdujaioKLuT3R6WNYBb7d69G5GRkVCr1ahZsyZMJpPdPomJiTh16pRtxLlmzZrYsWOH3TF27NiB6tWrc9S3iFI0/P75558YMWIEdu/ejU2bNiE7OxudO3e2O/vzblu3bsVTTz2FLVu2YNeuXQgLC0Pnzp1x9epVN1ZOREREjvr777/x3nvvYd++fbh06RLWrFmD+Ph41KxZs8DrVqpUCTqdDnPnzsX58+exbt06TJs2zWW1Xbp0CWPHjsWpU6fw7bffYu7cuRg9ejQAIDIyEr169cLQoUOxfft2HDp0CP/9739RoUIFW6vDuHHj8Pvvv2PatGk4ffo0lixZgnnz5mH8+PEuq5FcS9H/lVgbzq0WL16M4OBg7N+/H23atMn3OsuWLbP7/ssvv8Tq1avx+++/Y9CgQYVWKxERET0Yg8GAbdu24aOPPkJycjLCw8Mxe/ZsdO3aFStXrrzvdYOCgrB48WK88cYb+OSTT9CoUSN88MEH6Nmzp0tqGzRoEDIyMhAdHQ21Wo3Ro0dj2LBhtssXLVqE0aNHo3v37jAajWjTpg02bNhga6lo1KgRvvvuO7z11luYNm0aQkJCMHXqVM70UIQVqdkezp49i8jISBw5cgR16tRx6DopKSkIDg7G999/j+7du+e5PCsrC1lZWbbvk5OTERYWxtkeiIio2Lnf2fHkvHbt2qFBgwb46KOPlC6lVFJqtocis8iFxWLBmDFj0KpVK4eDLwBMmDABoaGh6NSpU76XT58+HX5+fraPsLAwV5VMRERERMVMkQm/I0aMwNGjR+85p19+ZsyYgRUrVmDt2rX3/At44sSJSEpKsn1cvnzZVSU75Hx8Kn49eg2HLt926+0SERERUV5FYn6UkSNHYv369di2bRsqVqzo0HU++OADzJgxA5s3b7ab1+9uer0eer3eVaU67bdjNzDz15Po17gi6oeVUawOIiIisrd161alSyAFKBp+hRB4+eWXsXbtWmzduhWVK1d26HqzZs3Cu+++i99++w1NmjQp5CofjlYtT5ydbea8gkRERERKUzT8jhgxAsuXL8ePP/4IX19fXL9+HQDg5+cHT09PAPJZmBUqVMD06dMBADNnzsRbb72F5cuXIyIiwnYdHx8f+Pj4KHNH7kOrljtLss1F5rxCIiIiolJL0Z7fTz/9FElJSWjXrh1CQkJsH7mnPbl06RKuXbtmdx2j0Yi+ffvaXeeDDz5Q4i4UyBp+jRz5JSIiIlKc4m0PBbm7H+fChQuFU0whsbY9mBh+iYiIiBRXZGZ7KKl0GrY9EBERERUVDL+FTKNi2wMRERFRUcHwW8g42wMREdG9xcTEoHfv3kqXUaRERETYrTonSRJ++OEHxep5GO3atcOYMWOULsNOkZjntyTT5rQ9mNj2QERERA/g2rVrKFu2rNJllBgMv4VMq7L2/HLkl4iIiJxXvnx5pUsoUdj2UMisbQ/s+SUiIpcTAjCmKfPhwIxNua1atQp169aFp6cnAgIC0KlTJ6Slpdku/+CDDxASEoKAgACMGDEC2dnZtsuWLl2KJk2awNfXF+XLl8fAgQMRFxdnu3zr1q2QJAm//fYbGjZsCE9PT3To0AFxcXH45ZdfULNmTRgMBgwcOBDp6em267Vr1w4jR47EyJEj4efnh8DAQLz55pt2s1HdunULgwYNQtmyZeHl5YWuXbvizJkzdvdt9erVqF27NvR6PSIiIjB79myHH5e4uDj06NEDnp6eqFy5MpYtW5Znn7vbHiZMmIDq1avDy8sLVapUwZtvvmn3eAHAO++8g+DgYPj6+mLIkCF4/fXX0aBBA9vlFosFU6dORcWKFaHX69GgQQP8+uuvtssvXLgASZKwZs0atG/fHl5eXqhfvz527dpl2ycxMRFPPfUUKlSoAC8vL9StWxfffvutw/ddKRz5LWRseyAiokKTnQ68F6rMbb/xL6DzdmjXa9eu4amnnsKsWbPQp08fpKSk4K+//rKFzC1btiAkJARbtmzB2bNnMWDAADRo0ABDhw4FAGRnZ2PatGmoUaMG4uLiMHbsWMTExGDDhg12tzN58mTMmzcPXl5e6N+/P/r37w+9Xo/ly5cjNTUVffr0wdy5czFhwgTbdZYsWYLnn38ee/bswb59+zBs2DBUqlTJdtsxMTE4c+YM1q1bB4PBgAkTJqBbt244fvw4tFot9u/fj/79+2Py5MkYMGAAdu7cieHDhyMgIAAxMTEFPjYxMTH4999/sWXLFmi1WowaNcou2OfH19cXixcvRmhoKI4cOYKhQ4fC19cXr732GgBg2bJlePfdd7FgwQK0atUKK1aswOzZs+1W0v34448xe/ZsfP7552jYsCG+/vpr9OzZE8eOHUNkZKRtv0mTJuGDDz5AZGQkJk2ahKeeegpnz56FRqNBZmYmGjdujAkTJsBgMODnn3/GM888g6pVqyI6OrrA+64USTgy2W4JkpycDD8/PyQlJcFgMBT67R29moTuc7cjxM8DuyZ2LPTbIyKikiszMxOxsbGoXLkyPDw85BHYYhB+//nnHzRu3BgXLlxAeHi43WUxMTHYunUrzp07B7VaDQDo378/VCoVVqxYke/x9u3bh6ZNmyIlJQU+Pj7YunUr2rdvj82bN6NjR/l37YwZMzBx4kScO3cOVapUAQC8+OKLuHDhgm2Es127doiLi8OxY8cgSfJ/al9//XWsW7cOx48fx5kzZ1C9enXs2LEDLVu2BCCPdoaFhWHJkiXo168fnn76acTHx2Pjxo22+l577TX8/PPPOHbs2H0fl9OnT6NGjRrYs2cPmjZtCgA4efIkatasiTlz5thOFJMkCWvXrr3niYEffPABVqxYgX379gEAmjdvjiZNmmDevHm2fR555BGkpqbi4MGDAIAKFSpgxIgReOONN2z7REdHo2nTppg/fz4uXLiAypUr48svv8Tzzz8PADh+/Dhq166NEydOICoqKt9aunfvjqioKNviY+3atUODBg3sTuCzyvN6zqUw8xpHfguZhrM9EBFRYdF6ySFUqdt2UP369dGxY0fUrVsXXbp0QefOndG3b1/bSVy1a9e2BV8ACAkJwZEjR2zf79+/H5MnT8ahQ4dw69YtWCzy79RLly6hVq1atv3q1atn+7pcuXK2toDc2/bs2WNXW/PmzW3BFwBatGiB2bNnw2w248SJE9BoNGjWrJnt8oCAANSoUQMnTpwAAJw4cQK9evWyO2arVq3w0UcfwWw2292vu1mP37hxY9u2qKgolClT5p7XAYCVK1fik08+wblz55CamgqTyWQXEE+dOoXhw4fbXSc6Ohp//PEHADlY/vvvv2jVqlWeug8dOmS3LfdjGhISAkBu1YiKioLZbMZ7772H7777DlevXoXRaERWVha8vBx/bSiBPb+FzLa8sYnhl4iIXEyS5NFXJT5yBcaCqNVqbNq0Cb/88gtq1aqFuXPnokaNGoiNjQUAaLXau+6WZAu4aWlp6NKlCwwGA5YtW4a9e/di7dq1AACj0Wh3vdzHkSTpvsctrnbt2oWnn34a3bp1w/r163HgwAFMmjQpz2PhKnc/pgBsj+H777+Pjz/+GBMmTMCWLVtw8OBBdOnSpdBqcRWG30Kmywm/Jkup6i4hIiKyI0kSWrVqhSlTpuDAgQPQ6XS2EHs/J0+eRGJiImbMmIHWrVsjKiqqwJ5YZ/z999923+/evRuRkZFQq9WoWbMmTCaT3T6JiYk4deqUbcS5Zs2a2LFjh90xduzYgerVq9931BeQR3lNJhP2799v23bq1Cncvn37ntfZuXMnwsPDMWnSJDRp0gSRkZG4ePGi3T41atTA3r177bbl/t5gMCA0NDTfunOPpBdkx44d6NWrF/773/+ifv36qFKlCk6fPu3w9ZXC8FvI2PZARESl3d9//4333nsP+/btw6VLl7BmzRrEx8ejZs2aBV63UqVK0Ol0mDt3Ls6fP49169Zh2rRpLqvt0qVLGDt2LE6dOoVvv/0Wc+fOxejRowEAkZGR6NWrF4YOHYrt27fj0KFD+O9//4sKFSrYWh3GjRuH33//HdOmTcPp06exZMkSzJs3D+PHjy/wtmvUqIHHHnsML7zwAv7++2/s378fQ4YMgaen5z2vExkZiUuXLmHFihU4d+4cPvnkkzx/RLz88sv46quvsGTJEpw5cwbvvPMODh8+bNfe8eqrr2LmzJlYuXIlTp06hddffx0HDx603XdHREZGYtOmTdi5cydOnDiBF154ATdu3HD4+kph+C1k1raHbLNAKTu3kIiICIA80rht2zZ069YN1atXx//93/9h9uzZ6Nq1a4HXDQoKwuLFi/H999+jVq1amDFjhu1kKlcYNGgQMjIyEB0djREjRmD06NEYNmyY7fJFixahcePG6N69O1q0aAEhBDZs2GBrB2jUqBG+++47rFixAnXq1MFbb72FqVOnOjTTg/X4oaGhaNu2LZ544gkMGzYMwcHB99y/Z8+eeOWVVzBy5Eg0aNAAO3fuxJtvvmm3z9NPP42JEydi/PjxaNSoEWJjYxETE2N3UtmoUaMwduxYjBs3DnXr1sWvv/6KdevW2c30UJD/+7//Q6NGjdClSxe0a9cO5cuXLxar9XG2h0KWlJGN+lPkM0DPvNvVFoaJiIicdb+z48l595uJoKR59NFHUb58eSxdulTpUmw420MJpcsVdrPNFoZfIiIiKlTp6en47LPP0KVLF6jVanz77bfYvHkzNm3apHRpRQLDbyGz9vwCQLZJADoFiyEiIiK3+euvv+7b2pGamlootytJEjZs2IB3330XmZmZqFGjBlavXo1OnToVyu0VNwy/hUyjuhN+ucQxERFR0bF169ZCPX6TJk1si0q4k6enJzZv3uz22y0uGH4LmSRJ0KlVMJotMBXzuQWJiIjIcZ6enqhWrZrSZdBd2IDqBlrrdGemUnVuIRERFZJSdq46lVBKvY458lvYUm6gqeoUrkoebHsgIqKHYl00wWg03ncuWKLiwLoSXEGLgbgaw29h278Yi/EevlW3R7b5KaWrISKiYkyj0cDLywvx8fHQarVQqfgPXCqeLBYL4uPj4eXlBY3GvXGU4bew+QQBAAKlJJjM/DcVERE9OEmSEBISgtjY2DxL2hIVNyqVCpUqVbJbec4dGH4Lm7c1/Caz7YGIiB6aTqdDZGSk7V/GRMWVTqdT5L8XDL+FzVteojAQSbjK8EtERC6gUqm4whvRA2KzUGHL3fZgYvglIiIiUhLDb2HLGfn1lIywZKUoXAwRERFR6cbwW9j0PsiEHgAgpccrXAwRERFR6cbw6wbJ6jIAAFV6grKFEBEREZVyDL9ukKwuCwDQMPwSERERKYrh1w1SrOE3k20PREREREpi+HWDFI0/AECbwZFfIiIiIiUx/LpBmlYOv7pMhl8iIiIiJTH8ukF6TvjVZ91UuBIiIiKi0o3h1w3StXLPr96YqHAlRERERKUbw68bZOoDAACeHPklIiIiUhTDrxtk5YRfr2yO/BIREREpieHXDazhV29OA7IzFa6GiIiIqPRi+HUDk84PWUIjf5PGuX6JiIiIlMLw6wZajRqJMMjfpMUpWwwRERFRKcbw6wY6tYREkRN+UznyS0RERKQUhl830KhVSBB+8jcc+SUiIiJSDMOvG2hzh99Uhl8iIiIipTD8uoFOLSEB1pFfLnFMREREpBSGXzfQsu2BiIiIqEhg+HUDuefXesIbwy8RERGRUhh+3UBr1/bA2R6IiIiIlMLw6wY6nvBGREREVCQw/LqB3VRnGTcBs0nZgoiIiIhKKYZfN9CqJdyCL8zWhzudMz4QERERKYHh1w10ahUsUCFJ4klvREREREpi+HUDrUZ+mG9JnO6MiIiISEkMv26gUUkAgJsoI29I5YwPREREREpg+HUDrVp+mBOR0/bAnl8iIiIiRTD8uoEup+0hU+jkDaYsBashIiIiKr0Yft3AOvKbJXIebgunOiMiIiJSAsOvG1h7fo0WtbzBbFSwGiIiIqLSi+HXDaxtD1nCGn6zFayGiIiIqPRi+HUDa9uD0Rp+2fZAREREpAiGXzfQqOW2h2xo5A1seyAiIiJSBMOvG+hyRn6z2fZAREREpCiGXzewtj2YwLYHIiIiIiUx/LqBWiVBJbHtgYiIiEhpDL9uolGrkA22PRAREREpieHXTXRqFUy2kV+GXyIiIiIlMPy6iVYt3Rn5tTD8EhERESmB4ddNNGoVsgVHfomIiIiUxPDrJnLbA3t+iYiIiJTE8OsmcttDzsgv2x6IiIiIFMHw6yZazvZAREREpDiGXzfRsO2BiIiISHEMv26iY9sDERERkeIYft1Eq1YhW3Dkl4iIiEhJDL9uolFLXOSCiIiISGEMv24in/DGtgciIiIiJTH8uomOsz0QERERKY7h1020nO2BiIiISHEMv26iUUswsu2BiIiISFEMv26iU6tg4mwPRERERIpi+HUTue0h18ivEMoWRERERFQKMfy6iVYjwWjt+QUAi0m5YoiIiIhKKYZfN9Goco38Amx9ICIiIlIAw6+b6DS5ZnsAALNRuWKIiIiISimGXzfRqqU78/wCbHsgIiIiUgDDr5toVCoIqGDmXL9EREREimH4dROdRn6ozVJO3y/bHoiIiIjcjuHXTbRqCUCu8Mu2ByIiIiK3Y/h1E63aOvLLtgciIiIipTD8uokmJ/yaoJU3sO2BiIiIyO0Yft1EZ217sJ7wZuHILxEREZG7Mfy6ibXtwWQ74Y09v0RERETuxvDrJta2h2xwtgciIiIipTD8uom17cHEtgciIiIixTD8uomt7cG2yAXbHoiIiIjcjeHXTazh1yjY9kBERESkFIZfN9Gw7YGIiIhIcQy/bqKznvAmuMgFERERkVIYft3E1vZgm+2B4ZeIiIjI3Rh+3eROzy/bHoiIiIiUwvDrJtqcnt9skfOQc+SXiIiIyO0Yft3EOvKbJdj2QERERKQUhl830WrY9kBERESkNIZfN9Gq5LYHo63tgfP8EhEREbkbw6+b5F3kgiu8EREREbkbw6+bWNseuMgFERERkXIYft3ENtsDuLwxERERkVIYft1Eq8pZ4c068su2ByIiIiK3Y/h1E5VKglolwWQd+WXbAxEREZHbMfy6kVYtIds61RnbHoiIiIjcjuHXjbQqVa6eX7Y9EBEREbkbw68baTUqzvZAREREpCCGXzfSqqVcJ7yx7YGIiIjI3Rh+3UirZtsDERERkZIYft1Iq2bbAxEREZGSGH7dSKuWci1vzLYHIiIiIndj+HUjeeSXbQ9ERERESlE0/E6fPh1NmzaFr68vgoOD0bt3b5w6darA633//feIioqCh4cH6tatiw0bNrih2ofHtgciIiIiZSkafv/880+MGDECu3fvxqZNm5CdnY3OnTsjLS3tntfZuXMnnnrqKTz//PM4cOAAevfujd69e+Po0aNurPzBaNUSjGDbAxEREZFSJCGEULoIq/j4eAQHB+PPP/9EmzZt8t1nwIABSEtLw/r1623bmjdvjgYNGuCzzz4r8DaSk5Ph5+eHpKQkGAwGl9XuiIFf7IY6dguW6mYA5eoCL2136+0TERERFQeFmdeKVM9vUlISAMDf3/+e++zatQudOnWy29alSxfs2rUr3/2zsrKQnJxs96EUtj0QERERKavIhF+LxYIxY8agVatWqFOnzj33u379OsqVK2e3rVy5crh+/Xq++0+fPh1+fn62j7CwMJfW7QzO9kBERESkrCITfkeMGIGjR49ixYoVLj3uxIkTkZSUZPu4fPmyS4/vDLuRX872QEREROR2GqULAICRI0di/fr12LZtGypWrHjffcuXL48bN27Ybbtx4wbKly+f7/56vR56vd5ltT4Mu6nO2PZARERE5HaKjvwKITBy5EisXbsWf/zxBypXrlzgdVq0aIHff//dbtumTZvQokWLwirTZXQaFWd7ICIiIlKQoiO/I0aMwPLly/Hjjz/C19fX1rfr5+cHT09PAMCgQYNQoUIFTJ8+HQAwevRotG3bFrNnz8bjjz+OFStWYN++fVi4cKFi98NRvh4atj0QERERKUjRkd9PP/0USUlJaNeuHUJCQmwfK1eutO1z6dIlXLt2zfZ9y5YtsXz5cixcuBD169fHqlWr8MMPP9z3JLmiwuChRTZneyAiIiJSjKIjv45MMbx169Y82/r164d+/foVQkWFy+CpRTZneyAiIiJSTJGZ7aE0MORue7CYgKKzvggRERFRqcDw60YGz1xtDwBgZusDERERkTsx/LqR3PObq9OEfb9EREREbsXw60YGT82deX4BjvwSERERuRnDrxvZzfYAMPwSERERuRnDrxsZPLUAJGQLTndGREREpASGXzfy1WsgSci10AXDLxEREZE7Mfy6kUolwUevudP6wPBLRERE5FYMv25mN+MD2x6IiIiI3Irh180Mnlq2PRAREREphOHXzQwemjsjvwy/RERERG7F8OtmBk8tZ3sgIiIiUgjDr5sZPLR3FrrgyC8RERGRWzH8upm8ypu159eobDFEREREpQzDr5v5eWphtM32YFK2GCIiIqJShuHXzeS2B872QERERKQEhl83M3jmmueXbQ9EREREbsXw62YGD02u2R7Y9kBERETkTgy/bsZFLoiIiIiUw/DrZnbLG7PtgYiIiMitGH7dzOCpQTbY9kBERESkBIZfN5PbHuSR3+zsLIWrISIiIipdGH7dzEensbU9ZGVmKlwNERERUenC8OtmKpUESZ0Tfo0c+SUiIiJyJ4ZfBajUOgCAMYvhl4iIiMidGH4VIGnk8JvNkV8iIiIit2L4VYBaowUAGI2c6oyIiIjInRh+FaDWyiO/Js72QERERORWDL8K0Gj1AABTNkd+iYiIiNyJ4VcB1vBrNjH8EhEREbkTw68CtDq57cHMkV8iIiIit2L4VYBWJ4/8WjjyS0RERORWDL8K0DP8EhERESmC4VcBOr0cfmHOVrYQIiIiolKG4VcBHnoPAIBg+CUiIiJyK4ZfBehzwi8sDL9ERERE7sTwqwBPD7ntQWL4JSIiInIrhl8FeHp6AgDUwoTMbLPC1RARERGVHgy/CvDIme1BAzNSMk0KV0NERERUejD8KkCl0QIAdDAhOZOtD0RERETuwvCrBLW8wpsGZiRnMPwSERERuQvDrxLU8sivBiYks+2BiIiIyG0YfpWQE361khnpWQy/RERERO7C8KsEVU74hQlpRs72QEREROQuDL9KsLU9mJFh5MgvERERkbsw/Coh54Q3jvwSERERuRfDrxJUGgCAFmakM/wSERERuQ3DrxJytT3whDciIiIi92H4VYK17UEyI509v0RERERuw/CrhJy2BwDIyspUsBAiIiKi0oXhVwk5bQ8AkJmVpWAhRERERKULw68SctoeACDbyPBLRERE5C4Mv0rI1fZgZPglIiIichuGXyVIEiySHICzjUaFiyEiIiIqPRh+FSJy+n6zjTzhjYiIiMhdGH6VopLDrymbI79ERERE7sLwqxQV2x6IiIiI3I3hVykaecYHi8kIi0UoXAwRERFR6cDwqxDJtsSxCRnZZoWrISIiIiodGH4Vcif8mpFuZPglIiIicgeGX4VIOQtd6CQT0o0mhashIiIiKh0YfpWi4sgvERERkbsx/CpFowcAeMDIkV8iIiIiN2H4VYreFwDgjUyO/BIRERG5CcOvUnLCr6+UjrQshl8iIiIid2D4VYqHAQDgiwxkZLPtgYiIiMgdGH6VopfDr4+UwZFfIiIiIjdh+FWKte0B6chgzy8RERGRWzD8KiUn/PpIGUjjbA9EREREbsHwqxRr2wMyOPJLRERE5CYMv0qxzfbAkV8iIiIid2H4VYreOttDOuf5JSIiInIThl+leNxpe0jnbA9EREREbsHwq5RcJ7ylZzP8EhEREbkDw69Sck11lp6ZrXAxRERERKUDw69ScsKvTjIj25ipcDFEREREpQPDr1J0vrYvJWOygoUQERERlR4Mv0pRqWDW+gAA1MYUhYshIiIiKh0YfhUkckZ/1dlpCldCREREVDow/CopZ7ozTXYKhBAKF0NERERU8jH8KkjKOenNGxnIMlkUroaIiIio5GP4VZDK484qb2lZXOKYiIiIqLAx/CpI8si10AWXOCYiIiIqdAy/StLnWuKY4ZeIiIio0DH8Kikn/BqkDKQb2fZAREREVNgYfpWUc8KbD9I58ktERETkBgy/Sso54Y09v0RERETuwfCrJNvIL9seiIiIiNyB4VdJOeHXlyO/RERERG7B8Kska/hFBuf5JSIiInIDhl8l6f0AyCe8ZXDkl4iIiKjQMfwqKVfbQxrDLxEREVGhY/hVUq4T3jKyshUuhoiIiKjkY/hVUs5UZ1rJjKysDIWLISIiIir5GH6VpPWGgAQAkDKTFS6GiIiIqORj+FWSSoVsjTcAwJLF8EtERERU2Bh+FWbW+gAApKwUhSshIiIiKvkYfhVm1sknvamyGX6JiIiIChvDr8JETvjVGBl+iYiIiAobw6/ScqY702SnKVwIERERUcnH8Ks0fc50Z+ZUAIDZIiCEULIiIiIiohLLJeH39u3brjhMqaT2lMOv3pSKE9eS0WbWFjy3eK/CVRERERGVTE6H35kzZ2LlypW27/v374+AgABUqFABhw4dcmlxpYE6Z6ELL2RgwOe7cPV2BraejofJbFG4MiIiIqKSx+nw+9lnnyEsLAwAsGnTJmzatAm//PILunbtildffdXlBZZ0ai8/AIAvMpCcaQIACAHcSudyx0RERESupnH2CtevX7eF3/Xr16N///7o3LkzIiIi0KxZM5cXWNJpPOXw6yNloFllf5y8noKkjGwkpGYhyFevcHVEREREJYvTI79ly5bF5cuXAQC//vorOnXqBAAQQsBsNru2utIgZ7aHmmUFFg+ORjmDHHgTU41KVkVERERUIjk98vvEE09g4MCBiIyMRGJiIrp27QoAOHDgAKpVq+byAku8nPBbvQwAnRqBPnqcvpGKxLQsRcsiIiIiKomcDr9z5sxBREQELl++jFmzZsHHR16e99q1axg+fLjLCyzxck54Q87yxgE+8shvfArDLxEREZGrOR1+tVotxo8fn2f7K6+84pKCSp2ceX6RmQwACPDWAQAS09j2QERERORqTvf8LlmyBD///LPt+9deew1lypRBy5YtcfHiRZcWVyrktD0gSw6/gT454TeVI79EREREruZ0+H3vvffg6ekJANi1axfmz5+PWbNmITAwkKO/D8IWflMAIRDowxPeiIiIiAqL020Ply9ftp3Y9sMPP+A///kPhg0bhlatWqFdu3aurq/ks7Y9CDOQnWHr+U3gyC8RERGRyzk98uvj44PExEQAwMaNG/Hoo48CADw8PJCRkeHa6koDnTcASf46KxkBOW0PCRz5JSIiInI5p0d+H330UQwZMgQNGzbE6dOn0a1bNwDAsWPHEBER4er6Sj5JArwDgbR4IDUOQT7yqHpiWhaEEJAkSeECiYiIiEoOp0d+58+fjxYtWiA+Ph6rV69GQEAAAGD//v146qmnXF5gqWCoIH9OumIb+c3MtiDNyEVDiIiIiFzJ6fBbpkwZzJs3Dz/++CMee+wx2/YpU6Zg0qRJTh1r27Zt6NGjB0JDQyFJEn744YcCr7Ns2TLUr18fXl5eCAkJwXPPPWdrwyi2/CrKn5OuwEungadWDYAzPhARERG5mtPhFwBu376N2bNnY8iQIRgyZAjmzJmDpKQkp4+TlpaG+vXrY/78+Q7tv2PHDgwaNAjPP/88jh07hu+//x579uzB0KFDnb7tIsUvTP6cfAUA2PdLREREVEic7vndt28funTpAk9PT0RHRwMAPvzwQ7z77rvYuHEjGjVq5PCxunbtalse2RG7du1CREQERo0aBQCoXLkyXnjhBcyc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6o/MBEdcJSjDrcq54e3niQcfS1JwhLPDdIfRSfV8ckmpR3AkWwLgCYyUe3wy3D7lXggBAQRGWKFOI7B/stw+zy8LuH3K3yC4DXdgG7JQRq+DI7XBdYLzRWA0WimjbLu9fHtZqM+pPO64rx3Pmw+2lYBSr+DfxucX6t/ML5RPXHozXKuOpKt1Rchj0aFMT+O/PZ1R0+PyS2w/1trz5R4HOoZfIiKiAKNeCawXM+h16uX1ehIX3fnHXDpuJ0av468NEkUQr4lDRERERJrB8EtEREREmsHwS0RERESawfBLRERERJrB8EtEREREmsHwS0RERESawfBLRERERJrB8EtEREREmsHwS0RERESawfBLRERERJrB8EtEREREmsHwS0RERESawfBLRERERJrB8EtEREREmsHwS0RERESawfBLRERERJrB8EtEREREmsHwS0RERESawfBLRERERJrB8EtEREREmsHwS0RERESawfBLRERERJrB8EtEREREmsHwS0RERESawfBLRERERJphiHQFwk0IAQBoamqKcE2IiIiIqCvBnBbMbX1Jc+HX6XQCADIyMiJcEyIiIiK6FKfTidjY2D7dpiT6I1IPYLIs4/z587DZbJAkqd+ep6mpCRkZGThz5gzsdnu/Pc+PEduma2yX7rFtuse26R7bpntsm66xXboX7rYRQsDpdCItLQ06Xd+epau5kV+dTof09PSwPZ/dbuc/UDfYNl1ju3SPbdM9tk332DbdY9t0je3SvXC2TV+P+AbxC29EREREpBkMv0RERESkGQy//cRsNuPRRx+F2WyOdFUGHLZN19gu3WPbdI9t0z22TffYNl1ju3RvMLWN5r7wRkRERETaxZFfIiIiItIMhl8iIiIi0gyGXyIiIiLSDIZfIiIiItIMht9+8Pzzz2P48OGwWCzIycnBl19+Gekqhd2GDRtwxRVXwGazISkpCTfffDNKS0tDyvz85z+HJEkht7vuuitCNQ6fxx57rNN+jxs3Tl3ucrmwcuVKxMfHIyYmBgsWLEB1dXUEaxw+w4cP79Q2kiRh5cqVALTTZz777DPceOONSEtLgyRJeOedd0KWCyGwbt06pKamwmq1Ii8vD2VlZSFl6urqsGTJEtjtdjgcDtx+++1obm4O4170j0u1jdfrxZo1azB58mRER0cjLS0NS5cuxfnz50O20VU/27hx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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_diagonal\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison of shampoo in the diagonal and non-diagonal variant on CIFAR10\"\n", + "save_path = f\"diagrams/shampoo_diagonal_nondiagonal_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "b9d118e6", + "metadata": {}, + "source": [ + "### Comparison of shampoo_momentum vs shampoo_momentum_diagonal" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "635039e2", + "metadata": {}, + "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_9880\\3072135520.py:12: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", " collected_data = pd.concat([collected_data, df], axis=0)\n" ] }, { "data": { - "image/png": "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cgtnnXVWvesM8m+/Mxw4cIDo6Gj69evH5ZdfztGjRwG59h3tu+++Y8KECVx00UWEh4czduxY3nrrLffj3envrgTBHSAvLw+Hw0FERES9+yMiIsjKyvLQqHon1/WWn0XHczqd3HnnnUybNo0RI0YA2vU3mUwEBgbWO1auf/vZtWsXvr6+mM1mbrzxRr7++muGDRsm174TfPLJJ2zdupVFixad8Jhc/441adIk3nvvPZYuXcprr73G4cOHmTFjBqWlpXLtO9ihQ4d47bXXGDhwIMuWLeOmm27i9ttv5/333we6199dg6cHIIToGW655RZ2795dLy9PdLzBgwezfft2iouL+eKLL1i4cCErV6709LB6vLS0NO644w6WL1+OxWLx9HB6nTPPPNO9P2rUKCZNmkRcXByfffYZXl5eHhxZz+d0OpkwYQL/+te/ABg7diy7d+/m9ddfZ+HChR4eXcvITHAHCA0NRa/Xn7ASNTs7m8jISA+NqndyXW/5WXSsW2+9lR9++IHffvuNmJgY9/2RkZFYrVaKiorqHS/Xv/2YTCYGDBjA+PHjWbRoEaNHj+aFF16Qa9/BtmzZQk5ODuPGjcNgMGAwGFi5ciUvvvgiBoOBiIgIuf6dKDAwkEGDBpGSkiL/9jtYVFQUw4YNq3ff0KFD3eko3envrgTBHcBkMjF+/HhWrFjhvs/pdLJixQqmTJniwZH1PgkJCURGRtb7WZSUlLBhwwb5WbQDVVW59dZb+frrr/n1119JSEio9/j48eMxGo31rn9ycjJHjx6V699BnE4n1dXVcu072Jw5c9i1axfbt293bxMmTODyyy9378v17zxlZWUcPHiQqKgo+bffwaZNm3ZCKcz9+/cTFxcHdLO/u55emddTffLJJ6rZbFbfe+89de/eveoNN9ygBgYGqllZWZ4eWo9TWlqqbtu2Td22bZsKqM8++6y6bds29ciRI6qqquqTTz6pBgYGqt9++626c+dO9ZxzzlETEhLUyspKD4+8+7vpppvUgIAANTExUT127Jh7q6iocB9z4403qn379lV//fVXdfPmzeqUKVPUKVOmeHDUPcd9992nrly5Uj18+LC6c+dO9b777lMVRVF//vlnVVXl2ne2utUhVFWuf0e655571MTERPXw4cPqmjVr1Llz56qhoaFqTk6Oqqpy7TvSxo0bVYPBoD7xxBPq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", + "image/png": "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kkvYtm0bfr+fwsJCXC4XV1xxhWUtI0eODL7OzMwEoKysDID58+dz++23M2XKFJ588smw2kREpGtQ2BcR6WKOHj0KwJIlSygsLAw+Nm3aFBy3f66io6NPa7v2w3IcDgdgXk8A8Oijj7Jx40auu+46PvroI4YOHcqiRYvOS30iInJ+KOyLiHQxQ4cOxev1smfPHgoKCsIeOTk5we0+/fTT4OuKigq2bt3KkCFDABgyZAirVq0K+9xVq1YxcOBAXC4XI0aMIBAIhF0DcDYGDhzIvffey7Jly5gxYwYvvfTSOX2eiIicX267CxARkXDx8fHcd9993HvvvQQCAS699FKqqqpYtWoVCQkJ5ObmAvD444/Tq1cv0tPTeeihh0hNTWX69OkA/Nu//Rvjxo3jiSeeYNasWaxevZrnnnuOX//61wDk5eUxd+5cbr31Vp599llGjRrF7t27KSsr4+abbz5ljfX19dx///1861vfIj8/n3379vH5558zc+bMDvu7iIjImVPYFxHpgp544gl69+7NggUL2LFjB0lJSVx44YU8+OCDwWE0Tz75JD/+8Y/Ztm0bo0eP5p133sHj8QBw4YUX8sYbb/Dzn/+cJ554gszMTB5//HFuueWW4O944YUXePDBB7nrrrsoLy+nb9++PPjgg6dVn8vlory8nDlz5lBaWkpqaiozZszgscceO+9/CxEROXuajUdEpJtpmymnoqKCpKQku8sREZEuTGP2RUREREQilMK+iIiIiEiE0jAeEREREZEIpTP7IiIiIiIRSmFfRERERCRCKeyLiIiIiEQohX0RERERkQilsC8iIiIiEqEU9kVEREREIpTCvoiIiIhIhFLYFxERERGJUP8Pqr0zut6qJiEAAAAASUVORK5CYII=", "text/plain": [ "
" ] @@ -430,31 +522,722 @@ } ], "source": [ - "import pandas as pd\n", - "from matplotlib import pyplot as plt\n", - "collected_data = pd.DataFrame(columns=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\", \"optimizer\"])\n", + "optimizers = [\"shampoo_momentum\", \"shampoo_momentum_diagonal\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison of shampoo (momentum) in the diagonal and non-diagonal variant on MNIST\"\n", + "save_path = f\"diagrams/shampoo_momentum_diagonal_nondiagonal_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "98342fff", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAwsAAAK9CAYAAABrQvBmAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAC6JElEQVR4nOzdd3xT9f7H8fdpujerUFbL3ksRRVQQQQRF0au4AXHdK6i4rxvEC+pVHCAqVy/4c1wnINcNXlAZoihTpmwVKLOlu02+vz/SpE33TpO+no9HH0lPTk6+GU3y7uc7LGOMEQAAAAAUEuDtBgAAAAComwgLAAAAAIpFWAAAAABQLMICAAAAgGIRFgAAAAAUi7AAAAAAoFiEBQAAAADFIiwAAAAAKBZhAQAAAECxCAuVYFmWJk+e7O1mVNlbb72lzp07KygoSLGxsVU6VmJioi666KLqaZgfS01NVVxcnN555x1vNwV5cnJy1KpVK82ePbtc++/Zs0eWZWnevHk12zBJ8+bNk2VZWrNmTY3fVmm3v2fPHve2QYMGadCgQV5pT22oa/evuOfA140bN06JiYke2/zlc7Ukde3+LVu2TJZladmyZd5uCnxApcLCzp07deutt6pt27YKDQ1VdHS0BgwYoBdffFEZGRnV3UbUgK1bt2rcuHFq166d/vWvf2nOnDneblK98OKLLyoqKkpXXXWVt5tSJ/z555+aPHmy1q1b57U2BAUF6e6779Y//vEPZWZmeqUNs2fPrpXwAQC1JT09XZMnT66zgaS832WL+2eoZVnF/jRr1sxjvxMnTig0NFSWZWnLli3FtmPcuHEexwgJCVHHjh312GOPFfuZ9P777+u6665Thw4dZFlWqf/cyMrK0gMPPKDmzZsrLCxMp59+uhYvXlyBR8kpsKJX+Oyzz3TFFVcoJCREY8aMUffu3ZWdna3ly5frvvvu06+//ur3XzwzMjIUGFjhh65OWbZsmRwOh1588UW1b9/e282pF3JycvTiiy/qrrvuks1m83Zz6oQ///xTU6ZMUWJionr37u21dtxwww36+9//rnfffVfjx48vdd+EhARlZGQoKCio2m5/9uzZaty4scaNG1dtx6wpX3/9tbebAD/kD5+rvuScc85RRkaGgoODa+w20tPTNWXKFEmqU9U6qXq+yw4dOlRjxozx2BYWFubx+4cffugOEe+8846efPLJYo8VEhKi119/XZKUnJysTz75RFOnTtXOnTuL9ER45ZVX9PPPP+u0007T0aNHS23juHHj9NFHH2nSpEnq0KGD5s2bpxEjRmjp0qU666yzSr1uQRX6y9y9e7euuuoqJSQk6H//+5/i4+Pdl02YMEG//fabPvvss4oc0mc4HA5lZ2crNDRUoaGh3m5OlSUlJUlSlbsfofw+/fRTHT58WKNHj/Z2U1BIbGyszj//fM2bN6/MsGBZll+8B1RWTX65QP1Vn/+malNmZqaCg4MVEBBQbx/z6vou27FjR1133XWl7vP2229rxIgRSkhI0LvvvltiWAgMDPQ41m233aYzzzxT//nPfzRjxgw1bdrUfdlbb72lFi1aKCAgQN27dy/xtn/88Ue99957+uc//6l7771XktzB6P7779fKlSvLvI8uFeqG9Mwzzyg1NVVvvPGGx4Pr0r59e915553u33NzczV16lS1a9dOISEhSkxM1EMPPaSsrCyP67lKPMuWLVPfvn0VFhamHj16uEtX8+fPV48ePRQaGqpTTz1Va9eu9bj+uHHjFBkZqV27dmnYsGGKiIhQ8+bN9cQTT8gY47Hvs88+qzPPPFONGjVSWFiYTj31VH300UdF7otlWZo4caLeeecddevWTSEhIfryyy/dlxXse3jy5ElNmjRJiYmJCgkJUVxcnIYOHapffvnF45gffvihTj31VIWFhalx48a67rrr9McffxR7X/744w+NGjVKkZGRatKkie69917Z7fYSnhlPs2fPdre5efPmmjBhgk6cOOHxeD/++OOSpCZNmpTZl/LgwYO64YYb1LJlS4WEhCg+Pl6XXHJJsX1oly9frn79+ik0NFRt27bV//3f/3lcfuzYMd17773q0aOHIiMjFR0dreHDh2v9+vUe+7n6U37wwQeaMmWKWrRooaioKF1++eVKTk5WVlaWJk2apLi4OEVGRuqGG24o8roq+Bx26tTJ/fr57rvvirR77dq1Gj58uKKjoxUZGanzzjtPP/zwQ5H9du3apSuuuEINGzZUeHi4zjjjjHIH5IULFyoxMVHt2rXz2O56zvft26eLLrpIkZGRatGihV5++WVJ0saNGzV48GBFRES433Aq067qeEwl55uf63XcsGFDXXXVVdq/f7/HPoMGDVL37t21efNmnXvuuQoPD1eLFi30zDPPeLTntNNOk+T8z76rBOvqjpOYmFjsf9oL9ymvrvs1dOhQLV++XMeOHStyWUHFjVmoyt9tYmKifv31V3377bfux6Dwf+GysrJ09913q0mTJoqIiNCll16qw4cPFznWF198obPPPlsRERGKiorShRdeqF9//bXU23f59ddfNXjwYIWFhally5Z68skn5XA4iuxX+PHPzs7WY489plNPPVUxMTGKiIjQ2WefraVLlxa57tGjR3X99dcrOjpasbGxGjt2rNavX1/sGJD//e9/7vsSGxurSy65pEgZf/LkybIsS7/99pvGjRun2NhYxcTE6IYbblB6errHvnPnztXgwYMVFxenkJAQde3aVa+88kq5HpvilPd4rs+3st4bpfI/B8WpyGswLS1N99xzj1q1aqWQkBB16tRJzz77bJHPS9d76MKFC9W9e3eFhISoW7du7s/C8nBdNzQ0VN27d9eCBQuK3a/w59DevXt12223qVOnTgoLC1OjRo10xRVXFPu5s2HDBg0cONDjcZs7d26xYz3K+nyUyvf+JVXstV+WQ4cOKTAw0P2f+IK2bdsmy7I0a9YsSRX/HH3vvff0yCOPqEWLFgoPD1dKSkqxYxa+//57XXHFFWrdurVCQkLUqlUr3XXXXUW6l5fntbZnzx41adJEkjRlyhT3e1tZ4zYq+ln2j3/8Qy1btlRoaKjOO+88/fbbb2U+1hX9LltZ+/bt0/fff6+rrrpKV111lXbv3l3uL+iWZemss86SMUa7du3yuKxVq1YKCCj76/tHH30km82mW265xb0tNDRUN954o1atWlXkc7tUpgJatGhh2rZtW+79x44daySZyy+/3Lz88stmzJgxRpIZNWqUx34JCQmmU6dOJj4+3kyePNk8//zzpkWLFiYyMtK8/fbbpnXr1uapp54yTz31lImJiTHt27c3drvd43ZCQ0NNhw4dzPXXX29mzZplLrroIiPJPProox631bJlS3PbbbeZWbNmmRkzZph+/foZSebTTz/12E+S6dKli2nSpImZMmWKefnll83atWvdlz3++OPufa+55hoTHBxs7r77bvP666+bp59+2owcOdK8/fbb7n3mzp1rJJnTTjvNPP/88+bvf/+7CQsLM4mJieb48eNF7ku3bt3M+PHjzSuvvGL+8pe/GElm9uzZZT7mjz/+uJFkhgwZYmbOnGkmTpxobDabOe2000x2drYxxpgFCxaYSy+91Egyr7zyinnrrbfM+vXrSzzmmWeeaWJiYswjjzxiXn/9dTNt2jRz7rnnmm+//bbIc9i0aVPz0EMPmVmzZplTTjnFWJZlNm3a5N7vp59+Mu3atTN///vfzWuvvWaeeOIJ06JFCxMTE2P++OMP935Lly41kkzv3r1N//79zUsvvWTuuOMOY1mWueqqq8w111xjhg8fbl5++WVz/fXXG0lmypQpRZ7D7t27m8aNG5snnnjCPP300yYhIcGEhYWZjRs3uvfbtGmTiYiIMPHx8Wbq1KnmqaeeMm3atDEhISHmhx9+cO938OBB07RpUxMVFWUefvhhM2PGDNOrVy8TEBBg5s+fX+Zz0759e3PZZZcV2e56zrt27Wr++te/mpdfftmceeaZRpKZO3euad68ubnvvvvMzJkzTbdu3YzNZjO7du2qcLuq4zF98sknjWVZ5sorrzSzZ882U6ZMMY0bNy7yOh44cKBp3ry5adWqlbnzzjvN7NmzzeDBg40k8/nnn7vb/cQTTxhJ5pZbbjFvvfWWeeutt8zOnTvdr6mxY8cWebwGDhxoBg4cWK33yxhjli9fbiSZ//73v6U+j7t373Y/N4Wfw8r83S5YsMC0bNnSdO7c2f0YfP3118aY/PeNPn36mMGDB5uZM2eae+65x9hsNjN69GiP4/zf//2fsSzLXHDBBWbmzJnm6aefNomJiSY2Ntbs3r271DYcOHDANGnSxDRo0MBMnjzZ/POf/zQdOnQwPXv2NJI8rl/48T98+LCJj483d999t3nllVfMM888Yzp16mSCgoLc75nGGGO3203//v2NzWYzEydONLNmzTJDhw41vXr1KvJ4Ll682AQGBpqOHTuaZ555xv06a9CggUdbXO93ffr0MZdddpmZPXu2uemmm4wkc//993vcx9NOO82MGzfOPP/882bmzJnm/PPPN5LMrFmzPPYrfP9KUt7jlfe9sSLPQXHK+xp0OBxm8ODBxrIsc9NNN5lZs2aZkSNHGklm0qRJHseUZHr16uV+b3zhhRdM27ZtTXh4uDly5EiZj9FXX31lAgICTPfu3c2MGTPMww8/bGJiYky3bt1MQkJCkdsq+Ln64Ycfml69epnHHnvMzJkzxzz00EOmQYMGJiEhwaSlpbn3+/33303Dhg1No0aNzJQpU8yzzz5rOnfu7H5dFfd6Ke3z0ZjyvX8ZU/7XfnH3rziDBw82Xbt2LbJ9ypQpxmazmYMHDxpjKv452rVrV9O7d28zY8YMM336dJOWlua+bOnSpe79b7/9djNixAgzbdo089prr5kbb7zR2Gw2c/nll3u0pzyvtdTUVPPKK68YSebSSy91v7eV9l2jop9lffr0Maeeeqp5/vnnzeTJk014eLjp169fqY+xMRX/LpuQkGAuvPBCj22SzI033mgOHz7s8ZOZmene56mnnjKRkZEmPT3dGGNMu3btzG233Vbk+GPHjjURERFFtl9++eVGktmyZUuJbevWrVuJ71dDhgwxXbp0KbJ9yZIlRpJZtGhRicctrNxhITk52Ugyl1xySbn2X7dunZFkbrrpJo/t9957r5Fk/ve//7m3JSQkGElm5cqV7m1fffWVkWTCwsLM3r173dtfe+21Ii9wVyi5/fbb3dscDoe58MILTXBwsDl8+LB7u+tJc8nOzjbdu3c3gwcP9tguyQQEBJhff/21yH0r/EcfExNjJkyYUOJjkZ2dbeLi4kz37t1NRkaGe/unn35qJJnHHnusyH154oknPI7h+qMoTVJSkgkODjbnn3++R5iaNWuWkWT+/e9/u7e53jQLPjbFOX78uJFk/vnPf5a6n+s5/O677zzaExISYu655x73tszMTI+2GeP88hUSEuJxn11vBt27d/d4E7/66quNZVlm+PDhHsfo379/sR8+ksyaNWvc2/bu3WtCQ0PNpZde6t42atQoExwc7P6Saowxf/75p4mKijLnnHOOe9ukSZOMJPP999+7t508edK0adPGJCYmFrlfBeXk5BjLsjweCxfXcz5t2jT3tuPHj5uwsDBjWZZ577333Nu3bt1a5PVX3nZV9THds2ePsdls5h//+IfHfhs3bjSBgYEe2wcOHGgkmf/7v/9zb8vKyjLNmjUzf/nLX9zbfvrppyJfFF0qGhaq8loxxvmcSzJPP/10kcsKKiksVPbv1piS3/BdYWHIkCHG4XC4t991113GZrOZEydOGGOcz3dsbKy5+eabPa5/8OBBExMTU2R7Ya7X0OrVq93bkpKSTExMTJlhITc312RlZXkc7/jx46Zp06Zm/Pjx7m0ff/yxkWReeOEF9za73e7+Elbw8ezdu7eJi4szR48edW9bv369CQgIMGPGjHFvc72PFbwdY4y5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Kkr7Z0KDBg2KzFIiOf+7VLiKWB1cz03B96vaUtlqhourm0hcXFyl/s4TEhKK/Vsp7nVV2EcffaS2bdtq/vz5HvfDNeNawdtYunSp0tPTPaoLhWcvKfg+VtjWrVvVuHFjRURElNmugv773/8qKytLixYt8vhvZGVmramJ40lVew4qejtLlizRyZMnPaoLlX2/6NWrV5FFnpo1a+b+jK3K62rs2LF67rnn3NsyMzOLvCckJCQUOwNOaa+r6vp8LO9rvyJGjRqlW2+91d0Vafv27XrwwQeL3G51f45u3LhR27dv15tvvumxdkBlFvByqej7Wm19llXku2xlfPvtt/r999/1xBNPFPk8OX78uG655RYtXLiw1GlX4+Pjddddd2nKlCn64YcfdMYZZ1S4Hb1799bSpUuVkpLirqhI0urVq92Xl1eFpk69//77FRERoZtuukmHDh0qcvnOnTv14osvSpJGjBghSXrhhRc89pkxY4YkZ3/96uaaVkxyJrtZs2YpKChI5513niRncrMsy2MauT179mjhwoWVvk273V6kPBcXF6fmzZu7yz99+/ZVXFycXn31VY+S0BdffKEtW7ZU22MxZMgQBQcH66WXXvJI1m+88YaSk5MrdTvp6elFVhBs166doqKiii1vlcVmsxVJ/R9++GGx6bc6rFq1yqMP5/79+/XJJ5/o/PPPl81mk81m0/nnn69PPvnEo7vaoUOH9O677+qss85y/5GNGDFCP/74o1atWuXeLy0tTXPmzFFiYmKZ/XD79++vNWvWVO8drIZ2lddll10mm82mKVOmFHkOjTFlLg5THNeXvuJCQbt27fTDDz8oOzvbve3TTz+t2HRvFfDzzz/Lsqwa+fAoS0RERLGPQXkNGzZM0dHRmjZtmnJycopcXtw0qwWNGDFCP/zwg3788UeP6xRXLi/M9d+9gq+J1atXe7weXW3MycnRv/71L/c2h8PhniLYJT4+Xr1799abb77p8Zhs2rRJX3/9tfuzpSKKa2NycnKl/1FU3ceTqvYcVPR27Ha7x+elJD3//POyLKvC1fAGDRoU6YoRGhrq8TwW/IxcvHhxqeO7XIr7rJg5c2aRaWCHDRumVatWeawCf+zYsSKPW018Ppb3tV8RsbGxGjZsmD744AO99957Cg4O1qhRo4rcbnV/jhZ3X4wx7u90leH6p0B539tq67OsIt9lK8PVBem+++7T5Zdf7vFz8803q0OHDuX6u7799tsVHh6up556qlLtuPzyy2W32z0Wl8vKytLcuXN1+umnF+miW5oKVRbatWund999V1deeaW6dOniserdypUr9eGHH7rnRe/Vq5fGjh2rOXPm6MSJExo4cKB+/PFHvfnmmxo1alSRsmVVhYaG6ssvv9TYsWN1+umn64svvtBnn32mhx56yP0f5AsvvFAzZszQBRdcoGuuuUZJSUl6+eWX1b59e23YsKFSt3vy5Em1bNlSl19+uXr16qXIyEgtWbJEP/30k/s/IkFBQXr66ad1ww03aODAgbr66qt16NAhvfjii0pMTNRdd91VLY9BkyZN9OCDD2rKlCm64IILdPHFF2vbtm2aPXu2TjvttDIXDynO9u3bdd5552n06NHq2rWrAgMDtWDBAh06dEhXXXVVhY930UUX6YknntANN9ygM888Uxs3btQ777xTI/8plqTu3btr2LBhuuOOOxQSEqLZs2dLksdc1k8++aQWL16ss846S7fddpsCAwP12muvKSsry2Ne7b///e/6z3/+o+HDh+uOO+5Qw4YN9eabb2r37t36+OOPy5z3+JJLLtFbb72l7du3V9t/5qujXeXVrl07Pfnkk3rwwQe1Z88ejRo1SlFRUdq9e7cWLFigW265xb3wS0WOGRsbq1dffVVRUVGKiIjQ6aefrjZt2uimm27SRx99pAsuuECjR4/Wzp079fbbbxdZp6K6LF68WAMGDFCjRo1q5PilOfXUU/XKK6/oySefVPv27RUXF1ekClma6OhovfLKK7r++ut1yimn6KqrrlKTJk20b98+ffbZZxowYECRL4cF3X///Xrrrbd0wQUX6M4771RERITmzJmjhISEMt8bL7roIs2fP1+XXnqpLrzwQu3evVuvvvqqunbtqtTUVPd+o0aNUr9+/XTPPffot99+U+fOnbVo0SL3uhYF/wv5z3/+U8OHD1f//v114403KiMjQzNnzlRMTEyZ87QX5/zzz1dwcLBGjhypW2+9VampqfrXv/6luLg4d0nem8eTqvYcVMTIkSN17rnn6uGHH9aePXvUq1cvff311/rkk080adKkav37mj59ui688EKdddZZGj9+vI4dO6aZM2eqW7duHq+N4lx00UV66623FBMTo65du2rVqlVasmRJkb/P+++/X2+//baGDh2q22+/XREREXr99dfVunVrHTt2zP26qonPx/K+9ivqyiuv1HXXXafZs2dr2LBhRRZPrYnP0c6dO6tdu3a699579ccffyg6Oloff/xxlcYghIWFqWvXrnr//ffVsWNHNWzYUN27dy9xIbHa/Cwr73fZisrKytLHH3+soUOHlrjo3cUXX6wXX3xRSUlJiouLK/FYjRo10g033KDZs2dry5Yt7irFd999514v6vDhw0pLS3Mv9nbOOefonHPOkeSczOOKK67Qgw8+qKSkJLVv315vvvmm9uzZU6QqVaZyz5tUwPbt283NN99sEhMTTXBwsImKijIDBgwwM2fO9JhjNicnx0yZMsW0adPGBAUFmVatWpkHH3zQYx9jip+WyjjjbZEpSV3TFhacytM17dTOnTvN+eefb8LDw03Tpk3N448/XmR6sTfeeMN06NDBhISEmM6dO5u5c+e6p98r67YLXuaaCiwrK8vcd999plevXiYqKspERESYXr16FTu3+vvvv2/69OljQkJCTMOGDc21115rfv/9d499Sppvt7g2lmTWrFmmc+fOJigoyDRt2tT87W9/85gDv+Dxypo69ciRI2bChAmmc+fOJiIiwsTExJjTTz/dfPDBBx77lfQcFp6GMDMz09xzzz0mPj7ehIWFmQEDBphVq1aVOB3mhx9+6HE811SSP/30U5n3x/Ucvv322+7nvE+fPh5Txbn88ssvZtiwYSYyMtKEh4ebc88912MqX5edO3eayy+/3MTGxprQ0FDTr1+/Imt0lCQrK8s0btzYTJ061WN7Sc/5wIEDTbdu3YpsL+6xLk+7quMxNcY5BeZZZ51lIiIiTEREhOncubOZMGGC2bZtW5ltHzt2bJEpEz/55BPTtWtXExgYWGTqueeee860aNHChISEmAEDBpg1a9bUyGvlxIkTJjg42Lz++utF2lxYSVOnVuXv9uDBg+bCCy80UVFRRpL7/pV0H4qb9tC1fdiwYSYmJsaEhoaadu3amXHjxnlMH1ySDRs2mIEDB5rQ0FDTokULM3XqVPPGG28Umbaz8OPvcDjMtGnTTEJCgvtv7NNPPy32uT58+LC55pprTFRUlImJiTHjxo0zK1asMJI8pgg2xjkX+IABA0xYWJiJjo42I0eONJs3b/bYp6TXqOtxK9juRYsWmZ49e5rQ0FCTmJhonn76afPvf/+7zPtXkvIer7zvjcaU/zkoTkVegydPnjR33XWXad68uQkKCjIdOnQw//znP4tM0VjS52BJ0xoX5+OPPzZdunQxISEhpmvXrmb+/PnFvjYKfq4a45yC9IYbbjCNGzc2kZGRZtiwYWbr1q3F3vbatWvN2WefbUJCQkzLli3N9OnTzUsvvWQkudcmcCnP52N5378q8tovfP9Kk5KSYsLCwowkj/WaXKr6OVrwsoLvIZs3bzZDhgwxkZGRpnHjxubmm292T5Vb2fe7lStXmlNPPdUEBweX6zGoymdZce/NpSnvd9mSpk4t7m/DNUX0G2+8UeLtLlu2zEgyL774ojGm5MfTGOfjYbPZPF7zrse5uJ/Cj29GRoa59957TbNmzUxISIg57bTTzJdfflnWQ1OEZUwdHRFaAePGjdNHH31UpSQP/2NZliZMmFDqf1Rr29SpUzV37lzt2LGjTgwQg9MLL7ygZ555Rjt37qzS7BOouIULF+rSSy/V8uXLNWDAAG83B35i0qRJeu2115Samsp7LVBF1VPTAVAud911l1JTU/Xee+95uynIk5OToxkzZuiRRx4hKNSwwvN62+12zZw5U9HR0TrllFO81Cr4usKvq6NHj+qtt97SWWedRVAAqkHNzacHoIjIyMgy57xH7QoKCtK+ffu83Yx64fbbb1dGRob69++vrKwszZ8/XytXrtS0adMIaqi0/v37a9CgQerSpYsOHTqkN954QykpKXr00Ue93TTALxAWAAC1YvDgwXruuef06aefKjMzU+3bt9fMmTM1ceJEbzcNPmzEiBH66KOPNGfOHFmWpVNOOUVvvPGGe6AngKrxizELAAAAAKofYxYAAAAAFIuwAAAAAKBYjFmoAofDoT///FNRUVEVXtYcAAAANc8Yo5MnT6p58+bVtrhbfUJYqII///yzQstlAwAAwDv279+vli1bersZPoewUAVRUVGSnC++6OhoL7cGAAAAhaWkpKhVq1bu722oGMJCFbi6HkVHRxMWAAAA6jC6jFcOHbcAAAAAFIuwAAAAAKBYhAUAAAAAxWLMAgCgzjLGKDc3V3a73dtNAVBH2Ww2BQYGMiahhhAWAAB1UnZ2tg4cOKD09HRvNwVAHRceHq74+HgFBwd7uyl+h7AAAKhzHA6Hdu/eLZvNpubNmys4OJj/GgIowhij7OxsHT58WLt371aHDh1YeK2aERYAAHVOdna2HA6HWrVqpfDwcG83B0AdFhYWpqCgIO3du1fZ2dkKDQ31dpP8CtELAFBn8R9CAOXBe0XN4ZEFAAAAUCzCAgAAAIBiERYAAKgl48aN06hRo7zdDAAoN8ICAABAJezZs0eWZWndunXebgpQYwgLAAAAAIpFWAAA+ARjjNKzc73yY4ypUFs/+ugj9ejRQ2FhYWrUqJGGDBmitLQ09+XPPvus4uPj1ahRI02YMEE5OTnuy9566y317dtXUVFRatasma655holJSW5L1+2bJksy9JXX32lPn36KCwsTIMHD1ZSUpK++OILdenSRdHR0brmmms8FrQbNGiQJk6cqIkTJyomJkaNGzfWo48+6nHfjh8/rjFjxqhBgwYKDw/X8OHDtWPHDo/79vHHH6tbt24KCQlRYmKinnvuuXI/LomJiXryySc1ZswYRUZGKiEhQYsWLdLhw4d1ySWXKDIyUj179tSaNWsqdJuVPe7y5ct19tlnKywsTK1atdIdd9zh8TwlJiZq2rRpGj9+vKKiotS6dWvNmTPHfXmbNm0kSX369JFlWRo0aJD7sZ40aZLHbY0aNUrjxo2rcpuB2sY6CwAAn5CRY1fXx77yym1vfmKYwoPL95F54MABXX311XrmmWd06aWX6uTJk/r+++/dX8qXLl2q+Ph4LV26VL/99puuvPJK9e7dWzfffLMkKScnR1OnTlWnTp2UlJSku+++W+PGjdPnn3/ucTuTJ0/WrFmzFB4ertGjR2v06NEKCQnRu+++q9TUVF166aWaOXOmHnjgAfd13nzzTd1444368ccftWbNGt1yyy1q3bq1+7bHjRunHTt2aNGiRYqOjtYDDzygESNGaPPmzQoKCtLPP/+s0aNHa/Lkybryyiu1cuVK3XbbbWrUqJHHF+HSPP/885o2bZoeffRRPf/887r++ut15plnavz48frnP/+pBx54QGPGjNGvv/4qy7LKfZsVPe7OnTt1wQUX6Mknn9S///1vHT582B2m5s6d6z7uc889p6lTp+qhhx7SRx99pL/97W8aOHCgOnXqpB9//FH9+vXTkiVL1K1btwqvHlzRNgPeYJmK/rsEbikpKYqJiVFycrKio6O93RwA8BuZmZnavXu32rRp415gKT071yfCwi+//KJTTz1Ve/bsUUJCgsdl48aN07Jly7Rz507ZbDZJ0ujRoxUQEKD33nuv2OOtWbNGp512mk6ePKnIyEgtW7ZM5557rpYsWaLzzjtPkvTUU0/pwQcf1M6dO9W2bVtJ0l//+lft2bNHX375pSTnf7uTkpI8vnj+/e9/16JFi7R582bt2LFDHTt21IoVK3TmmWdKko4ePapWrVrpzTff1BVXXKFrr71Whw8f1tdff+1u3/3336/PPvtMv/76a5mPTWJios4++2y99dZbkqSDBw8qPj5ejz76qJ544glJ0g8//KD+/fvrwIEDatasWbluszLHvemmm2Sz2fTaa6+5j7t8+XINHDhQaWlpCg0NLXJcY4yaNWumKVOmuB/fNm3aaO3aterdu7f7OIMGDVLv3r31wgsvuLeNGjVKsbGxmjdvXqXbjJIV957hwve1qqGyAADwCWFBNm1+YpjXbru8evXqpfPOO089evTQsGHDdP755+vyyy9XgwYNJEndunVzBwVJio+P18aNG92///zzz5o8ebLWr1+v48ePy+FwSJL27dunrl27uvfr2bOn+3zTpk0VHh7uDgqubT/++KNH28444wyP/1D3799fzz33nOx2u7Zs2aLAwECdfvrp7ssbNWqkTp06acuWLZKkLVu26JJLLvE45oABA/TCCy/Ibrd73K+SFG63JPXo0aPItqSkJDVr1qzct1nR465fv14bNmzQO++8497HGCOHw6Hdu3erS5cuRY5rWZaaNWvm0S2sKiraZsAbCAsAAJ9gWVa5/7vvTTabTYsXL9bKlSv19ddfa+bMmXr44Ye1evVqSVJQUJDH/pZluQNBWlqahg0bpmHDhumdd95RkyZNtG/fPg0bNkzZ2dke1yt4HMuySj1uXVK43SVtq2jbK3rc1NRU3XrrrbrjjjuKHKt169bFHtd1nLLaFhAQUGScS8FxKZVtM+ANdf9dFwAAH2NZlgYMGKABAwboscceU0JCghYsWFDm9bZu3aqjR4/qqaeeUqtWrSSpWge4ugKLyw8//KAOHTrIZrOpS5cuys3N1erVqz26IW3bts1d0ejSpYtWrFjhcYwVK1aoY8eO5aoqVEZN3eYpp5yizZs3q3379pU+hmuMgt1u99jepEkTHThwwP273W7Xpk2bdO6551b6tgBvYTYkAACq0erVqzVt2jStWbNG+/bt0/z583X48GF3t5bStG7dWsHBwZo5c6Z27dqlRYsWaerUqdXWtn379unuu+/Wtm3b9J///EczZ87UnXfeKUnq0KGDLrnkEt18881avny51q9fr+uuu04tWrRwdwO655579M0332jq1Knavn273nzzTc2aNUv33ntvtbWxsJq6zQceeEArV67UxIkTtW7dOu3YsUOffPKJJk6cWO5jxMXFKSwsTF9++aUOHTqk5ORkSdLgwYP12Wef6bPPPtPWrVv1t7/9TSdOnKhSewFvISwAAFCNoqOj9d1332nEiBHq2LGjHnnkET333HMaPnx4mddt0qSJ5s2bpw8//FBdu3bVU089pWeffbba2jZmzBhlZGSoX79+mjBhgu68807dcsst7svnzp2rU089VRdddJH69+8vY4w+//xzd9eYU045RR988IHee+89de/eXY899pieeOKJcs+EVBk1dZs9e/bUt99+q+3bt+vss89Wnz599Nhjj6l58+blPkZgYKBeeuklvfbaa2revLk7VI0fP15jx47VmDFjNHDgQLVt25aqAnwWsyFVAaPrAaBmlDazCSqnuBl6AH/BbEg1h8oCAAAAgGIxwNlXZKdJO5dKxiF1vdjbrQEAwMP3339faler1NTUWmwNgOpCWPAV6Uel96+VAkMJCwCAClu2bFmNHr9v375at25djd4GgNpHWPAVgXn973IzJWMkln0HANQhYWFhVZqGFEDdxJgFX2ELzj9vL7qwCwAAAFDdCAu+IrDAyP7cTO+1AwAAAPUGYcFXeFQWsr3XDgAAANQbhAVfERCQHxioLAAAAKAWEBZ8iS3EeZqb5d12AAAAoF4gLPiSQMICAPiycePGadSoUd5uBuqJefPmKTY21v375MmT1bt3b6+1pyqWLVsmy7J04sQJbzel3iEs+IiklEwdycqbLtVOWAAAwNv27Nkjy7J8Zn2Je++9V9988423mwEfwzoLPsJhpLScADUOEJUFAABQYZGRkYqMjPR2M+BjqCz4iNCgAGXJOcDZnp3h5dYAgBcYI2WneefHmAo19aOPPlKPHj0UFhamRo0aaciQIUpLS3Nf/uyzzyo+Pl6NGjXShAkTlJOTv37OW2+9pb59+yoqKkrNmjXTNddco6SkJPflru4YX331lfr06aOwsDANHjxYSUlJ+uKLL9SlSxdFR0frmmuuUXp6uvt6gwYN0sSJEzVx4kTFxMSocePGevTRR2UK3Lfjx49rzJgxatCggcLDwzV8+HDt2LHD4759/PHH6tatm0JCQpSYmKjnnnuu3I9LYmKinnzySY0ZM0aRkZFKSEjQokWLdPjwYV1yySWKjIxUz549tWbNmgrdZmWPu3z5cp199tkKCwtTq1atdMcdd3g8T4mJiZo2bZrGjx+vqKgotW7dWnPmzHFf3qZNG0lSnz59ZFmWBg0a5H6sJ02a5HFbo0aN0rhx46rc5tLMmzdPrVu3Vnh4uC699FIdPXrU4/LC3ZB++uknDR06VI0bN1ZMTIwGDhyoX375xeM6W7du1VlnnaXQ0FB17dpVS5YskWVZWrhwoXufjRs3avDgwe7X+y233KLU1FT35a7ud1V53cN7CAs+IjTIpuy8QlB2FrMhAaiHctKlac2985OTXnb78hw4cEBXX321xo8fry1btmjZsmW67LLL3F/Kly5dqp07d2rp0qV68803NW/ePM2bNy//bubkaOrUqVq/fr0WLlyoPXv2eHzJdJk8ebJmzZqllStXav/+/Ro9erReeOEFvfvuu/rss8/09ddfa+bMmR7XefPNNxUYGKgff/xRL774ombMmKHXX3/dffm4ceO0Zs0aLVq0SKtWrZIxRiNGjHB/qfv55581evRoXXXVVdq4caMmT56sRx991KP9ZXn++ec1YMAArV27VhdeeKGuv/56jRkzRtddd51++eUXtWvXTmPGjHE/XuW9zYoed+fOnbrgggv0l7/8RRs2bND777+v5cuXa+LEiR7Hfe6559S3b1+tXbtWt912m/72t79p27ZtkqQff/xRkrRkyRIdOHBA8+fPL/fjUJk2l2b16tW68cYbNXHiRK1bt07nnnuunnzyyVKvc/LkSY0dO1bLly/XDz/8oA4dOmjEiBE6efKkJMlut2vUqFEKDw/X6tWrNWfOHD388MMex0hLS9OwYcPUoEED/fTTT/rwww+1ZMmSIo9jdb3u4QUGlZacnGwkmeTk5Bq/LbvdYX58tK8xj0eb5J8/qvHbAwBvysjIMJs3bzYZGRn5G7NSjXk82js/WanlbvvPP/9sJJk9e/YUuWzs2LEmISHB5ObmurddccUV5sorryzxeD/99JORZE6ePGmMMWbp0qVGklmyZIl7n+nTpxtJZufOne5tt956qxk2bJj794EDB5ouXboYh8Ph3vbAAw+YLl26GGOM2b59u5FkVqxY4b78yJEjJiwszHzwwQfGGGOuueYaM3ToUI/23XfffaZr166lPyh5EhISzHXXXef+/cCBA0aSefTRR93bVq1aZSSZAwcOlPs2K3PcG2+80dxyyy0ex/3+++9NQECA+3VX+LgOh8PExcWZV155xRhjzO7du40ks3btWo/jDBw40Nx5550e2y655BIzduzYKrW5NFdffbUZMWKEx7Yrr7zSxMTEuH9//PHHTa9evUo8ht1uN1FRUea///2vMcaYL774wgQGBnrc/uLFi40ks2DBAmOMMXPmzDENGjQwqan5fyOfffaZCQgIMAcPHjTGVO/r/vjx48XuX+x7Rp7a/L7mjxiz4CMCAizlKkiSlJNNZQFAPRQULj30p/duu5x69eql8847Tz169NCwYcN0/vnn6/LLL1eDBg0kSd26dZPNZnPvHx8fr40bN7p///nnnzV58mStX79ex48fl8PhkCTt27dPXbt2de/Xs2dP9/mmTZsqPDxcbdu29djm+s+3yxlnnCHLsty/9+/fX88995zsdru2bNmiwMBAnX766e7LGzVqpE6dOmnLli2SpC1btuiSSy7xOOaAAQP0wgsvyG63e9yvkhRutyT16NGjyLakpCQ1a9as3LdZ0eOuX79eGzZs0DvvvOPexxgjh8Oh3bt3q0uXLkWOa1mWmjVrVm3dYyra5tJs2bJFl156qce2/v3768svvyzxOocOHdIjjzyiZcuWKSkpSXa7Xenp6dq3b58kadu2bWrVqpXHbffr16/I7fbq1UsRERHubQMGDJDD4dC2bdvc96G6XveofYQFH5IT4ByzkEs3JAD1kWVJwRFl7+dlNptNixcv1sqVK91dgR5++GGtXr1akhQUFOSxv2VZ7i9Gri4dw4YN0zvvvKMmTZpo3759GjZsmLKzsz2uV/A4lmWVety6pHC7S9pW0bZX9Lipqam69dZbdccddxQ5VuvWrYs9rus4ZbUtICCgSNehgv3zK9vm6jZ27FgdPXpUL774ohISEhQSEqL+/fsXea1Vh+p63aP2ERZ8iN0KloyUywBnAKjTLMvSgAEDNGDAAD322GNKSEjQggULyrze1q1bdfToUT311FNq1aqVJFVogGtZXIHFxdVP3WazqUuXLsrNzdXq1at15plnSpKOHj2qbdu2uf+z26VLF61YscLjGCtWrFDHjh3LVVWojJq6zVNOOUWbN29W+/btK32M4OC8iUfsdo/tTZo00YEDB9y/2+12bdq0Seeee26lb6ssXbp0Kfb5Lc2KFSs0e/ZsjRgxQpK0f/9+HTlyxH15p06dtH//fh06dMhdIfjpp5+K3O68efOUlpbmri6sWLFCAQEB6tSpU7naXtOve1QNA5x9SG5eZcGRQ2UBAOqq1atXa9q0aVqzZo327dun+fPn6/Dhw+5uLaVp3bq1goODNXPmTO3atUuLFi3S1KlTq61t+/bt0913361t27bpP//5j2bOnKk777xTktShQwddcskluvnmm7V8+XKtX79e1113nVq0aOHuBnTPPffom2++0dSpU7V9+3a9+eabmjVrlu69995qa2NhNXWbDzzwgFauXOkeELxjxw598sknRQbmliYuLk5hYWH68ssvdejQISUnJ0uSBg8erM8++0yfffaZtm7dqr/97W81vpjYHXfcoS+//FLPPvusduzYoVmzZpXaBUlyPudvvfWWtmzZotWrV+vaa69VWFiY+/KhQ4eqXbt2Gjt2rDZs2KAVK1bokUcekZRf9bj22msVGhqqsWPHatOmTVq6dKluv/12XX/99e6AUZaaft2jaggLPsThDgusswAAdVV0dLS+++47jRgxQh07dtQjjzyi5557TsOHDy/zuk2aNNG8efP04YcfqmvXrnrqqaf07LPPVlvbxowZo4yMDPXr108TJkzQnXfeqVtuucV9+dy5c3XqqafqoosuUv/+/WWM0eeff+7uQnLKKafogw8+0Hvvvafu3bvrscce0xNPPFGjs9bU1G327NlT3377rbZv366zzz5bffr00WOPPabmzZuX+xiBgYF66aWX9Nprr6l58+buUDV+/HiNHTtWY8aM0cCBA9W2bdsarSpIzvEo//rXv/Tiiy+qV69e+vrrr91f7Evyxhtv6Pjx4zrllFN0/fXX64477lBcXJz7cpvNpoULFyo1NVWnnXaabrrpJvdsSKGhoZKk8PBwffXVVzp27JhOO+00XX755TrvvPM0a9ascre9pl/3qBrLFO5Uh3JLSUlRTEyMkpOTFR0dXeO398VTV2t45ufa1f12tb289OnQAMCXZWZmavfu3WrTpo37SwmqZtCgQerdu7deeOEFbzcFPmzFihU666yz9Ntvv6ldu3bebo5bae8Ztf19zd8wZsGHOAKc/9mhsgAAAGrDggUL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iMSlYEFEREREROJSsCAiIiIiInEpWBARERERkbgULIiIiIiISFwKFkREREREJC4FCyIiIiIiEpeCBRERERERiUvBgoiIiIiIxKVgQURERERE4lKwICIiIiIicSlYEBERERGRuBQsiIiIiIhIXAoWREREREQkLgULIiIiIiISl4IFERERERGJS8GCiIiIiIjEpWBBRERERETiUrAgIiIiIiJxKVgQEREREZG4FCyIiIiIiEhcChZERERERCQuBQsiIiIiIhKXggUREREREYlLwYKIiIiIiMTl7uoEHM2MMQBUVVV1cUpEREREJJ7melpzvU2+HgULHVBdXQ1Az549uzglIiIiIrI/1dXVpKWldXUyjjoOozDrG4tEIuzcuZOUlBQcDsdhuUZVVRU9e/Zk27ZtpKamHpZrHK2UN+1T3rRPeROf8qV9ypv2KW/ap7xpX2fnjTGG6upq8vPzcTrVA//rUstCBzidTgoKCjrlWqmpqfpj0w7lTfuUN+1T3sSnfGmf8qZ9ypv2KW/a15l5oxaFb07hlYiIiIiIxKVgQURERERE4lKwcITz+Xzcd999+Hy+rk7KEUd50z7lTfuUN/EpX9qnvGmf8qZ9ypv2KW+OLhrgLCIiIiIicallQURERERE4lKwICIiIiIicSlYEBERERGRuBQsiIiIiIhIXAoWjnBPPfUUffr0ISEhgXHjxvHZZ591dZI61cyZMzn55JNJSUkhJyeHSy65hKKiophjzj77bBwOR8zjhhtu6KIUd57777+/zX0PGTIkur+hoYGbbrqJzMxMkpOTueyyyygtLe3CFHeePn36tMkbh8PBTTfdBBxfZebDDz/kwgsvJD8/H4fDwZtvvhmz3xjDvffeS15eHn6/n0mTJrFu3bqYY/bs2cP06dNJTU0lPT2dH/3oR9TU1HTiXRwe+8ubYDDInXfeyYgRI0hKSiI/P58ZM2awc+fOmHPEK2sPP/xwJ9/JoXWgMnP11Ve3uefJkyfHHHM8lhkg7t8dh8PBo48+Gj3mWCwzB/NdfTDfSVu3bmXq1KkkJiaSk5PDHXfcQSgU6sxbkTgULBzB/vKXv3Dbbbdx33338fnnnzNq1CguuOACysrKujppnWbBggXcdNNNLFq0iDlz5hAMBjn//POpra2NOe66666juLg4+njkkUe6KMWd64QTToi5748//ji679Zb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OGx69epl7rzzzpjtx1uZqa6uNsuXLzfLly83gPntb39rli9fHp3R5+GHHzbp6enm73//u/nyyy/NxRdfbPr27Wvq6+uj55g8ebIZPXq0Wbx4sfn444/NwIEDzZVXXtlVt3TI7C9vAoGAueiii0xBQYEpLCyM+fvTPDPLp59+ah5//HFTWFhoNmzYYF588UWTnZ1tZsyY0cV31jH7y5fq6mrzi1/8wixcuNBs2rTJzJ0714wZM8YMHDjQNDQ0RM9xPJaZZpWVlSYxMdE8/fTTbT5/rJaZA31XG3Pg76RQKGSGDx9uzj//fFNYWGjeffddk52dbe66666uuCVpRcHCEe7JJ580vXr1Ml6v15xyyilm0aJFXZ2kTgXEfTz33HPGGGO2bt1qzjzzTJORkWF8Pp8ZMGCAueOOO0xlZWXXJrwTTJs2zeTl5Rmv12t69Ohhpk2bZtavXx/dX19fb2688UbTrVs3k5iYaL797W+b4uLiLkxx53rvvfcMYIqKimK2H29l5oMPPoj7f+iqq64yxtjpU++55x7TvXt34/P5zMSJE9vkWXl5ubnyyitNcnKySU1NNT/84Q9NdXV1F9zNobW/vNm0aVO7f38++OADY4wxy5YtM+PGjTNpaWkmISHBDB061PzmN7+JqTQfjfaXL3V1deb888832dnZxuPxmN69e5vrrruuzY9Yx2OZafbMM88Yv99vKioq2nz+WC0zB/quNubgvpM2b95spkyZYvx+v8nKyjK33367CQaDnXw3si+HMcYcpkYLERERERE5imnMgoiIiIiIxKVgQURERERE4lKwICIiIiIicSlYEBERERGRuBQsiIiIiIhIXAoWREREREQkLgULIiIiIiISl4IFERERERGJS8GCiIh8bfPnz8fhcFBRUdHVSRERkcNIwYKIiIiIiMSlYEFEREREROJSsCAichSKRCLMnDmTvn374vf7GTVqFH/961+Bli5Cs2fPZuTIkSQkJDB+/Hi++uqrmHP87W9/44QTTsDn89GnTx8ee+yxmP2NjY3ceeed9OzZE5/Px4ABA3j22Wdjjlm2bBknnXQSiYmJnHrqqRQVFUX3ffHFF5xzzjmkpKSQmprK2LFjWbp06WHKERERORwULIiIHIVmzpzJCy+8wB//+EdWrlzJrbfeyve//30WLFgQPeaOO+7gscceY8mSJWRnZ3PhhRcSDAYBW8m//PLLueKKK1ixYgX3338/99xzD7NmzYp+fsaMGbz88ss88cQTrF69mmeeeYbk5OSYdPzqV7/iscceY+nSpbjdbq655provunTp1NQUMCSJUtYtmwZv/zlL/F4PIc3Y0RE5JByGGNMVydCREQOXmNjIxkZGcydO5cJEyZEt1977bXU1dVx/fXXc8455/DKK68wbdo0APbs2UNBQQGzZs3i8ssvZ/r06ezatYt//etf0c//+7//O7Nnz2blypWsXbuWwYMHM2fOHCZNmtQmDfPnz+ecc85h7ty5TJw4EYB33nmHqVOnUl9fT0JCAqmpqTz55JNcddVVhzlHRETkcFHLgojIUWb9+vXU1dVx3nnnkZycHH288MILbNiwIXpc60AiIyODwYMHs3r1agBWr17NaaedFnPe0047jXXr1hEOhyksLMTlcnHWWWftNy0jR46Mvs7LywOgrKwMgNtuu41rr72WSZMm8fDDD8ekTUREjg4KFkREjjI1NTUAzJ49m8LCwuhj1apV0XELHeX3+w/quNbdihwOB2DHUwDcf//9rFy5kqlTpzJv3jyGDRvGG2+8cUjSJyIinUPBgojIUWbYsGH4fD62bt3KgAEDYh49e/aMHrdo0aLo671797J27VqGDh0KwNChQ/nkk09izvvJJ58waNAgXC4XI0aMIBKJxIyB+CYGDRrErbfeyr/+9S8uvfRSnnvuuQ6dT0REOpe7qxMgIiJfT0pKCr/4xS+49dZbiUQinH766VRWVvLJJ5+QmppK7969AXjwwQfJzMyke/fu/OpXvyIrK4tLLrkEgNtvv52TTz6Zhx56iGnTprFw4UJ+//vf84c//AGAPn36cNVVV3HNNdfwxBNPMGrUKLZs2UJZWRmXX375AdNYX1/PHXfcwXe+8x369u3L9u3bWbJkCZdddtlhyxcRETn0FCyIiByFHnroIbKzs5k5cyYbN24kPT2dMWPGcPfdd0e7AT388MPccsstrFu3jhNPPJG33noLr9cLwJgxY3j11Ve59957eeihh8jLy+PBBx/k6quvjl7j6aef5u677+bGG2+kvLycXr16cffddx9U+lwuF+Xl5cyYMYPS0lKysrK49NJLeeCBBw55XoiIyOGj2ZBERI4xzTMV7d27l/T09K5OjoiIHMU0ZkFEREREROJSsCAiIiIiInGpG5KIiIiIiMSllgUREREREYlLwYKIiIiIiMSlYEFEREREROJSsCAiIiIiInEpWBARERERkbgULIiIiIiISFwKFkREREREJC4FCyIiIiIiEtf/BxFHL1nTSLs6AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo_momentum\", \"shampoo_momentum_diagonal\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison of shampoo (momentum) in the diagonal and non-diagonal variant on CIFAR10\"\n", + "save_path = f\"diagrams/shampoo_momentum_diagonal_nondiagonal_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "7c83fbdc", + "metadata": {}, + "source": [ + "### Comparison of shampoo_heuristic vs shampoo_heuristic_diagonal" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "24b8baca", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAuQAAAK9CAYAAABsJXlaAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAADCBUlEQVR4nOzdd3xT9f7H8Ve6d4EuymppWWUICDJFUFBkKKAIispQwKv4c4DK9aqIcC9OhgKKICIyBFGcIIgIigyZAsreQ6BlFdrSmfP7IyQ2tIW0tE3bvJ+PRx5NT874nMxPvvmczzEZhmEgIiIiIiJO4ebsAEREREREXJkSchERERERJ1JCLiIiIiLiRErIRUREREScSAm5iIiIiIgTKSEXEREREXEiJeQiIiIiIk6khFxERERExImUkIuIiIiIOJES8utgMpkYOXKks8O4brNmzaJOnTp4enpSrly561pXdHQ0Xbt2LZzAyrCkpCTCw8OZM2eObVr//v0JCAhwYlS5++STTzCZTBw6dKhQ1jdy5EhMJlO+l2vRogUvvPCCw/MX1+tz5cqVmEwmvvjiiyLf1tW2v3LlStu0/v37Ex0d7ZR4ikNJ27/cHoPSLrfXaXR0NP3793dOQMWgpO3foUOHMJlMfPLJJ84ORYrBdSXk+/fv57HHHiMmJgYfHx+CgoJo3bo17777LpcuXSqsGKUI7dq1i/79+xMbG8u0adOYOnWqs0NyCe+++y6BgYHcf//9zg6lSKSkpDBy5MhCTVCGDx/O5MmTOXnyZKGtMz/mzp3LhAkTnLJtEZGiMmbMGL7++mtnh2HH+iXXZDIxe/bsXOdp3bo1JpOJ+vXr202Pjo7GZDLxf//3f3muN/sAinXQaePGjXbz/vbbb3Tq1InKlSvj4+NDtWrVuOuuu5g7dy5gGRiwxni1i6Nf8jwcmisXixYt4r777sPb25u+fftSv3590tPT+e2333j++ef566+/ynxyd+nSJTw8CnwXlggrV67EbDbz7rvvUqNGDWeH4xIyMjJ49913efbZZ3F3d3d2ONf08MMPc//99+Pt7e3wMikpKbz22msAtGvXzu62l19+mX//+9/5jqNbt24EBQXx/vvvM2rUqGvOX9ivz7lz5/Lnn3/yzDPPFNo6i8q0adMwm83ODkPKmN27d+Pmph/Wi0tUVBSXLl3C09OzSLczZswYevbsSffu3Yt0OwXh4+PD3Llzeeihh+ymHzp0iDVr1uDj45PnstOmTePFF1+kUqVK+d7uggUL6N27N40aNeLpp5+mfPnyHDx4kF9//ZVp06bRp08fHnvsMTp06GBb5uDBg4wYMYLBgwfTpk0b2/TY2FiHtlmgT6uDBw9y//33ExUVxc8//0xkZKTttiFDhrBv3z4WLVpUkFWXeGazmfT0dHx8fK76RCgt4uPjAa67VEUc9/3335OQkECvXr2cHcpVJScn4+/vj7u7e6F+cfDw8ChQouzm5kbPnj359NNPee21165Z9lIWXp8FVdQf4OKa8vOlXAouMzMTs9mMl5eXS7+PAXTu3Jlvv/2W06dPExoaaps+d+5cIiIiqFmzJufOncuxXL169di9ezdvvPEG7733Xr63O3LkSOrWrcu6devw8vKyu82aN7Vs2ZKWLVvapm/cuJERI0bQsmXLHF8gHFGgr7pvvfUWSUlJTJ8+3S4Zt6pRowZPP/207f/MzExGjx5NbGws3t7eREdH85///Ie0tDS75az1xytXrqRp06b4+vrSoEED28/eCxcupEGDBvj4+NCkSRO2bNlit7y1BvfAgQN07NgRf39/KlWqxKhRozAMw27ed955h1atWhESEoKvry9NmjTJtQbUZDLx5JNPMmfOHOrVq4e3tzdLliyx3Za9RvXixYs888wzREdH4+3tTXh4OLfffjubN2+2W+eCBQto0qQJvr6+hIaG8tBDD3H8+PFc9+X48eN0796dgIAAwsLCeO6558jKysrjkbH3/vvv22KuVKkSQ4YM4fz583b396uvvgpAWFjYNWtuT548yYABA6hSpQre3t5ERkbSrVu3XGuLf/vtN5o1a4aPjw8xMTF8+umndrefPXuW5557jgYNGhAQEEBQUBCdOnVi69atdvNZf176/PPPee2116hcuTKBgYH07NmTxMRE0tLSeOaZZwgPDycgIIABAwbkeF5lfwxr165te/78+uuvOeLesmULnTp1IigoiICAANq3b8+6detyzHfgwAHuu+8+KlSogJ+fHy1atHD4S+jXX39NdHR0nt+aHXnMzWYzEyZMoF69evj4+BAREcFjjz2W440pr8f0ylpJ6092v/zyC0888QTh4eFUqVLF7rbsj/PGjRvp2LEjoaGh+Pr6Ur16dR555BHAMnIRFhYGYEucs8eRVw357NmzadasGX5+fpQvX55bbrmFH3/80W6e22+/ncOHD/PHH3/ket9dbd+t2923bx/9+/enXLlyBAcHM2DAAFJSUq66rnbt2rFo0SIOHz5s258ra5jNZjP/+9//qFKlCj4+PrRv3559+/blWNfvv//OnXfeSXBwMH5+frRt25bVq1dfc38Ajh07Rvfu3fH39yc8PJxnn302x/Mdcq+xdvQ979KlSzz11FOEhoYSGBjI3XffzfHjx3N9LjnyerE+f1avXs3QoUMJCwvD39+fHj16kJCQYDfvN998Q5cuXahUqRLe3t7ExsYyevRoh9/zruTo+tq1a0f9+vXZsWMHt956K35+flSuXJm33norxzodfQxyk5/nYH4/N6/1nns1v/32GzfddBM+Pj7Exsby4Ycf5jrfle8bjr6PAxw+fJi7777b7n5bunRprrX3hf0Z6ehz/1oyMjKoUKECAwYMyHHbhQsX8PHx4bnnngMgPT2dESNG0KRJE4KDg/H396dNmzasWLHCbjlrnfg777zDhAkTbI/3jh07cq0h37ZtG/3797eVClesWJFHHnmEM2fO2K3X0eeayWQiOTmZmTNnOlxiER8fz6OPPkpERAQ+Pj40bNiQmTNn5rlfU6dOte3XTTfdxIYNGxy5uwHLL6Pe3t4sWLDAbvrcuXPp1atXnoNF0dHR9O3bl2nTpvH33387vD2r/fv3c9NNN+VIxgHCw8PzvT6HGAVQuXJlIyYmxuH5+/XrZwBGz549jcmTJxt9+/Y1AKN79+5280VFRRm1a9c2IiMjjZEjRxrjx483KleubAQEBBizZ882qlWrZrzxxhvGG2+8YQQHBxs1atQwsrKy7Lbj4+Nj1KxZ03j44YeNSZMmGV27djUA45VXXrHbVpUqVYwnnnjCmDRpkjFu3DijWbNmBmB8//33dvMBRlxcnBEWFma89tprxuTJk40tW7bYbnv11Vdt8/bp08fw8vIyhg4danz00UfGm2++adx1113G7NmzbfPMmDHDAIybbrrJGD9+vPHvf//b8PX1NaKjo41z587l2Jd69eoZjzzyiPHBBx8Y9957rwEY77///jXv81dffdUAjA4dOhgTJ040nnzyScPd3d246aabjPT0dMMwDOOrr74yevToYQDGBx98YMyaNcvYunVrnuts1aqVERwcbLz88svGRx99ZIwZM8a49dZbjV9++SXHYxgREWH85z//MSZNmmTceOONhslkMv7880/bfBs2bDBiY2ONf//738aHH35ojBo1yqhcubIRHBxsHD9+3DbfihUrDMBo1KiR0bJlS+O9994znnrqKcNkMhn333+/0adPH6NTp07G5MmTjYcfftgAjNdeey3HY1i/fn0jNDTUGDVqlPHmm28aUVFRhq+vr7F9+3bbfH/++afh7+9vREZGGqNHjzbeeOMNo3r16oa3t7exbt0623wnT540IiIijMDAQOOll14yxo0bZzRs2NBwc3MzFi5ceM3HpkaNGsY999yTY3p+HvOBAwcaHh4exqBBg4wpU6YYw4cPN/z9/e0eX+u+Z3+OZn+c+vXrZ/vf+rysW7eu0bZtW2PixInGG2+8YXfbwYMHDcMwjFOnThnly5c3atWqZbz99tvGtGnTjJdeesmIi4szDMMwkpKSjA8++MAAjB49ehizZs2ye25Zn5vZjRw50gCMVq1aGW+//bbx7rvvGn369DGGDx9uN9+xY8cMwJg4ceI17+cr99263caNGxv33HOP8f777xsDBw40AOOFF1646rp+/PFHo1GjRkZoaKhtf7766ivDMP55jjZu3Nho0qSJMX78eGPkyJGGn5+f0axZM7v1LF++3PDy8jJatmxpjB071hg/frxxww03GF5eXsbvv/9+1RhSUlKMWrVqGT4+PsYLL7xgTJgwwWjSpIlxww03GICxYsUK27z9+vUzoqKi7JZ39D2vV69eBmA8/PDDxuTJk41evXoZDRs2zHF/Ovp6sT5/GjdubNx2223GxIkTjWHDhhnu7u5Gr1697LbdvXt3o1evXsbbb79tfPDBB8Z9991nAMZzzz1nN19u+5cbR9fXtm1bo1KlSkbVqlWNp59+2nj//feN2267zQCMxYsXF+gxyE1+noP5/dy81ntuXrZt22b4+voa1apVM15//XVj9OjRRkREhG2frtxW9vcNR9/Hk5KSjJiYGMPX19f497//bUyYMMFo1qyZ7XmV/X4ris9IR5/7V+5fbh555BGjXLlyRlpamt30mTNnGoCxYcMGwzAMIyEhwYiMjDSGDh1qfPDBB8Zbb71l1K5d2/D09LTlEIZhGAcPHrS998bExBhvvPGGMX78eOPw4cO222bMmGGb/5133jHatGljjBo1ypg6darx9NNPG76+vkazZs0Ms9lsm8/R59qsWbMMb29vo02bNrb3tjVr1uS5/ykpKUZcXJzh6elpPPvss8Z7771ntGnTxgCMCRMm5Nivxo0bGzVq1DDefPNN46233jJCQ0ONKlWq2H1O5cb6vrpgwQKjT58+Rps2bWy3/fHHHwZgrF271mjbtq1Rr149u2WjoqKMLl26GPv37zc8PDyM//u//8t1vVbW55z1sTMMw6hVq5ZRtWpV4+jRo1eNM7sNGzbkeLzyI98JeWJiogEY3bp1c2h+6x03cOBAu+nPPfecARg///yzbVpUVJQB2D0Zli5dagCGr6+vcfjwYdv0Dz/8MNcPIcDuzjebzUaXLl0MLy8vIyEhwTY9JSXFLp709HSjfv36xm233WY3HTDc3NyMv/76K8e+XfkBFRwcbAwZMiTP+yI9Pd0IDw836tevb1y6dMk2/fvvvzcAY8SIETn2ZdSoUXbrsH7oX018fLzh5eVl3HHHHXZfWCZNmmQAxscff2ybZn3RZr9vcnPu3DkDMN5+++2rzmd9DH/99Ve7eLy9vY1hw4bZpqWmptrFZhiWF7C3t7fdPltfPPXr17d7AT/wwAOGyWQyOnXqZLeOli1b5vigBgzA2Lhxo23a4cOHDR8fH6NHjx62ad27dze8vLyM/fv326b9/fffRmBgoHHLLbfYpj3zzDMGYKxatco27eLFi0b16tWN6OjoHPuVXUZGhmEymezuCytHH/NVq1YZgDFnzhy7+ZYsWZJjen4T8ptvvtnIzMy0m/fKhPyrr77K8eZ1pYSEhDy3fWVCvnfvXsPNzc3o0aNHjvsu+weMlZeXl/H444/nuW2rvBLyRx55xG6+Hj16GCEhIddcX5cuXXJNAq3P0bi4OLsP6XfffdcAbF/6zGazUbNmTaNjx452+5WSkmJUr17duP3226+6/QkTJhiA8fnnn9umJScnGzVq1HAoIXfkPW/Tpk0GYDzzzDN28/bv3z/H/eno68X6/OnQoYPdfj/77LOGu7u7cf78+TxjNAzDeOyxxww/Pz8jNTX1qvuXG0fX17ZtWwMwPv30U9u0tLQ0o2LFisa9995rm5afxyA3jj4HC/K5ea333Lx0797d8PHxsft83bFjh+Hu7n7NhNzR9/GxY8cagPH111/bpl26dMmoU6eO3f1WVJ+Rjn7eO5KQW3OS7777zm56586d7QYqMzMzcyTt586dMyIiIuwef2viGhQUZMTHx9vNn1tCnttz+rPPPsvxHMjP+52/v/8199vK+hrIPtCYnp5utGzZ0ggICDAuXLhgF3tISIhx9uxZ27zffPNNrvfflbInzt9//71hMpmMI0eOGIZhGM8//7ztvr5aQm4YhjFgwADDx8fH+Pvvv3Os1yq3hHz69OkGYHh5eRm33nqr8corrxirVq266uf79Sbk+S5ZuXDhAgCBgYEOzb948WIAhg4dajd92LBhADl+5q9bt65dTU7z5s0BuO2226hWrVqO6QcOHMixzSeffNJ23VqukJ6ezk8//WSb7uvra7t+7tw5EhMTadOmTY7yEoC2bdtSt27da+yppQ77999/z/PnkY0bNxIfH88TTzxhVxfWpUsX6tSpk2vJw7/+9S+7/9u0aZPrPmf3008/kZ6ezjPPPGN3AM6gQYMICgoqUH2/r68vXl5erFy5Mtd6rezq1q1rd0BDWFgYtWvXtovb29vbFltWVhZnzpwhICCA2rVr5/oY9O3b164utnnz5hiGYSuTyD796NGjZGZm2k1v2bIlTZo0sf1frVo1unXrxtKlS8nKyiIrK4sff/yR7t27ExMTY5svMjKSPn368Ntvv9me+4sXL6ZZs2bcfPPNtvkCAgIYPHgwhw4dYseOHXneN2fPnsUwDMqXL5/nPNd6zBcsWEBwcDC33347p0+ftl2aNGlCQEBAjp9E82PQoEHXrBe3Hm/w/fffk5GRUeBtWX399deYzWZGjBiR44Cx3Epbypcvz+nTpwu8vdzu3zNnztge34IaMGCA3c+b1teA9bH7448/2Lt3L3369OHMmTO2xy05OZn27dvz66+/XvVAzMWLFxMZGUnPnj1t0/z8/Bg8eLBD8Tnynmctx3viiSfslr2yW0F+Xi9WgwcPtns827RpQ1ZWFocPH841xosXL3L69GnatGlDSkoKu3btcmg/89rna60vICDAru7Ty8uLZs2a2b32rvcxsLrWc7Agn5vXes/NTVZWFkuXLqV79+52n69xcXF07Njxmvvh6Pv4kiVLqFy5Mnfffbdtmo+PD4MGDbJbX1F9Rubn8/5abrvtNkJDQ5k/f77dOpctW0bv3r1t09zd3W3vB2azmbNnz5KZmUnTpk1z3e69995rK/W7muz7kpqayunTp2nRogVArust7Pe7xYsXU7FiRR544AHbNE9PT5566imSkpL45Zdf7Obv3bu33efdle+LjrjjjjuoUKEC8+bNwzAM5s2bZ7f9q3n55ZfJzMzkjTfecHh7AI888ghLliyhXbt2/Pbbb4wePZo2bdpQs2ZN1qxZk691OSrfCXlQUBBgeXNzxOHDh3Fzc8vRwaNixYqUK1fO7s0YsHtTAAgODgagatWquU6/Mjl0c3Oz+4AAqFWrFoBdDez3339PixYt8PHxoUKFCoSFhfHBBx+QmJiYYx+qV69+rd0ELLX1f/75J1WrVqVZs2aMHDnS7kln3dfatWvnWLZOnTo57gsfH58cL9Dy5ctfMyHOazteXl7ExMTk2I4jvL29efPNN/nhhx+IiIjglltu4a233sq1Bd2Vj2FucZvNZsaPH0/NmjXx9vYmNDSUsLAwtm3blutjkJ/nhdlszrGOmjVr5lhnrVq1SElJISEhgYSEBFJSUnJ9bOLi4jCbzRw9ehSw3L95zWe9/VqMK45psHLkMd+7dy+JiYmEh4cTFhZmd0lKSrIdcFIQjjzX27Zty7333strr71GaGgo3bp1Y8aMGQ7X0V5p//79uLm5OfSlFyz3XUH6mFtd+Vyyflhc63V1vevdu3cvAP369cvxuH300UekpaXl+ty3Onz4MDVq1Mix77k9F3PjyHue9f36yufBle/f+Xm9WDlyv//111/06NGD4OBggoKCCAsLsyXJV7tv8pKf9VWpUiXHfXvla+96HwOra90X1/u5eWXsWVlZnDx50u6Snp5OQkICly5dyvX90ZF9cvR9/PDhw8TGxua4367cv6L6jMzP5/21eHh4cO+99/LNN9/Y3vMWLlxIRkaGXUIOMHPmTG644QZ8fHwICQkhLCyMRYsWXVeecfbsWZ5++mkiIiLw9fUlLCzMtqwjn53X+353+PBhatasmWPwJK/Pv8LYvqenJ/fddx9z587l119/5ejRo/Tp08ehZWNiYnj44YeZOnUqJ06ccHibAB07dmTp0qWcP3+eX3/9lSFDhnD48GG6du16XZ+zeSlQQl6pUiX+/PPPfC3n6AdoXqNzeU3PK7G5mlWrVnH33Xfj4+PD+++/z+LFi1m2bBl9+vTJdX3Zv5FeTa9evThw4AATJ06kUqVKvP3229SrV48ffvgh3zFC3vvsLM888wx79uzh9ddfx8fHh1deeYW4uLgcB9c68liNGTOGoUOHcssttzB79myWLl3KsmXLqFevXq6jhMXxvCgOFSpUwGQy5flm5MhjbjabCQ8PZ9myZbleHGkJmNdBco481609XNeuXcuTTz7J8ePHeeSRR2jSpAlJSUnXXP56nT9/3u5o+/wqqufMtdZrfV6//fbbeT52RXViqPy+5xWFa90/58+fp23btmzdupVRo0bx3XffsWzZMt58802AfLdxzO/6ivO9xNFtXe/npnV9R48eJTIy0u5SGKN8+X0fL2yOvF8WxXP//vvv5+LFi7bP9s8//5w6derQsGFD2zyzZ8+2neNj+vTpLFmyhGXLlnHbbbflet/kJ8+YNm0a//rXv1i4cCE//vij7Zet/Hx2lpTXvaP69OnDH3/8wciRI2nYsKHDAzgAL730EpmZmbbXfn75+fnRpk0bJk2axMsvv8y5c+cKnNddTYHaHnbt2pWpU6eydu1au/KS3ERFRWE2m9m7d6/tGxTAqVOnOH/+PFFRUQUJIU9ms5kDBw7YRsUB9uzZA2DrOvDll1/i4+PD0qVL7do4zZgx47q3HxkZyRNPPMETTzxBfHw8N954I//73//o1KmTbV93797NbbfdZrfc7t27C+2+yL6d7L8WpKenc/DgQbu+mfkVGxvLsGHDGDZsGHv37qVRo0aMHTs2z8b9efniiy+49dZbmT59ut3060228mIdncxuz549+Pn52UZY/Pz82L17d475du3ahZubm200PioqKs/5rLfnxcPDg9jYWA4ePFig/QDLY/DTTz/RunXra76Jly9f3q6zDlieB/kdKchNixYtaNGiBf/73/+YO3cuDz74IPPmzWPgwIH5GsGOjY3FbDazY8cOGjVqdNV5jx8/Tnp6ut17SXG5nlF5+KcXbVBQUIFeg1FRUfz55585fiHI7bl4JUff86zv1wcPHrQbNb2yW0xYWJjDrxdHrVy5kjNnzrBw4UJuueUW2/SCvlYKe31wfY9BfrdTmJ+bFStWZNmyZXbTGjZsSFBQEL6+vrm+PzqyT46+j0dFRbFjx44c99uVz6ui+Iwsis/7W265hcjISObPn8/NN9/Mzz//zEsvvWQ3zxdffEFMTAwLFy6022drZ7OCOHfuHMuXL+e1115jxIgRtum5PX75kZ/3tqioKLZt24bZbLYbJXfk8+963HzzzVSrVo2VK1fmO7GOjY3loYce4sMPP7SVOxdU06ZNAQrlM/RKBWp7+MILL+Dv78/AgQM5depUjtv379/Pu+++C1h6SAI5znA3btw4wFIbVtgmTZpku24YBpMmTcLT05P27dsDlm9sJpPJbpTw0KFD13WmqqysrBw/F4WHh1OpUiXbz1pNmzYlPDycKVOm2P28/8MPP7Bz585Cuy86dOiAl5cX7733nt230OnTp5OYmFig7aSkpJCammo3LTY2lsDAwAKVKri7u+f4hrxgwYIcra0Ky9q1a+3q644ePco333zDHXfcYeuzfccdd/DNN9/YlTadOnWKuXPncvPNN9vKtTp37sz69etZu3atbb7k5GSmTp1KdHT0Nb+5t2zZMscZwfKjV69eZGVlMXr06By3ZWZm2iXgsbGxOdo7Tp06tcBt5MDyoXDlY2dNpK3PBT8/P4AcXwZy0717d9zc3Bg1alSOEZ4rt7Np0yYAWrVqVZDQr4u/v3+BfuK2atKkCbGxsbzzzju5/pJwZQvAK3Xu3Jm///7brl1bSkqKQydgc/Q9z1o3/P7779tNnzhxYo71Ofp6cZR1JC37Y56enp4jFmetD67vMcjvdqDwPjd9fHzo0KGD3aV8+fK4u7vTsWNHvv76a44cOWKbf+fOnSxduvSa63X0fbxjx44cP36cb7/91jYtNTWVadOm2c1XFJ+RRfF5bz0nwnfffcesWbPIzMzMUa6S2/Pv999/t/vcyK/c1gk5nyf55e/v79B7NViemydPnrSroc/MzGTixIkEBATQtm3b64olLyaTiffee49XX32Vhx9+ON/Lv/zyy2RkZOTayjQ3y5cvz3W69fiO/JapOaJAI+SxsbHMnTuX3r17ExcXZ3emzjVr1rBgwQJbH8uGDRvSr18/pk6davsJcf369cycOZPu3btz6623Fub+4OPjw5IlS+jXrx/Nmzfnhx9+YNGiRfznP/+xjYR26dKFcePGceedd9KnTx/i4+OZPHkyNWrUYNu2bQXa7sWLF6lSpQo9e/akYcOGBAQE8NNPP7FhwwbGjh0LWOqg3nzzTQYMGEDbtm154IEHOHXqFO+++y7R0dE8++yzhXIfhIWF8eKLL/Laa69x5513cvfdd7N7927ef/99brrppgI1rN+zZw/t27enV69e1K1bFw8PD7766itOnTpVoNO/d+3alVGjRjFgwABatWrF9u3bmTNnTo76/8JSv359OnbsyFNPPYW3t7ftQ9l6NkmA//73vyxbtoybb76ZJ554Ag8PDz788EPS0tLsXsT//ve/+eyzz+jUqRNPPfUUFSpUYObMmRw8eJAvv/zymmey69atG7NmzWLPnj12v+Q4qm3btjz22GO8/vrr/PHHH9xxxx14enqyd+9eFixYwLvvvms76GzgwIH861//4t577+X2229n69atLF269Lp+hZg5cybvv/8+PXr0IDY2losXLzJt2jSCgoJsiYSvry9169Zl/vz51KpViwoVKlC/fv0cpzgGSx3pSy+9ZDto5p577sHb25sNGzZQqVIlXn/9ddu8y5Yto1q1ajRu3LjA8RdUkyZNmD9/PkOHDuWmm24iICCAu+66y+Hl3dzc+Oijj+jUqRP16tVjwIABVK5cmePHj7NixQqCgoL47rvv8lx+0KBBTJo0ib59+7Jp0yYiIyOZNWuW7cvP1Tj6ntekSRPuvfdeJkyYwJkzZ2jRogW//PKL7VfG7CNpjr5eHNWqVSvKly9Pv379eOqppzCZTMyaNavAP60X9vrg+h6D/CjOz83XXnuNJUuW0KZNG5544glbclWvXr1rfh46+j7+2GOPMWnSJB544AGefvppIiMjmTNnju3ATevzqig+I4vi8x4sBytOnDiRV199lQYNGuT41a5r164sXLiQHj160KVLFw4ePMiUKVOoW7dugUv7goKCbMdvZWRkULlyZX788cfr+tUHLK/7n376iXHjxlGpUiWqV6+e50jy4MGD+fDDD+nfvz+bNm0iOjqaL774gtWrVzNhwgSHG34URLdu3ejWrVuBlrWOkl/ZL/1q26pevTp33XUXsbGxJCcn89NPP/Hdd99x00035eu932EF6s1y2Z49e4xBgwYZ0dHRhpeXlxEYGGi0bt3amDhxol1LqYyMDOO1114zqlevbnh6ehpVq1Y1XnzxRbt5DMO+VU12QI52gtaWOtnb8PXr18/w9/c39u/fb9xxxx2Gn5+fERERYbz66qs5WtVMnz7dqFmzpuHt7W3UqVPHmDFjRq79kXPbdvbbrG3A0tLSjOeff95o2LChERgYaPj7+xsNGzbMtWf4/PnzjcaNGxve3t5GhQoVjAcffNA4duyY3TzWfblSbjHmZdKkSUadOnUMT09PIyIiwnj88cft+rhmX9+12h6ePn3aGDJkiFGnTh3D39/fCA4ONpo3b27X/ssw8n4M27Zta7Rt29b2f2pqqjFs2DAjMjLS8PX1NVq3bm3rKZp9vtxaFBlG7m2K8tof62M4e/Zs22PeuHHjXFuUbd682ejYsaMREBBg+Pn5GbfeemuuPVn3799v9OzZ0yhXrpzh4+NjNGvWLEdP27ykpaUZoaGhxujRo+2m5/cxnzp1qtGkSRPD19fXCAwMNBo0aGC88MILtvZOhmEYWVlZxvDhw43Q0FDDz8/P6Nixo7Fv37482x7m1srwyraHmzdvNh544AGjWrVqhre3txEeHm507drVrq2kYRjGmjVrjCZNmhheXl52r5W89ufjjz+2vS7Kly9vtG3b1li2bJndvkRGRhovv/xyzjs1F9m3mX27Vz7Xr9y/vCQlJRl9+vQxypUrZwC2tnt5PUdza1lmGIaxZcsW45577jFCQkIMb29vIyoqyujVq5exfPnya+7T4cOHjbvvvtvw8/MzQkNDjaefftrW7vJabQ8dfc9LTk42hgwZYlSoUMEICAgwunfvbuzevdsAbL3prRx5veT13LLeb9njXr16tdGiRQvD19fXqFSpkvHCCy/Y2sxda/9y4+j6cmudltd2HH0McpOf5+D1fm5e+V56Nb/88ovttRoTE2NMmTIl1+dGbm0PHXkfNwzDOHDggNGlSxfD19fXCAsLM4YNG2Z8+eWXBmDXt94wCv8z0tHnviNtD63MZrNRtWpVAzD++9//5nr7mDFjjKioKNtnzvfff5/jOZVbLnPlbdnfQ44dO2b06NHDKFeunBEcHGzcd999xt9//31d73e7du0ybrnlFsPX19cArnkfnDp1yhgwYIARGhpqeHl5GQ0aNMjxPne1/boy1tzk9b56pWu1Pcxu7969tnae12p7+Nlnnxn333+/ERsba/j6+ho+Pj5G3bp1jZdeesnW2vFK19v20GQYJfTotwLo378/X3zxRbEcWCalh8lkYsiQIXalTM42evRoZsyYwd69e0vcwbsl1ddff02fPn3Yv39/rmcIlqLzxx9/0LhxY2bPns2DDz7o7HCkjJgwYQLPPvssx44do3Llys4OR8SpClRDLiLX59lnnyUpKYl58+Y5O5RS48033+TJJ59UMl7ELl26lGPahAkTcHNzszs4UiQ/rnxepaam8uGHH1KzZk0l4yIUsIZcRK5PQEBAkfQxLcuu52Aocdxbb73Fpk2buPXWW/Hw8OCHH37ghx9+YPDgwfnunCJidc8991CtWjUaNWpEYmIis2fPZteuXcyZM8fZoYmUCErIRUTEplWrVixbtozRo0eTlJREtWrVGDlyZI62biL50bFjRz766CPmzJlDVlYWdevWZd68eTm6k4i4qjJVQy4iIiIiUtqohlxERERExImUkIuIiIiIOJHL1ZCbzWb+/vtvAgMDr/tU2CIiIiJS+AzD4OLFi1SqVOmaJ9wrC1wuIf/777/VKUBERESkFDh69ChVqlRxdhhFzuUScutpXY8ePUpQUJCToxERERGRK124cIGqVava8rayzuUScmuZSlBQkBJyERERkRLMVcqLy35RjoiIiIhICaaEXERERETEiZSQi4iIiIg4kcvVkIuISOmUlZVFRkaGs8MQkULi6emJu7u7s8MoEZSQi4hIiZeUlMSxY8cwDMPZoYhIITGZTFSpUoWAgABnh+J0SshFRKREy8rK4tixY/j5+REWFuYyXRdEyjLDMEhISODYsWPUrFnT5UfKlZCLiEiJlpGRgWEYhIWF4evr6+xwRKSQhIWFcejQITIyMlw+IddBnSIiUipoZFykbNFr+h9KyEVEREREnEgJuYiIiIiIEykhFxERKWb9+/ene/fuzg7DaaKjo5kwYYJTtn3o0CFMJhN//PFHgdfh6o+fFD4d1CkiIiIuo2rVqpw4cYLQ0NBrznvo0CGqV6/Oli1baNSokW36u+++qxacUqiUkIuIiIhLSE9Px8vLi4oVK17XeoKDgwspIhELlayIiEipYhgGKemZTrnkd1T0iy++oEGDBvj6+hISEkKHDh1ITk623f7OO+8QGRlJSEgIQ4YMsTsT6axZs2jatCmBgYFUrFiRPn36EB8fb7t95cqVmEwmli5dSuPGjfH19eW2224jPj6eH374gbi4OIKCgujTpw8pKSm25dq1a8eTTz7Jk08+SXBwMKGhobzyyit2+3bu3Dn69u1L+fLl8fPzo1OnTuzdu9du37788kvq1auHt7c30dHRjB07Nl/3TUpKCo888giBgYFUq1aNqVOn2t1+9OhRevXqRbly5ahQoQLdunXj0KFDdvvxzDPP2C3TvXt3+vfvb/s/Ojqa0aNH07dvX4KCghg8eHCOkpVz587x4IMP2tpq1qxZkxkzZgBQvXp1ABo3bozJZKJdu3ZAzpIVs9nMW2+9RY0a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T506RcWKFa+6bHJyMvPmzePRRx+96nze3t4EBQXZXZwh1tZp5XJCHn75wE6NkIuIiIi4NKcm5F5eXjRp0oTly5fbppnNZpYvX07Lli2vuuyCBQtIS0vjoYceKuowC4X1wM791taHGiEXEREREUpAycrQoUOZNm0aM2fOZOfOnTz++OMkJyczYMAAAPr27cuLL76YY7np06fTvXt3QkJCijvkAslRsmLttJKwG7IynRSViIiIiDib08/U2bt3bxISEhgxYgQnT56kUaNGLFmyxHag55EjR3KcVnX37t389ttv/Pjjj84IuUBiL4+Qn0hMJTktE/9yUeDpDxnJcGYfhNdxcoQiIiIi4gxOT8gBnnzySZ588slcb1u5cmWOabVr18YoZf27y/l5EeLvxZnkdA6eTqZ+5WAIj4PjGy1lK0rIRURERFyS00tWXMk/deRXdFrRgZ0iIiIiLksJeTH6p4788oGd1k4r8UrIRURERFyVEvJiZB0hP5BjhFydVkRERERclRLyYpTnCPn5w5B20UlRiYiIiIgzKSEvRjGXE/KDp5Mwmw3wD4EASzcZ4nc5MTIRERERcRYl5MWoanlfPN1NpGaY+TvxkmViuE4QJCIiIuLKlJAXIw93N6JDrjxj5+WyFXVaEREREXFJSsiLWY4DO20j5ErIRURERFyREvJi9s+Bnbl0WillJzsSERERkeunhLyYWQ/sPGAtWQmrAyY3uHQWkk45MTIRERERcQYl5MUs9sqzdXr6QoUYy3X1IxcRERFxOUrIi5l1hPzUhTSS0jItE1VHLiIiIuKylJAXs2BfT0IDvIHsZ+xUpxURERERV6WE3An+6bRyRetD9SIXERERcTlKyJ0gR6cVa8lKwm4wZzkpKhERERFxBiXkThB75Qh5+erg6QeZqXD2gBMjExEREZHipoTcCXKMkLu5WdofgjqtiIiIiLgYJeROYE3ID5xOJst8+WRAEeq0IiIiIuKKlJA7QeXyvnh5uJGeaebv85csE8OtnVY0Qi4iIiLiSpSQO4G7m4nqIZY68n221ocaIRcRERFxRUrInSRH60PrCPnZg5Ce7KSoRERERKS4KSF3khwHdgaEgX8YYEDCLucFJiIiIiLFSgm5k/wzQp70z0RrP3KdsVNERETEZSghd5J/RsizlafYztiphFxERETEVSghdxLrCHnCxTQupGZY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hRTIRURsYunSpTgcDkpKSqwuRURETqJALiIiIiJiIQVyERERERELKZCLiLQSt9vNrFmz6NKlC/7+/qSmpjJ37lygqZ1k/vz59O/fHz8/P4YNG8bWrVubfY7333+fPn364OvrS1JSEk899VSz4zU1Ndx3333Ex8fj6+tLcnIyf//735udk5GRweDBgwkICGDEiBFkZWU1Htu0aRNjx44lKCiI4OBg0tLS2LBhQwv9jYiICCiQi4i0mlmzZvGvf/2Ll19+mW3btnH33Xdz7bXXsmzZssZz7r33Xp566inWr19PZGQkkyZNoq6uDjCD9JVXXslVV13Fli1bePTRR3nooYd47bXXGj9++vTpvPXWWzz33HPs2LGDv/71rwQGBjar4ze/+Q1PPfUUGzZswNvbmxtuuKHx2LRp04iLi2P9+vVkZGRw//334+Pj07J/MSIiNucwDMOwuggREU9XU1NDeHg4ixYtYvjw4Y3jN910E5WVlfz85z9n7NixvP3220ydOhWAY8eOERcXx2uvvcaVV17JtGnTKCws5PPPP2/8+F//+tfMnz+fbdu2sWvXLlJSUli4cCHjx48/pYalS5cyduxYFi1axLhx4wD45JNPuPjii6mqqsLPz4/g4GCef/55ZsyY0cJ/IyIi8jXNkIuItII9e/ZQWVnJ+eefT2BgYOPrX//6F9nZ2Y3nnRzWw8PDSUlJYceOHQDs2LGDkSNHNvu8I0eOZPfu3TQ0NJCZmYmXlxfnnnvud9bSv3//xl936tQJgIKCAgBmzpzJTTfdxPjx43niiSea1SYiIi1DgVxEpBUcP34cgPnz55OZmdn42r59e2Mf+Y/l7+//g847uQXF4XAAZn87wKOPPsq2bdu4+OKL+eKLL+jduzfz5s07K/WJiMjpKZCLiLSC3r174+vrS05ODsnJyc1e8fHxjeetWbOm8dfFxcXs2rWLXr16AdCrVy9WrlzZ7POuXLmSHj164OXlRb9+/XC73c160s9Ejx49uPvuu/n888+ZMmUK//znP3/U5xMRke/mbXUBIiJ2EBQUxK9+9Svuvvtu3G4355xzDqWlpaxcuZLg4GASExMB+O1vf0vHjh2Jjo7mN7/5DREREUyePBmAe+65hyFDhvD4448zdepUVq9ezezZs3nxxRcBSEpKYsaMGdxwww0899xzpKamcuDAAQoKCrjyyiu/t8aqqiruvfderrjiCrp06UJubi7r16/n8ssvb7G/FxERUSAXEWk1jz/+OJGRkcyaNYu9e/cSGhrKoEGDePDBBxtbRp544gnuuusudu/ezYABA/joo49wuVwADBo0iHfffZeHH36Yxx9/nE6dOvHb3/6W6667rvH3eOmll3jwwQe57bbbOHr0KAkJCTz44IM/qD4vLy+OHj3K9OnTOXLkCBEREUyZMoXHHnvsrP9diIhIE62yIiLSBny9AkpxcTGhoaFWlyMiIq1IPeQiIiIiIhZSIBcRERERsZBaVkRERERELKQZchERERERCymQi4iIiIhYSIFcRERERMRCCuQiIiIiIhZSIBcRERERsZACuYiIiIiIhRTIRUREREQspEAuIiIiImKh/w8XP/3rch6J5QAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo_heuristic\", \"shampoo_heuristic_diagonal\"] \n", "dataset = \"mnist\"\n", - "# \"shampoo\", \"shampoo_diagonal\", \"shampoo_momentum\", \"shampoo_momentum_diagonal\", \"shampoo_heuristic\", \"shampoo_heuristic_diagonal\", \"adam\"\n", - "optimizers = [\"shampoo\", \"shampoo_momentum\", \"adam\"] \n", - "\n", - "for optimizer in optimizers:\n", - " path = f\"metrics/metrics_{optimizer}_{dataset}.csv\"\n", - " df = pd.read_csv(path, names=[\"epochs\", \"train_losses\", \"train_accuracies\", \"val_losses\", \"val_accuracies\"])\n", - " df[\"optimizer\"] = optimizer\n", - " collected_data = pd.concat([collected_data, df], axis=0)\n", - "\n", - "figure = plt.figure(figsize=(8,8))\n", - "for optimizer in optimizers:\n", - " print(collected_data[collected_data[\"optimizer\"]==optimizer])\n", - " optimzer_data = collected_data[collected_data[\"optimizer\"]==optimizer]\n", - " plt.plot(optimzer_data[\"epochs\"], optimzer_data[\"val_losses\"], label = optimizer)\n", - "\n", - "plt.title(\"Comparison between multiple variants of the shampoo optimizer and adam\")\n", - "plt.xlabel(\"epochs\")\n", - "plt.ylabel(\"validation loss\")\n", - "plt.legend()\n", - "plt.show()\n", - "figure.savefig(f\"diagrams/diagram_metrics_{dataset}.png\", format=\"png\")" + "save_figure = True\n", + "title = \"Comparison of shampoo (heuristic) in the diagonal and non-diagonal variant on MNIST\"\n", + "save_path = f\"diagrams/shampoo_heuristic_diagonal_nondiagonal_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "9c171be1", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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Q0FeRCTKZs+ezQsvvMDTTz/NqlWruPXWW/nRj37ERx99FFrmzjvv5JFHHmHx4sV0796dc889F7/fD9gAPn36dC655BK+/vpr7rvvPn71q18xZ86c0Ocvv/xyXnzxRR577DHWrFnDM888Q1JSUlg5fvnLX/LII4+wZMkS3G43V111VWjejBkzyM3NZfHixSxdupRf/OIXeDye9t0xIiJyWA5jjIl2IUREuqra2lrS09OZN28e48ePD02/5pprqKqq4tprr2XSpEm89NJLXHzxxQDs27eP3Nxc5syZw/Tp05kxYwZ79+7lvffeC33+5z//OW+99RarVq1i3bp1DB48mPfff58pU6YcUoYFCxYwadIk5s2bx+TJkwF4++23mTZtGtXV1cTFxZGSksIf/vAHZs6c2c57REREWks18iIiUVRQUEBVVRXf+973SEpKCr1eeOEFNmzYEFruwJCfnp7O4MGDWbNmDQBr1qxhwoQJYeudMGEC69evJxAIkJ+fj8vlYuLEiYcty/Dhw0Pj2dnZABQWFgJw2223cc011zBlyhQeeuihsLKJiEh0KMiLiERRRUUFAG+99Rb5+fmh1+rVq0Pt5L+r+Pj4Vi13YFMZh8MB2Pb7APfddx+rVq1i2rRpzJ8/n6FDh/L666+3SflEROTbUZAXEYmioUOH4vP52Lp1KwMHDgx79e7dO7Tc559/Hhrfv38/69atY8iQIQAMGTKEhQsXhq134cKFDBo0CJfLxbBhwwgGg2Ft7r+NQYMGceutt/Lee+9x4YUX8vzzz3+n9YmIyHfjjnYBRES6suTkZO644w5uvfVWgsEgp5xyCqWlpSxcuJCUlBT69u0LwAMPPEBGRgY9evTgl7/8JZmZmZx//vkA3H777YwZM4YHH3yQiy++mEWLFvH444/z5JNPAtCvXz9mzpzJVVddxWOPPcaIESPYsmULhYWFTJ8+/YhlrK6u5s477+QHP/gBeXl5bN++ncWLF3PRRRe1234REZEjU5AXEYmyBx98kO7duzN79mw2btxIWloao0aN4u677w41bXnooYe45ZZbWL9+PSeccAL/+te/8Hq9AIwaNYqXX36Ze+65hwcffJDs7GweeOABrrjiitB3PPXUU9x9993ccMMNFBcX06dPH+6+++5Wlc/lclFcXMzll1/Onj17yMzM5MILL+T+++9v830hIiKtp15rREQ6sMYeZfbv309aWlq0iyMiIh2I2siLiIiIiMQgBXkRERERkRikpjUiIiIiIjFINfIiIiIiIjFIQV5EREREJAYpyIuIiIiIxCAFeRERERGRGKQgLyIiIiISgxTkRURERERikIK8iIiIiEgMUpAXEREREYlB/x8TfGRjRQ+GEAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo_heuristic\", \"shampoo_heuristic_diagonal\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison of shampoo (heuristic) in the diagonal and non-diagonal variant on CIFAR10\"\n", + "save_path = f\"diagrams/shampoo_heuristic_diagonal_nondiagonal_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "b47088e9", + "metadata": {}, + "source": [ + "## Experiment 1: Comparison between shampoo implementations on MNIST" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "9fccabd1", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAArMAAAK9CAYAAAA37eRrAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAC5IElEQVR4nOzdd1xV9f8H8Ne5Fy57b5ChiAgq4k7NPXDkrLTUUHPl+GmpZWaaoxy5c2RZmZmVOTO3kuTA3FtEERFUlqggQ9b9/P4g7tcbqFwFzgVez8fjPvSee8b7XO69vPjcz/l8JCGEABERERFROaSQuwAiIiIiohfFMEtERERE5RbDLBERERGVWwyzRERERFRuMcwSERERUbnFMEtERERE5RbDLBERERGVWwyzRERERFRuMcwSERERUbnFMEsVgiRJmD59utxlFMnLywuvvfaa3GVUCKGhoZAkCZs2bZK7FEyfPh2SJOHevXtyl6K3Cp4jOURHR0OSJPz444+yHL884XNF5R3DbAVx48YNjBgxAtWqVYOxsTEsLS3RvHlzLF26FJmZmXKXRyUoIyMD06dPR2hoqNyllJpffvkFS5YskbsMIr1x5coVTJ8+HdHR0S+8D76vnk2SJEiShKFDhxb5+JQpUzTrPPlH7KBBgyBJEgICAiCEKHK/Y8aM0dwv+ONhwYIFWutFR0dj8ODB8Pb2hrGxMZydndGyZUt89tlnAIAff/xRc/xn3by8vErg2ShfDOQugF7ezp078eabb8LIyAjBwcGoXbs2srOzceTIEXz44Ye4fPkyvv32W7nLLFWZmZkwMKgcL+eMjAzMmDEDANC6dWt5iyklv/zyCy5duoT3339f7lLoJXz66af4+OOP5S6jQrhy5QpmzJiB1q1bv3BYedr7ytPTE5mZmTA0NHz5Qss5Y2NjbN68GStXroRKpdJ67Ndff4WxsTEeP35c5LYXL17Eli1b8Prrr+t83MjISDRq1AgmJiZ499134eXlhbi4OJw5cwbz5s3DjBkz0LJlS6xbt05ru6FDh6Jx48YYPny4Zpm5ubnOxy/vKsdv/wrs5s2beOutt+Dp6Ym//voLLi4umsdGjx6NyMhI7Ny5U8YKS49arUZ2djaMjY1hbGwsdzlE9B8GBgaV5o/M8kySJH6G/qtTp07Yvn07du/ejR49emiWh4WF4ebNm3j99dexefPmQtuZmJjA3d0dM2fORO/evXXuXrN48WKkpaXh3Llz8PT01HosMTERAFCtWjVUq1ZN67H33nsP1apVw4ABA3Q6XkXDbgbl3Jdffom0tDR8//33WkG2QPXq1TFu3DjN/dzcXMyaNQve3t4wMjKCl5cXPvnkE2RlZWltV9DPMzQ0FA0bNoSJiQnq1Kmj+Wp7y5YtqFOnDoyNjdGgQQOcPXtWa/tBgwbB3NwcUVFRCAoKgpmZGVxdXTFz5sxCX8MsWLAAzZo1g52dHUxMTNCgQYMi+0QWfFWzfv161KpVC0ZGRtizZ4/msSf7zD569Ajvv/8+vLy8YGRkBEdHR3To0AFnzpzR2ufGjRvRoEEDmJiYwN7eHgMGDMCdO3eKPJc7d+6gZ8+eMDc3h4ODAyZOnIi8vLyn/GQK27dvHwIDA2FsbAx/f39s2bKl0DoPHz7E+++/D3d3dxgZGaF69eqYN28e1Go1gPyvoRwcHAAAM2bM0HytNH36dGzfvh2SJOHChQua/W3evBmSJKF3795ax/Hz80Pfvn21lv3888+a58LW1hZvvfUWYmNjC9V4/PhxdOrUCVZWVjA1NUWrVq1w9OhRrXUK+kpGRkZi0KBBsLa2hpWVFQYPHoyMjIxnPk+tW7fGzp07cevWrad+baZWq/HFF1+gSpUqMDY2Rrt27RAZGflCtT7NsmXLUKtWLZiamsLGxgYNGzbEL7/8Umi9hw8fPvcc16xZg7Zt28LR0RFGRkbw9/fH119/XWhfZfm+S09Px4QJEzSvNV9fXyxYsKDQesX9zChKUX1mC97HGzduhL+/P0xMTNC0aVNcvHgRAPDNN9+gevXqMDY2RuvWrQt9rd66dWvUrl0bp0+fRrNmzWBiYoKqVati1apVz60HAK5evYo33ngDtra2MDY2RsOGDbF9+3atdQq+zj1y5AjGjh0LBwcHWFtbY8SIEcjOzsbDhw8RHBwMGxsb2NjY4KOPPir0vKnVaixZsgS1atWCsbExnJycMGLECDx48EBrvYKf+ZEjR9C4cWMYGxujWrVq+Omnn7TqefPNNwEAbdq00bwvCl4Xf/zxB7p27QpXV1cYGRnB29sbs2bN0vp8etb76ml9Zv/66y+0aNECZmZmsLa2Ro8ePRAeHq61ji7v9f379+PVV1+FtbU1zM3N4evri08++eS5PzNdf28967l8Hjc3N7Rs2bLQe339+vWoU6cOateuXeR2CoUCn376KS5cuICtW7cW+3gFbty4gSpVqhQKsgDg6Oio8/4qHUHlmpubm6hWrVqx1x84cKAAIN544w2xYsUKERwcLACInj17aq3n6ekpfH19hYuLi5g+fbpYvHixcHNzE+bm5uLnn38WHh4eYu7cuWLu3LnCyspKVK9eXeTl5Wkdx9jYWPj4+Ih33nlHLF++XLz22msCgJg6darWsapUqSJGjRolli9fLhYtWiQaN24sAIgdO3ZorQdA+Pn5CQcHBzFjxgyxYsUKcfbsWc1jn332mWbdfv36CZVKJcaPHy++++47MW/ePNGtWzfx888/a9ZZs2aNACAaNWokFi9eLD7++GNhYmIivLy8xIMHDwqdS61atcS7774rvv76a/H6668LAGLlypXPfc49PT1FjRo1hLW1tfj444/FokWLRJ06dYRCoRD79u3TrJeeni4CAgKEnZ2d+OSTT8SqVatEcHCwkCRJjBs3TgghRFpamvj6668FANGrVy+xbt06sW7dOnH+/HmRnJwsJEkSy5Yt0+xz3LhxQqFQCAcHB82yxMREAUAsX75cs+zzzz8XkiSJvn37ipUrV4oZM2YIe3v7Qs9FSEiIUKlUomnTpmLhwoVi8eLFIiAgQKhUKnH8+HHNep999pkAIOrVqyd69+4tVq5cKYYOHSoAiI8++uiZz9e+fftEYGCgsLe315zf1q1bhRBCHDx4ULPfBg0aiMWLF4vp06cLU1NT0bhxY639FLfWonz77bea98k333wjli5dKoYMGSLGjh37QufYqFEjMWjQILF48WKxbNky0bFjx0I/AyHK7n2nVqtF27ZthSRJYujQoWL58uWiW7duAoB4//33tWoq7mdGUQqeoycBEAEBAcLd3V3rXDw8PMTy5cuFv7+/WLhwofj000+FSqUSbdq00dq+VatWwtXVVTg6OooxY8aIr776Srz66qsCgPj+++816928eVMAEGvWrNEsu3TpkrCyshL+/v5i3rx5Yvny5aJly5ZCkiSxZcsWzXoFnw2BgYGiU6dOYsWKFeKdd97R/GxfffVV0a9fP7Fy5UrN87t27VqtOocOHSoMDAzEsGHDxKpVq8SkSZOEmZmZaNSokcjOzi70M3dychKffPKJWL58uahfv76QJElcunRJCCHEjRs3xNixYwUA8ckn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Im+99RZJSUnhPoApKSnExcWRkpLCD3/4Q2bOnEl6ejrJycnceOONjBs3jlNOOcXm6qPDkc5BaWkpL774IhdccAEZGRmsXLmSm2++mTPOOIOSkhKbq48Od9xxB+effz75+fkcOHCAF198kUWLFjFv3rzufQ3YOpZCN/X444+b+fn5ZkxMjDlmzBjzww8/tLukHmPq1KlmTk6OGRMTY/bp08ecOnWquWnTJrvLimoLFy40gUOmGTNmmKZpDc911113mVlZWabH4zEnTJhgrl+/3t6io0x756Curs4899xzzV69eplut9ssKCgwr7nmGrO8vNzusqNKW79/wHzuuefCx9TX15vXXXedmZaWZsbHx5vf/va3zZ07d9pXdJQ50jkoKyszzzjjDDM9Pd30eDxmcXGx+Ytf/MKsqqqyt/AoctVVV5kFBQVmTEyM2atXL3PChAnm/Pnzw/u76zVgmKZpdmV4FhERERHpKOozKyIiIiIRS2FWRERERCKWwqyIiIiIRCyFWRERERGJWAqzIiIiIhKxFGZFREREJGIpzIqIiIhIxFKYFREREZGIpTArItJDLFq0CMMwqKystLsUEZEOozArIiIiIhFLYVZEREREIpbCrIhIFwkGg8yaNYuioiLi4uIYMWIEr732GtDcBWDu3LmUlJQQGxvLKaecwqpVq1q9x+uvv87QoUPxeDwUFhby6KOPttrv9Xq57bbbyMvLw+PxUFxczP/93/+1Omb58uWMHj2a+Ph4Tj31VNavXx/e9/nnn3P22WeTlJREcnIyo0aN4pNPPumk34iIyPFTmBUR6SKzZs3ihRde4Omnn2b16tXcfPPNfO9732Px4sXhY37xi1/w6KOPsmzZMnr16sVFF12Ez+cDrBB62WWXcfnll/PFF19w7733ctddd/H888+HXz99+nReeukl5syZw9q1a3nmmWdITExsVccvf/lLHn30UT755BNcLhdXXXVVeN+0adPo27cvy5YtY/ny5dx+++243e7O/cWIiBwHwzRN0+4iRESindfrJT09nffee49x48aFt1999dXU1dVx7bXXcvbZZ/Pyyy8zdepUAPbt20ffvn15/vnnueyyy5g2bRq7d+9m/vz54dffeuutzJ07l9WrV7NhwwYGDRrEu+++y8SJEw+pYdGiRZx99tm89957TJgwAYB//vOfXHjhhdTX1xMbG0tycjKPP/44M2bM6OTfiIhIx1DLrIhIF9i0aRN1dXV84xvfIDExMTy98MILlJaWho9rGXTT09MZNGgQa9euBWDt2rWMHz++1fuOHz+ejRs3EggEWLFiBU6nkzPPPLPdWkpKSsLLOTk5AOzatQuAmTNncvXVVzNx4kRmz57dqjYRke5IYVZEpAvU1NQAMHfuXFasWBGe1qxZE+43e7zi4uKO6riW3QYMwwCs/rwA9957L6tXr+bCCy/k/fff54QTTuCNN97okPpERDqDwqyISBc44YQT8Hg8lJWVUVxc3GrKy8sLH/fhhx+Gl/fv38+GDRsYMmQIAEOGDGHJkiWt3nfJkiUMHDgQp9PJ8OHDCQaDrfrgfh0DBw7k5ptvZv78+UyZMoXnnnvuuN5PRKQzuewuQESkJ0hKSuKWW27h5ptvJhgMctppp1FVVcWSJUtITk6moKAAgPvvv5+MjAyysrL45S9/SWZmJpMnTwbg5z//OSeffDIPPPAAU6dOZenSpTzxxBP8/ve/B6CwsJAZM2Zw1VVXMWfOHEaMGMG2bdvYtWsXl1122RFrrK+v5xe/+AWXXnopRUVFbN++nWXLlnHJJZd02u9FROR4KcyKiHSRBx54gF69ejFr1iw2b95MamoqJ510EnfeeWf4a/7Zs2fzs5/9jI0bNzJy5Ej+8Y9/EBMTA8BJJ53Eq6++yt13380DDzxATk4O999/P1deeWX4M5566inuvPNOrrvuOvbu3Ut+fj533nnnUdXndDrZu3cv06dPp6KigszMTKZMmcJ9993X4b8LEZGOotEMRES6gaaRBvbv309qaqrd5YiIRAz1mRURERGRiKUwKyIiIiIRS90MRERERCRiqWVWRERERCKWwqyIiIiIRCyFWRERERGJWAqzIiIiIhKxFGZFREREJGIpzIqIiIhIxFKYFREREZGIpTArIiIiIhHr/wPRPXKlGISgPQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison between the shampoo implementations on MNIST\"\n", + "save_path = f\"diagrams/shampoo_implementations_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "571480c8", + "metadata": {}, + "source": [ + "## Experiment 2: Comparison between shampoo and typical optimizers on MNIST" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "71b7b4da", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\", \"adam\", \"sgd\", \"adagrad\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison between multiple variants of the shampoo optimizer, adam, sgd and adagrad on MNIST\"\n", + "save_path = f\"diagrams/total_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "d4b5fb5f", + "metadata": {}, + "source": [ + "## Experiment 3: Comparison between shampoo implementations on CIFAR10" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "95f30bae", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAArMAAAK9CAYAAAA37eRrAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAADShElEQVR4nOzdd3iTZfcH8O+T1STdk7ZQWjZlbwVEEGQqQ2QoP19AEXgFFFQQUUGmgIKooOIEVBREwBdFkCHIFASZskcpo9BSupuu5P79keahoSuFNoN8P9fVi+bJk+Qkbcrp6bnPLQkhBIiIiIiIXJDC0QEQEREREd0tJrNERERE5LKYzBIRERGRy2IyS0REREQui8ksEREREbksJrNERERE5LKYzBIRERGRy2IyS0REREQui8ksEREREbksJrPkEiRJwtSpUx0dRpGioqLw+OOPOzqM+8L27dshSRJ++uknR4eCqVOnQpIk3Lx509GhOC3La+QIMTExkCQJS5cudcjjuxK+VnS/YzLrIs6fP4+RI0eievXq0Gq18PHxQdu2bfHhhx/CYDA4OjwqR5mZmZg6dSq2b9/u6FAqzPfff48PPvjA0WEQOY0TJ05g6tSpiImJuev74PuqdFlZWViwYAEeeOAB+Pr6QqvVonbt2hgzZgzOnDkjn1fUL7NDhw6FJElFfmzcuNHqcQYMGABJkjBx4sQi47D84m75UCqVCAkJQb9+/XDy5MlC558+fRovv/wy2rRpA61WC0mSSvxeWbduHZo1awatVouqVavi7bffRl5eXhlfLdehcnQAVLr169ejf//+8PDwwODBg9GgQQPk5ORg165dmDBhAv799198/vnnjg6zQhkMBqhU7vHtmpmZiWnTpgEAOnTo4NhgKsj333+P48ePY9y4cY4Ohe7BW2+9hddff93RYdwXTpw4gWnTpqFDhw6Iioq6q/so7n0VGRkJg8EAtVp974G6sJs3b6Jbt244ePAgHn/8cQwaNAheXl44ffo0VqxYgc8//xw5OTkl3oeHhwe+/PLLQscbN24sf56amopffvkFUVFR+OGHHzBnzpxi/4Lx0ksvoWXLlsjNzcXRo0exePFibN++HcePH0doaKh83t69e/HRRx+hXr16iI6OxuHDh4uNccOGDejTpw86dOiAhQsX4tixY5g5cybi4+Px6aeflvIquSb3yA5c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nYuUlBR4eHigY8eOaNOmDfz9/TFkyBC89NJLkCQJ3377bZF/Vi/L++q9995D9+7d0bp1awwbNgwGgwELFy6Er6+v1UxvW02fPh07duzAY489hsjISMTHx+OTTz5BlSpV5J9TRbHn9+A333yDLl26oG/fvujZsyc6deoET09PnD17FitWrEBcXNxdz5pdvnw5lEplscl3r1698Oabb2LFihWFFrvdacKECfjxxx/xwQcfYM6cOQDMvyAvXLgQAORZ2osWLYKfnx/8/PysFoW+99576NWrF7p06YKnnnoKx48fx6JFi/D8889bVb/vK3abm0D35MyZM2L48OEiKipKaDQa4e3tLdq2bSsWLlxoNZolNzdXTJs2TVSrVk2o1WoREREhJk2aZHWOEOYRJ4899lihxwFQaOSVZazLe++9Jx+zzNs7f/686NKli9Dr9aJSpUri7bfftpqLKYQQX331lahVq5bw8PAQdevWFUuWLCl2pE9x47ZQYFRVdna2mDBhgmjcuLHw9vYWnp6eonHjxkXOhF25cqVo2rSp8PDwEAEBAeL//u//xJUrV6zOsTyXOxUVY1Esr+Xvv/8uGjVqJD/PO+cHCiFEWlqamDRpkqhZs6bQaDQiKChItGnTRsybN89qNuWePXtE8+bNhUajKTSm699//5XHVxU0c+ZMgSLm/FqsXr1aPPTQQ8LT01N4enqKunXritGjR4vTp09bnXfo0CHRt29fERgYKDw8PERkZKQYMGCA2Lp1a6HX5s4xPJaRR0WNjCkoPT1dDBo0SPj5+QkA8jih4mYvFjVayNZYi/LZZ5+Jhx9+WL5djRo1xIQJE0RKSspdPcd169aJRo0aCa1WK6KiosTcuXPF119/Xeg8e77v0tLSxMsvvyzCw8OFWq0WtWrVEu+9957VKCohbP+ZURRb38dFPRchiv56t2/fXtSvX18cOHBAtG7dWmi1WhEZGVloZm9x3xPnz58XgwcPFqGhoUKtVovKlSuLxx9/XPz000/yOZav4d9//13k87nza17cz4jPP/9cNG/eXOh0OuHt7S0aNmwoXnvtNXHt2jX5nOK+5u3bt7ca6SSEEF988YWoXr26UCqVVmO6du/eLR588EGh0+lEeHi4eO211+SRbgVHeRX3virutdqyZYto27at0Ol0wsfHR/Ts2VOcOHHCptfkzvfB1q1bRe/e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6NGjB06cOAG1Wo2DBw9iwIABmDp1KgYOHIg9e/Zg1KhRCAwMtEomSzJ//nzMmDEDb7zxBn766Se88MILaN++PerUqYPc3Fx07doVrVu3xs6dO6FSqTBz5kx069YNR48ehUajsekxAPMvDFOmTMHbb79d5PWTJ0/GiRMnsGHDBgQFBeHcuXMwGAwAgP3796NVq1bYsmUL6tevX+zjTpo0CV988QUWLFiAhx56CHFxcTh16pTNMToLJrMVTeVclVnA3GoQlxGHpKwkRHhHODocIiJyInFxccjLy0Pfvn0RGRkJAGjYsKF8vb+/PxYtWgSlUom6devisccew9atW+WE8rnnnpPPrV69Oj766CO0bNkS6enp8PLykq+bOXMm2rZtCwAYNmwYJk2ahPPnz6N69eoAgH79+mHbtm1WyWxERAQWLFgASZJQp04dHDt2DAsWLMDw4cPlJHb37t1o06YNAGD58uWIiIjAzz//jP79++P9999Hp06dMHnyZABA7dq1ceLECbz33ns2J7M9evTAqFGjAAATJ07EggULsG3bNtSpUwcrV66EyWTCl19+CUmSAABLliyBn58ftm/fji5dutj8dejYsSNeffVV+XLB6i4AxMbGomnTpmjRogUAczXXIjg4GAAQGBiI0NDQIu8/LS0NH374IRYtWoQhQ4YAAGrUqIGHHnrI5hidBZPZiia3GThHZRawTmaJiMh+dCod9g3a55DHtVXjxo3RqVMnNGzYEF27dkWXLl3Qr18/+Pub29Tq168PpVIpnx8WFoZjx47Jlw8ePIipU6fiyJEjSEpKgslkAmBOvurVqyef16hRI/nzSpUqQa/Xy4ms5dj+/futYnvwwQflJBEAWrdujfnz58NoNOLkyZNQqVR44IHble/AwEDUqVMHJ0+eBACcPHkSvXv3trrPtm3b4oMPPoDRaLR6XsUpGLckSQgNDZXbKI4cOYJz587B29vb6jZZWVk4f/58qfddkCVJLc4LL7yAJ598Ev/88w+6dOmCPn36yEm8LU6ePIns7Gx06tSpTHE5IyazFU2tNf+ba3BsHAVY+maTspnMEhHZkyRJNv+531GUSiU2b96MPXv2YNOmTVi4cCHefPNN7NtnTsLVarXV+ZIkyQlrRkYGunbtiq5du2L58uUIDg5GbGwsunbtipycHKvbFbwfSZJKvF9nUlKc6enp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MCsiIiIivZbCrIiIiIj0WgqzIiIiItJrKcyKiIiISK+lMCsiIiIivZbCrIiIiIj0WgqzIiIiItJrKcyKiIiISK+lMCsiIiIivZbCrIiIiIj0WgqzIiIiItJrKcyKiIiISK+lMCsiIiIivZbCrIiIiIj0WgqzIiIiItJrKcyKiIiISK+lMCsiIiIivZbCrIiIiIj0WgqzIiIiItJrubq7AF3Ntm0Aamtru7kkIiIiItKeaE6L5raO9LkwW1dXB8CgQYO6uSQiIiIi0pG6ujrS09M73MayDyXyHkMikQh79+4lNTUVy7I67XNqa2sZNGgQu3btIi0trdM+pzfStWmfrsuB6docmK7NgenaHJiuTft0XQ6sq6+NbdvU1dXRv39/HI6OW8X2uZpZh8PBwIEDu+zz0tLS9A/iAHRt2qfrcmC6Ngema3NgujYHpmvTPl2XA+vKa3OwGtkoPQAmIiIiIr2WwqyIiIiI9FoKs53E6/Vy77334vV6u7soPY6uTft0XQ5M1+bAdG0OTNfmwHRt2qfrcmA9+dr0uQfAREREROTYoZpZEREREem1FGZFREREpNdSmBURERGRXkthVkRERER6LYXZTvDYY48xePBgEhISmD59Op9++ml3F6nLPfTQQ5xwwgmkpqaSl5fHhRdeyIYNG+K2OfXUU7EsK+518803d1OJu859993X5rxHjx4dW9/U1MQtt9xCdnY2KSkpXHLJJZSWlnZjibvO4MGD21wby7K45ZZbgL5zz3z00Uecd9559O/fH8uyePnll+PW27bNPffcQ0FBAYmJicyePZtNmzbFbVNZWcnVV19NWloaGRkZfP3rX6e+vr4Lz6JzdHRtgsEgd9xxBxMmTCA5OZn+/ftzzTXXsHfv3rhjtHefPfzww118Jkffwe6b6667rs15n3322XHb9MX7Bmj3vzuWZfHII4/EtjkW75tD+a4+lO+knTt3MmfOHJKSksjLy+P2228nFAp12XkozB5lf/vb37jtttu49957WbZsGZMmTeKss86irKysu4vWpT788ENuueUWFi5cyDvvvEMwGOTMM8+koaEhbrsbb7yR4uLi2OsXv/hFN5W4a40bNy7uvD/55JPYultvvZVXX32Vf/zjH3z44Yfs3buXiy++uBtL23UWL14cd13eeecdAC677LLYNn3hnmloaGDSpEk89thj7a7/xS9+waOPPsof/vAHFi1aRHJyMmeddRZNTU2xba6++mrWrFnDO++8w2uvvcZHH33ETTfd1FWn0Gk6ujY+n49ly5Zx9913s2zZMl588UU2bNjA+eef32bbBx54IO4++s53vtMVxe9UB7tvAM4+++y4837++efj1vfF+waIuybFxcX8+c9/xrIsLrnkkrjtjrX75lC+qw/2nRQOh5kzZw6BQID58+fz9NNP89RTT3HPPfd03YnYclRNmzbNvuWWW2Lvw+Gw3b9/f/uhhx7qxlJ1v7KyMhuwP/zww9iyU045xf7e977XfYXqJvfee689adKkdtdVV1fbbrfb/sc//hFbtm7dOhuwFyxY0EUl7Dm+973v2cOGDbMjkYht233zngHsl156KfY+EonY+fn59iOPPBJbVl1dbXu9Xvv555+3bdu2165dawP24sWLY9u8+eabtmVZ9p49e7qs7J1t/2vTnk8//dQG7B07dsSWFRUV2b/+9a87t3DdrL1rc+2119oXXHDBAffRfdPiggsusE8//fS4ZX3hvtn/u/pQvpPeeOMN2+Fw2CUlJbFtHn/8cTstLc32+/1dUm7VzB5FgUCApUuXMnv27Ngyh8PB7NmzWbBgQTeWrPvV1NQAkJWVFbf8ueeeIycnh/Hjx3PnnXfi8/m6o3hdbtOmTfTv35+hQ4dy9dVXs3PnTgCWLl1KMBiMu4dGjx5NYWFhn7uHAoEAzz77LNdffz2WZcWW99V7Jmrbtm2UlJTE3SPp6elMnz49do8sWLCAjIwMjj/++Ng2s2fPxuFwsGjRoi4vc3eqqanBsiwyMjLilj/88MNkZ2czefJkHnnkkS79k2h3mjt3Lnl5eYwaNYpvfvObVFRUxNbpvjFKS0t5/fXX+frXv95m3bF+3+z/XX0o30kLFixgwoQJ9OvXL7bNWWedRW1tLWvWrOmScru65FP6iH379hEOh+N+oAD9+vVj/fr13VSq7heJRPj+97/PiSeeyPjx42PLr7rqKoqKiujfvz8rV67kjjvuYMOGDbz44ovdWNrON336dJ566ilGjRpFcXEx999/PyeddBKrV6+mpKQEj8fT5ou3X79+lJSUdE+Bu8nLL79MdXU11113XWxZX71nWoveB+39dya6rqSkhLy8vLj1LpeLrKysPnUfNTU1cccdd3DllVeSlpYWW/7d736XKVOmkJWVxfz587nzzjspLi7mV7/6VTeWtvOdffbZXHzxxQwZMoQtW7Zw1113cc4557BgwQKcTqfum2ZPP/00qampbZp3Hev3TXvf1YfynVRSUtLuf4+i67qCwqx0ultuuYXVq1fHtQsF4tphTZgwgYKCAs444wy2bNnCsGHDurqYXeacc86JzU+cOJHp06dTVFTE3//+dxITE7uxZD3LE088wTnnnEP//v1jy/rqPSOHLxgMcvnll2PbNo8//njcuttuuy02P3HiRDweD9/4xjd46KGHeuRQnUfLl7/85dj8hAkTmDhxIsOGDWPu3LmcccYZ3ViynuXPf/4zV199NQkJCXHLj/X75kDf1b2BmhkcRTk5OTidzjZP+ZWWlpKfn99Npepe3/72t3nttdf44IMPGDhwYIfbTp8+HYDNmzd3RdF6jIyMDEaOHMnmzZvJz88nEAhQXV0dt01fu4d27NjBu+++yw033NDhdn3xnoneBx39dyY/P7/NQ6ehUIjKyso+cR9Fg+yOHTt455134mpl2zN9+nRCoRDbt2/vmgL2EEOHDiUnJyf276ev3zcAH3/8MRs2bDjof3vg2LpvDvRdfSjfSfn5+e3+9yi6risozB5FHo+HqVOn8t5778WWRSIR3nvvPWbOnNmNJet6tm3z7W9/m5deeon333+fIUOGHHSfFStWAFBQUNDJpetZ6uvr2bJlCwUFBUydOhW32x13D23YsIGdO3f2qXvoySefJC8vjzlz5nS4XV+8Z4YMGUJ+fn7cPVJbW8uiRYti98jMmTOprq5m6dKlsW3ef/99IpFI7BeAY1U0yG7atIl3332X7Ozsg+6zYsUKHA5Hmz+xH+t2795NRUVF7N9PX75vop544gmmTp3KpEmTDrrtsXDfHOy7+lC+k2bOnMmqVavifhGK/hI5duzYLjsROYpeeOEF2+v12k899ZS9du1a+6abbrIzMjLinvLrC775zW/a6enp9ty5c+3i4uLYy+fz2bZt25s3b7YfeOABe8mSJfa2bdvsf//73/bQoUPtk08+uZtL3vl+8IMf2HPnzrW3bdtmz5s3z549e7adk5Njl5WV2bZt2zfffLNdWFhov//++/aSJUvsmTNn2jNnzuzmUnedcDhsFxYW2nfccUfc8r50z9TV1dnLly+3ly9fbgP2r371K3v58uWxJ/IffvhhOyMjw/73v/9tr1y50r7gggvsIUOG2I2NjbFjnH322fbkyZPtRYsW2Z988ok9YsQI+8orr+yuUzpqOro2gUDAPv/88+2BAwfaK1asiPtvT/Sp6vnz59u//vWv7RUrVthbtmyxn332WTs3N9e+5ppruvnMjlxH16aurs7+4Q9/aC9YsMDetm2b/e6779pTpkyxR4wYYTc1NcWO0Rfvm6iamho7KSnJfvzxx9vsf6zeNwf7rrbtg38nhUIhe/z48faZZ55pr1ixwn7rrbfs3Nxc+8477+yy81CY7QS//e1v7cLCQtvj8djTpk2zFy5c2N1F6nJAu68nn3zStm3b3rlzp33yySfbWVlZttfrtYcPH27ffvvtdk1NTfcWvAtcccUVdkFBge3xeOwBAwbYV1xxhb158+bY+sbGRvtb3/qWnZmZaSclJdkXXXSRXVxc3I0l7lr/+c9/bMDesGFD3PK+dM988MEH7f77ufbaa23bNt1z3X333Xa/fv1sr9drn3HGGW2uV0VFhX3llVfaKSkpdlpamv21r33Nrqur64azObo6ujbbtm074H97PvjgA9u2bXvp0qX29OnT7fT0dDshIcEeM2aM/bOf/Swu0PVWHV0bn89nn3nmmXZubq7tdrvtoqIi+8Ybb2xT0dIX75uoP/7xj3ZiYqJdXV3dZv9j9b452He1bR/ad9L27dvtc845x05MTLRzcnLsH/zgB3YwGOyy87CaT0ZEREREpNdRm1kRERER6bUUZkVERESk11KYFREREZFeS2FWRERERHothVkRERER6bUUZkVERESk11KYFREREZFeS2FWRERERHothVkRkT5i7ty5WJZFdXV1dxdFROSoUZgVERERkV5LYVZEREREei2FWRGRLhKJRHjooYcYMmQIiYmJTJo0iX/+859ASxOA119/nYkTJ5KQkMCMGTNYvXp13DH+9a9/MW7cOLxeL4MHD+aXv/xl3Hq/388dd9zBoEGD8Hq9DB8+nCeeeCJum6VLl3L88ceTlJTErFmz2LBhQ2zdZ599xmmnnUZqaippaWlMnTqVJUuWdNIVERE5cgqzIiJd5KGHHuKZZ57hD3/4A2vWrOHWW2/lK1/5Ch9++GFsm9tvv51f/vKXLF68mNzcXM477zyCwSBgQujll1/Ol7/8ZVatWsV9993H3XffzVNPPRXb/5prruH555/n0UcfZd26dfzxj38kJSUlrhw/+clP+OUvf8mSJUtwuVxcf/31sXVXX301AwcOZPHixSxdupQf//jHuN3uzr0wIiJHwLJt2+7uQoiIHOv8fj9ZWVm8++67zJw5M7b8hhtuwOfzcdNNN3HaaafxwgsvcMUVVwBQWVnJwIEDeeqpp7j88su5+uqrKS8v5+23347t/6Mf/YjXX3+dNWvWsHHjRkaNGsU777zD7Nmz25Rh7ty5nHbaabz77rucccYZALzxxhvMmTOHxsZGEhISSEtL47e//S3XXnttJ18REZGjQzWzIiJdYPPmzfh8Pr74xS+SkpISez3zzDNs2bIltl3roJuVlcWoUaNYt24dAOvWrePEE0+MO+6JJ57Ipk2bCIfDrFixAqfTySmnnNJhWSZOnBibLygoAKCsrAyA2267jRtuuIHZs2fz8MMPx5VNRKQnUpgVEekC9fX1ALz++uusWLEi9lq7dm2s3eyRSkxMPKTtWjcbsCwLMO15Ae677z7WrFnDnDlzeP/99xk7diwvvfTSUSmfiEhnUJgVEekCY8eOxev1snPnToYPHx73GjRoUGy7hQsXxuarqqrYuHEjY8aMAWDMmDHMmzcv7rjz5s1j5MiROJ1OJkyYQCQSiWuD+3mMHDmSW2+9lbfffpuLL76YJ5988oiOJyLSmVzdXQARkb4gNTWVH/7wh9x6661EIhG+8IUvUFNTw7x580hLS6OoqAiABx54gOzsbPr168dPfvITcnJyuPDCCwH4wQ9+wAknnMCDDz7IFVdcwYIFC/jd737H73//ewAGDx7Mtddey/XXX8+jjz7KpEmT2LFjB2VlZVx++eUHLWNjYyO33347l156KUOGDGH37t0sXryYSy65pNOui4jIkVKYFRHpIg8++CC5ubk89NBDbN26lYyMDKZMmcJdd90V+zP/ww8/zPe+9z02bdrEcccdx6uvvorH4wFgypQp/P3vf+eee+7hwQcfpKCggAceeIDrrrsu9hmPP/44d911F9/61reoqKigsLCQu+6665DK53Q6qaio4JprrqG0tJScnBwuvvhi7r///qN+LUREjhb1ZiAi0gNEexqoqqoiIyOju4sjItJrqM2siIiIiPRaCrMiIiIi0mupmYGIiIiI9FqqmRURERGRXkthVkRERER6LYVZEREREem1FGZFREREpNdSmBURERGRXkthVkRERER6LYVZEREREem1FGZFREREpNf6/ytUk6VQyKxAAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison between the shampoo implementations on CIFAR10\"\n", + "save_path = f\"diagrams/shampoo_implementations_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "3f87f35c", + "metadata": {}, + "source": [ + "## Experiment 4: Comparison between shampoo and typical optimizers on CIFAR10" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "cd26bda9", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\1115652710.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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2hwcHJznNRTI+//Ztm0bEhIS8O2339q8h50/f75kG34XHn74YTz88MN4//33sWrVKjz99NNYvXo1XnjhBQQHB2Pr1q1IS0uzyZblrspqvS6Lci7sccT5CQ4Oxj///JPn80tR2gM47xqwnsuzZ8+ibdu28nKj0YjY2NgC35tzt79t27b44osvbJbfunULfn5+Nse72/Pk7+8PvV6f7+uRQqHI84XJ3dDr9WjXrh1+//13XLp0qUT2mdu3336LjIwMfPTRRzbnB7Cci7feegs7d+6UEwj2RERE4JlnnsEnn3yCMWPG2O1pU5jGjRtjx44dMJvNNl807927F3q9vkhJDqtilcQfN24cXF1d8cILL+DatWt57j937hwWLlwIAPJEbwsWLLBZx/qtWdeuXYtz6CJZtGiR/LcQAosWLYJarUb79u0BWKJ9SZJsMhixsbH4/vvv7/qYJpMpT5o+ICAAQUFBcjqzWbNmCAgIwMcff2yT4vz1119x4sSJEj8XV65csSlre/v2bfzvf/9D48aNUblyZQCW7N7u3bvx22+/5dn+1q1bMBqNACC/qOc3Q3qrVq3w+++/Y9++fXJQ1rhxY7i7u2PGjBly+XKr3r17Q6lUYsqUKXm+ZRFCICEhAQDQtGlThIaGYs6cOUhJSclz3KKUYy0toaGhSEpKspkeIC4urkilha0fxvI7v/b873//s+kSsG7dOsTFxRWYle3bty9MJhOmTp2a5z6j0Vik4z/xxBNQKpX46quvsHbtWnTr1s3mw6T127Sc/1chhPyacLcc8bzN77zfvHkzz7rWDEBBZW0d9Xrn6upaYPfCwtzr88j6fLTSaDSoV68ehBD5jmnJj73rIykpqUS+FMtPYe8JXbp0gclkslkPAObPnw9JkuTn1L38fwMDA9G4cWMsW7bM5nr7559/sHHjxjyTogKW0to5xcTEAIDNc9zV1bVYrxslKS4uDn379sUjjzyC2bNn212nb9+++O+///DZZ5/luS89PT1Pl817pVQq87ynxMTE5Omx0KVLF+zZswf79u2Tl12/fj1PLwJ716vBYMDixYtLtN3FkZiYmOcx5n59ioqKQlZWls15N5vNea6pnNdlzteYTZs24fjx44W2xRHnp0uXLrhy5YrNdCdpaWn49NNPi7S9s66BZs2awdfXF5999pn82QkAVq5cWaxuqvbav3bt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NNZ24KxevTqlXd566y0A/uVf/iVZJlP6jN/vp6qqiieffLLX9T/60Y944okn+PWvf82qVavIysrikksuIRQKJcssWLCALVu28NZbb/G3v/2N9957j9tuu22gDuGkOFa7BAIB1q1bx4MPPsi6det4+eWX2bFjB5dffnmPso888khKP/r2t789ENU/qfrrMwBz585NOe5FixalrD8d+wz03zZHtklDQwPPPPMMmqZx9dVXp5Q73frN8XxW9/eZFI/HmTdvHpFIhBUrVvDb3/6W5557joceeigdhyQ+65QQJ9CZZ56pbr/99uTP8XhclZeXq4ULF6axVunV3NysALVs2bLksvPOO0/deeed6atUmnz/+99XVVVVva7r6OhQVqtVvfTSS8ll27ZtU4BauXLlANXw1HHnnXeqESNGKNM0lVKZ22cA9corryR/Nk1TlZaWqh//+MfJZR0dHcput6tFixYppZTaunWrAtTq1auTZf7+978rTdPU/v37B6zuJ9PR7dKbjz76SAGqtrY2uayyslL97Gc/O7mVS7Pe2ub6669XV1xxRZ/bZEKfUer4+s0VV1yhLrzwwpRlmdBvjv6sPp7PpNdff13puq4aGxuTZZ566inldrtVOBwe2AMQn3mSKRMnTCQSYe3atcyZMye5TNd15syZw8qVK9NYs/Tq7OwEID8/P2X5H/7wBwoLC5k4cSL3338/gUAgHdUbcLt27aK8vJzhw4ezYMEC6urqAFi7di3RaDSl/4wdO5YhQ4ZkXP+JRCL8/ve/56abbkLTtOTyTO0zR6qpqaGxsTGln3g8HmbOnJnsJytXriQ3N5czzjgjWWbOnDnous6qVasGvM7p0tnZiaZp5Obmpix/7LHHKCgoYOrUqfz4xz/OmKFWS5cupbi4mDFjxvDNb36T1tbW5DrpMwlNTU0sXryYm2++uce6073fHP1ZfTyfSStXrmTSpEmUlJQky1xyySV4vV62bNkygLUXpwNLuisgTh8HDx4kHo+n/HECKCkpYfv27WmqVXqZpsm//du/cc455zBx4sTk8q9+9atUVlZSXl7Opk2buO+++9ixYwcvv/xyGmt78s2cOZPnnnuOMWPG0NDQwA9+8APOPfdcPv74YxobG7HZbD0uIEtKSmhsbExPhdPk1VdfpaOjgxtuuCG5LFP7zNEO9YXe/s4cWtfY2EhxcXHKeovFQn5+fsb0pVAoxH333ce1116L2+1OLv/Od77DtGnTyM/PZ8WKFdx///00NDTw05/+NI21Pfnmzp3LVVddxbBhw6iuruaBBx7g0ksvZeXKlRiGIX2m229/+1tycnJ6DBs/3ftNb5/Vx/OZ1NjY2OvfokPrhPgkJCgT4iS6/fbb+fjjj1PumwJS7lOYNGkSZWVlzJ49m+rqakaMGDHQ1Rwwl156afL7yZMnM3PmTCorK3nxxRdxOp1prNmp5emnn+bSSy+lvLw8uSxT+4z45KLRKPPnz0cpxVNPPZWy7u67705+P3nyZGw2G1//+tdZuHAhdrt9oKs6YL7yla8kv580aRKTJ09mxIgRLF26lNmzZ6exZqeWZ555hgULFuBwOFKWn+79pq/PaiEGkgxfFCdMYWEhhmH0mJmoqamJ0tLSNNUqfe644w7+9re/8e6771JRUXHMsjNnzgRg9+7dA1G1U0Zubi6jR49m9+7dlJaWEolE6OjoSCmTaf2ntraWt99+m1tuueWY5TK1zxzqC8f6O1NaWtpjcqFYLEZbW9tp35cOBWS1tbW89dZbKVmy3sycOZNYLMbevXsHpoKniOHDh1NYWJg8fzK5zxzy/vvvs2PHjn7/9sDp1W/6+qw+ns+k0tLSXv8WHVonxCchQZk4YWw2G9OnT+edd95JLjNNk3feeYdZs2alsWYDSynFHXfcwSuvvMKSJUsYNmxYv9ts2LABgLKyspNcu1NLV1cX1dXVlJWVMX36dKxWa0r/2bFjB3V1dRnVf5599lmKi4uZN2/eMctlap8ZNmwYpaWlKf3E6/WyatWqZD+ZNWsWHR0drF27NllmyZIlmKaZDGZPR4cCsl27dvH2229TUFDQ7zYbNmxA1/UeQ/dOd/v27aO1tTV5/mRqnznS008/zfTp06mqquq37OnQb/r7rD6ez6RZs2axefPmlID+0D9Dxo8fPzAHIk4faZ5oRJxmXnjhBWW329Vzzz2ntm7dqm677TaVm5ubMjPR6e6b3/ym8ng8aunSpaqhoSH5CgQCSimldu/erR555BG1Zs0aVVNTo/7617+q4cOHq89//vNprvnJd88996ilS5eqmpoatXz5cjVnzhxVWFiompublVJKfeMb31BDhgxRS5YsUWvWrFGzZs1Ss2bNSnOtB048HldDhgxR9913X8ryTOszPp9PrV+/Xq1fv14B6qc//alav359chbBxx57TOXm5qq//vWvatOmTeqKK65Qw4YNU8FgMPkec+fOVVOnTlWrVq1SH3zwgRo1apS69tpr03VIJ8Sx2iUSiajLL79cVVRUqA0bNqT87Tk0C9yKFSvUz372M7VhwwZVXV2tfv/736uioiJ13XXXpfnIPr1jtY3P51Pf/e531cqVK1VNTY16++231bRp09SoUaNUKBRKvsfp2GeU6v98Ukqpzs5O5XK51FNPPdVj+9O13/T3Wa1U/59JsVhMTZw4UV188cVqw4YN6h//+IcqKipS999/fzoOSXzGSVAmTrhf/OIXasiQIcpms6kzzzxTffjhh+mu0oACen09++yzSiml6urq1Oc//3mVn5+v7Ha7GjlypLr33ntVZ2dneis+AK655hpVVlambDabGjRokLrmmmvU7t27k+uDwaD61re+pfLy8pTL5VJf+tKXVENDQxprPLDeeOMNBagdO3akLM+0PvPuu+/2eg5df/31SqnEtPgPPvigKikpUXa7Xc2ePbtHm7W2tqprr71WZWdnK7fbrW688Ubl8/nScDQnzrHapaamps+/Pe+++65SSqm1a9eqmTNnKo/HoxwOhxo3bpz64Q9/mBKYfFYdq20CgYC6+OKLVVFRkbJaraqyslLdeuutPf5ZeDr2GaX6P5+UUuo3v/mNcjqdqqOjo8f2p2u/6e+zWqnj+0zau3evuvTSS5XT6VSFhYXqnnvuUdFodICPRpwONKWUOklJOCGEEEIIIYQQ/ZB7yoQQQgghhBAijSQoE0IIIYQQQog0kqBMCCGEEEIIIdJIgjIhhBBCCCGESCMJyoQQQgghhBAijSQoE0IIIYQQQog0kqBMCCGEEEIIIdJIgjIhhBBCCCGESCMJyoQQQmSEpUuXomkaHR0d6a6KEEIIkUKCMiGEEEIIIYRIIwnKhBBCCCGEECKNJCgTQggxIEzTZOHChQwbNgyn00lVVRV//vOfgcNDCxcvXszkyZNxOBycddZZfPzxxynv8Ze//IUJEyZgt9sZOnQojz/+eMr6cDjMfffdx+DBg7Hb7YwcOZKnn346pczatWs544wzcLlcnH322ezYsSO5buPGjVxwwQXk5OTgdruZPn06a9asOUktIoQQQiRIUCaEEGJALFy4kOeff55f//rXbNmyhbvuuouvfe1rLFu2LFnm3nvv5fHHH2f16tUUFRVx2WWXEY1GgUQwNX/+fL7yla+wefNmHn74YR588EGee+655PbXXXcdixYt4oknnmDbtm385je/ITs7O6Ue3/ve93j88cdZs2YNFouFm266KbluwYIFVFRUsHr1atauXct//Md/YLVaT27DCCGEyHiaUkqluxJCCCFOb+FwmPz8fN5++21mzZqVXH7LLbcQCAS47bbbuOCCC3jhhRe45pprAGhra6OiooLnnnuO+fPns2DBAlpaWnjzzTeT2//7v/87ixcvZsuWLezcuZMxY8bw1ltvMWfOnB51WLp0KRdccAFvv/02s2fPBuD1119n3rx5BINBHA4HbrebX/ziF1x//fUnuUWEEEKIwyRTJoQQ4qTbvXs3gUCAiy66iOzs7OTr+eefp7q6OlnuyIAtPz+fMWPGsG3bNgC2bdvGOeeck/K+55xzDrt27SIej7NhwwYMw+C88847Zl0mT56c/L6srAyA5uZmAO6++25uueUW5syZw2OPPZZSNyGEEOJkkaBMCCHESdfV1QXA4sWL2bBhQ/K1devW5H1ln5bT6TyuckcOR9Q0DUjc7wbw8MMPs2XLFubNm8eSJUsYP348r7zyygmpnxBCCNEXCcqEEEKcdOPHj8dut1NXV8fIkSNTXoMHD06W+/DDD5Pft7e3s3PnTsaNGwfAuHHjWL58ecr7Ll++nNGjR2MYBpMmTcI0zZR71P4Zo0eP5q677uLNN9/kqquu4tlnn/1U7yeEEEL0x5LuCgghhDj95eTk8N3vfpe77roL0zT53Oc+R2dnJ8uXL8ftdlNZWQnAI488QkFBASUlJXzve9+jsLCQK6+8EoB77rmHGTNm8Oijj3LNNdewcuVKfvnLX/KrX/0KgKFDh3L99ddz00038cQTT1BVVUVtbS3Nzc3Mnz+/3zoGg0HuvfdevvzlLzNs2DD27dvH6tWrufrqq09auwghhBAgQZkQQogB8uijj1JUVMTChQvZs2cPubm5TJs2jQceeCA5fPCxxx7jzjvvZNeuXUyZMoXXXnsNm80GwLRp03jxxRd56KGHePTRRykrK+ORRx7hhhtuSO7jqaee4oEHHuBb3/oWra2tDBkyhAceeOC46mcYBq2trVx33XU0NTVRWFjIVVddxQ9+8IMT3hZCCCHEkWT2RSGEEGl3aGbE9vZ2cnNz010dIYQQYkDJPWVCCCGEEEIIkUYSlAkhhBBCCCFEGsnwRSGEEEIIIYRII8mUCSGEEEIIIUQaSVAmhBBCCCGEEGkkQZkQQgghhBBCpJEEZUIIIYQQQgiRRhKUCSGEEEIIIUQaSVAmhBBCCCGEEGkkQZkQQgghhBBCpJEEZUIIIYQQQgiRRv8/VtuPD7ZAN+YAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\", \"adam\", \"sgd\", \"adagrad\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison between multiple variants of the shampoo optimizer, adam, sgd and adagrad on CIFAR10\"\n", + "save_path = f\"diagrams/total_comparison_{dataset}.png\"\n", + "\n", + "create_diagram(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "7ef94ffa", + "metadata": {}, + "source": [ + "## Experiment 5: Time until convergence on MNIST" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "34a2fd54", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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mjlzZrZzzKqvTJkyCgkJ0QcffGDTZ9++fVq9erXdIcTf9ezZU9u2bdP777+vP/74w+Y2UOmv71NGRkaOt8Zdv379lk+YlKTw8HD9/vvv+uqrr6xtV69e1bvvvmvTLz+ueZcuXeTg4KDJkydnW58t6/qGh4fL09NTL7/8crannOZm3KxQMzfX4t/K7ec3JSXF+jOUpVatWnJwcLjp+mH/9e+Kv3vggQc0YcIEvf3223J2drZr36CgIPXp00fvvPNOtifd5uTnn3/WH3/8ka39l19+0YEDB3K8FRYAcHdjxhoA4I4QFBSkmJgY9ezZU9WrV1ffvn1Vs2ZNpaena8uWLVqyZIn69+8vSapTp4769eunefPm6cKFC2revLl++OEHffDBB+rSpYtatmyZp7W5uroqNjZW/fr1U6NGjbRy5Up98803eu6556y3y0VGRup///ufIiIi9NBDD+nMmTOaPXu2KlWqpD179pga9+LFiypXrpweeOAB1alTR8WKFdOaNWu0Y8cOzZgxQ5JUpEgRvfrqqxowYICaN2+u3r176/Tp05o1a5YqVKigkSNH5tl1kP66jXPgwIHasWOHSpcurffff1+nT5+2mZk3ZswYffXVV+rYsaP69++v+vXr69KlS9q7d68+//xznThxQiVLlpSbm5uCg4O1ePFiValSRT4+PqpZs6Z1TbJmzZpp0aJFslgs1ltDHR0d1bhxY61atUotWrSw+SM9KChIU6ZM0bhx43TixAl16dJFHh4eOn78uJYvX67HH39co0ePloODg9577z21b99eNWrU0IABA3TPPffo999/17p16+Tp6amvv/76X18rBwcHzZkzR506dVJISIgGDBigMmXK6NChQ9q/f781eHzttdfUvn17hYaGauDAgbpy5YrefPNNeXl5aeLEiabH79Gjh0aPHq3Ro0fLx8cn24yt5s2ba/DgwYqOjtbu3bvVrl07FSlSREeOHNGSJUs0a9YsPfDAAzcdY/DgwXrrrbfUu3dvPfXUUypTpowWLVpkXRw/a8ZXflzzSpUq6fnnn9dLL72kZs2aqVu3bnJxcdGOHTtUtmxZRUdHy9PTU3PmzNEjjzyievXqqVevXipVqpQSExP1zTffqEmTJjah+T+FhITI0dFRr776qpKTk+Xi4qJWrVrJ19fXrlpzI7ef37Vr12ro0KF68MEHVaVK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KAJrISEhvP7664wfP57vvvuOp556ihdeeIH4+PjcbpqIiIiIiIiIiDykHorAWmBgIH379qVnz55Ur16d+fPn4+zszKJFi3K7aSIiIiIiIiIi8pByzO0G/F3p6enExMTw1ltvmcusVivNmjUjKirqtttcv36d69evm78nJSUBkJycfG8bm4Ns16/ldhPkIXBf/k1cN3K7BfKguw/7deZvmbndBHkI3G/X7KuZ6tfy991v/fq39NTcboI8BO63fg2QduNGbjdBHnD3Y7/+O+znYxh//Pz5wAfWLl26RGZmJiVLlsy2vGTJksTGxt52mylTpvDOO+/csrxs2bL3pI0iD6rCH+V2C0TugfcL53YLRO6Jwv7q2/IQKqx+LQ+fUYtzuwUi/7yxoQ/n9TolJYXCf/Bd9MAH1u7GW2+9xeuvv27+brPZSExMpGjRolgsllxsmeSU5ORkypYty9mzZylUqFBuN0fkH6O+LQ8j9Wt5GKlfy8NI/VoeRurX/06GYZCSkoK7u/sfrvvAB9aKFSuGg4MDFy9ezLb84sWLlCpV6rbb5M2bl7x582Zb5urqeq+aKPexQoUK6eIoDyX1bXkYqV/Lw0j9Wh5G6tfyMFK//vf5o0w1uwd+8gInJydq1arF9u3bzWU2m43t27dTv379XGyZiIiIiIiIiIg8zB74jDWA119/ne7du1O7dm3q1KnDRx99RGpqKj179sztpomIiIiIiIiIyEPqoQisde7cmYSEBN5++20uXLhAzZo12bx58y0TGojY5c2bl/Hjx98yJFjkQae+LQ8j9Wt5GKlfy8NI/VoeRurX8kcsxp+ZO1RERERERERERESyeeBrrImIiIiIiIiIiOQGBdZERERERERERETuggJrIiIiIiIiIiIid0GBNREREREREflTkpOTc7sJIvdEQkICADabLZdbIg8aBdZERERERETkf4qPj6dt27bMmDEjt5si8o9KS0tj2LBhNG7cGACrVWES+WvUY+ShlZmZmdtNEBERERF5KJQoUQKAgwcPEhsbm8utEfnn5M2bl3r16nHhwgV2794NgGEYudwqeZAosCYPHXvqroODAwCJiYm52RyRf0RGRkZuN0HkH5eZmanhFvJQyszM1EOZPDRsNhvXr18HYMCAAZw9e5atW7fmcqtE/j6bzcaNGzewWCw0a9aMevXqMXHiRECBNflr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bePYsWM8/vjjABQsWBDDMDAMw5xRVEREREREJDcpY01ERHLV9evXyZs3L/PmzWPJkiWsWbMGV1dXnJycyJs3b243T0RERERE5I6UsSYiIrkiPT2d0NBQNm3aRFRUFMnJyUybNo2yZctiGAYWi8WckVlEREREROR+pMCaiIjkCicnJypUqECBAgWYMGECXbp0MT+zWCwACqqJiIiIiMh9TUNBRUQk19gz0+wyMjJwdNQ7HxEREREReTAosCYiIrlOQz5FRERERORBpMCaiIiIiIiIiIjIXVB6gIiIiIiIiIiIyF1QYE1EREREREREROQuKLAmIiIiIiIiIiJyFxRYExERERERERERuQsKrImIiIiIiIiIiNwFBdZERERE/iXKlSvHRx999Lf2MWHCBGrWrPmPtEdERETkQWcxDMPI7UaIiIiIyD9nyZIlDBs2jCtXrmRbnpCQgIuLC87Ozne976tXr3L9+nWKFi36N1spIiIi8uBzzO0GiIiIiEjOKF68+N/eR4ECBShQoMA/0JrbS09Px8nJ6Z7tX0REROSfpKGgIiIiIveZ69evM2TIEEqUKEG+fPlo2LAh0dHRAERERGCxWNiwYQM1atQgX7581KtXj8OHD5uf9+zZk6SkJCwWCxaLhQkTJgC3DgW1WCwsWLCAVq1a4ezsTLVq1YiKiuLHH3+kSZMmuLi40KBBA06cOGFuc/NQUPsxfv9fuXLlzM8PHz5MixYtKFCgACVLlsTPz49Lly6Znzdp0oRBgwYxbNgwihUrxgsvvPDP/4OKiIiI3CMKrImIiIjcZ9544w3Wrl1LUFAQ3333HZUqVeKFF14gMTHRXGfUqFF88MEHREdHU7x4cVq3bs2NGzdo0KABH330EYUKFeL8+fOcP3+ekSNH3vFY7777Lq+++ioHDhygatWqdO3alX79+vHWW2+xb98+DMNg0KBBd9zefozz58/z448/UqlSJRo1agTAlStX8Pb2xtPTk3379rF582YuXrxIp06dsu0jKCgIJycndu3axfz58//mv56IiIhIztFQUBEREZH7SGpqKvPmzWPJkiW0aNECgE8++YRt27bx6aef8swzzwAwfvx4mjdvDmQFpsqUKUNoaCidOnWicOHCWCwWSpUq9YfH69mzpxnoCggIoH79+owbN87MHBs6dCg9e/a84/b2YxiGQfv27SlcuDALFiwAYM6cOXh6ejJ58mRz/UWLFlG2bFmOHz9OlSpVAKhcuTLTpk37S/9OIiIiIvcDZayJiIiI3EdOnDjBjRs3ePbZZ81lefLkoU6dOhw9etRcVr9+ffPnIkWK8Pjjj2f7/M+qUaOG+XPJkiUB8PDwyLYsLS2N5OTk/7mf0aNHExUVxeeff07+/PkBOHjwIDt27DDrshUoUICqVaua52lXq1atv9xuERERkfuBMtZERERE/sXy5Mlj/myxWO64zGaz3XEfy5Yt48MPPyQiIoJHHnnEXH716lVat27N1KlTb9mmdOnS5s8uLi53fwIiIiIiuUgZayIiIiL3kYoVK5r1xuxu3LhBdHQ01atXN5ft2bPH/Pny5cscP36catWqAeDk5ERmZmaOtDcqKoo+ffqwYMEC6tWrl+2zp59+mh9++IFy5cpRqVKlbP8pmCYiIiIPAwXWRERERO4jLi4u+Pv7M2rUKDZv3syRI0fo27cv165do3fv3uZ6EydOZPv27Rw+fJgePXpQrFgxfH19gazZP69evcr27du5dOkS165duydtvXDhAm3btuXll1/mhRde4MKFC1y4cIGEhAQABg4cSGJiIl26dCE6OpoTJ06wZcsWevbsmWOBPxEREZF7SYE1ERERkfvM+++/T/v27fHz8+Ppp5/mxx9/ZMuWLbi5uWVbZ+jQodSqVYsLFy4QFhaGk5MTAA0aNKB///507tyZ4sWL37OJAWJjY7l48SJBQUGULl3a/M8+wYK7uzu7du0iMzOT559/Hg8PD4YNG4arqytWq25DRURE5MFnMQzDyO1GiIiIiMifExERQdOmTbl8+TKurq653RwRERGRfzW9KhQREREREREREbkLCqyJiIiIiIiIiIjcBQ0FFRERERERERERuQvKWBMREREREREREbkLCqyJiIiIiIiIiIjcBQXWRERERERERERE7oICayIiIiIiIiIiIndBgTUREREREREREZG7oMCaiIiIiIiIiIjIXVBgTURERERERERE5C4osCYiIiIiIiIiInIXFFgTERERERERERG5C/8HJ7x+fBxiTQEAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\", \"adam\", \"sgd\", \"adagrad\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times on MNIST\"\n", + "save_path = f\"diagrams/convergence_times_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "64732215", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABNYAAALzCAYAAADdxIoAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAACTNUlEQVR4nOzdd3QU1f/G8WcTSAFSCBCSSEjoRUoQAem9F+nFliCiX6UIiAoWCIoGUBCligUUwYIUFRTpRUFEBUFBagAVAkhJCCWB5P7+8GR/LAmwOyZkgffrnD2wd+7OfGZ2drJ5MnPHZowxAgAAAAAAAOASj9wuAAAAAAAAALgZEawBAAAAAAAAFhCsAQAAAAAAABYQrAEAAAAAAAAWEKwBAAAAAAAAFhCsAQAAAAAAABYQrAEAAAAAAAAWEKwBAAAAAAAAFhCsAQAAAAAAABYQrAHAf2Cz2RQbG5vbZWQpMjJS7dq1y+0yALfQqFEjNWrUKLfLyDFLly5VVFSUfHx8ZLPZdPr0acvzatSokSpVqpR9xd1GIiMjFRMTY3++Zs0a2Ww2rVmzJtdqyknuuH5Xvgc3uwMHDshms2nWrFn2ttjYWNlsttwrKofd6usH4NZDsAbgP9m3b58ee+wxlSxZUj4+PvL391fdunX15ptv6vz587ldHrLRuXPnFBsb61a/QAGX27Fjh2JjY3XgwIHcLuWGOnHihLp37y5fX19NmTJFs2fPVv78+XO7LAC4JTRq1Eg2m01lypTJcvry5ctls9lks9n0+eef29tnzZolm80mHx8f/f3331nO98o/YmT1R9Hk5GSNHDlSlSpVUv78+VWoUCFFRUXpySef1OHDh+3hqzOP2+3nI3Cj5MntAgDcvJYsWaJu3brJ29tbDz30kCpVqqTU1FR99913evrpp/X7779rxowZuV1mjjp//rzy5Lk9DqXnzp3TqFGjJOmWPvMHN68dO3Zo1KhRatSokSIjIx2mLVu2LHeKugE2b96sM2fO6OWXX1azZs1yuxxcpkGDBjp//ry8vLxyuxTcQl544QUNGzYst8u4rfj4+Gjv3r368ccfVbNmTYdpc+bMkY+Pjy5cuJDla1NSUjRmzBhNmjTJ5eVevHhRDRo00B9//KHo6GgNGDBAycnJ+v333zV37lx16tRJNWrU0OzZsx1eN378eP3111964403HNqLFCnicg0Aru/2+G0QQLaLj49Xz549FRERoVWrVik0NNQ+rV+/ftq7d6+WLFmSixXmnPT0dKWmpsrHx0c+Pj65XQ5wXcYYXbhwQb6+vrldSq65lYONY8eOSZICAwNztxBk4uHhwc8JZLs8efLcNn/UcxelSpXSpUuX9PHHHzsEaxcuXNDChQvVtm1bzZ8/P8vXRkVF6Z133tHw4cMVFhbm0nIXLVqkLVu2aM6cObrvvvscpl24cEGpqanKnz+/HnjgAYdpn3zyiU6dOpWpHUDO4FJQAJaMGzdOycnJeu+99xxCtQylS5fWk08+aX9+6dIlvfzyyypVqpS8vb0VGRmp5557TikpKQ6vyzgFfs2aNbr77rvl6+urypUr2y8/XLBggSpXriwfHx9Vr15dW7ZscXh9TEyMChQooP3796tly5bKnz+/wsLC9NJLL8kY49D39ddfV506dVSoUCH5+vqqevXqDqfwZ7DZbOrfv7/mzJmjO++8U97e3lq6dKl92uVjrJ05c0aDBg1SZGSkvL29FRwcrObNm+uXX35xmOe8efNUvXp1+fr6qnDhwnrggQcyXSaQsS5///23OnbsqAIFCqhIkSIaOnSo0tLSrvLOZLZs2TL72EsVK1bUggULMvU5ffq0Bg0apPDwcHl7e6t06dIaO3as0tPTJf07xkvGXzlHjRplv6QgNjZWX375pWw2m7Zt22af3/z582Wz2dS5c2eH5VSoUEE9evRwaPvoo4/s2yIoKEg9e/bUn3/+manGTZs2qVWrVgoICFC+fPnUsGFDff/99w59MsZl2bt3r2JiYhQYGKiAgAD17t1b586dc2p7bdq0SW3atFHBggWVP39+ValSRW+++aZDn1WrVql+/frKnz+/AgMDde+992rnzp2WaqlUqZIaN26cqY709HTdcccd6tq1q0PbxIkTdeedd8rHx0dFixbVY489plOnTjm8NuNz9O2339o/R2+//bYk6eDBg+rQoYPy58+v4OBgDR48WN9++22W4yTlxDb/6KOPVLNmTeXLl08FCxZUgwYNMp1N9s0339i3r5+fn9q2bavff/8907wuN2vWLHXr1k2S1LhxY/s+mrFOV46xljE21GeffaZRo0bpjjvukJ+fn7p27arExESlpKRo0KBBCg4OVoECBdS7d+9Mx6uM9bne/rtnzx516dJFISEh8vHxUbFixdSzZ08lJiZec52k6x8rGjVqpOjoaElSjRo1ZLPZrjm+lLPHKOnfMwAbN26sfPny6Y477tC4ceMcpqempmrEiBGqXr26AgIClD9/ftWvX1+rV6926JdxmdLrr7+uKVOmqGTJksqXL59atGihP//8U8YYvfzyyypWrJh8fX1177336uTJkw7zyNinnTme7d+/X926dVNQUJDy5cune+65J8s/9Bw7dkx9+vRR0aJF5ePjo6pVq+qDDz646ra7nDFGo0ePVrFixZQvXz41btw4y300qzHI1q9fr27duql48eLy9vZWeHi4Bg8enOXwCfPmzVPFihXl4+OjSpUqaeHChYqJicl0RubZs2f11FNP2Y/h5cqV0+uvv57p517Gz7NFixapUqVK8vb21p133mn/mZbh4MGDeuKJJ1SuXDn5+vqqUKFC6tatm+XLyJydX8alc99//72GDBmiIkWKKH/+/OrUqZOOHz/u0NfZ9yArl++TM2bMsH83qVGjhjZv3pypf3Ye86/l9OnTiomJUUBAgAIDAxUdHZ3leIlZjUE2c+ZMNWnSRMHBwfL29lbFihU1bdq0TK9NT09XbGyswsLC7Nttx44dWY5N58xn6fJj6SuvvKJixYrJx8dHTZs21d69ex36urLvO+tGfp/q1auXPv30U/t3I0n66quvdO7cOXXv3v2qr3vuueeUlpamMWPGuLx++/btkyTVrVs307SMIVgAuAEDABbccccdpmTJkk73j46ONpJM165dzZQpU8xDDz1kJJmOHTs69IuIiDDlypUzoaGhJjY21rzxxhvmjjvuMAUKFDAfffSRKV68uBkzZowZM2aMCQgIMKVLlzZpaWkOy/Hx8TFlypQxDz74oJk8ebJp166dkWRefPFFh2UVK1bMPPHEE2by5MlmwoQJpmbNmkaSWbx4sUM/SaZChQqmSJEiZtSoUWbKlClmy5Yt9mkjR460973vvvuMl5eXGTJkiHn33XfN2LFjTfv27c1HH31k7zNz5kwjydSoUcO88cYbZtiwYcbX19dERkaaU6dOZVqXO++80zz88MNm2rRppkuXLkaSmTp16nW3eUREhClbtqwJDAw0w4YNMxMmTDCVK1c2Hh4eZtmyZfZ+Z8+eNVWqVDGFChUyzz33nJk+fbp56KGHjM1mM08++aQxxpjk5GQzbdo0I8l06tTJzJ4928yePdv8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j4+PChUqpCJFimjJkiVZrt9/PbY7czw7ePDgVT+fGdMz/i1TpkymkPfKflnJmFamTBmH9iJFijiENFdz6NAhe1CTMdZTw4YNJcm+3TKWceVnM6u2gwcPKiwsLNMfu662Lle+D1Lm9/b8+fMaMWKEfcy2woULq0iRIjp9+rRTYwNeydX5Xe948l/fA1eXk53H/JMnTyohIcH+uPw9Dw0NdQhSr7bsrHz//fdq1qyZfRy4IkWK6LnnnpN0/f0qKCgo03Zz9rPk7HpLzu37zrrR36cyZIyP+c0332jOnDlq166d039ofuGFF3Tp0iWXx1oLCAjQuHHjdODAAR04cEDvvfeeypUrp8mTJ+vll192aV4Acga3kwHgMn9/f4WFhem3335z6XVX/kJ0NZ6eni61mysGZ3bG+vXr1aFDBzVo0EBTp05VaGio8ubNq5kzZ2ru3LmZ+jt7N8Xu3burfv36WrhwoZYtW6bXXntNY8eO1YIFC9S6dWuX67zaOmen9PR0NW/eXM8880yW0zN+cb2WjL9or1u3Tvv379ddd91lH8j8rbfeUnJysrZs2aJXXnnFYbk2m03ffPNNluuZ8ctFxplRr732mqKiorJc/pW/iGTnvvJfOVNLjx49NHz4cM2bN0+DBg3SZ599poCAALVq1creJz09XcHBwZozZ06W87vyF4b/cgfQ3NrmGcudPXu2QkJCMk3PibvgWT3eOLv/StL48eMVExOjL774QsuWLdPAgQMVFxenH374QcWKFcuGtXCes8coZ97Pjz76SDExMerYsaOefvppBQcHy9PTU3Fxcfag+nI34tju7tLS0tS8eXOdPHlSzz77rMqXL6/8+fPr77//VkxMTKYzQXOCM9t7wIABmjlzpgYNGqTatWsrICBANptNPXv2tFSjq/O7UftETiznevPs3LmzwxmR0dHRmjVrluXlSf/+4aJp06YqX768JkyYoPDwcHl5eenrr7/WG2+84Rb7VW7v+9n1fSo0NFSNGjXS+PHj9f3331/1TqBZKVmypB544AHNmDFDw4YNs7T8iIgIPfzww+rUqZNKliypOXPmaPTo0ZbmBSD7EKwBsKRdu3aaMWOGNm7c6HDZZlYiIiKUnp6uPXv22P/SKUlHjx7V6dOnFRERka21paena//+/Q6B0O7duyXJfie1+fPny8fHR99++628vb3t/WbO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8kmFhoZqzpw59oGfM84EyoltXrp0aT3//PN6+eWXVb9+fXXu3Fne3t7avHmzwsLCFBcXJ39/f02bNk0PPvig7rrrLvXs2VNFihTRoUOHtGTJEtWtWzfLXwAzREVFydPTU2PHjlViYqK8vb3VpEkTBQcHu1SrM5zdf1etWqX+/furW7duKlu2rC5duqTZs2fL09NTXbp0uer8c+JY4cwxyhXt2rXTggUL1KlTJ7Vt21bx8fGaPn26KlasmGUg+185czwbNmyYPv74Y7Vu3VoDBw5UUFCQPvjgA8XHx2v+/Pn2s9MeffRRvf3224qJidHPP/+syMhIff755/r+++81ceLEa46ZVKRIEQ0dOlRxcXFq166d2rRpoy1btuibb75R4cKFr7kO5cuXV6lSpTR06FD9/fff8vf31/z587M8y+rVV1/Vvffeq7p166p37946deqUJk+erEqVKjls3/bt26tx48Z6/vnndeDAAVWtWlXLli3TF198oUGDBjncqMBZ7dq10+zZsxUQEKCKFStq48aNWrFihQoVKuTyvHJifv/lPXBVTh3zr9S+fXvVrVtXw4YN04EDB1SxYkUtWLDAqbHHWrRoIS8vL7Vv316PPfaYkpOT9c477yg4ONhhoPyiRYvqySef1Pjx49WhQwe1atVKv/76q327XX42qLOfJWe5su8740Z/n7rcf33vn3/+ec2ePVu7du3SnXfeec2+y5cv18iRI9WhQwfdc889KlCggPbv36/3339fKSkp2boPAvgPcu6GowBuB7t37zZ9+/Y1kZGRxsvLy/j5+Zm6deuaSZMmmQsXLtj7Xbx40YwaNcqUKFHC5M2b14SHh5vhw4c79DEm823GM0gy/fr1c2iLj483ksxrr71mb4uOjjb58+c3+/btMy1atDD58uUzRYsWNSNHjrTfGj7De++9Z8qUKWO8vb1N+fLlzcyZM7O8xXtWy7582siRI40xxqSkpJinn37aVK1a1fj5+Zn8+fObqlWrmqlTp2Z63aeffmqqVatmvL29TVBQkLn//vvNX3/95dAnY12u5Mxt6I35/2357bffmipVqtjX8/JbwWc4c+aMGT58uCldurTx8vIyhQsXNnXq1DGvv/66SU1NtffbsGGDqV69uvHy8nJYd2OM+f33340kU6FCBYd5jx492kgyL774YpZ1zp8/39SrV8/kz5/f5M+f35QvX97069fP7Nq1y6Hfli1bTOfOnU2hQoWMt7e3iYiIMN27dzcrV67MtG2OHz/u8NqMW97Hx8dfd7t99913pnnz5vb3sEqVKmbSpEkOfVasWGHq1q1rfH19jb+/v2nfvr3ZsWOHQx8rtdStW9dIMo888shV65sxY4apXr268fX1NX5+fqZy5crmmWeeMYcPH7b3udrnyBhj9u/fb9q2bWt8fX1NkSJFzFNPPWXmz59vJJkffvjBoW9ObPP333/fvu8XLFjQNGzY0Cxfvtyhz+rVq03Lli1NQECA8fHxMaVKlTIxMTHmp59+uup2yfDOO++YkiVLGk9PTyPJrF692hhjTMOGDU3Dhg0dliEp0+cho+7Nmzc7tF9tPa+3/+7fv988/PDDplSpUsbHx8cEBQWZxo0bmxUrVlx3XYxx7lhxtZqv5OwxqmHDhubOO+/M9Pro6GgTERFhf56enm5effVVExERYby9vU21atXM4sWLM/XL6lhtjGvvgSvHs3379pmuXbuawMBA4+PjY2rWrGkWL16cqd/Ro0dN7969TeHChY2Xl5epXLmymTlz5rU2oV1aWpoZNWqUCQ0NNb6+vqZRo0bmt99+MxERESY6OjrTOmbsh8YYs2PHDtOsWTNToEABU7hwYdO3b1/z66+/GkmZlv/JJ5+Y8uXLG29vb1OpUiXz5Zdfmi5dupjy5cs79Dtz5owZPHiwCQsLM3nz5jVlypQxr732mklPT3fod7WfZ1fWferUKfu2KVCggGnZsqX5448/nFq/rDg7v6vty1ktx9n3ICtX2yeNMZl+thmTc8f8K504ccI8+OCDxt/f3wQEBJgHH3zQbNmyJdO+kdX3gC+//NJUqVLF+Pj4mMjISDN27Fjz/vvvZ1r2pUuXzIsvvmhCQkKMr6+vadKkidm5c6cpVKiQ+d///ucwT2c+S1f7HGds48vrdnbfd/Z7jjE35vvU1Y6Jl8tqO1zr2BwdHW0kZZrvlT+/9+/fb0aMGGHuueceExwcbPLkyWOKFCli2rZta1atWnXVetq2betwHAaQs2zG3IIjwwK4bcXExOjzzz/PkbMlgFvVxIkTNXjwYP3111+64447crscIJPIyEhVqlRJixcvzu1Scl1UVJSKFClieWwq4EqnT59WwYIFNXr0aD3//PO5XQ4A3HQYYw0AgNvI+fPnHZ5fuHBBb7/9tsqUKUOoBriRixcvZhqfb82aNfr111/VqFGj3CkKN70rfwZI/z82HfsVAFjDGGsAANxGOnfurOLFiysqKkqJiYn66KOP9Mcff2jOnDm5XRqAy/z9999q1qyZHnjgAYWFhemPP/7Q9OnTFRISov/973+5XR5uUp9++qlmzZqlNm3aqECBAvruu+/08ccfq0WLFqpbt25ulwcANyWCNQAAbiMtW7bUu+++qzlz5igtLU0VK1bUJ598kukupAByV8GCBVW9enW9++67On78uPLnz6+2bdtqzJgxlgf9B6pUqaI8efJo3LhxSkpKst/QYPTo0bldGgDctBhjDQAAAAAAALCAMdYAAAAAAAAACwjWAAAAAAAAAAsYY01Senq6Dh8+LD8/P9lsttwuBwAAAAAAALnEGKMzZ84oLCxMHh7XPieNYE3S4cOHFR4enttlAAAAAAAAwE38+eefKlas2DX7EKxJ8vPzk/TvBvP398/lagAAAAAAAJBbkpKSFB4ebs+LroVgTbJf/unv70+wBgAAAAAAAKeGC+PmBQAAAAAAAIAFBGsAAAAAAACABQRrAAAAAAAAgAUEawAAAAAAAIAFBGsAAAAAAACABQRrAAAAAAAAgAUEawAAAAAAAIAFBGsAAAAAAACABQRrAAAAAAAAgAUEawAAAAAAAIAFBGsAAAAAAACABQRrAAAAAAAAgAUEawAAAAAAAIAFBGsAAAAAAACABQRrAAAAAACXxMXFqUaNGvLz81NwcLA6duyoXbt2OfSZMWOGGjVqJH9/f9lsNp0+fTrTfF555RXVqVNH+fLlU2BgoNPL37lzpzp06KCAgADlz59fNWrU0KFDh1xaNgBkB4I1AAAAAIBL1q5dq379+umHH37Q8uXLdfHiRbVo0UJnz5619zl37pxatWql55577qrzSU1NVbdu3fT44487vex9+/apXr16Kl++vNasWaNt27bpxRdflI+Pj0vLBoDsYDPGmNwuIrclJSUpICBAiYmJ8vf3z+1yAAAAAOCmcvz4cQUHB2vt2rVq0KCBw7Q1a9aocePGOnXq1FXPSps1a5YGDRrk1JllPXv2VN68eTV79uzr9r3aslNTUzVkyBDNnz9fp06dUtGiRfW///1Pw4cPv+48Adz6XMmJOGMNAAAAAPCfJCYmSpKCgoJydDnp6elasmSJypYtq5YtWyo4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n467uzv79u3jrbfe4sCBAwwbNozGjRvXzcBFRERERERE/g1VBRWR71VTU8OOHTvIyclh8+bNxMTEkJ+fT3p6On5+fnz00Uds3LiR6OhocnNz8ff3p7q6GgcHB/r164ebmxt//etfjfMVFxfj6uqKi4sL8M1y0n/+85+kpaXRqlUrwsPD62q4IiIiIiIiIj+KgjURMfbn+NflBO+99x7jx4+ncePGzJs3z9ggd8uWLcTExJCcnMzjjz9OWFgYbm5upKSk4OXlRUFBAQMHDiQ+Pp6hQ4de1599PzUtXxAREREREZGGTMGaiBi+/PJLCgsLCQ0NBa7OKBs0aBBbt27l4MGDBAYGAlBRUcG4cePIz89n7969HDx4kMjISNzc3OjevTvp6el07tyZ5ORkWrVqVZdDEhEREREREblpNF1E5A707QqfNpuN8vJy4uLiCAoKIjo6mvHjx3P8+HFMJhNRUVG0atWKzMxMo42rqyvh4eGUlZVx6tQpQkJC2LJlC5MmTaJRo0YsXryY7du3K1QTERERERGR25qCNZE7SG1tLfBNhc+cnBzKyso4dOgQ7u7uHDt2jBkzZnDgwAFef/11AAYOHIivry+ZmZlcvnzZONfnn39O48aNjQIEQUFBjB49mjfffJOYmJhr+hMRERERERG5HTWq6wsQkVvHYrEAcPDgQWJjYyksLKRr164AjBw5Em9vb8aOHUt5eblRmbNbt25ERUUxZ84cnn32WcaNGwdAZmYmERERNGnS5Lp+amtrsVgsRn8iIiIiIiIityPNWBO5TX3X9onp6enExsaya9cuxowZw/79+2nfvj2fffYZv/zlL43jwsPD8fb2ZtWqVQDExcURGBhIRkYGr732Gk899RSdOnVi2rRp39m3AjURERERERG5E2jGmshtxmq1YrPZvjPcqq6uJjU1lSNHjpCeno6Pjw9z5szh5MmTLFy4kPXr1wPQpUsXevXqRWpqKidOnMDf359f//rX7Nq1iwEDBvDuu+8a57TZbJhMpls2PhEREREREZH6QjPWRG4zZrMZi8VCcXExqampfPXVV1RWVgLQvXt3+vfvj6enJz4+PgD4+Pjw9NNPs3XrVk6dOgWAg4MDERERACxcuBCAYcOGUVpaSk5OjjEbrqamRqGaiIiIiIiI3LEUrIncZr766iuefPJJAgICePnll+nTpw9Tp04F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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_diagonal\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times of shampoo diagonal and non-diagonal on MNIST\"\n", + "save_path = f\"diagrams/convergence_times_shampoo_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "4ed69e80", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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Xc2bN9eff/6ZYl43mzVrltq3by9JevTRR+37aPI63TrOy08//SSbzaYvv/xSI0aMUP78+ZU9e3a1a9dOMTExio+PV9++fRUUFKRs2bKpW7duKY5Xyetzt/137969atu2rYKDg+Xj46MCBQqoY8eOiomJueM6SXc/VtStW1ddu3aVJFWpUkU2m00RERG3nZ+zxyjpxhmAjz76qLJkyaL8+fNr3LhxDtMTEhI0dOhQVapUSf7+/sqaNatq1aql1atXO/S7+ZKYqVOnqnDhwsqSJYsaNWqkI0eOyBijUaNGqUCBAvL19dXjjz+uc+fOOcwjeZ925nh24MABtW/fXoGBgcqSJYuqV6+e6h96Tp06pe7duytPnjzy8fFR+fLl9emnn952291syZIl8vLyUu3atR3ak18Pe/bsUefOneXv76/cuXPrjTfekDFGR44csZ9RFRwcnGow50xd7timknOvNWfei+70HiHdfpyliIgIh7NL3bVeDRs21KFDh7Rt27YU02514cIFRUREyN/fXwEBAeratWuqYxSmNgbZzJkzVa9ePQUFBcnb21ulSpXS9OnTUzw2KSlJw4cPV758+ZQlSxY9+uij2rVrlwoVKpTi9erM/nvz8evNN99UgQIF5OPjo/r162vfvn0OfdetW6f27durYMGC8vb2VkhIiPr162d5uA5n5+fKZxhnn4PUJF8698svv6h///7KnTu3smbNqtatW+v06dMp+k+bNs3+WS5fvnzq1atXimUljzN5t2Pgnfz555+qV6+efH19VaBAAY0ePdr+merWZd382nD2uCrdGAbg6aeflp+fn327bd++PdWx6dz5uUVyft93lqvfE37++WdVrVpVPj4+Kly4sGbPnu30svLnz6/atWtr/vz5Du3z5s1T2bJlbzvGqIeHh4YMGaIdO3boq6++cnkd9+/frwIFCqQI1SQpKCjI5fkB/zgDwO3y589vChcu7HT/rl27GkmmXbt2ZurUqaZLly5GkmnVqpVDv9DQUPPQQw+ZvHnzmuHDh5sJEyaY/Pnzm2zZspm5c+eaggULmrffftu8/fbbxt/f3xQtWtQkJiY6LMfHx8cUK1bMPP3002bKlCnmscceM5LMG2+84bCsAgUKmBdeeMFMmTLFjB8/3lStWtVIMsuWLXPoJ8mULFnS5M6d24wYMcJMnTrVbN261T5t2LBh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a6fy5csrW7Zs+uGHH7Rp0ya99957km6MuzR27Fh169ZNderU0ZNPPqmTJ09q0qRJKlSokPr16+e27SDduIyze/fu2rRpk/LkyaNPPvlEJ0+edPjw88orr2jp0qV67LHHFBERoUqVKunSpUv6448/tHDhQh08eFC5cuWSr6+vSpUqpS+++ELFixdXYGCgypQpYx/vpVatWpo3b55sNpv90lBPT0/VqFFDy5cvV926dR0GWS5SpIhGjx6twYMH6+DBg2rVqpWyZ8+uqKgoffXVV+rZs6cGDBggDw8P/fe//1XTpk1VunRpdevWTfnz59exY8e0evVq+fn56ZtvvrnnbeXh4aHp06erRYsWqlChgrp166a8efPq77//1p9//mkPHt955x01bdpU4eHh6t69u65cuaLJkyfL399fw4cPt7z8Dh06aMCAARowYIACAwNT/PW8Tp06eu655zRmzBht27ZNjRo1UubMmbV3714tWLBAkyZNUrt27e64jOeee05TpkzRk08+qZdeekl58+bVvHnz7IPjJ/91PC22edGiRfX6669r1KhRqlWrltq0aSNvb29t2rRJ+fLl05gxY+Tn56fp06fr6aef1sMPP6yOHTsqd+7cOnz4sL799lvVrFkz1S+jySpUqCBPT0+NHTtWMTEx8vb2Vr169W47Lt29cHb//fHHH9W7d2+1b99exYsX1/Xr1zVnzhx5enqqbdu2t51/WhwrnDlGueKxxx7T4sWL1bp1azVv3lxRUVGaMWOGSpUqlWoge6+cOZ4NGjRIn332mZo2bao+ffooMDBQn376qaKiorRo0SL7WWA9e/bUBx98oIiICG3evFmFChXSwoUL9csvv2jixIl3vTnP448/rlGjRmnNmjVq1KiR29bxXuty1r2+1lJzp/eIZ555RuPHj1fjxo3VvXt3nTp1SjNmzFDp0qXveFMZq1auXKmCBQuqYsWKd+zXokUL1axZU4MGDdLBgwdVqlQpLV682Kmxxxo1aiQvLy+1aNFCzz33nOLi4vTRRx8pKCjI4cyTPHny6KWXXtJ7772nli1bqkmTJtq+fbu+//575cqVy+GsJGf3X2eVKFFCRYoU0YABA3Ts2DH5+flp0aJFlsfGc/f8pHt7DlyRO3duDR48WCNGjFCTJk3UsmVL7d69W9OmTVOVKlUcblRwrwYOHKg5c+aoSZMm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+YTevXtTpUoVJk2axJIlSwBwdHTk888/Jysri5UrV/Lee+/RqlUrqlSpQnR0NEVFRXh6ejJixAiqV69eas6ioqI7+YgiIiIiIiIi8idkstpKiURuA4vFYlSL5efnY7FY2LBhA9OnTycvL4+JEyfSt29frly5wpgxY9i1axeffvopXl5eBAUFUVBQQGJiIgCffvopEyZM4OjRo+zYsQM/P7+7+WgiIiIiIiIi8ienijW5rezs7Dh9+jQDBw7Ex8eH1157jbZt21KvXj1OnjzJk08+CYCzszNdunShqKiI5cuXAxAUFERycjLvvvsus2fPZvbs2SxdupS4uLgSSTWr1YrFYrkrzyciIiIiIiIif172d/sG5N62Y8cO+vTpg4+PD8uXL8dsNuPu7k63bt3IzMwkLi6OyMhIAAICAoiPjycxMZGhQ4fy0ksvsXv3blasWMG5c+d49dVXadu2bak5TCaT0ZhARERERERERORO0VJQua1Gjx7N/v37SUhIKHE8OzubIUOGYGdnxyeffELFihUBiI2NZebMmfTq1YuxY8dSUFDAxYsXqVGjxt24fRERERERERGR36WloHJbOTg4sHv3bjZt2sSsWbOYPn06Q4YM4fjx47Rp04YzZ86wZs0a4/w2bdrg7e1Nfn6+cb0tqWZrgCAiIiIiIiIiUhaoYk1uq+zsbPr06cOBAwdo27YtVquVH3/8EYvFwsCBA0lNTcVsNrNixQrjmkuXLlG5cuW7eNciIiIiIiIiIv8/7bEmt5WnpyerV6+mUqVKXLx4ETc3N0wmE46OjtSrV4/GjRuTnJzMwYMHeeCBBwCoXLkyVqsVq9VqdBQVERERERERESlrVLEmd8z169dxdHRkwYIFLFmyhNjYWNzc3HBwcMDR0fFu356IiIiIiIiIyH9FFWty2xUUFBAXF8e6devIyMggLy+Pt956Cy8vL6xWKyaTCYvFouo0ERERERERESlXlFiT287BwQFvb28qVarElClT6Nu3r/GZyWQCUFJNRERERERERModLQWVO8JWmWZTWFiIvb3yuiIiIiIiIiJSfimxJneUlnyKiIiIiIiIyL1CiTUREREREREREZFboNIhERERERERERGRW6DEmoiIiIiIiIiIyC1QYk1EREREREREROQWKLEmIiIiIiIiIiJyC5RYExERERERERERuQVKrImIiIiIiIiIiNwCJdZERERE/iTq1avHu++++z+NMWXKFJo1a/aH3I+IiIhIeWeyWq3Wu30TIiIiIvLHWbJkCSNGjCA3N7fE8ZycHFxcXHB2dr7lsS9fvsz169epVq3a/3iXIiIiIuWf/d2+ARERERG5M2rUqPE/j1GpUiUqVar0B9zNzRUUFODg4HDbxhcRERH5I2kpqIiIiEgZc/36dV5++WU8PDyoWLEibdq0Ydu2bQCkpaVhMplYu3YtTZs2pWLFirRq1Yq9e/can0dERHDx4kVMJhMmk4kpU6YApZeCmkwmFi5cSPfu3XF2dubBBx8kIyODH374gfbt2+Pi4kLr1q05fPiwcc1vl4La5vj1n3r16hmf7927ly5dulCpUiU8PT0JCwvj7Nmzxuft27cnKiqKESNGUL16dTp37vzH/4WKiIiI3CZKrImIiIiUMWPHjuWLL75g6dKlfPfdd/j4+NC5c2fOnz9vnDNmzBjefvtttm3bRo0aNQgKCuLGjRu0bt2ad999F1dXV06dOsWpU6cYPXr0787197//nRdeeIHMzEwaNWpEaGgogwYN4m9/+xvbt2/HarUSFRX1u9fb5jh16hQ//PADPj4+BAQEAJCbm0uHDh3w8/Nj+/btrF+/nuzsbHr37l1ijKVLl+Lg4MDmzZv54IMP/se/PREREZE7R0tBRURERMqQ/Px8FixYwJIlS+jSpQsAH374IcnJyXz00Uc88sgjALz22mt06tQJKE5M1a1bl7i4OHr37k2VKlUwmUzUrFnz/50vIiLCSHSNGzeOxx57jEmTJhmVY6+88goRERG/e71tDqvVSkhICFWqVGHhwoUAzJs3Dz8/P958803j/MWLF+Pl5cWhQ4do2LAhAA0aNOCtt976r/6eRERERMoCVayJiIiIlCGHDx/mxo0bPP7448axChUq0LJlS77//nvj2GOPPWZ8XbVqVR544IESn/+nmjZtanzt6ekJgK+vb4lj165dIy8v79+OM378eDIyMli9ejVOTk4A7Nq1iw0bNhj7slWqVIlGjRoZz2nTokWL//q+RURERMoCVayJiIiI/IlVqFDB+NpkMv3uMYvF8rtjfPLJJ7zzzjukpaVRp04d4/jly5cJCgpi5syZpa6pVauW8bWLi8utP4CIiIjIXaSKNREREZEy5P777zf2G7O5ceMG27Zto3HjxsaxLVu2GF9fuHCBQ4cO8eCDDwLg4OBAUVHRHbnfjIwMIiMjWbhwIa1atSrxWfPmzdm3bx/16tXDx8enxB8l00REROReoMSaiIiISBni4uLCkCFDGDNmDOvXr2f//v0MHDiQK1eu8OKLLxrnvfHGG6SkpLB371769+9P9erVCQ4OBoq7f16+fJmUlBTOnj3LlStXbsu9nj59mp49e9KnTx86d+7M6dOnOX36NDk5OQAMGzaM8+fP07dvX7Zt28bhw4dJTEwkIiLijiX+RERERG4nJdZEREREypgZM2YQEhJCWFgYzZs354cffiAxMRF3d/cS57zyyiu0aNGC06dPEx8fj4ODAwCtW7dm8ODBPPfcc9SoUeO2NQY4cOAA2dnZLF26lFq1ahl/bA0WateuzebNmykqKuLJJ5/E19eXESNG4Obmhp2dwlAREREp/0xWq9V6t29CRERERP4zaWlpBAYGcuHCBdzc3O727YiIiIj8qelVoYiIiIiIiIiIyC1QYk1EREREREREROQWaCmoiIiIiIiIiIjILVDFmoiIiIiIiIiIyC1QYk1EREREREREROQWKLEmIiIiIiIiIiJyC5RYExERERERERERuQVKrImIiIiIiIiIiNwCJdZERERERERERERugRJrIiIiIiIiIiIit0CJNRERERERERERkVvwf+uLK/e1GU44AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo_momentum\", \"shampoo_momentum_diagonal\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times of shampoo (momentum) diagonal and non-diagonal on MNIST\"\n", + "save_path = f\"diagrams/convergence_times_shampoo_momentum_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "916443f2", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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2OGHwblz50x0dLR54IEH7G2pO1ePP/64wzRbt25t8uTJc8PldfnyZRMdHW0KFy7ssBOfWkOqmJgYExoaak6cOGFv+/XXX42Xl5fp0qWL27Xs3r3bSHIIJo0xpmfPniZnzpz29fSHH34wkszs2bMd+i1dutSpPfW9X7p0qUPft956y0gyixYtsredP3/elChRwuGzlBHLfO/evcbLy8u0bt3aIQxPfT1jjDlz5ozJlSuX6d69u8Pw+Ph4Exwc7NR+vblz5zptE1KlF0KUKVPG4YfBI488Ymw2m2natKnD+NWqVXP4AeLq+rt161angNQV7mwr0vqhkZ6bbaOMubqsJJmZM2fa25KTk014eLhp27atve3y5csmOTnZYdxTp06ZsLAwh/UhNWjIly+fOX36tL198ODBRpIpX768uXTpkr39kUceMT4+PubChQv2Nle3Z/369TOSzA8//GBvO3PmjImOjjZRUVH2dW/cuHFGkkOgePHiRVOtWjWTM2dOk5iYeMNlVLBgQYdlkcrVz4Or60/qvLsTrBUpUsTp++36YM3V9TIgICDN174+6Dl9+rQJDAw0VatWdVhfjXHcfqYqXry402fseqn7Dj179nRo79Spk0vB2vXLwBhjnnrqKZMjRw77upWcnGzy5MljKleu7LAOzpgxw0hyWL6urjOp63uePHnMyZMn7X2//PJLI8l89dVXN6zx008/NZLM2rVrbzh/aXF1eq6up+68B2lJXe9KlizpsK149913jSTz22+/GWP+232j1Pfxiy++sLedPXvWFCtWzKVgzZV9x82bNxtJpl+/fg59u3bt6rTcWrVqZXx8fMz+/fvtbUePHjWBgYGmdu3a9rbUdaBhw4YOn6n+/fubbNmyOWxbXVn305u/6x0/ftz4+PiYRo0aOXx3T5w40UgyH330kb3N1e+O9KQGYJcvXzbh4eFmxIgRxhhjdu7caSSZNWvW3DRYS/2j5Ntvv+003WtdH6zFx8ebfPnyGUmmRIkS5umnnzZz5sxxWK5pIVjD7YpTQYEsIDExUZIUGBjoUv9vvvlGkjRgwACH9tSLi15/ik6pUqVUrVo1+/OqVatKkurXr69ChQo5tR84cMDpNa+900/qqZwXL17U999/b2+/9voLp06dUkJCgmrVqpXmKVF16tRRqVKlbjKnV69xtHHjRh09ejTN4b/88ouO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qxo2bCgfHx+NHz/eYZoffvihEhISMmQfPtWTTz6poUOH6q233nJ73Dp16qhu3boaM2aM0zYpLRs3bnS6lIck/fzzzzpx4oTbpz8DWR1HrAFZRNGiRTVnzhx16NBBJUuWVJcuXVSmTBldvHhR69at09y5c9W1a1dJUvny5RUbG6tp06bZD1H/+eef9fHHH6tVq1YOfyX2BD8/Py1dulSxsbGqWrWqvv32W3399dd68cUX7afLNW/eXG+//baaNGmiTp066fjx45o0aZKKFSum7du3W3rdM2fOqGDBgnr44YdVvnx55cyZU99//702bdpk3ynInj27xowZo27duqlOnTp65JFHdOzYMb377ruKiopS//79PbYcpKuncT7xxBPatGmTwsLC9NFHH+nYsWMOf119/vnntXjxYj344IPq2rWrKlasqLNnz+q3337TvHnzdPDgQeXNm1f+/v4qVaqUPv/8cxUvXlwhISEqU6aM/Zo6tWrV0uzZs2Wz2eynhmbLlk3Vq1fXd999p7p16zpcvLho0aIaOXKkBg8erIMHD6pVq1YKDAxUXFycFi5cqB49eui5556Tl5eXPvjgAzVt2lSlS5dWt27dVKBAAf31119atWqVgoKC9NVXX93ysvLy8tKUKVPUokULxcTEqFu3bsqfP7/++OMP/f777/bg8Y033lDTpk1VrVo1PfHEEzp//rwmTJig4ODgWzrNpH379nruuef03HPPKSQkxOmvwHXq1NFTTz2lUaNGadu2bWrUqJGyZ8+uvXv3au7cuXr33XcdLsaclqeeekoTJ07UI488or59+yp//vyaPXu2/WLRqX+9z4hlXqxYMb300ksaMWKEatWqpTZt2sjX11ebNm1SRESERo0apaCgIE2ZMkWPPfaY7rvvPnXs2FH58uXT4cOH9fXXX6tGjRoOofn1YmJilC1bNo0ZM0YJCQny9fVV/fr1FRoa6latrnB1/V25cqV69+6tdu3aqXjx4rp8+bJmzZqlbNmyqW3btulOPyO2Fa5so9zx4IMPasGCBWrdurWaN2+uuLg4TZ06VaVKlUozkL1VrmzPBg0apE8//VRNmzZVnz59FBISoo8//lhxcXGaP3++/UijHj166L333lPXrl21efNmRUVFad68efrpp580bty4m96c56GHHtKIESO0Zs0aNWrUyO15cXX9ka7+uJw3b56aNGmi9u3ba//+/frkk0+crnvlDlfXy4oVK+r777/X22+/rYiICEVHR9tvOnGtoKAgvfPOO3ryySdVuXJlderUSblz59avv/6qc+fO6eOPP7b3Xb58uXLkyKEHHnjghjXGxMTokUce0eTJk5WQkKDq1atrxYoVTkf9pKV69erKnTu3YmNj1adPH9lsNs2aNcspdPLx8dGwYcP07LPPqn79+mrfvr0OHjyoGTNmOF2P8lbXmbSWWe3atTV27FhdunRJBQoU0LJlyywfWeTp6Um39h6447/cN+revbsmTpyoLl26aPPmzcqfP79mzZpl/+Phjbi671ixYkW1bdtW48aN04kTJ3T//fdrzZo19iNsr12vRo4cqeXLl6tmzZrq2bOnvL299d577yk5OVljx451e/5cXfddlS9fPg0ePFjDhw9XkyZN1LJlS+3evVuTJ09W5cqVHW5U4GmFCxe+pf2qoUOHuvwbY9asWZo9e7Zat26tihUrysfHR7t27dJHH30kPz8/vfjii5brALKkDLnXKADL9uzZY7p3726ioqKMj4+PCQwMNDVq1DATJkxwuKX3pUuXzPDhw010dLTJnj27iYyMNIMHD3boY0zat8Q2xvm22Mb83y3t33jjDXtbbGysCQgIMPv37zeNGjUyOXLkMGFhYWbo0KEOtwk3xpgPP/zQ3HPPPcbX19eUKFHCTJ8+3X7L7pu99rXDUm+bnpycbJ5//nlTvnx5ExgYaAICAkz58uXN5MmTncb7/PPPTYUKFYyvr68JCQkxnTt3Nn/++adDn9R5uV5aNaYldVl+9913ply5cvb5nDt3rlPfM2fOmMGDB5tixYoZHx8fkzdvXlO9enXz5ptvmosXL9r7rVu3zlSsWNH4+Pg43TL+999/N5JMyZIlHaY9cuRII8kMGTIkzTrnz59vatasaQICAkxAQIApUaKE6dWrl9m9e7dDv61bt5o2bdqYPHnyGF9fX1O4cGHTvn17s2LFCqdl888//ziMm3p79ri4uJsutx9//NE88MAD9vewXLlyZsKECQ59vv/+e1OjRg3j7+9vgoKCTIsWLczOnTsd+lippUaNGkaSefLJJ9Otb9q0aaZixYrG39/fBAYGmrJly5qBAweao0eP2vuk9zkyxpgDBw6Y5s2bG39/f5MvXz7zv//9z8yfP99IMhs2bHDomxHL/KOP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SmrUqMGRI0cK+1FERERERETkDlCwJiJyh7Rs2ZKff/6ZjRs3kp+fX9iPIyIiIlLkqI8kIsWdgjURkTvAbDbj6upK//79mTFjBqdOnSrsRxIREREpMmxbZZhMJgAyMzML83FERG6ZgjURkdvk9yOuRuP1H6/vvvsu+/fvZ9OmTVit1sJ6NBEREZFCs3LlSuLi4gocs/WVlixZQuPGjQkPD+f48eOF8HQiIv8bBWsiIv8jW6BmG3G1WCz2zmLFihVp3749s2bNIiMjo9CeUURERKQwHDx4kGXLlt2w5PPixYv07NmT1157jWeeeYbg4GByc3ML6SlFRG6dwaopFCIit8XEiRNZsWIFtWrVolGjRvTt2xeA/fv3U6dOHaKiomjfvn0hP6WIiIjInWG1WjEYDH/69e+tWbOGoUOHsnTpUgIDA+/WI4qI3HaasSYi8g/cbCxi27Zt1K1bl8WLF9OhQwdKly7NoEGDWLJkCdeuXaNWrVo0btyYmTNnav8QERERuWfZQrTU1NQCX1utVr788kvefPNN+7nffvstVapUoVatWvZjFotFW2eISLGjYE1E5G+wWCxYLJYbRl0tFgvnzp2jS5cu7Ny5k/DwcD755BMqV67Ml19+yf79+wH44IMPiImJYdeuXYXx+CIiIiJ3xciRI2natCkAR48eZfz48RgMBhITE4mNjbX3haxWK5cuXaJUqVKYzWbg+r5rfzbDTUSkqFKwJiLyF2wVq4xGI0ajkZSUFGbOnMnRo0fJy8vDaDRSq1YtwsLCyMzMZODAgXh5eeHq6squXbtISEggLy+PJk2aULduXebMmcOlS5cK+a1EREREbp/f7582cuRIsrKyCAgIoGrVqhw4cACArl274uzszPLlywHo2LEje/bsYefOnTg4ONivP3LkCFu3bgVuvlJARKSoUbAmIvIXbEUIcnJyGDlyJPXq1ePjjz+mTZs2REREAODr64uTkxPDhg3j+PHjLFu2jKSkJAICAli6dCmHDx8GYMSIESxevFgVr0REROSe8McCTgCfffYZOTk5nD17loMHD/L1118D0LRpUx555BESEhJIT0/n2WefpVmzZgwZMoSYmBiuXr1KWloaH330EevXryc/P1+z10SkWFCwJiLyO7YZajbZ2dn07duX4OBg8vLyOHLkCJs2beK5557j3//+NxcuXAAgJiaGH374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vHnzMJlMeHp60rZtW5KTk4mKiqJ///4ANGnShOjoaNatW8eQIUN48cUX2bt3L4sXL+b8+fO8+eabNG7c+IY2DAaDvTCBiIiIiIiIiMhf0VJQKTZef/11UlJSWL16dYHjZ86cYfDgwRiNRubPn0+pUqUAWL58OePHjyckJIQ33niD3NxcLl26RJkyZQrj8UVERERERETkHqOloFJsODo6snfvXrZs2cLEiRMZN24cgwcP5vjx4zz55JOcPXuW//znP/bzn3zySXx9fcnOzrZfbwvVbAUQRERERERERERulWasSbFx5swZunbtSmpqKo0bN8ZqtXL06FEsFgsDBgwgNjYWk8nE4sWL7ddcvnyZ0qVLF+JTi4iIiIiIiMi9SnusSbFRrlw5vv32W1xdXbl06RIeHh4YDAZKlixJ5cqVqVmzJuvXr+fQoUM8/PDDAJQuXRqr1YrVarVXFBURERERERERuR00Y02KpZycHEqWLMmMGTOYO3cuy5cvx8PDA0dHR0qWLFnYjyciIiIiIiIi9wHNWJNiJTc3l6ioKNasWUNCQgJZWVlMmDABHx8frFYrBoMBi8Wi2WkiIiIiIiIicscpWJNixdHREV9fX1xdXXn33Xfp1q2b/TODwQCgUE1ERERERERE7gotBZVixzYzzcZsNuPgoIxYRERERERERO4uBWtSbGnJp4iIiIiIiIgUJgVrIiIiIiIiIiIit0DTfURERERERERERG6BgjUREREREREREZFboGBNRERERERERETkFihYExERERERERERuQUK1kRERERERERERG6BgjUREREREREREZFboGBNRERE5D5RuXJlpkyZ8j/d491336Vu3bq35XlEREREijuD1Wq1FvZDiIiIiMjtM3fuXMLCwrh48WKB4xkZGbi4uODs7HzL975y5Qo5OTn83//93//4lCIiIiLFn0NhP4CIiIiI3B1lypT5n+/h6uqKq6vrbXiam8vNzcXR0fGO3V9ERETkdtJSUBEREZEiJicnh5dffpmyZctSqlQpnnzySRITEwGIi4vDYDCwatUq6tSpQ6lSpWjYsCH79++3f963b18uXbqEwWDAYDDw7rvvAjcuBTUYDMyaNYt27drh7OxMjRo1SEhI4MiRIzRr1gwXFxf+9a9/kZ6ebr/mj0tBbW38/k/lypXtn+/fv5/WrVvj6upKuXLl6NmzJ+fOnbN/3qxZM4YNG0ZYWBje3t48++yzt/8bKiIiInKHKFgTERERKWLeeOMNVqxYQWRkJLt27cLPz49nn32WzMxM+zkjRozg448/JjExkTJlyhAUFEReXh7/+te/mDJlCm5ubpw6dYpTp07x+uuv/2lbH3zwAb169SI5OZnq1asTGhrKwIEDeeutt9i5cydWq5Vhw4b96fW2Nk6dOsWRI0fw8/OjSZMmAFy8eJEWLVoQEBDAzp07Wbt2LWfOnKFLly4F7hEZGYmjoyNbt25l5syZ/+N3T0REROTu0VJQERERkSIkOzubGTNmMHfuXFq3bg3A7NmzWb9+PV9++SWPP/44AGPGjOGZZ54BrgdTDzzwAFFRUXTp0gV3d3cMBgPly5f/r+317dvXHnSFh4fzxBNPMHr0aPvMsVdeeYW+ffv+6fW2NqxWK506dcLd3Z1Zs2YB8OmnnxIQEMCHH35oP3/OnDn4+Phw+PBh/P39AahWrRoTJkz4R98nERERkaJAM9ZEREREipD09HTy8vJo1KiR/ViJEiWoX78+Bw8etB974okn7H/38vLi4YcfLvD531WnTh3738uVKwdA7dq1Cxy7du0aWVlZf3mfkSNHkpCQwLfffouTkxMAe/bsYdOmTfZ92VxdXalevbr9PW3q1av3j59bREREpCjQjDURERGR+1iJEiXsfzcYDH96zGKx/Ok95s+fzyeffEJcXByVKlWyH79y5QpBQUGMHz/+hmsqVKhg/7uLi8utv4CIiIhIIdKMNREREZEipGrVqvb9xmzy8vJITEykZs2a9mPbt2+3//3ChQscPnyYGjVqAODo6Eh+fv5ded6EhAT69+/PrFmzaNiwYYHPHnvsMQ4cOEDlypXx8/Mr8EdhmoiIiNwLFKyJiIiIFCEuLi4MHjyYESNGsHbtWlJSUhgwYABXr17lhRdesJ/3/vvvs3HjRvbv30+fPn3w9vYmODgYuF7988qVK2zcuJFz585x9erVO/Ksp0+fpkOHDnTt2pVnn32W06dPc/r0aTIyMgAYOnQomZmZdOvWjcTERNLT01m3bh19+/a9a8GfiIiIyJ2kYE1ERESkiPnoo4/o1KkTPXv25LHHHuPIkSOsW7cOT0/PAue88sor1KtXj9OnTxMdHY2joyMA//rXvxg0aBDPP/88ZcqUuWOFAVJTUzlz5gyRkZFUqFDB/sdWYKFixYps3bqV/Px8WrZsSe3atQkLC8PDwwOjUd1QERERKf4MVqvVWtgPISIiIiJ/T1xcHM2bN+fChQt4eHgU9uOIiIiI3Nc0VCgiIiIiIiIiInILFKyJiIiIiIiIiIjcAi0FFRERERERERERuQWasSYiIiIiIiIiInILFKyJiIiIiIiIiIjcAgVrIiIiIiIiIiIit0DBmoiIiIiIiIiIyC1QsCYiIiIiIiIiInILFKyJiIiIiIiIiIjcAgVrIiIiIiIiIiIit0DBmoiIiIiIiIiIyC34f30+ePlYLtaSAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo_heuristic\", \"shampoo_heuristic_diagonal\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times of shampoo (heuristic) diagonal and non-diagonal on MNIST\"\n", + "save_path = f\"diagrams/convergence_times_shampoo_heuristic_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "67493b77", + "metadata": {}, + "source": [ + "## Experiment 6: Time until convergence on CIFAR10" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "b8eaa4de", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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OVlNmzaVj4+P3n//fVWtWlUjRoxIc2fF5MmTVblyZY0ePVpjx45Vrly59Oyzz6Z7p96aNWs0YMAAdejQQZMnT04zjS1Vnz59NG3aNLVt21ZTp07VG2+8IRcXF6tQZubMmWrfvr0cHBwUHh6unj17asGCBapdu7YuXbqU5lxCQkKUP39+ffDBB6pXr54mTJiQ4Sm8hw8fVocOHdSsWTOFh4dbzjEqKsoy5tq1a6pXr56+++47de7cWR999JFq1aqloUOHauDAgZKkggULatq0aZKkZ555Rt9++62+/fZbtWnTRrVr15adnZ3Wr19v2eeGDRtkb2+vjRs3WtrOnz+vgwcPqm7dupa2d999V507d9bjjz+uDz/8UP3799fq1atVt25dq2uxZs0a1a1bV4mJiRoxYoTGjh2rS5cuqWHDhtq2bVua827fvr0uX76s8PBwtW/fXjNnzrRMk72XqKgo1a1bV/v379drr72mCRMmqEGDBlq6dKllzKpVqxQSEqJz585p5MiRGjhwoDZv3qxatWqlu7bY/Wrp0KGD1q9fr/j4eKvtNm7cqNOnT1v9jvTu3VuDBg2yrKPYrVs3RUREKCQkRLdu3bLaPjY2Vp06dVKTJk00efJkVapUSVevXlXDhg21atUq9evXT//73/+0efNmDRkyJE3dtrjmo0aN0osvvqjcuXNr9OjRGjVqlPz9/a3WEPv2228VGhqqvHnzaty4cXr77be1f/9+1a5d+55rt9WtW1f9+vWTJL311luWz2jp0qXvuo0khYeHa8WKFXrzzTfVvXt3LViwQH369FH37t116NAhjRw5Um3atNHMmTM1btw4q20z8vlNSkpSSEiIfv75Z7366qv65JNP1KtXLx07dizN7/vf/RvfFRs3btSFCxf03HPPycHB4Z5j7ychIUF//PGH1euvIiIi1KZNGzk6OqpTp046fPiwtm/fnuF9X7x4Ufny5ftHNQIAcigDAMAjJCEhwUgyrVq1ytD4mJgYI8m89NJLVu1vvPGGkWTWrFljaQsICDCSzObNmy1tK1asMJKMi4uL+e233yztn376qZFk1q5da2nr0qWLkWReffVVS1tKSooJDQ01jo6O5vz585b2a9euWdWTlJRkypUrZxo2bGjVLsnY29ubffv2pTk3SWbEiBGW9x4eHiYsLOyu1yIpKcl4e3ubcuXKmevX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169bvb9x44Y+/fRTPf7444RuAADgP4k13gAAAJAjtGnTRkWLFlWlSpWUkJCg7777TgcPHlRERER2lwYAAJAugjcAAADkCCEhIfriiy8UERGh5ORklSlTRj/88MN9F7YHAADILqzxBgAAAAAAANgAa7wBAAAAAAAANkDwBgAAAAAAANgAa7xlQEpKik6fPi03NzfZ2dlldzkAAAAAAADIRsYYXb58WYUKFZK9/d3vayN4y4DTp0/L398/u8sAAAAAAADAf8jJkydVpEiRu/YTvGWAm5ubpDsX093dPZurAQAAAAAAQHZKTEyUv7+/JTO6G4K3DEidXuru7k7wBgAAAAAAAEm675JkPFwBAAAAAAAAsIFsDd6mTZumChUqWO4kCwoK0vLlyy39N27cUFhYmPLnz6+8efOqbdu2Onv2rNU+Tpw4odDQULm6usrb21uDBg3S7du3rcZER0erSpUqcnJyUokSJTRz5sx/4/QAAAAAAADwCMvW4K1IkSJ67733tGPHDv3yyy9q2LChWrVqpX379kmSBgwYoB9//FFz587VunXrdPr0abVp08ayfXJyskJDQ5WUlKTNmzfr66+/1syZMzV8+HDLmLi4OIWGhqpBgwaKiYlR//799dJLL2nFihX/+vkCAAAAAADg0WFnjDHZXcRfeXl5afz48WrXrp0KFiyoWbNmqV27dpKkgwcPqnTp0tqyZYueeuopLV++XC1atNDp06fl4+MjSZo+fbqGDBmi8+fPy9HRUUOGDNFPP/2kvXv3Wo7RsWNHXbp0SZGRkRmqKTExUR4eHkpISGCNNwAAAAAAgEdcRrOi/8wab8nJyfrhhx909epVBQUFaceOHbp165YaN25sGVOqVCkVLVpUW7ZskSRt2bJF5cuXt4RukhQSEqLExETLXXNbtmyx2kfqmNR9pOfmzZtKTEy0egEAAAAAAACZke3B2549e5Q3b145OTmpT58+WrhwocqUKaP4+Hg5OjrK09PTaryPj4/i4+MlSfHx8VahW2p/at+9xiQmJur69evp1hQeHi4PDw/Ly9/fPytOFQAAAAAAAI+QbA/eSpYsqZiYGG3dulUvv/yyunTpov3792drTUOHDlVCQoLldfLkyWytBwAAAAAAADlPruwuwNHRUSVKlJAkVa1aVdu3b9fkyZPVoUMHJSUl6dKlS1Z3vZ09e1a+vr6S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QPAGAADw6AoJCTEzZswwe/fuNTExMaZ58+amaNGi5sqVK5YxTZo0MdWrVzdbt241R48eNe+8846xt7c3v/76a5r99evXzzRr1izN/3AdO3bMODk5maFDh5ojR46YHTt2mLp165rKlSvfs74PP/zQbNmyxRw/ftxs2rTJBAUFmaCgoDTjkpKSTLVq1UyzZs0I3pBlAcX27dtNcHCw8fLyMm5ubuapp54yy5YtsxqTkJBgunfvbjw9PY2Xl5d55plnzIkTJyz9qQHE2rVrrbYLDw83RYoUMa6uriYoKMhs2LDBqj8pKcm8/vrrxtvb27i5uZnGjRtbrd31zjvvmNKlSxsXFxfj5eVlWrVqlWbNLwB4UBnNiuyMMeZfvcUuB0pMTJSHh4cSEhLk7u6e3eUAAAAgG50/f17e3t5at26d6tatK+nOlKFp06bpxRdftIzLnz+/xo0bp5deesnStnz5cg0cOFDz589X2bJltXPnTlWqVEmSNG/ePHXq1Ek3b960TN378ccf1apVK928eVO5c+fOUH1LlixR69at02wzZMgQyzpX/fv316VLlyx90dHRGjx4sPbt26fcuXOrbNmymjVr1l2nAgIA8KjLaFbEGm8AAABAJiQkJEiSvLy8LG01a9bU7NmzFRoaKk9PT82ZM0c3btxQ/fr1LWPOnj2rnj17atGiRXJ1dU2z36pVq8re3l4zZsxQ165ddeXKFX377bdq3LhxhkO3CxcuKCIiQjVr1rTaZs2aNZo7d65iYmK0YMECq21u376t1q1bq2fPnvr++++VlJSkbdu2yc7OLjOXBcBDbEKHFtldAh4Cr89eev9BDyGeagoAAABkUEpKivr3769atWqpXLlylvY5c+bo1q1byp8/v5ycnNS7d28tXLhQJUqUkHRnIfuuXbuqT58+qlatWrr7DgwM1MqVK/XWW2/JyclJnp6e+v333zVnzpz71jVkyBDlyZNH+fPn14kTJ7R48WJL359//qmuXbtq5syZ6f6LfGJiohISEtSiRQsVL15cpUuXVpcuXdIsBA4AADKPO94AAACADAoLC9PevXu1ceNGq/a3335bly5d0qpVq1SgQAEtWrRI7du314YNG1S+fHl9/PHHunz5soYOHXrXfcfHx6tnz57q0qWLOnXqpMuXL2v48OFq166doqKi7nkH2qBBg9SjRw/99ttvGjVq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gl599VWVLFlSLi4uKlq0qPr166eEhIR09/fnn3+qSJEisrOz06VLlyztXbt2lZ2dXZpX2bJl71pbbGysGjRoIB8fHzk7O+uxxx7TsGHDdOvWLatxkyZNstTn7++vAQMG6MaNG//swgAAAADAQ4Q13gAgG6xbt05hYWGqXr26bt++rbfeekvBwcHav3+/8uTJo9OnT+v06dP64IMPVKZMGf3222/q06ePTp8+rXnz5qXZX48ePVShQgWdOnXKqn3y5Ml67733LO9v376tihUr6tlnn71rbblz51bnzp1VpUoVeXp6ateuXerZs6dSUlI0duxYSdKsWbP05ptv6quvvlLNmjV16NAhS8j34YcfZtFVwl+V/7p8dpeAHG5Plz3ZXQIAAMAjh+ANALJBZGSk1fuZM2fK29tbO3bsUN26dVWuXDnNnz/f0l+8eHG9++67euGFF3T79m3lyvV/X9/Tpk3TpUuXNHz4cC1fvtxqvx4eHvLw8LC8X7RokS5evKhu3brdtbbHHntMjz32mOV9QECAoqOjtWHDBkvb5s2bVatWLT333HOSpGLFiqlTp07aunWrZcy8efM0atQoHTlyRK6urqpcubIWL16sPHnyZPQyAQAAAECOxlRT/OdlxZS8Xbt2qVOnTvL395eLi4tKly6tyZMnpzlWRESEKlasKFdXV/n5+al79+76888/71nf6tWrVbNmTbm5ucnX11dDhgzR7du3Lf3R0dFq1aqV/Pz8lCdPHlWqVEkRERFZcGXwMEn9vHp5ed1zjLu7u1Xotn//fo0ePVrffPON7O3v/5X+5ZdfqnHjxgoICMhwbUeOHFFkZKTq1atnaatZs6Z27Nihbdu2SZKOHTumZcuWqXnz5pKkM2fOqFOnTurevbsOHDig6OhotWnTRjzPBwAAAMCjhOAN/3mpU/J+/vlnRUVF6datWwoODtbVq1clyWpK3t69ezVz5kxFRkaqR48eln3s2LFD3t7e+u6777Rv3z7973//09ChQzVlyhTLmE2bNqlz587q0aOH9u3bp7lz52rbtm3q2bPnXWvbtWuXmjdvrqZNm2rnzp2aPXu2lixZojfffNMyZvPmzapQoYLmz5+v3bt3q1u3burcubOWLn24nuiCB5eSkqL+/furVq1aKleuXLpj/vjjD73zzjvq1auXpe3mzZvq1KmTxo8fr6JFi973OKdPn9by5cv10ksvZaiumjVrytnZWY8//rjq1Kmj0aNHW/qee+45jR49WrVr11bu3LlVvHhx1a9fX2+99ZakO8Hb7du31aZNGxUrVkzly5fXK6+8orx582bo2AAAAADwMLAz3H5wXxl9RCz+HefPn5e3t7fWrVununXrpjtm7ty5euGFF3T16lWru4P+KiwsTAcOHNCaNXce+f7BBx9o2rRpOnr0qGXMxx9/rHHjxun3339Pdx9vvfWWoqKitH37dkvbjz/+qPbt2+vcuXNyc3NLd7vQ0FD5+Pjoq6++knTnrrjBgwdr3759yp07t8qWLatZs2Zl6q4k5Fwvv/yyli9fro0bN6pIkSJp+hMTE9WkSRN5eXlpyZIlyp07tyRp4MCBOn36tH744QdJdz5HDRo00MWLF+Xp6ZlmP+Hh4ZowYYJOnz4tR0fH+9Z18uRJXb58Wbt27dKgQYPUr18/DR482HKsjh07asyYMapRo4aOHDmi1157TT179tTbb7+t5ORkhYSEaNu2bQoJCVFwcLDatWunfPny/YMr9WhjjTf8U//FNd4OlCqd3SXgIVD64IHsLsHKJ33WZHcJeAiETW+Y3SVYmdChRXaXgIfA67MfrptPMpoVcccbcpwHnZKX3pi/7iMoKEgnT57UsmXLZIzR2bNnNW/ePMvUufTcvHlTzs7OVm0uLi66ceOGduzYkaFj3759W61bt1a9evW0e/dubdmyRb169ZKdnd1dt8fDo2/fvlq6dKnWrl2bbuh2+fJlNW3aVG5ublq4cKEldJOkNWvWaO7cucqVK5dy5cqlRo0aSZIKFCigESNGWO3HGKOvvvpKL774YoZCN0ny9/dXmTJl1KlTJ7333nsaOXKkkpOTJUlvv/22XnzxRb300ksqX768nnnmGY0dO1bh4eFKSUmRg4ODoqKitHz5cpUpU0Yff/yxSpYsqbi4uAe9VAAAAACQ4xC8IUd50Cl5f7d582bNnj3bakytWrUUERGhDh06yNHRUb6+vvLw8NAnn3xy1/2EhIRo8+bN+v7775WcnKxTp05ZpuOdOXMm3W3mzJmj7du3Wxa3T0xMVEJCglq0aKHixYurdOnS6tKlS4amDiLnMsaob9++WrhwodasWaPAwMA0YxITExUcHCxHR0ctWbIkTcg7f/587dq1SzExMYqJidEXX3whSdqwYYPCwsKsxq5bt05HjhyxmoKdGSkpKbp165ZSUlIkSdeuXUuzppyDg4Pl3CTJzs5OtWrV0qhRo7Rz5045Ojpq4cKFD3R8AAAAAMiJeKopcpSwsDDt3btXGzduTLc/MTFRoaGhKlOmjEaOHJnumL1796pVq1YaMWKEgoODLe379+/Xa6+9puHDhyskJERnzpzRoEGD1KdPH3355Zfp7is4OFjjx49Xnz599OKLL8rJyUlvv/22NmzYkO5C92vXrlW3bt30+eefq2zZspLu3LnXtWtXhYSEqEmTJmrcuLHat28vPz+/TF4d5CRhYWGaNWuWFi9eLDc3N8XHx0u68xRSFxcXS+h27do1fffdd0pMTFRiYqIkqWDBgnJwcFDx4sWt9vnHH39IkkqXLp1mqumXX36pGjVqpBtYT5kyRQsXLtTq1asl3XnISO7cuVW+fHk5OTnpl19+0dChQ9WhQwfLHXctW7bUhx9+qMqVK1ummr799ttq2bKlHBwctHXrVq1evVrBwcHy9vbW1q1bdf78eZUuzbQyAAAAAI8OgjfkGKlT8tavX5/pKXmp9u/fr0aNGqlXr14aNmyYVV94eLhq1aqlQYMGSZIqVKigPHnyqE6dOhozZsxdg7CBAwdqwIABOnPmjPLly6fjx49r6NCheuyxx6zGrVu3Ti1bttTEiRPVuXNnq74ZM2aoX79+ioyM1OzZszVs2DBFRUXpqaeeytQ1Qs4xbdo0SVL9+vWt2mfMmKGuXbvq119/1datWyVJJUqUsBoTFxenYsWKZfhYCQkJmj9/frpP8pXuBHZ/XdswV65cGjdunA4dOiRjjAICAtS3b18NGDDAMmbYsGGys7PTsGHDdOrUKRUsWFAtW7bUu+++K0lyd3fX+vXrNWnSJCUmJiogIEATJkxQs2bNMlw3AAAAAOR0PFwhA3i4QvYyxujVV1/VwoULFR0drccffzzNmMTERIWEhMjJyUnLli2Tq6trmjH79u1Tw4YN1aVLF73//vtp+tu2batcuXJp9uzZlrYtW7aoZs2aOnXqlAoVKpSheocPH66ZM2cqLi7OMvUuOjpaLVq00Lhx49JMAUxPUFCQqlevro8++ihDxwTw8OPhCvineLgCHlY8XAEPIx6ugIcRD1cA/qPCwsL03XffadasWZYpefHx8bp+/bqk/1sH6+rVq/ryyy+VmJhoGZO6EPzevXvVoEEDBQcHa+DAgZb+8+fPW47TsmVLLViwQNOmTdOxY8e0adMm9evXT08++aQldFu4cKFKlSplVd/48eO1Z88e7du3T++8847ee+89ffTRR5bQbe3atQoNDVW/fv3Utm1by7EvXLgg6c7dS0OHDtWWLVv022+/aeXKlTp8+DBT8gAAAAAAyOGYaor/vKyYkjdv3jydP39e3333nb777jtLf0BAgI4fPy5J6tq1qy5fvqwpU6bo9ddfl6enpxo2bKhx48ZZxickJCg2NtbqGMuXL9e7776rmzdvqmLFilq8eLHVdLqvv/5a165dU3h4uMLDwy3t9erVU3R0tFxdXXXw4EF9/fXX+vPPP+Xn56ewsDD17t37wS/ao2ykR3ZXgIfByITsrgAAAADAQ4CpphnAVFMgByF4Q1b4DwZvTDXFP8VUUzysmGqKhxFTTfEwYqopAAAAAAAAgCxD8AYAAAAAAADYAGu8PcKKvflTdpeAh8Dx90KzuwQAAAAAAP6TuOMNAAAAAAAAsAGCNwAAAAAAAMAGCN4AAAAAAAAAGyB4AwAAAAAAAGyA4A0AAAAAAACwAYI3AAAAAAAAwAYI3gAAAAAAAAAbIHgDAAAAAAAAbIDgDQAAAAAAALABgjcAAAAAAADABgjeAAAAAAAAABsgeAMAAAAAAABsgOANAAAAAAAAsAGCNwAAAAAAAMAGCN4AAAAAAAAAGyB4AwAAAAAAAGyA4A0AAAAAAACwAYI3AAAAAAAAwAYI3gAAAAAAAAAbIHgDAAAAAAAAbIDgDQAAAAAAALABgjcAAAAAAADABgjeAAAAAAAAABsgeAMAAAAAAABsgOANAAAAAAAAsAGCNwAAAAAAAMAGCN4AAAAAAAAAGyB4AwAAAAAAAGyA4A0AAAAAAACwAYI3AAAAAAAAwAYI3gAAAAAAAAAbIHgDAAAAAAAAbIDgDQAAAAAAALABgjcAAAAAAADABgjeAAAAAAAAABsgeAMAAAAAAABsgOANAAAAAAAAsAGCNwAAAAAAAMAGCN4AAAAAAAAAGyB4AwAAAAAAAGyA4A0AAAAAAACwgWwN3sLDw1W9enW5ubnJ29tbrVu3VmxsrNWYGzduKCwsTPnz51fevHnVtm1bnT171mrMiRMnFBoaKldXV3l7e2vQoEG6ffu21Zjo6GhVqVJFTk5OKlGihGbOnGnr0wMAAAAAAMAjLFuDt3Xr1iksLEw///yzoqKidOvWLQUHB+vq1auWMQMGDNCPP/6ouXPnat26dTp9+rTatGlj6U9OTlZoaKiSkpK0efNmff3115o5c6aGDx9uGRMXF6fQ0FA1aNBAMTEx6t+/v1566SWtWLHiXz1fAAAAAAAAPDpyZefBIyMjrd7PnDlT3t7e2rFjh+rWrauEhAR9+eWXmjVrlho2bChJmjFjhkqXLq2ff/5ZTz31lFauXKn9+/dr1apV8vHxUaVKlfTOO+9oyJAhGjlypBwdHTV9+nQFBgZqwoQJkqTSpUtr48aNmjhxokJCQv718wYAAAAAAMDD7z+1xltCQoIkycvLS5K0Y8cO3bp1S40bN7aMKVWqlIoWLaotW7ZIkrZs2aLy5cvLx8fHMiYkJESJiYnat2+fZcxf95E6JnUff3fz5k0lJiZavQAAAAAAAIDM+M8EbykpKerfv79q1aqlcuXKSZLi4+Pl6OgoT09Pq7E+Pj6Kj4+3jPlr6Jban9p3rzGJiYm6fv16mlrCw8Pl4eFhefn7+2fJOQIAAAAAAODR8Z8J3sLCwrR371798MMP2V2Khg4dqoSEBMvr5MmT2V0SAAAAAAAAcpgHWuPtxIkT+u2333Tt2jUVLFhQZcuWlZOT0wMX0bdvXy1dulTr169XkSJFLO2+vr5KSkrSpUuXrO56O3v2rHx9fS1jtm3bZrW/1Kee/nXM35+EevbsWbm7u8vFxSVNPU5OTv/ofAAAAAAAAIAM3/F2/PhxDRkyRAEBAQoMDFS9evXUrFkzVatWTR4eHmrSpInmzp2rlJSUDB/cGKO+fftq4cKFWrNmjQIDA636q1atqty5c2v16tWWttjYWJ04cUJBQUGSpKCgIO3Zs0fnzp2zjImKipK7u7vKlCljGfPXfaSOSd0HAAAAAAAAkNUyFLz169dPFStWVFxcnMaMGaP9+/crISFBSUlJio+P17Jly1S7dm0NHz5cFSpU0Pbt2zN08LCwMH333XeaNWuW3NzcFB8fr/j4eMu6ax4eHurRo4cGDhyotWvXaseOHerWrZuCgoL01FNPSZKCg4NVpkwZvfjii9q1a5dWrFihYcOGKSwszHLXWp8+fXTs2DENHjxYBw8e1NSpUzVnzhwNGDDgQa4ZAAAAAAAAcF8ZmmqaJ08eHTt2TPnz50/T5+3trYYNG6phw4YaMWKEIiMjdfLkSVWvXv2++502bZokqX79+lbtM2bMUNeuXSVJEydOlL29vdq2baubN28qJCREU6dOtYx1cHDQ0qVL9fLLLysoKEh58uRRly5dNHr0aMuYwMBA/fTTTxowYIAmT56sIkWK6IsvvlBISEhGTh8AAAAAAADItAwFb+Hh4RneYdOmTTM81hhz3zHOzs765JNP9Mknn9x1TEBAgJYtW3bP/dSvX187d+7McG0AAAAAAADAP5Hpp5rGxcXp8OHDadoPHz6s48ePZ0VNAAAAAAAAQI6X6eCta9eu2rx5c5r2rVu3WqaHAgAAAAAAAI+6TAdvO3fuVK1atdK0P/XUU4qJicmKmgAAAAAAAIAcL9PBm52dnS5fvpymPSEhQcnJyVlSFAAAAAAAAJDTZTp4q1u3rsLDw61CtuTkZIWHh6t27dpZWhwAAAAAAACQU2XoqaZ/NW7cONWtW1clS5ZUnTp1JEkbNmxQYmKi1qxZk+UFAgAAAAAAADlRpu94K1OmjHbv3q327dvr3Llzunz5sjp37qyDBw+qXLlytqgRAAAAAAAAyHEyfcebJBUqVEhjx47N6loAAAAAAACAh0am73iT7kwtfeGFF1SzZk2dOnVKkvTtt99q48aNWVocAAAAAAAAkFNlOnibP3++QkJC5OLiol9//VU3b96UdOepptwFBwAAAAAAANyR6eBtzJgxmj59uj7//HPlzp3b0l6rVi39+uuvWVocAAAAAAAAkFNlOniLjY1V3bp107R7eHjo0qVLWVETAAAAAAAAkONlOnjz9fXVkSNH0rRv3LhRjz32WJYUBQAAAAAAAOR0mQ7eevbsqddee01bt26VnZ2dTp8+rYiICL3xxht6+eWXbVEjAAAAAAAAkOPkyuwGb775plJSUtSoUSNdu3ZNdevWlZOTk9544w29+uqrtqgRAAAAAAAAyHEyHbzZ2dnpf//7nwYNGqQjR47oypUrKlOmjPLmzWuL+gAAAAAAAIAcKdNTTVM5OjqqTJkyKlWqlFatWqUDBw5kZV0AAAAAAABAjpbp4K19+/aaMmWKJOn69euqXr262rdvrwoVKmj+/PlZXiAAAAAAAACQE2U6eFu/fr3q1KkjSVq4cKFSUlJ06dIlffTRRxozZkyWFwgAAAAAAADkRJkO3hISEuTl5SVJioyMVNu2beXq6qrQ0FAdPnw4ywsEAAAAAAAAcqJMB2/+/v7asmWLrl69qsjISAUHB0uSLl68KGdn5ywvEAAAAAAAAMiJMv1U0/79++v5559X3rx5FRAQoPr160u6MwW1fPnyWV0fAAAAAAAAkCNlOnh75ZVXVKNGDZ04cUJNmjSRvf2dm+Yee+wx1ngDAAAAAAAA/r9MB2+SVLVqVVWtWtWqLTQ0NEsKAgAAAAAAAB4GGVrj7b333tP169cztMOtW7fqp59++kdFAQAAAAAAADldhoK3/fv3q2jRonrllVe0fPlynT9/3tJ3+/Zt7d69W1OnTlXNmjXVoUMHubm52axgAAAAAAAAICfI0FTTb775Rrt27dKUKVP03HPPKTExUQ4ODnJyctK1a9ckSZUrV9ZLL72krl278nRTAAAAAAAAPPIyvMZbxYoV9fnnn+vTTz/V7t279dtvv+n69esqUKCAKlWqpAIFCtiyTgAAAAAAACBHyfTDFezt7VWpUiVVqlTJBuUAAAAAAAAAD4cMrfEGAAAAAAAAIHMI3gAAAAAAAAAbIHgDAAAAAAAAbIDgDQAAAAAAALCBfxy8JSYmatGiRTpw4EBW1AMAAAAAAAA8FDIdvLVv315TpkyRJF2/fl3VqlVT+/btVaFCBc2fPz/LCwQAAAAAAAByokwHb+vXr1edOnUkSQsXLpQxRpcuXdJHH32kMWPGZHmBAAAAAAAAQE6U6eAtISFBXl5ekqTIyEi1bdtWrq6uCg0N1eHDh7O8QAAAAAAAACAnynTw5u/vry1btujq1auKjIxUcHCwJOnixYtydnbO8gIBAAAAAACAnChXZjfo37+/nn/+eeXNm1cBAQGqX7++pDtTUMuXL5/V9QEAAAAAAAA5UqaDt1deeUVPPvmkTp48qSZNmsje/s5Nc4899hhrvAEAAAAAAAD/X6aDN0mqVq2aqlWrJklKTk7Wnj17VLNmTeXLly9LiwMAAAAAAAByqkyv8da/f399+eWXku6EbvXq1VOVKlXk7++v6OjorK4PAAAAAAAAyJEyHbzNmzdPFStWlCT9+OOPiouL08GDBzVgwAD973//y/ICAQAAAAAAgJwo08HbH3/8IV9fX0nSsmXL9Oyzz+qJJ55Q9+7dtWfPniwvEAAAAAAAAMiJMh28+fj4aP/+/UpOTlZkZKSaNGkiSbp27ZocHByyvEAAAAAAAAAgJ8r0wxW6deum9u3by8/PT3Z2dmrcuLEkaevWrSpVqlSWFwgAAAAAAADkRJkO3kaOHKly5crp5MmTevbZZ+Xk5CRJcnBw0JtvvpnlBQIAAAAAAAA5UaaDN0lq165dmrYuXbr842IAAAAAAACAh0Wm13iTpHXr1qlly5YqUaKESpQooaefflobNmzI6toAAAAAAACAHCvTwdt3332nxo0by9XVVf369VO/fv3k4uKiRo0aadasWbaoEQAAAAAAAMhxMj3V9N1339X777+vAQMGWNr69eunDz/8UO+8846ee+65LC0QAAAAAAAAyIkyfcfbsWPH1LJlyzTtTz/9tOLi4rKkKAAAAAAAACCny3Tw5u/vr9WrV6dpX7Vqlfz9/bOkKAAAAAAAACCny/RU09dff139+vVTTEyMatasKUnatGmTZs6cqcmTJ2d5gQAAAAAAAEBOlOng7eWXX5avr68mTJigOXPmSJJKly6t2bNnq1WrVlleIAAAAAAAAJATZTp4k6RnnnlGzzzzTFbXAgAAAAAAADw0Mr3GGwAAAAAAAID7y9Adb/ny5ZOdnV2GdnjhwoV/VBAAAAAAAADwMMhQ8DZp0iQblwEAAAAAAAA8XDIUvHXp0sXWdQAAAAAAAAAPFdZ4AwAAAAAAAGyA4A0AAAAAAACwAYI3AAAAAAAAwAYI3gAAAAAAAAAbIHgDAAAAAAAAbCBDTzVt06ZNhne4YMGCBy4GAAAAAAAAeFhkKHjz8PCwdR0AAAAAAADAQyVDwduMGTNsXQcAAAAAAADwUGGNNwAAAAAAAMAGMnTH29/NmzdPc+bM0YkTJ5SUlGTV9+uvv2ZJYQAAAAAAAEBOluk73j766CN169ZNPj4+2rlzp5588knlz59fx44dU7NmzWxRIwAAAAAAAJDjZDp4mzp1qj777DN9/PHHcnR01ODBgxUVFaV+/fopISHBFjUCAAAAAAAAOU6mg7cTJ06oZs2akiQXFxddvnxZkvTiiy/q+++/z9rqAAAAAAAAgBwq08Gbr6+vLly4IEkqWrSofv75Z0lSXFycjDFZWx0AAAAAAACQQ2U6eGvYsKGWLFkiSerWrZsGDBigJk2aqEOHDnrmmWeyvEAAAAAAAAAgJ8r0U00/++wzpaSkSJLCwsKUP39+bd68WU8//bR69+6d5QUCAAAAAAAAOVGmgzd7e3vZ2//fjXIdO3ZUx44ds7QoAAAAAAAAIKfL9FTTEiVKaOTIkTp06JAt6gEAAAAAAAAeCpkO3sLCwvTTTz+pdOnSql69uiZPnqz4+Hhb1AYAAAAAAADkWJkO3gYMGKDt27frwIEDat68uT755BP5+/srODhY33zzjS1qBAAAAAAAAHKcTAdvqZ544gmNGjVKhw4d0oYNG3T+/Hl169YtK2sDAAAAAAAAcqxMP1zhr7Zt26ZZs2Zp9uzZSkxM1LPPPptVdQEAAAAAAAA5WqaDt0OHDikiIkLff/+94uLi1LBhQ40bN05t2rRR3rx5bVEjAAAAAAAAkONkOngrVaqUqlevrrCwMHXs2FE+Pj62qAsAAAAAAADI0TIdvMXGxurxxx+3RS0AAAAAAADAQyPTD1cgdAMAAAAAAADu74GfagoAAAAAAADg7gjeAAAAAAAAABsgeAMAAAAAAABsINPB2+jRo3Xt2rU07devX9fo0aOzpCgAAAAAAAAgp8t08DZq1ChduXIlTfu1a9c0atSoLCkKAAAAAAAAyOkyHbwZY2RnZ5emfdeuXfLy8srUvtavX6+WLVuqUKFCsrOz06JFi6z6u3btKjs7O6tX06ZNrcZcuHBBzz//vNzd3eXp6akePXqkCQZ3796tOnXqyNnZWf7+/nr//fczVScAAAAAAACQWbkyOjBfvnyW8OuJJ56wCt+Sk5N15coV9enTJ1MHv3r1qipWrKju3burTZs26Y5p2rSpZsyYYXnv5ORk1f/888/rzJkzioqK0q1bt9StWzf16tVLs2bNkiQlJiYqODhYjRs31vTp07Vnzx51795dnp6e6tWrV6bqBQAAAAAAADIqw8HbpEmTZIxR9+7dNWrUKHl4eFj6HB0dVaxYMQUFBWXq4M2aNVOzZs3uOcbJyUm+vr7p9h04cECRkZHavn27qlWrJkn6+OOP1bx5c33wwQcqVKiQIiIilJSUpK+++kqOjo4qW7asYmJi9OGHHxK8AQAAAAAAwGYyHLx16dJFkhQYGKhatWopV64Mb/qPREdHy9vbW/ny5VPDhg01ZswY5c+fX5K0ZcsWeXp6WkI3SWrcuLHs7e21detWPfPMM9qyZYvq1q0rR0dHy5iQkBCNGzdOFy9eVL58+dIc8+bNm7p586blfWJiog3PEAAAAAAAAA+jTK/x5ubmpgMHDljeL168WK1bt9Zbb72lpKSkLC2uadOm+uabb7R69WqNGzdO69atU7NmzZScnCxJio+Pl7e3t9U2uXLlkpeXl+Lj4y1jfHx8rMakvk8d83fh4eHy8PCwvPz9/bP0vAAAAAAAAPDwy3Tw1rt3bx06dEiSdOzYMXXo0EGurq6aO3euBg8enKXFdezYUU8//bTKly+v1q1ba+nSpdq+fbuio6Oz9Dh/N3ToUCUkJFheJ0+etOnxAAAAAAAA8PDJdPB26NAhVapUSZI0d+5c1atXT7NmzdLMmTM1f/78rK7PymOPPaYCBQroyJEjkiRfX1+dO3fOaszt27d14cIFy7pwvr6+Onv2rNWY1Pd3WzvOyclJ7u7uVi8AAAAAAAAgMzIdvBljlJKSIklatWqVmjdvLkny9/fXH3/8kbXV/c3vv/+uP//8U35+fpKkoKAgXbp0STt27LCMWbNmjVJSUlSjRg3LmPXr1+vWrVuWMVFRUSpZsmS667sBAAAAAAAAWSHTwVu1atU0ZswYffvtt1q3bp1CQ0MlSXFxcWnWUrufK1euKCYmRjExMZZ9xMTE6MSJE7py5YoGDRqkn3/+WcePH9fq1avVqlUrlShRQiEhIZKk0qVLq2nTpurZs6e2bdumTZs2qW/fvurYsaMKFSokSXruuefk6OioHj16aN++fZo9e7YmT56sgQMHZvbUAQAAAAAAgAzLdPA2adIk/frrr+rbt6/+97//qUSJEpKkefPmqWbNmpna1y+//KLKlSurcuXKkqSBAweqcuXKGj58uBwcHLR79249/fTTeuKJJ9SjRw9VrVpVGzZskJOTk2UfERERKlWqlBo1aqTmzZurdu3a+uyzzyz9Hh4eWrlypeLi4lS1alW9/vrrGj58uHr16pXZUwcAAAAAAAAyLFdmN6hQoYL27NmTpn38+PFycHDI1L7q168vY8xd+1esWHHffXh5eWnWrFn3HFOhQgVt2LAhU7UBAAAAAAAA/0Sm73iTpEuXLumLL77Q0KFDdeHCBUnS/v370zzoAAAAAAAAAHhUZfqOt927d6tRo0by9PTU8ePH1bNnT3l5eWnBggU6ceKEvvnmG1vUCQAAAAAAAOQomb7jbeDAgerWrZsOHz4sZ2dnS3vz5s21fv36LC0OAAAAAAAAyKkyHbxt375dvXv3TtNeuHBhxcfHZ0lRAAAAAAAAQE6X6eDNyclJiYmJadoPHTqkggULZklRAAAAAAAAQE6X6eDt6aef1ujRo3Xr1i1Jkp2dnU6cOKEhQ4aobdu2WV4gAAAAAAAAkBNlOnibMGGCrly5Im9vb12/fl316tVTiRIl5ObmpnfffdcWNQIAAAAAAAA5Tqafaurh4aGoqCht3LhRu3fv1pUrV1SlShU1btzYFvUBAAAAAAAAOVKmg7dUtWvXVu3atbOyFgAAAAAAAOChkempppK0evVqtWjRQsWLF1fx4sXVokULrVq1KqtrAwAAAAAAAHKsTAdvU6dOVdOmTeXm5qbXXntNr732mtzd3dW8eXN98skntqgRAAAAAAAAyHEyPdV07Nixmjhxovr27Wtp69evn2rVqqWxY8cqLCwsSwsEAAAAAAAAcqJM3/F26dIlNW3aNE17cHCwEhISsqQoAAAAAAAAIKfLdPD29NNPa+HChWnaFy9erBYtWmRJUQAAAAAAAEBOl6Gpph999JHlz2XKlNG7776r6OhoBQUFSZJ+/vlnbdq0Sa+//rptqgQAAAAAAABymAwFbxMnTrR6ny9fPu3fv1/79++3tHl6euqrr77SsGHDsrZCAAAAAAAAIAfKUPAWFxdn6zoAAAAAAACAh0qm13gDAAAAAAAAcH8EbwAAAAAAAIANELwBAAAAAAAANkDwBgAAAAAAANgAwRsAAAAAAABgAxl6qunu3bszvMMKFSo8cDEAAAAAAADAwyJDwVulSpVkZ2cnY0y6/al9dnZ2Sk5OztICAQAAAAAAgJwoQ8FbXFycresAAAAAAAAAHioZCt4CAgJsXQcAAAAAAADwUMlQ8LZkyRI1a9ZMuXPn1pIlS+459umnn86SwgAAAAAAAICcLEPBW+vWrRUfHy9vb2+1bt36ruNY4w0AAAAAAAC4I0PBW0pKSrp/BgAAAAAAAJA++8xu8M033+jmzZtp2pOSkvTNN99kSVEAAAAAAABATpfp4K1bt25KSEhI03758mV169YtS4oCAAAAAAAAcrpMB2/GGNnZ2aVp//333+Xh4ZElRQEAAAAAAAA5XYbWeJOkypUry87OTnZ2dmrUqJFy5fq/TZOTkxUXF6emTZvapEgAAAAAAAAgp8lw8Jb6NNOYmBiFhIQob968lj5HR0cVK1ZMbdu2zfICAQAAAAAAgJwow8HbiBEjJEnFihVThw4d5OzsbLOiAAAAAAAAgJwuw8Fbqi5duki68xTTc+fOKSUlxaq/aNGiWVMZAAAAAAAAkINlOng7fPiwunfvrs2bN1u1pz50ITk5OcuKAwAAAAAAAHKqTAdvXbt2Va5cubR06VL5+fml+4RTAAAAAAAA4FGX6eAtJiZGO3bsUKlSpWxRDwAAAAAAAPBQsM/sBmXKlNEff/xhi1oAAAAAAACAh0amg7dx48Zp8ODBio6O1p9//qnExESrFwAAAAAAAIAHmGrauHFjSVKjRo2s2nm4AgAAAAAAAPB/Mh28rV271hZ1AAAAAAAAAA+VTAdv9erVs0UdAAAAAAAAwEMl08Hb+vXr79lft27dBy4GAAAAAAAAeFhkOnirX79+mjY7OzvLn1njDQAAAAAAAHiAp5pevHjR6nXu3DlFRkaqevXqWrlypS1qBAAAAAAAAHKcTN/x5uHhkaatSZMmcnR01MCBA7Vjx44sKQwAAAAAAADIyTJ9x9vd+Pj4KDY2Nqt2BwAAAAAAAORomb7jbffu3VbvjTE6c+aM3nvvPVWqVCmr6gIAAAAAAABytEwHb5UqVZKdnZ2MMVbtTz31lL766qssKwwAAAAAAADIyTIdvMXFxVm9t7e3V8GCBeXs7JxlRQEAAAAAAAA5XaaDt4CAAFvUAQAAAAAAADxUsuzhCgAAAAAAAAD+D8EbAAAAAAAAYAMEbwAAAAAAAIANELwBAAAAAAAANvBAwdvRo0c1bNgwderUSefOnZMkLV++XPv27cvS4gAAAAAAAICcKtPB27p161S+fHlt3bpVCxYs0JUrVyRJu3bt0ogRI7K8QAAAAAAAACAnynTw9uabb2rMmDGKioqSo6Ojpb1hw4b6+eefs7Q4AAAAAAAAIKfKdPC2Z88ePfPMM2navb299ccff2RJUQAAAAAAAEBOl+ngzdPTU2fOnEnTvnPnThUuXDhLigIAAAAAAAByukwHbx07dtSQIUMUHx8vOzs7paSkaNOmTXrjjTfUuXNnW9QIAAAAAAAA5DiZDt7Gjh2rUqVKyd/fX1euXFGZMmVUt25d1axZU8OGDbNFjQAAAAAAAECOkyuzGzg6Ourzzz/X22+/rb179+rKlSuqXLmyHn/8cVvUBwAAAAAAAORImQ7eUhUtWlRFixbNyloAAAAAAACAh0amgzdjjObNm6e1a9fq3LlzSklJsepfsGBBlhUHAAAAAAAA5FSZDt769++vTz/9VA0aNJCPj4/s7OxsURcAAAAAAACQo2U6ePv222+1YMECNW/e3Bb1AAAAAAAAAA+FTD/V1MPDQ4899pgtagEAAAAAAAAeGpkO3kaOHKlRo0bp+vXrtqgHAAAAAAAAeChkeqpp+/bt9f3338vb21vFihVT7ty5rfp//fXXLCsOAAAAAAAAyKkyHbx16dJFO3bs0AsvvMDDFQAAAAAAAIC7yHTw9tNPP2nFihWqXbu2LeoBAAAAAAAAHgqZXuPN399f7u7utqgFAAAAAAAAeGhkOnibMGGCBg8erOPHj9ugHAAAAAAAAODhkOmppi+88IKuXbum4sWLy9XVNc3DFS5cuJBlxQEAAAAAAAA5VaaDt0mTJtmgDAAAAAAAAODh8kBPNQUAAAAAAABwbxkK3hITEy0PVEhMTLznWB68AAAAAAAAAGQweMuXL5/OnDkjb29veXp6ys7OLs0YY4zs7OyUnJyc5UUCAAAAAAAAOU2Ggrc1a9bIy8tLkrR27VqbFgQAAAAAAAA8DDIUvNWrV8/y58DAQPn7+6e5680Yo5MnT2ZtdQAAAAAAAEAOZZ/ZDQIDA3X+/Pk07RcuXFBgYGCWFAUAAAAAAADkdJkO3lLXcvu7K1euyNnZOUuKAgAAAAAAAHK6DE01laSBAwdKkuzs7PT222/L1dXV0pecnKytW7eqUqVKWV4gAAAAAAAAkBNlOHjbuXOnpDt3vO3Zs0eOjo6WPkdHR1WsWFFvvPFG1lcIAAAAAAAA5EAZDt5Sn2barVs3TZ48We7u7jYrCgAAAAAAAMjpMhy8pZoxY4Yt6gAAAAAAAAAeKpl+uAIAAAAAAACA+8vW4G39+vVq2bKlChUqJDs7Oy1atMiq3xij4cOHy8/PTy4uLmrcuLEOHz5sNebChQt6/vnn5e7uLk9PT/Xo0UNXrlyxGrN7927VqVNHzs7O8vf31/vvv2/rUwMAAAAAAMAjLluDt6tXr6pixYr65JNP0u1///339dFHH2n69OnaunWr8uTJo5CQEN24ccMy5vnnn9e+ffsUFRWlpUuXav369erVq5elPzExUcHBwQoICNCOHTs0fvx4jRw5Up999pnNzw8AAAAAAACPrkyv8ZaVmjVrpmbNmqXbZ4zRpEmTNGzYMLVq1UqS9M0338jHx0eLFi1Sx44ddeDAAUVGRmr79u2qVq2aJOnjjz9W8+bN9cEHH6hQoUKKiIhQUlKSvvrqKzk6Oqps2bKKiYnRhx9+aBXQAQAAAAAAAFnpP7vGW1xcnOLj49W4cWNLm4eHh2rUqKEtW7ZIkrZs2SJPT09L6CZJjRs3lr29vbZu3WoZU7duXTk6OlrGhISEKDY2VhcvXkz32Ddv3lRiYqLVCwAAAAAAAMiM/2zwFh8fL0ny8fGxavfx8bH0xcfHy9vb26o/V65c8vLyshqT3j7+eoy/Cw8Pl4eHh+Xl7+//z08IAAAAAAAAj5T/bPCWnYYOHaqEhATL6+TJk9ldEgAAAAAAAHKY/2zw5uvrK0k6e/asVfvZs2ctfb6+vjp37pxV/+3bt3XhwgWrMent46/H+DsnJye5u7tbvQAAAAAAAIDM+M8Gb4GBgfL19dXq1astbYmJidq6dauCgoIkSUFBQbp06ZJ27NhhGbNmzRqlpKSoRo0aljHr16/XrVu3LGOioqJUsmRJ5cuX7186GwAAAAAAADxqsjV4u3LlimJiYhQTEyPpzgMVYmJidOLECdnZ2al///4aM2aMlixZoj179qhz584qVKiQWrduLUkqXbq0mjZtqp49e2rbtm3atGmT+vbtq44dO6pQoUKSpOeee06Ojo7q0aOH9u3bp9mzZ2vy5MkaOHBgNp01AAAAAAAAHgW5svPgv/zyixo0aGB5nxqGdenSRTNnztTgwYN19epV9erVS5cuXVLt2rUVGRkpZ2dnyzYRERHq27evGjVqJHt7e7Vt21YfffSRpd/Dw0MrV65UWFiYqlatqgIFCmj48OHq1avXv3eiAAAAAAAAeORka/BWv359GWPu2m9nZ6fRo0dr9OjRdx3j5eWlWbNm3fM4FSpU0IYNGx64TgAAAAAAACCz/rNrvAEAAAAAAAA5GcEbAAAAAAAAYAMEbwAAAAAAAIANELwBAAAAAAAANkDwBgAAAAAAANgAwRsAAAAAAABgAwRvAAAAAAAAgA0QvAEAAAAAAAA2QPAGAAAAAAAA2ADBGwAAAAAAAGADBG8AAAAAAACADRC8AQAAAAAAADZA8AYAAAAAAADYAMEbAAAAAAAAYAMEbwAAAAAAAIANELwBAAAAAAAANkDwBgAAAAAAANgAwRsAAAAAAABgAwRvAAAAAAAAgA0QvAEAAAAAAAA2QPAGAAAAAAAA2ADBGwAAAAAAAGADBG8AAAAAAACADRC8AQAAAAAAADZA8AYAAAAAAADYAMEbAAAAAAAAYAMEbwAAAAAAAIANELwBAAAAAAAANkDwBgAAAAAAANgAwRsAAAAAAABgAwRvAAAAAAAAgA0QvAEAAAAAAAA2QPAGAAAAAAAA2ADBGwAAAAAAAGADBG8AAAAAAACADRC8AQAAAAAAADZA8AYAAAAAAADYAMEbAAAAAPy/9u48LKqy8f/4ZwYEBUVwl9y31MIkzS1xIc1EzV3TJFMzxd3UKJc0K00tyi2XnlweN3DDIndFChUNySUXlDRTSxRDATFAmPP7w9+cJ9T6PksjLu/XdXnFnDnLfbrOnLnnc+4FAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAe4r4O3SZMmyWKx5PpXvXp18/2MjAwNHjxYRYsWVcGCBdW5c2ddunQp1z7OnTunNm3ayM3NTSVKlNCYMWOUnZ19r08FAAAAAAAAjxjnvC7A/+WJJ57Qjh07zNfOzv8q8siRI7Vx40atWbNGhQsX1pAhQ9SpUyft2bNHkpSTk6M2bdqoVKlS2rt3ry5evKhXXnlF+fLl05QpU+75uQAAAAAAAODRcd8Hb87OzipVqtQdy1NSUvTFF19o5cqV8vf3lyQtXrxYNWrU0L59+9SgQQNt27ZNx48f144dO1SyZEnVrl1b7733noKDgzVp0iS5uLjc69MBAAAAAADAI+K+7moqSQkJCfL29lalSpX08ssv69y5c5KkuLg43bx5Uy1atDDXrV69usqVK6eYmBhJUkxMjHx8fFSyZElznVatWik1NVXHjh27tycCAAAAAACAR8p93eKtfv36WrJkiR5//HFdvHhR7777rvz8/HT06FElJibKxcVFnp6eubYpWbKkEhMTJUmJiYm5Qjf7+/b3/kxmZqYyMzPN16mpqX/TGQEAAAAAAOBRcV8Hb61btzb/rlWrlurXr6/y5ctr9erVKlCggMOOO3XqVL377rsO2z8AAAAAAAAefvd9V9M/8vT0VLVq1fTjjz+qVKlSysrK0rVr13Ktc+nSJXNMuFKlSt0xy6n99d3GjbN7++23lZKSYv47f/7833siAAAAAAAAeOg9UMHb9evXdfr0aZUuXVp16tRRvnz5tHPnTvP9kydP6ty5c2rYsKEkqWHDhvrhhx90+fJlc53t27fLw8NDNWvW/NPjuLq6ysPDI9c/AAAAAAAA4D9xX3c1HT16tNq1a6fy5cvr119/1cSJE+Xk5KQePXqocOHC6tevn9544w0VKVJEHh4eGjp0qBo2bKgGDRpIkp5//nnVrFlTgYGBmj59uhITEzV+/HgNHjxYrq6ueXx2AAAAAAAAeJjd18HbhQsX1KNHD/32228qXry4GjdurH379ql48eKSpE8++URWq1WdO3dWZmamWrVqpc8++8zc3snJSV9//bWCgoLUsGFDubu7q3fv3po8eXJenRIAAAAAAAAeEfd18BYaGvqX7+fPn19z587V3Llz/3Sd8uXLa9OmTX930QAAAAAAAIC/9ECN8QYAAAAAAAA8KAjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAAByA4A0AAAAAAABwAII3AAAAAAAAwAEI3gAAAAAAAAAHIHgDAAAAAAAAHIDgDQAAAAAAAHAAgjcAAAAAAADAAQjeAAAAAAAAAAcgeAMAAAAAAAAcgOANAAAAAAAAcACCNwAAAAAAAMABCN4AAAAAAAAAByB4AwAAAAAAABzgkQre5s6dqwoVKih//vyqX7++vvvuu7wuEgAAAAAAAB5Sj0zwFhYWpjfeeEMTJ07U999/r6eeekqtWrXS5cuX87poAAAAAAAAeAg9MsFbSEiI+vfvrz59+qhmzZqaP3++3NzctGjRorwuGgAAAAAAAB5CznldgHshKytLcXFxevvtt81lVqtVLVq0UExMzB3rZ2ZmKjMz03ydkpIiSUpNTXV8Ye8hW+aNvC4CHgL33eci08jrEuBhcL9d15Jyfs/J6yLgAXff3a8lXc/husb/7n67tn/PSs/rIuAhcL9d1xk3b+Z1EfAQuN+u6/+V/XwM469/gz4SwduVK1eUk5OjkiVL5lpesmRJxcfH37H+1KlT9e67796xvGzZsg4rI/CgKvxpXpcAcIAPC+d1CYC/XeEgrms8pApzbePhM2ZxXpcA+PuND38479dpaWkq/BffRY9E8Pafevvtt/XGG2+Yr202m5KTk1W0aFFZLJY8LBnupdTUVJUtW1bnz5+Xh4dHXhcH+FtwXeNhxbWNhxHXNR5GXNd4GHFdP5oMw1BaWpq8vb3/cr1HIngrVqyYnJycdOnSpVzLL126pFKlSt2xvqurq1xdXXMt8/T0dGQRcR/z8PDg5omHDtc1HlZc23gYcV3jYcR1jYcR1/Wj569autk9EpMruLi4qE6dOtq5c6e5zGazaefOnWrYsGEelgwAAAAAAAAPq0eixZskvfHGG+rdu7fq1q2revXq6dNPP1V6err69OmT10UDAAAAAADAQ+iRCd66d++upKQkvfPOO0pMTFTt2rW1ZcuWOyZcAOxcXV01ceLEO7odAw8yrms8rLi28TDiusbDiOsaDyOua/wVi/F/zXsKAAAAAAAA4D/2SIzxBgAAAAAAANxrBG8AAAAAAACAAxC8AQAAAAAAAA5A8AYAAB4ISUlJkiSbzZbHJQH+PqmpqXldBAAA4EAEbwAA4L6WkZGhESNGqGnTppIkq5XqCx58ly9fVseOHfXRRx/ldVEAAIADUXMFgIdMTk5OXhcB+Fu5urqqQYMGSkxM1N69eyVJTMqOB12JEiUkSYcPH1Z8fHwelwYAADgKwRseSTk5Ofxow0PH3v3OyclJkpScnJyXxQH+ZzabTTdv3pTFYlGLFi3UoEEDTZ48WRLBGx5cNptNmZmZkqRBgwbp/Pnz2rZtWx6XCvh7ZGdn53URgL9dTk4Ow1zgf0LwhkeSk5OTLBaLjh8/rjNnzuR1cYD/2Pr16xUVFZVrmb37XVhYmPz8/BQcHKzz58/nQemAv4fValW+fPmUnJys7du3KyAgQNHR0UpISJDVaiV8wwPJarXK1dVVycnJKlq0qEqXLq29e/fq559/zuuiAf81+/3Y2dlZknT69GkzYP7j+8CDyMnJSVarVWfPnlVSUhLXM/5jBG94JNz+9O3kyZN69tln1aBBAwUEBGjOnDl5VDLgP3fixAmtWbPmji6l165dU2BgoEaNGqWWLVuqQ4cOysrKyqNSAv+77OxsvfPOOypRooRCQ0P15Zdf6vfff9fHH38siUkW8GC4/QdaWlqaBg4cqJIlSyokJERHjx5VVFSUvv322zwqIfC/s1gskqS5c+eqXLly6tixo1544QVFRETkeh94ENz+2/Hs2bNq2bKlnnjiCbVv315Tp06VRKCMfx/BGx5q9h9l9qdvhw8fliQdOHBAfn5++v7779W5c2eNHz9eX3/9dZ6VE/gzt3+hG4ahGjVqaNWqVXruuedyvRcTE6M9e/Zow4YNeuedd9SmTRtVrlz5XhYX+K/82biE8fHxWrNmjf75z3/qyy+/1Pz58xUYGKiVK1fql19+kZOTE5Ve3Lfs1+btgUN0dLQ2bdqk6OhozZ07VytXrpTFYtHGjRt16dKlvCgq8B/5s4cey5Yt0yeffKLx48dr7ty58vDw0LBhwxQeHv6X2wH3i9tbbv7444+SpO+//14+Pj6Kjo5WkyZNNH78eB04cIBAGf82i0GNFY+A8PBwvfrqq/Ly8lKhQoVUsWJFffTRR6pWrZok6dlnn1WlSpU0bdo0eXt753FpgTvFx8erevXq5mvDMLRo0SIlJCToww8/lCQNHDhQCQkJ2rhxo/Lnzy/pViXXYrFQMcB9KScnxxyTUJJu3LghNzc38/W2bdvUuXNnJSQkqFSpUpKkuLg49e3bV02bNtWsWbNks9mY5RT3lduv66NHj2rfvn167bXXZLPZNHLkSP3www+KiIiQm5ubLBaLZs2apUWLFuntt99W9+7d87D0wJ+zB2d/vOcahiGLxSLDMFS3bl0988wzmj9/viTp6tWrGjVqlGJiYnTixIk8KTPw3/j6668VFBQkq9WqqlWrKjs7WzNnztRTTz0lSWrVqpWcnJwUERGR634P/Blqqnho3J4h22w2hYaGauTIkdq2bZv5VPnmzZs6fPhwrkrDkCFDtHv3bsXGxt7rYgP/p7Fjx6pp06aSpJ9++knTpk2TxWJRbGysIiMj9f3330u69RlISUlR/vz5zSbyVquV0A33LXtlddmyZWrZsqVeeeUVLV68WGlpaZJuXe81a9bMNVZhjRo15Ofnp5UrVyo9PZ3QDfcd+3W9evVqzZ8/X2PGjNHcuXP1008/yWq16tq1a7JYLHJ3dzdbe/bu3VupqanasmWLUlNT87L4wJ+yWq2yWq1KSEjQtGnTtHPnTl2+fFnSrQmd3N3dVbZsWXP9woUL67XXXtP58+fNrtS0+cD9xB4m2/+7ZMkSLVy4UGFhYRo/frw+/vhjXb16VWfPnpW7u7u53VtvvaWtW7cqLi4uT8qNBw+1VTzw7LPM3B4uWK1WbdmyRUuXLtX169fVq1cvNWrUSB999JEKFy6snTt3muv26NFDXl5e2rZtm65cuXKvTwG4wx+73o0dO1apqany9fVV5cqVdezYMUnSSy+9JDc3N61du1aS1KlTJx0+fFgHDhwwm8hLt5rJ79mzRxIVXuSt27sZnThxQq1atdKECRPUrFkzFStWTHPmzNHbb78tSXrmmWeUkpKi7777ztzGzc1Nzs7OSk5O1qxZs+66X+Besdlsd3SVjo+P19NPP61Ro0bp1KlTunjxon788Ud9+eWXkqSuXbtq9+7d+vnnn+Xs7CybzabChQurfPny2r9/vyIjI/PiVIC/ZH+4179/f/n4+GjDhg3q27ev/P39lZCQIE9PTzk5OenixYv67bffJN2qi3t7e6t69epKSEiQxFhvuL9YrVZlZGSYE4GsW7dOAwcOlM1m04ABA9SlSxctXrxY586d04kTJ8x6dPPmzfXMM89o9uzZeVl8PEAI3vBAuXDhwh3L7LPMnDp1Sjt37jS/7CXp1VdfVYkSJXKFEAEBASpfvrx27dqVa3+vv/66Vq9erX379jn2JIC/YP8B98dm65999pkyMzN1+fJlnThxQv/85z8lSU2bNtUTTzyhmJgYnT59Wq1atVKzZs00aNAgbdu2TTdu3DC7om7fvl05OTlUeJEn/tg9KTMzU1OmTFF8fLyuXr2qJ598Uj/88IPGjRun2bNnq0aNGlq4cKF+/fVXPf3003rmmWe0Zs0abd68WdKtrktXr15VkyZNtHjxYnO/wL1m7+bs5OSkjIwMnT17VtKtLtLp6ek6fPiwQkJCFBUVpSeeeMIcw61169Z6/PHH9eabb+ry5cuyWq06duyYMjIylJaWppiYmDsG9gbupduvP3t30tjYWO3atUvR0dHas2eP9u7dKycnJ40bN06ZmZnq3LmzYmJiFB0dbW6blJSk+Ph41axZ816fBpDL3R7SRUdH67nnntPy5cslSVOnTpWXl5eKFy9urlOrVi09++yzWrBgga5evWouf/vtt7VixQpzDHHgr1BTxQNj06ZNKleunE6fPp1reVxcnJo3b6769etr1KhRatq0qdasWSPp1thtTZs21U8//aQzZ85IuvUDrUuXLjp9+rSioqLM/fTv318BAQG5xtECHGn+/PmKj4/PtcweuK1Zs0YDBgzQ/v37NWzYMEVGRioxMdHscmcP0Vq3bq3MzEyFhYVJkhYtWqTixYurR48eatmypWrVqqVLly6pd+/ejEGBe+qPFVyr1arr169r79696tKliyIiIpSenq7atWtr+PDhcnV11XvvvacyZcrohx9+UKFChTRx4kRJUnBwsCpXrqx27dqpZ8+eqlu3rlJSUrRo0SKdPHkyr04PkNVqVWJiovr3768qVapoxowZysjIUFxcnJ566ikVLlxYkuTp6amgoCBdvXpV4eHhcnJy0meffaaYmBg999xzGjlypDp06KCuXbtq9erVmjZtWq4HhsC9cvvA8snJyZL+1UptxYoVqlixomrVqiWbzabHHntMkydPVnx8vDZv3qy+ffvK29tbo0eP1qxZs7R9+3ZNmDBB/v7+1K+RZ+wPte0P6W7cuGG+V7FiReXPn1/fffedbty4oSeffFJ+fn46efKkObGCJL3//vvasmVLrpCtXbt26tSp0z06CzzoCN7wQDAMQ82aNVOZMmW0bNkyc3l8fLyGDRum2rVr6/Dhw9q7d69eeOEFffzxxzp8+LDy5cunFi1aKCsrS+vXrze36969uwoWLKh169YpKSlJ0q3AY+nSpapSpco9Pz88egzD0OrVq3Xx4sVcy3fs2KEaNWpo5MiR8vDw0JUrV2Sz2dSsWTO98MILmj59urKzs80QrUWLFqpevbqio6N14cIFlS1bVqtWrdLGjRvVr18/HTt2TBEREapYsWJenCYeQfYfbn9shXbmzBn5+/tr9OjRKleunL755hvVqVNHbm5uKleunCZPnqyvvvpK8+bNU2xsrIYNG6ZVq1aZLeLmzZunRYsWydPTU2PGjNGGDRtUqVIlWSyWP50RFXC0uLg4+fn56cKFC1qyZIm6dOmi/PnzKzMzUykpKcrKyjID6I4dO+rGjRvauHGjUlJS1Lhx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NjSGDBliXL9+3dzmvffeM7y9vY3Vq1cbhmEYsbGxRv78+Y1169bdsf8/NnsHHOHPuiZdvXrVaNiwoREUFGQkJycbX331ldG2bVvD29vbuHjxomEYhnHkyBGjUKFCxldffWXuq3379oazs3OurkuGcav7kmEYxq5duwwfHx9j8uTJDj4zAHh4/PTTT4Zh3OreebducJcvXzYGDx5sdOnSxThy5IiRlZVl7Nixw7BYLMY333xjGIZhJCcnG08//bTRu3dvc7vMzEzjo48+MiwWS67ueXb27qSHDx82evbsaRw9evTvPzngLlJSUoyff/45V134zTffNIYMGWIYhmGMGzfOKFGihFGrVi1j0aJFRkZGhmEYhjFp0iTj6aefNvbs2WNul5GRYSxfvvyOejXdpZFXeDSH+4LValWzZs00b948LVy4UBMmTNChQ4f0/fff6x//+IfKlSuX10XEI+DKlSuSbrXCtM+ga2f8/5aZEREROn/+vL7//nvFxMTohx9+UFRUlMaMGaNixYopICBABw8e1J49e8xts7OzlZ6erhUrVig1NVV169bV999/f9eZ7WgxAUeyd1t2cnJSZmamLl++bL63b98+xcXF6c0335SXl5fatWunWbNm6caNG1qxYoUkmTNNR0VFKSMjQ4sXL1aBAgX0wQcf6LnnnjM/J7///rvCwsLk4+OjDh06qHnz5hoxYkRenDIAPHCmT5+uTp066fjx47JYLGZrs9TUVHMdT09P1alTR59//rl8fHy0b98+hYSEmNtnZ2fLy8tLQ4YMUWhoqHm/d3Fxkb+/vwYMGKD09PRcx/3jUBq1atXSihUr9MQTT9yLU8YjJCcnx6wvGIahGzduaNCgQSpdurQ6dOigwYMHS7p1PV65ckVRUVEqXLiwdu7cqTlz5iguLk59+vQx9zd06FCdOXNGGzZsMLtau7q66uWXX76jXk13aeQVfuHhvjF79mw9++yzCgkJ0bZt2zRixAhVq1bNbPYOOFL79u01ZswYJSUl5ark2mcZtX9Rh4SEaMSIEapatarWrVunF198UU5OTqpUqZIk6eWXX1aBAgU0Y8YMnThxQnFxcfrll1/UtWtX1a9fX9KtikSNGjXy4CzxqLNarbp8+bIGDBig6tWrq1OnTuaMuYUKFVKhQoVyjedTsWJFvfzyy5o3b56uX7+u2rVrKyAgQKtW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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\", \"adam\", \"sgd\", \"adagrad\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times on CIFAR\"\n", + "save_path = f\"diagrams/convergence_times_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "841b1f22", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABN4AAALzCAYAAADOE8r0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAACcUklEQVR4nOzdeXxM1//H8fckZLEkEkSEiK1Kam2ohtqX2Kv2LiSqaBtVVG1VS6tVlFKK+vZb2qLU1iq1761YqnZqjaUIWiS2WpLz+6O/zNdIMKO5TcPr+XjMgzn3zL2fe+fOzeSde8+1GWOMAAAAAAAAAKQpt/QuAAAAAAAAAHgQEbwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBwN9ks9k0aNCg9C4jVQULFlSjRo3SuwzgX6F69eqqXr16epdhmcWLF6ts2bLy8vKSzWbThQsX7nte1atXV8mSJdOuuIdIwYIFFRUVZX++evVq2Ww2rV69Ot1qstK/cf1ufw8yuiNHjshms2nKlCn2tkGDBslms6VfURZ70NcPwMOF4A3A33bo0CF17txZhQsXlpeXl3x8fFS5cmWNGTNGV69eTe/ykIauXLmiQYMG/at+wQJutWfPHg0aNEhHjhxJ71L+UX/88YdatWolb29vffLJJ/rqq6+UNWvW9C4LAB4o8+bNU/369ZUrVy55eHgoKChIrVq10sqVK+19ksPo2bNn29umTJkim82W6qNPnz4Oyxg/frxsNpsqVqx4xzpun4ePj4+qVaumhQsXpuh76dIlDRw4UPXq1ZO/v3+KEPd2e/fuVb169ZQtWzb5+/urbdu2Onv2rAtbCcDtMqV3AQAytoULF6ply5by9PRUu3btVLJkSV2/fl0//vij3nzzTe3evVuTJk1K7zItdfXqVWXK9HAcTq9cuaLBgwdL0gN95hAyrj179mjw4MGqXr26ChYs6DBt6dKl6VPUP2Dz5s26ePGi3n33XdWuXTu9y8EtqlatqqtXr8rDwyO9S8EDpH///ikCG1jHGKMXX3xRU6ZMUbly5dSjRw8FBgbq1KlTmjdvnmrVqqWffvpJlSpVuut83nnnHRUqVMih7fazi6dNm6aCBQtq06ZNOnjwoIoWLZrqvOrUqaN27drJGKOjR49qwoQJaty4sRYtWqSIiAh7v99//13vvPOOChQooDJlytz1j6e//fabqlatKl9fX73//vu6dOmSPvzwQ+3cuVObNm3iOAbcp4fjN0UAloiNjVWbNm0UEhKilStXKm/evPZp0dHROnjwYKp/eXsQJCUl6fr16/Ly8pKXl1d6lwPckzFGf/75p7y9vdO7lHTzIP/CcObMGUlSjhw50rcQpODm5sbPCaS5TJkyPTR/9Ps3GDlypKZMmaJu3bpp1KhRDpfBvvXWW/rqq6+cej/q16+v8uXL33F6bGys1q9fr7lz56pz586aNm2aBg4cmGrfYsWK6YUXXrA/b968uUJDQzVmzBiH4C1v3rw6deqUAgMD9fPPP6tChQp3XP7777+vy5cva8uWLSpQoIAk6YknnlCdOnU0ZcoUderU6Z7rCCAlLjUFcN+GDx+uS5cu6b///a9D6JasaNGiev311+3Pb968qXfffVdFihSRp6enChYsqH79+unatWsOr0sel2z16tUqX768vL29VapUKftf6ObOnatSpUrJy8tLYWFh2rp1q8Pro6KilC1bNh0+fFgRERHKmjWrgoKC9M4778gY49D3ww8/VKVKlZQzZ055e3srLCzM4dKAZDabTV26dNG0adP02GOPydPTU4sXL7ZPu3WMt4sXL6pbt24qWLCgPD09FRAQoDp16uiXX35xmOesWbMUFhYmb29v5cqVSy+88IJOnDiR6rqcOHFCTZs2VbZs2ZQ7d2717NlTiYmJd3hnUlq6dKl97KfQ0FDNnTs3RZ8LFy6oW7duCg4Olqenp4oWLaphw4YpKSlJ0l9jzOTOnVuSNHjwYPvlDYMGDdL8+fNls9m0Y8cO+/zmzJkjm82mZs2aOSynRIkSat26tUPb1KlT7dvC399fbdq00fHjx1PUuHHjRtWrV0++vr7KkiWLqlWrpp9++smhT/K4MAcPHlRUVJRy5MghX19ftW/fXleuXHFqe23cuFENGjSQn5+fsmbNqtKlS2vMmDEOfVauXKkqVaooa9asypEjh55++mnt3bv3vmopWbKkatSokaKOpKQk5cuXTy1atHBoGz16tB577DF5eXkpT5486ty5s86fP+/w2uTP0ZIlS+yfo08//VSSdPToUTVp0kRZs2ZVQECAunfvriVLlqQ6TpMV23zq1Kl64oknlCVLFvn5+alq1aopzkZbtGiRfftmz55dDRs21O7du1PM61ZTpkxRy5YtJUk1atSw76PJ63T7GG/JlwN98803Gjx4sPLly6fs2bOrRYsWio+P17Vr19StWzcFBAQoW7Zsat++fYrjVfL63Gv/PXDggJo3b67AwEB5eXkpf/78atOmjeLj4++6TtK9jxXVq1dXZGSkJKlChQqy2Wx3Hd/K2WOU9NcZhDVq1FCWLFmUL18+DR8+3GH69evXNWDAAIWFhcnX11dZs2ZVlSpVtGrVKod+yWNUffjhh/rkk09UuHBhZcmSRXXr1tXx48dljNG7776r/Pnzy9vbW08//bTOnTvnMI/kfdqZ49nhw4fVsmVL+fv7K0uWLHryySdT/UPQmTNn1KFDB+XJk0deXl4qU6aMvvjiiztuu1sZYzRkyBDlz59fWbJkUY0aNVLdR1MbA23dunVq2bKlChQoIE9PTwUHB6t79+6pDs8wa9YshYaGysvLSyVLltS8efMUFRWV4ozOy5cv64033rAfwx999FF9+OGHKX7uJf88+/bbb1WyZEl5enrqscces/9MS3b06FG9+uqrevTRR+Xt7a2cOXOqZcuW930Zt7PzS74k76efflKPHj2UO3duZc2aVc8880yKy92cfQ9Sc+s+OWnSJPt3kwoVKmjz5s0p+qflMf9uLly4oKioKPn6+ipHjhyKjIxMdbzG1MZAmzx5smrWrKmAgAB5enoqNDRUEyZMSPHapKQkDRo0SEFBQfbttmfPnlTHxnPms3TrsfS9995T/vz55eXlpVq1aungwYMOfV3Z951l9fepq1evaujQoSpevLg+/PDDVMeea9u2rZ544on7Xodk06ZNk5+fnxo2bKgWLVpo2rRpTr+2RIkSypUrlw4dOuTQ7unpqcDAQKfmMWfOHDVq1MgeuklS7dq1VaxYMX3zzTdO1wLgNgYA7lO+fPlM4cKFne4fGRlpJJkWLVqYTz75xLRr185IMk2bNnXoFxISYh599FGTN29eM2jQIPPRRx+ZfPnymWzZspmpU6eaAgUKmA8++MB88MEHxtfX1xQtWtQkJiY6LMfLy8s88sgjpm3btmbcuHGmUaNGRpJ5++23HZaVP39+8+qrr5px48aZUaNGmSeeeMJIMgsWLHDoJ8mUKFHC5M6d2wwePNh88sknZuvWrfZpAwcOtPd97rnnjIeHh+nRo4f57LPPzLBhw0zjxo3N1KlT7X0mT55sJJkKFSqYjz76yPTp08d4e3ubggULmvPnz6dYl8cee8y8+OKLZsKECaZ58+ZGkhk/fvw9t3lISIgpVqyYyZEjh+nTp48ZNWqUKVWqlHFzczNLly6197t8+bIpXbq0yZkzp+nXr5+ZOHGiadeunbHZbOb11183xhhz6dIlM2HCBCPJPPPMM+arr74yX331ldm+fbv5448/jM1mM2PHjrXP8/XXXzdubm4md+7c9rYzZ84YSWbcuHH2tiFDhhibzWZat25txo8fbwYPHmxy5cqVYlusWLHCeHh4mPDwcDNy5Ejz0UcfmdKlSxsPDw+zceNGe7+BAwcaSaZcuXKmWbNmZvz48eall14ykkyvXr3uuc2WLl1qPDw8TEhIiBk4cKCZMGGC6dq1q6ldu7a9z7Jly0ymTJlMsWLFzPDhw+01+/n5mdjYWJdreeedd4ybm5s5deqUQy1r1qwxksysWbPsbS+99JLJlCmT6dixo5k4caLp3bu3yZo1q6lQoYK5fv26w3tftGhR4+fnZ/r06WMmTpxoVq1aZS5dumQKFy5svL29TZ8+fczo0aPNE088YcqUKWMkmVWrVlm6zQcNGmQkmUqVKpkRI0aYMWPGmOeee8707t3b3ufLL780NpvN1KtXz4wdO9YMGzbMFCxY0OTIkcNh+97u0KFDpmvXrkaS6devn30fjYuLM8YYU61aNVOtWjV7/1WrVhlJpmzZsiY8PNx8/PHHpmvXrsZms5k2bdqY5557ztSvX9988sknpm3btkaSGTx4sMMyndl/r127ZgoVKmSCgoLMkCFDzGeffWYGDx5sKlSoYI4cOXLH9THGuWPF0qVLTadOnYwk884775ivvvrKrF+//o7zdOYYVa1aNRMUFGSCg4PN66+/bsaPH29q1qxpJJkffvjB3u/s2bMmb968pkePHmbChAlm+PDh5tFHHzWZM2e2HyONMSY2Nta+rUNDQ82oUaNM//79jYeHh3nyySdNv379TKVKlRzeg/bt2zvU7ezxLC4uzuTJk8dkz57dvPXWW2bUqFGmTJkyxs3NzcydO9fe78qVK6ZEiRImc+bMpnv37ubjjz82VapUMZLM6NGj7/q+GGNM//79jSTToEEDM27cOPPiiy+aoKAgkytXLhMZGWnvl7yf3frZeu2110yDBg3M+++/bz799FPToUMH4+7ublq0aOGwjAULFhibzWZKly5tRo0aZd5++23j5+dnSpYsaUJCQuz9kpKSTM2aNY3NZjMvvfSSGTdunGncuLGRZLp16+YwT0mmTJkyJm/evObdd981o0ePNoULFzZZsmQxv//+u73frFmzTJkyZcyAAQPMpEmTTL9+/Yyfn58JCQkxly9fvuv6pcbZ+SXv8+XKlTM1a9Y0Y8eONW+88YZxd3c3rVq1uq/3IDXJ+2S5cuVM0aJFzbBhw8zw4cNNrly5TP78+R2Op2l9zL+TpKQkU7VqVePm5mZeffVVM3bsWFOzZk1TunRpI8lMnjw5xbJuVaFCBRMVFWU++ugjM3bsWFO3bt0UP3ONMaZXr15GkmncuLEZN26c6dixo8mfP3+K7ebsZyl5HyhXrpwJCwszH330kRk0aJDJkiWLeeKJJxyW7ey+n9r6peaf+D61dOlS+/HVGcnb49af3cl1Ll++3Jw9e9bhcavixYubDh06GGOMWbt2rZFkNm3alGIZkkx0dLRD24ULF4y7u7upWLHiHWvbvHlzin0p2W+//WYkmWHDhqWY9sILLxh/f/+7rjeAOyN4A3Bf4uPjjSTz9NNPO9V/27ZtRpJ56aWXHNp79uxpJJmVK1fa20JCQowkh18clyxZYiQZb29vc/ToUXv7p59+muILf3LA99prr9nbkpKSTMOGDY2Hh4fDl5wrV6441HP9+nVTsmRJU7NmTYd2ScbNzc3s3r07xbrdHrz5+vqm+DJ0+zICAgJMyZIlzdWrV+3tCxYsMJLMgAEDUqzL7V/2kr/c3kvytpwzZ469LT4+3uTNm9eUK1fO3vbuu++arFmzmv379zu8vk+fPsbd3d0cO3bMGPPXL9m3r2+yxx57zOGXoscff9y0bNnSSDJ79+41xhgzd+5cI8ls377dGGPMkSNHjLu7u3nvvfcc5rVz506TKVMme3tSUpJ55JFHTEREhElKSrL3u3LliilUqJCpU6eOvS35y/qLL77oMM9nnnnG5MyZ867b6+bNm6ZQoUImJCTE4Qt7cg3JypYtawICAswff/xhb9u+fbtxc3Mz7dq1c7mWffv2GUkOwaUxxrz66qsmW7Zs9v103bp1RpKZNm2aQ7/FixenaE9+7xcvXuzQd+TIkUaS+fbbb+1tV69eNcWLF3f4LFmxzQ8cOGDc3NzMM8884xCWJy/PGGMuXrxocuTIYTp27OgwPS4uzvj6+qZov92sWbPuGALcKXgrWbKkwy/Zzz77rLHZbKZ+/foOrw8PD3cIO5zdf7du3ZrilzBnuHKsSP6lbvPmzfec772OUcb8ta0kmS+//NLedu3aNRMYGGiaN29ub7t586a5du2aw2vPnz9v8uTJ47A/JIccuXPnNhcuXLC39+3b1x4E3bhxw97+7LPPGg8PD/Pnn3/a25w9nnXr1s1IMuvWrbO3Xbx40RQqVMgULFjQvu+NHj3aSHIIHK9fv27Cw8NNtmzZTEJCwh23z5kzZ4yHh4dp2LChw+ejX79+RtI9g7fbf/YYY8zQoUONzWZz+BlXqlQpkz9/fnPx4kV72+rVq40kh33x22+/NZLMkCFDHObZokULY7PZzMGDB+1tkoyHh4dD2/bt21Mcg1KrMSYmJsV+4Wzw5uz8kvfl2rVrO2zb7t27G3d3d/v+48p7kJrkfTJnzpzm3Llz9vbvvvvOSDLff/+9vS2tj/l3kvw+Dh8+3N528+ZNeyB8r+AttW0cERHh8EfSuLg4kylTphR/9Ez+o8it283Zz1LyPlCiRAmH48GYMWOMJLNz58671pjavu9M8PZPfZ9KXo958+bdtV+yuwVvqT2S/fzzz0aSWbZsmTHmr5+L+fPnt/8B9FaSTIcOHczZs2fNmTNnzM8//2zq1atnJJkRI0bcsba7BW/J0279PCZ78803jSSHYzIA53GpKYD7kpCQIEnKnj27U/1/+OEHSVKPHj0c2t944w1JSnHZQmhoqMLDw+3Pk+/sVLNmTYfT35PbDx8+nGKZXbp0sf8/+dKa69eva/ny5fb2W8e7On/+vOLj41WlSpVUL7mqVq2aQkND77Gmf42xtHHjRp08eTLV6T///LPOnDmjV1991WHcn4YNG6p48eKpXg718ssvOzyvUqVKquucmqCgID3zzDP25z4+PmrXrp22bt2quLg4SX9dplGlShX5+fnp999/tz9q166txMRErV279p7LqVKlitatWyfpr0vZtm/frk6dOilXrlz29nXr1ilHjhz2gYTnzp2rpKQktWrVymG5gYGBeuSRR+yXq23btk0HDhzQc889pz/++MPe7/Lly6pVq5bWrl1rvyT2btvsjz/+sO+7qdm6datiY2PVrVu3FGNlJV9acurUKW3btk1RUVHy9/e3Ty9durTq1Klj39ddqaVYsWIqW7asZs6cae+TmJio2bNnq3Hjxvb9dNasWfL19VWdOnUctldYWJiyZcuW4vK+QoUKOYzzIkmLFy9Wvnz51KRJE3ubl5eXOnbs6NDPim3+7bffKikpSQMGDJCbm+NXkOTtu2zZMl24cEHPPvuswzq6u7urYsWKKdYxLbRr106ZM2e2P69YsaJ9IO1bVaxYUcePH9fNmzclOb//+vr6SpKWLFni9OVm0v0dK5xxr2NUsmzZsjmMH+Th4aEnnnjC4djj7u5uHzsvKSlJ586d082bN1W+fPlUj6MtW7a0bw/pf8fwF154wWF8pIoVK+r69espLhdz5nj2ww8/6IknntBTTz3lsC6dOnXSkSNHtGfPHnu/wMBAPfvss/Z+mTNnVteuXXXp0iWtWbPmjttm+fLlun79ul577TWHy866det2x9fc6tafPZcvX9bvv/+uSpUqyRhjHz7h5MmT2rlzp9q1a6ds2bLZ+1erVk2lSpVymN8PP/wgd3d3de3a1aH9jTfekDFGixYtcmivXbu2ihQpYn9eunRp+fj4OLy3t9Z448YN/fHHHypatKhy5MiR6nvryjo7M79OnTo5bNsqVaooMTFRR48elfT334NkrVu3lp+fn8NypP99r7DimH8nP/zwgzJlyqRXXnnF3ubu7q7XXnvNqXW5dRvHx8fr999/V7Vq1XT48GH7Ze0rVqzQzZs39eqrrzq8NrVlOPtZSta+fXuHsTRv35a313infd9Z/9T3KVe/897NJ598omXLljk8kk2bNk158uSxDz1hs9nUunVrzZgxI9XLYf/73/8qd+7cCggIUPny5bVixQr16tUrxXdtZyVf7uvp6ZliWvL2/TuXBAMPM0bkBHBffHx8JP0VsDjj6NGjcnNzS3FnpsDAQOXIkcP+RTrZreGa9L9fXIODg1Ntv318Kzc3NxUuXNihrVixYpLkMJ7MggULNGTIEG3bts1h7KbUxu+4/S5UdzJ8+HBFRkYqODhYYWFhatCggdq1a2evJ3ldH3300RSvLV68uH788UeHNi8vL/vYasn8/PxSrPOdFC1aNMX63LotAgMDdeDAAe3YsSPFcpIlD9x+N1WqVNHEiRN18OBBHTp0SDabTeHh4fZArmPHjlq3bp0qV65sD10OHDggY4weeeSRVOeZHIYcOHBAkuzjWKUmPj7e4Zen2/eh5Gnnz5+377+3Sx4X5fY7jN3qbu9fiRIltGTJEl2+fFlZs2Z1qZbWrVurX79+OnHihPLly6fVq1frzJkzDuPhHThwQPHx8QoICEi1ttvfp9T22aNHj6pIkSIp9onbP5tWbPNDhw7Jzc3trgF28nJr1qyZ6vQ7vXd/hyvHm6SkJMXHxytnzpxO77+FChVSjx49NGrUKE2bNk1VqlRRkyZN9MILLziEULdz9VjhrHsdo5Llz58/xX7i5+fnMJajJH3xxRcaOXKkfv31V924ccPentr+93eP7c4cz44ePWoP9G5VokQJSX9t15IlS+ro0aN65JFHUoTAt/a7k+Rpt7/3uXPndvhM3MmxY8c0YMAAzZ8/P8U6JgckyctI7Y6GRYsWdQirjh49qqCgoBTBwJ3W5fb3QUr5cyV5XKvJkyfrxIkTDmPFOTM24e1cnd/djie3rtP9vgeuLictj/nnzp3T9evX7dO9vb3l6+uro0ePKm/evA5B652WnZqffvpJAwcOVExMTIqQPz4+3r4MKeV+5e/vn2K7OftZcma9kzmz7zvrn/o+5ep33rt54oknUr25QmJiombMmKEaNWooNjbW3l6xYkWNHDlSK1asUN26dR1e8/TTT9v/qLx582a9//77unLlSopjmrOSQ9HUxjL9888/HfoAcA3BG4D74uPjo6CgIO3atcul16UWaKXG3d3dpfZbv8A7a926dWrSpImqVq2q8ePHK2/evMqcObMmT56s6dOnp+jv7JeNVq1aqUqVKpo3b56WLl2qESNGaNiwYZo7d67q16/vcp13Wue0lJSUpDp16qhXr16pTk/+xfZukv8ivnbtWh0+fFiPP/64faD1jz/+WJcuXdLWrVv13nvvOSzXZrNp0aJFqa5n8i8fyWdWjRgxQmXLlk11+bf/opKW+8rf5UwtrVu3Vt++fTVr1ix169ZN33zzjXx9fVWvXj17n6SkJAUEBNxxsOXbf6H4O1+Q02ubJy/3q6++SnUwaCvu4ne/xxtn91/przviRUVF6bvvvtPSpUvVtWtXDR06VBs2bFD+/PnTYC2c5+wxypn3c+rUqYqKilLTpk315ptvKiAgQO7u7ho6dGiKAb7vNs9/0+fVaomJiapTp47OnTun3r17q3jx4sqaNatOnDihqKioFGeSWsGZ7f3aa69p8uTJ6tatm8LDw+Xr6yubzaY2bdrcV42uzu+f2iesWM695tmsWTOHMyojIyM1ZcqU+16e9NcfjmrVqqXixYtr1KhRCg4OloeHh3744Qd99NFH/4r9Kr33/fv9PlW8eHFJ0s6dO9W0adM0rOh/Vq5cqVOnTmnGjBmaMWNGiunTpk1LEbzlz59ftWvXliQ1aNBAuXLlUpcuXVSjRo0UN7ZyRvKN0k6dOpVi2qlTp+Tv75/q2XAA7o3gDcB9a9SokSZNmqSYmBiHy0JTExISoqSkJB04cMD+l1JJOn36tC5cuKCQkJA0rS0pKUmHDx92CIz2798vSfY7wc2ZM0deXl5asmSJwxeJyZMn/+3l582bV6+++qpeffVVnTlzRo8//rjee+891a9f376u+/btS3FWz759+9J8Wxw8eFDGGIfQ8/ZtUaRIEV26dMn+Be5O7hacFihQQAUKFNC6det0+PBh+yUmVatWVY8ePTRr1iwlJiaqatWq9tcUKVJExhgVKlToruFe8iVRPj4+96zx70hezq5du+64nFvfv9v9+uuvypUrl8OZD84qVKiQnnjiCc2cOVNdunTR3Llz1bRpU4d9s0iRIlq+fLkqV65836FaSEiI9uzZk2KfuP3Oc1Zs8yJFiigpKUl79uy5Y5iXvNyAgID7Wq6z4X5acHb/TVaqVCmVKlVK/fv31/r161W5cmVNnDhRQ4YMSbW/lceKux2jXDF79mwVLlxYc+fOddj2AwcOvO/a7saZ41lISMgdP5/J05P/3bFjh5KSkhzOELm9X2qSpx04cMDhTMGzZ8/e8+yZnTt3av/+/friiy/Url07e/utl5zduozbP5uptYWEhGj58uW6ePGiw1lvzqzLncyePVuRkZEaOXKkve3PP/9M9Q6b6TG/v/Me3M9y0vKYP3LkSIcag4KC7MtasWKFLl265BDcp7bs233//fe6du2a5s+f73Dm2e2X59+6X916Vuoff/yRYrs5+1lylrP7vrP+qe9TTz31lPz8/PT111+rX79+lvxBdNq0aQoICNAnn3ySYtrcuXM1b948TZw48a4/+zt37qyPPvpI/fv31zPPPOPyz8N8+fIpd+7c+vnnn1NM27Rp0x1/bgO4N8Z4A3DfevXqpaxZs+qll17S6dOnU0w/dOiQxowZI+mvv8RJ0ujRox36jBo1StJf43GktXHjxtn/b4zRuHHjlDlzZtWqVUvSX3/5tNlsDuNmHDlyRN9+++19LzMxMTHFpRIBAQEKCgqyn7pfvnx5BQQEaOLEiQ6n8y9atEh79+5N821x8uRJzZs3z/48ISFBX375pcqWLWs/o6hVq1aKiYnRkiVLUrz+woUL9jGtsmTJYm9LTZUqVbRy5Upt2rTJHryVLVtW2bNn1wcffCBvb2+FhYXZ+zdr1kzu7u4aPHhwirMLjDH6448/JElhYWEqUqSIPvzwQ126dCnFcs+ePevs5rirxx9/XIUKFdLo0aNTrGNyfXnz5lXZsmX1xRdfOPTZtWuXli5dat/X70fr1q21YcMGff755/r9998dLjOV/nqfEhMT9e6776Z47c2bN536BTYiIkInTpzQ/Pnz7W1//vmn/vOf/zj0s2KbN23aVG5ubnrnnXdSnNmQvH0jIiLk4+Oj999/3+GyRWeXm/wL8P3+Mu8KZ/ffhIQE+2coWalSpeTm5pbqJT3JrDhWOHOMckXyL6C3rv/GjRsVExPj8ryc4czxrEGDBtq0aZNDDZcvX9akSZNUsGBB+6XODRo0UFxcnMPYijdv3tTYsWOVLVs2VatW7Y511K5dW5kzZ9bYsWMd1v32n3GpSW2bGWPsPy+TBQUFqWTJkvryyy8dPoNr1qzRzp07Hfo2aNBAiYmJDj/3JOmjjz6SzWa777Otb9+vx44dm+pYU+kxv7/zHrjCimN+WFiYateubX/cuk/evHlTEyZMsPdNTEzU2LFj7znP1Par+Pj4FH9MrFWrljJlyuSwDEkp9p3kepz5LDnL2X3fWf/U96ksWbKod+/e2rt3r3r37p3q2ZBTp07Vpk2b7mv+V69e1dy5c9WoUSO1aNEixaNLly66ePGiw8/t1GTKlElvvPGG9u7dq+++++6+amnevLkWLFig48eP29tWrFih/fv3q2XLlvc1TwCc8QbgbyhSpIimT5+u1q1bq0SJEmrXrp1Kliyp69eva/369Zo1a5aioqIkSWXKlFFkZKQmTZqkCxcuqFq1atq0aZO++OILNW3a1D6QbFrx8vLS4sWLFRkZqYoVK2rRokVauHCh+vXrZ78cr2HDhho1apTq1aun5557TmfOnNEnn3yiokWLphjDyFkXL15U/vz51aJFC5UpU0bZsmXT8uXLtXnzZvtf+TNnzqxhw4apffv2qlatmp599lmdPn1aY8aMUcGCBdW9e/c02w7SX5eJdujQQZs3b1aePHn0+eef6/Tp0w5fxt98803Nnz9fjRo1UlRUlMLCwnT58mXt3LlTs2fP1pEjR5QrVy55e3srNDRUM2fOVLFixeTv76+SJUvax3ipUqWKpk2bJpvNZr/01N3dXZUqVdKSJUtUvXp1h4GXixQpoiFDhqhv3746cuSImjZtquzZsys2Nlbz5s1Tp06d1LNnT7m5uemzzz5T/fr19dhjj6l9+/bKly+fTpw4oVWrVsnHx0fff//9395Wbm5umjBhgho3bqyyZcuqffv2yps3r3799Vft3r3bHkyOGDFC9evXV3h4uDp06KCrV69q7Nix8vX11aBBg+57+a1atVLPnj3Vs2dP+fv7pzjjq1q1aurcubOGDh2qbdu2qW7dusqcObMOHDigWbNmacyYMWrRosVdl9G5c2eNGzdOzz77rF5//XXlzZtX06ZNsw+cnPwXciu2edGiRfXWW2/p3XffVZUqVdSsWTN5enpq8+bNCgoK0tChQ+Xj46MJEyaobdu2evzxx9WmTRvlzp1bx44d08KFC1W5cuVUf0FMVrZsWbm7u2vYsGGKj4+Xp6enatasecdx8f4OZ/fflStXqkuXLmrZsqWKFSummzdv6quvvpK7u7uaN29+x/lbcaxw5hjlikaNGmnu3Ll65pln1LBhQ8XGxmrixIkKDQ1NNbD9u5w5nvXp00dff/216tevr65du8rf319ffPGFYmNjNWfOHPvZbZ06ddKnn36qqKgobdmyRQULFtTs2bP1008/afTo0XcdSD137tzq2bOnhg4dqkaNGqlBgwbaunWrFi1apFy5ct11HYoXL64iRYqoZ8+eOnHihHx8fDRnzpxUz9J6//339fTTT6ty5cpq3769zp8/r3HjxqlkyZIO27dx48aqUaOG3nrrLR05ckRlypTR0qVL9d1336lbt24ON1JwVqNGjfTVV1/J19dXoaGhiomJ0fLly5UzZ06X52XF/P7Oe+Aqq475t2vcuLEqV66sPn366MiRIwoNDdXcuXOdGvusbt268vDwUOPGjdW5c2ddunRJ//nPfxQQEOBw6WCePHn0+uuva+TIkWrSpInq1aun7du327fbrWdJOftZcpYr+74z/snvU2+++aZ2796tkSNHatWqVWrRooUCAwMVFxenb7/9Vps2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zZs35ze/+Q3/+7//y8aNGwHYt28fX3zxBU2bNg0/r1u3bsyaNSu8aUIZp5RKkqSK4PuWAF+8eDE9evRgxYoV3HDDDaxevZqTTz6Zd955h1//+tfh69q1a0fdunV54oknAOjduzepqalkZmby8MMPc80119CkSRPuvvvu7y3bwE3S0chvgpKOSt8dYVa2K2kgECA6OppgMBie8hAIBAiFQnz88cfUrFmTk046CYCaNWty/fXXU61aNaZPnw7Ao48+ys6dO7n44osZPnw4bdq0IScnh/79+x9SvlMkJElSRRIMBsO7hv6r/fv3M3fuXP70pz/Ro0cPGjduzJgxY2jVqhXjx48PX9eiRQvatm1LdnY2mzZt4rjjjuPSSy+lefPmdOnShdzcXGbNmkVSUtL3BnySdDQyeJN01BkwYAB33303+/fvBwhvO79r1y5uvvlm0tLS6NatG48//jhff/01gUCAHTt2EB8fT15eXvg5559/PnXq1OHVV19l586dtGjRgjlz5nDbbbexZcsWrrjiCj766CNatGhxSB18YytJkiqSqKgooqOjycvLY+7cuXz++ecUFRUBcM4553DllVeSlJREcnIyAMnJyVx77bUsWrSIzz77DICYmBjat28PEA7k+vbtS35+PuvWrQuHbSUlJa51K+mYYfAm6aiwdevWcGh20UUX0bNnT2JiYsLnFyxYQLt27di4cSOjRo2iZcuWzJ49mwceeACAXr16sX79elavXh2+p2rVqkRFRbFhwwZmzZoFQKNGjbj99tt57rnnGDVqFDExMY5ukyRJFd7nn3/O1VdfTaNGjbjvvvvo0KEDw4cPBw7MBOjbty8rV64kNzcXOBCyXXDBBTRq1OigUW9paWn069ePzp07A3DyySfTtm1bsrKyyMzMBL7dpEGSjgUGb5IqvBUrVtC8eXPeeOMNAK666ipOP/108vLywtve79u3j27duvHGG2/QtWtXrrnmGgoLC3n66afZtm0baWlptGnThqlTp/Lqq68C8P7771OpUiWuuuoqXn755fCGCWXTWEtLSwmFQo5ukyRJR7RPPvkEOLD8Rlnf6Lvy8vJ46KGHKC4uZvny5axfv57JkyczefJkli1bRlRUFO3atSMtLS380hKgYcOG9OrViylTpvD1118DEB8fz2233UbHjh3DI9x69+5NkyZNOOGEEyLfWEk6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+PjevXvp1KkTY8eOPeSeunXrhn+Pj4//7xsgSZJUThzxJkmSVMGccsop4fXOyuzfv59Vq1bRtGnT8LGVK1eGf//666/5+OOPadKkCQCxsbGUlpYelvpmZ2dz3XXXMW3aNFq1anXQuTPOOIMPP/yQBg0akJKSctCPYZskSaroDN4kSZIqmPj4eAYNGsQdd9zBokWL2LBhAwMGDGDfvn38/ve/D193//33s2TJEj744AN+97vfUatWLTp37gwc2L107969LFmyhK+++op9+/ZFpK7btm2jS5cu9OzZk0suuYRt27axbds28vLyALjpppvYtWsXvXr1YtWqVWzevJnXX3+dfv36HbZgUJIkKVIM3iRJkiqghx56iPT0dPr27csZZ5zBpk2beP3110lKSjromltvvZWWLVuybds25s+fT2xsLADnnXceN9xwA1dddRXHH398xDYuyMnJYfv27cycOZO6deuGf8o2gKhXrx5vv/02paWldOjQgWbNmjFkyBASExOJirKrKkmSKrZAKBQKlXclJEmS9MtZunQp7dq14+uvvyYxMbG8qyNJknTM8jWiJEmSJEmSFAEGb5IkSZIkSVIEONVUkiRJkiRJigBHvEmSJEmSJEkRYPAmSZIkSZIkRYDBmyRJkiRJkhQBBm+SJEmSJElSBBi8SZIkSZIkSRFg8CZJkiRJkiRFgMGbJEmSJEmSFAEGb5IkSZIkSVIE/D/iwtn72/edEQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_diagonal\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times of shampoo diagonal and non-diagonal on CIFAR10\"\n", + "save_path = f\"diagrams/convergence_times_shampoo_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "66dd21fd", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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D2rx4sXau3evWrZsqTZt2mjnzp2SpFOnTqlu3boqUKCAtm7dquXLl2v//v0KCwuzz8PNzU3PPPOMFi9erEOHDmn69OlavXq1XnnlFafq7Nevn3LkyJGofdmyZXr++ef1yiuvaN++fZo0aZI++eQTTZw48eE2DIAnHjdXcAI3VwAAAAAA5507d07+/v7asGGDqlevLkny8fHR5MmT1aFDB3u/LFmyaNSoUXrppZc0depUvfvuuzp9+rTc3G6dI7J3716VLFlShw8fVoECBZJc1vjx4zVmzBidPHnynjUtW7ZMvXv31oIFC1SsWDHt3LlTpUuXliS1b99eN27c0Pz58+39J0yYoNGjR+vEiROy2WzavXu3evbsqV9//VU2m00FCxbUZ599pvLlyz/MpgKQSnFzBQAAAABAioiOjpYkZc6c2d5WpUoVzZs3TxcuXFB8fLzmzp2ra9euqWbNmpJuXQbq4eFhD90kydvbW5L0008/JbmcU6dOaeHChapRo8Y96zlz5oy6du2qWbNmKV26dImmX79+XV5eXg5t3t7e+uuvv/Tnn39Kkp5//nnlypVL27dv144dOzRgwAClTZv2PlsCwJOO4A0AAAAAkGzi4+PVs2dPVa1aVcWLF7e3f/vtt7px44ayZMkiT09Pvfzyy1q0aJH9TLbatWsrMjJSY8aMUWxsrP79918NGDBAknT69GmHZbRr107p0qVTzpw55evrqy+++OKu9RhjFBYWpldeeeWuZ6eFhoZq4cKFWrNmjeLj43Xo0CF99NFHDss+ceKE6tatq8KFC6tgwYJ69tlnVapUqQffUACeCARvAAAAAIBkEx4ern379mnu3LkO7e+++66ioqK0evVq/frrr+rdu7fatGmjvXv3SpKKFSumGTNm6KOPPlK6dOkUGBiovHnzKiAgwOEsOEn65JNP9Ntvv+mHH37Q0aNH1bt377vWM2HCBF28eFEDBw68a5+uXbuqe/fuatKkiTw8PFS5cmW1bdtWkuzL7t27t1566SXVrVtXI0eO1NGjRx9o+wB4sjDGmxMY4w0AAAAA7q979+764YcftHHjRuXNm9fefvToURUoUED79u1TsWLF7O0JN1OYMmWKw3zOnDmj9OnTy2azydfXV3PnztWzzz6b5DJ/+uknVatWTadOnVL27NkTTW/evLn+97//yWaz2dvi4uLk7u6u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37hxYzZs2BAO5BITE4mPjyd79uxnXPPXiwA7TUKSJJ3Lfmu02XvvvcfLL79M7969GTZsGHnz5uWhhx5i0qRJwJk1D5wK0ILBIAkJCZQsWZKkpCT2798PnKrLChcubMMEScpEDN4knVUgECAYDBIVFUVMTAz79+/nnXfeYd68eQB06tQpXASOGzcufAxAmzZt2L17N9OmTQufLzk5mbx58zJjxozw2m7z588nMTHxjGu7CLAkScoMAoEAgUDgtNFmodFpwWCQV155hXr16vHggw9So0YNRo0aRZ06dejVqxfw2zVPqKYaP348H3zwQXh5jdDLSGslSco8smT0DUg6N4UKyOPHjzN27Fh69OhBsWLF+Omnn3j44Yd57LHHiIuLo3379gwbNoy2bduGi8LatWtTq1YtRo4cybFjx8ifPz+LFi3imWeeoXTp0lSvXh04VTymp6dbPEqSpEwpVC9t3LiRjz/+mKpVq1KpUiWKFi3K3r17yZUrF6VKlQrvny9fPjp06MCHH37I/PnzqVmz5hnBHfwjvLvooosArJckKRNzxJsk4OxTHfr27UvHjh354osvmDBhAt988w3PP/88o0aN4rPPPgPg0Ucf5aeffmLq1KmnHdujRw8eeOABZsyYwejRo2nVqhUdOnSgXr16p+1nESlJkjKjYDDIgQMH6NixI5UrV+aTTz7hvvvuo27dumzcuJH8+fMTExPDjh072LNnD3AqqCtRogQVKlQIN00IhW7BYDDcwTS0vu0/N6uSJGVOBm/SBS4UuIUCsH9uolCmTBnGjBnDjz/+SJ06dciSJQvdunWjYsWKTJ06lS1btlCyZElat27NgAED2LJlC7t372bkyJGUKFGCXr16MW3aNFavXs1dd911xvklSZIyg1AgFhJajmPp0qXMmzePBQsW8OWXX/LVV18RExND7969OXHiBImJiSQnJ7NgwYLwsbt372b9+vVUrFgROFWLhdbTDQVugwcPpkiRIrRr187RbpKUyRm8SRe4UCE3fvx4WrRoQa9evZg1axYA9913H1dddRV58+blwIED4WPuu+8+Vq9ezZdffgnAoEGDOHDgAE2aNKFYsWJMnz6d/fv3EwgEKFy4MPCPgtVGCZIkKbMIvTAMBWJ79+4F/lHPjBkzhjJlylClShUCgQAXXXQRzz77LOvXr2f69Oncd999lChRgp49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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo_momentum\", \"shampoo_momentum_diagonal\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times of shampoo (momentum) diagonal and non-diagonal on CIFAR10\"\n", + "save_path = f\"diagrams/convergence_times_shampoo_momentum_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "b9f87198", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2538760060.py:30: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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U7hwYZMvXz4zYsQI88knn5ihQ4eaypUrm4MHD950fYxx7lixfPly07NnTyPJDBs2zHz++edm3bp1N52nM8eoWrVqmXz58pmwsDDz0ksvmcmTJ5u6desaSeb777+39zt58qTJmzev6devn5kyZYoZM2aMeeihh0z27Nntx0hjjImNjbVv65IlS5px48aZQYMGGQ8PD1O1alXz+uuvm2rVqjm8Bt26dXOo29njWVxcnMmTJ4/x9/c3b7zxhhk3bpwpV66ccXNzMwsXLrT3u3jxoilRooTJnj276du3r5k4caKJjIw0ksz48eNv+boYY0z9+vVNxYoV07S78n5w9vgXHh5uunTpkmZZN9unS5YsacqXL2/GjRtnRo4caS5cuGCflvoed2a//Pzzz42np6eJjIy0v59S963UffP69+T06dONzWYzpUuXNm+//bb58MMPzTPPPGM6derkUPeVK1eMt7e3efnll2+7nZ966ikjyXTs2NFMmjTJtG7d2pQtWzbNZ2969bRq1cq0a9fOvPvuu2bKlCmmbdu2RpJ55ZVXHJYxefJkI8lERkaaiRMnmn79+png4GBTtGhRh+3r7D6Tur9XqFDBFCtWzIwePdqMGTPG5MqVyxQoUMDhWP3ee++ZyMhIM2zYMDNt2jTz0ksvGW9vb/PII4+YlJSUW65fepydnyv7qbOvQXpS97sKFSqYSpUqmffff98MGTLE+Pj4mEceecSh73/13ejixYvmwQcfNF5eXqZ///5m/PjxplKlSvZ1uv5zsEuXLiY8PNzh+c5+d2zXrp2RZDp16mQ+/PBD065dO/tn7fXbbefOncbX19fkzZvXDB8+3IwaNcoULlzYeHp6mg0bNqTZPhUqVDB169Y1H3zwgXn55ZeNu7u7adeuncOynd3301u/9KTuL/Xr1zcffPCB6dWrl3F3d0/z3cPZz470TJs2zUgys2bNum0912+PTZs2palzz5495uTJk/bH6dOn7X0uX75sgoKCzPDhw40x175zuLu7p/kOlvo+fvfddx3ad+7caSSZ9u3b37S2efPmpdmXUv30009Gkvnqq6/STKtRo0a6nytAZiB4A+4C8fHxRpJ59NFHneq/bds2I8k888wzDu2vvPKKkWRWrlxpbwsPDzeSHH5xXLZsmZFkvL29zV9//WVv/+ijj9L9kiTJvPjii/a2lJQU06xZ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v30NUnXr1s1hnM0bt8V/+d3o+++/V968eR2GcfDx8VHPnj2dWhdnvjumDkfywgsvODz3xRdfdPg5OTlZy5cvV6tWrVSkSBF7e968edWxY0f99NNPab639OzZ0+E9FRkZqeTkZP3111/p1nizfd9ZP/zwg5KSktSnTx+Hz+4ePXooICAgzWvjzGdHelz93eJWFixYoJiYGPvj+ktJ58yZo4cffljFihWzL69Zs2Y3vdx08ODByp07t0JDQxUZGanff/9dY8eOddh/XHHp0iVJSvdGMF5eXvbpQGbj5grAXSB1TIJz58451f+vv/6Sm5ub/UMuVWhoqIKCghy+LEhyCNek//sFISwsLN32G8e3cnNzc/gCI10LNyQ5jP+yePFijRgxQtu2bXMY2yO9XxIKFy580/W73pgxY9SlSxeFhYWpUqVKatq0qTp37myvJ3VdH3rooTTPLV68uH766SeHNi8vL/vYaqly5MiRZp1vplixYmnW5/ptERoaqr1792r79u1plpMqdeD2W4mMjNTUqVO1b98+7d+/XzabTREREfZArkePHlq7dq2qV69u/+K2d+9eGWP0wAMPpDvP1DBk7969knTTgW8lKT4+3uEXnBv3odRpZ86ccRhT43qp43WkBoPpudXrV6JECS1btkwXLlyQr6+vS7W0b99er7/+uv7++2/lz59fq1at0okTJxzGw9u7d6/i4+MVEhKSbm03vk7p7bN//fWXihYtmmafuPG9acU2379/v9zc3G4ZYKcut27duulOv9lr92+4crxJSUlRfHy8cubM6fT+W7hwYfXr10/jxo3TnDlzFBkZqZYtW+qpp5665d0wXT1WOOt2x6hUBQoUSLOf5MiRw2EsR0maOXOmxo4dqz/++ENXrlyxt6e3//3bY7szx7O//vrL4e51qUqUKCHp2nYtXbq0/vrrLz3wwANpQuDr+92OuWHc0Ovd7v3g7P5zJ5z5vLrT/fJmnDl+Xs8Yk+5n7fVSvzsULVrUoT2990R6du3apUGDBmnlypVpwovUcexSX+cbj4HZsmVLM7aXq/vMrfaBVKdPn9bQoUP15ZdfpjmGOzMG5I1cnd/t9tN/+xo4sxzJmu9GJ0+edBjTzM/PT35+fvrrr7/SPZY4u07OfHdM3W43vhdv3M9Onjypixcv3vQ7RUpKig4fPqxSpUrZ253Zr5zZ9511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xTm0V6tWTV5eXnrggQcUGRmpYcOGSbp2Zkt8fLyaN2+uokWLqkSJEurSpYsKFizo+gYCcF8heAMAAAAAZJioqCjt3LlTX375pUP7m2++qbNnz+qHH37Qr7/+qn79+qldu3basWOHJKlUqVKaOXOmxo4dKx8fH4WGhqpw4cLKkyePw1lwqdavX6/ff/9d3bt3z7Dav/rqK23ZskVz587VkiVL9N5770m6duZe165d1ahRI7Vo0UITJky4aRgIANdjjDcnMMYbAAAAANxer1699O2332rNmjUqXLiwvX3//v0qVqyYdu7cqVKlStnbU2+mMHXqVIf5HD9+XL6+vrLZbAoICNCXX36ptm3bOvTp3r27tmzZYr85w8189tlnevnll3XmzBl729WrV+Xl5aV58+bpscceS/d5s2fPVs+ePXXu3Dm5u7tLkrZu3aro6Gj973//044dOxQTE6OqVas6t3EA3FMY4w0AAAAA8J8wxqhXr15atGiRVq5c6RC6SdLFixclKc2Za+7u7kpJSUkzvzx58sjPz09fffWVvLy81KBBA4fp58+f19dff+3U2W4RERE6e/asNm/ebG9buXKlUlJSVKVKlZs+LyUlRVeuXHGor0KFCho4cKDWrVun0qVLa+7cubddPoD7W7bMLgAAAAAAkLVFRUVp7ty5+vbbb+Xv728fOy0wMFDe3t4qXry4ihUrpmeffVbvvfeecubMqW+++UYxMTFavHixfT6TJk1StWrV5Ofnp5iYGL366qsaNWqUgoKCHJb31Vdf6erVq3rqqafS1PLLL7+oc+fOWrFihfLnz68SJUqocePG6tGjh6ZOnaorV66oV69e6tChg/2OpnPmzFH27NlVpkwZeXp66tdff9XAgQPVvn17Zc+eXbGxsZo2bZpatmypfPnyac+ePdq7d686d+5s3UYFcE8geAMAAAAA/CtTpkyRJPsdSlNNnz5dXbt2Vfbs2fX9999rwIABatGihc6fP69ixYpp5syZatq0qb3/L7/8osGDB+v8+fMqXry4PvroI3Xq1CnN8j799FO1bt06TSAnXTu7bs+ePbpy5Yq9bc6cOerVq5fq1asnNzc3tWnTRhMnTrRPz5Ytm0aPHq0///xTxhiFh4erV69e6tu3ryTJx8dHf/zxh2bOnKlTp04pb968ioqK0rPPPvtvNhuA+wBjvDmBMd4AAAAAAACQijHeAAAAAAAAgEzEpaYAAABAeoYEZnYFAADcO4bEZ3YFmYIz3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYIFODt5EjR6py5cry9/dXSEiIWrVqpT179jj0qV27tmw2m8Pjueeec+hz6NAhNWvWTD4+PgoJCdGrr76qq1evOvRZtWqVKlasKE9PTxUrVkwzZsywevUAAAAAAABwH8vU4G316tWKiorShg0bFBMToytXrqhhw4a6cOGCQ78ePXro2LFj9seYMWPs05KTk9WsWTMlJSVp3bp1mjlzpmbMmKG33nrL3ic2NlbNmjVTnTp1tG3bNvXp00fPPPOMli1b9p+tKwAAAAAAAO4vNmOMyewiUp08eVIhISFavXq1atasKenaGW/ly5fX+PHj033O0qVL1bx5cx09elR58uSRJE2dOlWvvfaaTp48KQ8PD7322mtasmSJdu7caX9ehw4ddPbsWUVHR6eZZ2JiohITE+0/JyQkKCwsTPHx8QoICMjANQYAAMBda0hgZlcAAMC9Y0h8ZleQoRISEhQYGHjbrOiuGuMtPv7aixAcHOzQPmfOHOXKlUulS5fWwIEDdfHiRfu09evXq0yZMvbQTZIaNWqkhIQE7dq1y96nfv36DvNs1KiR1q9fn24dI0eOVGBgoP0RFhaWIesHAAAAAACA+0e2zC4gVUpKivr06aPq1aurdOnS9vaOHTsqPDxc+fLl0/bt2/Xaa69pz549WrhwoSQpLi7OIXSTZP85Li7uln0SEhJ06dIleXt7O0wbOHCg+vXrZ/859Yw3AAAAAAAAwFl3TfAWFRWlnTt36qeffnJo79mzp/3/ZcqUUd68eVWvXj3t379fRYsWtaQWT09PeXp6WjJvAAAAAAAA3B/uiktNe/XqpcWLF+vHH39UgQIFbtm3SpUqkqR9+/ZJkkJDQ3X8+HGHPqk/h4aG3rJPQEBAmrPdAAAAAAAAgIyQqcGbMUa9evXSokWLtHLlShUuXPi2z9m2bZskKW/evJKkiIgI7dixQydOnLD3iYmJUUBAgEqWLGnvs2LFCof5xMTEKCIiIoPWBAAAAAAAAHCUqcFbVFSUZs+erblz58rf319xcXGKi4vTpUuXJEn79+/X8OHDtXnzZh08eFDfffedOnfurJo1a6ps2bKSpIYNG6pkyZLq1KmTfvvtNy1btkyDBg1SVFSU/XLR5557TgcOHFD//v31xx9/aPLkyfr666/Vt2/fTFt3AAAAAAAA3NtsxhiTaQu32dJtnz59urp27arDhw/rqaee0s6dO3XhwgWFhYXpscce06BBgxxu1frXX3/p+eef16pVq+Tr66suXbpo1KhRypbt/4awW7Vqlfr27avdu3erQIECevPNN9W1a1en6nT2FrEAAAC4hwwJzOwKAAC4dwyJz+wKMpSzWVGmBm9ZBcEbAADAfYjgDQCAjHOfBm93xc0VAAAAAAAAgHsNwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAE4YOXKkKleuLH9/f4WEhKhVq1bas2ePffrp06f14osv6qGHHpK3t7cKFiyo3r17Kz4+Pt35nTp1SgUKFJDNZtPZs2ft7V27dpXNZkvzKFWq1E1r27Nnj+rUqaM8efLIy8tLRYoU0aBBg3TlyhWHfuPHj7fXFxYWpr59++ry5cv/bsMAAAAAAG4qW2YXAABZwerVqxUVFaXKlSvr6tWrev3119WwYUPt3r1bvr6+Onr0qI4ePar33ntPJUuW1F9//aXnnntOR48e1fz589PMr3v37ipbtqz+/vtvh/YJEyZo1KhR9p+vXr2qcuXKqW3btjetLXv27OrcubMqVqyooKAg/fbbb+rRo4dSUlL0zjvvSJLmzp2rAQMG6LPPPlO1atX0559/2kO+cePGZdBWAgAAAABcj+ANAJwQHR3t8POMGTMUEhKizZs3q2bNmipdurQWLFhgn160aFG9/fbbeuqpp3T16lVly/Z/h9spU6bo7Nmzeuutt7R06VKH+QYGBiowMND+8zfffKMzZ86oW7duN62tSJEiKlKkiP3n8PBwrVq1SmvXrrW3rVu3TtWrV1fHjh0lSYUKFdITTzyhjRs32vvMnz9fQ4cO1b59++Tj46MKFSro22+/la+vr7ObCQAAAABwHS41BYA7kHoJaXBw8C37BAQEOIRuu3fv1rBhwzRr1iy5ud3+EPzpp5+qfv36Cg8Pd7q2ffv2KTo6WrVq1bK3VatWTZs3b9Yvv/wiSTpw4IC+//57NW3aVJJ07NgxPfHEE3r66af1+++/a9WqVWrdurWMMU4vFwAAAADgiDPeAMBFKSkp6tOnj6pXr67SpUun2+eff/7R8OHD1bNnT3tbYmKinnjiCb377rsqWLCgDhw4cMvlHD16VEuXLtXcuXOdqqtatWrasmWLEhMT1bNnTw0bNsw+rWPHjvrnn39Uo0YNGWN09epVPffcc3r99dclXQverl69qtatW9tDvjJlyji1XAAAAABA+jjjDQBcFBUVpZ07d+rLL79Md3pCQoKaNWumkiVLasiQIfb2gQMHqkSJEnrqqaecWs7MmTMVFBSkVq1aOdX/q6++0pYtWzR37lwtWbJE7733nn3aqlWr9M4772jy5MnasmWLFi5cqCVLlmj48OGSpHLlyqlevXoqU6aM2rZtq48//lhnzpxxarkAAAAAgPTZDNcR3VZCQoICAwPtl40BuH/16tVL3377rdasWaPChQunmX7u3Dk1atRIPj4+Wrx4sby8vOzTypcvrx07dshms0mSjDFKSUmRu7u73njjDQ0dOtTe1xijBx98UM2bN9f777/vcp2zZ89Wz549de7cObm7uysyMlJVq1bVu+++m6bP+fPn5ebmJmOM1q1bp+XLl2vRokWKi4vTxo0b011PALgvDAm8fR8AAOCcIfGZXUGGcjYr4lJTAHCCMUYvvviiFi1apFWrVqUbRiUkJKhRo0by9PTUd9995xC6SdKCBQt06dIl+8+bNm3S008/rbVr16po0aIOfVevXq19+/ape/fud1RvSkqKrly5Yg/2Ll68mGZMOXd3d/u6SZLNZlP16tVVvXp1vfXWWwoPD9eiRYvUr1+/O6oBAAAAAO53BG8A4ISoqCjNnTtX3377rfz9/RUXFyfp2l1Ivb29lZCQoIYNG+rixYuaPXu2EhISlJCQIEnKnTu33N3d04Rr//zzjySpRIkSCgoKcpj26aefqkqVKumOITdp0iQtWrRIK1askCTNmTNH2bNnV5kyZeTp6alff/1VAwcOVPv27ZU9e3ZJUosWLTRu3DhVqFBBVapU0b59+/Tmm2+qRYsWcnd318aNG7VixQo1bNhQISEh2rhxo06ePKkSJUpk6HYEAAAAgPsJwRsAOGHKlCmSpNq1azu0T58+XV27dtWWLVu0ceNGSVKxYsUc+sTGxqpQoUJOLys+Pl4LFizQhAkT0p3+zz//aP/+/fafs2XLptGjR+vPP/+UMUbh4eHq1auX+vbta+8zaNAg2Ww2DRo0SH///bdy586tFi1a6O2335YkBQQEaM2aNRo/frwSEhIUHh6usWPHqkmTJk7XDQAAAABwxBhvTmCMNwAAgPsQY7wBAJBx7tMx3rirKQAAAAAAAGABLjW9jxUasCSzSwAA4J5xcFSzzC4BAAAAdxnOeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFCN4AAAAAAAAACxC8AQAAAAAAABYgeAMAAAAAAAAsQPAGAAAAAAAAWIDgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAIEbwAAAAAAAIAFMjV4GzlypCpXrix/f3+FhISoVatW2rNnj0Ofy5cvKyoqSjlz5pSfn5/atGmj48ePO/Q5dOiQmjVrJh8fH4WEhOjVV1/V1atXHfqsWrVKFStWlKenp4oVK6YZM2ZYvXoAAAAAAAC4j2Vq8LZ69WpFRUVpw4YNiomJ0ZUrV9SwYUNduHDB3qdv37763//+p3nz5mn16tU6evSoWrdubZ+enJysZs2aKSkpSevWrdPMmTM1Y8YMvfXWW/Y+sbGxatasmerUqaNt27apT58+euaZZ7Rs2bL/dH0BAAAAAABw/7AZY0xmF5Hq5MmTCgkJ0erVq1WzZk3Fx8crd+7cmjt3rh5//HFJ0h9//KESJUpo/fr1qlq1qpYuXarmzZvr6NGjypMnjyRp6tSpeu2113Ty5El5eHjotdde05IlS7Rz5077sjp06KCzZ88qOjo6TR2JiYlKTEy0/5yQkKCwsDDFx8crICDA4q3w3yk0YElmlwAAwD3j4KhmmV0CMtqQwMyuAACAe8eQ+MyuIEMlJCQoMDDwtlnRXTXGW3z8tRchODhYkrR582ZduXJF9evXt/cpXry4ChYsqPXr10uS1q9frzJlythDN0lq1KiREhIStGvXLnuf6+eR2id1HjcaOXKkAgMD7Y+wsLCMW0kAAAAAAADcF+6a4C0lJUV9+vRR9erVVbp0aUlSXFycPDw8FBQU5NA3T548iouLs/e5PnRLnZ467VZ9EhISdOnSpTS1DBw4UPHx8fbH4cOHM2QdAQAAAAAAcP/IdidPOnTokP766y9dvHhRuXPnVqlSpeTp6fmvComKitLOnTv1008//av5ZARPT89/vT4AAAAAAAC4vzkdvB08eFBTpkzRl19+qSNHjuj6oeE8PDwUGRmpnj17qk2bNnJzc+1Eul69emnx4sVas2aNChQoYG8PDQ1VUlKSzp4963DW2/HjxxUaGmrv88svvzjML/Wup9f3ufFOqMePH1dAQIC8vb1dqhUAAAAAAABwhlMJWe/evVWuXDnFxsZqxIgR2r17t+Lj45WUlKS4uDh9//33qlGjht566y2VLVtWmzZtcmrhxhj16tVLixYt0sqVK1W4cGGH6ZUqVVL27Nm1YsUKe9uePXt06NAhRURESJIiIiK0Y8cOnThxwt4nJiZGAQEBKlmypL3P9fNI7ZM6DwAAAAAAACCjOXXGm6+vrw4cOKCcOXOmmRYSEqK6deuqbt26Gjx4sKKjo3X48GFVrlz5tvONiorS3Llz9e2338rf398+JltgYKC8vb0VGBio7t27q1+/fgoODlZAQIBefPFFRUREqGrVqpKkhg0bqmTJkurUqZPGjBmjuLg4DRo0SFFRUfbLRZ977jlNmjRJ/fv319NPP62VK1fq66+/1pIl3NUTAAAAAAAA1rCZ668Z/a8XbrOl2z59+nR17dpVknT58mW9/PLL+uKLL5SYmKhGjRpp8uTJ9stIJemvv/7S888/r1WrVsnX11ddunTRqFGjlC3b/+WKq1atUt++fbV7924VKFBAb775pn0Zt+PsLWKzmkIDCB4BAMgoB0c1y+wSkNGGBGZ2BQAA3DuGxGd2BRnK2azI5eAtNjZWV69e1QMPPODQvnfvXmXPnl2FChW6o4LvZgRvAADgdgje7kEEbwAAZJz7NHhz7S4Ikrp27ap169alad+4caPTZ5ABAAAAAAAA9zqXg7etW7eqevXqadqrVq2qbdu2ZURNAAAAAAAAQJbncvBms9l07ty5NO3x8fFKTk7OkKIAAAAAAACArM7l4K1mzZoaOXKkQ8iWnJyskSNHqkaNGhlaHAAAAAAAAJBVZbt9F0ejR49WzZo19dBDDykyMlKStHbtWiUkJGjlypUZXiAAAAAAAACQFbl8xlvJkiW1fft2tWvXTidOnNC5c+fUuXNn/fHHHypdurQVNQIAAAAAAABZjstnvElSvnz59M4772R0LQAAAAAAAMA9w+Uz3qRrl5Y+9dRTqlatmv7++29J0ueff66ffvopQ4sDAAAAAAAAsiqXg7cFCxaoUaNG8vb21pYtW5SYmCjp2l1NOQsOAAAAAAAAuMbl4G3EiBGaOnWqPv74Y2XPnt3eXr16dW3ZsiVDiwMAAAAAAACyKpeDtz179qhmzZpp2gMDA3X27NmMqAkAAAAAAADI8lwO3kJDQ7Vv37407T/99JOKFCmSIUUBAAAAAAAAWZ3LwVuPHj300ksvaePGjbLZbDp69KjmzJmjV155Rc8//7wVNQIAAAAAAABZTjZXnzBgwAClpKSoXr16unjxomrWrClPT0+98sorevHFF62oEQAAAAAAAMhyXA7ebDab3njjDb366qvat2+fzp8/r5IlS8rPz8+K+gAAAAAAAIAsyeVLTVN5eHioZMmSKl68uH744Qf9/vvvGVkXAAAAAAAAkKW5HLy1a9dOkyZNkiRdunRJlStXVrt27VS2bFktWLAgwwsEAAAAAAAAsiKXg7c1a9YoMjJSkrRo0SKlpKTo7NmzmjhxokaMGJHhBQIAAAAAAABZkcvBW3x8vIKDgyVJ0dHRatOmjXx8fNSsWTPt3bs3wwsEAAAAAAAAsiKXg7ewsDCtX79eFy5cUHR0tBo2bChJOnPmjLy8vDK8QAAAAAAAACArcvmupn369NGTTz4pPz8/hYeHq3bt2pKuXYJapkyZjK4PAAAAAAAAyJJcDt5eeOEFValSRYcOHVKDBg3k5nbtpLkiRYowxhsAAAAAAADw/7kcvElSpUqVVKlSJYe2Zs2aZUhBAAAAAAAAwL3AqTHeRo0apUuXLjk1w40bN2rJkiX/qigAAAAAAAAgq3MqeNu9e7cKFiyoF154QUuXLtXJkyft065evart27dr8uTJqlatmtq3by9/f3/LCgYAAAAAAACyAqcuNZ01a5Z+++03TZo0SR07dlRCQoLc3d3l6empixcvSpIqVKigZ555Rl27duXupgAAAAAAALjvOT3GW7ly5fTxxx/ro48+0vbt2/XXX3/p0qVLypUrl8qXL69cuXJZWScAAAAAAACQpbh8cwU3NzeVL19e5cuXt6AcAAAAAAAA4N7g1BhvAAAAAAAAAFxD8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGCBfx28JSQk6JtvvtHvv/+eEfUAAAAAAAAA9wSXg7d27dpp0qRJkqRLly7p4YcfVrt27VS2bFktWLAgwwsEAAAAAAAAsiKXg7c1a9YoMjJSkrRo0SIZY3T27FlNnDhRI0aMyPACAQAAAAAAgKzI5eAtPj5ewcHBkqTo6Gi1adNGPj4+atasmfbu3ZvhBQIAAAAAAABZkcvBW1hYmNavX68LFy4oOjpaDRs2lCSdOXNGXl5eGV4gAAAAAAAAkBVlc/UJffr00ZNPPik/Pz+Fh4erdu3akq5dglqmTJmMrg8AAAAAAADIklwO3l544QU98sgjOnz4sBo0aCA3t2snzRUpUoQx3gAAAAAAAID/z+XgTZIefvhhPfzww5Kk5ORk7dixQ9WqVVOOHDkytDgAAAAAAAAgq3J5jLc+ffro008/lXQtdKtVq5YqVqyosLAwrVq1KqPrAwAAAAAAALIkl4O3+fPnq1y5cpKk//3vf4qNjdUff/yhvn376o033sjwAgEAAAAAAICsyOXg7Z9//lFoaKgk6fvvv1fbtm314IMP6umnn9aOHTsyvEAAAAAAAAAgK3I5eMuTJ492796t5ORkRUdHq0GDBpKkixcvyt3dPcMLBAAAAAAAALIil2+u0K1bN7Vr10558+aVzWZT/fr1JUkbN25U8eLFM7xAAAAAAAAAICtyOXgbMmSISpcurcOHD6tt27by9PSUJLm7u2vAgAEZXiAAAAAAAACQFbkcvEnS448/nqatS5cu/7oYAAAAAAAA4F7h8hhvkrR69Wq1aNFCxYoVU7FixdSyZUutXbs2o2sDAAAAAAAAsiyXg7fZs2erfv368vHxUe/evdW7d295e3urXr16mjt3rhU1AgAAAAAAAFmOy5eavv322xozZoz69u1rb+vdu7fGjRun4cOHq2PHjhlaIAAAAAAAAJAVuXzG24EDB9SiRYs07S1btlRsbGyGFAUAAAAAAABkdS4Hb2FhYVqxYkWa9h9++EFhYWEZUhQAAAAAAACQ1bl8qenLL7+s3r17a9u2bapWrZok6eeff9aMGTM0YcKEDC8QAAAAAAAAyIpcDt6ef/55hYaGauzYsfr6668lSSVKlNBXX32lRx99NMMLBAAAAAAAALIil4M3SXrsscf02GOPZXQtAAAAAAAAwD3D5THeAAAAAAAAANyeU2e85ciRQzabzakZnj59+l8VBAAAAAAAANwLnArexo8fb3EZAAAAAAAAwL3FqeCtS5cuVtcBAAAAAAAA3FMY4w0AAAAAAACwAMEbAAAAAAAAYAGCNwAAAAAAAMACBG8AAAAAAACABQjeAAAAAAAAAAs4dVfT1q1bOz3DhQsX3nExAAAAAAAAwL3CqeAtMDDQ6joAAAAAAACAe4pTwdv06dOtrgMAAAAAAAC4pzDGGwAAAAAAAGABp854u9H8+fP19ddf69ChQ0pKSnKYtmXLlgwpDAAAAAAAAMjKXD7jbeLEierWrZvy5MmjrVu36pFHHlHOnDl14MABNWnSxIoaAQAAAAAAgCzH5eBt8uTJmjZtmj744AN5eHiof//+iomJUe/evRUfH29FjQAAAAAAAECW43LwdujQIVWrVk2S5O3trXPnzkmSOnXqpC+++CJjqwMAAAAAAACyKJeDt9DQUJ0+fVqSVLBgQW3YsEGSFBsbK2NMxlYHAAAAAAAAZFEuB29169bVd999J0nq1q2b+vbtqwYNGqh9+/Z67LHHMrxAAAAAAAAAICty+a6m06ZNU0pKiiQpKipKOXPm1Lp169SyZUs9++yzGV4gAAAAAAAAkBW5HLy5ubnJze3/TpTr0KGDOnTokKFFAQAAAAAAAFmdy5eaFitWTEOGDNGff/5pRT0AAAAAAADAPcHl4C0qKkpLlixRiRIlVLlyZU2YMEFxcXFW1AYAAAAAAABkWS4Hb3379tWmTZv0+++/q2nTpvrwww8VFhamhg0batasWVbUCAAAAAAAAGQ5LgdvqR588EENHTpUf/75p9auXauTJ0+qW7duGVkbAAAAAAAAkGW5fHOF6/3yyy+aO3euvvrqKyUkJKht27YZVRcAAAAAAACQpbkcvP3555+aM2eOvvjiC8XGxqpu3boaPXq0WrduLT8/PytqBAAAAAAAALIcl4O34sWLq3LlyoqKilKHDh2UJ08eK+oCAAAAAAAAsjSXg7c9e/bogQcesKIWAAAAAAAA4J7h8s0VCN0AAAAAAACA27vju5oCAAAAAAAAuDmCNwAAAAAAAMACBG8AAAAAAACABVwO3oYNG6aLFy+mab906ZKGDRuWIUUBAAAAAAAAWZ3LwdvQoUN1/vz5NO0XL17U0KFDM6QoAAAAAAAAIKtzOXgzxshms6Vp/+233xQcHOzSvNasWaMWLVooX758stls+uabbxymd+3aVTabzeHRuHFjhz6nT5/Wk08+qYCAAAUFBal79+5pgsHt27crMjJSXl5eCgsL05gxY1yqEwAAAAAAAHBVNmc75siRwx5+Pfjggw7hW3Jyss6fP6/nnnvOpYVfuHBB5cqV09NPP63WrVun26dx48aaPn26/WdPT0+H6U8++aSOHTummJgYXblyRd26dVPPnj01d+5cSVJCQoIaNmyo+vXra+rUqdqxY4eefvppBQUFqWfPni7VCwAAAAAAADjL6eBt/PjxMsbo6aef1tChQxUYGGif5uHhoUKFCikiIsKlhTdp0kRNmjS5ZR9PT0+FhoamO+33339XdHS0Nm3apIcffliS9MEHH6hp06Z67733lC9fPs2ZM0dJSUn67LPP5OHhoVKlSmnbtm0aN24cwRsAAAAAAAAs43Tw1qVLF0lS4cKFVb16dWXL5vRT/5VVq1YpJCREOXLkUN26dTVixAjlzJlTkrR+/XoFBQXZQzdJql+/vtzc3LRx40Y99thjWr9+vWrWrCkPDw97n0aNGmn06NE6c+aMcuTIkWaZiYmJSkxMtP+ckJBg4RoCAAAAAADgXuTyGG/+/v76/fff7T9/++23atWqlV5//XUlJSVlaHGNGzfWrFmztGLFCo0ePVqrV69WkyZNlJycLEmKi4tTSEiIw3OyZcum4OBgxcXF2fvkyZPHoU/qz6l9bjRy5EgFBgbaH2FhYRm6XgAAAAAAALj3uRy8Pfvss/rzzz8lSQcOHFD79u3l4+OjefPmqX///hlaXIcOHdSyZUuVKVNGrVq10uLFi7Vp0yatWrUqQ5dzo4EDByo+Pt7+OHz4sKXLAwAAAAAAwL3H5eDtzz//VPny5SVJ8+bNU61atTR37lzNmDFDCxYsyOj6HBQpUkS5cuXSvn37JEmhoaE6ceKEQ5+rV6/q9OnT9nHhQkNDdfz4cYc+qT/fbOw4T09PBQQEODwAAAAAAAAAV7gcvBljlJKSIkn64Ycf1LRpU0lSWFiY/vnnn4yt7gZHjhzRqVOnlDdvXklSRESEzp49q82bN9v7rFy5UikpKapSpYq9z5o1a3TlyhV7n5iYGD300EPpju8GAAAAAAAAZASXg7eHH35YI0aM0Oeff67Vq1erWbNmkqTY2Ng0Y6ndzvnz57Vt2zZt27bNPo9t27bp0KFDOn/+vF599VVt2LBBBw8e1IoVK/Too4+qWLFiatSokSSpRIkSaty4sXr06KFffvlFP//8s3r16qUOHTooX758kqSOHTvKw8ND3bt3165du/TVV19pwoQJ6tevn6urDgAAAAAAADjN5eBt/Pjx2rJli3r16qU33nhDxYoVkyTNnz9f1apVc2lev/76qypUqKAKFSpIkvr166cKFSrorbfekru7u7Zv366WLVvqwQcfVPfu3VWpUiWtXbtWnp6e9nnMmTNHxYsXV7169dS0aVPVqFFD06ZNs08PDAzU8uXLFRsbq0qVKunll1/WW2+9pZ49e7q66gAAAAAAAIDTbMYYkxEzunz5stzd3ZU9e/aMmN1dJSEhQYGBgYqPj7+nxnsrNGBJZpcAAMA94+CoZpldAjLakMDMrgAAgHvHkPjMriBDOZsVuXzGmySdPXtWn3zyiQYOHKjTp09Lknbv3p3mRgcAAAAAAADA/Sqbq0/Yvn276tWrp6CgIB08eFA9evRQcHCwFi5cqEOHDmnWrFlW1AkAAAAAAABkKS6f8davXz9169ZNe/fulZeXl729adOmWrNmTYYWBwAAAAAAAGRVLgdvmzZt0rPPPpumPX/+/IqLi8uQogAAAAAAAICszuXgzdPTUwkJCWna//zzT+XOnTtDigIAAAAAAACyOpeDt5YtW2rYsGG6cuWKJMlms+nQoUN67bXX1KZNmwwvEAAAAAAAAMiKXA7exo4dq/PnzyskJESXLl1SrVq1VKxYMfn7++vtt9+2okYAAAAAAAAgy3H5rqaBgYGKiYnRTz/9pO3bt+v8+fOqWLGi6tevb0V9AAAAAAAAQJbkcvCWqkaNGqpRo0ZG1gIAAAAAAADcM1y+1FSSVqxYoebNm6to0aIqWrSomjdvrh9++CGjawMAAAAAAACyLJeDt8mTJ6tx48by9/fXSy+9pJdeekkBAQFq2rSpPvzwQytqBAAAAAAAALIcly81feedd/T++++rV69e9rbevXurevXqeueddxQVFZWhBQIAAAAAAABZkctnvJ09e1aNGzdO096wYUPFx8dnSFEAAAAAAABAVudy8NayZUstWrQoTfu3336r5s2bZ0hRAAAAAAAAQFbn1KWmEydOtP+/ZMmSevvtt7Vq1SpFRERIkjZs2KCff/5ZL7/8sjVVAgAAAAAAAFmMzRhjbtepcOHCzs3MZtOBAwf+dVF3m4SEBAUGBio+Pl4BAQGZXU6GKTRgSWaXAADAPePgqGaZXQIy2pDAzK4AAIB7x5B7a3gyZ7Mip854i42NzbDCAAAAAAAAgPuBy2O8AQAAAAAAALg9gjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFnDqrqbbt293eoZly5a942IAAAAAAACAe4VTwVv58uVls9lkjEl3euo0m82m5OTkDC0QAAAAAAAAyIqcCt5iY2OtrgMAAAAAAAC4pzgVvIWHh1tdBwAAAAAAAHBPcSp4++6779SkSRNlz55d33333S37tmzZMkMKAwAAAAAAALIyp4K3Vq1aKS4uTiEhIWrVqtVN+zHGGwAAAAAAAHCNU8FbSkpKuv8HAAAAAAAAkD43V58wa9YsJSYmpmlPSkrSrFmzMqQoAAAAAAAAIKtzOXjr1q2b4uPj07SfO3dO3bp1y5CiAAAAAAAAgKzO5eDNGCObzZam/ciRIwoMDMyQogAAAAAAAICszqkx3iSpQoUKstlsstlsqlevnrJl+7+nJicnKzY2Vo0bN7akSAAAAAAAACCrcTp4S72b6bZt29SoUSP5+fnZp3l4eKhQoUJq06ZNhhcIAAAAAAAAZEVOB2+DBw+WJBUqVEjt27eXl5eXZUUBAAAAAAAAWZ3TwVuqLl26SLp2F9MTJ04oJSXFYXrBggUzpjIAAAAAAAAgC3M5eNu7d6+efvpprVu3zqE99aYLycnJGVYcAAAAAAAAkFW5HLx17dpV2bJl0+LFi5U3b95073AKAAAAAAAA3O9cDt62bdumzZs3q3jx4lbUAwAAAAAAANwT3Fx9QsmSJfXPP/9YUQsAAAAAAABwz3A5eBs9erT69++vVatW6dSpU0pISHB4AAAAAAAAALiDS03r168vSapXr55DOzdXAAAAAAAAAP6Py8Hbjz/+aEUdAAAAAAAAwD3F5eCtVq1aVtQBAAAAAAAA3FNcDt7WrFlzy+k1a9a842IAAAAAAACAe4XLwVvt2rXTtNlsNvv/GeMNAAAAAAAAuIO7mp45c8bhceLECUVHR6ty5cpavny5FTUCAAAAAAAAWY7LZ7wFBgamaWvQoIE8PDzUr18/bd68OUMKAwAAAAAAALIyl894u5k8efJoz549GTU7AAAAAAAAIEtz+Yy37du3O/xsjNGxY8c0atQolS9fPqPqAgAAAAAAALI0l4O38uXLy2azyRjj0F61alV99tlnGVYYAAAAAAAAkJW5HLzFxsY6/Ozm5qbcuXPLy8srw4oCAAAAAAAAsjqXg7fw8HAr6gAAAAAAAADuKRl2cwUAAAAAAAAA/4fgDQAAAAAAALAAwRsAAAAAAABgAYI3AAAAAAAAwAJ3FLzt379fgwYN0hNPPKETJ05IkpYuXapdu3ZlaHEAAAAAAABAVuVy8LZ69WqVKVNGGzdu1MKFC3X+/HlJ0m+//abBgwdneIEAAAAAAABAVuRy8DZgwACNGDFCMTEx8vDwsLfXrVtXGzZsyNDiAAAAAAAAgKzK5eBtx44deuyxx9K0h4SE6J9//smQogAAAAAAAICszuXgLSgoSMeOHUvTvnXrVuXPnz9DigIAAAAAAACyOpeDtw4dOui1115TXFycbDabUlJS9PPPP+uVV15R586dragRAAAAAAAAyHJcDt7eeecdFS9eXGFhYTp//rxKliypmjVrqlq1aho0aJAVNQIAAAAAAABZTjZXn+Dh4aGPP/5Yb775pnbu3Knz58+rQoUKeuCBB6yoDwAAAAAAAMiSXA7eUhUsWFAFCxbMyFoAAAAAAACAe4bLwZsxRvPnz9ePP/6oEydOKCUlxWH6woULM6w4AAAAAAAAIKtyOXjr06ePPvroI9WpU0d58uSRzWazoi4AAAAAAAAgS3M5ePv888+1cOFCNW3a1Ip6AAAAAAAAgHuCy3c1DQwMVJEiRayoBQAAAAAAALhnuBy8DRkyREOHDtWlS5esqAcAAAAAAAC4J7h8qWm7du30xRdfKCQkRIUKFVL27Nkdpm/ZsiXDigMAAAAAAACyKpeDty5dumjz5s166qmnuLkCAAAAAAAAcBMuB29LlizRsmXLVKNGDSvqAQAAAAAAAO4JLo/xFhYWpoCAACtqAQAAAAAAAO4ZLgdvY8eOVf/+/XXw4EELygEAAAAAAADuDS5favrUU0/p4sWLKlq0qHx8fNLcXOH06dMZVhwAAAAAAACQVbkcvI0fP96CMgAAAAAAAIB7yx3d1RQAAAAAAADArTkVvCUkJNhvqJCQkHDLvtx4AQAAAAAAAHAyeMuRI4eOHTumkJAQBQUFyWazpeljjJHNZlNycnKGFwkAAAAAAABkNU4FbytXrlRwcLAk6ccff7S0IAAAAAAAAOBe4FTwVqtWLfv/CxcurLCwsDRnvRljdPjw4YytDgAAAAAAAMii3Fx9QuHChXXy5Mk07adPn1bhwoUzpCgAAAAAAAAgq3M5eEsdy+1G58+fl5eXV4YUBQAAAAAAAGR1Tl1qKkn9+vWTJNlsNr355pvy8fGxT0tOTtbGjRtVvnz5DC8QAAAAAAAAyIqcDt62bt0q6doZbzt27JCHh4d9moeHh8qVK6dXXnkl4ysEAAAAAAAAsiCng7fUu5l269ZNEyZMUEBAgGVFAQAAAAAAAFmd08FbqunTp1tRBwAAAAAAAHBPcfnmCgAAAAAAAABuL1ODtzVr1qhFixbKly+fbDabvvnmG4fpxhi99dZbyps3r7y9vVW/fn3t3bvXoc/p06f15JNPKiAgQEFBQerevbvOnz/v0Gf79u2KjIyUl5eXwsLCNGbMGKtXDQAAAAAAAPe5TA3eLly4oHLlyunDDz9Md/qYMWM0ceJETZ06VRs3bpSvr68aNWqky5cv2/s8+eST2rVrl2JiYrR48WKtWbNGPXv2tE9PSEhQw4YNFR4ers2bN+vdd9/VkCFDNG3aNMvXDwAAAAAAAPcvl8d4y0hNmjRRkyZN0p1mjNH48eM1aNAgPfroo5KkWbNmKU+ePPrmm2/UoUMH/f7774qOjtamTZv08MMPS5I++OADNW3aVO+9957y5cunOXPmKCkpSZ999pk8PDxUqlQpbdu2TePGjXMI6AAAAAAAAICMdNeO8RYbG6u4uDjVr1/f3hYYGKgqVapo/fr1kqT169crKCjIHrpJUv369eXm5qaNGzfa+9SsWVMeHh72Po0aNdKePXt05syZdJedmJiohIQEhwcAAAAAAADgirs2eIuLi5Mk5cmTx6E9T5489mlxcXEKCQlxmJ4tWzYFBwc79ElvHtcv40YjR45UYGCg/REWFvbvVwgAAAAAAAD3lbs2eMtMAwcOVHx8vP1x+PDhzC4JAAAAAAAAWcxdG7yFhoZKko4fP+7Qfvz4cfu00NBQnThxwmH61atXdfr0aYc+6c3j+mXcyNPTUwEBAQ4PAAAAAAAAwBV3bfBWuHBhhYaGasWKFfa2hIQEbdy4UREREZKkiIgInT17Vps3b7b3WblypVJSUlSlShV7nzVr1ujKlSv2PjExMXrooYeUI0eO/2htAAAAAAAAcL/J1ODt/Pnz2rZtm7Zt2ybp2g0Vtm3bpkOHDslms6lPnz4aMWKEvvvuO+3YsUOdO3dWvnz51KpVK0lSiRIl1LhxY/Xo0UO//PKLfv75Z/Xq1UsdOnRQvnz5JEkdO3aUh4eHunfvrl27dumrr77ShAkT1K9fv0xaawAAAAAAANwPsmXmwn/99VfVqVPH/nNqGNalSxfNmDFD/fv314ULF9SzZ0+dPXtWNWrUUHR0tLy8vOzPmTNnjnr16qV69erJzc1Nbdq00cSJE+3TAwMDtXz5ckVFRalSpUrKlSuX3nrrLfXs2fO/W1EAAAAAAADcd2zGGJPZRdztEhISFBgYqPj4+HtqvLdCA5ZkdgkAANwzDo5qltklIKMNCczsCgAAuHcMic/sCjKUs1nRXTvGGwAAAAAAAJCVEbwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxA8AYAAAAAAABYgOANAAAAAAAAsADBGwAAAAAAAGABgjcAAAAAAADAAgRvAAAAAAAAgAUI3gAAAAAAAAALELwBAAAAAAAAFiB4AwAAAAAAACxwVwdvQ4YMkc1mc3gUL17cPv3y5cuKiopSzpw55efnpzZt2uj48eMO8zh06JCaNWsmHx8fhYSE6NVXX9XVq1f/61UBAAAAAADAfSZbZhdwO6VKldIPP/xg/zlbtv8ruW/fvlqyZInmzZunwMBA9erVS61bt9bPP/8sSUpOTlazZs0UGhqqdevW6dixY+rcubOyZ8+ud9555z9fFwAAAAAAANw/7vrgLVu2bAoNDU3THh8fr08//VRz585V3bp1JUnTp09XiRIltGHDBlWtWlXLly/X7t279cMPPyhPnjwqX768hg8frtdee01DhgyRh4dHustMTExUYmKi/eeEhARrVg4AAAAAAAD3rLv6UlNJ2rt3r/Lly6ciRYroySef1KFDhyRJmzdv1pUrV1S/fn173+LFi6tgwYJav369JGn9+vUqU6aM8uTJY+/TqFEjJSQkaNeuXTdd5siRIxUYGGh/hIWFWbR2AAAAAAAAuFfd1cFblSpVNGPGDEVHR2vKlCmKjY1VZGSkzp07p7i4OHl4eCgoKMjhOXny5FFcXJwkKS4uziF0S52eOu1mBg4cqPj4ePvj8OHDGbtiAAAAAAAAuOfd1ZeaNmnSxP7/smXLqkqVKgoPD9fXX38tb29vy5br6ekpT09Py+YPAAAAAACAe99dfcbbjYKCgvTggw9q3759Cg0NVVJSks6ePevQ5/jx4/Yx4UJDQ9Pc5TT15/TGjQMAAAAAAAAySpYK3s6fP6/9+/crb968qlSpkrJnz64VK1bYp+/Zs0eHDh1SRESEJCkiIkI7duzQiRMn7H1iYmIUEBCgkiVL/uf1AwAAAAAA4P5xV19q+sorr6hFixYKDw/X0aNHNXjwYLm7u+uJJ55QYGCgunfvrn79+ik4OFgBAQF68cUXFRERoapVq0qSGjZsqJIlS6pTp04aM2aM4uLiNGjQIEVFRXEpKQAAAAAAACx1VwdvR44c0RNPPKFTp04pd+7cqlGjhjZs2KDcuXNLkt5//325ubmpTZs2SkxMVKNGjTR58mT7893d3bV48WI9//zzioiIkK+vr7p06aJhw4Zl1ioBAAAAAADgPmEzxpjMLuJul5CQoMDAQMXHx/+/9u48Tut5///445qZtpnRdtqTU6mIio4oh6gOUaQ9NUqLohQmJApZvh0SSaTioCRaxUmLdlpG2kkNU7bQvjcd08xc1++Pbtd1jDi/c3A1TT3ut5ubmc/1+Xze709/1Ot6ft4LhQsXzu3u/GEq3j8zt7sgSdIp4+snr8vtLuiP9kiR3O6BJEmnjkcO5HYP/lD/bVaUp9Z4kyRJkiRJkvIKgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKDN4kSZIkSZKkKDB4kyRJkiRJkqLA4E2SJEmSJEmKAoM3SZIkSZIkKQoM3iRJkiRJkqQoMHiTJEmSJEmSosDgTZIkSZIkSYoCgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKDN4kSZIkSZKkKDB4kyRJkiRJkqLA4E2SJEmSJEmKAoM3SZIkSZIkKQoM3iRJkiRJkqQoMHiTJEmSJEmSosDgTZIkSZIkSYoCgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKDN4kSZIkSZKkKDB4kyRJkiRJkqLA4E2SJEmSJEmKAoM3SZIkSZIkKQoM3iRJkiRJkqQoMHiTJEmSJEmSosDgTZIkSZIkSYoCgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKDN4kSZIkSZKkKDB4kyRJkiRJkqLA4E2SJEmSJEmKAoM3SZIkSZIkKQoM3iRJkiRJkqQoMHiTJEmSJEmSosDgTZIkSZIkSYoCgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKDN4kSZIkSZKkKDB4kyRJkiRJkqLA4E2SJEmSJEmKAoM3SZIkSZIkKQoM3iRJkiRJkqQoMHiTJEmSJEmSosDgTZIkSZIkSYoCgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKDN4kSZIkSZKkKDB4kyRJkiRJkqLA4E2SJEmSJEmKAoM3SZIkSZIkKQoM3iRJkiRJkqQoMHiTJEmSJEmSosDgTZIkSZIkSYoCgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKDN4kSZIkSZKkKDB4kyRJkiRJkqLA4E2SJEmSJEmKAoM3SZIkSZIkKQoM3iRJkiRJkqQoMHiTJEmSJEmSosDgTZIkSZIkSYoCgzdJkiRJkiQpCgzeJEmSJEmSpCgweJMkSZIkSZKiwOBNkiRJkiRJigKDN0mSJEmSJCkKTqvgbeTIkVSsWJGCBQtSt25dPv7449zukiRJkiRJkk5Rp03wNmnSJO6++24GDRrEmjVruOCCC7jmmmvYuXNnbndNkiRJkiRJp6C43O7AiTJs2DB69OhB165dARg9ejQzZ87k1Vdf5f77789xbkZGBhkZGZHfDxw4AMDBgwdPXIdPgGDGkdzugiRJp4xTrU4QkBHK7R5IknTqOMVqpXDtFwr953ohEPr/nXEKOHr0KPHx8UydOpUWLVpEjnfu3Jn9+/fz7rvv5jj/kUce4dFHHz3BvZQkSZIkSVJesnXrVs4888xf/fy0GPG2e/dusrOzKV26dI7jpUuXJjU19bjzH3jgAe6+++7I78FgkL179/KnP/2JQCAQ9f5KUtjBgwepUKECW7dupXDhwrndHUmSpJOKtZKk3BIKhTh06BDlypX7j+edFsHb/6pAgQIUKFAgx7GiRYvmTmckCShcuLDFpCRJ0q+wVpKUG4oUKfL/Pee02FyhRIkSxMbGsmPHjhzHd+zYQZkyZXKpV5IkSZIkSTqVnRbBW/78+bnoootYsGBB5FgwGGTBggVceumludgzSZIkSZIknapOm6mmd999N507d6ZOnTpccsklDB8+nPT09Mgup5J0MipQoACDBg06bvq7JEmSrJUknfxOi11Nw1544QWGDh3K9u3bufDCCxkxYgR169bN7W5JkiRJkiTpFHRaBW+SJEmSJEnSiXJarPEmSZIkSZIknWgGb5IkSZIkSVIUGLxJkiRJkiRJUWDwJkmSJEk6af34448Eg8Hc7oYk/SYGb5IkSZKkk9Lbb79N9erV2bx5c253RZJ+E4M3ScpF2dnZud0FSZKkk1bjxo355ptvWLBggXWTpDzJ4E2SckF4ukRsbCwAe/fuzc3uSJIknXSysrJITEyke/fujBo1im3btuV2lyTpf2bwJklR9vbbb7N48eIcx2Jijv31O2nSJOrXr0///v3ZunVrLvROkiTp5PHTUW3heumRRx5hw4YNLFq0iFAolFtdk6TfxOBNkqJo06ZNTJky5bipEfv376dTp07cc889XH311bRo0YKjR4/mUi8lSZJyV7hWCs8GCAaDkeCtXLlyNG/enDFjxrBr165c66Mk/RaBkK8MJOkPEQqFCAQCv/r7T82ePZvevXszefJk6tSpc6K6KEmSdFIbOnQo06ZNo0aNGlx22WV07doVgA0bNlCrVi2mT59O8+bNc7mXkvTfc8SbJP1BwiFbampqjt9DoRCvvPIK999/f+Tcd999l0qVKlGjRo3IsWAw6PQJSZJ0yvulemf58uVceOGFTJw4kZYtW3LGGWfQs2dPJk2axI8//kiNGjWoX78+o0ePdm1cSXmKwZsk/YEGDBjAlVdeCcBXX33FkCFDCAQCrFy5koULF7JmzRrgWMF54MABChYsSFZWFnBsHZNfGyEnSZKU1wWDQYLB4HH1TjAYZPfu3bRr145Vq1bRv39/nn32WSpWrMgrr7zChg0bAHj88ceZO3dupJ6SpLzA4E2Sfqefrt82YMAADh48SO3atTn77LP57LPPAGjfvj3x8fFMnToVgFatWrF+/XpWrVpFXFxc5PrNmzezbNky4JffBkuSJOU14d3cY2JiiImJYePGjYwePZqvvvqKzMxMYmJiqFGjBsnJyezdu5fbbruN4sWLk5iYyJo1a0hJSSEzM5MrrriCCy+8kFdffZUDBw7k8lNJ0n/H4E2SfqOfLwIM8OKLL5KRkcHOnTvZtGkTr7/+OgBXXnkl559/PikpKWzZsoVrrrmGBg0acPvttzN37lyOHDlCWloaTz75JPPmzSM7O9vRb5Ik6ZQQ3iQhIyODAQMGcNFFF/HMM8/QtGlTRowYAUDlypUpVKgQffr0YevWrUyZMoXVq1dTu3ZtJk+ezBdffAFAv379mDhxorvBS8ozDN4k6b8wevToyNptYeHAbcqUKdx2222sWLGCO++8k4ULF7J9+/ZIQRgO0Zo0aUJGRgaTJk0C4NVXX6VkyZJ06NCBq6++mlq1arFjxw46d+6cI8yTJEnKS8Ij3MLS09Pp2rUrLVq0IDMzk82bN7No0SJuuOEG/u///o99+/YBMHfuXD7++GN69uzJ3/72N3788UeysrL4/PPPmT9/PqFQiPbt2/PJJ5/kWCdXkk5mBm+S9P8RCoWYPHky27Zty3F8/vz5VK9enb59+1K4cGF2795NMBikQYMGXHvttTz11FNkZWVFQrSrrrqKc889lyVLlvDdd99RoUIF3nrrLWbOnMktt9zCZ599xowZM6hUqVJuPKYkSdLvEp4NEB7hFhYKhahQoQILFiwgX758lC9fnjPPPJNevXpRqlQpHnroIeDYS809e/ZElttYtGgRNWrUoFq1asTFxZGdnU0wGKRGjRouySEpzwiE/BtLkn5VMBg8rngMa9u2LSVKlGDUqFHHffbhhx/SsGFDli1bRr169SL3mTx5MoMHD6ZDhw45djn9aXuhUMgRb5IkKc969tln+frrr2nQoAHXXXcd+fPnZ/Xq1dxwww10796dRx99lFAoRFZWFiNGjGDgwIEcOnSIfPny0bBhQ7799lsCgQDff/89b775ZuQekpQXOeJNkn5FKBSKhG6hUIjhw4dH3shu3LiRtLQ0zjvvPAA+/vhjPv/8czZt2sSRI0e44ooruOSSS3j66ac5evQoMTExbNiwgebNm1OvXj3OPffcX23P0E2SJJ3sfj6dFGDhwoVUrFiRsWPH8s0339CtWzfatm3LDz/8QO3atWnfvj2vvPIKAIFAgHz58tGsWTNKly7N4MGDAXjjjTcYOXIkycnJ7N69m5YtW5I/f/7Iy0lJymsc8SZJPxMKhSIbG3z33XcMHjyYZs2a8cUXXzBgwAC+/fZbihUrRpcuXVi+fDlZWVmcf/75bNq0iczMTNq0acPw4cNZuHAhV111FTfccAMrVqzgrLPOYsGCBSQmJubyE0qSJP02/2k2wK233sqOHTt49913CYVCbNy4kcaNG9OjRw8efPBBVq9eTYsWLXj00Ue59dZbATh69CgDBw7kmWee+cUwLzs725eSkvI0gzdJ4t9FZPj/X331Fd999x1PPPEEiYmJDBw4kIoVK1KtWjWSk5N54IEH2LdvH3PnzqVIkSLExsZSvHhxUlJS6N+/P1999RWlSpVi+vTpLF++nAsvvJCbbrrpuPYkSZLygmAwSCAQiLyc3Lt3Ly+//DJnn302bdq0YefOnVx88cUMGjSIbt26RQKz+++/n+XLl/Piiy9SpUoVkpOTWbZsGZ9++mnk3mlpaWzcuJHmzZtHXoCGv6a6y7ukvM7gTZJ+Jisri7POOouEhAQaN27MiBEjIm9aH3roIcaNG8e6desoXrz4cdc+/PDDfPrpp4wdO5YiRYoc97lvbSVJUl62aNEipk6dSqlSpXjhhRdo164dTz31FAkJCVSsWJHbbruNBx54gCNHjhAfH09aWhoXX3wx7777LldeeSVz587l2muv5Y033iApKSm3H0eSos7hFpJOSz9/57Bu3Tr69u3Lhg0biIuL45577mHLli2UK1eO2NjYyNSH3r17s3fvXqZNmwbAvn37mDFjBrNmzeLGG2/k5Zdf5rrrrjsudAtfb+gmSZLyqiFDhtCiRQsKFixIRkYGxYoVY/bs2axatQqAli1b8vLLLwMQHx8PQNGiRcnMzGT//v0AXHDBBQwbNoyLLrooV55Bkk40gzdJp6WfT1v4/PPPmTNnDnPnzgXglltu4c9//jM7d+7k8OHDkWmoZcqUoUuXLowYMYKjR48C8M4779C/f3/y5cvH0qVL6d69+3HtOa1UkiSd7MI7jf5cMBjkX//6FzNnzqRbt24888wz/P3vf+e9994jGAwya9YsgsEgXbt2Zc+ePQwaNIitW7cCMHbsWGrUqMGll14KQOnSpUlOTuacc845oc8mSbnFb4KSTnk/H90WCoV48803mT59euRY69atqV27NkuWLOGbb76haNGiNG/enI8++ojU1FTg32Hd3XffzWeffcaECRMoVqwYDz74ICkpKbzxxhucffbZ7rolSZJOehkZGcC/66TwGm5xcXGEQiE++eSTyCi1mJgYfvjhB9LS0rj66qsj11WrVo1mzZqxePFiVq1aRa1atRg+fDivvfYa1157LRdffDGPPfYYN998M6VKlcrR/i9tpCBJpyKDN0mnrGAwGCkifyo9PZ0nnniCt99+O1JQxsXF0bRpU3744QdmzZoFQHJyMj/88AMffPABmZmZkYV+K1euTM+ePSlYsCAAlSpVIjExMdJeTEyMCwFLkqST1vr164mPj+fLL7+M1CwxMTGkp6fTv39/SpYsSefOnalbty6LFy8mOzubs88+m0AgwPr16wHIzMwEoGvXrqxZs4Y5c+ZEfp8/fz7Jycl07NiRHTt20Lt37+P64GwASacL/7aTdMqKiYkhJiaGr7/+mtGjR0fe3CYmJtKlSxc2b97MBx98EDm/WbNmlC5dmsWLF7N7924qVqxI48aNmTlzJhs3bsxx7xdffJEOHTr8YnuSJEknmy+//JKPP/4YgKpVq7JmzRoqV64cGfG2Z88eOnfuzMqVK3n99deZNWsWV155JYMHD2bevHkAdO7cmVGjRpGenk7+/PkB2L17N/Hx8aSkpLBmzRoAqlWrRo8ePbjrrruIj48nOzvb2QCSTlt+Q5R0ytq1axc33XQTNWvWZNy4cbRp04Z27dqRmZlJ586dCQQCzJ8/n/T0dACKFCnCJZdcwtKlS1m0aBEAvXr1IiUlhS1btgA514ZzioQkScor+vfvT4cOHcjIyCA+Pp4LLriATZs2sW/fPgASEhL429/+xquvvkrTpk3Jnz8/e/fuZfny5UyePBmAfv36cfjwYe644w4+/PBD9u/fz8yZM2nfvj3bt28/7kVlKBQiFAoRGxvrbABJpy2DN0l50u7du4FfXgQ4/EZ1xowZbN26lTVr1pCSksKnn37K4sWL6devHyVKlKBp06asXbuWZcuWRa7NysoiPT2dCRMmcPDgQerUqcOaNWto1arVcX1wdJskSTrZheuihx56iO+//57FixcDcPDgQZo0acIdd9wBHFt2o1u3bpQqVYrbb7+datWqEQgESEpKYvXq1cyfP5/ixYvz2muvsXnzZpKSkihfvjwbN25kxIgR7Nmzhx07duRoMxAIGLhJOu35rVFSntO8eXP69evHrl27IosAA5FdRsMF3rBhw0hOTqZq1apMmzaNG264gdjYWCpXrgzATTfdRKFChRg6dCibNm1i9erVfP/997Rt25a6desCx0a1Va9ePReeUpIk6ffJzs6O1EW1atXi2muvZejQoWRnZ1O4cGH69+/PjBkz2L9/P3FxcRQoUIBx48axZs0apk+fzpQpU+jVqxdffvklM2bMAI7VYXPnzmXs2LEsX76cefPmsW/fPjIzM4mPjweO3z1ekk5nBm+S8ozs7GwA6taty8qVKyO7jT733HNcdtll3HHHHaxbty5ybunSpZk0aRJ16tShT58+1KlThy1btnDnnXcCxzZFuOuuu9i3bx/XXXcd9erVo1KlSjz33HM88MADFC5c2FFtkiQpz4qNjQVg9OjR9OvXjwsuuIAPP/yQlStXAsdCtOLFi/P0008Dx0bBLViwgDJlynDFFVcAsHLlShITE5k1axZLliwBoGDBglx22WWUK1eOVatW0aVLF6pUqUL79u1z4Skl6eTmN0pJeUY4BOvbty8ZGRksWbKEwYMHM3nyZBo1asTKlStJSkpizZo1BINBzj77bObMmUOrVq3YsmULgwcPply5cmzZsiWyVsn111/P3LlzGTlyJDt37mTAgAHEx8cTCoVcw02SJOVpR44coUmTJjzxxBOULFmSzz77jKysLEaOHAlA2bJlue222xg5ciRZWVkULlyYM844gz179jB9+nRmz57N3LlzSU5O5tFHH+Uvf/lL5N5ffPEFPXv25G9/+xslS5Zk4sSJFCtWLLceVZJOWgZvkvKMQCBAdnY2hQoVom3btvzjH/9g/vz5jBkzhscff5ylS5cSCAR4/fXXCQQCXHbZZZQvX57SpUtHpj6kp6fz2muvMXXqVA4ePAhA8eLFadKkCcWKFYvsuhUIBBztJkmS8rSUlBQ2btzIhAkTuO+++xg3bhzPP/88kydP5tNPPyUQCHDjjTcSFxfH8OHDAejWrRvlypWjT58+dOzYkYsvvph+/fqRlJREQkJCZP22c845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v34sXLiQxYsXc8YZZ/xX7UmSJOU1WVlZnHXWWSQkJNC4cWNGjBgRqW8eeughxo0bx7p16yhevPhx1z788MN8+umnjB07liJFihz3ubWSJOVtjniTlEO4sFu7di1Vq1bl8ssvp2nTpvTv35969epRtmxZevXqRevWrVm8eDGrV68mISGBFi1asHDhQu644w5SUlJISUlh4cKFNGrU6BdDt+zs7BztSZIkncx+Pl5h3bp19O3blw0bNhAXF8c999zDli1bKFeuHLGxsZERar1792bv3r1MmzYNgH379jFjxgxmzZrFjTfeyMsvv8x11113XOgWvt5aSZLyNoM36TT2SwNe586dS7t27Vi6dCk9e/Zk1apVVKpUieXLl1OjRo3IeQ0bNqRs2bK89NJLACQlJVGtWjXmzZvH008/zc0330z16tUZMGDAL7ZtESlJkvKS8BpuYZ9//jlz5sxh7ty5ANxyyy38+c9/ZufOnRw+fJiYmBiCwSBlypShS5cujBgxgqNHjwLwzjvv0L9/f/Lly8fSpUvp3r37ce392s6okqS8xamm0mkoGAwSCoV+MfyaOXMmzZo145xzzmHu3LlUqFCBL7/8ko4dO1KhQgUmTZoEQGZmJk888QRTp07l7bffpkqVKjz22GMsXbqUm2++mY4dO0bu+dMFhyVJkk52P69dQqEQb731FoUKFaJly5bAsemlN998M//6178YPnw4f/7zn0lOTiYlJYWRI0dSp06dyH2+/PJLqlSpwiuvvELXrl356quvKFmyZI712wKBgPWSJJ2CfI0inYZiYmKIjY1l165dTJ06le+++46MjAwA6tatS/PmzSlWrBgVKlQAoEKFCnTu3Jk5c+bw7bffApAvXz4aNWoEwNChQwHo1KkTBw8eZN26dZHRdFlZWRaRkiQpTwgGg5EQ7KfS09N54oknePvtt9m/fz8AcXFxNG3alB9++IFZs2YBkJyczA8//MAHH3xAZmYmgUCAUChE5cqV6dmzJwULFgSgUqVKJCYmRtqLiYmxXpKkU5TBm3Qa+u6777jpppuoWrUqDz/8MI0bN+a+++4DoHjx4nTq1ImPPvqItLQ04FjIduWVV1K1atVIyAZQu3ZtunbtSosWLYBjRWSDBg1YuHAh8+bNA44VpZIkSXlBTEwMMTExfP3114wePZpPPvmE/fv3k5iYSJcuXdi8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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo_heuristic\", \"shampoo_heuristic_diagonal\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison between convergence times of shampoo (heuristic) diagonal and non-diagonal on CIFAR10\"\n", + "save_path = f\"diagrams/convergence_times_shampoo_heuristic_{dataset}.png\"\n", + "\n", + "create_diagram_convergence(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "c9681411", + "metadata": {}, + "source": [ + "## Experiment 7: Time for 30 epochs on MNSIT" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "d57b9452", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2149615011.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABdEAAAMWCAYAAAAeaM88AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAAC5QUlEQVR4nOzde/zX8/0//tu70kH1frdQaR2kUKGDGIlKSDGnEJtNmcNYsZy2ZXMcy2IzM2P28akdNOZMI8dy+IjRmJyaiJwSUqkoer9+f/j1+u69elHv3rxbrtfL5XW59Hw8Hs/n4/589nq3ufXo8SwrFAqFAAAAAAAAK6lT2wUAAAAAAMC6SogOAAAAAAAlCNEBAAAAAKAEIToAAAAAAJQgRAcAAAAAgBKE6AAAAAAAUIIQHQAAAAAAShCiAwAAAABACUJ0AAAAAAAoQYgOAEAVZWVlOfvss2u7jFXabLPN8vWvf722y2ANjR8/PmVlZXn55Zdru5TV8vLLL6esrCzjx4+v7VIAAFgHCNEBAP7Diy++mO9+97vZfPPN07Bhw5SXl6dPnz655JJL8sEHH9R2edSgJUuW5Oyzz86UKVNqu5TPzYQJE/KrX/2q2uevz89obZ/Nl9GKv2AoKyvLeeedt8oxhx9+eMrKytKkSZMq7f37909ZWVn23Xffkte96KKLim1TpkxJWVlZrr/++ipjp0+fnoMPPjjt27dPw4YN89WvfjV77rlnLr300iTJ2WefXazx0z79+/dfy6cBAHxZ1KvtAgAA1iV/+9vfcsghh6RBgwY54ogjss0222TZsmV56KGHctppp+WZZ57JlVdeWdtlfq4++OCD1Kv35fi/iUuWLMk555yTJOttoDZhwoQ8/fTTGTVqVLXOX5+fUaln0759+3zwwQfZYIMNaqew/wINGzbMX/7yl/zkJz+p0r548eLccsstadiwYclzJ06cmGnTpqVXr15rPO/DDz+c3XbbLe3atcsxxxyTVq1a5dVXX80jjzySSy65JCeccEKGDBmSTp06Fc9ZtGhRjj/++Bx44IEZMmRIsb1ly5ZrPD8A8OX05fivIwCA1TBr1qwcdthhad++fe67775suummxb4RI0Zk5syZ+dvf/laLFX5+Kisrs2zZsjRs2PBTwy/4oi1evDiNGzf+QucsKyvzc/AZ9t5779x444355z//me7duxfbb7nllixbtiyDBg3Kfffdt9J57dq1y/vvv59zzjknt9566xrPe/7556eioiKPPfZYmjVrVqVv7ty5SZJu3bqlW7duxfZ33nknxx9/fLp165ZvfetbazwnAIDtXAAA/n9jx47NokWLctVVV1UJ0Ffo1KlTvv/97xePP/744/z0pz9Nx44d06BBg2y22WY5/fTTs3Tp0irnrdjHe8qUKdl+++3TqFGjbLvttsXtMW688cZsu+22adiwYXr16pUnnniiyvnDhw9PkyZN8tJLL2WvvfZK48aN07p165x77rkpFApVxl500UXZeeeds9FGG6VRo0bp1avXSlshJJ+EhCNHjszVV1+drbfeOg0aNMikSZOKff++J/r777+fUaNGZbPNNkuDBg3SokWL7LnnnvnHP/5R5ZrXXXddevXqlUaNGmXjjTfOt771rbz++uurvJfXX389BxxwQJo0aZJNNtkkp556apYvX17id2Zld911V3r06JGGDRuma9euufHGG1caM3/+/IwaNSpt27ZNgwYN0qlTp/z85z9PZWVlkk+2j9hkk02SJOecc05xi4ezzz47t956a8rKyvLUU08Vr3fDDTekrKysykrWJOnSpUsOPfTQKm1//vOfi8+iefPmOeyww/Lqq6+uVOOjjz6aQYMGpaKiIhtuuGH69euX//u//6syZsXWFDNnzszw4cPTrFmzVFRU5Mgjj8ySJUs+9Tn1798/f/vb3/LKK68U72+zzTYr9s+dOzdHHXVUWrZsmYYNG6Z79+75wx/+UOz/tGeUJE899VSGDx9e3PqoVatW+c53vpN33333U+sqZcX348UXX8zee++dpk2b5vDDD0/yyc/R8OHDV3mP/75CfsUWIH/9619z/vnnp02bNmnYsGF23333zJw5c7Wezar2RF9R2+zZs/P1r389TZo0yVe/+tVcdtllST7ZYmTAgAFp3Lhx2rdvnwkTJqxU62d9J1e45ppr0qtXrzRt2jTl5eXZdtttc8kll3zm81u8eHFOOeWU4vW32mqrXHTRRSv9ObHi5//mm2/ONttskwYNGmTrrbcu/hmwOnr37p0OHTqsdJ9XX311Bg0alObNm6/yvKZNm+akk07KbbfdttKfIavjxRdfzNZbb71SgJ4kLVq0WOPrAQCsDiE6AMD/77bbbsvmm2+enXfeebXGH3300TnzzDOz3Xbb5eKLL06/fv0yZsyYHHbYYSuNnTlzZr75zW9m3333zZgxY/Lee+9l3333zdVXX52TTjop3/rWt3LOOefkxRdfzNChQ1cK1ZYvX55BgwalZcuWGTt2bHr16pWzzjorZ511VpVxl1xySXr27Jlzzz03P/vZz1KvXr0ccsghq1xBf9999+Wkk07KoYcemksuuaRKuPrvjjvuuFx++eU56KCD8tvf/jannnpqGjVqlOeee644Zvz48Rk6dGjq1q2bMWPG5JhjjsmNN96YXXbZJfPnz1/pXvbaa69stNFGueiii9KvX7/84he/WO1tcl544YUceuihGTx4cMaMGVO8x7vvvrs4ZsmSJenXr1/+/Oc/54gjjsivf/3r9OnTJ6NHj87JJ5+cJNlkk01y+eWXJ0kOPPDA/OlPf8qf/vSnDBkyJLvsskvKysrywAMPFK/54IMPpk6dOnnooYeKbW+//Xaef/759O3bt9h2/vnn54gjjsgWW2yRX/7ylxk1alTuvffe9O3bt8qzuO+++9K3b98sXLgwZ511Vn72s59l/vz5GTBgQP7+97+vdN9Dhw7N+++/nzFjxmTo0KEZP358cZuVUn784x+nR48e2XjjjYv3t2IP8A8++CD9+/fPn/70pxx++OG58MILU1FRkeHDhxcD2097Rkly991356WXXsqRRx6ZSy+9NIcddliuueaa7L333isFt6vr448/zl577ZUWLVrkoosuykEHHVSt61xwwQW56aabcuqpp2b06NF55JFHioH8Zz2bUpYvX57Bgwenbdu2GTt2bDbbbLOMHDky48ePz6BBg7L99tvn5z//eZo2bZojjjgis2bNKp67Ot/J5JNn+o1vfCNf+cpX8vOf/zwXXHBB+vfvv9JfrvynQqGQ/fbbLxdffHEGDRqUX/7yl9lqq61y2mmnVbn+Cg899FC+973v5bDDDsvYsWPz4Ycf5qCDDlqjvwD5xje+kWuuuab4e/3OO+/krrvuyje/+c1PPe/73/9+vvKVr1TrBcbt27fPtGnT8vTTT6/xuQAA1VYAAKCwYMGCQpLC/vvvv1rjn3zyyUKSwtFHH12l/dRTTy0kKdx3333Ftvbt2xeSFB5++OFi25133llIUmjUqFHhlVdeKbb/7ne/KyQpTJ48udg2bNiwQpLCCSecUGyrrKws7LPPPoX69esX3n777WL7kiVLqtSzbNmywjbbbFMYMGBAlfYkhTp16hSeeeaZle4tSeGss84qHldUVBRGjBhR8lksW7as0KJFi8I222xT+OCDD4rtEydOLCQpnHnmmSvdy7nnnlvlGj179iz06tWr5BwrrHiWN9xwQ7FtwYIFhU033bTQs2fPYttPf/rTQuPGjQv/+te/qpz/ox/9qFC3bt3C7NmzC4VCofD222+vdL8rbL311oWhQ4cWj7fbbrvCIYccUkhSeO655wqFQqFw4403FpIU/vnPfxYKhULh5ZdfLtStW7dw/vnnV7nW9OnTC/Xq1Su2V1ZWFrbYYovCXnvtVaisrCyOW7JkSaFDhw6FPffcs9h21llnFZIUvvOd71S55oEHHljYaKONPvOZ7bPPPoX27duv1P6rX/2qkKTw5z//udi2bNmyQu/evQtNmjQpLFy48DOf0X9+3wqFQuEvf/lLIUnhgQceKLaNGzeukKQwa9asT611xffjRz/60Up97du3LwwbNmyl9n79+hX69etXPJ48eXIhSaFLly6FpUuXFtsvueSSQpLC9OnTi22lns2sWbMKSQrjxo1bqbaf/exnxbb33nuv0KhRo0JZWVnhmmuuKbY///zzKz2z1f1Ofv/73y+Ul5cXPv7445Xq+jQ333xzIUnhvPPOq9J+8MEHF8rKygozZ84stiUp1K9fv0rbP//5z0KSwqWXXvqp86x4NhdeeGHh6aefLiQpPPjgg4VCoVC47LLLCk2aNCksXry4MGzYsELjxo2rnNuvX7/C1ltvXSgUCoVzzjmnkKQwbdq0la67worfy+uuu67YdtdddxXq1q1bqFu3bqF3796FH/zgB4U777yzsGzZspI1f9p3GABgdViJDgCQZOHChUk+2Wpgddx+++1JstIKz1NOOSVJVlr53bVr1/Tu3bt4vOOOOyZJBgwYkHbt2q3U/tJLL60058iRI4u/XrEdw7Jly3LPPfcU2xs1alT89XvvvZcFCxZk1113XeW2Cf369UvXrl0/406TZs2a5dFHH80bb7yxyv7HH388c+fOzfe+970q+0jvs88+6dy58ypXwR933HFVjnfddddV3vOqtG7dOgceeGDxuLy8PEcccUSeeOKJzJkzJ8knW8vsuuuu+cpXvpJ33nmn+Nljjz2yfPnyKivMS9l1113z4IMPJvlkS5t//vOfOfbYY7PxxhsX2x988ME0a9Ys22yzTZJPtuaprKzM0KFDq8zbqlWrbLHFFpk8eXKS5Mknn8wLL7yQb37zm3n33XeL4xYvXpzdd989DzzwwEr/GmFVz+zdd98tfnfX1O23355WrVrlG9/4RrFtgw02yIknnphFixbl/vvv/8xr/Pv37cMPP8w777yTnXbaKUmqtVXHCscff3y1z13hyCOPTP369YvHu+66a5JV/2ytiaOPPrr462bNmmWrrbZK48aNM3To0GL7VlttlWbNmlWZa3W/k82aNcvixYur/MuK1XH77benbt26OfHEE6u0n3LKKSkUCrnjjjuqtO+xxx7p2LFj8bhbt24pLy9fo+ez9dZbp1u3bvnLX/6S5JMXte6///7ZcMMNP/PcFavRP+tfU/ynPffcM1OnTs1+++2Xf/7znxk7dmz22muvfPWrX63WHusAAKtDiA4AkE+C2OSTsHR1vPLKK6lTp046depUpb1Vq1Zp1qxZXnnllSrt/x6UJ0lFRUWSpG3btqtsf++996q016lTJ5tvvnmVti233DLJJ/s3rzBx4sTstNNOadiwYZo3b17cjmPBggUr3UOHDh0+6zaTfLJX/NNPP522bdvma1/7Ws4+++wqQduKe91qq61WOrdz584rPYuGDRsW99le4Stf+cpK91xKp06dUlZWVqXtP5/FCy+8kEmTJmWTTTap8tljjz2S/L8XEH6aXXfdNW+++WZmzpyZhx9+OGVlZendu3eVcP3BBx9Mnz59UqdOneK8hUIhW2yxxUpzP/fcc8V5X3jhhSTJsGHDVhr3P//zP1m6dOlKv2f/+R36yle+kmTl78rqeuWVV7LFFlsUa1+hS5cuxf7PMm/evHz/+99Py5Yt06hRo2yyySbF79WqvnOro169emnTpk21zv13Nf28klV/dysqKtKmTZuVvpMVFRVV5lrd7+T3vve9bLnllhk8eHDatGmT73znO6u1V/krr7yS1q1br/QXgaV+P//z+SRr9nO4wje/+c1cd911xZ+Tz9rKZYWKioqMGjUqt95660rvgfgsO+ywQ2688ca89957+fvf/57Ro0fn/fffz8EHH5xnn312ja4FALA66tV2AQAA64Ly8vK0bt16jffZ/c/grJS6deuuUXuhGvtJP/jgg9lvv/3St2/f/Pa3v82mm26aDTbYIOPGjVvlSw7/fRXxpxk6dGh23XXX3HTTTbnrrrty4YUX5uc//3luvPHGDB48eI3rLHXPNamysjJ77rlnfvCDH6yyf0Xo/ml22WWXJMkDDzyQl156Kdttt10aN26cXXfdNb/+9a+zaNGiPPHEEzn//POrzFtWVpY77rhjlffZpEmT4rgkufDCC9OjR49Vzr9i7Ao1+V2pKUOHDs3DDz+c0047LT169EiTJk1SWVmZQYMGrbSSfnU1aNBgpWA/Kf2ztnz58lU+m8/jea3Nz/HqfidbtGiRJ598MnfeeWfuuOOO3HHHHRk3blyOOOKIKi99XVs19Xy+8Y1vZPTo0TnmmGOy0UYbZeDAgat97ve///1cfPHFOeeccz5zP/pVqV+/fnbYYYfssMMO2XLLLXPkkUfmuuuuW+ldEQAAa0uIDgDw//v617+eK6+8MlOnTq2y9cqqtG/fPpWVlXnhhReKKz2T5K233sr8+fPTvn37Gq2tsrIyL730UpXw91//+leSFF8IesMNN6Rhw4a5884706BBg+K4cePGrfX8m266ab73ve/le9/7XubOnZvtttsu559/fgYPHly81xkzZmTAgAFVzpsxY0aNP4uZM2emUChUCVX/81l07NgxixYtKq7yLeXT/hKkXbt2adeuXR588MG89NJLxe1A+vbtm5NPPjnXXXddli9fXuWloh07dkyhUEiHDh0+NahfsY1GeXn5Z9a4tkrdY/v27fPUU0+lsrKySmj9/PPPF/s/7fz33nsv9957b84555yceeaZxfYVq+xr2le+8pWVXlKbfLLC+j//lcbqWt2/BKsJq/udTD4Jh/fdd9/su+++qayszPe+97387ne/yxlnnLHSv35ZoX379rnnnnvy/vvvV1mN/p+/nzWtXbt26dOnT6ZMmZLjjz8+9eqt/n9irliNfvbZZ2fYsGFrVcf222+fJHnzzTfX6joAAKtiOxcAgP/fD37wgzRu3DhHH3103nrrrZX6X3zxxVxyySVJkr333jtJVlo9+ctf/jLJJ/uB17Tf/OY3xV8XCoX85je/yQYbbJDdd989yScrS8vKyrJ8+fLiuJdffjk333xztedcvnz5SttytGjRIq1bt87SpUuTfBJetWjRIldccUWxLUnuuOOOPPfcczX+LN54443cdNNNxeOFCxfmj3/8Y3r06JFWrVol+WSF9NSpU3PnnXeudP78+fPz8ccfJ0lx7+ZVhbPJJ1u63Hffffn73/9eDNF79OiRpk2b5oILLkijRo3Sq1ev4vghQ4akbt26Oeecc1Za0VsoFPLuu+8mSXr16pWOHTvmoosuyqJFi1aa9+23317dx/GZGjduvMqtVfbee+/MmTMn1157bbHt448/zqWXXpomTZqkX79+SUo/oxUrmf/zPquzonh1dOzYMY888kiWLVtWbJs4cWJeffXVal+z1LP5PKzud3LFd2SFOnXqpFu3bklS5efrP+29995Zvnx5lT8nkuTiiy9OWVlZtf7VyOo677zzctZZZ+WEE05Y43NHjRqVZs2a5dxzz12t8ZMnT17lavkV76lY1bZSAABry0p0AID/X8eOHTNhwoQceuih6dKlS4444ohss802WbZsWR5++OFcd911GT58eJKke/fuGTZsWK688srMnz8//fr1y9///vf84Q9/yAEHHJDddtutRmtr2LBhJk2alGHDhmXHHXfMHXfckb/97W85/fTTi3s077PPPvnlL3+ZQYMG5Zvf/Gbmzp2byy67LJ06dcpTTz1VrXnff//9tGnTJgcffHC6d++eJk2a5J577sljjz2WX/ziF0k+eRnlz3/+8xx55JHp169fvvGNb+Stt97KJZdcks022ywnnXRSjT2H5JNtL4466qg89thjadmyZf73f/83b731VpUV96eddlpuvfXWfP3rX8/w4cPTq1evLF68ONOnT8/111+fl19+ORtvvHEaNWqUrl275tprr82WW26Z5s2bZ5tttim+KHTXXXfN1VdfnbKysuL2LnXr1s3OO++cO++8M/3796/y8sqOHTvmvPPOy+jRo/Pyyy/ngAMOSNOmTTNr1qzcdNNNOfbYY3PqqaemTp06+Z//+Z8MHjw4W2+9dY488sh89atfzeuvv57JkyenvLw8t912W408r169euXaa6/NySefnB122CFNmjTJvvvum2OPPTa/+93vMnz48EybNi2bbbZZrr/++vzf//1ffvWrXxVXM3/aM+rbt2/Gjh2bjz76KF/96ldz1113ZdasWTVS9386+uijc/3112fQoEEZOnRoXnzxxfz5z3+u8nLMNVXq2XweVvc7efTRR2fevHkZMGBA2rRpk1deeSWXXnppevToUeVfvfynfffdN7vttlt+/OMf5+WXX0737t1z11135ZZbbsmoUaPW6jl9ln79+hX/0mVNVVRU5Pvf//5qv2D0hBNOyJIlS3LggQemc+fOxT+fr7322my22WY58sgjq1UHAMCnKgAAUMW//vWvwjHHHFPYbLPNCvXr1y80bdq00KdPn8Kll15a+PDDD4vjPvroo8I555xT6NChQ2GDDTYotG3btjB69OgqYwqFQqF9+/aFffbZZ6V5khRGjBhRpW3WrFmFJIULL7yw2DZs2LBC48aNCy+++GJh4MCBhQ033LDQsmXLwllnnVVYvnx5lfOvuuqqwhZbbFFo0KBBoXPnzoVx48YVzjrrrMJ//t++Vc39731nnXVWoVAoFJYuXVo47bTTCt27dy80bdq00Lhx40L37t0Lv/3tb1c679prry307Nmz0KBBg0Lz5s0Lhx9+eOG1116rMmbFvfynVdW4Kiue5Z133lno1q1b8T6vu+66lca+//77hdGjRxc6depUqF+/fmHjjTcu7LzzzoWLLrqosGzZsuK4hx9+uNCrV69C/fr1q9x7oVAoPPPMM4UkhS5dulS59nnnnVdIUjjjjDNWWecNN9xQ2GWXXQqNGzcuNG7cuNC5c+fCiBEjCjNmzKgy7oknnigMGTKksNFGGxUaNGhQaN++fWHo0KGFe++9d6Vn8/bbb1c5d9y4cYUkhVmzZn3qM1u0aFHhm9/8ZqFZs2aFJIX27dsX+956663CkUceWdh4440L9evXL2y77baFcePGrXSNUs/otddeKxx44IGFZs2aFSoqKgqHHHJI4Y033ljpOa5uraW+Hyv84he/KHz1q18tNGjQoNCnT5/C448/XujXr1+hX79+xTGTJ08uJFnpO7HiZ+vf76/Us1nV2FK19evXr7D11luv1L6qn/vV+U5ef/31hYEDBxZatGhRqF+/fqFdu3aF7373u4U333yz5HP59+ufdNJJhdatWxc22GCDwhZbbFG48MILC5WVlVXGlfr5b9++fWHYsGGfOseq/oxalVU9r1LP6r333itUVFSsdN1V/V7ecccdhe985zuFzp07F5o0aVKoX79+oVOnToUTTjih8NZbb62ylrfffnul7yQAwJooKxRq8U1EAAB8puHDh+f6669f5bYfAAAAfL7siQ4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlGBPdAAAAAAAKMFKdAAAAAAAKEGIDgAAAAAAJdSr7QLWBZWVlXnjjTfStGnTlJWV1XY5AAAAAAB8zgqFQt5///20bt06deqUXm8uRE/yxhtvpG3btrVdBgAAAAAAX7BXX301bdq0KdkvRE/StGnTJJ88rPLy8lquBgAAAACAz9vChQvTtm3bYj5cihA9KW7hUl5eLkQHAAAAAPgS+awtvr1YFAAAAAAAShCiAwAAAABACUJ0AAAAAAAoQYgOAAAAAAAlCNEBAAAAAKAEIToAAAAAAJQgRAcAAAAAgBKE6AAAAAAAUIIQHQAAAAAAShCiAwAAAABACUJ0AAAAAAAoQYgOAAAAAAAlCNEBAAAAAKAEIToAAAAAAJQgRAcAAAAAgBKE6AAAAADAarv88svTrVu3lJeXp7y8PL17984dd9xR7L/yyivTv3//lJeXp6ysLPPnz69y/ssvv5yjjjoqHTp0SKNGjdKxY8ecddZZWbZsWck5X3755ZSVla3yc9111xXH3Xvvvdl5553TtGnTtGrVKj/84Q/z8ccf1/gz4MtFiA4AAAAArLY2bdrkggsuyLRp0/L4449nwIAB2X///fPMM88kSZYsWZJBgwbl9NNPX+X5zz//fCorK/O73/0uzzzzTC6++OJcccUVJccnSdu2bfPmm29W+Zxzzjlp0qRJBg8enCT55z//mb333juDBg3KE088kWuvvTa33nprfvSjH9X8Q+BLpaxQKBRqu4jatnDhwlRUVGTBggUpLy+v7XIAAAAA4L9K8+bNc+GFF+aoo44qtk2ZMiW77bZb3nvvvTRr1uxTz7/wwgtz+eWX56WXXlrtOXv27JntttsuV111VZLk9NNPz913353HHnusOOa2227L0KFDM3fu3DRt2jSvvPJKRo4cmYceeijLli3LZpttlgsvvDB77733mt0w64XVzYXrfYE1AQAAAADrkeXLl+e6667L4sWL07t372pfZ8GCBWnevPlqj582bVqefPLJXHbZZcW2pUuXpmHDhlXGNWrUKB9++GGmTZuW/v37Z8SIEVm2bFkeeOCBNG7cOM8++2yaNGlS7br5chCiAwAAAABrZPr06endu3c+/PDDNGnSJDfddFO6du1arWvNnDkzl156aS666KLVPueqq65Kly5dsvPOOxfb9tprr/zqV7/KX/7ylwwdOjRz5szJueeemyR58803kySzZ8/OQQcdlG233TZJsvnmm1erZr5c7IkOAAAAAKyRrbbaKk8++WQeffTRHH/8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KrJgwQJbuwAAAACwWn5x6NdruwRYa6dcO7G2S6g1q5sLr3N7ogMAAAAAwLpCiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAD8VxszZkx22GGHNG3aNC1atMgBBxyQGTNmVBkzZ86cfPvb306rVq3SuHHjbLfddrnhhhuqjNlss81SVlZW5XPBBRd86tyrc90Vli5dmh49eqSsrCxPPvnkWt0zAF8cIToAAADwX+3+++/PiBEj8sgjj+Tuu+/ORx99lIEDB2bx4sXFMUcccURmzJiRW2+9NdOnT8+QIUMydOjQPPHEE1Wude655+bNN98sfk444YRPnXt1r5skP/jBD9K6deuauWkAvjBCdAAAAOC/2qRJkzJ8+PBsvfXW6d69e8aPH5/Zs2dn2rRpxTEPP/xwTjjhhHzta1/L5ptvnp/85Cdp1qxZlTFJ0rRp07Rq1ar4ady48afOvbrXveOOO3LXXXfloosuWukar7zySvbdd9985StfSePGjbP11lvn9ttvX4snAkBNEqIDAAAA65UFCxYkSZo3b15s23nnnXPttddm3rx5qayszDXXXJMPP/ww/fv3r3LuBRdckI022ig9e/bMhRdemI8//vhT51qd67711ls55phj8qc//SkbbrjhStcYMWJEli5dmgceeCDTp0/Pz3/+8zRp0qT6DwCAGlWvtgsAAAAAqCmVlZUZNWpU+vTpk2222abY/te//jWHHnpoNtpoo9SrVy8bbrhhbrrppnTq1Kk45sQTT8x2222X5s2b5+GHH87o0aPz5ptv5pe//GXJ+T7ruoVCIcOHD89xxx2X7bffPi+//PJK15g9e3YOOuigbLvttkmSzTffvIaeBgA1QYgOAAAArDdGjBiRp59+Og899FCV9jPOOCPz58/PPffck4033jg333xzhg4dmgcffLAYXp988snF8d26dUv9+vXz3e9+N2PGjEmDBg1WOd9nXffSSy/N+++/n9GjR5es+cQTT8zxxx+fu+66K3vssUcOOuigdOvWrQaeBgA1oaxQKBRqu4jatnDhwlRUVGTBggUpLy+v7XIAAACAahg5cmRuueWWPPDAA+nQoUOx/cUXX0ynTp3y9NNPZ+utty6277HHHunUqVOuuOKKVV7vmWeeyTbbbJPnn38+W2211Ur9q3PdAw44ILfddlvKysqK/cuXL0/dunVz+OGH5w9/+EOS5NVXX83f/va33HXXXZk4cWJ+8YtffOZLTal9vzj067VdAqy1U66dWNsl1JrVzYXtiQ4AAAD8VysUChk5cmRuuumm3HfffVUC9CRZsmRJkqROnaoxSN26dVNZWVnyuk8++WTq1KmTFi1arLJ/da7761//Ov/85z/z5JNP5sknnyy+MPTaa6/N+eefXzynbdu2Oe6443LjjTfmlFNOye9///vVuXUAvgC2cwEAAAD+q40YMSITJkzILbfckqZNm2bOnDlJkoqKijRq1CidO3dOp06d8t3vfjcXXXRRNtpoo9x88825++67M3HiJyswp06dmkcffTS77bZbmjZtmqlTp+akk07Kt771rXzlK19Jkrz++uvZfffd88c//jFf+9rXVuu67dq1q1LriheGduzYMW3atEmSjBo1KoMHD86WW26Z9957L5MnT06XLl2+kGcHwGcTogMAAAD/1S6//PIkSf/+/au0jxs3LsOHD88GG2yQ22+/PT/60Y+y7777ZtGiRenUqVP+8Ic/ZO+9906SNGjQINdcc03OPvvsLF26NB06dMhJJ51UZZ/0jz76KDNmzCiuQF+d666O5cuXZ8SIEXnttddSXl6eQYMG5eKLL17LpwJATbEneuyJDgAAAMCasyc66wN7otsTHQAAAAAAqk2IDgAAAAAAJdgTHQAAANYTlx13X22XAGtlxBUDarsEgJVYiQ4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAACgBo0ZMyY77LBDmjZtmhYtWuSAAw7IjBkzVho3derUDBgwII0bN055eXn69u2bDz74oNi/3377pV27dmnYsGE23XTTfPvb384bb7zxqXN/97vfTceOHdOoUaNssskm2X///fP888+vNG78+PHp1q1bGjZsmBYtWmTEiBFrf+MAAOspIToAAEANuv/++zNixIg88sgjufvuu/PRRx9l4MCBWbx4cXHM1KlTM2jQoAwcODB///vf89hjj2XkyJGpU+f//Sfabrvtlr/+9a+ZMWNGbrjhhrz44os5+OCDP3XuXr16Zdy4cXnuuedy5513plAoZODAgVm+fHlxzC9/+cv8+Mc/zo9+9KM888wzueeee7LXXnvV/IMAAFhPlBUKhUJtF1HbFi5cmIqKiixYsCDl5eW1XQ4AALAeefvtt9OiRYvcf//96du3b5Jkp512yp577pmf/vSnq32dW2+9NQcccECWLl2aDTbYYLXOeeqpp9K9e/fMnDkzHTt2zHvvvZevfvWrue2227L77ruv8pxXXnklI0eOzEMPPZRly5Zls802y4UXXpi99957tWul9lx23H21XQKslRFXDKjtEtbILw79em2XAGvtlGsn1nYJtWZ1c2Er0QEAAD5HCxYsSJI0b948STJ37tw8+uijadGiRXbeeee0bNky/fr1y0MPPVTyGvPmzcvVV1+dnXfeebUD9MWLF2fcuHHp0KFD2rZtmyS5++67U1lZmddffz1dunRJmzZtMnTo0Lz66qvF80aMGJGlS5fmgQceyPTp0/Pzn/88TZo0qe7tAwD81xOiAwAAfE4qKyszatSo9OnTJ9tss02S5KWXXkqSnH322TnmmGMyadKkbLfddtl9993zwgsvVDn/hz/8YRo3bpyNNtoos2fPzi233PKZc/72t79NkyZN0qRJk9xxxx25++67U79+/eLclZWV+dnPfpZf/epXuf766zNv3rzsueeeWbZsWZJk9uzZ6dOnT7bddttsvvnm+frXv15cQQ8A8GUkRAcAAPicjBgxIk8//XSuueaaYltlZWWST14CeuSRR6Znz565+OKLs9VWW+V///d/q5x/2mmn5Yknnshdd92VunXr5ogjjshn7ch5+OGH54knnsj999+fLbfcMkOHDs2HH35YnPujjz7Kr3/96+y1117Zaaed8pe//CUvvPBCJk+enCQ58cQTc95556VPnz4566yz8tRTT9XkIwEA+K8jRAcAAPgcjBw5MhMnTszkyZPTpk2bYvumm26aJOnatWuV8V26dMns2bOrtG288cbZcssts+eee+aaa67J7bffnkceeeRT562oqMgWW2yRvn375vrrr8/zzz+fm266qeTcm2yySTbeeOPi3EcffXReeumlfPvb38706dOz/fbb59JLL63mUwAA+O8nRAcAAKhBhUIhI0eOzE033ZT77rsvHTp0qNK/2WabpXXr1pkxY0aV9n/9619p3759yeuuWMG+dOnSNaqlUCgUz+nTp0+SVJl73rx5eeedd6rM3bZt2xx33HG58cYbc8opp+T3v//9as8JALC+qVfbBQAAAKxPRowYkQkTJuSWW25J06ZNM2fOnCSfrBBv1KhRysrKctppp+Wss85K9+7d06NHj/zhD3/I888/n+uvvz5J8uijj+axxx7LLrvskq985St58cUXc8YZZ6Rjx47p3bt3kuT111/P7rvvnj/+8Y/52te+lpdeeinXXnttBg4cmE022SSvvfZaLrjggjRq1Ch77713kmTLLbfM/vvvn+9///u58sorU15entGjR6dz587ZbbfdkiSjRo3K4MGDs+WWW+a9997L5MmT06VLl1p4kgAA6wYhOgAAQA26/PLLkyT9+/ev0j5u3LgMHz48ySdB9YcffpiTTjop8+bNS/fu3XP33XenY8eOSZINN9wwN954Y84666wsXrw4m266aQYNGpSf/OQnadCgQZLko48+yowZM7JkyZIkScOGDfPggw/mV7/6Vd577720bNkyffv2zcMPP5wWLVoU6/jjH/+Yk046Kfvss0/q1KmTfv36ZdKkSdlggw2SJMuXL8+IESPy2muvpby8PIMGDcrFF1/8eT4yAIB1Wlnhs95K8yWwcOHCVFRUZMGCBSkvL6/tcgAAAKBaLjvuvtouAdbKiCsG1HYJa+QXh369tkuAtXbKtRNru4Ras7q5sD3RAQAAAACgBCE6AAAAAACUYE90AADgc/FcZy+j5L9bl+efq+0SAIB1gJXoAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAAAACXUaog+ZsyY7LDDDmnatGlatGiRAw44IDNmzKgypn///ikrK6vyOe6446qMmT17dvbZZ59suOGGadGiRU477bR8/PHHX+StAAAAAACwHqpXm5Pff//9GTFiRHbYYYd8/PHHOf300zNw4MA8++yzady4cXHcMccck3PPPbd4vOGGGxZ/vXz58uyzzz5p1apVHn744bz55ps54ogjssEGG+RnP/vZF3o/AAAAAACsX2o1RJ80aVKV4/Hjx6dFixaZNm1a+vbtW2zfcMMN06pVq1Ve46677sqzzz6be+65Jy1btkyPHj3y05/+ND/84Q9z9tlnp379+p/rPQAAAAAAsP5ap/ZEX7BgQZKkefPmVdqvvvrqbLzxxtlmm20yevToLFmypNg3derUbLvttmnZsmWxba+99srChQvzzDPPfDGFAwAAAACwXqrVlej/rrKyMqNGjUqfPn2yzTbbFNu/+c1vpn379mndunWeeuqp/PCHP8yMGTNy4403JknmzJlTJUBPUjyeM2fOKudaunRpli5dWjxeuHBhTd8OAAAAAADrgXUmRB8xYkSefvrpPPTQQ1Xajz322OKvt91222y66abZfffd8+KLL6Zjx47VmmvMmDE555xz1qpeAAAAAADWf+vEdi4jR47MxIkTM3ny5LRp0+ZTx+64445JkpkzZyZJWrVqlbfeeqvKmBXHpfZRHz16dBYsWFD8vPrqq2t7CwAAAAAArIdqNUQvFAoZOXJkbrrpptx3333p0KHDZ57z5JNPJkk23XTTJEnv3r0zffr0zJ07tzjm7rvvTnl5ebp27brKazRo0CDl5eVVPgAAAAAA8J9qdTuXESNGZMKECbnlllvStGnT4h7mFRUVadSoUV588cVMmDAhe++9dzbaaKM89dRTOemkk9K3b99069YtSTJw4MB07do13/72tzN27NjMmTMnP/nJTzJixIg0aNCgNm8PAAAAAID/crW6Ev3yyy/PggUL0r9//2y66abFz7XXXpskqV+/fu65554MHDgwnTt3zimnnJKDDjoot912W/EadevWzcSJE1O3bt307t073/rWt3LEEUfk3HPPra3bAgAAAABgPVGrK9ELhcKn9rdt2zb333//Z16nffv2uf3222uqLAAAAAAASLKOvFgUAAAAAADWRUJ0AAAAAAAoQYgOAAAAAAAlCNEBAAAAAKAEIToAAAAAAJQgRAcAAAAAgBKE6AAAAAAAUIIQHQAAAAAAShCiAwAAAABACUJ0AAAAAAAoQYgOAAAAAAAlCNEBAAAAAKAEIToAAAAAAJQgRAcAAAAAgBKE6AAAAAAAUIIQHQAAAAAAShCiAwAAAABACUJ0AAAAAAAoQYgOAAAAAAAlCNEBAAAAAKAEIToAAAAAAJQgRAcAAAAAgBKE6AAAAAAAUIIQHQAAAAAAShCiAwAAAABACUJ0AID12JgxY7LDDjukadOmadGiRQ444IDMmDGj2D9v3ryccMIJ2WqrrdKoUaO0a9cuJ554YhYsWFAcM378+JSVla3yM3fu3FXO+/LLL+eoo45Khw4d0qhRo3Ts2DFnnXVWli1bVmXcnXfemZ122ilNmzbNJptskoMOOigvv/zy5/IsAAAAqkOIDgCwHrv//vszYsSIPPLII7n77rvz0UcfZeDAgVm8eHGS5I033sgbb7yRiy66KE8//XTGjx+fSZMm5aijjipe49BDD82bb75Z5bPXXnulX79+adGixSrnff7551NZWZnf/e53eeaZZ3LxxRfniiuuyOmnn14cM2vWrOy///4ZMGBAnnzyydx555155513MmTIkM/3oQAAAKyBerVdAAAAn59JkyZVOR4/fnxatGiRadOmpW/fvtlmm21yww03FPs7duyY888/P9/61rfy8ccfp169emnUqFEaNWpUHPP222/nvvvuy1VXXVVy3kGDBmXQoEHF48033zwzZszI5ZdfnosuuihJMm3atCxfvjznnXde6tT5ZG3Hqaeemv333z8fffRRNthgg/zzn//MqFGj8vjjj6esrCxbbLFFfve732X77bevkecDAADwWaxEBwD4ElmxTUvz5s0/dUx5eXnq1Vv1eos//vGP2XDDDXPwwQev8dz/Pm+vXr1Sp06djBs3LsuXL8+CBQvypz/9KXvssUc22GCDJMnhhx+eNm3a5LHHHsu0adPyox/9qNgHAADwRbASHQDgS6KysjKjRo1Knz59ss0226xyzDvvvJOf/vSnOfbYY0te56qrrso3v/nNKqvTP8vMmTNz6aWXFlehJ0mHDh1y1113ZejQofnud7+b5cuXp3fv3rn99tuLY2bPnp3TTjstnTt3TpJsscUWqz0nAABATbASHQDgS2LEiBF5+umnc80116yyf+HChdlnn33StWvXnH322ascM3Xq1Dz33HNV9kz/LK+//noGDRqUQw45JMccc0yxfc6cOTnmmGMybNiwPPbYY7n//vtTv379HHzwwSkUCkmSk08+OUcffXT22GOPXHDBBXnxxRdX/4YBAABqgBAdAOBLYOTIkZk4cWImT56cNm3arNT//vvvZ9CgQWnatGluuummklum/M///E969OiRXr16rda8b7zxRnbbbbfsvPPOufLKK6v0XXbZZamoqMjYsWPTs2fP9O3bN3/+859z77335tFHH02SnH322XnmmWeyzz775L777kvXrl1z0003reHdAwAAVJ8QHQBgPVYoFDJy5MjcdNNNue+++9KhQ4eVxixcuDADBw5M/fr1c+utt6Zhw4arvNaiRYvy17/+dbVXob/++uvp379/evXqlXHjxhVfHrrCkiVLVmqrW7dukk+2nllhyy23zEknnZS77rorQ4YMybhx41ZrfgAAgJogRAcAWI+NGDEif/7znzNhwoQ0bdo0c+bMyZw5c/LBBx8k+X8B+uLFi3PVVVdl4cKFxTHLly+vcq1rr702H3/8cb71rW+tNM/f//73dO7cOa+//nqS/xegt2vXLhdddFHefvvt4nVX2GefffLYY4/l3HPPzQsvvJB//OMfOfLII9O+ffv07NkzH3zwQUaOHJkpU6bklVdeyf/93//lscceS5cuXT7HJwYAAFCVF4sCAKzHLr/88iRJ//79q7SPGzcuw4cPzz/+8Y/i1imdOnWqMmbWrFnZbLPNisdXXXVVhgwZkmbNmq00z5IlSzJjxox89NFHSZK77747M2fOzMyZM1faPmbFfucDBgzIhAkTMnbs2IwdOzYbbrhhevfunUmTJqVRo0ZZtmxZ3n333RxxxBF56623svHGG2fIkCE555xz1uaRAAAArJGywor/ivkSW7hwYSoqKrJgwYKUl5fXdjkAALBeeK6zfzXAf7cuzz9X2yWsscuOu6+2S4C1MuKKAbVdwhr5xaFfr+0SYK2dcu3E2i6h1qxuLmw7FwAAAAAAKEGIDgAAAAAAJdgTHQD4Utj2D9vWdgmw1qYPm17bJQAAwJeOlegAAAAAAFCCEB0AAAAAAEoQogMAAAAAQAlCdAAAAAAAKEGIDgAAAAAAJQjRAQAAAACgBCE6AAAAAACUIEQHAAAAAIAShOgAAAAAAFCCEB0AAAAAAEoQogMAAAAAQAlCdAAAAAAAKEGIDgAAAAAAJQjRAQAAAACgBCE6AAAAAACUIEQHAAAAAIAShOgAAAAAAFCCEB2AL8yYMWOyww47pGnTpmnRokUOOOCAzJgxo8qYK6+8Mv379095eXnKysoyf/78la5z/vnnZ+edd86GG26YZs2arfb8zz33XPbbb79UVFSkcePG2WGHHTJ79uw1mhsAAAD4chGiA/CFuf/++zNixIg88sgjufvuu/PRRx9l4MCBWbx4cXHMkiVLMmjQoJx++uklr7Ns2bIccsghOf7441d77hdffDG77LJLOnfunClTpuSpp57KGWeckYYNG67R3AAAAMCXS73aLgCAL49JkyZVOR4/fnxatGiRadOmpW/fvkmSUaNGJUmmTJlS8jrnnHNO8fzV9eMf/zh77713xo4dW2zr2LFjlTGfNfeyZcty8skn54Ybbsh7772Xli1b5rjjjsvo0aNXuw4AAADgv4uV6ADUmgULFiRJmjdv/rnOU1lZmb/97W/Zcssts9dee6VFixbZcccdc/PNN6/RdX7961/n1ltvzV//+tfMmDEjV199dTbbbLPPpWYAAABg3SBEB6BWVFZWZtSoUenTp0+22Wabz3WuuXPnZtGiRbngggsyaNCg3HXXXTnwwAMzZMiQ3H///at9ndmzZ2eLLbbILrvskvbt22eXXXbJN77xjc+xcgAAAKC22c4FgFoxYsSIPP3003nooYc+97kqKyuTJPvvv39OOumkJEmPHj3y8MMP54orrki/fv1W6zrDhw/Pnnvuma222iqDBg3K17/+9QwcOPBzqxsAAACofVaiA/CFGzlyZCZOnJjJkyenTZs2n/t8G2+8cerVq5euXbtWae/SpUtmz5692tfZbrvtMmvWrPz0pz/NBx98kKFDh+bggw+u6XIBAACAdYiV6AB8YQqFQk444YTcdNNNmTJlSjp06PCFzFu/fv3ssMMOmTFjRpX2f/3rX2nfvv0aXau8vDyHHnpoDj300Bx88MEZNGhQ5s2b97nv6w4AAADUDiE6AF+YESNGZMKECbnlllvStGnTzJkzJ0lSUVGRRo0aJUnmzJmTOXPmZObMmUmS6dOnp2nTpmnXrl0xqJ49e3bmzZuX2bNnZ/ny5XnyySeTJJ06dUqTJk2SJJ07d86YMWNy4IEHJklOO+20HHrooenbt2922223TJo0KbfddlumTJlSrO+z5v7lL3+ZTTfdND179kydOnVy3XXXpVWrVmnWrNnn/egAAACAWmI7FwC+MJdffnkWLFiQ/v37Z9NNNy1+rr322uKYK664Ij179swxxxyTJOnbt2969uyZW2+9tTjmzDPPTM+ePXPWWWdl0aJF6dmzZ3r27JnHH3+8OGbGjBlZsGBB8fjAAw/MFVdckbFjx2bbbbfN//zP/+SGG27ILrvsstpzN23aNGPHjs3222+fHXbYIS+//HJuv/321Knjf04BAABgfVVWKBQKtV1EbVu4cGEqKiqyYMGClJeX13Y5AMDnYNs/bFvbJcBamz5sem2XsEae69yltkuAtdLl+edqu4Q1dtlx99V2CbBWRlwxoLZLWCO/OPTrtV0CrLVTrp1Y2yXUmtXNhS2dAwAAAACAEoToAAAAAABQgheLAtSWsytquwJYO2cv+OwxAAAA8F/OSnQAAAAAAChBiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAAChBiA4AAAAAACUI0QEAAAAAoAQhOgAAAAAAlCBEBwAAAACAEoToAAAAAABQghAdAAAAAABKEKIDAAAAAEAJQnQAAAAAACihVkP0MWPGZIcddkjTpk3TokWLHHDAAZkxY0aVMR9++GFGjBiRjTbaKE2aNMlBBx2Ut956q8qY2bNnZ5999smGG26YFi1a5LTTTsvHH3/8Rd4KAAAAAADroVoN0e+///6MGDEijzzySO6+++589NFHGThwYBYvXlwcc9JJJ+W2227Lddddl/vvvz9vvPFGhgwZUuxfvnx59tlnnyxbtiwPP/xw/vCHP2T8+PE588wza+OWAAAAAABYj9SrzcknTZpU5Xj8+PFp0aJFpk2blr59+2bBggW56qqrMmHChAwYMCBJMm7cuHTp0iWPPPJIdtppp9x111159tlnc88996Rly5bp0aNHfvrTn+aHP/xhzj777NSvX782bg0AAAAAgPXAOrUn+oIFC5IkzZs3T5JMmzYtH330UfbYY4/imM6dO6ddu3aZOnVqkmTq1KnZdttt07Jly+KYvfbaKwsXLswzzzyzynmWLl2ahQsXVvkAAAAAAMB/WmdC9MrKyowaNSp9+vTJNttskySZM2dO6tevn2bNmlUZ27Jly8yZM6c45t8D9BX9K/pWZcyYMamoqCh+2rZtW8N3AwAAAADA+mCdCdFHjBiRp59+Otdcc83nPtfo0aOzYMGC4ufVV1/93OcEAAAAAOC/T63uib7CyJEjM3HixDzwwANp06ZNsb1Vq1ZZtmxZ5s+fX2U1+ltvvZVWrVoVx/z973+vcr233nqr2LcqDRo0SIMGDWr4LgAAAAAAWN/U6kr0QqGQkSNH5qabbsp9992XDh06VOnv1atXNthgg9x7773FthkzZmT27Nnp3bt3kqR3796ZPn165s6dWxxz9913p7y8PF27dv1ibgQAAAAAgPVSra5EHzFiRCZMmJBbbrklTZs2Le5hXlFRkUaNGqWioiJHHXVUTj755DRv3jzl5eU54YQT0rt37+y0005JkoEDB6Zr16759re/nbFjx2bOnDn5yU9+khEjRlhtDgAAAADAWqnVEP3yyy9PkvTv379K+7hx4zJ8+PAkycUXX5w6derkoIMOytKlS7PXXnvlt7/9bXFs3bp1M3HixBx//PHp3bt3GjdunGHDhuXcc8/9om4DAAAAAID1VK2G6IVC4TPHNGzYMJdddlkuu+yykmPat2+f22+/vSZLAwAAAACA6ofos2fPziuvvJIlS5Zkk002ydZbb237FAAAAAAA1itrFKK//PLLufzyy3PNNdfktddeq7KSvH79+tl1111z7LHH5qCDDkqdOrX6zlIAAAAAAFhrq510n3jiienevXtmzZqV8847L88++2wWLFiQZcuWZc6cObn99tuzyy675Mwzz0y3bt3y2GOPfZ51AwAAAADA5261V6I3btw4L730UjbaaKOV+lq0aJEBAwZkwIABOeusszJp0qS8+uqr2WGHHWq0WAAAAAAA+CKtdog+ZsyY1b7ooEGDqlUMAAAAAACsS6q1cfmsWbPywgsvrNT+wgsv5OWXX17bmgAAAAAAYJ1QrRB9+PDhefjhh1dqf/TRRzN8+PC1rQkAAAAAANYJ1QrRn3jiifTp02el9p122ilPPvnk2tYEAAAAAADrhGqF6GVlZXn//fdXal+wYEGWL1++1kUBAAAAAMC6oFohet++fTNmzJgqgfny5cszZsyY7LLLLjVWHAAAAAAA1KZ61Tnp5z//efr27Zutttoqu+66a5LkwQcfzMKFC3PffffVaIEAAAAAAFBbqrUSvWvXrnnqqacydOjQzJ07N++//36OOOKIPP/889lmm21qukYAAAAAAKgV1VqJniStW7fOz372s5qsBQAAAAAA1inVWomefLJ9y7e+9a3svPPOef3115Mkf/rTn/LQQw/VWHEAAAAAAFCbqhWi33DDDdlrr73SqFGj/OMf/8jSpUuTJAsWLLA6HQAAAACA9Ua1QvTzzjsvV1xxRX7/+99ngw02KLb36dMn//jHP2qsOAAAAAAAqE3VCtFnzJiRvn37rtReUVGR+fPnr21NAAAAAACwTqhWiN6qVavMnDlzpfaHHnoom2+++VoXBQAAAAAA64JqhejHHHNMvv/97+fRRx9NWVlZ3njjjVx99dU59dRTc/zxx9d0jQAAAAAAUCvqVeekH/3oR6msrMzuu++eJUuWpG/fvmnQoEFOPfXUnHDCCTVdIwAAAAAA1IpqhehlZWX58Y9/nNNOOy0zZ87MokWL0rVr1zRp0qSm6wMAAAAAgFpTre1cVqhfv366du2azp0755577slzzz1XU3UBAAAAAECtq1aIPnTo0PzmN79JknzwwQfZYYcdMnTo0HTr1i033HBDjRYIAAAAAAC1pVoh+gMPPJBdd901SXLTTTelsrIy8+fPz69//eucd955NVogAAAAAADUlmqF6AsWLEjz5s2TJJMmTcpBBx2UDTfcMPvss09eeOGFGi0QAAAAAABqS7VC9LZt22bq1KlZvHhxJk2alIEDByZJ3nvvvTRs2LBGCwQAAAAAgNpSrzonjRo1KocffniaNGmS9u3bp3///kk+2eZl2223rcn6AAAAAACg1lQrRP/e976XHXfcMbNnz86ee+6ZOnU+WdC++eab2xMdAAAAAID1RrVC9CTp1atXevXqVaVtn332WeuCAAAAAABgXbHae6JfcMEF+eCDD1Zr7KOPPpq//e1v1S4KAAAAAADWBasdoj/77LNp165dvve97+WOO+7I22+/Xez7+OOP89RTT+W3v/1tdt555xx66KFp2rTp51IwAAAAAAB8UVZ7O5c//vGP+ec//5nf/OY3+eY3v5mFCxembt26adCgQZYsWZIk6dmzZ44++ugMHz48DRs2/NyKBgAAAACAL8Ia7YnevXv3/P73v8/vfve7PPXUU3nllVfywQcfZOONN06PHj2y8cYbf151AgAAAADAF65aLxatU6dOevTokR49etRwOQAAAAAAsO5Y7T3RAQAAAADgy0aIDgAAAAAAJQjRAQAAAACgBCE6AAAAAACUsFYh+syZM3PnnXfmgw8+SJIUCoUaKQoAAAAAANYF1QrR33333eyxxx7Zcssts/fee+fNN99Mkhx11FE55ZRTarRAAAAAAACoLdUK0U866aTUq1cvs2fPzoYbblhsP/TQQzNp0qQaKw4AAAAAAGpTveqcdNddd+XOO+9MmzZtqrRvscUWeeWVV2qkMAAAAAAAqG3VWom+ePHiKivQV5g3b14aNGiw1kUBAAAAAMC6oFoh+q677po//vGPxeOysrJUVlZm7Nix2W233WqsOAAAAAAAqE3V2s5l7Nix2X333fP4449n2bJl+cEPfpBnnnkm8+bNy//93//VdI0AAAAAAFArqrUSfZtttsm//vWv7LLLLtl///2zePHiDBkyJE888UQ6duxY0zUCAAAAAECtqNZK9CSpqKjIj3/845qsBQAAAAAA1inVDtE//PDDPPXUU5k7d24qKyur9O23335rXRgAAAAAANS2aoXokyZNyhFHHJF33nlnpb6ysrIsX758rQsDAAAAAIDaVq090U844YQccsghefPNN1NZWVnlI0AHAAAAAGB9Ua0Q/a233srJJ5+cli1b1nQ9AAAAAACwzqhWiH7wwQdnypQpNVwKAAAAAACsW6q1J/pvfvObHHLIIXnwwQez7bbbZoMNNqjSf+KJJ9ZIcQAAAAAAUJuqFaL/5S9/yV133ZWGDRtmypQpKSsrK/aVlZUJ0QEAAAAAWC9UK0T/8Y9/nHPOOSc/+tGPUqdOtXaEAQAAAACAdV61EvBly5bl0EMPFaADAAAAALBeq1YKPmzYsFx77bU1XQt84R544IHsu+++ad26dcrKynLzzTevNOa5557Lfvvtl4qKijRu3Dg77LBDZs+eXey/8sor079//5SXl6esrCzz58//zHnHjBmTHXbYIU2bNk2LFi1ywAEHZMaMGcX+efPm5YQTTshWW22VRo0apV27djnxxBOzYMGCmrhtAAAAAGA1VWs7l+XLl2fs2LG58847061bt5VeLPrLX/6yRoqDz9vixYvTvXv3fOc738mQIUNW6n/xxRezyy675Kijjso555yT8vLyPPPMM2nYsGFxzJIlSzJo0KAMGjQoo0ePXq1577///owYMSI77LBDPv7445x++ukZOHBgnn322TRu3DhvvPFG3njjjVx00UXp2rVrXnnllRx33HF54403cv3119fY/QMAAAAAn65aIfr06dPTs2fPJMnTTz9dpe/fXzIK67rBgwdn8ODBJft//OMfZ++9987YsWOLbR07dqwyZtSoUUmSKVOmrPa8kyZNqnI8fvz4tGjRItOmTUvfvn2zzTbb5IYbbqgy5/nnn59vfetb+fjjj1OvXr289957GTlyZO66664sWrQobdq0yemnn54jjzxytesAAAAAAD5dtUL0yZMn13QdsM6prKzM3/72t/zgBz/IXnvtlSeeeCIdOnTI6NGjc8ABB9ToXCu2aWnevPmnjikvL0+9ep/82J5xxhl59tlnc8cdd2TjjTfOzJkz88EHH9RoXQAAAADwZefNoFDC3Llzs2jRolxwwQUZNGhQ7rrrrhx44IEZMmRI7r///hqbp7KyMqNGjUqfPn2yzTbbrHLMO++8k5/+9Kc59thji22zZ89Oz549s/3222ezzTbLHnvskX333bfG6gIAAAAA1mAl+pAhQzJ+/PiUl5evcu/of3fjjTeudWFQ2yorK5Mk+++/f0466aQkSY8ePfLwww/niiuuSL9+/WpknhEjRuTpp5/OQw89tMr+hQsXZp999knXrl1z9tlnF9uPP/74HHTQQfnHP/6RgQMH5oADDsjOO+9cIzUBAAAAAJ9Y7ZXoFRUVxf3Oy8vLU1FRUfID64ONN9449erVS9euXau0d+nSJbNnz66ROUaOHJmJEydm8uTJadOmzUr977//fgYNGpSmTZvmpptuqvIS38GDB+eVV17JSSedlDfeeCO77757Tj311BqpCwAAAAD4xGqvRB83blzx1+PHj/88aoF1Sv369bPDDjtkxowZVdr/9a9/pX379mt17UKhkBNOOCE33XRTpkyZkg4dOqw0ZuHChdlrr73SoEGD3HrrrWnYsOFKYzbZZJMMGzYsw4YNy6677prTTjstF1100VrVBgAAAAD8P9V6seiAAQNy4403plmzZlXaFy5cmAMOOCD33XdfTdQGn7tFixZl5syZxeNZs2blySefTPPmzdOuXbucdtppOfTQQ9O3b9/stttumTRpUm677bZMmTKleM6cOXMyZ86c4nWmT5+epk2bpl27dsUXhe6+++458MADM3LkyCSfbOEyYcKE3HLLLWnatGnmzJmT5JN/8dGoUaMsXLgwAwcOzJIlS/LnP/85CxcuzMKFC5N8EpzXrVs3Z555Znr16pWtt946S5cuzcSJE9OlS5cv4rEBAAAAwJdGtUL0KVOmZNmyZSu1f/jhh3nwwQfXuij4ojz++OPZbbfdiscnn3xykmTYsGEZP358DjzwwFxxxRUZM2ZMTjzxxGy11Va54YYbsssuuxTPueKKK3LOOecUj/v27Zvkk3+9MXz48CTJiy++mHfeeac45vLLL0+S9O/fv0o9K875xz/+kUcffTRJ0qlTpypjZs2alc022yz169fP6NGj8/LLL6dRo0bZddddc80116zlEwEAAAAA/t0ahehPPfVU8dfPPvtscfVskixfvjyTJk3KV7/61ZqrDj5n/fv3T6FQ+NQx3/nOd/Kd73ynZP/ZZ59d5YWfq/Lyyy9XOf6sOVenrp/85Cf5yU9+8qljAAAAAIC1s0Yheo8ePVJWVpaysrIMGDBgpf5GjRrl0ksvrbHiAAAAAACgNq1RiD5r1qwUCoVsvvnm+fvf/55NNtmk2Fe/fv20aNEidevWrfEiAQAAAACgNqxRiN6+ffskSWVl5edSDLVnsx/9rbZLgLXy8gX71HYJAAAAAKyHqvVi0SR54YUXMnny5MydO3elUP3MM89c68IAAAAAAKC2VStE//3vf5/jjz8+G2+8cVq1apWysrJiX1lZmRAdAAAAAID1QrVC9PPOOy/nn39+fvjDH9Z0PQAAAAAAsM6oU52T3nvvvRxyyCE1XQsAAAAAAKxTqhWiH3LIIbnrrrtquhYAAAAAAFinVGs7l06dOuWMM87II488km233TYbbLBBlf4TTzyxRooDAAAAAIDaVK0Q/corr0yTJk1y//335/7776/SV1ZWJkQHAAAAAGC9UK0QfdasWTVdBwAAAAAArHOqtSc6AAAAAAB8GVRrJfp3vvOdT+3/3//932oVAwAAAAAA65JqhejvvfdeleOPPvooTz/9dObPn58BAwbUSGEAAAAAAFDbqhWi33TTTSu1VVZW5vjjj0/Hjh3XuigAAAAAAFgX1Nie6HXq1MnJJ5+ciy++uKYuCQAAAAAAtapGXyz64osv5uOPP67JSwIAAAAAQK2p1nYuJ598cpXjQqGQN998M3/7298ybNiwGikMAAAAAABqW7VC9CeeeKLKcZ06dbLJJpvkF7/4Rb7zne/USGEAAAAAAFDb1ng7l0KhkD/84Q+5/fbbM3ny5EyePDn33ntvrrnmmhx77LGpV2/1c/kHHngg++67b1q3bp2ysrLcfPPNVfqHDx+esrKyKp9BgwZVGTNv3rwcfvjhKS8vT7NmzXLUUUdl0aJFa3pbAAAAAACwkmqF6J06dcprr7221pMvXrw43bt3z2WXXVZyzKBBg/Lmm28WP3/5y1+q9B9++OF55plncvfdd2fixIl54IEHcuyxx651bQAAAAAAsMbbudSpUydbbLFF3n333WyxxRZrNfngwYMzePDgTx3ToEGDtGrVapV9zz33XCZNmpTHHnss22+/fZLk0ksvzd57752LLroorVu3Xqv6AAAAAAD4clvjlehJcsEFF+S0007L008/XdP1rGTKlClp0aJFttpqqxx//PF59913i31Tp05Ns2bNigF6kuyxxx6pU6dOHn300c+9NgAAAAAA1m/VerHoEUcckSVLlqR79+6pX79+GjVqVKV/3rx5NVLcoEGDMmTIkHTo0CEvvvhiTj/99AwePDhTp05N3bp1M2fOnLRo0aLKOfXq1Uvz5s0zZ86cktddunRpli5dWjxeuHBhjdQLAAAAAMD6pVoh+q9+9asaLmPVDjvssOKvt91223Tr1i0dO3bMlClTsvvuu1f7umPGjMk555xTEyUCAAAAALAeq1aIPmzYsJquY7Vsvvnm2XjjjTNz5szsvvvuadWqVebOnVtlzMcff5x58+aV3Ec9SUaPHp2TTz65eLxw4cK0bdv2c6sbAAAAAID/TtXaE722vPbaa3n33Xez6aabJkl69+6d+fPnZ9q0acUx9913XyorK7PjjjuWvE6DBg1SXl5e5QMAAAAAAP+pWivRa8qiRYsyc+bM4vGsWbPy5JNPpnnz5mnevHnOOeecHHTQQWnVqlVefPHF/OAHP0inTp2y1157JUm6dOmSQYMG5ZhjjskVV1yRjz76KCNHjsxhhx2W1q1b19ZtAQAAAACwnqjVleiPP/54evbsmZ49eyZJTj755PTs2TNnnnlm6tatm6eeeir77bdfttxyyxx11FHp1atXHnzwwTRo0KB4jauvvjqdO3fO7rvvnr333ju77LJLrrzyytq6JQAAAAAA1iO1uhK9f//+KRQKJfvvvPPOz7xG8+bNM2HChJosCwAAAAAAkvyX7YkOAAAAAABfpNVeiT5kyJDVvuiNN95YrWIAAAAAAGBdstohekVFxedZBwAAAAAArHNWO0QfN27c51kHAAAAAACsc+yJDgAAAAAAJaz2SvT/dP311+evf/1rZs+enWXLllXp+8c//rHWhQEAAAAAQG2r1kr0X//61znyyCPTsmXLPPHEE/na176WjTbaKC+99FIGDx5c0zUCAAAAAECtqFaI/tvf/jZXXnllLr300tSvXz8/+MEPcvfdd+fEE0/MggULarpGAAAAAACoFdUK0WfPnp2dd945SdKoUaO8//77SZJvf/vb+ctf/lJz1QEAAAAAQC2qVojeqlWrzJs3L0nSrl27PPLII0mSWbNmpVAo1Fx1AAAAAABQi6oVog8YMCC33nprkuTII4/MSSedlD333DOHHnpoDjzwwBotEAAAAAAAaku96px05ZVXprKyMkkyYsSIbLTRRnn44Yez33775bvf/W6NFggAAAAAALWlWiH6a6+9lrZt2xaPDzvssBx22GEpFAp59dVX065duxorEAAAAAAAaku1tnPp0KFD3n777ZXa582blw4dOqx1UQAAAAAAsC6oVoheKBRSVla2UvuiRYvSsGHDtS4KAAAAAADWBWu0ncvJJ5+cJCkrK8sZZ5yRDTfcsNi3fPnyPProo+nRo0eNFggAAAAAALVljUL0J554IsknK9GnT5+e+vXrF/vq16+f7t2759RTT63ZCgEAAAAAoJasUYg+efLkJMmRRx6ZSy65JOXl5Z9LUQAAAAAAsC5YoxB9hXHjxhV//dprryVJ2rRpUzMVAQAAAADAOqJaLxatrKzMueeem4qKirRv3z7t27dPs2bN8tOf/jSVlZU1XSMAAAAAANSKaq1E//GPf5yrrroqF1xwQfr06ZMkeeihh3L22Wfnww8/zPnnn1+jRQIAAAAAQG2oVoj+hz/8If/zP/+T/fbbr9jWrVu3fPWrX833vvc9IToAAAAAAOuFam3nMm/evHTu3Hml9s6dO2fevHlrXRQAAAAAAKwLqhWid+/ePb/5zW9Wav/Nb36T7t27r3VRAAAAAACwLqjWdi5jx47NPvvsk3vuuSe9e/dOkkydOjWvvvpqbr/99hotEAAAAAAAaku1VqL369cv//rXv3LggQdm/vz5mT9/foYMGZIZM2Zk1113rekaAQAAAACgVlRrJfrs2bPTtm3bVb5AdPbs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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\", \"adam\", \"sgd\", \"adagrad\"] \n", + "dataset = \"mnist\"\n", + "save_figure = True\n", + "title = \"Comparison between total runtimes on MNIST\"\n", + "save_path = f\"diagrams/run_times_shampoo_total_{dataset}.png\"\n", + "\n", + "create_diagram_total_runtime(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "50fabf98", + "metadata": {}, + "source": [ + "## Experiment 8: Time for 100 epochs on CIFAR" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "8826d609", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "C:\\Users\\nicol\\AppData\\Local\\Temp\\ipykernel_18700\\2149615011.py:26: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.\n", + " collected_data = pd.concat([collected_data, df], axis=0)\n" + ] + }, + { + "data": { + "image/png": "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/fr1JUlnzpzRxIkTZbFYFBMTo4iICO3Zs0fSvQ80N2/eVK5cuczazVarlZFCwH/IarXq7t275uSF3333nXr16iWbzaaePXuqTZs2mjt3ruLj43X06FEzTGjYsKGef/55TZ8+PSubDzxW7PeuHj16qGrVqlq5cqW6d++uRo0aKS4uTt7e3nJyctLFixd19epVSff6aLFixVSxYkXFxcVJojY68GfZP8MtWLBATZo00RtvvKG5c+cqOTlZ0r1nzcqVK2eaV6dSpUoKDAzU4sWLdfv27UyDEoGsxl8j8BDnz59/YJmTk5OsVqtOnDihLVu2mA9WktS1a1cVKlTIrF8pSc2bN9fTTz+trVu3Zjre22+/rWXLlmnnzp1/70UAjymbzfZA/eVjx47pueee0+DBg3XixAldvHhRJ0+e1KpVqyRJbdu21bZt2/TLL7/I2dlZNptNXl5eevrpp7Vr1y5FRERkxaUAj4U/9rfhw4crKSlJfn5+KlOmjA4fPixJat++vdzd3bVixQpJUqtWrbR//37t3r07073v5MmT2r59uyRGDgH3e1ht16ioKL344otauHChJGn8+PHy8fFRwYIFzW2qVaumOnXqaPbs2bp+/bq5/P3339eiRYvMuXgA/O7+yXntJSFiYmK0detWRUVFafv27dqxY4ecnJw0YsQIpaSkqHXr1oqOjlZUVJS5b2Jioo4dO6bKlSs/6ssAHiv33+eOHj2qpk2batSoUWrQoIEKFCigzz//XO+//74k6fnnn9fNmzf1888/m/u4u7vL2dlZ165d07Rp0x56XCCrEKID91m7dq2eeuopnTp1KtPy2NhYNWzYUDVr1tTgwYNVv359LV++XNK9Wuf169fXmTNndPr0aUn3Ri20adNGp06dylROokePHmrevLkqVqz4yK4JeFzYbDZZrVY5OTnp7t27Onv2rCRp48aNun37tvbv36+QkBBFRkbqmWee0Zo1a3Tp0iU1a9ZMFSpU0HvvvafLly/LarXq8OHDunv3rpKTkxUdHf3Ahykgp7v/FVtJmjlzplJSUnT58mUdPXpU33zzjSSpfv36euaZZxQdHa1Tp06padOmatCggfr06aONGzfqzp07iouL04QJE7Rp0yZlZGQwUg/4/+x9zT6a7o+vs/v6+ipXrlz6+eefdefOHVWpUkWBgYE6fvy4OamoJP3rX//S+vXrMwXmLVu2VKtWrR7RVQCPh/sn57127Zqk30ePL1q0SL6+vqpWrZpsNpuKFy+usWPH6tixY1q3bp26d++uYsWKaciQIZo2bZo2bdqkUaNGqVGjRnx+Axz441wDKSkp+vjjj3Xs2DFdv35dVapU0cGDBzVixAhNnz5dlSpV0pw5c/Trr7/queee0/PPP6/ly5dr3bp1ku7NQ3D9+nXVq1dPc+fONY8LZAf8JQJ/YBiGGjRooBIlSmjBggXm8mPHjundd99V9erVtX//fu3YsUMvv/yyPvnkE+3fv18uLi5q3LixUlNT9f3335v7vfbaa8qTJ4++++47JSYmSroXVsyfP19ly5Z95NcHZHdWq1UJCQnq0aOHypYtq8mTJ+vu3buKjY3Vs88+Ky8vL0mSt7e3evfurevXryssLExOTk6aOXOmoqOj9eKLL2rgwIEKCgpS27ZttWzZMk2cODHTaFkgp5k1a5ZZ69zOHp4vX75cPXv21K5du/Tuu+8qIiJCCQkJ5qu19kC8WbNmSklJ0dKlSyVJX3/9tQoWLKgOHTqoSZMmqlatmi5duqQuXbow0SFyvISEBC1btkzS730tIyND7777rkaOHGkGDiVKlFCTJk105MgRbdy4UdK9OXQOHTqU6a3F+vXrq2LFigoJCdHNmzcl3btnrlixwpxsFMDvYfn06dNVvnx5BQcHa9q0aeY9LVeuXLpx44bc3NzMwD0oKEhWq1W7du2Su7u7Zs+erRYtWmjJkiXq1KmTChQooC+++EI+Pj5Zdl1AdvPH0eFWq1W3bt3Sjh071KZNG4WHh+v27duqXr26+vfvLzc3N3300UcqUaKEDh48qLx582r06NGSpGHDhqlMmTJq2bKlOnbsKH9/f928eVNff/21jh8/nlWXBzwUITrw/6Wnp8tiscjd3V3vvPOOZs6cqYSEBElSxYoV1bZtW3366ad66qmnFBkZqR9++EEHDx7U7NmzJUlNmzZV2bJlFRkZaQbmuXLlUnBwsPz9/TNNBgXg4WJjYxUYGKjz589r3rx5atOmjXLlyqWUlBTdvHlTqamp5gNbcHCw7ty5ozVr1ujmzZuqW7euvvvuO7Vq1UrHjx/X4MGDNWjQINWqVUsSpSWQcxmGoWXLlunixYuZlm/evFmVKlXSwIED5enpqStXrshms6lBgwZ6+eWXNWnSJKWnp5sBYOPGjVWxYkVFRUXp/PnzKlmypL799lutWbNGb775pg4fPqzw8HD5+vpmxWUC2cqqVavUvn17Xb9+XYsXL9Y//vEPZWRkKDU1Vfv37880yXzr1q3l5uamjRs3ymazqXHjxipTpozWrl2bqSTgBx98oLx588rFxSXTue4vgQbkVOnp6dq8ebOmTJmisLAwDRw4UNWrV1doaKh69eol6V7Jzf379+vkyZNycXFRWlqaJKlYsWLmG5DFihXT1KlTtWrVKp05c0YLFy5U4cKFeZYE9Ptnqj+ODj99+rQaNWqkIUOG6KmnntKPP/6oGjVqyN3dXU899ZTGjh2rH374QaGhoYqJidG7776rb7/91hypHhoaqq+//lre3t4aOnSoVq5cqdKlS8tisXCPQ/ZiADBlZGQY8+bNM7Zt22a4ubkZoaGhmdbHxcUZdevWNUqXLm2MGTPG6N+/v1GuXDnjxIkThmEYxvz5841nn33W+OSTT7Ki+cBjb/DgwUazZs3M3202m2EYhrF161bDycnJ2LlzZ6bta9SoYZQoUcJYuHChw2PajwHkRBkZGQ7XtWnTxujVq9dD1/3444+G1Wo1oqOjMx1n6dKlRrVq1Yzx48c7PF96evr/2Grg8XP/vSYtLc3w8vIy8uXLZ+TPn9+YPHmyYRiGERMTY9SoUcP48MMPM20/dOhQo0aNGsbWrVsNwzCMFStWGEWKFPm39zcgp8rIyHjo/e27774zihQpYvj6+hqLFy82l69du9bw8PAwVq5caaSnpxu1atUymjRpYly9etUwDMM4ceKEUaVKFWPBggUPPV96evq/vZ8COcH9z3fx8fFGSEiIufztt982nJ2djVmzZhmGce8+aBiGcfr0acPLy8tYvny5uW/Xrl0Ni8ViDBs2zOH56HPIjhiJjhzJeMgogrCwMOXPn18zZszQ/PnzlZqaqtmzZ5t19CRp8uTJKlKkiLZs2aLRo0fr2WefVXx8vDkZVJMmTeTv788oPOC/5OrqqgMHDmjbtm2aPHmyJkyYoD59+sjDw0PVqlXTxIkTtXXrVknS+vXrVaxYMfn5+SkyMtKseW7v3/ZRC9RlRk5lGIY5SsgwDH322WcaNWqUJOnIkSOKi4szJ0n7+eefdfz4cR09elR37txRvXr19MILL2jKlClKTU2V1WrVoUOH9OqrryogIOChdWHt56OUC3ISwzAeOgfAl19+qaSkJBmGoUOHDmnIkCGSJH9/fz377LOKjo7Wvn37zO1btmyp48ePa8OGDZLujU4vW7ascuXK9cA5GZWHnM5qtcpqteqXX37JVPYoODhYtWvX1qVLl1SjRg1zeb169dS6dWt9/PHHcnJy0owZM3TkyBHVrl1bXbp0Ub169VSoUCE1btz4oedzcnKiJjNyPPvz3bp16/T5559r+PDhmjp1qlmKrFOnTnr66ad15swZSb/PS+Du7i5XV1fzLf89e/ZIule67P556KQH5xEBshP+KpGjZGRkyGazZfqgY7PZdPfuXS1YsEBBQUHatWuXJk2apG+//VZHjhzRqlWrJElXr17V3r17VbJkSZUqVUqSdPz4cRUuXFizZ89WQkKCihYtqi+//FLBwcFZcXnAY69///4qV66c2rZtq5iYGO3Zs0e7du1S//791a5dO929e1ft2rVTQECA2rRpo549e6pEiRL65ZdflJKSIun30JwgDzmV/Yski8Wi8+fPq3fv3uZkTZ988omuXLmiChUqqGrVqvrss8/09NNPa8yYMXr55ZfVpEkTDR8+XJI0btw4ff/992rXrp2KFi2qN998U2lpaZo9e7aCgoIeOC9fWCEnsdlsMgxDFotFTk5OunHjhubOnWt+0durVy/duHFDkrRkyRJzH0nq3LmzEhMTtXbtWvN40dHR8vT01Pr1681Q8KefflLr1q0fODf3N+Q0f5wc3jAM3bp1Sx07dlTVqlXVunVr9e3bVydOnJDFYlFQUJCKFCmiiIgIcx8PDw81bNhQycnJio+Pl5+fn9atW6eBAwfK2dlZ06ZN05YtW1SkSJGsuDzgsXD16lW1atVK7du319mzZ3Xp0iX9+uuvWrlypSQpMDBQ/v7+Onr0aKZa5p6enurVq5eGDh2q6tWrKzAwUMWKFdPkyZO1fPnyB87DPQ7ZmcV42JBc4Al3/PhxxcXFqWbNmipYsKDu3r0rb29vrVixQq+88oq5Xffu3RUbG6uYmBjdvXtX/fv3165duzRu3DjFxsZq37596ty5s5566inVqlXL/DAF4L+XlJSkPHny6ObNm/L29pbFYpGbm5uWLl2qxo0ba/Xq1bpw4YJatWolX19fde3aVYcOHVJMTAz9DzmWzWaT1Wo1/3vmzBmdP39e48ePV548eTRixAiVKlVK5cuX14ABA/T+++/r+vXr2rhxo7y8vOTk5KR8+fIpOjpaw4YN05kzZ1SoUCGFhYVpx44dql69ul5//fUHzgfkdHfv3tXixYs1ePBgFSlSRBcuXFD//v01aNAg+fj4aPDgwVq1apViYmIyTUo4ePBgfffdd+rcubO8vb21fft2NW/eXKVKlco0GjYjI4NAATnW/X//+/btU+nSpXXw4EEtWLBAo0eP1sqVKzV//nz5+fkpNDRUt2/f1j/+8Q/lz59fc+bMkbe3tyRp6NChioiIUGRkpPLmzfunzgfkNPYviP/YD+zPfNu2bVObNm20Zs0a802PTp066ciRI5o8ebJefPFFhYWF6aOPPtJbb72lPn36ZDr2mjVrFBcXp1atWumpp54yl9Pv8FjJihoyQFaJiYkxGjZsaOTPn9+oWLGi4evrayxZssS4cuWK4e/vb3z00UeGYfxev+unn34yLBaLsXLlSsMwDGPnzp1Ghw4dDF9fX6N69epGZGRkll0L8KS7e/euYRiGMXPmTKNWrVrGwYMHzXX2PrpgwQKjXLlymWrsATldWlqaUbRoUaNs2bJGnz59MtWwHDlypFGyZEmzDuz9Ro0aZQQFBRk3btx46HrqnSOnetjf/siRI41OnToZb7zxhrF582YjLS3NmD59ulGiRAnjm2++MQzDMM6dO2fkypXrgVrLFy5cMMaNG2f4+/sbVatW5T4G/Bt79uwxypYta3h4eBh16tQx6tSpY8ydO9dcP2nSJKNixYrG7t27DcMwjGnTphn58+c3OnXqZOzYscPYsWOH8dxzzxlDhgx56PG5tyEn+mPNcZvNlun31NRU4/Lly5m2nzRpklGjRg0jISHBXBYdHW3Uq1fP6Nevn7ksKCjIaN++vXH27FnDMB7ev5hnAI8rhhAhx4iLi9OECRNUvnx5HTlyRPv27VPPnj31z3/+UydOnNBzzz2n6Oho3bx506zfdevWLUn36lrevXtXNWvW1IIFCxQVFaW9e/eqfv36WXlJwBMpNTVVS5cuVc+ePVWhQgWNHTtWvXv3VpUqVSRJ169f14QJE1SuXDkNHDhQb775plq1apXFrQYeLeO+Fwn37dungQMH6tChQ3J2dtbgwYN16tQpFStWTE5OTmYZib59++ratWv67rvvJN3rT+Hh4Vq7dq1ee+01ffHFF2rRooW8vLwyHd++PyOFkNPYa7Pa//b/2Pd8fX21aNEi/fLLL2rYsKGcnZ3Vr18/Va5cWWvWrNHZs2dVokQJderUSf/617909uxZJSYmas6cOSpWrJiGDx+utWvX6sCBA2rTps0Dxwdykof97W/cuFHt2rXTtm3b1KtXL+3evVu+vr7asWOH+VwoSQ0bNlTRokU1Z84cSVLHjh1Vvnx5bdq0SVOmTNEbb7yhSpUqmeXK7se9DTnNpEmT1LlzZ/N3i8Uiq9WqxMRE9ezZU5UqVVJwcLDGjRun+Ph4Sfdqm1+8eFHp6elmfw0ICJCPj4+2bt2qvXv3SpKaN2+u7du36+eff5b0YP8y/v9Id95oxOOIv1rkGK6urmrXrp1mzZqlQoUKadWqVVq2bJl++eUXbd++XbVq1VJCQoImT55s3hQOHz6sdu3amR+EpHsTXBQvXjwLrwR4srm6uqp06dLKkyePxowZo4sXL2Z6yPPx8VFgYKBGjx6txMREDRs2jIcw5Dj3ly46fvy41q9fb07u9Oabb+rpp5/W5cuXdevWLbPUS5EiRdS1a1dNmzZNqampkqSVK1dq2LBhcnFx0bZt2/TWW289cD76GHIq+4f/pUuXqn379ho+fLjZz7p3767nnntOnp6eunnzprlP9+7ddeDAAW3fvl2SNGHCBN28edOs1bxu3TrduHFDNptNBQsWlPR7zWfKkiGnsdlsD52cV5LS0tK0YsUKzZw5U+3atVPFihX14YcfKiAgQJMnTza3e/bZZ9WgQQNFR0fr5MmTyp8/v15++WVVq1ZNwcHBiouL08KFC+Xj48MXVYCk4sWLa8mSJTp69Ki5bNOmTWrcuLEuXLigqVOnqm3btoqIiNC4ceMkSV26dNG1a9e0Zs2aTP01X758io+P14oVK8zt5s+fr7Zt2z703Nzn8DijJjpynBMnTqh37946e/asBg0apPj4eC1dulRLly7V8ePH1bVrV9WuXVvJycm6fv26Nm/erGLFiilPnjxZ3XQgxzDum18gPT3dfEMEyGnu7w+GYejbb79V7ty5zYms09PT9cYbb+i3334zJwsdMGCAoqOjNWPGDPn7+5vHOX36tMqWLauvvvpK3bp105kzZ1SwYEHzPmefgJsPOYB048YNvf7669qzZ4+6deumo0eP6uDBgxo2bJh69Oih6dOn6/PPP9fMmTP14osvmvs1aNBA5cqV0wcffKCSJUvqyJEjOnTokGrUqKEyZcpk4RUB2VNiYqJ+/PFHBQQEqGDBgnJzc9OVK1fUo0cPXbp0STt27JB0L1j/+uuv9d577+ngwYNmbeVt27apT58+qlWrlmbPnq0zZ86oQ4cOqlu3riZPniyLxcLzJHK8P/aBZ555Rg0aNNCMGTMkST///LO+++47TZw4UZJ08uRJtWvXTgkJCVq8eLEaNGigd999V2vWrNHHH3+sdu3a6ciRIxozZoyke3OEfP7553r66aez5NqAR4FhRcgx7N8XffXVV3JxcdGWLVvUt29fvfrqqzp//rx27NihN954Qzt37tQrr7yi1157TXFxcSpfvjwBOvCI2cM7ewkJPvAgJ7LZbGag/Ue3b9/W+PHj9f333+vGjRuS7vWR5s2b69dff9XatWslSQMGDNCvv/6qH3/8UWlpabJYLDIMQ6VLl1avXr2UK1cuSfdKUuTJk8c8n9VqJUBHjmIfCfsw4eHhunPnjg4dOqSPP/5YYWFhKlq0qEaMGKHk5GT17NlTkrRhwwYlJyeb+7Vp00bh4eHm6+2VK1dWu3btVKZMGbOvAZDOnz+v119/3fzS6aWXXtJ7770n6d4I186dO2vnzp2Ki4uTJLm4uKh+/foqV65cptHofn5+6tatm4KCgiTdu7c1aNBAERER2rRpkySeJwF7Hzh//rwGDBigxYsX6/Tp05KkF154QWPGjNHp06f1j3/8QzVr1lTx4sVVqlQpzZo1S5I0efJk1apVS3379tULL7yg6tWrq27dumratKmOHj3Kmx544hGiI8ewWCyy2WxasGCBGjRooFKlSkmSVq9erVy5cpn1vl544QX985//1PDhw+Xm5pa1jQZyOEpIICezWq2yWq06e/asZs2apQMHDujGjRvKkyePunbtqpMnT+rHH380t2/ZsqUKFy6syMhIXblyRaVKldJLL72kNWvW6MiRI5mOPXPmTHXo0OGh5wNyGqvVKicnJyUlJSk+Pj5TwH3o0CFVqVJF+fPn18iRI1W4cGElJSVp4sSJcnV1laurqzp27KgtW7bo4MGD5n49evTQJ598oldeeSXTuQzDoK8hx7CXwzQMwyxZ9EeJiYmaMGGCUlNTFRUVpf3792v69OmaPn26fvrpJ1mtVjVs2FB+fn5mSQlJKl26tDp06KAZM2bo+vXrkiQPDw8NHDhQzZo1M4O8jh07qlKlSpTiBP6/NWvWqHz58mrZsqXWr1+vmzdvmmVYpHuZyciRI+Xh4aGoqCiFh4erQoUK2r59u/bv3y83NzeFhoYqLCxMnTp10s8//6z+/fvLYrHo8uXL5gAN4EnF0xtyFKvVqgYNGig0NFRz5szRqFGjtG/fPu3Zs0dffvml+TogAABZLTExUa+//rqqVq2q+fPnq02bNmrXrp3S0tLUpUsXWSwWbd68Wbdv35YkeXl56YUXXtC2bdu0detWSVLv3r0VHR2tU6dOScpch5KRsMipMjIyzJDNMAzduXNHffr0UdGiRRUUFKS+fftKutdHrly5osjISHl5eWnLli36/PPPFRsbq27dupnHe+edd3T69GmtXLlSKSkpkiQ3Nze9/vrrD4TlvOWBnGLSpElq1aqVjhw5IovFYo6ATUpKMrfx9vZWjRo19MUXX6hq1arauXOnQkJCzP3T09Pl4+Ojfv36acmSJbp8+bKke/PnNGrUSD179jTvgXZ/fIOrWrVqWrRokZ555plHcclAtuDo7aobN25o3Lhxaty4sSIiItS1a1e1aNFCU6dOVUJCgiQpLi5Oq1evVseOHVW5cmXZbDZdv35dCQkJ+vjjjyVJefPmVWBgoPr06SM/Pz9FRkZq6tSpGjp0qIoUKfJIrxV41AjRkeNMnz5dderUUUhIiDZu3KgBAwaofPny5qt/AAD83a5cuSLp4aPz7OFeeHi4zp07pz179ig6OloHDx5UZGSkhg4dqgIFCqh58+bau3evOXmhdK/W5e3bt7Vo0SIlJSXJ399fe/bsUatWrR5oAyNhkdPYvzhycnKSxWLR+fPnlZ6ertOnT+v27dvavHmzOnfurLlz52rWrFmyWq0KCAjQr7/+quHDhys6Olpt27aVs7OzLl26pCFDhujUqVPKly+fRo4cqVdeeYW3GJHj2e9h5cuXl4eHh1avXi1Jmj9/vl544QW1adNGy5cvV3JyslxcXNSxY0c5OzurU6dO6tixo8qWLavFixdr7dq1ioqKkiQ1b95cRYsW1fDhw83z+Pn5KTQ0VCVKlMh0fu5tyMnsZfmcnJyUkpJifvEkSTt37lRsbKzee+89+fj4qGXLlpo2bZru3LmjRYsWSbpXMrBq1aqKjIzU3bt3NXfuXOXOnVvjxo3Tiy++aPbv3377TUuXLlXVqlUVFBSkhg0basCAAVlxycAjRVEw5Dj58+fXN998o+vXr6tgwYJZ3RwAQA7z6quvKl++fJo0aZIKFixojs5LTU2Vq6urOYIuJCREY8eOVbly5fTdd99pzpw5cnJyUunSpSVJr7/+un788UdNnjxZJUuW1J07d3ThwgW1bdvW3MZms6lSpUpZc6FANmMP1w4dOqSePXvq6NGjqlmzpq5du6b33ntPtWrVUq1atXT16lWNGzdOb7zxhtq1a6eZM2cqOjpae/fuVdmyZZWQkKCJEycqPj7eHFU7ePDgrLw0IFuwj4B1cXFRs2bNFB4erqioKBUqVEiLFi1Su3bttGvXLo0aNUoJCQl655135ObmpsWLFysuLk5Lly5V7dq1dfbsWXl5eWnRokWqV6+eChcurAEDBujixYsPnDMjI0NOTk5ZcLVA9mO1WnX58mWNGjVKGzduVPHixVWxYkV9+eWXyps3r/LmzWsG4enp6fL19dXrr7+u0NBQ9ezZU9WrV1fz5s01Y8YMLVmyRKmpqZozZ445kb1d7ty5VatWLQ0aNEgdOnSgjAtyDL6mRY7k7OxMgA4AeKTsr9bWrFlTMTExOnbsmCRp6tSpqlOnjt555x3t27fP3LZw4cJaunSp/P391a9fP/n7++vUqVN69913Jd2bNK1///66fv26WrRooYCAAPn6+mrq1Kl6//335enpyYg84A8iIyM1e/ZshYaG6sUXX9Q333wjd3d3xcbGysfHx9yuX79+un79ur755ht5eXlp8uTJun37tpo2bapmzZqpevXqunTpkqZOnSo/Pz9zP0okISezj4B1cXHR7du3lZqaqldffVVXrlzR5MmT1b17dw0ZMkTz58/Xiy++qKVLl+rcuXOSpO+//17e3t6qXbu2JCk6Olo+Pj76+uuvdeDAAUlS//79NWHChAfOS4AO/G7nzp1q3ry5zp07p1mzZmnAgAHavHmzRowYod9++03VqlXTwoULJf3edypUqKDTp0/rhx9+UK5cuTRixAiFh4dr7ty5SkxMNAN0wzAyTRxapkwZdevWjQAdOYrFYPpcAACAv51hGLJYLOaHmG7duskwDK1du1aNGjXSmjVrdPfuXS1cuFBVq1ZV3759tXTpUg0bNkwDBgyQu7u7JOnUqVOKjY1Vu3btJEnXrl3Trl27FBAQYAaB9g86hOjIaQzDUEZGhvmGxx+NHz9eI0aMkL+/vzZs2CAfHx+z5vL777+vIUOGyNXVVdK9ID0yMlIxMTHKnTu3kpKSdOrUKe3bt08NGjSQr6+veT7qnAP3JCQkaNSoUVq9erU6dOigUaNGqU+fPlq3bp1OnTql/PnzS5JWr16tcePGqWXLlho+fLjmzJmjXr16KSQkRDabTd9++61CQkJ07do1vfrqq+bxubcB/96WLVt06tQpvf3225KkX3/9Va+88opu3rypmTNnas2aNdq2bZvWrl1r1i/v3bu35s+fr2LFiunAgQPm86Zdenr6Q++pQE7E3QcAAOARsFgsysjIUO7cudW2bVt9+eWX2rx5s2bPnq2PPvpI27Ztk8Vi0TfffCOLxaI6deqoePHiKly4sPmB5vbt25o7d65WrFhhlpHIly+fmjVrJh8fH3PCRIvFQsiAHMk+gWFaWppWrVql2NhY8y2QwYMHq3LlyvL29jZrlzs7O6t379766quvzFGxkjRo0CAdOXJEy5YtkyR5enrKz89P3bp1k6+vr1m2ggAduCc2NlaBgYE6f/68FixYoJYtW8rHx0ctWrRQ0aJFFRYWZm5br149VatWTRs2bNCNGzf09ttvq0+fPlqyZIlCQ0PVq1cvBQYGZgrQJXFvA/4PNWrUUJcuXXT69Gm1bt1azzzzjPz9/ZWcnKzNmzcrKChI+fLl0/PPP68PP/xQnTt3VlxcnGJjY7VkyZIHAnRJBOjAH3AHAgAAeETsH/6HDBmitLQ0JScnq0yZMpIkd3d3dezYUVFRUfr555/Vtm1btWrVSr169dIrr7yid999V+XLl1d4eLi6d+8uT0/PTMc2DMOcMBHIqdLT0zVmzBj5+Pho1KhRatq0qXr16qXDhw/L1dVVwcHB+vXXX7V3715zn1GjRik+Pl6bNm0yA/fSpUurV69eD50o1D4SljISwO++/fZblStXTuvWrVPjxo3VsGFDSVKTJk1UqVIlrV+/Xnfv3pV070upJk2a6M6dO5ozZ46ke/OAhIeHKy4uTm+++WaWXQfwOLN/Sfyvf/1LGRkZ2rZtm/mmx/Lly5U/f36tWLFCHTp00IYNG3T79m1Nnz5dlSpVkr+/f1Y3H8j2CNEBAAAeEYvFIpvNpnz58qlNmzZKT0/X4cOHzfU9evRQamqqwsPDZbFY9K9//Uvz58+Xv7+/EhMTFRISov379+vll19+6LGBnMIedt9v27ZtCgsL07x587Rr1y6FhIQoLi5O/fr1kyS98847unXrlrZu3WoGennz5lWXLl00YcIEnT9/3jzWzJkz1b59+wfOQV8DHuTq6qoDBw5o27Ztmjx5ssaPH6/evXvr3Llzqlu3ri5fvqwffvjB3L5u3boqXbq0bt++be5vn7MqPT09S64BeBLExMTo+++/V7du3fTMM8/o7t272r9/v+Lj4/XFF1/I3d1dkyZNUkREhL7//ntVqlRJVHkG/hxqogMAAPyP/pN6kfbJ106dOqX69etr6NCh6tu3r7n/+++/rx9//FFjx45V48aNH3qMjIwMRsECklJTU8065tK9ki1r167V0aNHzWXr169Xy5Yt9eOPP6p27drq27ev9u7dqxkzZpgTg8bHx6tt27b6/vvvVbx4cXNfe38F8O9dunRJ7du317FjxxQYGCjDMHTmzBnZbDb16NFDERERcnJy0pIlS8x9kpOTlTdv3ixsNfDkuXv3rvLnz69hw4apS5cu+umnn3Ts2DHlzp1bHh4eGjhwoLmtfUJs7nPAn0NPAQAA+C/ZxyLYA/BTp04pJSXlgfV/ZLVaZbPZVKZMGTVo0MB8fd2ua9euunz5spKTkx/Y1z76lgAdOY39b9/epyIiItSwYUN17dpVCxYskHTvy6zU1FRVrFgxUz98/vnnVa9ePYWGhkq6F7T/8ssvWrNmjdLS0iRJTz31lHbt2pUpQJcIFoA/q3Dhwlq1apUuXLig2bNna9myZdq9e7cOHz6sUqVKqXLlyoqPj9fx48fNffLmzSvDMMwgD8D/LleuXBoxYoTmzZun5557ToMHD1a1atU0cuTITAG6dO8ex30O+PPoLQAAAP8le1mHGTNm6KmnnlKrVq308ssvKzw8PNN6RwYPHqyTJ08qMjLSDAcrVKig3bt3Kzg4+IHtCc+R09j7hf1v32Kx6OLFi/rggw/MUeTdunXT2rVr5ezsrEKFCuny5cvavXu3eYx8+fIpb9688vb2VmpqqkqXLq369etnOr4dZSSA/56np6esVqvc3d1lsVgUGhqq6tWrq0qVKhoyZIi2bt2qChUqZNqHyUKBv97w4cO1adMmrVixQpcvX9Zrr70m6d7Ic4pRAP89yrkAAAD8CY7KOixYsEAffvihhg4dqsqVK2vKlCk6cOCAQkJCFBwc7LD0imEYslgsqlu3rooXL65Zs2bJx8fn/zwfkBPY+4fdtGnT9N1336lRo0a6du2aqlSpoh49eui3337TO++8o507d+rQoUM6d+6cWrRoofr16+uTTz6Rq6urrl27plq1aql///7q06ePpP+sBBOAPyc1NVVhYWFat26doqOjlZSUpEmTJqlz585mn+beBjx63POAvwYhOgAAwL/xsHqR9jDAMAz5+/vr+eef16xZsyRJ169f1+DBgxUdHZ2pLvP97OH6hQsXVLRoUUIF4D7p6ek6ePCgwsPDtWHDBlWpUkW7d+/W3r17FR4erhYtWkiSTpw4oSpVqmjRokVq27atPv/8c82cOVO5cuVS69attWLFCrm6umrx4sUqU6aMeXzDMGQYBn0P+AvFxMRo/vz5qlOnjjp06JDVzQEA4C9DiA4AAPAnxMXF6fvvv5e/v7+qVKmiwoUL6+rVqwoODlbTpk01YsQISfdC9507d+qll17S2rVrVa9evYeOvLt/VBCThQKZjRkzRlOmTFGNGjU0e/ZsVaxYUWfOnFGFChU0ZcoU9e7dWy4uLpKk9u3b6+zZs9q5c6ckae/evfrmm2904MAB1atXTyNGjGAUHvAI3P8WCSNgAQBPCoZdAAAAOGAYhm7evKkePXqoatWqWrlypbp3765GjRopLi5O3t7ecnJy0sWLF3X16lVJ90asFytWTBUrVjQnDLUH6IZhmDWX7aFCTExMFlwZkH3Zx/i88847KliwoH777Tc9/fTTkiRfX1917NhR8+bN0+XLl819hg0bptjYWK1bt06S5Ofnp5CQEG3ZskWjR4+Ws7OzOTkpgL+PPUC3v8VFgA4AeFIQogMAAOjBCQXto+liYmK0detWRUVFafv27dqxY4ecnJw0YsQIpaSkqHXr1oqOjlZUVJS5b2Jioo4dO6bKlStLujfKPCMjQxaLxQwUJk+erEKFCqlr166MQgf+wF43OX/+/AoKClJqaqoOHz5srh87dqz27dunn376yQzc/fz85O/vr02bNmU6jnSv/xmGQR8DHiHKJAEAnjTc2QAAQI5mD+Hs4fa1a9ck/R7ALVq0SL6+vqpWrZpsNpuKFy+usWPH6tixY1q3bp26d++uYsWKaciQIZo2bZo2bdqkUaNGqVGjRqpYsaIkycnJSU5OTrp165aGDRumAgUKaPHixfrkk0+0e/duwj3kCPd/UfVn9OvXT1euXNH27dvN/Z966im9+uqrCg0N1aVLl8xtN2zYoJCQkAeO4eTklKm8BAAAAPCfIkQHAAA5mj1cmz59usqXL6/g4GBNmzZN586dkyTlypVLN27ckJubmxm4BwUFyWq1ateuXXJ3d9fs2bPVvHlzLVmyRJ06dVKBAgU0Z84c+fj4SLo3EnbEiBHy9PRUTEyMvv76a8XGxqpz587KnTt31lw48Ijc/0XVqVOnlJKS8sD6P7JarbLZbCpTpowaNGig8PBwszySJI0YMULbtm3TxYsXzWWenp6Sfi8jAQAAAPxVmFgUAADkWOnp6YqMjNS+ffu0du1atW3bVseOHdPGjRtVunRprVmzRuHh4WrdurWOHDmismXLKi0tTS4uLmrevLny5MmjZcuWmcdLTEyUh4eH3N3dJf1eEubu3bsKCwtTkSJF1LBhw6y6XCBLzZgxQxMnTpSPj4/y5cunQYMGqWXLlg63t0/Iu3fvXgUHB2vYsGHq1auX+cVXYmKiChYs+KiaDwAAgByMEB0AADzx7CNT76/R+v3336tv377KnTu3xo0bpw4dOkiS1q1bp7Zt22rRokV65ZVXFBgYqDx58mjJkiXKly+f4uLi1KpVKw0bNkydOnV64Hz2+ufUhEVOYw++77dgwQJ9+OGHGjp0qCpXrqwpU6bowIEDCgkJUXBwsMN5AexfRNWtW1fFixfXrFmz5OPjYy5nPgEAAAA8CoToAAAgx/jll1908eJFBQQESLoX0LVp00br16/X3r17Vb58eUnS7du31adPHx07dky7du3S3r171bJlS+XJk0c1a9bUxo0bVblyZS1atEhFihTJyksCsoWHfVFlD7oNw5C/v7+ef/55zZo1S5J0/fp1DR48WNHR0Tp69KjD49pD8gsXLqho0aJ8MQUAAIAswVMoAAB44vxxAkPDMHTr1i117NhRVatWVevWrdW3b1+dOHFCFotFQUFBKlKkiCIiIsx9PDw81LBhQyUnJys+Pl5+fn5at26dBg4cKGdnZ02bNk1btmwhQAf+P6vVKqvVqri4OE2cOFFbtmzR5cuXJd2brNfDw0MlS5Y0t/fy8tJbb72lc+fO6aeffpL08Frm9vE+xYsXl9VqVUZGxiO4GgAAACAzQnQAAPDEsAds9gkM9+3bp+TkZO3fv1+enp46fvy4Ro4cqdjYWH366aeSpFatWqlUqVKKiIjQjRs3zGMdPnxYuXPnNicHrVq1qnr27KmvvvpKbdu2zXQ+ICczDEM3b95Ujx49VLVqVa1cuVLdu3dXo0aNFBcXJ29vbzk5OenixYu6evWqpHuhe7FixVSxYkVzwlD7KHPDMMwvwux9OSYmJguuDAAAALiHEB0AADwx7LWR9+7dq3Llyqlu3bpq3ry5hg0bpoCAABUtWlS9e/dW69atFRkZqdjYWHl4eCgoKEgRERF65513FB0drejoaEVERKhRo0bKmzfvA+exh+fUYkZO88e3PKTfS7bExMRo69atioqK0vbt27Vjxw45OTlpxIgRSklJUevWrRUdHa2oqChz38TERB07dkyVK1eWdK9f2ecTsIfnkydPVqFChdS1a1fqnwMAACDLEKIDAIDH0sOmddm4caPatWunbdu2qVevXtq9e7d8fX21Y8cOValSxdyuYcOGKlq0qObMmSNJ6tixo8qXL69NmzZpypQpeuONN1SpUiUNHz78oecmyENOY+9v9nD72rVrkiSLxSJJWrRokXx9fVWtWjXZbDYVL15cY8eO1bFjx7Ru3Tp1795dxYoV05AhQzRt2jRt2rRJo0aNUqNGjVSxYkVJ9/qVk5OTbt26pWHDhqlAgQJavHixPvnkE+3evZt+BwAAgCxDiA4AAB4rNpvNHK16v7S0NK1YsUIzZ85Uu3btVLFiRX344YcKCAjQ5MmTze2effZZNWjQQNHR0Tp58qTy58+vl19+WdWqVVNwcLDi4uK0cOFC+fj4PDSsB3Iae3+bPn26ypcvr+DgYE2bNk3nzp2TJOXKlUs3btyQm5ub2WeCgoJktVq1a9cuubu7a/bs2WrevLmWLFmiTp06qUCBApozZ45ZMikjI0MjRoyQp6enYmJi9PXXXys2NladO3dW7ty5s+bCAQAAABGiAwCAx4zVapWTk5MSExO1YsUKnT9/XikpKZKkmjVr6tVXX5WPj485iWHJkiXVpUsXrV+/XvHx8ZIkFxcXNWrUSJLMcL1z585KSkrSvn37zBAwPT39oWE9kJOkp6dr8+bNmjJlisLCwjRw4EBVr15doaGh6tWrlySpefPm2r9/v06ePCkXFxelpaVJkooVK6azZ8+aP0+bNk2rVq3SmTNntHDhQhUpUsTsb2lpaapSpYq2bNmiiIgI/eMf/zDrpAMAAABZiadSAADwWDl//rxef/11lStXTh988IFeeuklvffee5KkfPnyqXPnztq5c6c5WaGLi4vq16+vcuXKZRqN7ufnp27duikoKEiS5OvrqwYNGigiIkKbNm2S9HvpCiAnsNlsstlsDyz/4Ycf1LlzZ82cOVM9evRQ7969NXXqVIWEhOjHH3/UqlWr1Lx5c/n7+6tPnz66du2aXFxcFBcXp3Pnzukf//hHpuMVLFhQ7u7uysjIkM1mM7+oypUrlzp06KCGDRs+kusFAAAA/ixCdAAAkG3YR6wahvHABIbSvYkIJ0yYoNTUVEVFRWn//v2aPn26pk+frp9++klWq1UNGzaUn5+fxo0bZ+5XunRpdejQQTNmzND169clSR4eHho4cKCaNWtmjoTt2LGjKlWqpOLFi//9FwtkM1arVVarVb/88ot27txpLg8ODlbt2rV16dIl1ahRw1xer149tW7dWh9//LGcnJw0Y8YMHTlyRLVr11aXLl1Ur149FSpUSI0bN37o+ZycnBhpDgAAgMcCT60AACBbmDRpklq1aqUjR47IYrGYo8CTkpLMbby9vVWjRg198cUXqlq1qnbu3KmQkBBz//T0dPn4+Khfv35asmSJLl++LElydXVVo0aN1LNnT92+fTvTef84ErZatWpatGiRnnnmmUdxyUCW+uMXVYZh6NatW+rYsaOqVq2q1q1bq2/fvjpx4oQsFouCgoJUpEgRRUREmPt4eHioYcOGSk5OVnx8vPz8/LRu3ToNHDhQzs7OmjZtmrZs2aIiRYpkxeUBAAAAfxlCdAAAkKXso8DLly8vDw8PrV69WpI0f/58vfDCC2rTpo2WL1+u5ORkubi4qGPHjnJ2dlanTp3UsWNHlS1bVosXL9batWsVFRUl6V595qJFi2r48OHmefz8/BQaGqoSJUpkOj8jYZHTZGRkSPq9XNG+ffuUnJys/fv3y9PTU8ePH9fIkSMVGxurTz/9VJLUqlUrlSpVShEREbpx44Z5rMOHDyt37tzm5KBVq1ZVz5499dVXX6lt27aZzgcAAAA8rvjUCAAAsozNZjNHwzZr1kzly5dXVFSU5s2bp4ULF6pdu3by8vLSqFGjNG/ePEmSm5ubli9frri4OC1dulRTp05VQECAvLy8tGjRImVkZKhw4cIaMGCAChQo8MA5CfSQ0zk5OUmS9u7dq3Llyqlu3bpq3ry5hg0bpoCAABUtWlS9e/dW69atFRkZqdjYWHl4eCgoKEgRERF65513FB0drejoaEVERKhRo0bKmzfvA+ex9zX7+QAAAIDHlcWwD/8CAAB4hGw2mzkK/Pbt27LZbNq6davGjx+vpKQkjRw5Uh06dNCdO3c0dOhQ7d+/X99++61Kliypli1bKjU1VRs2bJAkffvttxoxYoTOnj2r2NhY+fn5ZeWlAdmGYRhmuSK7jRs36ssvv1RgYKBSU1PVokULjRs3TosWLdLPP/8sf39/SdLu3bv13nvvqVy5cpo9e7auXr2qli1b6vTp06pTp44OHDigmjVravr06eZIdAAAAOBJxEh0AACQJaxWqxISEtSjRw+VLVtWo0ePVmBgoEqVKqULFy7opZdekiS5u7urWbNmysjI0IIFCyRJLVu21KZNm/TZZ58pJCREISEhmj9/vsLCwjIF6IZhyGazZcn1AVnJZrMpIyPjgQBdktLS0rRixQrNnDlT7dq1U8WKFfXhhx8qICBAkydPNrd79tln1aBBA0VHR+vkyZPKnz+/Xn75ZVWrVk3BwcGKi4vTwoUL5ePjI8blAAAA4ElGiA4AALJEbGysAgMDdf78eS1YsEAtW7aUj4+PWrRooaJFiyosLMzctl69eqpWrZo2bNigGzdu6O2331afPn20ZMkShYaGqlevXgoMDNSrr76a6RwWi4Wa58iRrFarnJyclJiYqBUrVuj8+fNKSUmRJNWsWVOvvvqqfHx8VLJkSUlSyZIl1aVLF61fv17x8fGSJBcXFzVq1EiSzHC9c+fOSkpK0r59+8zgPD09/aFhPQAAAPCk4FMlAADIEt9++63KlSundevWqXHjxmrYsKEkqUmTJqpUqZLWr1+vu3fvSpI8PT3VpEkT3blzR3PmzJEkhYSEKDw8XHFxcXrzzTez7DqA7Oj8+fN6/fXXVa5cOX3wwQd66aWX9N5770mS8uXLp86dO2vnzp2Ki4uTdC8wr1+/vsqVK5dpNLqfn5+6deumoKAgSZKvr68aNGigiIgIbdq0SdLvE5QCAAAATypCdAAAkCVcXV114MABbdu2TZMnT9b48ePVu3dvnTt3TnXr1tXly5f1ww8/mNvXrVtXpUuX1u3bt839CxYsKEnm5KRATnD27FlJ98oVPexvPzExURMmTFBqaqqioqK0f/9+TZ8+XdOnT9dPP/0kq9Wqhg0bys/PT+PGjTP3K126tDp06KAZM2bo+vXrkiQPDw8NHDhQzZo1M0eed+zYUZUqVVLx4sX//osFAAAAsgEmFgUAAFni0qVLat++vY4dO6bAwEAZhqEzZ87IZrOpR48eioiIkJOTk5YsWWLuk5ycrLx582Zhq4GsNWnSJC1ZskQLFy5U5cqVzeVJSUny9PSUdK/m+cKFCxUcHCxvb29FRUVpwoQJWrdunZo3b66VK1fK2dlZc+fOVe/evRUfH69ChQpJkvbu3as5c+ZoxIgRKlGihHn8P04EDAAAAOQ0PAkDAIAsUbhwYa1atUoXLlzQ7NmztWzZMu3evVuHDx9WqVKlVLlyZcXHx+v48ePmPnnz5mWyUORI9nEv5cuXl4eHh1avXi1Jmj9/vl544QW1adNGy5cvV3JyslxcXNSxY0c5OzurU6dO6tixo8qWLavFixdr7dq1ioqKkiQ1b95cRYsW1fDhw83z+Pn5KTQ0NFOALokAHQAAADkaT8MAACDLeHp6ymq1yt3dXRaLRaGhoapevbqqVKmiIUOGaOvWrapQoUKmfZgsFDmNzWYzy7Y0a9ZM5cuXV1RUlObNm6eFCxeqXbt28vLy0qhRozRv3jxJkpubm5YvX664uDgtXbpUU6dOVUBAgLy8vLRo0SJlZGSocOHCGjBggAoUKPDAOTMyMh7lJQIAAADZGuVcAABAlklNTVVYWJjWrVun6OhoJSUladKkSercubMMw5DFYqGMBHK0P/793759WzabTVu3btX48eOVlJSkkSNHqkOHDrpz546GDh2q/fv369tvv1XJkiXVsmVLpaamasOGDZLuTeY7YsQInT17VrGxsfLz88vKSwMAAAAeG3wiBQAAWcbV1VWlS5dWnjx5NGbMGF28eFGdO3eWdG/EuUQZCeRsVqtVCQkJ6tGjh8qWLavRo0crMDBQpUqV0oULF/TSSy9Jktzd3dWsWTNlZGRowYIFkqSWLVtq06ZN+uyzzxQSEqKQkBDNnz9fYWFhmQJ0SiQBAAAA/55zVjcAAADkbP7+/nr++efN39PT0+XszCMKIEmxsbFq3769ypYtqwULFsjJyUk+Pj5q0aKF9u3bp7CwML311luSpHr16ik8PFwbNmxQnz599Pbbb+vAgQNasmSJrl69qn/+858KDAx84BwWi8X80goAAADAgyjnAgAAsgXKtgAPGjJkiI4cOaK1a9dmWn7p0iX17t1bVqtVCxcuVK5cuSRJK1as0MSJE9W2bVu99957Sk1N1c2bN1WwYMGsaD4AAADwROCTKgAAyBYI0IEHubq66sCBA9q2bZsmT56s8ePHq3fv3jp37pzq1q2ry5cv64cffjC3r1u3rkqXLq3bt2+b+9sDdPvkpAAAAAD+M4xEBwAAALKpS5cuqX379jp27JgCAwNlGIbOnDkjm82mHj16KCIiQk5OTlqyZIm5T3JysvLmzZuFrQYAAACeLBQcBQAAALKpwoULa9WqVcqTJ49u3rwpb29vWSwWubm5qVSpUqpcubI2bdqk48ePq0KFCpKkvHnzyjAMGYbBGx4AAADAX4CR6AAAAMBjICUlRW5ubgoNDdW8efO0YsUKeXt7y9XVVW5ublndPAAAAOCJxUh0AAAAIBtLTU1VWFiY1q1bp+joaCUlJWnSpEkqWbKkDMOQxWJhYl4AAADgb0SIDgAAAGRjrq6uKl26tPLkyaMxY8aoQ4cO5jqLxSKJiXkBAACAvxPlXAAAAIBszj7i3C49PV3OzoyHAQAAAB4FQnQAAADgMUHZFgAAAODRI0QHAAAAAAAAAMABhrEAAAAAAAAAAOAAIToAAAAAAAAAAA4QogMAAAAAAAAA4AAhOgAAAAAAAAAADhCiAwAAAAAAAADgACE6AAAAAAAAAAAOEKIDAAAAOUipUqX02Wef/U/HGDNmjKpXr/6XtAcAAADI7iyGYRhZ3QgAAAAAf6158+ZpwIABunHjRqbliYmJ8vDwkLu7+3997Fu3biklJUX58+f/H1sJAAAAZH/OWd0AAAAAAI9OwYIF/+dj5MmTR3ny5PkLWvNwqampcnV1/duODwAAAPwnKOcCAAAAZEMpKSl69913VahQIeXKlUt169ZVTEyMJCkyMlIWi0Vr1qxRtWrVlCtXLgUEBOjQoUPm+m7duunmzZuyWCyyWCwaM2aMpAfLuVgsFs2ePVuvvPKK3N3dValSJUVHR+vkyZNq0KCBPDw8VLt2bZ06dcrc5/5yLvZz/PFfqVKlzPWHDh1Ss2bNlCdPHhUuXFidO3fWlStXzPUNGjRQv379NGDAABUoUEBNmzb96/+HAgAAAP8lQnQAAAAgG3rvvff03Xffaf78+dqzZ4/Kli2rpk2b6tq1a+Y2Q4cO1SeffKKYmBgVLFhQLVu2VFpammrXrq3PPvtMnp6eunjxoi5evKghQ4Y4PNdHH32kN954Q/v27VPFihXVsWNH9ezZU++//752794twzDUr18/h/vbz3Hx4kWdPHlSZcuWVb169SRJN27cUKNGjeTn56fdu3dr/fr1unTpktq1a5fpGPPnz5erq6u2b9+uWbNm/Y//9wAAAIC/DuVcAAAAgGzm9u3bCg0N1bx589SsWTNJ0hdffKFNmzbpq6++0vPPPy9JGj16tJo0aSLpXghdokQJhYWFqV27dvLy8pLFYlGRIkX+z/N169bNDLWHDRumWrVqadSoUeaI8P79+6tbt24O97efwzAMtW7dWl5eXpo9e7Yk6fPPP5efn58+/vhjc/uvv/5aJUuW1IkTJ1S+fHlJUrly5TRp0qT/6P8TAAAA8CgwEh0AAADIZk6dOqW0tDTVqVPHXObi4qIXXnhBR48eNZfVqlXL/DlfvnyqUKFCpvV/VrVq1cyfCxcuLEmqWrVqpmV3795VUlLSvz3O8OHDFR0drVWrVil37tySpP3792vr1q1mHfU8efKoYsWK5nXa1ahR4z9uNwAAAPAoMBIdAAAAyOFcXFzMny0Wi8NlNpvN4TEWLlyoTz/9VJGRkSpevLi5/NatW2rZsqUmTpz4wD5FixY1f/bw8PjvLwAAAAD4GzESHQAAAMhmypQpY9YHt0tLS1NMTIwqV65sLtu5c6f58/Xr13XixAlVqlRJkuTq6qqMjIxH0t7o6Gi99dZbmj17tgICAjKte+6553T48GGVKlVKZcuWzfSP4BwAAACPA0J0AAAAIJvx8PBQ7969NXToUK1fv15HjhxRjx49dOfOHb355pvmdmPHjtWWLVt06NAhde3aVQUKFFBQUJAkqVSpUrp165a2bNmiK1eu6M6dO39LWxMSEhQcHKz27duradOmSkhIUEJCghITEyVJffv21bVr19ShQwfFxMTo1KlT2rBhg7p16/bIQn4AAADgf0GIDgAAAGRDEyZMUOvWrdW5c2c999xzOnnypDZs2CAfH59M2/Tv3181atRQQkKCwsPD5erqKkmqXbu2evXqpddee00FCxb82ybtPHbsmC5duqT58+eraNGi5j/75KfFihXT9u3blZGRoZdeeklVq1bVgAED5O3tLauVjyMAAADI/iyGYRhZ3QgAAAAAf15kZKQaNmyo69evy9vbO6ubAwAAADzRGPoBAAAAAAAAAIADhOgAAAAAAAAAADhAORcAAAAAAAAAABxgJDoAAAAAAAAAAA4QogMAAAAAAAAA4AAhOgAAAAAAAAAADhCiAwAAAAAAAADgACE6AAAAAAAAAAAOEKIDAAAAAAAAAOAAIToAAAAAAAAAAA4QogMAAAAAAAAA4AAhOgAAAAAAAAAADvw/l0KC7tW7Ro0AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers = [\"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\", \"adam\", \"sgd\", \"adagrad\"] \n", + "dataset = \"cifar\"\n", + "save_figure = True\n", + "title = \"Comparison between total runtimes on CIFAR\"\n", + "save_path = f\"diagrams/run_times_shampoo_total_{dataset}.png\"\n", + "\n", + "create_diagram_total_runtime(optimizers, dataset, save_figure, title, save_path)" + ] + }, + { + "cell_type": "markdown", + "id": "caf934b4", + "metadata": {}, + "source": [ + "## Experiment 9: Time for a single step" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "9ba360f5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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125a90P+/PlVq1Ytff7554qJiUkxdzIbG5sUsc2YMSPFb0g8XELE2dlZxYsXN8dXoEAB1alTRx9//HGqX8ol37+P8qj7KrPmSU3Dhg0VGxurpUuXmtvu3r2rGTNmyNnZWbVr185QrJLMX2ik9jPnaejatatOnjypVatWpVpeKzQ0VC4uLnr//fd1586dFNszcj6PHTummzdvqlq1av8oZgAAkD2wIh0AAPxnRURE6Pr163r55ZcVEBCg27dva/fu3Vq6dKm8vb3Vvn37fzxHwYIF1bNnT02aNElNmzZV/fr1FRUVpe+++07u7u5WV2fmyJFDn376qRo0aKBSpUqpffv2KlKkiH777Tdt27ZNLi4u+vbbb9Pc/+TJk3rxxRfVvHlzlSxZUjlz5tSqVat08eJFtWzZ0tyvfPnymj17tsaMGaPixYurQIECeuGFF9SvXz+tWbNGjRs3Vrt27VS+fHklJibq8OHD+vrrr3Xu3DmLGsXFixdXjRo19Pbbb+vWrVuaOnWq8uXLl2YZkWQvvfSSihUrpg4dOqhfv36ysbHR559/rvz586dIeEr3y4906NBB+/btU8GCBfX555/r4sWLmjdvnrlP//79tXDhQtWvX189e/aUk5OTPvnkE/MK22TVqlVTnjx51LZtW73zzjsymUxauHBhql+wlC9fXkuXLlXv3r1VsWJFOTs7q0mTJmrTpo2WLVumrl27atu2bapevbru3bun48ePa9myZdq4caP5txxSk9a4T0JGP9OHNWvWTKNHj9aOHTv00ksvpdh+9uxZ83W+Z88effnll3rjjTdUtmxZSfe/NBkzZowGDRqkc+fOKSwsTLlz59bZs2e1atUqde7cWX379tXWrVvVo0cPvf766/L399fdu3e1cOFC2djYWNSzLl++vL7//ntNnjxZhQsXlo+PT6q18ZNNnz5dNWrU0PPPP6/OnTvLx8dH586d07p16xQZGSlJaty4sRYuXChXV1eVLFlSe/bs0ffff698+fJZjFWyZEnVqVNH5cuXV968efXLL7/o66+/Vo8ePcx9Zs2apRo1aigoKEidOnXSc889p4sXL2rPnj363//+p6ioqEd+Zum5rzJjntR07txZH3/8sdq1a6f9+/fL29tbX3/9tXbt2qWpU6cqd+7cGY61fPnykqR33nlHoaGhsrGxsfh59CStW7dOX3zx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vb0tft1q8uTJCgoKkpOTkzw9PdWtWzddu3bNYp+5c+fK09NTjo6OevnllzV58uQUda5mz54tX19f2draqkSJElq4cKHFdpPJpE8//VQvv/yyHB0d5efnpzVr1pi337t3Tx06dJCPj48cHBxUokQJTZs2LUPHf+/ePX399ddq0qSJue3o0aM6c+aMPvroI1WpUkVeXl6qXr26xowZoypVqljs/+uvv6pu3bpydHRU2bJltWfPHvO2P//8U61atVKRIkXk6OiooKAgffXVVxb716lTRxEREerVq5fy5MmjggULau7cuUpMTFT79u2VO3duFS9eXN999515n+3bt8tkMmndunUqU6aM7O3tVaVKFR05csRi7BUrVqhUqVKys7OTt7d3is/277//Vnh4uPLkySNHR0c1aNDA/BeGtMTExKhZs2ZydnaWi4uLmjdvrosXL5q3jxgxQsHBwVq4cKG8vb3l6uqqli1b6urVq6mON2rUKJUuXTpFe3BwsMWv2zVp0kRLliyxGhsAAACAfyY9NYofVTN4//79qlGjhlxcXPTcc8/piy+++Ecx3blzRz169FCePHmUN29eRURE6O7du+btERER8vT0lIuLi4oUKaJevXrp9u3b/2hOZAyJUPwTEyZMULly5VSrVq1MGzMuLk4tW7bUe++9Z/7MFi5cqFq1aql58+aysbFR6dKl1b59ey1evDjVMa5duyYnJyflzPl/xT/c3NxS5Dc++ugjXbt2Tfv27TPnWCQpV65cunr1qqKjo2UYhvz9/eXp6Zlpx4jMQSI9G3r77bcfq8bW1atXVb9+fR05ckSbN2+2+BWVzNKvXz/t2LFD33zzjTZt2qTt27frwIEDVvfJkSOHpk+frqNHj2rBggXaunWr+vfvb96+a9cude3aVT179lRkZKTq1aunsWPHWoyxatUq9ezZU3369NGRI0fUpUsXtW/fXtu2bbPoN3LkSDVv3lyHDh1Sw4YN1bp1a/3111+SpKSkJBUtWlTLly/XsWPHNGzYML333ntatmxZuo//0KFDio+PV4UKFcxt+fPnV44cOfT111/r3r17VvcfPHiw+vbtq8jISPn7+6tVq1bmv9TdvHlT5cuX17p163TkyBF17txZbdq00c8//2wxxoIFC+Tu7q6ff/5ZERERevvtt/X666+rWrVqOnDggF566SW1adMmRYmg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6NEDDx8+/CiNIiIiIiIiIiIiIiLKLbIdpDds2BBBQUEZlh8+fBj169f/KI0iIiIiIiIiIiIiIsotsj21S5s2bTB27FiEhISgdu3aAIDjx49j48aNmDp1KrZt26ZWloiIiIiIiIiIiIgoL8t2kD5w4EAAwJIlS7BkyZJM1wGASqVCSkrKBzaPiIiIiIiIiIiIiEizsh2kp6amfop2EBERERERERERERHlStmeI52IiIiIiIiIiIiIKD9hkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZ+E9B+s2bN+Hj44Nu3brh0aNHAIBdu3bh4sWLH7VxRERERERERERERESalu0g/Z9//kHlypURHByMv/76C7GxsQCAs2fPYvLkyR+9gUREREREREREREREmpTtIH3cuHGYPn06AgMDoa+vryxv3Lgxjh8//lEbR0RERERERERERESkadkO0s+fP4/27dtnWF60aFE8efLkozSKiIiIiIiIiIiIiCi3yHaQbmFhgYcPH2ZYfubMGRQvXvyjNIqIiIiIiIiIiIiIKLfIdpDetWtXjB07FhEREVCpVEhNTcWRI0cwatQo9OzZ81O0kYiIiIiIiIiIiIhIY7IdpM+YMQNOTk6wt7dHbGwsKlSogM8++wx16tSBj4/Pp2gjEREREREREREREZHGFMjuBvr6+li2bBkmTZqECxcuIDY2Fq6urnB0dPwU7SMiIiIiIiIiIiIi0qhsB+npSpQogRIlSnzMthARERERERERERER5TrZDtJFBH/++ScOHDiAR48eITU1VW39X3/99dEaR0RERERERERERESkadkO0ocPH45ffvkFjRo1grW1NVQq1adoFxERERERERERERFRrpDtIP23337DX3/9hVatWn2K9hARERERERERERER5So62d3A3NwcpUuX/hRtISIiIiIiIiIiIiLKdbIdpE+ZMgVTp05FXFzcp2gPEREREREREREREVGuku2pXTp37ow//vgDRYsWRalSpaCnp6e2/vTp0x+tcUREREREREREREREmpbtIL1Xr14ICQlBjx49eLNRIiIiIiIiIiIiItJ62Q7Sd+zYgd27d6NevXqfoj1ERERERERERERERLlKtudIt7e3h5mZ2adoCxERERERERERERFRrpPtIH3u3LkYM2YM7ty58wmaQ0RERERERERERESUu2R7apcePXrg1atXKFOmDIyMjDLcbDQqKuqjNY6IiIiIiIiIiIiISNOyHaTPnz//EzSDiIiIiIiIiIiIiCh3ynaQ3qtXr0/RDiIiIiIiIiIiIiKiXOm9gvSYmBjlBqMxMTFZluWNSImIiIiIiIiIiIhIm7xXkG5paYmHDx+iaNGisLCwgEqlylBGRKBSqZCSkvLRG0lEREREREREREREpCnvFaTv378fhQoVAgAcOHDgkzaIiIiIiIiIiIiIiCg3ea8gvUGDBsr/HRwcYG9vn2FUuojg3r17H7d1REREREREREREREQappPdDRwcHPD48eMMy6OiouDg4PBRGkVERERERERERERElFtkO0hPnwv9bbGxsTA0NMx2AxYvXoxSpUrB0NAQbm5uOHHiRJblN27cCCcnJxgaGqJy5crYuXNnhvb5+vrC1tYWBQsWhIeHB65fv65W5vvvv0edOnVgZGQECwuLTOtRqVQZHuvWrct2/4iIiIiIiIiIiIgob3uvqV0AYMSIEQDSAuZJkybByMhIWZeSkoLg4GC4uLhkq/L169djxIgR8PPzg5ubG+bPn4/mzZvj6tWrKFq0aIbyR48eRbdu3TBz5kx8/vnn8Pf3R7t27XD69GlUqlQJADB79mz89NNPWLNmDRwcHDBp0iQ0b94cly5dUoL+xMREdOrUCe7u7lixYsU727dq1Sq0aNFCef6u0J2IiIiIiIiIiIiItNd7B+lnzpwBkDbi+/z589DX11fW6evro2rVqhg1alS2Kp83bx68vb3h5eUFAPDz88OOHTuwcuVKjBs3LkP5BQsWoEWLFhg9ejQA4LvvvkNgYCAWLVoEPz8/iAjmz58PHx8ftG3bFgDw66+/wtraGlu2bEHXrl0BAFOnTgUArF69Osv2WVhYwMbGJlt9IiIiIiIiIiIiIiLt8t5B+oEDBwAAXl5eWLBgAczMzD6o4sTERISEhGD8+PHKMh0dHXh4eODYsWOZbnPs2DFlZHy65s2bY8uWLQCA27dvIyIiAh4eHsp6c3NzuLm54dixY0qQ/r4GDRqEvn37onTp0ujfvz+8vLwyndaGiIiIiIiIiIiIiLTXewfp6VatWvVRKn7y5AlSUlJgbW2tttza2hpXrlzJdJuIiIhMy0dERCjr05e9q8z7mjZtGho3bgwjIyPs2bMHAwcORGxsLIYOHfrObRISEpCQkKA8j4mJyVadRERERERERERERJT7ZDtIzy8mTZqk/N/V1RUvX77EnDlzsgzSZ86cqUwbQ0RERERERERERETaQUdTFVtZWUFXVxeRkZFqyyMjI985L7mNjU2W5dP/zc4+35ebmxvu37+vNuL8bePHj0d0dLTyuHfv3gfVSURERERERERERESap7EgXV9fH9WrV8e+ffuUZampqdi3bx/c3d0z3cbd3V2tPAAEBgYq5R0cHGBjY6NWJiYmBsHBwe/c5/sKDQ2FpaUlDAwM3lnGwMAAZmZmag8iIiIiIiIiIiIiyts0OrXLiBEj0KtXL9SoUQO1atXC/Pnz8fLlS3h5eQEAevbsieLFi2PmzJkAgGHDhqFBgwaYO3cuWrdujXXr1uHUqVNYunQpAEClUmH48OGYPn06HB0d4eDggEmTJqFYsWJo166dUm9YWBiioqIQFhaGlJQUhIaGAgDKli0LExMT/P3334iMjETt2rVhaGiIwMBAzJgxA6NGjcrR14eIiIiIiIiIiIiINE+jQXqXLl3w+PFj+Pr6IiIiAi4uLggICFBuFhoWFgYdndeD5uvUqQN/f3/4+PhgwoQJcHR0xJYtW1CpUiWlzJgxY/Dy5Uv069cPz58/R7169RAQEABDQ0OljK+vL9asWaM8d3V1BQAcOHAADRs2hJ6eHhYvXoxvv/0WIoKyZcti3rx58Pb2/tQvCRERERERERERERHlMioREU03QlvFxMTA3Nwc0dHRnOaFiIiIiIiIPo0p5ppuAX0sU6JzvMrLTs45Xid9Gs5XLud4nYv778/xOunTGOTXWNNN0Ijs5LcamyOdiIiIiIiIiIiIiCgvYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWdB4kL548WKUKlUKhoaGcHNzw4kTJ7Isv3HjRjg5OcHQ0BCVK1fGzp071daLCHx9fWFra4uCBQvCw8MD169fVyvz/fffo06dOjAyMoKFhUWm9YSFhaF169YwMjJC0aJFMXr0aCQnJ39QX4mIiIiIiIiIiIgo79FokL5+/XqMGDECkydPxunTp1G1alU0b94cjx49yrT80aNH0a1bN/Tp0wdnzpxBu3bt0K5dO1y4cEEpM3v2bPz000/w8/NDcHAwjI2N0bx5c8THxytlEhMT0alTJwwYMCDTelJSUtC6dWskJibi6NGjWLNmDVavXg1fX9+P+wIQERERERERERERUa6nEhHRVOVubm6oWbMmFi1aBABITU2Fvb09hgwZgnHjxmUo36VLF7x8+RLbt29XltWuXRsuLi7w8/ODiKBYsWIYOXIkRo0aBQCIjo6GtbU1Vq9eja5du6rtb/Xq1Rg+fDieP3+utnzXrl34/PPP8eDBA1hbWwMA/Pz8MHbsWDx+/Bj6+vrv1b+YmBiYm5sjOjoaZmZm7/26EBEREREREb23KeaabgF9LFOic7zKy07OOV4nfRrOVy7neJ2L++/P8Trp0xjk11jTTdCI7OS3GhuRnpiYiJCQEHh4eLxujI4OPDw8cOzYsUy3OXbsmFp5AGjevLlS/vbt24iIiFArY25uDjc3t3fu8131VK5cWQnR0+uJiYnBxYsX33s/RERERERERERERJT3FdBUxU+ePEFKSopaWA0A1tbWuHLlSqbbREREZFo+IiJCWZ++7F1l3se76nmzjswkJCQgISFBeR4TE/PedRIRERERERERERFR7qTxm41qk5kzZ8Lc3Fx52Nvba7pJRERERERERERERPSBNBakW1lZQVdXF5GRkWrLIyMjYWNjk+k2NjY2WZZP/zc7+8xOPW/WkZnx48cjOjpaedy7d++96yQiIiIiIiIiIiKi3EljQbq+vj6qV6+Offv2KctSU1Oxb98+uLu7Z7qNu7u7WnkACAwMVMo7ODjAxsZGrUxMTAyCg4Pfuc931XP+/Hk8evRIrR4zMzNUqFDhndsZGBjAzMxM7UFEREREREREREREeZvG5kgHgBEjRqBXr16oUaMGatWqhfnz5+Ply5fw8vICAPTs2RPFixfHzJkzAQDDhg1DgwYNMHfuXLRu3Rrr1q3DqVOnsHTpUgCASqXC8OHDMX36dDg6OsLBwQGTJk1CsWLF0K5dO6XesLAwREVFISwsDCkpKQgNDQUAlC1bFiYmJmjWrBkqVKiAr776CrNnz0ZERAR8fHwwaNAgGBgY5OhrRERERERERERERESapdEgvUuXLnj8+DF8fX0REREBFxcXBAQEKDf2DAsLg47O60HzderUgb+/P3x8fDBhwgQ4Ojpiy5YtqFSpklJmzJgxePnyJfr164fnz5+jXr16CAgIgKGhoVLG19cXa9asUZ67uroCAA4cOICGDRtCV1cX27dvx4ABA+Du7g5jY2P06tUL06ZN+9QvCRERERERERERERHlMioREU03QlvFxMTA3Nwc0dHRnOaFiIiIiIiIPo0p5ppuAX0sU6JzvMrLTs45Xid9Gs5XLud4nYv778/xOunTGOTXWNNN0Ijs5LcamyOdiIiIiIiIiIiIiCgvYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWWCQTkRERERERERERESUBQbpRERERERERERERERZYJBORERERERERERERJQFBulERERERERERERERFlgkE5ERERERERERERElAUG6UREREREREREREREWcgVQfrixYtRqlQpGBoaws3NDSdOnMiy/MaNG+Hk5ARDQ0NUrlwZO3fuVFsvIvD19YWtrS0KFiwIDw8PXL9+Xa1MVFQUPD09YWZmBgsLC/Tp0wexsbHK+jt37kClUmV4HD9+/ON1nIiIiIiIiIiIiIhyPY0H6evXr8eIESMwefJknD59GlWrVkXz5s3x6NGjTMsfPXoU3bp1Q58+fXDmzBm0a9cO7dq1w4ULF5Qys2fPxk8//QQ/Pz8EBwfD2NgYzZs3R3x8vFLG09MTFy9eRGBgILZv345Dhw6hX79+Gerbu3cvHj58qDyqV6/+8V8EIiIiIiIiIiIiIsq1NB6kz5s3D97e3vDy8kKFChXg5+cHIyMjrFy5MtPyCxYsQIsWLTB69Gg4Ozvju+++Q7Vq1bBo0SIAaaPR58+fDx8fH7Rt2xZVqlTBr7/+igcPHmDLli0AgMuXLyMgIADLly+Hm5sb6tWrh4ULF2LdunV48OCB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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "optimizers_to_experiment = [\"adam\", \"shampoo\", \"shampoo_momentum\", \"shampoo_heuristic\", \"adagrad\", \"sgd\"]\n", + "csv_path = \"metrics/update_step_times.csv\"\n", + "title = \"Single-step update time (best-case per optimizer)\"\n", + "save_figure = True\n", + "save_path = \"diagrams/update_step_times_single_bar.png\"\n", + "\n", + "create_diagram_single_step_times(\n", + " optimizers_to_experiment=optimizers_to_experiment,\n", + " csv_path=csv_path,\n", + " title=title,\n", + " save_figure=save_figure,\n", + " save_path=save_path,\n", + " log_y=False\n", + ")\n" ] } ], diff --git a/scripts/staging/shampoo_optimizer/diagrams/convergence_times_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/convergence_times_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..6d3c3ca7024188517b9eac736011824e0c5a1269 GIT binary patch literal 51797 zcmeFaXH=Ehwk=APWoaquw#)%AU_uZ@5hZFFm#8Q?qXLpaL~>YKmQV_cE))e34CE*h zB!g0bB$2ozs~|`Q0g?RrK&Wk$LZhBx`;++h_94vu-J z>Hj|jO9dHlaOA#Z?B6SIu^+We7t9XSLe#d&slO=ya7k?H&x(8A&7J)7 z#YO*0m^S(6Q`7(Z<^R1h|Gf$R-;c-c+qpU=PfuqWYaEQfwrF!;Q{nyUB+hrt-%{=R z<)btu)b9Sk!Ey1>#SAVEjz;A}?%WFQ+!FFBHs*;539m{^<=(%4zg)^GB~l~#Y}@Bk z2b7{T%kgfvZ{9rBCVSDiqx!i_rt_TAo`xI~jUzW=&%OUm*rZB+`mBXFJv=;SE#mY4 z^hrNLBe^1F{p!_w*LyH}n+mtPAG^Qv*m{pm)j9Xg(hSURTwSmsPe&-kuD{hfyumN0 zyRT2aHpw#XLW^vh)(#F18~%^aEOC(>1KKSm0d`+1^**+@hu`253w0R$oMhV@xYMM{ ze{6KvsH-m3TS)g>M7~2XE;mp;vAtpZwMMF)LZ-{SyS!Gj8ki+%j>9_~zMd-&QlWTcDaAuxhM{3~GcPK=vtBelyd-(bJ9ru%rxH5Z5=;=)7p`IKbg_yI2 z$=rH>{W*WutXa>NZq`am$?8o=*tKZ0;!(BdrscQR9$L6^rB6rnauHLyyu7WPqeE>` z-a8Cfs##g?TU9O7Tv8`9r!aAat&+r3+*qbg4B)TxIRks6zsOlGh8 z(W7oRR_^}%w)0@Yt5%qP8->rx%I;6kY!?0QdQEz`{w7*KePO0 zJSN+1*%O1(zz`Wf$)T?e?z%!=1r}!Mqw#5jP514Gvd)wS9#e=jEEjvdVZ(;a+qRvY zy_o+59`nK_OM)Klb2*zFuanENdw*p~K~Z(A!INjY`GzB3dnmfT(<+ul_G#S30&cbEO zHd$L+;}wV39(22Tdg)>#?8yjkVIw}~*vNTHO9g%X-~;#nIEuZ59W1M^?vr0afSinwx5Gfz4+a(;kw9eUtcGesH2KuiV?Dh5C5sIt}Y*M ztRkTNbXC5$>k`3Gto5v!GjGPk#Qc8wvhexF!@4>;hgmmxq#}QxKKlsEc^;3cY5!K^ zw_61?Qdq8a#Th9iTbU##CvP^ZOR;MW35sQoj}3ho`@zT4}RVBmz!e$(B#2YkIx5>$T=?@VkBg{{7D% z^Mgb!TXiZO(;NoR_m1{=cb|}#zx}1N_Wnm@rU(w6#Bh5I%YUf9?SB0eFLqxMcc)jx z$+Y24u{k`F>Ntj;E-o&KM{EO&Q$ax}dnT$hZq7f@qlC4xKxObo5UnDW$Ls8)E zTV;)eb9)6;V^3h~4t?neTcT;R7XgZ0{N&IgE-sU~SGETP1%)v@)_?BrFF(ZN=>O); zi8)-NJMxd`As#(yjU-SR~TYjs7ZA^qP2sk)gmvu zFYO_Cmkueh4AZn=o5shFVci}?pN-nNND^`Sc)+QUh_wss$`Zs^1255tL5jX8V0wJb#2 zToBPR3>#{rfWWbRE_2Ig@HjlAQ;E;6O0qQaY`byeMg<=7Lfj%!5Eh}ZW^S|ThlU1) zpyOPWwxUwMcvIZOjx)+-t!okvQ;Jg5(eZ!nD-ni>Pj_(S=uvqa8=Lsl%<%|MoK!=k zx+4rmv`uZ`vHKTV%Qm@o-Qt$83&u%mDq?&p32^=J;R7OA2-1N{%GkRXmksOFQYjta z$!+H4-LDj>e)96qb7JlK4f{K5)hI;&x?q9uxpx`-mQrr^l1NRKpWf`nDpdSAe=TLI z=|BCX+&6Q)>Au;*MT;mr={LT*W!L<`I@YXS5`ncXGPSa;EaXXDs=YL;&aO?M*FN^B zmyor?bzba0Lu?Vd-a?V`I3p!Qu00a=U*xe>@ENP;Adp0;J+HvJ??CW!W!L2o4*(oo zb8{<`ks9?^(sESrbNu3^Y1gujOU#Nte_&Wj;+o&0`#Via278ot?Hf;{$;F&XzZH;jw&b*oB z<>g=d*;<7S6n<9cDnB=UU>hzMbljP@pNb~}&iNFXa z(;RG{U~?>PU~$fvF+&?zK_&7SYuklSCweUqWY?}=-*jW(0~Wy9-QAsD-GGqU)U!_7 z6IZi(pR-P)=lrz?l~+E&0X(R$|B0*U)}~&~*M3s<;-22#hF^z=SKQgGw9`FxxHH)~ zIXT%JYwXHSM*?fE>K%=FVs zouf~^_;DXA+M@Y5z5HuW1O0XnPJ-G>qk+!agOTcq1r5uVEz4dYBYt}S!Gp{3=O#;_ zGU4BU|J@C7@qUi;TrR`ILP=H~hUNu0cvY|bq{cP6*x2*eA3j{QcI(zR3FqGbo>fy{ zwBpxa&wTy*bt!XfFv!*z`NaA1<;#?X$JO&+T%Li)gWord?!2R0yQKpo-S0E$ZF~Ak zWmdGbv@AB-USy7dy%uTcAnr(@NlsRlQ&2F9zhQg_fB?VL0-^EsNU z=>suocpNwl$j=@89a_AU?D^E<+tbxUZX>^&R6aWpbo@b{)mXD1v!XIauRm{dlyV=_ z{n|BI;Nh5Bjrtfp8P{fdQ>OdE2 zSjw2UURA*-*CNZPwX3IlV4E8u-Lu9F!(y=QQu|7z2^-lu;G22(MWP1xEnLE{{Lsyf z^T44)YCi0uA{iO+oUur=9#>KM+&W)YLSrNr=uGoi%5Ug0Hx3!N6v@6DLl1 zYO*&ghM#!<@=EzLUFqI?z?ezaU8d2Uz#?7g z7MWc4KQs{YA$?3d{XWj|(Vm{3#qLMV&CQX#g`dk1)T@qWi0?^)wr^XtarP!4fl|IIYNHu-N3^ljm!NE;9 zFGGlZ0@>r-q0-|^l#v;9#Kwxo%ID6V%cq%=kfn?)wl4Sax-8Z@>ApJqu1%XZ)IRLBM#(X}}@vyPaBKezhFMMgQWJ<`Ob`iGytiuI}1Dt**S4UP^ z`QGk75nhvbn$`q&cb~I(Yll3r%=ys` zz=@_BV7!8^dS+hxoCkxmFSXZnv?&E1T^6C9D2udtD>-?X85)3eGErW9Ze%RlqOSbQ zFTaS|e+fU3J`4o4Sy)&>Qc|+A;!9DKoK;t)7IRc#-I3d`KKp)c9%#x;Xr>Fid^uBt zX@1AH4hK_5j2RSFd-2?>oDy&^^Y#vLCYW9}%;)Fi?cc)T0etaUfhT3SMWyE4n5$X8;##j3z+5EuUXE30F0JNxXjCi{aU4hCUgw)VA@dP~^H(|OaC+_Ghh^gB)bg0NxPVOCkV z%JxMYPwb(h5sxayVd-|%-%|5ICth3`WZTVn~}^e8+J@2GwtLlvtYZgHD8tpguk-C8Tenfc)^*Lcbj?AJFq zcZKgO9@KO!S%1KFu|hHUR_p;hjH9?k&p!4Hl`m~<8H?uE3U+o$Su+AXH=g{>`Siw( z8$U%pa=QBKI^NNKS6^mW&t4s0J?trK@uK>4r*VSSxc`hZ*2AgbFG^7HgzUCx3Py}m zeR}E=Ah~W&9skM4e<((2Ms#;~56>-~Hf>s*S$!IR*VVO$ZYYP_FC9qPfAv>d7?c{F zOF!uOvU75p(_Y(0rI*Dx+dGb*4L$MbcRu;xhX4=vrF5);8SJ`J2cBt+2RkX2g(^rR z`;qsft{jp#t`;KJH_&iLs}kR^;gLfZC|0kErDlTjLCt`dCaPSB0#5zNd+~K1~m|))UOkMk|U zo+tSRwZmAi?RI9Rx!}Nuy|rz_A_4-1BNDeMl$}3!?&;TM-Gsxgp!WZH?#f^+oYA|C zOO;~>UgCkpp-31O9mAT$0`Cf&)u|VW_a5~;gxGlj*wA%A#|khz0Q7>!@IV(EaiBA7 zG4PkvH~i)E>$)TQ72ztBTZu&Zjtiu63K7T>j1o&eM0Op*CPOapXff(^s>w}ilN3sW zWR$Q(1w4=S1P~)sqt9Hyk@asa4>Q94R86`NLUoiy_4VN3jgBKdIVfST`r3EyrejPM z5$GOVc;v8X7eForB%(|ZK3Ui%Pf&0eVcnN+KkMe7J|ybCa<{BT(uI@YGt1K)?H}y6 zIM|Tmt`vPHtL(X%R#@$fmME*O_+crk%f`00FeH6dz1Kd`Z*%L@nM`7iu%na!Nf#|& z9tv(n9|4b`5YbFOPM`Ivyj(#y-?Q9jw}m_aldZjd82FqfUjl=Q;1@s@C1$yyf-tNI z4?%ens+nqs;!MczISw)%%^mu0R&hx=sYj^B0nfUyJUrq+;SvTU3as(nyNBS-WKlgU zpkyfvkX}MrcY};?8Gv~s@)jtN_m{emRWGkU=Iy^&Ky@Q_H*WY=dV2cYmAf9M+7Ea$ zS8p>c+epm8>C>k{7u+Xu7A2-UP#m!0TSq@BQBhU1lpbf|C~yyYmG3q1tcZ0&*ayax z-M{~j^Ubd#a6XJWYZ8f%1{36!?2Dtp?Y;H%?^VyuqCiI;!%4X2>bjk|QLicTy^DDf zuB#uot*zF&UI9p@9LxYHL3%)lQa8_NYk$N&5J>_GAyhWt8nAE>NQ+h^TG|IMGcyI8 zyuQe+UcLJKg$rc})OWnS`M@;_>%Vz-!?BC!uhcXqQ7>55mP$Q81t2iX;V&kRD7o_ZA3dSy|aWBv>QF1yBtsQQCrd;Gi#`eSKJ$ z9(MAH^Q^`E!3hZo{OLMFLBPF6uWqhJVsG4M#DoaOy#UPYp1D-aKd~R^Jcv!j34S*d zUo+>;6OkP4lWV|fZnAuCS}R0!nH5Kl3@n zn!jLy_BKyIn8QK`uP@i-2Cd-nzO&PGrG#DCpMU0brs{K~cidOkx--29yj9s&&P)U<=VI*VCxDsG*k<&u@}cs% z_jZ||@njczZO;i-Pki>iz1`Tx-hKrNiIg7XO11FZ6i;SeWOlnwT|PGNauDr1w3-nF zW5N+8Slh67*Y4W&_8c}e__|)J(n~wD+{q@)WwL5l{;fK!>tTMN{VJ9wU zxe4j!DX$z(9jM#RyR0jv_jtS|Rqy~!o^(wK$;m5lrgxq>bH?rRjCrcz)zR86#n?1! z!96>J>7BoHss8>$hgKL>gy)_&!xPc#sRE+L8#gvKGE>d)z=c5f7>_Mi3|B7xijr5L zB3v`Iik^qMhQ=Hj8JQ=@>DkDi{1r7a0uWa~U1TlMO3`*il-dSHe2$Wm5~Oj#co;(kg*j-moZhi)+vHsXC*XzIprO@amXO;5!w!`WDggj#2yex7(f|1Rez1;Dj)dSzTQntd*V?jRK09 zx;WEjhty^v1g;|5HlVeyt0$gchO>DP2k-hHfBe+z-QHRKpwsL0(u1yx1?U|bz$#md zn<3C$$Mapm9O-d6z0`W#OAP$EYt&`}%SWA0UzRaLsbs@R(H%lke*B!DFSaAwA9o!7 zQjP*I66Jn%(n`=v?=HQ`1XatCvDUn!O4zlT9i_!a`5cKFaE-(I)#%u?qq8cF`hp1ChB zN#s7|{t>Umf!efcRYryGw->!*{sqb~aLs{hZ<9F156-MPEg~*14!n1{thBT=yZqa$ zG89WnN*4a>U#DKXau}^X=TiI1cx^*V3u8(|ubP|Ls(<2-8A1jnyb9Q+E6=!Gxnh9S z*EHD1j@rC_{Xy`1N~o&Kz@sB$Wq(+@;kXa6^@sqC4GmAAwY5R^S#0#{ufNI%99e{r zx_Q?wW$?=O3-3U!aU%B={Z!#J(os+}zx2;613;x_#SU(sAe$ z4o?|256@sfwg!D=Jh;c1xz$+XCvL&Iy1M1UhPO#ISj4Y<0{UIa_9F4M4AFD%E)s6Q z77atFQ%!S7L{g2!1>~~XN~|3yXy>flbppE)M4|`57eoa^VCg1{SR?lFC4!n|AiX*h zBf$efe%T}}e8*Gh+oxN(`OKU*Tdd~v1Zja<1ccq=r%$(<)Tbe*)yh6Oc)h^r$lWcp z+xhI@JBSxeOFBamrml5w~wIWXK*la_zud-`#$@t)B}U7#M&L^hOAZiD&~! zn1p~lXsfDPHBDo~xA*6$nIl%ylL2HI;P1~%oD&lNGr~nUTa`)tAd~a*^Yce$&Ybzw zk}>%^+}b~N+MGIm{P?W7a}~iTAfYM%b3t*^baHYcX%>=#e)Jd+-{;<54_=5eEfa8k zdvj-ec4=wvjpXWe25%njJ#y@ru$0qq$MYGf@{{kKu=Yo5WerqYpd23o34eV3Kn-Dc zTM?JI%?a9%;2C%~@$(-|w(cTUtk4MDKBaRUOmFtc=u$5uA$Ri)uV26Z+}9UtGx@F= znZM1m7Qaaf1@;u5YHTnaItXT)AWxHab@%RFK$}3P(V^VxYBi8CcKzi_ixw{q#6~*I zTC-*iiGak>lOT%xy~C#aRMuaAy{fEKVU>Z0J9cmD-f2H`lA0W6)uHMLX_SzJfFK1O z`r`jrLc=8=KuHvIWi6#aA3uH!z-A(*o+vF|gZ8)4z|SX;N=QTnHaGn6*VQJrn5d{B z;Dz1b$GfzIry?Mrvh=U)6RAkypqb7zh57U*V>96XT0p}e7<+l*)N=FBnd zG|>y6R!K=oL0$~Q7V?&2re%2}SRO!dR;)|0B|(WmWs<|-GutsFczF=3@?a_{bgWu6 zQIumhN|f8;mO=Zy(h(x|>P%;HSDGBeR|KAgOP7LmI9OX>$Z=Dfs&@LyXrjPz@7_`n zo-)_m-Px#07S5ml2v71J`$GHMlQZUVmx1DovmY=e-3dHN6;e8H3zDi~S@11_^1Atp zAszn)1f_rjUzh{B>kU+i08|WZZyxRQ-f7}ZC9$uBeVyC`dbE#zyYkFUP%BNHfC{N> zP*wEtjFyX8g|9z)ultn9&wFnC_AT1(nX4V~Aj4%YR|&l(A$C|QpnjELlRfh>tBN%U zRgQiPZJFZgy?ghV5kN166edyL(r(5H`~+0G*vNB>Mkq>@d?0>=YB>}zW5b0R+S(vZ zTWbH!mM+gP zHERFK(;vDEr4-d^x(F|JKwx~fE8YVz|p-6ohWUe@fXE+sgacLAe0p73u z`R5xH&~YZ!JHe<+&z(EIWM6@wlooW|69Ch(Ahk#F9(J9H&EYn8Z~%k97+IQXA}k*wCRQJscLowl?Fou(lRCTX64m^lRX&uPDlq*WAGSEMvKW zU%%H}T2caW#K9p2aLpX|K=PO}_$_8=5P(=VNT#k`%(e=FC+FV3%tl18%@J-c@)Mz2 z_Q{@0KRV-T=dWC8>;UCrJY;U8I%xKT$nx{KxlOk@L9ts4`tqhuW8R&7SaNoN?>6v- z)Zl(=v(lD^C+?C$h|H&bq?mR3rGeL1=YD;6c^>}_axlwZQ%m+vgy$k2iwh+r>nvj^d45aAJlG4)aK;6p;f%7iAdi5$^OVz?Qld9Mm zsS;0rJikVqzx~_WHDzhwIjiDL!oVVL0_%R>!lD#-e9`>*r!{*~lF|2vutFdPR$-L|G?L^|n0fL# zetqvk$_hmp&~N|>(s+^;1j*rm05;hqEg?19=kfC8%f^n52v{9R4c~sY;0-EmT3m^q zzZMX4ONBg;QEP*{lp^Zc9cK%cBD@?y0A)RY{#-TQI0P~D69_G*uOjou<*>~IP)`wu z4MI%Fokzk>{>6(IRoJBnhA z?SBwHB=RWTDV5$F)!5LO>Eg~6lvl03C99j4YrBr0%G|ne!Gg6|JCmA(lduWk^CHR~ zADI0>(owZU>+~2BSRX7i8&Pb4wthooDOeA^;rF3lQMdfbYyhuMD5_;5M^R3DW%d>b zlaBy_{|R8yu?M0G@CPAE+~G|f`J7LS`rB{6?LZ~DZvA@I@uv68Yp0je4kEDtx32m} z2kSzAs{$kMnOrUM-~!TAq>*i^+CoRK7|r|EM+PK&})<*Jo!}~gM7VbZGGHl z*GUL&-ja?A9dXLu=_H);GdTK8*{Q!xt;se_?*D`eTZf{FppDYY8NJ^RQF&ycB zY$C(TXSzTQO4vS&7A$yzkF6h{lQ|xX!;GLHjoOq*vB6CH)RdG)aJ2wgROm?9^}T_2 zh(L`a1aHC}klYG#yud^e(FT!ZqokxJC{H#W#1z}!BP>q=wZQFquY!hwmv2 zWz=SIadjkc4_@LW2@qmmkqK*&fNI&}3cSx@){)yAPmk3N<3Q{%s}l#kC_}X@@C(tL z5nAb*tP7}c`@8D3K%u(91ki_bN(`4_X<%VyN(2Y@wr?BICY%gO`25e^-8VsT<4*w- zBnN}RIEe!WA!Y+mB>?<^-sYmBFE&VMCxE@cA>vu{HzEFq00h6v%-jd=fw-*;FbO7C zun|0Pz4D+^DO%#4;EV||W|Qj)MQ+oZnP2jki(Tr9&Bn=0S&utr@u%s5c8QW2`??QG zOJxPfl5KGOZOk92gdMRU>X$il?tpE{^2PyafsnsA2jaj(Dn{Tm0!lWAR+Cq2I{SPA z(m$#%1>}7XFph)U^j@!I$O76xF%zPak9<~GU}0nkin@5J+j;arw-MAPp<JB*^(`N!C~#+!+(8sRWNs7qZ5Y|9715Z&jzNG1=#!2B?PDri0Yv+8o%iik^z1s~*cYIv3IKtMS+&z6;@t!n zDK`1Zbf?j>2sIHPoKTSaNg&CbP%ns8h#;}xJmx}_BJy^HS;}gLN|jzslBF~-kUacf zcYqb)pHl5wzdFbE;~k{}u}ji-_;k68YJPD5gt#N1rU(LOvDhW>@li0vkjZcen^HdM zf&l=L(mrR-Z7w&#ZL@)NhKY1)k2f?AT~ zx_k8K5uZ||50#3*W2GaP!a2GhzPj4|X6eNThf!PdE(5g_zhycy-cAVDDsb31joS6z zgHLB0wuY-En1XC1&(quDv2mV2gUH6Cg?|LfLV*Q>sW7mBu76O_{hY;un#Qo8Gyt&< zsMjM`J##F)_`@_e*!W)DgT;hMwr!~NMW5h+IU~i>H;9_tW@oSbtO7Tft0!|#1`OaqK1;MM)*%TACxZa8vFu?u6AJpdAM)XQJNlkvWz z!$cf4Pd2R61-;0x&b-K%KXk3+7`ZaZWQcq%T!)48Pp^6=jx=4BYX2Pe zQo)ueu1-K?dW4^w3d6e6hL4kw0aA1k3>FMgizYYFnf>6m!vHpsp7Wk%lDb1?M6i$H za2JFD%#gCG7@=w@6Zb%hsY#^6abIyVEqdh;vrdQx0g5Ebp}rRFy7x}t*XdLMdn=*p zumssl!4qXhQHcet)!#0g$D6unGE8-Jbb`sK3;xxmgVl%o4FQjt=O>kp2f7aGoPc`5 zo0ahp2XWnDkV`2*#yeKRF+s{R94}#z7>+<01l@ob{w2zin4tyhkG?@DR(Nu7j;rL$ ziDQpDLU1~}Vy1sU0EHwJCnC>VH_8PTFjIv&xV5#bc0RZK#fCFQQZF}M@W%|7K;o;O z@@(6-jo=DUgUPnB*J53tP_C+`+Qm7I4eH^hWT<4tiu1NW$twrUfMWAdj9YBox&yQV zFb2h9!%!Z;vmnoEpBYoR23&i`+vt737A$bO2ub=*$DkaMPbcK~1JTN~3XmI6*vaom zu2f*QHpqwLALD7&j_7Zimi)qR7R9RPkTwh;L03IJjWzkbpaILF0C^9!5;@_#a#jc% z`oDX3>X@&%3XodKJgJdY9=STcIP!P#(Z0+vTME43+HWArKf>aBu}5HMg9qgeju2Mx zx_#*OUSYufS+i%$;h0+ve%9?pNdukvCf)(@<1s+w5f*$*kDvg2qN5Mf>LMNNEB z}_fr=vLm&xeu`=ln@WtXIC(7k(#M| zjPvK7j!Zjs=+L1F=eFcv;{pf+_DzYzx&nUz{+vW&Da^_3T*@lQNnGM(WLA@~no*Tv z8-rS-_RhO5Mo!2=2STdnIJ_fK2__K24O4UA0f zaNgk5gahB{_kAj+{h2mCW}lUlbKgE>yf^buZ)5IS1|QUU9PTv?P@pBKpM=l+H4_58 zCKU&2W~l)g8G97ay}*jKY*VxZ`2o7@B)m|>aA4h!fp(CE`T9cNr<19@uf^!yfX8`t zJ95U5TJn*dYc5M7kwAzziHM^BdWN_*xOEf}xp_*s5I!>=O!Dg5CNTDbwo^d83FK_% z1b}^rbz98Z6jqs|1Q4(~@~{XN-rKg16jx-i&Ovdcfj3weQoYE@OwuaEqqs9!v*1lW zGGw%51SAF0tN??B&`AasfI?`ivZNa#KnCMT`o3;!Y6_e-V{R}a1wl-*se*?K z#`YZVIgV9-x3@Tx%j$BSI(7iZ*c=ILi@tL?4S#ZXW~82W`OkaHx*vtmt2^_@N_58@ z=XVR{t$b_N_A9;>?#%T+q4cL%b&mgTP2>2d*zw;h^M7Q2;*A-Tj03N7Sg!(gJCH#C#17hODSIx04YD+Hqn4mmZToiQd zK3yiMG@#YDxhE$k<`xwRR%?fYeIU*U6*G}UH*fxn4BpFkouk0C9t;d6zP)?*lHr3l z1T+)sa1W}@!M?j#Uz+@^bM7#%gdtqs;f23J%`FE$d4M85w2;Av=#TosyBXfIaM+Gs zvDs|##poe`wgj1soe~JVyEw-UwtVEvF6Des>bD^h^-R9?MVBjFolnVON3J`-J9<;w zk;GM5fRJX9J6u-=H;bU#EuUB#ddhMCpty!^mt)L0% z-z%mboP76$1yEs*;c-yDN2pbCO9zeL#EgVGJu*6qR=|B+;9Q_6+vxXm0^>uO+fKG9 zxjlO__KERKzRmDK>1E0X;O>dl$^8`+$8l&BiEUL_RB0Ak-PSN550wHw@mJ_b7PSvM z1qnlWsq8ep%L}sw97n2CTjbs8)#q}iZR6aBv{QnlOB&1c>C;Esj8LQUGEkzh{GpE# z)dnyp9Cg**{VoWfJWl~5O=O_ut_|>gZ-zblh|;87$T80uLM1O$Pn74t=`oG(-#>zY z1{sWqca}eRv{vB8a?sP3BVWzQlY>fK9vUvCHwJlA@b+PIxkUA$AE+jt5BPZ=cQ{f# zv<+z%=>zCtF@VvRRLAwleS!%oqqdBzjGOFa&ZwUcP3S1-L{urEN>RR8*+O@i^A59o ze0-=`F{kDxQcat*cYRZY$Y=s^O1*59^uJexfRUm|6ezg2Z3wjDqGihl zUqvmOd?wE_T>?K`0&~nBym*lV2y#rzeF4fVFgmrC$FRP!xbAWJsYfWzH%YzX*E42K z0Go+7divuelaIfJPjr!fd;iU=zA?4``@a05im`Dx`l8m)n>P@)BNoCLzU9TgQtoEu&Z1y~w&&0XHw6k9pOAx{*P2ueXXh;7sg2=pGo zjG^cMjt6#)rSV&Sv{?uiRX1e2E7`YJ-sG*G$8+N(of<)e}i}Y4iy#=5z-mjtInRErgrz# z>7&(6@mqdyzr=3lkGA|p@xbvvT&_&$`w35Q7Ys1b*73by$BS`=ixw{Q$MIp5P%-o9 zx9Jvdw=izqx^)D`P%sDrnmoV$x`xSQ3Y*p_gYIf@EFT!C0)-HcAVtp`b_3{XZ1RQo z^<7|;fLkJ;pk+su0*Dr+-+ucY_7s6H4{1%G{;ZmZ|Ey9&8v~^@xYHESr{tOl62K7g zB?-M3SjK>_Uu|~p-pyd4zTkgp#b|2wlBgOT9VMH-LWHUUXuUTi4}&{50L+K&El;8x zGIhNHNW&qRGzxL)6(&@}SQ25t9OY$Yee}Jd5h}k4ByZkG%GpA1QM
  • mZ+WN7-ORoi~9NR8Ck&9$2`}XFPI(<-}a|C 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 NM}t1x`N6m^{s$N(ETsSd literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/convergence_times_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/convergence_times_mnist.png new file mode 100644 index 0000000000000000000000000000000000000000..613361f9ac9ef44677b7d4c39df04f05e6091518 GIT binary patch literal 48498 zcmeFaXH=DE*DZ`1drM+L6s({WK}8YicHAO@RFx(oAVrEa>6k=}4Rk9iARvO$K}Dnr zL{tPRO7BG!q$|C1=AtAf&vU->j`5uz=RN0PBqIhl`@Z*eU)Nf5%{kZNlKf%m`E!=f zVPRpJ&p5DGfrVvy1q;ix)w5>cJ0dan#pyqm`;J;Fn(A5FXrI+(k=3>|Gd8s}HaNN3 zTKBAlfvL$>fgJ*yH?BTyX=!F5x@psyKVKkVdRBjv(36-jyvb~{1IH{_SQcv2zf*#x zf(%$#lByYdcPX8_*HUTkklQ^v`fbqOnb=WsAEaCi6rV^NM_0SNP-Q z2WKy-th}!HV+cUTLW))Arn|yLQ?3mWi4I?eAU> z_B$kN=B78t#A-B+IN2o|yJ|0+idz}`8vXrB^xVn+sj=Q!vtZ(XT&B;em@@I_$1LZ? zCSS93wb{&xKc`Opp>6WpM_p1mCjUJ5$GB+|e?Bo~s?FrLH~#0%|FbOPo8kX~-C}m- zNvZMjt$J6Z-jD%-Z(x`~J=bA-$|+5yxXPOCPcL~DckEYBQ)=$#sIX1h#G zM%_lQiaC!Yy>a8@Bhrc*W?<9n97F_A428*f6=IZs{8JqVgdil{Cvfk3)tV| zy`vJ_65d6cwpGM;bafTHzQW3}(%Zx1;T=~7cc$j#;3PTzNz9C+InmvM7LbFr3lp;6Qey<*K!rH~bo2x%3` zBOIea2<#?vFD_iA(%V+KMU6Kl(Ve_Q_8_{bbkRW3%n#t63iWYCW#?!$Y09F;>kg**;>b3nlyRYgFTtdieP8 zo0^(-fBBFW*?v<_@~ztD`1@RK;hv*yN-+v z*}Zo*X%$`BlpOr{@n+j|=V-ev7dadF^y$+Ux5THFsiDeYN-0i`xaAPNY_Iz5>*ulx zC}n#IeQs{(zPrt{cI|FFgENhX*I3wLI3lLGAI0^EeTrHf_eja@|dZg%N7PiO=zF zcYD{aUcIw2(WZD)$`CW?jjZ=}p6%OJoSd9^k3S3c+I}XqJ$W$4BBO@K1or->vj+P@s{SK8;__2^P<R2Y0B_(&c+5mXO)W!I6k$uMx>_hoX;k>SLTj@N4DO(Xbt&Y z6`lB8Um_FR6h1uIr<`=o94F`VF~{Un89#T94D|JJ3kV!ev~JC`h)nT9plC}Obz&$) z>t$!v^u>4y$2INo}an$eUfcw zR!T3kt58*|aj3tusVt^h*?k3e?%A_vyE@)&YOs&wTd-1`n_*ZGe8e}IulyE{?~ulL z%>0I*3OV`uvSG<%?c_J34N{{Yf{z3!#hPfm=qWQYEPEF6^UpuyqP^le3vr%ju5ysa z<5%6i`p>)wc3 z)F1LSLMS_eh`h}pk5lMOnbOS-ayh*!5`(?%s<9@O1&?G`aB*_pExvp2p0S$<0xa!K zJm_E?I=kWSVoDy@mTlR+=i&m7u7>UNv2X5h;-(p^9J_8v4t!Z>)mCxr+6v*@*?Rfd zd07^b8i^_b0s<7sORYOTF_rsll_S-UjSjav3!VFV!f~)Q_VVS+ zPZL@3f#sEyZV3tsZnNt;{Q}E@o4@KMY#P~~GAfyCWz$-wj60$am|)!+ijVAFUaKy1 z_UzLK4<1k|km&z((@Wg;DemDB;-9z9?M+&dckeFq*UiFR#T7fA(=(DPh=a6X-lTvV6Po-Tr&ONjeUk#$&yF>C%UXGIv_s zgTQn3T*;?>xC9D5BV}71Ru0&9Gb8)k$zHf%24Gs)# zh1!d&RBo)@x6Pzt2c@e&{`lkglam)j>I2**71Y)5;Uqs&)wJEWDe3Dk*6mdhZ?3J- zvT$w-4(6V}eA|IMzbRima!(_&MA=>C#DhAGePq{Ds^9%~o%`w9mly0>o}_otpR1D{ z2_Ya7g=2A=JybQHh;5hht8QsAe*NmzX~f>;JIwAslJ$Nhy~DiSn@XdDs%#rLI3(=0Rd+HJ4jlNMvoUR< zR95FhZWfkQDLqQ%Q}gok=QG~C=&kaO`d0q@%vMge(f(ZLmNGx50fRkEMBq8m{G6Px zuAd6mN~tndORx-Clkv5qL(plYUq5=dHMV*?CmWw?sMYz&iPfebTq^DWk`WgZP>oNPE%+p7or``NyI`=+$4^5hx$7lxR#tFL5Dd4kUCU->Mry3p8eyO>3V8* zb_quw9byYO>?5jIjx2ckoW1>u!JgJ=v5``JKOuDujcWx3N@<(t)qTpiX&c#l8BsO= z3r>1}vPosao8jJS(*uGC#X8GewKuBAy}y2Hs4HI%MbaC9pn0mQsyZ)!n{C}t_C)7m zZGFAo^9FoMAg%2uPoBJrh;31Ubaw6id-(u_dcAT43Ec8Jckz=pIk+P>u7kJY>W32? z`k(%^e7WIozx}o>NY3wh^I&rlKmmQ)Z|SR?@1Btw?z&m~@#D!Zqy$$Z27|GMlMQ&s zwK8sl@41)UD&cqgMS!m&)@0m8vaO5@3=9-+RdwpYE0LV#e2otXN{$X$M7Lty_Qx0& zwu}fYc_mSu;+#V7YS~nf@irsl$qIX2w`l#`<;Yq4Q=Eod2J-Xr=1EDVh_{X!A$i$4 zZBYO4%s?@~ApcSQAU@-A=GEmwhRg6=^agQ^PLvpL4?udePM6-lfBBj z*(%FR=-u^G##KqBJI;N*Pis4G`L?&Uwo$WY&))L!6k6K=kz+H`XvZzJ1Fm?lVp9-_Oh{%u^NbE>L9N z(%%Pw5Vv;Sy6j#gu2{|x+s=Aktz-w^9z@8`o)&;G^?p&tvv2zNM0|dC$Gg?JGIyY> zF`rW0&GoV!#-nQ)_}I$l&h=SEDs}Ys7UN7tCS-PAT;=rs(xMGruNKLbw2rQ1WeqYc z3>8t=7%kCpFMVN}7kDYn$U4xt^eN%e{;J|)RSEl^f}#ku>?MVr4Y~B@N=VAXBZKYr zVSqS5J5SW&orGk)wtXmzG2$AIkH|sJ2&CiBC3AaQd2yr$pR=|ie^LYH(hnxmD&SiM;D;>V>8piIbkF#jV2|M2p1QY=oG|Gd@7IrV<|U|14BRf{r6ef z-om-;H*ekyK#6e(Syfmn2p{K;pP%3H7(-o~6ae!eq-M|F=F2!3h-D=)TwGj@Zenfn zh+cfLb8}795pQ#)M%Clv_ZRSSX)1s*q*HBs{Q4L^vWkIYCnPuvhGpA+Jh!FrMJit@=3yi25B8es}KN*?y)h zP&>_)F<_zWjQFgK$TFXO$NSptlGtkf`-mSgnXTGWfCp&|*Z~}W*4+Ha!-F0zWxxLN z%cu7CC_m?s(#YW`|Aa2*^U7vskJEZaD^to|zupIo^vozs;o)V@(ld-F=f0h+MDihY zv~#CR{F%!EjvjmV?1{4RWR6snJ2m9^%vrFYNW-S`;TD}YCDS!kBXO)lZQUa9JbdkI z8ygMUe4O@u`}n$3y|WN-Ib+_|sJ?3ZCjeep>ky?71?#BW{Avf8hwtq$ue9~rX7B(A zt}*rewBspGFYu&s9$J6ti!mw=MZnc7Nx%=Xx%y{%@HKea=lV+2CjoBU;Y1qa%Zk}{Bi?YM= zFH_fbl6QYT55DC`sK@)9S-Y9dfWA|6@Hz$F!S~6 z&t6*U8lJH@qqg-L&y9~IOI{If+V52TslMK;*rz(z^z`Xq*99D*bWb=GN{0?z#c{N* z949iyT}88a5+TnLT}UL z5LPXRZ>~A0bHA#Z|u+ zyJmh59>x9pE-(HNek}Ud-Me@7hqP4Fv}ABx3jz80k3T!`?lymZSX6Q-;RY(dytkh* ziOUJoi1s*ZVNn>W%r}3PWQF#qhs((E<-#T#8H95daEJybST$#sm#a}kXpTyWM5%kG zGC_IK`a_Ssi&1@{ep(O}ee}u6`W+0r?n2ciKmAl|Ho~V9^|&LtL+*3XZKODZSHJ({ zCFPt!-LFX}Qx2di_*qx01|2R*G`9qS#+Od_24%P+rlbS1_g8%;Un z+}kVbB$dM4X4`R!N*=7#1#GQHyMCR)vu4e%6~ZP2@HfWIX?9Y*g@r(QPp}S$Rt)v; z>gsfr@S{g0?7H4(d2a2-0UU|w-?Mu+L7-s8pu?d@pFF6~@d^7@mp&R{0fbNVp^Msn z)Fs;hhR>8d{=;ODRT>!pwO!coU~joZ>es$+bp$s1-;0OgV>AINTJQRn>^R7o;ZV}} z%k;UQP}%|kW~Qa3u?rg&g*%HodkX4Op#E}cgD(YbsuX1JZr*jK?AewmAug_c2x_rn z0$g0LJM7I-+p)Q7_v)sPR$W0+t*fW!#a9+pe_ZSCtxZ~*2sFhA&sJaFuMslH+neXN z@F}~fWiV1;)V+J`i8CL$Ubv94dENzASIw;j3+K+g+10=*Q5^QoFHSHw$44wmG*`>n zY19Y|2Jf+_fhZD9&$S^=R$3Kn03`X&n78acRRcJ#)_&QzJYiMPHUs6_b^vogoIVX( z=@t{sr<>=dy?jaQg0fXh=v9iK>4_6H)n39WT205+r1(|y85V_y0ADxtH~0y!dMXB3 z9p;)LJZSS;OQNsl*MVH;k#$HYF=xtqT-_W;`WuAwbMA>Ry!+w^0J-YXqb2j5pMW3! zs%p#wBEp0%?c%~av9YluoqnTV@C?)@$PmpG)r zvd7xL-WJgCYUo2WziY3;%747T*dmZ|b3GyVXL3c}{N zsAjC5?9d-7bti?26qN9fKsMwVCxS8}&_4D^#jIPnSy@?8p$X)Uw5zt6BE%sUb)()y zDIp^)-tMtUtixi{NC@E9Rzbn6ls&2i;l~tF!WCEe4e5KB_aPgv1Rg!He68O}qQ0v`J%WbBs5m8TxnR96hC#^G}GXsp||Y~HhB8WH=l4JqDnbLVIL8nSVvA&X<(Z^ zhc={?rtpn4`8nP8vu_h|?D`;m5Db8iO_go-6U3P15_Zo-Ex+8iZ;O|n;5xf-1o-&) znpYJf^Q=aUt63UtS}hr%mEyGj!ki`Z!0)D|r>CDT2)==}G+oBJNpoAeMuKI=GBN9L zD(M#UD7>1rV8QnNSC?rEzu7!*9jfNvuUvVz)tz&lq-0fOD*(1DXC2rop|M(-s?(VZ zS8fB@a%M526gSAdE#ObqZP<|B)<@KCuzLK{+S*!er7)H3yC4SXZ|j^#qq9C#IJd6A zN6=p8dc(s*cixKaS-~2K&ui=Ibm(0H<+cNhM2M#oK1XVGqj&k?haZ+Ll<2zt4e+7t zTKrl5(RW9#xv9tB0Zk|bM5(LUfHJ-FDgbTx77)|{IC)gTA9;F;5db9o20`>H7zv9C zuvFI&8QI#}+N_IBmbpGLDi+woJo3WMD$&Ayl~mRBQ%PT6&Rx)~4uTc@m`+-GdHL6# zp6$Sadau&cSMc!gSl2yAwP@K^QObSf!EbbXR1sre3MCKsl#BP)qeQn(&lxKW*(DwN z5_*AltoDbgL}dACgFwD2Ty-wZBn#*N8gvUbO-)VLsHmt9$&U6q;IFN9Mh^2MQ3{Te z8Ii}U5thbonO=y{e*_hfPT$wsHxNFux2O)jx4@TKp=<6je{P%x>Pd00fLyv zcmrOi_07^(63(N;z1g`=z}nYuRek@5BC% zw9|?_2fF_%c%tQq39g(vpEEr`DD2OFBunp5mc522xB4QVl__f9$YH}`+ZVa*;N7oE zue5!IxVsf<%{A0s0mq{C-r%!F+4H-aTR5q1J5yE=hY%4Z^5(;ELfMN1g`0um4a3#B z_4LC)@oc>n7VbYSTXs4wKAsInQV>=2Rg@j-F}~0uurog;6hrtJsWf)2{Viw*i6Q%` z&LgF$cKb3Gc5gx5%dYd-9%wlaE8A3^My0>wGleJM{cO*z()PV=g%$A@J{rsM1}AvN<>2YO>(}oG z%Nr)%{aux|kE_#KCoHTA!O8eUPtYG+_8aL-_;G1}N>?kSK9e=m`*ZV%-(Nc<37tz0SzI@hsu@NB$ z2M5mK{woE=#l;zghwi)fDK2Vr zCk+F09)gx=#3~n|VCVv53r1a+fGCGxCBVo7b+%;1iZBpuqT)`#!x=yF$B86P?3Efj;NWdoOB|cSH*VZ;9u#kEY@9P| z*4y4bK*`e}a)4;ON^g63Z~;Rln&WvS04P2;E`0!i@j5-757$6-a|4i^h-h#w!>tKZ zDwa=rH{?&ZmOR;mx27K>+8Q(vkGS}dsZTSA0K2+t!jKpO9aeQ#*|(DvNbsd}>7qpe zJc^IL)VWKkpn~FS9$Qzp=agE`Xq=#VsMsyyu0aLAFtPQwGVQYOJBEU_ymPkn_T>UIx&wSS`z_8=fYIZ9Ikc=w(9 zdEZsEPY7rrmx{E+mKqZXg7DLY>Vj{_j-%KeLW95l`fE3MLIY9+nnHrQz?gor$0gQJ zhQ6KtBpB0Pr-Bm-fydpu!JsP)Py{dopFP|5@Zm$^bHEq1S7PtsRjQzp*q&ef?YGl; zfecaGjzHVC`}bEfoM&`^gLn_JE12Z<7AdnDm!j}v0pLmBXrBSN48?=_{PE)h#P=pT ztU!poz*LMph+>71n+R)xw=M!Zq>LvzHC~Qo&cey1SbT89;d}C+jOdK^_xFc@p#uLF z0xpn?;k8A_75cxCoBQR_VCSrL!}fW5n3fRs9|i_~A<eg-Uu*JkZsAZRNkTAy+J_L|i&|IxKlKQNGeedoX>M|E^}D;pb!YudNQ zI6En_EH>O;mubpcv;7W8VJRso2#@a&(n~*2gmlK+OY-t1Y5(4`G`aq9*JRs@a!R>s zwtp>1dYvOMC64Ry%YXkPlS_eI`QO>)wkAhwi0l*H#1+YbSeCzsxt^p~mbt8tsEiUj*&sN-GPQ{5|0 zeYGDIGB-I907@^kst!bTX~?348yXtQQU&82!wMR6?8|u<-tfV{56N>abADR4 zA7xgh!!Qcq>7uK~f5ydGSXiIc#d#)5ALURb22%-v?MzkDF>rOtKxnt1k^nZ8M4Xj! z8j1r=$jLzZA3z<|nqxE6XCB>dh+F>zZ2!$;;x=4#!p$x!65q(jCxZ%G5#nkW>RT^I z)C81Ku+KPY{lI(>HLvnpZzexKM$N`YkufswBa5M5jXc~+BvY*C{pJrFU3B`P@tBWzO+t0OOLo-M# z!^(shkZt;IjgY4m6coDfPKMa&O%?IcgrD$u%6yElWTMtBcl)7x*9bM_wA*qSpj@Nu zDa1OTW#^i`Qn`(#7Y^k_)EG#=_P9WM? zPZTx`1?1V%qQ}~MP-)8r9rjT$F^QDy|FlR0aT4seb$T-59YsqBe*qMjC@j{iW8J`V z7e;AG5j6o<(P>``RL0;RWPsv60AO{2`3MG`?>ve+t%h@4iNN+ex&d_#^bwVS{nvkt;P2@F6XFUXBWu|b+C zicw``x6ZDHh9qqH0z4VGoAi1bK7D!%7MN%fVlEkZ;A9_=*^yKmm=J_)J3ci_K3>wl zHC|0j|Bg#}s$%C-vBV!_ZUE0ezBq19|WgB2X3*A2P}MP*Bq#yr2VJ? zr4Ju=LyYOh3T8rCfAZvsU29D7NUg>cY#*J4HbX{_g;{BtYN~&isL-AcSl4k;;@_Lv zPb?g_sgI->xJQ^-&yJh_D))3-%g-z!|_Sf%SWaym7Jfl&&t%x^-!7lc0L~g(YoqAt?XJ z4hd)50dlvMuY$?s!f(F?gK>m#mFR0*&xSQ6zu#D`p7>aU*)Pe@pIxgCj$*l(web{< z*%P-{vd%1B7DzM-*$X(y%DNT)_2B*nx*I4wh94eWfDIPz?#C%YBqnV`itTjVzuy(S z*r;ah#JiYr81wwSG1Ygn|P5aMTuqT=V|;pRR7X)Jby#pmI|9>?CV zU#|m!R!;W+%$WoDdrx~A2`nT~fjCBP?Mg^DE`Kh|RD#&aPykT3ZYl8x+jUomdGjVx za@g0eU#Etwn79d(AJj7MrxG)@Wy=xr2>^0sNfZx{=Oh3aUVI-xUK#GzXO4r`Dr0qah6Yuya$k*;5q?!*%^SZui$iP=vH{FJv2pAov^M&0lrHb%aS`_I{>^c_? zmAHUZHdpiP5tzz>;Rg~L@USRX=_ntYxcUhmmH#{2n`*SU{(V$v1cZQ3hd>1YMI)%f zLRj%y-vmB-#0&p8C`Dx`_rMd6-XQ>3w4qLH^uM^0sAjmz3S&*R;GYm>w})c^<;L6U z>d{pio3NTD6J**bFA9GZ^j(l-{^`>xJTj`*iXbp%Z6Q4trkZE^xhwfK5|jX4u}e^O z-{AcG=@Z%4sR0FsCcpM&KIWT`&C#)QMy(3x+YENRzty z=G@ALH?eddi|`&CC}5{szPEySeQC2x0)v+5+I3B}Tp1h`#}2cd z+S=O3pPsse@*@bs0>uqxAlp{GFBE~$dh)rg&9{La#)Ts&JGYxwg+o7+K}cg3JU^pG zoE4QdB0cnKB0V1Ln>&A{_)*v|whU55Tbp(fz6K3mg}~pbw}NZ^dR{1tFB3c3g<791 z0UH&2zK<;%m7-5ZWtm9g4;3?fy<$sBxsG1GH;W<^ZP$^)$&j~TFxN*c2zn9^XnpvZ znSmf{g3%44S0cdJvSmx=+qdrl;n{ul5$EA>6i%~d7?wVL2yvQFV)PkMz2qT+dUd;j z9gkTBwOb*Ko@c6)HCAjlevjql_0G1gVSKlZWXLYpPjJD~rQdm4p1FT{JI3s7$es?L+igP{Oo z2YWKC2DN5Y>!jU+p#aR8Ki>oPKkRcdv!msw{2G~_i8R8d4ThbL>Jym86jt|6jSZS8 zhx{Bm7{19DSK1wb9la2nL>a`j6@2fIi8sEtBVRw5tFNJI<&a^i=z{6v2=sd)t0pBR zzwn(#pni6ajMdFGp^?328Q4ip&|6^FV_LUWgn;wnL#Yd1Ln!wHIt%baS#3)|(BnbW zA8WOLjg#mB`wz4jH5jJy(CYLEd+;onuEDkC<+;Ip0154lm`H&=fwJU#Z> zlxZ_gqu3?aD7e-;LDgVT;QCd8r%iIOWh-?7z-`0ioIZVeBhh_zQArEu%sIP5OI}{y zcatYIJmIW+riUMWvKu8d)7#s-qN1Vz2cGy=bVd-1%V_|nnaT@T^hx}os;mrVZmC47 zVICu2;6F8?|0dT{olE^wEwE7KQzrsqwnnnUF%uILv<@-xv_wcRCW8+?<%_VK6_Aoj zN{)6qVzYWMnGfJMFai(G3`C93y-@kwFzyYT?m^)4exFw>cv5&N!%x|IZ z4siogrkJ=i(qzs(kpNsb7)%gzWL}Adg@qN^Ntpo)zg|$Aop(1S_w9~K>bP7Kr4=RC z7MErm1;L)^0wU!=g`ow6h^vvR`N&Q#x<^R^b#X|nO5=*U`mMVg54|piW0g~%KasC6 zX|%gGj5H@9T;9BLaLJcwMsjcRdl+?7S z&pHAs4cYn@P9Inx>fmEqLK~+B2K+p+E7;DY-n@JFPG+o5i!rG@j?8Qa(YqUT1nCkJ zoZ6;^3l}o-sGSdGXd^Z!EO465DAC{t_air!Bi4d&MuJUyB$@!dbRh3&C%47bEg*gk z+CG^~7p#&D$7-BLNE(2DEylQ1u(dkH&yj%ooY`Y(c(qn!w^;_C)9A3xi@uLn>_DqT z+4+K9mLoG!WoU1+2#`+|cn1rsL{2#J5Y%+3&4>D_utNLx?{9*!WlK7e8FdmNTzGL3 zaO(G66dQ#NB*TQX(^{sF1;tULK0rj}Lbx0)2f7T%N(A&m`6u41avWe35vB3=?E&<8 zA+2e`%z4i?8SZF4SPUVY36_)QjguFQyh+w!e6I`1pdpcvtsykf0kn2>K{_LI&t-Ra z)zOjR(LXq76DU*bc8#GgyBG>UBbl92t>iF)R1(DValT$j+gw^*I86iDRC35&-%mn zf<>*GxOsUGVuyYp#Tf=C1{17K05oDA{mC-P}~5Z*2on(fLQP z>OCoENjYyI#z3jql=ugTTqIXe;Q=ZWpyF7+*BEJTvUtn@Q4lgnQr@T zM7c+)ZkJDALuh+t9g!L=8}|^A>JpZKaN<1lP1<7cHa=YGH4%8zc$I=rBs)XFBokNv z;9!GigYzl@&wKa6A=iBYv1i;;xtieCz@zjN~uUmh= z_-JZ>+PLe49_!ys6=Q^3s;qqHuU=y?h~tIzj>I46WyPug{m7aVH-7u=2P&Sy!U1V2 z0aqb+ofOss+QD|b4HOOL9ogh&gE(kGs>5lm>A~2Kpm+|3j170gP0;n!`CL#?u)=G+ z8XIyXiTvm(%ekB0=I3|1)`J?xm$RQY&5o$CzH#f;sa_{g@Pw3cIuKAG?4hZI z(*O`pRU#L*jqJM4=J*C*Mev-|QyI;_abuQAR(E|4b_(_Ro%mxac`ty^$2d=f{ZEMm zB>`fyDfjK1!hm4H2|T#?i#Wm)xdsVrp}B+v4D9<@G(dH(5X~h<75uFNl6nY)hHXGQ z%E9vfI}OL~y2hF`gq>5~!f8U{HjIb(H(+OjsQJg=1h;POh7`sJFDgrU%SZKrsWX6Q4eth8UnU*+7hHtO0 zVFsdchUoaMdRg)aZ=F`YNGM@g-_YYRq`woOrJqY}nz+%lIX3FbhK8X z-X6q&0wk(uhK0Pyrd79WD=RAtAtVuh6w_WFD~Gl)VN0r@u*qa``Fy1MAfPfIQLE6@ zUjMP-As94ra!&sJUB8l?&mrk>lw7iKiFo+>Mq(F|uK`K<2#Rw`M%Y6#-omEV))_4F z!H`Rga2P;(-$EimCn(_+G*sNx!JnT2OHPiY%U>;8<$Mwj-Splrc#5NBAqA zty}Zi6(f!df#iPcAcfdT!MHuC(~XP?sQ4Ah+2ece<0XgOVJIi62xm`v+A6~U#SPFa zM+#X=iu3sjs$@~i3Pa({K%)kXBMRU)I=bLr4+Y#M|0>y50s}coWi@<%|NJ7}=`Jq~ z&|t<4B%5##si_Kzy{! z<9{oMoSMIY9x1wqa`TgM3(%K7)w7PpXI%dR`*|^TD&~ND{emdZ*WaETDC07UkZ*Px z8q-+AcMsWgA@rE--p4Yc{H9MNacV`=n?NmR8l3^cTIYfoJB-(&=*05vfhq?=V2A(O zvA<(s;jWlfQA^!95IS34b_41G$kM4j96tWzfRG!W-#WjCFgS=sr5HnH+VRY1)~&~N zPn|lA8sc!|cm%>rSE$CHFBT0qOIN1p z37cMYF){RG{L4jcDqn@UGT@^!@_hlsLs(u-nSnTC2k?ijq8?d;5l<;lcp*W|U{(qF?Pgk!T>ZV+yN68|(iA1~57q=xI z5edj>gA0Pwn7mAxSy@UzbHHr%EqUWFgWh#ghE4q@klV|&G-W!n&>g|6m|HU@ULns- zp91_vQ?_vREl#Rka4h6OpWtNhQw^Cx_HO#xSqtcMk<3p(RtK2GbAqDq5wX~h(3gPq zZ2#0W{z{hnU)Pvj+%xXTyUs}+49J}{3IeX$XU?M|D@4gRkEFXA(i;+7fFXQi=I^tF_(2Xcn0Wh9Xx#0)C2m{e*2uvWc~ zpWxchRKy*DLxRdzGR}d`_S7Nu4ofL|AowIf6F-(w5wD#(ko3!x7E5UYPWN zeWIH^eS%R?c!E3u)Cq%on)+KfdB8fu;0_8bb_EC^1LPu4oss3wwHj0M z8V(@+qVmt`1&ALFp0tg`Ek$skc@@ntH1;n~1Ybt|EyCi`;53QELC3@=SN9i3z$F8z zZPmgfo-Vmz{H|P_H%+yA!^%;-5_0Jo5kGMEu&Ac|mepTZotIh}LE1{m;E!4@oN=>8Yo!9FhSFw6tpQ0~8= zKrJG$39*{ilS&6jJ4#PaWvr0Y$AbR6Xi+!1OklQ6udt{DV}%Gw?p}1f2tgMCKzxe} z0j4N{gdzHlp@8VRWaY|8>h(pnq68$@vPN zYsB1f;sPh8PqkSLlR%`{8_)>IeEFbOBSqJvgoDrIn#aS5v*4opKXWGj&G+NxkO9(` zycehfb|fyIxC-|zN_+@?-N^X|nF8u@_rcrHun`hjmTo*+^N#?BI`#Y zty0r@*y3?we7au+r|!8k!&j>_{a~SA)t{_!2Bl%qKpR{49#^n1ry~ zrqb#THZm)`bq56moJVwiN3eQ2;lLP6ia6m~DalA#n;2xy1F=D=cF88qiVTlGbHEtR z_*(Oa9l$x~FxzwLg92Wqc5SeHpDR92T=@QvYY~$D9D6)5zl)ziomiHD)5MJKah>-8 ziL2ost4Rdwm?w@N>13OdyLiX%kj-lU@meZ&2=&6oN}(PfiHR9Pw!mzn@zjb(U)&Do zPV=%;a~rv&1a&jt>P3@Vh8YMVgeu3VpZVzw0bO z5pZx?zRy8Wiue;LKwsQL*n6rmcHM?Crq!D0&;nE8QQ*I4CM@|yrISM0PJa|p7g3-F zpxO(C^$1Du`i%L@Il;73mnRZJjsPZyjeX7GAee>H^*u1D(5bgSMxS|qf7d{}^Jo}s zD@TZ@TlCkaxVWUv43_&nhB(i@J?Mb`g8r$)!LugcOn72@p#f#P+#o{a5_a~M-!4!5 z^?frP8MYl=1&VS8xCZ&q!8&s@20)K)15BhrO#j%^bYQ`68+3fi7yzK*V!%aSjKM@y zw*7OxP{JsnqPV9qUjL$d=I8HED$K!;U>16(7ya3&1)zOS9QC}=S6mDb-8S9K#rk)~ zzrn&1yAfd@&eYFid<=cJ=JxCV3E}Zyn5S5APlIKSJ3vE&eG8)I+{cp-G_D($23H98 z>cpjMZexl8X=>o=Ccahi^dFx?wHu>T8p&dY`V-Khb-)QM(FWy73H-t$zKYuSRB2Ne zB9yPP1go&Ngk}K`?jyUY1cLwndqDgH9%@8v6}5?Wql@lsWu*qh2{I#L*8~E)>))9y z0xm2-6sB4YL$KDgv-=$@&Ww($Pe!13!3+GsL041FAv*XCtjZ z(cWZ4ovE~S<#2~6_u~=hGodOzVrCfjB*Bcac++e=3AM(I2FiPB} zKGDlwPQe913}edjk-&WQvp^J5lp(?tsguAvHeRU|o&-=RAqUhQkVfO%k^rLUa%AOP zwk#OoofnR<7Ab538U=_PmkD`-8YVz55bk-cJDzZAw(m#GLeCngX)|vz&|e7Y5ok3Q zX(96>`5IospU^j>B^%@f$S45pNz=AUNBZjA$GQyx^IR9M zio~_mR2Ge2&;-Nf%!q?Q9h#Nzgk+5QUq!Q*)K&+c%3xyk6j7XN*n?5^@bWUuU?(h$ zkRO9SZ3w3Va-+~s(9p(*f{<*WfW=z|%bpnokhPf3@`TV&lMQbdj0aN}HJEJK!K`if z=9e2pL%3!3i^wT_afyjxAa1ChG^&m@^~3m!kq`0n)7}&DclyKH2xzVt_GSC#6yzR2 z7gSTlH04lEE>~O!kM|)t&_R@Wp`%kT=U%^i(|E8?jmRB?T|Cg&z$@b)%=9_Qng9zd zJx1!kTEzFNbuIpkiJY6OSAog_d8P=%bLO2*Q7F?xAa!E^9E}OQb?a6j)tn%R1>G4k zGKzrKw!YA)sTB@qP&j27nU@fu1EF{w7_eC3iOvk_-@%-wBX}`q#yEi2E1|Wfeo<6b z@FHCA(tq35)I^hMXifw5#e)HPh?x{&$eF@*&&LDI{U6tvUGzb(+S|?ZBs$)%gRLr@ znjnb21n0X8Wys<1A7ihe&e?_5qpj5oIYgD11!1b2=zJobQ~$@U>(>z~W`yAMA4lgh z0)g?$tvYY!CGxw07vf~#b1FcV<6@v|y8yw{#LW{U{Wy6Ts1n3r!radkF zDWhM9VV1+#BWXl71$bz_r^NuV3R0Y%Va=5rlYoiIg<4q%wLr+B&+NN|ncEtzHESb| ztR!^2156qk0Am7qyl4gxB}F`(9WjzaAupq~V3@9$;g-byCloQ63(|Ctt2Q_By3#t8FjK!SS_XN%f;-IXuuUHrqsdEzp(Ov%?(8bQ*17AH3%iH{9JOE(z%-KsO z6K^dgJL*6L<4H3^n4Iu6AlOQDW^E-S%Xeki#Z-<3G)V(WP)lSGh<6Yik%X09Cwzx--oWgJeIRX<|h-Hq%^ILx? z(+EkLhYTTkF}&n3Y8k+_mm~0}5s?c!u&YSTl*X^(CTPfQH$pktyg}W=c9j1Q5c1{W z9nCTC3tDiFQeOcje+aR~n)b3FVe{tu7~%Y*rg(t?GkjPI7z-;RQ^2}|K(?j?pST6c zK5x%L2~Olch-+c+1R)6w1>Ko+Y2GGw4j3e3k(~^cv=A$t_B4==hR@=d?ePuvhOy?A z0Yrq>fmNt!fx=|K(-AR1j3Xvhbh$Q-Z5xQMzr5O`SWENJD4e5O&Waqy^g?-1RwiH6 z0T7M=GewHLNlPP;yI>IV8dZtp-9W~=!%3q(49lNKkU$IvMU}k7#2d^1IIBXN#(-u^ zUBt)|3@-#i^ML1(i-Ac^1=!9(Fh*u}#ACMWLmJ(>NmCu#M=^9-Lc5GSIQg)VO>+3tATtL|Jw@<`^SIT`961%a1>#MlT~&DaMqOQ9&vwkT*%&r?!bXrE4`EWX zb!HOKi14U7T8~K*BKsXa7@RrZVspI_#Gx)9KQf8G)mazH?(FQ^3FDH6RkaOc`IeKvf!D~UnZFA6ttK{VpUpZmY5z_XI8E45@)#X8=Jp|O1kKkc z-HyR?1T;X79<6S1978m##n?|CzFp|gSR98@T^2D3T@6J-6ZsSU=G&}Wj!ullr8Ob= zf%rrnflMXL(Rlsl4af^8!Z6^MC}##kT_B%e^q+^L1!d;+HgH+;$X`n6OK0SvTvo;( zAVM5O3?ukTCm$^pWNah86AB_97`;w*@;!rRfPy!dVl5^N6`>^av6>{(ug~Oz?;4I5 z-DPi-2f^{!Ra(Hg#=T|Bhs?>!Bvs*uw$0E%B&v0c@ElwwoBUEE5J?_E{bu-# zEg>z9f62!Y#e`}W4UrOZgTQe#i025FfKqIi+)e(&ni>%hqlLCVMt^s z5Ilwfkc=zwlbbw_*1;bDiNQpXZiQics9VdrVJWF%`-`hVxqq<-6ZkM)WG{N-VvSNd zHWxw=+n_wjV_aB7Di1_C6ceN>(=@y7-r3*Pag#;G=^I+`SOOTFHxv6=$JxXaSjun6zGr)+@axD`Yo%7688v-=+XHh@!$*=i;4>&| zqs1ag2gvXEb7Rl%avU*GZ*y}u$*BR>QWG17s~94=9S)wny*ZnJ4P0+Q(m?y_cgYR* z@ic#A#PS!y^Y*~Uk^gQ}N;nQg!{W)+y08ojJ>E7+W7S(}UQ3npsN;9c3RMGCbywPB z1Q?R~K?om*L;ucy{r$ka+@mNsv)S+sHUpOEEy98MnXhtI=kNjikcG#f$=bl)I z8zHbo6Xd`((wqV$#9N%GUF4Qy3ek7xnjnP4U`zCJDW@dr3c!@t=fddnM!xx{5{cq~ zhW^=>O`A5Yd$2u4?C*;0^^}wp)bzK59FbuYfO_u9|1_~*7Mq|pqj*S@MgWHBR~$gP zBPXHVKw}VQI>`NlMY3yrct;6(;q;j^38bI^q`CzOs2gKD#lF)a$JnzCC>ma%(6B>y zBbD$lt%u@BhhiF2w9G_aaM_KsTTETuFceo!&XHl+=`W4*F)!^sI@%s#-!>u5ApXQO zqhj^H$vgSObnq9D$VSt1psGCrFaujC@)!M50I>TWFd+~qEEG`ZU(Oks;-D#hX%U=Q zm73eTaB1?xA^kN0aen_J@T6QM+L%xgdT8i(F2L@3vUn68MbVJSx8S}<5Iaiq#WUS^ zOYz$WeuepJ{M~m-(y2qVI}U|N8Kt++cO(`l!v$E`vAGJm6L*u!|LX*rM3^r|@$)_F zMaLa)zX#nmm@Ie~zEv+6z5u(`>(Db<%%nWFyxfp^5Mgn5M7wG%l285WY1ptcwo+z(e*Smx{LO8_$6HYZFqojgh-iVL=H-aF^HfTL&iF?P zh{o@VU^qvbRbvP>6uN9GaA_DG&5w)DoZMf#uOPADlkhM|FTe~GUSQb`s*}q$78l9d z_#F$q_^+V*_t{GS9U24OrpEpYmuOOKy37^o_Cu0Nzyu;;6`+J_eREIL>L7{R7y*P` z5k(V@wr=fQuQ?f-)!}rQ1Hr0+JV}Um+1jHx#oe%(8R2x%V?ozAIq%U#UY2;r?%2>gP>U@X_9CTh5$f8m&PA)F$jtrydw}n^N)dRi@|^rokFfnw9GLB zG3jg%6+0jlm4G?Dt@$T*r%xhR zmO8q|Ed7iT#>&ExBCJJH6HIC2w`aBjCr}ZJ3g!i2z+$lzO@!El#xuykkDF6KSR$tC zx|zR1U4tPb*5mdm2v6LI?xAS)rDg++fD$UF{yRwNP*V>wQN7T3$up%-U$aN!%mU^# zLDNZY#MptcFPC-HDj%By&j7j>A<08BEtqV z5Huwj{y;I%xG88ET*Rf~k*LBd?qjJuvFs<@QzvjY{eFyI;8716jx2*wLPgLVQ0a(B z415Wo5`nm6lxoBur)OafF{lW6Vh6@$<1Zj!QyPmW(TXal`>CuP9Q+W5%S@w7$A0O+ z3gNa;9n=e`VUPYe$@05!eXr8|7et}SDNsN@|K>M%)r`j2G<*=M92`y8YPk2~4~#4Y z!_&c@>V~1KLylFxxuqh%C%ZFT=(hb41q0dnWuXP)u5ZHEF8}T4PIkrl9tUJE1@AqZ z)4nhz+EmdlvX0OaIeKWw9W_LqkC;fFF47{pmeW`m7-y$&e(Lm< z$1uL0gFH~gd?Dd-F~|);*^UhBVDRMDe zLKB9`atNR9@Vmj`F9Gh`PQPDW*A6A}HyG^4zI>PMkE`>ntFM2ALaK>I7R%pvf&1JN z&3=~6uU@~FcwRqfDk3Jv2L`cmWa6h%Z(`t+ehzXCrH>^WkIGZ~9T;pfGS~HD*e{LF zAr)lC^PeYvCNCgxo?r$2q9KecT*9NUm!1awhP5lNA0X4y920aLo+n)$qt$qDIf#%^ zFx2{!>&-HMqEt-XS>ra(=5yu}nlC48QX!Ag#$=XkEsd6jZP|m9rXLG>XA{6cNmmFD z4e2&)6_X(O0P-Q52~fjmckjkyPfvs3L`hSmXgFD~4YddVHMeuxU+Jobh1wFvzjl0= zmlk|CIqg3$|If;}{AUyVAGZm7`A7}LL^=;HnWYF9vQi^`I{SquB@)h`;_5`6!U8}| z2>{oH@OzV=ob0Q`QChiQ9!(Ne$T6!RYfvX9slzDNPD9{;IO7ew%bgFh6R@6z@`{Vp zIygu$Rtxaj{i?2B^fBOWMJ1&Iomj@0rv6EBarA*(#@|e%pT``EGGDWbpWo>a{z5 zJTInslz!a?;`OPaO2e2YeEv)yvDicF6=yu3CntmYYYwYGI3_Dl=3uL2PhIn+7(>Ql zzpZ_sRkv?1-uZW@;j>^js3qp&Md|&*(>E=fY9r1HQequ)LR?&&<-59%AC>O!JfCh- z*V3|4U%$cf9hhEUrA6Q7z4P3H&| z{gmU+>Y}2`KB^aUoVv+jGF&%JZIUfqxaB2B?lqFpQ5caC35~R&RN9gW2HvLq!t*CW zJ|-v+odah_^G@)aZMac-f#u8twY$>uz>>!n*49O67hA={|ATn$zkbsBsW%RRnZEtu z+GGl;v6Y_x=Y*#JRfXXKhv}LCZOMhdd{8lm#Wu1VF#h@7nnvsqlE$TkiGM}YT~9bgCh zIT>L6i=Y?_#tFIT><|+p+X8jk!6U|Xsae=%!{t+Txgz`|$}k`=#!PDb@;}dPy*37m_!fW!UjzJRvjP}=SMqRJ4ECHM*BH&fL#h7x zf0TCSVO7`rx8Dw>rDt3o~R-9G&VLEmj)+UYPsTrjJ<8exa1l4ZLl7kIid6ic--o!u|f3&tCmF1|v z(!pD`F&7-C#iCKQ%YzZziC+XIH5y{C%WcjF<*upU;v5 zjr5r|1S3KMXYl9Y-}r4tw7f{*-ArOXgH%Jm&CdI+LF2};AnIosFCoPG3Ibmd?;sXB z6BrXRH#jv}xF}$;6aM?2H>{qm{5!5YPDp%F-`CDc{OKJKC1L<>WJj$aSZ&W6m74&I zwq-t?3Zg$ib}hJ8zz*NSh*5UUf>|&@(I$uTtch-hSGyYCsh7KcY|54RL6?21jsknK zn%6>O9KoWT$|W2Vbq?mpHJAH3$W*}4)g`6pRX}`npsgg%T)hCbM^-gW)!i! zc+8kFaxBCVBD>)jm#Vac^YbrwA{tS+)Ur(;Nd^YqSD_VF9IH(fCC`(&@1$4i)5Y%i;T=y;9t zo<$fPEGmLbY#>E?=liWaQDGO_2IxH1c08zBtOS4gVEG%^qQref4iSy^Ov=Xe<4v}a z>)N`m?dbAP^@Qy64{JI^JgJ~n+bf()ECWcuB21!8U_u>na@-aE;mo|WcTDxm5+DSK z8^$#=Wqx}q;bi62B^4pO&o}~(oDsBz4cs`EE13_k4KYO5LuCcW>uYZcM9hi(jxIPA zKj`nWvd6o#1FjLXnce=%=wHmc*pUeqH9hoocnOo!65%j}BiaJI{M8H2zTf8R1zy=T z&gguS>l?E%Nj4Q|H%|xHKju3U-t+@MKM(7>EmlPEAKan6x!5-g>^L{Y6K>? zD5{|0c_o%DhxeiJIMe>Qi4|gKQ6dOLj(lP=RDFNdKlpBkU->Bc&8l8475s^1FH0{c ziA^m!fJr7<5+}*~#LdlZ|EN8pWgsFv@ZB>{RKycc#2E6+kKHfj7OVSPZsj;iG@nR^ zIU-2wnEwk>fA{yTD?kjs0TG?Pwr7HoPX=Y_ZK?OmI))IYnW1%GlnpXi=ZoAzt)?8y zk$(inyT&N)Cs4ysbea;p!90mY0ZpU2PN#-@BWeUDJ3q2EB$jyNQX?;B|I!~zdf(@V zm@94D2UCkGbYNQ0oChnKvb4lxUg^k0KLJ({MO5rnqLhEp!z(fthOB3EKPt59+4TCq z!V;8*=fJc(pPR6YiO|d!1wiA+L!c01k-kGh2W~{8bI$C}m0tMgdG7~~l3$!?WAIE} z4?EyP22)A)A$r&Z00~IVR@WxT)m zT3NTfA#!cb#qTL1WTmDG3~A?DF@rG}^2Z%W91{UDT>M9hOwN^s^+hR?n-2QDw)uA) zOc3PV3C+c1_l9L}82bJdTRk`CXVim(H{QNzbs!E3swNl6*kx(UnE^+?_NwTTRV0AI z2oax{tQ-A67S3+$9w#2Glt^qR*LQ&UWYx>BUV$-tQ85zMog^fQ2zgIait+#y9ug70 zoju$Bk2x?ccsSDB5TP#ObWcHNh@R2+crzHdIKvO;G@mZbR77UenQcOxe7a26Z zoF^ywtNckBX-=Yqp)3ejjO1@S5PZb10q8k^WXAibxPnkevY?@V(5zYK{5#15@$g`s z%jVL5s-+))JPRTS1KIX$b70Q$h{2Q`M>r|>9zAMr62DkB`lNc4b!W%LKh&Lhy`Rz{bdtr3_$zifXF@sp5pBYEy&g3NX{#);Vg+9&hZO~3q792ZjI3V$RW z`th1ped}qbvAG*ePRpk3YrEGoY0$=n+rQ1|i&sBCP)k04=P;q4bAGn92a zYenE@owWI@TjBezSPRK2NV^Fki^;W1j~fd^Y9&j`XDdw6x^uE_pY>_Otl7$V@|9 zMYT$#JuB)(d}S}S_Hp+!OMS$`l3e}8oy<{*1Ub~IAD}jPI)mmbXT3`|~Cm#J0<5|1E^7p+=$XW53 zGYi4NT&1*1MzE&6#i$;3<4c*ZohCf|Vr*grk&@9oSOa_j7i{mE^AMKswMkR7n>r=R*C-b@(JmUYZV zHi|T}>TG9MJoQlHz@!5Q4xB2<=euRU{XyGrFzfkwGXL7N=MWyRV=foK&xzl@W5*3{ z)mYYo9D539lm>4?FXm{NTYP(n%HE+Qkmp}jobzsh5v9n@2{!8kpqCs_D5m1E{hGA0 zhdXZ1xceq4Fl-hn)B8nXVLbZ$jEB2;xADN7X|q{Rbbp~iv_55tsbHdy6FVW@iqFN$*gnUhgdvq0^gff@(|6*4T8aj z_b$|`T+REqDf+nj_!}_mC-Z>qmz^~K-FOPWo!ajZi1O(})9(D?d@DM*S!zU4+1!N` zpxH$DuzTox6G)%g6D~zg=C>b$ZhoDA$x~R@_883HNzu2TKxZa*ld)k6I+8D>SA6ziYL) zkN=KU|IY>%wL$c}jwOL5rt;7>XG)H~w@kS7xA)JZQPBF|K}3{cq*fL2iac0+*k9{} zXS$XQi^1(&Ua-g*1BFqHM&y%YcRyfoPruTE!YzNr$>PR?{&-e)K(1cxDMIuiv?LVc zH|}1;7nA$Bqi^BVZJ~JbL(`!}qtGgS&U<`??K#)*`_B0V1I}&gnIH!g>U`PUs@ULj zTSLB*f0oIW{C^Acx;kT%SSOiEEaVO}5f zx4i_;YYI`cc}@h$dj~U!CSINXt>WYUp6~3nw8-~22SecdNB%HO>rpl^@r+M8heXQ< zyv-XZVIBcHU6II+hxu6M-Bf2V=ygMC$@n_8U!o8no+ed1X&B#61W(MB?{UReO@A83Eh7MeB(?^Lz;hHFKO6NJx zgu14LLe0L$sAEm+%%UjxfGH0k15x;xJ4wv;ucA=r?YK0^gN_ZJeXk8-SZ=HEu zsR7_nI{gm3?VEi6F0X$XO4$ zPjY+QKk?FDskTtlO7pHIQgQ~N221BIkd&QD6twZK6J|>IFa0PI1iqU9nixWuVj0Yc(Y>v3cf?{!Bg!2W2~TV)xtgW$Xm*dpbLNWcqRUrYTKL6H>;u3^*0x^DK_& zzZxzi-R2I9f<-1G9Pd~R;u7b+6iOM5dC<_kqeoH{l5{pvmrQb~xp?VPn*W#aV~-{~ zzj!w^`po=_q>!p(A9eQJO?KMVdqMTYpyF7WAA;4M0TYr4iohh41ovcDv-U=)d!gJA zdMG0!Mk;R;TA5Hb%Q zMtcxVGO$U;BqVp4JV?8!4Qd#0QTSSLVtz;0l0onO_@ED(8*9go2glm1*V*BA$aGOf zHDbSs<-JBgsgzv?F(Libov%`wHpk30eNB_#g4_jDa*pj$=XOqpK0Ci^p>%t_?`Ef9 z6}#wbT&5-$ua%q?0_HHuV1WuquD)|YCa#l-@y=a=9%+~o--e= zlB$%ho3CfF2&G@5`fRc6Bz13llQ`2;{!CI+XEM{ds`eHEOS=taGpK#IQ1bIjrshO8 zY2D*So>P&G%+X04gkh@kmZvzJLRgRjvH#+TOT=DEo=li%7O!%}0yV!Xj^)Nd&o()% zW~F1PZRCmb zMy)l*RR3IC-Cyd_3=XEyTY$42b#5+rfI-Ah#H<}e)W@750nlRS=2_iGGGzH7=uDJS zl&nM~_G9NHY33Lj-oBOIMFp9!4;D~y{)&qXtB1%BetA&Cv5Qp3SeF<~TPhmmI zkV$vNDDx&c;L`84&A(FiPFd}sH+`#}?l*dYq1-y9S+yC6WI?3P{G558ea&ByN`)xi zPM(|9wz~((PuqF5U6;>p^rO^i>@@EPV<~MEiRFi{{A49Ba09qXK!tz)ot+zbTaReZ zL|7K2hRjI|^iWWByS9r$L-&a1rEMo18Oz!hwh?Rf6%Tq8XBZl1vnEe!3^F_V9(Mkr z@=$#>tn#bmO&igVQVPbP;BD`*BTN>t0F!D;C7Y_Ocoy=Qs#K2DwXK*` zR(!g0L3Ae!GjXxWf{OrG*$Mv!wM1F`+oJ#;V(5pMN65JQ%5avqeo8*vcFDE=v+kaA z?yafo&>;7j3ZtJs?!1?O!DINs*VF)hzggZmw9#Y}4R9z!XT-g;H0a)%;Rj~sy9>w~ zaR{!eMh}?KNvV~|G5`t->5$A(@^c_`S&n1b3$mHCX$t@Gp7hB??27B&FSfrKI;}7Cga5Y1T1J;(ens(c@0OWl9yx<*B*_RVtOC1EPuTLZ1_W4Y zqoxol!%)CRYsXPu4Fe_UKZrA&H22~-BqSurOGJLnP+-(PM=fnpP5_aWCV4Y+=R3SR zH-KbUrXZIoGG?+VVc+cDs32H3J8iS62Qq$u4q9PDz6Jja+tB#YS0zWs>5$F*z`$6HCQ_ zMV=+NRG6Nc!1)zH+KWX&q|QMNkEy=v9i}-RsF=^Jno%RP>W#SgYUSXU{)=-`*1%Q8 zMBR^vlNelf$f)=@a6`8%%=~2i($A~{MzUwE^dc~jn-RvSAW_rpikHI8F-HNdY7#+N_hsVXzww8VGL3rC z==kK4z6(MW;$?f2LvG72RJA|{x{796Kbc(DU#>iq)$Q`{)Q;EWijpwRUg25|3q_0! zrg`a_IB5H#jKQdTKxSOKzi+NwK5;>C-76Yg@G<=Ov`PTl+YVUUN7_&n4RPd4i;EHb z)LkI$=+DginszppB_Bxc*ec7PhGG6}P!WqiE#n4`fwhSQa+Q~~nHStVKn6-u$tSFA=rR3QIQ2vKee)jy?DQcjnv8zb^h~(B z9TNTk7cFd540|8KiN3=0^G>!c*xhyg08nhT4+_2z>ie4|Q3XqEIBOy7FbQ$LLdn~u zwQns?pIcw&`KjW=H#3Gggp#7l$iZ*B1O@J~Vh#d2p`=DePp&L|Ox{_CwwvMkM9E2T z(Fc9Z5V%Ooa?ZylA8;!zw38w5TA`PhA*8L7lP7KGP)2AUG9m#-IFpm(Ro}`%f=}*3 z5oW(Kb~jVl$MPoqL6Ozw8e@1#s8looHg1oL>Fc|w%~)kdK|Y&$w1_z46L!GVuV0sI z5>Arwivd41ev(6jV1%b09v-faJqr&(RC*m1<}n;J_3LYT&X|B^LfdIoZp4qF z*VU9W89T%L6%=EEU4NRmAv-{8-ZAId%{LM1jwErF2CGcY&bEEyO~b3ll@G^PaXRhB z{!vr;0(p*VbViJ^ybMWy(~rNkH;XqI8fuUtjiyP6G!QB!PFvI2@K#Hq6&zUo) z9cP(Wm?14BOo!;8y@rC}g(qqzMJdFaRyL~^&}@4Xju}Z%mtN19;Hyp5G)nCUMLPJW zNByWZD`dw;H+Qhxg4aVnW(2iRh=g{PavN73SaA8x6+X`nTf43mxth|YM!u7C7c!DxzIF0!eec`DjD z&##}Wt8Hl_Gg9yx*%hd>r_NWjiCS9!xGpU-e4QO(8@v?3$OurvD)6!%&Ok4VxUVkO z1cW|}H`OdZV|D2tFTSB+3wm*(`-i}sr~`a)l2d^>xTKDuAS?S^$f%AVv9GVmB6p)7 zKs5hScHAA;JVZAHGZ_^9k@Qo>{IP!N1WW~xm(OytXm_?@DCAF$*CZuu?j|h|mmLY` zpHY1q>KVda^Hy$+43+PvSIf25wp(ACO=_4y-K+P2-;*Bl`I;?Tnky;-vR&p*6e%%6 zIUtg(GfJ)sPOpN+Ez%)|-e*j5&`>5i!^p)($E0>0SR3-@CTq{u!**Q_oGvR=0(J?l#=d8Ep3%CFP zi|_LhH2V@`7OIWdpFTf)?1Og< zRUIOhk8BgV&IO(m!9ZPvpf+IQKmYtwzfn^MdRGM~p$&khS|EAvOhjK|R|eNmdt0^M zjfq>DlkP3iaRfMRCKF!>wLSD|DPhi~+MYaj!YSP)sE2==|3QD6eKn3mpKh4_s=A`@ z&^?xMu@<(1bPS`$6R-yi>1qZ?{}rS})sZ0db?b(^L^dw?K|zZgBHJSl&ko>38TxBF zYxIN3!5zKAV8cQwW|OxZ3&}S3^7CUTgyesK@HQPHM1CGtT!U^BPC4(}h^#SyNZPR{ z$}KhxYy<>kIzfmz4F;yg=b(rZ#nODZfqtw4N78(h2kB}S zQljY~k0c!!)s8BK6Ab%kdE=*n?Fr@bl0G=3yU~6qKy9cS13&&UeRKE~VobM*7e684ajXAKm;F9t1bsW& zfV80C(js<}9M&e+v(SzyQRMcAzS3eGj)4SKH793OqLZ7}Syrt>6hnzN5S^06#vCEP z?g8DE>;N>Jq=-fX-}v``=sEH>)Le*<^!tXrxud z8Nr9+FKkdKxF#U7WuKpXsh=5nY;s~;tC^-8^^1Y^cqL}Qp70+C`f>P?jpX3x=)p}-C@piUt%WXoGach-*Ffy*CWBV z{1yuhQRp@SveW1zU#ST&%D`NO1)md^Xcxv_5BYw~i>JDDYZiEd&VfJrCO}RTZe-4BG?D&fs-ky0>*3`);T2yC>$4x(acy*v zCzt!=WdfCmXTlW;NOo8z%94Z^xd$}pS3a)FF){f0zNwo$4W6IXomkz|rgemg8U$K~ zJJqDt#zQq|k^*~aCNRh7Fdn5l`x&e9ebq$}&xa}%K|5I)Y{Rvj~8{fKF&5-J~AIlhw?MKlQ zx$_KW!E}_QP(hIPD28k9M-8KOY#eHhe7jz3ka}*(dw-|aX~}GFP{@jjn|+=GKZvZf zq+Zil#*|HNhQJEZz)`-`n*PjgR`S+}1z}k2M$0Ie3Po#$nQFm^5MP7y*WSTlG)bNV zX?MspV89S&F*f_I2ClETQfy0k0Suf)oYkr+l~!CbJ!N3vS)ex>V`;$~p*bwhUJxnh zfF~WN;GM{ld|X!6ofiM5*LPF2bP5;0%QOL7;Kj7#@W3{@LMga>*3%g$zDlge*Bdu7 zb;d={w3AkAHxqdoncKM7JMBHcjN{X~4-sZBorkhso`+QG{tWKP4D;>=mTdW9U(-uJ zQ7BKMEjSzLcoh7!6{A#&1wz@xQd=9I>R+{!d@FFnA6Nn^w#7T_q2({y0q(`ZCKz=AYec@6`I^R0D(2 zh!m<5_TELa5Yf2iYRG~`H~##f8y`ig+~8g`D=P*^=`b;s?w|! zmA8tf)cC`3^AnKTVfbDJMwgIeLL(@suq(pqLmr&+6g8&|rfBTiExLsFdQzBT9Y^B~ zZoeWPGmdU+_jc~~Q;%J8dycCzK6{Cw?H2sT2M}^Ixd>})C%S32NY8He$tkH=9}254;w|hDJ`mI?UIex1J<5@e9>6^X4)(7iMOk>UO>F zfsK@XM`vpvPFI)c@4&OAwvC905N^QDoy2rF%}Ln)Cq2Jqxx_$1f?}f3i78dH&;N&) z6S)>Yq6@WeK7HAo?6R+^;Y984a(^p0a^t&_a5Fu&MoCSkCT#_vakZeyK=vH~xES1) zAFsI4cMJ(&D39xIgtJ2yS0Eab?&N>&Z=_Wp=+eDb=lGm;&o!bW4qGz{SBN9OddLfy zDPpW9sU#N-L1=<@(PZiFips)+d(0~rz@X6pKgLv=bN`8jV(l=-VNbP7)#koyMX5~e zmv^9&D>TqJqV!oTFe%XNuYCu5jOZa7uL{aeX22!hlm5Apb2$0=*$(EPYkznNZcdwC zpPPI>AZcSorNI=$;u}eG5|sMEVB7$5hu{og)a3-)5Fs?06eNE;TKbL0Uj0=^l{KA9 zx3ewf=XE_LBBH^JclAM2ZGVdHmfMJtXAo2-2R3AwrsgFwRK4WA` z26Nt_OheiP)H2lSVu5mmKY;A1@V8`IaB5HBlXOD(H>1mvlafSQntVIa?)LnsrJY?T z+c(Mb)lmp^Lv41+Fn6B~b-B7g*<0~3X2Jh3xzj$N%A3sPZc=SIb{bU7+Uuc=M+qnt zVC|=4V%4<+3T){0-CmG-Ysb2i6;*+NMFy64Do>5NeJ-V^owwU3hR6mfRn_w^J;ZoH zfCE|J-1SQFZP?nqjqVJi>_(3n6^%sovhvCCaq&?bLqF7qEeNp9ev;obv~D;B1pp*D zs-FsE3L<7=?NsU0hh+gTeF%C1(kye4=S4-Clt!!}YpuD5renmRC|r|G6I2-uiJik92ouJC5oS>r3&;4+W)Im zsK=?nH5ZWa@MXmESXUhFyJBKomfN%%h7h;`2|}isKaw9t3-RXKmMndIbI}XFWGn|* z!x%>EV;4i}DWo`jmf`QDhnL%~#g8>2-zUf?WbYP}m0@t#wX&WeWe#E20+A}9V;p=G zsE9EXc981S0}JAouZ^l|-n4EGWzNg%c^u0>W*c5LyY3ZM`6pwoB7Bflr*G&vV+Z(r z4AuzA)2|_IcN#A0PFC2v`|DsdTfnxO!b0{$=M%wK4xsQ zdl$dlsSjB2SBq)2J~{6+?h5ezzw7?^$-E)4*+nsf)u(n(4(LV!5E=rrg=6`9tIRWT zcHs11t?egcP|f;CGOFV=^KiBJ zbgDQ$b%M1+ux&>H0v;n)v547LR$50yxs?~5cYRS4mwwe#z5aV?qE4H#Wm)`$@u}-A zf;OA#3wjlFcbIbV4ylO+w_Z>Php^;@Eg|zY6jJR*+YnX^KCY_h0;UjVb^Ig^f1a3} z$7P(Sfv3xvg*mN!YlT)_nCcpAsvmcUuH*kJIm~;@fAj7eRtIXm`6kkUd1@qS`;Sbq z0^{Op zmzO><)q&mp>!7(AtXNZRN-aEy9>xPY%Z@tTJ?m&LI<3o zuf}>NccwDX2%ty}6N3Tc@^oOVf1MiPh@nU5g%s}#KC5L%jUSDNax9dPjwa!MQnmzR zpvhG7KWUqq8&^!ya{KRQr_LQp%JMAN+jEM8b@i04*!PGChLKIb z?uBC*3&gL0GbL`Vydza@GP8w1>=UpV)(eP^9A0T&uF{ZLo7m2xU48;{={jbfIyh>N z%b7*5Cozkk8Va1dY`lQrUi>p{yY?oHTo?*OM&+P|q-oE2G`m3hG#~?@m39X2ZE0v8 zUEaC~V!$4OmDKJl9V1VUYe5;sFNcL~`t+_^|5cpqt7&&Zr;H{rKH*42)9u`C%pC_) zO}YbIZrZd-=Se$M;N0lCp~zqe*3P7|=?u2O2@KoXR=kBnD`RuFzezn-%P>{lA zBfH8J<`vvliNGjE^idx%ub`%C6>-K0iT}g4U-f3llV%SyO8(F6n`N@Coe@&P0e<2Z z86lkpGmRLauSU~@^c6xMe9*3$XArP{?J1n<-NelH?8gFQKL}`l{HejR?7m4ga5W!V+J3~oE!y5g(I{p*P$owpoRXIeuC?sy zDQGWwCz8Yfyjb;I;pqDy$RgE!<@N57yzR&|WuHO4hJl#}5c?Y1AkB-R-)OO%If}YD zhM6u;S2Q4_iF!DL3tS8u)d4)2a#zzas!*t;VcsyBy=|OH6EBaH>aG(X6TV=V@>XW8)Eyxg);Fd%tp`_6OEZU3NK)jJEg`NymUzpjkY~t zmMpZ8U-fXQS~rS8<1FZYdSO%sn%d}i2}}TT(5UKI+26gqD^#YDN*D&%9J++^$JnSr zTy;ZbB&m5PcUz2HMSf8Zn9!KzQxZcpC2#`9y3w(2)?*rH9!SGGiAMSl(wrMba)eQ} z)c?Zq$ajw5-^;Ju+O2Qqy&YA(^N&Z4^w7&!8_H~$>5LdVq)y=hoO62WQEYXOA2@E@ zU*2u5*D#dlh|>#KfY*zL`)PP;um5IxT6Od&g1j5&(!hbf6n&iiTQYEqo^?YXHFRCg zR<{b>&uw;25&e^ED{OL;?qku9UscQP{4??zP=&2T{nI`+ zjmFOXe@sD+<$q~479qO(vCsFTvvtY-`M>gyK3kiGM66_*+_Ok;$?Y^JZ`Z3gjB0EM zYs1Cw#ppbXGCy)k6Jk2%s!oQ2iPxQXbYO@KUqTzGP3|zc)H`w{{Qd<~(CPP0~|K&G`I|dr}dF05g|Z z?kLO1`olq%;t0KO!0P7vM(wFdCi)m9ou;=4voz|ZIW2?p zFde_f=a8)*=}J71L}cQxr@%5;6h{m8&`kRIzAM%Pwjk%IHqlbv1ZEFD-gMOgaCGqg zhf=^pcd<$AX(;&o)zfol0q;3?q9-zt6^TGh3JiK4@(HAU)uI461ZsxpMAu6~hRD`p z#M8F7a^B}*)PZE}F63|1tH`>V^YAGQpMqJV43r&X5A(1W$IurvVe)EYUwTVX@gJ)Mvns ziOrV#Z9c7r4*lgbK53s74QL1NXEITVM4mUd)Lz{U1x0L)PY zHGfT(s8^{IQnjthrk?iw1=mrsgsypa0N6ol>n;I zV^n&sKr6$U1I8yi21I9CcH`yFNv(~aM8TJsHs$kuGl)KSpFZux=#D;z`K%r^bCGrQ zCS;)HlMy1X;iuINu=K2kkfz_qGGJ*C&X7^0OJOtQ`MdY;1JoIz4}I8a)DU9s6_VsE zIH@8RnWF?6Pe?e!Ujg^Ouq?<-eewN!_$1~2=t>l)+khWp7g9M-^D zyL+<-K}A25r7^!ULsdP+FGSCmfry3>_8DL>ir_%HBv_u6XKk4<<^Fi)ed|+AZ6<8=or_kty>0R{}LqBf%Uyh;mQoGpd g|J1Kfa;vJ{5B=tBxNXpn`g>C!w=eg8{>{Sw0W6Lze*gdg literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..26098e20646a01120da7e4abbb26f5b0ea959a39 GIT binary patch literal 41049 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 IFdb*uJJD_qlyT9Nm4F{w_ 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̬qH%>+n2- zMN{rc%DlgFGKjSc2{+T<+pZx4&&fPE)}riUXU|wUE1)( z)TutjW@Sltyu7(T4g1Ky8;ib*YI%P+dvbMli?3)lT| zt^lMFIr9a@V^*TzQ#89F`NT>8uG$)X+@;n_M*X z8hWLoB!txH;fTs2L^T;VlOh!DGwmLv8W#jmAeUE8_30++MCD!UD(8l4JN&Q)$yqJF z&JEZSk$6w@Xs=>>TxUPwG!eyKiE~bvCb?|KIm3*j)=_Q^Xc3p2p&_ zmf}Jp_LgCjL@Fss+ST86Zn%1y|1$EyN|~#0Cd#b@?Ea=P{yz8x84e zbo=mftu=D0V}GfzaE+mpdOvc}>avUL)exEIUM6UZGV7)$mMv5VR20kE+kg_mX1niby6@z2nA?RcP3i_yGUSWbY~7bKHB^8UE4azOVSReOeE79 zrIoG@7eWfyZL%_0NafwL@KA+nWE~Z;ocGt-UhdaapEGApkX=UIYMHke_6GrqY-yFD z(xcoIk{7ie55gKbdtZuiUYlFNgb@?{xNJ?Nsf&%c_YQASoy1*)0AjJxOHnYHr_)iB zVuIUP6>8X@SAp;^1;o9Kc<>zk*ybymylcL~Xfty+2;QI+<`Su0sv~|qe9-qg~Yb^<^(6v$$qC3#fu)P%FQmsc983cUt^G(#b ze(bQg3H9(T>pPIr9mhN3g(<^3K3N+tG;i6K-SruE;p43h-vP$PnmH07+~Jl}Zq(LAnv<*3ca2MXPFT6R zdx__dnmT@bFk2YdzZB7`doYh(onhBtUdZC?n8;*%dyJ18>*x%hOux8H!c?i)=l33cgY8IZ zy0>7)J7+4;XVUDH;$YdyDWt9~O*%R{7yWr81Sz>GObu2!PXIPbe$Y!ltWAMnKGB_7 zaVU_*B&22b_x2uS=P%3R=H?bg4ja@DEJFAOAzoKu$<_0b6PzbzEs#5>q(m!zpf+@4 zh1^E7LzkcKm>MMDN`wJTGZV;C3$ui4HnhYE~xj;eMERt$T zWtKy0ue>q33XS?q`)JDEtqX?wmp&PK|6-+eb)sJXSbKDQgE8Pt5rI>+Z)dyuz`Tg)&FNb|s< znPgz8q|K8C2FDH=vFE#Z zKVD!I6Vw)N#>H8R4lLq`LAIksC2FHNDoaNOaICQCf#j#hy3p93CzRjnxn_Y>I3UA1 zy)>aF1?$RKXO79C8k6{jkp}yM*eh37jG=w3v_qCViyjEkNOzvO-Y932H2_j2`mVuj zHzWs?%s%Bu6fg>2<3cW-)#|EhYBk3_m#o*nuz2xeA%OnJ$GjqtB2<(ne`}s@ik8RS z?~m6|$4wPiWKq9ZhdmsOzUz8J)bS5Dg#;zbiwKY6LjirubHK*o^?dI|@iI|7(d+YA!rFDubhR$BVAK_ptygTfiR*JE_*K}f;(>e7qnK}f4 zd0$IW$8f>SR4<~9kYLVwCd2sfS18U*IyWH9s_eg++S44>&9i`4QpoIR;lopNgO{SS z;OW{kZTUVk(7?h(?QQ#gfb+`^@>zqGYS@|-lf6k24cR7_?oY)}dVOekFnZD8$R$3< z$3G+7o$^Gn3yyT=j>fbOWX@}3&Eh}1uL z|HM}>um}RRRrc@pM9DZ=dJewWsTVpk!JY{KUs1Go=kgGVlwKC+%4<&T<$Ce*qXjb) z1^yFL<3nXR6?JzHzY=l9{SD&Zoh8^ri;0d{hY~56KPK&3;5~H>7@&_Th&`B|0K(l! zBm*ZKs2a*mblu_Xdv<{<^m+^OkO6A>5P;rK)CygoG3Ux<{rq zA-)Qgm)Tv2x@d|mEP)QN7BHg~fIyQ$oB&hv`<`yBF!#LYVOP>cUyshMyN6^ZVgLFb zkD|BdsqEWjia9fVB?2XhdUs5z&%UuYX0RU{ow$TBg_@eUi)W=?OCKk;WvbJp$_t;g z2szElpHD{8D@p@((AUq;tYo>{Q)#TukT0OVPFQga;EaU%<8%HQ9aZrq-z~HKDYq+4 zEhp*5jWzSpp!j=twuZ40;Cpp+mH?C-*Sd9a%*Jx8&kN7n482h*S{92gGcYh_ok^L= zw*#|}KL2I*j%SxQSB;>N=-d?~L;%6x+rU20#S_IQ_4v>S){V(A14BbTPR<32lSkv? zLs+8@HNHxp3nXaJu=^d4Nml19b(v`!L0XvffxRZZ#NJ;aH? zGs!W*m6|nXIWR;UDn`w5TYdl+T~r_9-*~HzgI4iQ3LML@pXt&=ci=f(XT>l;K|&qY zl?vnUV~%yF*R&Afh)cgdv4Cg8iY;u<0so=rxFLEq0pdURp3c-Z?rsP!WTSLo`ZaMR!h@lSQ=~hz%>g284dm<;^xN zQzPs^*36X5n#>A?38hDW&D)r6+4xw+p8Sa(dNhr|6?^gC{+*Tegtxp0!r4TvE)(#XbcoA5fUO&bO-ZaPHp*SK z(|nG*2+jt`57#E{kNj#+`VWm?Jx=he`)qy|fnFl=(9yg=rbk#02QMjD+uPV@nL`y#(tJatpV8&N_8^wE}{ zkM8Q$M>z{wE3`^e?`u=dPC2#YraT*RcuHCPhE7ubNWO!1eiNFE{D-ar?rrB)BmFuL z8zoBtVs}g>ca1gRVTGaFm>jF{2>`AwJooeV7BsYz55^j5hV=L9DLS7O$$azIG978n zG$RkH5$~&$42S|EE)+vp?c#>opo5!g6bNpvHpG^sro}PbL^)*GflR< zE!%>B_z#0#u>3RA=FV>q{%}5Fpb$EUm=qMOEJ^ZQ#`dzav>`qx1}zfT>u*dN@;yh~ zSvN)-y~o~$I$)2+xBqDmGI^6-{iciS^!DBCxIDBe7yTL^vQaeGfgK1L))LsBuJ(M3h0fS*{-8cHnRe)}y7&g4ol@K7QS#&0JYD_-^P zUvH4%|NE@j#izK9c`D>b3>y(7A>Ov9=PxIs-`^%BZ;J*HltB6v`mSQIvV7D9P=-5_ z+npheo$vD!QM3Ret4%uE&Js$p8!ewc4x3&TjvrA5Jx&QqUQ$G`C0JA8%qq2uO6a_t z^bPQxd+1$xf9aF$y|;*y6C9Zzi_v6|DTxXXc=+(4a{=1dH$Jbukw6&!G$vrH2;j5M^ax@qjsPz6N&+xbQ5>udCB(~!4<%GMXPpi=x)diOvYVoREWR zrXp~JUS?lYjb%m#MFKkGCFr`I@mL#N^3n^(3T{*mS<*V_@<*D-*gVvQraU$h(x97_@zs?*z#c6 z4ci}xbF@XTwcyabwMbJ=f`nQ~D2F`3{Bd0@fHFlwkFrwi3{Q4jkecK;@xcHDp5fW9 zMO+7BXQG9eY)QGU_TcH|f-T|aHIRi6Bf&jV0BczYV4uM)HHmur->iHAsOCqv*Ir9} z8u9K9&oh%%d$Ci11jyig6Mg-q&~lxyZ&%9yL5f}g??%hQM++1U z-}I?nT&Gf@2g;z^*^Y z9v*rKr2{BEkj286NOo)`m1UhlM&d(PXfah!_yc;=iLp2C0eNydC&;QZ z;JH+j^M2)M0wk2fU8WyRGypL~Q^spS;0K}_tTWqsiDe%Zk7Q;(H987}Cdy?v4{e^p z65N z3wrbDbP1{0{!1^4oA48jcGspxOg`=f_&qAKyzI!^$iyUM#}M~mEtbYBckJlPM7@n- z1(W^$UNb!vS+;4*?+B?>DvFmuZW18@hnA<<<|B4R0BwnwUV1yMGOyx@pdckuI0F>N ztF+njDd^Ao{i8398M0^k`4atx9G>-}g8m3Nh6Y9^n?4+%ugVLdvIzX$*n;GZ4er|e z_U$|P(*sJ?fW(h$m6f!l-JW#beERR<4mQ#OgnFU&0izHJdoK&;u3Cxtav$%H0>Fn& z_nhe+01hgIDynmJioiE6`%dNl`CsjE;dwLvzP<}yegw=1>87SoH_o1%zjY1W9yPFp z3`yfMEA~IbVu9)|fr8YE*5xdAa3LXa=sgD-ovYMS8;;}_0rflT8vu&#j#iMT9ZzkO z9GHCqSH&bqM7f%Qo^yb7QS|)kb~E6lKx%kH4jA(yMfx5!^%N1$Zb18^H^P zG!U%`lT(QDJFZ1dPb=XD5@~S_rnq`PO@%Qba(o;DoxVG4!_QVFKevQ;{6<>eF$nQ7 z?gQ@}riN-tz>o#??Hv6t&e*~Q>M+`$2DwP?0C)5|;0E%<&s9eQl zY$&OGXP0g!YsU3lNZWQJ5d1vN|Wvu|5S^}El%=Y;*LPRSvu?-A`P>>E$elqbv(iNRfP&*Olqz&WMZMl5xze49cSz4gVe?Qrc<|so z@E{~ChHZ5@{4&KvF*$$y!{{@6??qIwNvWs)NB8z`zsQX?pL~&N&rW=>Cz~=FI&@~q zgMxy{gg|Nopjw7Tx{k6%1)I`efXutFS|AcrYOS!ECFJ74pMgNfNiI{Jt@?W}*}TlD zMd4~C_XOEdl>K=)AsYFS6qMuK5j1r6@{G1cvK7&&lW)a+&VWWKLjOyhnFIDl(LMKp z7B~)611%M4@rVmXqFIejXhsRyxCI_4e{g7GVkj8Bk-^#MD;y^KN=hI|$~KRYt7yPpAdsa&KDW|(6Qu(&JH$n681|TnT0kyp$0#PqD*(kZnK&9t zKKA*QJBzX7T1XC|_{wqX$TBn6SHr`96W$n^d5t9?j2v4IVlit_vFYW7(qm1UdoDh~DT zXAc)Bj1){X^|pYzI|J3C#4_A&IL`}w_zP)heWsyCu4kwv{!pE?40X@g&}V8W71~uq z)Jcv>rG*@$U!ja^IHKe-$|=c4NT92bN!2M`w*g?Nj!d8y1+U$IT?m*<^Kf^Kz7z@Wv2h1amK>I>u`RZ>H_`NP;s@sD80Y*CwSKjvLB8^>Go+xrz zpf%U1goe_Va4R|CV-^)Am5M0&VBpzU#98TAv-!?Vjugy1d%r(loE?%>Z2KheEh2-_ zQ1haJO>aG?3|Wfw6oieo3hP4BDC$2(q0}JOm3@7@*b|r1tf7ZLT&NcWx}v6 zsE{}U3P#o)u`S9MuBkY+sWtVJx?PGb;{7pe3Oiyqb#a4EwIGSwz@b;X9{>trmI(=}PDbu|P~JfHOfvUdx~(42A`7O_P;fN(`0} zX-u3K+Ri@Is#xr`QhV@JZL~oJ1>FHiB*&8j&AgHJ<13~}AfENzkGuF0X8sB&7v_=x z8DtKC(M^@;EZWIqc<_1Et^0a3ea81!!gCUfM+gp^UXR5j5!M{+EpG#hH7DhCe~t+> zF#qB7?)C+d1r)1{AO&o>8(m5e*ymLMp{hj52{eWZ-E2%ZwcG4-01Y8s$(9D&J97dB zK&Dh89tWqOv$Wykz35*|SYdCF??CH)Xt#c(Q0FjTV%ZQ3$82>n>cswX@;eoj+O$_X z2CEjxecX1+JKD2fMG|=efw5ZUmtTHKLo*+XzTJqq-KN&?8Wjgrmmijf>=){9?bN=2o6Yj%JIYfpJrrv~+idLWv zxjgyhw8j3qp`>oZ@{GtQ3bX4HyCZf7#XhXa5YqFhnd}`0tr*Ond?%#>up8Xc($XeX zFs9y5!i=<3+7$m$bOx)Ma$MBtsl)ZS3c1$U5$k@Sb{Ob0n2~1DzEhl#BBu#zH;FMx z%uKOoEE4ZXro^S^1(XH$Wp*ZaWt-Hoor2op$Gi^P)fC#7x$@=r*2|&T3JHoNj^rv9 z5To2SSf!~+rlMFBOBJAkAmAj*DU5!YUcJ$@kmcXGfkS(zh>G{`Y^`tZi`R!qm{El= z6ps;o6Z!$b`pgfDRu>}4v#Hwm8_m~xj?7L*BEYvBpAUE)wj8PBUWH)#ocFq}s(8rz2^4%esAzT=$e*KXdMpTwWPX;P5?$%bDw zKiFyY8phlI|G$m@+(C4^FLK>_36O5Gsa{9mG>o!+G_g8}6CPsy;H*TidGmG@QEUWn z$%41((DN&m4L%S|m{N`HNQ**lza{H*Z)-Gscf#}2R0405_jrdixPev>NGvk#6?OMrRimpTOvXnhPB7BA$g?9Xb z%hv_-9R;hoS5kbP=tZNpkdqTRKtH7cCJH}<#)d7gkG1k3y6M?wAl(obP-86*Y@sUjl4-gt$s- zy~zRyqGgx`VJoMyQxB+_sQOf_(hd}8Gca&|@PpXP>&)k1-#Fh(k#-`X^L>%^)P%6Z2E?u;GH;ct0mpZrs0dhY5$g|Da1)A6Z3Adg`7K>yt(t#->I^W0x)31B)m;>%$1yO)te0*6fAf+9sIuMKj z;)%zlC0Qxh0<_1XOM#h20QKLOv`KW{0-EweS~>Xw^}{>3jTRHP8YS+&;YqGH?=~tfWMO5Ny2t zd0t?M7ZE>miorKDgprqIuee%}A!dL(i0u++}v-0Pt;&ogEQ;}wg*9&kCm zdwK@tawiOmt$)lFW8w02`oHHWaHd%Q9r;o$77vm`>G2s|A5Uu$`a8$JhKlZoUPp)( z><;!DF#3vP(s8#~soS?7@BH@X|7p`lR(auQZz&(*VR8cn`H^)An?3SHJCUCRtd~k1 z;e&(YEGkzKwoK3qD>!x}fEkzsi=3e${pL?yloZWuQRX?@tU79y=Yd?-N*fqV>dypZ zM*-l>(4qLgEenmGAl{<~>?f%ka;TLIn+WiE-Z&pR8xMdo<=7}xN`|^6V>sNA@&dWv z&`0d~MFe&c_KuI8{h+jz5#lXGZB0*2P-Z2$ilK>M$wi10uT2UcwUdCc>O}ISVndc7 z%P*#Gkj0{=T4QTR>?n{@%#|z6voj4)4k1+RMY=?BF-e*Do?{!=hHPmz7sq|^lC~hv z1LyXCN~>d~As0NIem??BjgrzNYX2FKfLj4RB6_MYlR^YNOayRe(C3o}cB^e5i_-0d zix+WQ_xcv;ETDTjXLQz+`+kZV$ZSR_8SY+&0(O?gIyIMD83-ArY(aI`&Kz?Ab2ZPGk~fH8hOKhs1k4&wdeo z=IGEuybx@}zb8az55FbrX-Fj1yfnyvny@;V=$qQ1d)&Nz&r@#;N{cV}jlpghsvf_2 zP4C5FzA)>~>s2ZXOZc32BeBV&1JWc~cH_m753fYg*YXA`P9Mv$8}6!0MUHxpfh!pA zA>7??+@qUy^k4)ktpn2SPJEhz z8?zEC1i$H-{D$}*=*MV1lqcY`|LGI2NM=CdwcvO5rP%}0ZqXd8jwB%g6BKrUw5ANd z>osIt31DLBfu|dN5}KGNG-`YkfX$QpE5%b-EXw9VK?|$O00EZn7AtrAmg8fYM79u{ ztL;JrYp96tKf{s#8653wg3z!CCRKm13p+$Ye1Slu%-lsno*d6buUhGa4(!0eF+h@u zMZG^zl-;lYp;51w)B~cUX(FMs9~)1))fG+VPP_y1xW%9>!gAv{IfoT@j4{C(vTr5( z+mB^ZkRd_t*6N3nJEV1*v-R2ggAnjqz=XuSn%;70l2|!Q;U|6!RpxbSi2dl27P3_ z0_M0|?UIC{GM!|@OQbL5y#BysfuHc1#IZTt|7tc(YAR0v`Bu&Jl0Rbc;(thC@KcGM zmr>auB3a~B&!sEaQ+`2Gi!lI@iF3aE;B$el+@Wd%a^(<(Xw$tBYCDV`Ds0%OPV(t6 zKXtD3d$$CCzz;EyD_nS@GY|3!QGpiPfj_J3<8R+SniRuk2AUn!o6C=9VsI`@*6qmn zH0ULAq0#M86;SfrSTIiXG?e(nkE0}!K~OfsIM!YWUud|MsVI^ha;Wz98_f&>=DD$V z;yp(|ugYSW;zGWOg1`jn8dMNjENVZ4gw6mur#x((i)l>g@vPEd;gTmIqKw}R{D!}K z6LWF>>qC%ydIg)~_xxLJt3Yeck!b&KP)KH#u&GyH+)d^R{3&Tc+ngTC(t5PTLa$9KehpujL~3b>;ZLis8A zASfO7W;315OjTJ%}i|%ziA+kC|l^OR$t7MR4_eB%9 zuVaYReu^6!7ZH=meQIq>j6HHMaWspy9qA76`QkFTXCOhk0N3qFP;+XB6VIU~a%zmj?p<3$SP zw{w@6-z9(aU-OqQg)+oAihzamZrYJ;L&9UYOB#5zCOe<>8*=ASZ%f269N?!(X{m9S zr~Bx^p$RMeFtJ5pP8lp_3e#X`&{SUU4F!_?ta^~~AgOBC(3cr&?`F7uH<89k180Vq z>~uiKIDKP?x$uLkyd2)?)Ul&8RA)y^*&9E-yjc|f=EWF9I zej?ito=zcxh_WOnCymnH0MiE75y8XBi7C7Q#H9q8jfv?q1>BXud{Ql1NYcT4A^M343K}2ph$F+KlINm7 zeHxIVuK{Fpa?&~=^_S{;!?ufgO~!1S)Qxr^5FfnOs{q3w7@W zqkbGN<`!h$QGoy|QXdOcSE&TG<$gc977$+4gbWrLf{WxZnS5hBK!&EI8H9Lc3H{GI5Ix?GNLST%IlH5;7_~*Ya~pV6G58Q~jr~Iwf@)Vx$9MW{LA;@E>s>?o!C2 zSZ?^om@#$` zjzm&=hA?RN+=B~}SUrq92I>T|!oEmexH(^ls)eYB4C@aez4(l96c2efe%}6V zrL@wI=F6@l?-?-^tr&_p18PhP`#L10iGjM0!3%Z5ZadZc9&8?sf-<8PJeX=?NC^zu z@e>>%V`(btehI+vLZDn~PKJyvBb0P-m91J0q z>YPbf2B#mmP!mfuhT+9;X=%^xSN?x+e$FR}3A$7z6pIDa`UIy8x6&(QacDnwPqP0YvHDe^kZ!h9SsQ{_zq-)#&a9slbD zHiRjVyrS1H^fMgV5%(h#iDx8(;i=(E8?B0gvc1RuV7{9m{kyDQ9{eWcBbd`o%n<5c zXT13L^zAFYi?V{X(Jhf}{*XBA-w-9+t_srkP9&%|Yv{mQ8HkEy`DZ6iia0}zC3K0< zk|*>Ej)dztD&<5%2U&l>N|me*w_Qljlf|N#08`qEP<-sfKnD)(K+YcXSNNb~n4~rX zwq*uuaFzvgxC*8NWl6p4?f>-7d@CFEfNAxM$a3Ks`YDGIb!jt%wI~L$%>yaI&J*Sy zPEN8@6e`Y)RmdG+atuAk(hpP)X$v4}w#0=R6On-lcNLX0dwZGB(4!a8!V)hw4a$|7 zGU+CcpWshm$fxL0|Jp6>GISU^(&1MR)HzIzwf)=kBN_M7 z?E`7UhlxuE2!ii&<>;+Xi0s7T0A<6{!!9E46!zU&B$FMXVn)}Hzn~A&>#nFu#{I~? zg-T9|la(Phg_w z%HfTtWvxlr@x*{Y$Ol=l@W-%GYn*m4Z?7ouwOb_}SwsyN9Zf(pI7KvJZJdF$PvPAP zvdotTrU_G$pvQlU$!<6Fcdy-E59b6Qje3!>pN^~92~19IH6&3=VWPbSJRNzhgdAs_oG?dP*ussUiZAVi zLxEuEKZ_QK+!TewZr;P1r=&!DDJ z$D(g`?{6b71oMF42ik$Wq@+ZVOEU*we7fE(cmeMG+5ie?U=IUew!N~N?^gYRB((-I1CQ@Q1xh>`!weOwRq0+;7dsUl2gEb&t{rGh}yl|)1oZ^fl>BL%j) z!n--0lFL-Ia~tWIV&9wLHkgEi;!CUub^#ZikkSZ`MCaXP$TK_Xs2Nz|5^vjL*Y&|p zSww0!9iv3Y7f`cA&N-1md9aABNY@%{nl}^3^I_6JHb7(AR&XmV@WKRQycGU@VN$NT#rv&f)`i!l}k+gUDn)y~jZ%@}fuOm7;4rF;w)u zTNOYt-s_ABI$KLcIC3!!E|LV%q(Ge{#9)HUeYmRLSFskP&;yaF}VTf10gk9tqX^A zF+PKfqCTJTE)pi!)eUp;Lh5>Q%+T7paMR%PoMhj@PGfdIPo9HpU2^^r6yxE^g439VeE^CvHVS*BX z<^0!~`}s2}P?4g*@*Zl;>RX^-iAJ4l?1!oo>yD=|V#yUrrhU4&-Vb8e_1+2?h9Tf_ z5&9;tFWI6gZb%wQ#WzTDQBopk3ooQ8z!_~P=By>y4M`y*`h%uSDQ*0XzgHX;PC{FS zEhzHJ4YR2s#yH<#s+WFj+b>n8)p?+N@DeyVmGy z`uF_`opeub<~tk(-~2aDuiOK2eUA(ImO^?wz=))js4_q8?fp$pEEhKjHzvYQM1vEv zCVOJO8uR_pI?2<2i_+*3UV-!Br2$t{Xt1f+x&9XPbfXfOtGaR7A61PGS^<@}jHFGn zLuS+;zJ=v;pcy3^GWrKrQR1X>OpOS+QP-?l!=m95>T-FI96(#NeF>_FXrqiSC`c&- zLK?(La=P_}7EG>+j{B6k(Nd%xM&}DpgS4O^9YZC4@8hpZO5`MmvD3<$xh?G=ls}qt zq7e&0K~oIEN`R}b#Zh#OJAxd~{{SKCt+lIY9t$QYR0C4$u(4X<8VxjZty@KBlYNn6 zOB2w$?M zEG*RTa@W!4o)9Ssz21KkHZ-3i#_oZA8v~|{yhVS*(6_WqMD>yHj4`K?u0XT=)Y@a@ zIFLxQ{IXBg$Pt(L3OkXIDj(J{70*{0qVa&yLi)gMAq2e1$V^l6y^{1b4(}~+Na+30 zz${?(+5gqatHH0peDDH&-*`TaamHdga_6)!^DYTnfGyQ=uh{lFSG`a;BrKj>kkk4E zrZI+G3U(XhJy*R64rw4X!!PoAQ4Y7|awJ@Y>s1*I7ad@Ur>6X#i~vLoPqJsGO!!5a z_qlNy_m_nUCqb1UY0%7OFo%$+%`~h;{^Gcaw$xwgf=(o;G;90?gWygjQlZJ1zBlHt z{mk23k$n0_Lx<>CVx_%i&`NnQ!;UzzrVtuKzb-Gm#kN<35?2OD3)1?*XoGIRl*~J* zuO+19K;eG+Hwq^}M=v8!B5)cg`R{(@`H9YUX{3~oZ2UG;nz=BMUFc9$f|Q{2D=Eog z1toC84~umOiJxZP$JTvrPzZVvsZAzIn#1Y?9a(~d7O-F7NqT`W_%iAllP0xiG+i*- z)a%VnaSn|L6K!ON`{%Wvz#ml^AeE$FCrGG6iLBWE3B+rMQ=XyL1#U>E-Iq75B{_wY z(>{O9avi)~6`#95d1YK4JR(a8J5b?$R}n36dbz7EC3j|g9WJj%Gy`K|OwV^kRpMb} zB95rwp*awYYLI@H&uiQpHM z1&4B(_J2}eymJ2BD~Cm(){`xeylBOA+u)r1)@RfTlGCHNk`|UDLFji`wheJRL^iW6 zm@jI%U%zlLiOvP0d5##|Jk3xrvmK}gWjMH%{$mm%olZu6FtXlLV=Ud1)kZ za6Bx%c3TM19^)Xu1?WUl(sDX7aE#gx)V5Y~Wz)uYPy7sI>8WFQdm+$z((`=Si+8{x z^M83{fTjDd;vKOMz*)H8_(Xyn-Wd0zHTeL?XUOeJ&PsA7ezI<0eqt_j)*m_9JwuqE z*kb{ix1LT>%g11d%Zu9wA29+D;eC=M;50l7>)0=(;db7A{Xb=IG4V&dJJN_Upay|% zI>*Cbfdm7lU4gNKPXC~JA-rg~poa;aZRKDc>#-@S%Z`VBR=)}VQ-+*V1`2303j|#Y zNIzd32~W2rJ}lt&Df0;? z58mE#{ld>FIBbl2F1MIJRIK<0I!6TFRT`&6YlFV-8l3bUx8()tsSpqYb@EQrcq0=P zTd*My(2ufMcoVC;QkVkCvxQ5L=w$!5bW{a8$G8deJHSD@ppD19(OxG%VQ%ck{qNnp zQ?F}8lIy9%fN>8mq__Pz7ZoFg=vz)s68DrR$OC3v4NjFjJH`D-9VMXHtGv=^WCfTZ z)?UE#<1YcX7)Uva6J@v8W54Kk&IZ(Oj* zvQ08$=VB(d;Dx1=5@xCtm|ENBdq46nn#rWlq3H>nhJ&Sv>(z{qmJk#qtqppC8J#hf z>N(a=<8#azF37_a4KXcP zg>{(@p#Z_uo*NNy$gTe*2}0fy@1kV|*{jak{JVZXr1td8jio??-9SJjNf3kAioZ|1 z&PUf&rm4k6pK!n8B<_JMf1gDGwTkGdXF27cEa)F?2zY~U@0?+v!RWzP3=$)j2Iod4 zKFe*Q_2wryhY)13=%f{@Z3r{Ti<#C{s|7w2D&ZQJrCbCciEvyagh= zPHytn4Cq+I$P*wYFZVzA7U@<8$%3n%W~ZokII~E&m`+-e(_*e^j|=ac@~w0dBFWW% zS3{Z4u;H?UqDs&x>B78DvxXPf;{~6BFtGH+rewEo^Qn4f&y$wU{F@MgIb| zm&i*%(ewYXS9n(P@TxKg7l5i|W-|#vC>6qHwUCDBz9fZQ;EgH)%ekD$4Y-qH8vq6; zX!!i!;3dstlW0Aso9wqVlK$m}IgDcIiP1HnW*o}G%-(#t*+{7(<0@e!V4XE^^wUgd z0Q@G>IES|XZ@@tOG mkRug&7z6a{i1#KDgIYSe^M4lh6F{V6HfU^;F>&Den_-TU z=-1jqF=zXYmeSKD7PZ|Y9s7mYn$O)tf*c+bY@l=^79BN8{tjGMnXWh5-u9bJt^Ne_ zh<_xyP6CL44mrjR{N41#pgo{^`>`MJBQ##x}R-!#j!pM(ch;wBvYP zY6tqzm%PheOkY0{{q6oI=U&laE}|{ z{%{Tstv|49__6nyQEAkNGPkw##vF=s-{FaZY~9J|`b-JEU-1`SO=G2W91K~?{@Lsh zDa~D=8`C-6*MIY;1;a!2dX)X=q;Fpu_j zch1#j@~Y$yjVd-c%afvnDm}p~Jjpp;FovNjLYyl7Y{AnGMY5-AO5P4mPD&S1w?1Wd zcchCg7#JL!q4JD&HhIGnoXCd`Yk~KNO6Ham?j0sc>n2p7KCqQKhfFYJfHOrDz6@89 z=vz~{NP#r@@+FAmCEU-+2~Lv2iHzgN>xh5FG3RKP0wa#x!Iy}yKX6D9$9d9mNX%(2 zbRuqQ7i(nzW6}O(wc(f)N8&yP1!83jdX<#CVSUD-m&toKn%Tg{B>K?^vpj zPva;cezHK*fs!2=Bs$TtyMt5q1x#PUv4;!Yz(-g+zyjkur&gLCN106-u_N0|>ol1f zF(&zRbYTto#K1FGd#wKy1s7$oXgG&?ROR7tFDkfpBlIH&C?Zx*fA)a_O6Sa9!|#uv zb9{7DO^X&J+rZF5vtJHOzSlMJKN_!^4X{Y)fQI{>8}JYWh>a&km--ChNauZ&K&hqb zHL4*;4Whg=+mtThggyPz6^vh8SO!NqSs*dIQBbX*Dc7e&XWh|&2o9-g)t~s%O-X}Z zupS59^M7q3P#-z@8)EE)iT_x8z+<-`+UoyhQ0X`NMI(gqu=I(G2wywA;bEjmD;>-L zuC#0R&SW|$h?7&1CyRT@5@m4S8a7OOt-H)AYrh31Yvxfv@<_By>R!**=Z z=kkC`uzwZFWaO?U3UBG==^5)W(&>o{p@Zzf;+D`eAX1RzK8Ps&x)OBb+gATBtNoA; zZy{ESaDGf4v^*MLC3=AL4?6pt2d6ZW!`nT9NeC-s>8HplRhM6oiJ=B+soSr9svRz7 z7*C}C{_|UC{tx~QJ(2gqan>&qsJ{Uw%d5%?ASBXUU^@m}LJzjaeH(4LFvZ7G2jOm*9n`&J_*uV4TH$7T1#Jmt( zLo(r|77>M{7+Oq}u>yoCqI=L`2?uI34Wc#yDVF|agc-vt!c2kLnzG;YSnLjz7Y zW`8LsC$TYfA~jkNE;LB~@K`WM-LxnCU8zfRQHfeTLbX8Rb0DrW zAJz8%;V-{xo=JD>b=X=nHd7){^W#PyE60Sjn-u-b`4Bgj5dx)+|PU;(z;ic(UjmfBN6z@4oB#{8yn8t;F`G1}aq5?6K%vy#)!vjVxTyd%)*Y?G!0$WCbo{4tWKxX**!=+F zakjraPH_Agm@IeK1>w)Hj<>*zLnbFZ(V;)ZVK_9P_G<}#Ez<)Wm;WoKXKU}dZ(N`- zx&k2Eii~RRNnKsGX?N~yFR(H5^RwPO?n?V@ofbQ?D@ z7YY1kiRxqsGjn`iHBSA(FCXYi(NFojr?`%)@N&^_^)UteM`Hly@JVswh_8<%t$bdH-jW^qJr1AT0$j(0f5w*3t zreGndvDG{2rvgzzp7TYS+L-=`#pss;A~~ z(K7(?dKJtWsRj>U{k<+fe2345W0T`KxW(Xr0*GKlk*-+1`Y#;ka1J#D%euqUQx3WY z4TEsrpo8J*e;O6{jX1e~{LW{1V084D0u=p?T4(>hI-AB#+Miz+yJ5r8(9d6A`{R#| zuxT^@nlo#b+vmRqJ-mP4=sz$2&y)Gz9|V!wz<%GtT&#i45l-qKh+A9v_jL(<^9x`?b& zz0eGw%UNgZ&*83gei!$Osf98!GO@9-ACVwV1)z)XYhX`b1XhZ6-RYdG^(PmF5evnR87Z)?GGp^DVY)3tQr)1$KaC6`Q&XuLN|Z%xVAf1 zbX42i(sJMRr`hiIzCX@#i@Za5m!@gPb*~9F+OH z!#<@q&8<2awsj`AlvKv`;LIIXi^YM8njiI4_6gP2C7YZKzy2Zdr$vjl!-t>;jrzT= zx3>bF>`H>cZx)}QsPiAod$!u(5R41>4IX~r2=_yDwWD?;h%o|?&Nu~U;oZl zcOq^6dtj@wV6C{gc;zab7_Sl(`zs~9Sf3Yg300t1pz-NgHFy#6%~K}`rp;V4E%GJG zC(X2I4yY$VqW~bgt3l!6%Q_YcscdbfL^{sBc-_j4$mcjV#fHw#{QdymLQDFalfQ8I zE?)cfeM|$DmX|BMby5i`-$6)l>emOqokOkUxOPora?v;xlqkpvP)i&!Aik)yA3r|l z)V38I_u<015A|#}460eM7m^6CF>V+X>vW#EI;9OfLgM0q+gAKEr{3p(w07=MIp^CS ze@YRBR7P%76puJ=WhyZhi5}&N>M%2+7-USGB$vjeG-5)!NoBfH$iXCYjGD-$Q7P4A zek0?SQL1rQ3{CWV?Q+)ooxgr-{nl@-{%Z9+eZQZ}-tYb1@4a`M^GS3mB<{YhtE+Q~ z9|5@PqkUDUeK|@aNFOU&5ypbow?ezGK~yMRvC{@CRn<4f=(j8YwQh+iD40yS#21Kx z98st>A&neAe*7l>mI)#Ict9cLS6|TXH!a_b#q;?uhjTBxDfb&`ZdLF)9b0@NeoIqpyoT5|evAb4}b;NW1l6uWq2nTcpI*3f+M2@ScZV<| z^YmzGi~@}jGiDwQ@aGXRI8$mUMQSDvsj$wgpVdxL^fIw`Lq7NX`SXnCvb`3U(9O^{ zcq3escI{_RSfjX(H5xT`?9=bRv+-NH6z$gv*5VS(N-!#xV9IWTS4eH4Dn|<_A{7<|3A>}q9 zdY86S!6-CcD4jqKLldW+=ny7b+Hkx3OAuxEbmfiQaAqo<+VFg_bpFp-eSbRrj!H;A z1XIE{)yLMaJaGzjo=Ntb?dEx})|Mg#1Skarw(^Kf{@R9UVJ~g4LIG9NU!RaiU8{Ye z6|$VsP1e*>)WUCm4h%dWVWWr|G;ylGzklPW!tzdYc0Rf8@nA^$ZU9WXW;)cYR9j{qK5R&{ zhzNsWp(gvXV$7Sojdb!ypD}Nmj4>;Nsyu_TUQRhRjaupS0{z>9{Jr#}5D%kx_4IBf zW~iLCaKU!VYjDWw(f8jc>7T)slhUmT{x#8H-W?B~iN~-TXypHaN#C_E%AQgy=tr+r zBj!Gm`A(*Mrb`aHikG@5{}{mtqRRfXs$BxNvv;gdDl#xS{gps%y0GN#NtkSmT)>r0 zvF0hRVsaZYO?KSrw4wA#2_`q!hxuef0|Ns`klisz05k>6tFJgC*$KjDju*jJk7jUnrPU}pTtm;&(R(9264V}sNduS4og z)+ct;)S!$(cOepa`T<>pr;=R55wC0mIGCYa6AaWfTK|bee)gYz&r`+aqEam)Xxcks zP8h`exX&-^VK7y0ZsqRlw&Sh(TIc2EWjJ)hT+w_Sj6zdpdkGa-b!nrerK!Q7C-?Y~ ze|O=GMMh9wjTHr3YSrU&6&?{kL5nW^O)i!!uuz zio{KA!^4DKNS}gd9of<&HLl02+#6?Bn*mPzDYs?ePHp~coxB-ADT8qI6yzSHv!l6E zxrV5x>R-%&UbC~`*bjeu{XJY2gk2OYQaCMBk|)qFw86|~Ry+@kE!2?kO(Mwb>}={K zzJ{~o#15wEpfi4j1<;NB;|Io_o@f9;oIX2z|1^vNBJ@$B>VRQ9DMy935@ zMr~MiBWF<;@-z}uBl6M-B{}ykcC5NEB!o2=RTNcVJ!k-N2=hVee;?6t6tXHsbaJvA zVeE*%AN|Fmxvsvx&)~t2*WlF(md#HEI!33as=24)^hn!i&p+)y#L6np;cb($(SM&VJADU;20*^@?Cv<1-xc$@Nbc zN{L1OLPGYYTY1eEYkmx(&~IelWmn`Xf6Spd_{sU4(&iGw%-czr)J@5LGCGB>o8|9G?C_{_a$>cWzj2A2_J@TAqKw* z5voqQ`>z>zr5ol9+HP!IUVZIa5}Ys{u=^4bC}CMv3dQkTUT zi${0P4iwK*%~e+LG73jpU6hoR_=1}=p1iqr%lpzgP*)fzCA+E#C?Jg+i=#}sski-s zJaCZxrbIbIMMcw?E>TYI>kVDvx@&2QbEDr6&q3)tQ>u@6Wc7fduH)&&0z)U$uTvi& zc}XN~r~h$R4VZJ!zA*2AyoI#gm4fYb7H~4$zBC2rg*9z|{-z4)9lPs9C40b7@4|cA z2TEJ*5#HTg+}s4CKuUcWO8yj%LN_)pj+3LgrDhWZL&_C^j@O7syo1rcc4l>CAxbeC z{n><;H@yGy8@a;-&q2A+%~(`h&mgY4RGr_?C$H$i9XB9L)72(cv zic+lz?{j-WXd&lj{*z*bj#%yeZWUqbNmkm?dmGuWC4P6DE zlVi=c=!epGDFtdfCN=fLR*yHFY}5pPV0|a?Qz(>GOs*muJK(QBpDM?XkKy>B05(Ed zq;sB2H^L)RhyRNlwOPH~?3b|m71-1*fyX`N;?|Zb(=thn``^xw2g(02rn00&C&d$Z z2_`596}iEDk+$!NThoiIym~c@x@X!Ee8Wlx2oPSpcrm5aefcZ1QKKGa2J7x??n3fH zL&Tl5p|&;r;cu$yPp`5^MysWzV1jpGcVx^uYx4@3*T%uxftgiQonASg(DDkw3S)Q; zk@O7)K^_7JW~h(TrrHz3!5XST$kYpeDHCK+){kc_K?j2BJurRxj2S<^JHj^Y?U7$b z=69C2xA&0@UtEIBv85Yr5^-=`dAS?=ITI%(t3tFYQ&P?G5*uIn3&5d$i^dsBb%g6< z=>wLhas$Lq(itbHx^0#5SXFi5<&Y`ERDGK7&pYrJmF=1I)jnLaY>DsVY=BggO;odxoj0z0i^1(nVV`5WMt^$$VzWT~e zm|)O03i@z7?*QAA)5_&*nV2C>;)y4hfy4&c285E2*0VkNWI5IlX{9Y4A$yjVmQvcB z20P+GB=2(jC;|M~*t9fvZUw+-7*ZL+5K(foBbS)LimJ6Ybb=pyB_RPeWc!`pzjX+) z2PV`b$k+BoFur%xyghWTjfXDo@~oZiNK(jayL4efO`N&KWPxRUnklL?jBMGB5Fw?hd(q=lb3#Oec`u3u+-ypni+gEoBcB?7+f1bjrZ4C7md$_f~?n_?S5 zqm;-G5Mo;#FIx^Z-@t$;N*1@_S3>AG+KgNXY&|nNF76V2Io&C^RVRIp;iZ+|PNEpk z+$E(tx3buW_66Vs;xV%!L$+e$fCIC*Qb`ln3>N_|pAczPSG9j~E4@FW_wT=g)o?<8 z)PKTq{fF1TYrxD4z^Ze2ci&;?CgQ>rpN^$}j`~?l6yu#jX#&?fSKV7NVKw#Jzn(xmXIRb6Bxr zBpoLj08rB1Q_K%#ashQEeH1d`sK-rRYolE|cUtOkt5a?9 zE(`~yD&JN;2hOdokDph~q-l;`8A*#`Y;{R_x!y{}+;Mk8!9Xcr3K@d*0;r#b@!&h8 z)GUUp1Q1lI)x*IU*x_xLfsh_Yy|Q)Yj)uFbxi?1D`h!th;mRpB=g39R{-HI>p?wB0 zgqXq;?GR6G|LVzYT}OH>a-}|!dEQ4n|H*nN!yjwkCuFGj2ut$-&$5VXF7p_OUr6G!ftsinJc*P?N#sh$f^F8*K2AaJ8%ZP@ zL&IuHJ&nitDu`*@Z@eMGtyl_Ih>Gex`kxIzWmR~bY-GsM z+Lv`EA=#r|=aTP`q3$x#nh_Nv6=(}bb8}=sr2oy+kNv*eod2(ykTK~T0y~pq2!3eo zy5{!U>(bMzgBaa1M9^)!*OaPM%rz5rboCU%9GUn%?SSo}{; zh5>QYPU}82vH9$3Wu;PI$N02sY-aPqDNasX+aC%BwXodO?iSl}3Niq_!)fv zw^Zj;fdr-bA?wN21TIBUn4qE5Y=v7}4I2};Z{G)Ya|6x-4QqEq&b@woe!tf8t6a(0 zEj6a+YG*kKV65l`gP0i|W?JAlMRAU43Cu+>qrejsvFRf9<}-tWCdfvxjS@fzYDe>4 zRnyWE&XjUdbQ+_O z{0AzC$b@dj)JTIYuVbIY!2LB7mz>)2_A7ZS&Oy+xR%EEc!(M{ogfn4|`*}*ki{bPX zLe0(CGiZplwY5bR$#|IcA2iDwZUGISHDK2>@T4*M3p)R$Pb8o}McKppR%`KE z$A-$ZN{p-pRfFOJs9x*lOQokUaG0FcXz7rWS;>W^;#~q4h)|{n#RytqaZ)XPE`0U) z#3X5;#_{OK@d!$N0}(0IB&bDO9h8m~E(v~x!i}y_Q9TJGKVY}^^tt>N``}8< zf>y6PRy_+X3k^YbNq+dnKE9Qo9@;m14Qm<{5B1%;W}I;ydkLcd8u-o>OQkS#5?`6> zr{lG~vOU5fp{o*!Q&6g?mMt4jKa=4AWA3;W(FwHpMcG?gu<70GOt`&EkTv-n&#e$( zs30S5P9)3=%whisV=7RwP`-1I3MY+p@G>RlDRp&A_6(Y6kpC;hgqk&T8kk1VD^oLN ztVtEwi?{~>2cF;VZr_L?jo8d*JNNAA>Wi@mdi+~Fk4lF^GX?s>RY&I@p9!>>xbBfL z4Q*&sVIk29=G6*DKp`-F z0ATU`r0o-gMmspYr_i)m?tXUPaTdIee-;n?>>eu72d5oL;)Xx656e&^81!Bs-)CPm zSTDzd$-^ggeDxJ4GsJOU`J_wHzC+YD~b9SSRf?JS9q^O{{SR)i4784V50S?RQb~Cip_Q!I1z|oRW zNeP#)LDs>)ml1w(Z730dWbY_t)DQ~< z8(=zdViL%%cE{CuoyVu885EQqeS_-%fW`e2Zr!@&Y47gt-T*{3RVsI2*K^ToGgqk` za4FOuAvVKeWBF>SPpdkEl8SLJ>m~1a?(M7j3S`!FD%PP7T=%u#|H(;*(g;An{;t(V z#;{|rdW~nrrq=y`hi}cz%}!;PCGwQp&jh>Vi20p&(9RF`-ebt@ss#%O`WUp_8ZqLE*@Gx6&2+KH!l;d zH6VbZ_d$FU5$DHJp!hz?V-xg_#+~jwOzD*?JtD{IfX)|6FIA$ZC4zGM1l69`Kx{0i zp1(3P)_cLogh-;g)>n^Rv6ifWboQAr99vE(;GDDK{g&(@W9y;ycbeQ%EwKYr64=r> z=L*ftAnvTK_q~U>n8liNno0@lk6P42qZvcP;lolYgKj}f->kLB0y^N6TwDtm@3*OsF2o>PJm$DvgO?EN1Y!C zPsU<7e?m@-)KaFj1MhFOo#e$1dtEI}#lP*EpN4G9)b#YYvyQ7)jd9-jI^;m-=lu)` z??+Dawv+i%Agf19|A#oRX1Yb^Li}Haf(_9uk+kg%c{qUn+!?^FMcIUdoI$Oy3%=v3 zoh8TJT9|}9lR)VK-cvaki>RcSmq4|x?7BU!4wUG1WcIzg$2{bdg+}5ddDx2$G>Luv z!*_GYX#hO>Z(pGv%SlR1O!Rr&${%=So*~8~!>qvQqf=ly0@`isU}=Lg1E4ZhS-sY`iA{C{`ReU literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_momentum_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_momentum_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..670a6050c75af8313cabe8d1892f76e6ba5d178a GIT binary patch literal 45215 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 G*8LBcLyv#} literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_momentum_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/convergence_times_shampoo_momentum_mnist.png new file mode 100644 index 0000000000000000000000000000000000000000..2c9e35d7bbde9c0ef6922fc9b4a50ecad244126b GIT binary patch literal 41096 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 literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..42d4338568193d239523f7debb0479bfce76c720 GIT binary patch literal 56790 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 LRhKW3GYkD6k1&`l literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/diagram_metrics_mnist.png index 11cfa4b58e12cc1436aa5f15b791db8babc929af..789ad82b51a2900d9b6bface5f2af520f95aab06 100644 GIT binary patch literal 82375 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

    EPH-r@wLKc?s?16(x$$i^RTgV{rCHyU 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

    yPhgGKYY@?JH0S(^(Yo^jR%p$uvwJ?a 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 diff --git a/scripts/staging/shampoo_optimizer/diagrams/run_times_shampoo_total_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/run_times_shampoo_total_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..e136ddb25f0c6ca34f9c286e9606376a6c70bd81 GIT binary patch literal 86501 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¥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

    %AL6dB1w^MpU0$hYu* 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 literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/shampoo_diagonal_nondiagonal_comparison_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/shampoo_diagonal_nondiagonal_comparison_mnist.png new file mode 100644 index 0000000000000000000000000000000000000000..498231beb378fad7900bef66c94eafa8a3bcb8d8 GIT binary patch literal 43729 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 literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/shampoo_heuristic_diagonal_nondiagonal_comparison_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/shampoo_heuristic_diagonal_nondiagonal_comparison_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..503ab5fa2f43bce43c2586fb3d7220c0e474c1c2 GIT binary patch literal 50348 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

    6bUOBI- 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 bjU(~<%r}{Q*_MKF;3Y48?@qR)fzN*dHsQLD literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/shampoo_implementations_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/shampoo_implementations_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..14a324b90fecfe9f2e7e618692615def01d28042 GIT binary patch literal 55479 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 literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/shampoo_implementations_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/shampoo_implementations_mnist.png new file mode 100644 index 0000000000000000000000000000000000000000..af20eb561e14cb0c45d84ecafc75a2e9ad6d4c3b GIT binary patch literal 49459 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 literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/shampoo_momentum_diagonal_nondiagonal_comparison_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/shampoo_momentum_diagonal_nondiagonal_comparison_mnist.png new file mode 100644 index 0000000000000000000000000000000000000000..589ebf8db54bac67dae919843e6a97febade8c83 GIT binary patch literal 47654 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 U#psYQ-KlHucb)h29JlDd0Eb#8@Bjb+ literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv new file mode 100644 index 00000000000..dc9d2de6a1f --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv @@ -0,0 +1,200 @@ +1.0,2.3525176693534826,0.19775,1.9770877563459692,0.293,16.5627894 +2.0,1.9933757631578697,0.2695,1.8840920123801166,0.344,16.6632955 +3.0,1.8870275557811433,0.308,1.7521898954412172,0.376,14.8111079 +4.0,1.838970319968048,0.336375,1.7512402029759484,0.374,16.892236 +5.0,1.7983652051171501,0.340125,1.7041614743772173,0.388,16.754057 +6.0,1.7639884846916494,0.3545,1.7007192082181473,0.3955,16.86898 +7.0,1.7319906151869124,0.366125,1.6643657475232014,0.409,14.6980181 +8.0,1.7191399331441288,0.373625,1.6373385765855297,0.4185,16.3787913 +9.0,1.6887798888521173,0.38525,1.6247596532802018,0.422,17.306563 +10.0,1.6672638569618237,0.39425,1.6055093821160877,0.429,14.2644272 +11.0,1.6665822245964574,0.399625,1.5959366377877726,0.422,16.9012201 +12.0,1.6321231822018958,0.404125,1.5911652494434338,0.435,16.331345 +13.0,1.6292060855513437,0.404375,1.569968237291539,0.433,14.2357001 +14.0,1.6173664812640651,0.411875,1.573168766000019,0.4315,16.6200638 +15.0,1.601948287376504,0.422125,1.5639267426632981,0.432,16.5488731 +16.0,1.586624438732671,0.426,1.54796353376094,0.439,14.3659882 +17.0,1.5725416457812533,0.435,1.539033627431622,0.45,16.5512762 +18.0,1.5532761360416096,0.437125,1.524467721275078,0.458,16.7252311 +19.0,1.5595854207480837,0.435125,1.532617831374849,0.4425,14.5641253 +20.0,1.538996952942756,0.446375,1.5285537500809663,0.446,17.2230119 +21.0,1.5244963543482677,0.4445,1.5060030565980103,0.4585,15.5399189 +22.0,1.5126671155875087,0.45,1.4962624770808604,0.4605,17.4517569 +23.0,1.5004406972098523,0.453875,1.490774199710812,0.4675,16.9830095 +24.0,1.5021516280984601,0.453875,1.49692226304672,0.4555,15.2614663 +25.0,1.5046980711946587,0.44975,1.4909535115207777,0.4625,16.6510473 +26.0,1.4987544437050875,0.455125,1.490582223454174,0.459,16.3281718 +27.0,1.496482960699866,0.456375,1.484370200958131,0.4695,17.2861647 +28.0,1.4756829616121314,0.45925,1.482418154824619,0.47,14.7729577 +29.0,1.4881953088733133,0.4635,1.4807136536364471,0.4645,16.6669683 +30.0,1.483057305027351,0.4645,1.4795846860110935,0.4645,14.7511868 +31.0,1.481815361210857,0.460375,1.4758836190558693,0.468,17.0824707 +32.0,1.4678794376871414,0.46775,1.4668043826805486,0.4665,15.0721681 +33.0,1.4789399877260598,0.456,1.4711883389739473,0.472,17.4713719 +34.0,1.4696075265521034,0.469875,1.4740084141767413,0.4675,14.6646385 +35.0,1.4592000361680788,0.471875,1.4647200522222603,0.479,16.438427 +36.0,1.457949154383233,0.47175,1.458910719801983,0.4755,14.3605564 +37.0,1.4615357962803135,0.47025,1.461752917273364,0.469,16.3856965 +38.0,1.4502747025172773,0.47525,1.4524352612785438,0.4765,14.3639238 +39.0,1.4434251046909914,0.4775,1.4602360342528944,0.469,16.6219119 +40.0,1.4520996688608636,0.4735,1.4516321615056214,0.475,14.521727 +41.0,1.4356953031915525,0.479125,1.4471805673066738,0.476,17.6061949 +42.0,1.4416382488223645,0.479875,1.4487727943504154,0.4735,14.8936368 +43.0,1.419821307034743,0.4805,1.4433121038737087,0.4735,16.5566491 +44.0,1.4412459171886698,0.482,1.4419434097272106,0.471,14.4456632 +45.0,1.4206351749422363,0.482875,1.4420560005907708,0.478,16.5090784 +46.0,1.427818734353288,0.483125,1.4401025958486915,0.474,14.8036235 +47.0,1.4118638992319366,0.487875,1.4419370666643578,0.4715,16.5244424 +48.0,1.4252813631822019,0.483875,1.4395151384905942,0.478,14.5789258 +49.0,1.4236445988372677,0.483125,1.4384802625889306,0.4755,16.6160785 +50.0,1.4261732252972659,0.479125,1.4397222232368654,0.4785,14.5616705 +51.0,1.4238656382573633,0.48275,1.4363463359005815,0.479,16.6296362 +52.0,1.4239042005569045,0.488375,1.4385283858343663,0.481,14.5668062 +53.0,1.4305294544785423,0.481625,1.439548235446059,0.48,17.3996059 +54.0,1.4205174230253133,0.4805,1.43667797999367,0.48,15.8467494 +55.0,1.4080313534480295,0.48775,1.4340066773788451,0.477,16.9779644 +56.0,1.4146674190926325,0.488875,1.4319104588441534,0.482,14.7299725 +57.0,1.4139867868157547,0.482,1.4329599010241207,0.475,17.7724898 +58.0,1.4093299058615778,0.4905,1.4335421713779317,0.476,14.9524934 +59.0,1.4069872831508183,0.48925,1.4323913300198619,0.479,18.1339098 +60.0,1.4163295678457235,0.485625,1.4342323177408987,0.48,14.7339361 +61.0,1.4095672453980637,0.486375,1.4277494128014663,0.4815,16.5034787 +62.0,1.4183395970526305,0.486375,1.4279411233570136,0.479,14.8745913 +63.0,1.4130114738160957,0.48725,1.4290096579669855,0.48,17.3033572 +64.0,1.4173513545054441,0.487125,1.4272822594228691,0.4835,15.0599621 +65.0,1.4061681520281595,0.48975,1.4273514022034381,0.4775,16.6086364 +66.0,1.3976200739984572,0.49775,1.4277960409740174,0.4835,14.6020738 +67.0,1.40539641803699,0.488875,1.4263319594739419,0.481,17.0219255 +68.0,1.4105072196823203,0.49075,1.4264601321064592,0.478,15.1955381 +69.0,1.3993882698871267,0.497375,1.4250042167037364,0.481,17.2519572 +70.0,1.404642869999872,0.495625,1.4252706241981246,0.4795,14.4923314 +71.0,1.3967142987876306,0.4985,1.4258612818599872,0.48,16.9620813 +72.0,1.400187992610452,0.488875,1.4246276841276857,0.4805,15.1828176 +73.0,1.4010515367252945,0.493875,1.4272030287893707,0.4825,16.5832672 +74.0,1.399228047073277,0.497375,1.4267764024243845,0.4815,14.7613969 +75.0,1.4030520699726876,0.497875,1.4253007732510028,0.4795,17.6440231 +76.0,1.399824070278591,0.491375,1.4245226187869138,0.4825,14.8281107 +77.0,1.412786803852016,0.490375,1.4244650732397273,0.484,16.8367306 +78.0,1.3929641885561934,0.4925,1.4231586480311238,0.485,14.92643 +79.0,1.3969132253207723,0.486375,1.4241087063683102,0.4855,16.5440243 +80.0,1.4031105064842928,0.495875,1.4240680865571633,0.4815,14.5422601 +81.0,1.3870001945109223,0.502125,1.4230744676442548,0.4825,16.585134 +82.0,1.3900491647367241,0.494625,1.422347248876832,0.4805,14.5175986 +83.0,1.394854410522665,0.495625,1.4217029164524788,0.4845,16.5488756 +84.0,1.3909479029784875,0.499125,1.421873877859747,0.484,14.6124514 +85.0,1.3961408600953606,0.48775,1.423681401888568,0.4825,16.4699679 +86.0,1.3907893229411876,0.493625,1.4224449417402814,0.4815,14.4806338 +87.0,1.3856733758328978,0.4995,1.4226265081217038,0.484,16.6598808 +88.0,1.4043383889954333,0.487,1.4227207753991766,0.483,14.6675403 +89.0,1.3894401485366061,0.495,1.4216512851048158,0.486,16.7446401 +90.0,1.3902714780747547,0.493,1.4203838352807379,0.4845,14.6216061 +91.0,1.3924528485596925,0.48925,1.4208424756194165,0.4855,16.5701578 +92.0,1.3883207966011577,0.49825,1.4213182100013309,0.485,14.599584 +93.0,1.3869024440462996,0.498,1.4215526970935568,0.4845,16.6413091 +94.0,1.3926793073903623,0.494125,1.421794685300093,0.482,14.7032887 +95.0,1.3849892234720413,0.502875,1.4213110023027338,0.485,16.5647276 +96.0,1.3951784683373474,0.49725,1.4205429855006968,0.4845,14.5230985 +97.0,1.3847455015367232,0.500625,1.4204793593467593,0.4835,17.5136281 +98.0,1.3894493038071352,0.5065,1.4207048776349356,0.483,16.1148827 +99.0,1.3994931355862779,0.4915,1.4207444664786022,0.4835,16.6138513 +100.0,1.3913930899634372,0.493875,1.4203442290191703,0.4825,14.911277 +101.0,1.3903311323806034,0.496375,1.4201929039052001,0.483,17.0301776 +102.0,1.3876392684230898,0.49575,1.4205152979850322,0.481,14.7764801 +103.0,1.3874238109432417,0.49775,1.42033235325581,0.4835,16.8832686 +104.0,1.3943769398127774,0.49775,1.4204923108630083,0.483,14.4454207 +105.0,1.3875553081538905,0.49575,1.4203373340150247,0.4835,16.5732949 +106.0,1.3969151488584617,0.4955,1.4209582931795133,0.48,15.4472906 +107.0,1.3898139424399516,0.490625,1.4215538532981564,0.4815,17.7494321 +108.0,1.3786830514071766,0.50175,1.4216497080026897,0.4825,15.4477677 +109.0,1.3977240374414541,0.49575,1.4207883378362078,0.482,17.6681097 +110.0,1.3936217002111093,0.499,1.4200655538549016,0.482,14.9656849 +111.0,1.3825219744286266,0.497,1.4207092003589215,0.481,17.765571 +112.0,1.387493314681766,0.496875,1.4204708431542872,0.4825,14.9594406 +113.0,1.3924749159769572,0.49775,1.4201978892506029,0.483,16.5427203 +114.0,1.3818777768056631,0.50275,1.4197815263335865,0.4825,14.8762161 +115.0,1.3814729453755257,0.500375,1.4193649239597823,0.4825,16.5971656 +116.0,1.3886886805799392,0.5025,1.4196729163539097,0.483,14.4330551 +117.0,1.3881796560792075,0.49375,1.4194590473297288,0.482,16.4168809 +118.0,1.3908856659539928,0.497375,1.4201308696520343,0.482,14.4764822 +119.0,1.384240270889367,0.505875,1.419440675452351,0.483,16.4101799 +120.0,1.388919293317496,0.497,1.4193308146014278,0.482,14.4690208 +121.0,1.3986924679816948,0.498875,1.4196637053584589,0.482,16.4386084 +122.0,1.3889829028434624,0.497,1.419563050588049,0.482,14.7886559 +123.0,1.3942914866106508,0.493625,1.419882588243892,0.481,17.2829424 +124.0,1.383490268351106,0.495625,1.4194286110705912,0.482,14.5395305 +125.0,1.389164044346411,0.49225,1.419255924174284,0.482,17.4748786 +126.0,1.3874639612284996,0.49925,1.4193708745356666,0.4815,15.1802834 +127.0,1.3943531787210013,0.492875,1.4193856484983538,0.4825,16.6639913 +128.0,1.3921740863497931,0.49475,1.419605113329245,0.482,14.5265674 +129.0,1.3932032848660056,0.493,1.4200459606131384,0.482,16.5375928 +130.0,1.3898133661451104,0.495375,1.4199204312932654,0.483,14.438044 +131.0,1.3855799501516712,0.493875,1.419513481185195,0.4825,16.6287285 +132.0,1.3848330248933314,0.49675,1.4193595387932403,0.484,14.5286568 +133.0,1.3900889247927195,0.49275,1.4192824703564728,0.4835,16.5296859 +134.0,1.3877471210638928,0.50125,1.4194082164191502,0.4835,14.4177796 +135.0,1.3813838383241765,0.496,1.4192262931620134,0.4825,16.7108967 +136.0,1.383339205496465,0.500875,1.419071878356233,0.4835,14.3275267 +137.0,1.3831614832512582,0.493,1.4190144949503698,0.4835,17.8683737 +138.0,1.3821740758485448,0.503125,1.4187708540934292,0.482,15.3725553 +139.0,1.3863805356472663,0.50025,1.4188086050200772,0.4825,17.3630713 +140.0,1.3802485324002565,0.49725,1.4189913685728113,0.4835,14.6267963 +141.0,1.3778295269516136,0.504375,1.418931278526175,0.4825,17.0603967 +142.0,1.3815899878894171,0.496375,1.4187655782190225,0.4825,14.2855367 +143.0,1.3821424982535808,0.497375,1.41872191834974,0.4825,15.9036716 +144.0,1.3894945008603652,0.49625,1.4187668846010224,0.4825,15.7109337 +145.0,1.3764020922766245,0.5075,1.4187202523852742,0.4835,16.9488475 +146.0,1.379902589274272,0.494625,1.4187541713085412,0.4825,14.504533 +147.0,1.3832440260284533,0.498125,1.418731830549829,0.482,16.6324517 +148.0,1.3851122868441257,0.496125,1.4188619396503406,0.482,14.752616 +149.0,1.375324937585105,0.5055,1.4188282362461424,0.482,17.0242684 +150.0,1.3895955870273244,0.501625,1.4189121559763842,0.482,14.7874068 +151.0,1.3680250195610848,0.511375,1.4188819963699155,0.4815,16.4870867 +152.0,1.3885675961840862,0.49675,1.418945029739514,0.482,14.5347894 +153.0,1.3859650656853826,0.49725,1.419043637954077,0.4815,16.42935 +154.0,1.389403962978957,0.497875,1.4190787651456018,0.4815,14.4587694 +155.0,1.3864140087406989,0.4985,1.4191561820107543,0.4815,16.487036 +156.0,1.3922009176885077,0.4985,1.4190642106668645,0.4815,14.5079904 +157.0,1.3857670237530713,0.49975,1.4190182435968117,0.4815,16.9465767 +158.0,1.3838295688453517,0.494125,1.418832683594518,0.482,14.4941984 +159.0,1.3854287876173728,0.49575,1.4187978199154139,0.4815,16.4123438 +160.0,1.384218970051715,0.491125,1.4188375039047352,0.481,14.7512277 +161.0,1.381961095899816,0.495875,1.4188396352865056,0.481,17.2117211 +162.0,1.3857848185022583,0.499875,1.41882179584504,0.481,15.5351325 +163.0,1.386667614513884,0.496875,1.4187454730782443,0.4815,16.8494892 +164.0,1.392392807864532,0.496875,1.418776140526483,0.481,14.7307964 +165.0,1.3876796759991565,0.499375,1.4188737864472032,0.4815,16.3173796 +166.0,1.3872415425569036,0.502875,1.4188572364429302,0.4815,14.3415462 +167.0,1.3866273597320402,0.493875,1.4188521785463761,0.4815,16.3284575 +168.0,1.3865864755634443,0.502625,1.4188630163575122,0.4815,14.3397091 +169.0,1.3830770754488284,0.50375,1.4188664276754117,0.4815,16.2989853 +170.0,1.3854146179160034,0.5045,1.4188988184440194,0.4815,14.3043123 +171.0,1.384239302782733,0.49725,1.41895353593278,0.4815,16.3149244 +172.0,1.3756087065749183,0.4995,1.4189692431403655,0.481,14.2901696 +173.0,1.389838759401308,0.502625,1.418946758892231,0.482,16.3190489 +174.0,1.3827961170278658,0.499,1.4189487382700445,0.482,14.3389146 +175.0,1.3840676521455315,0.497625,1.4189460967491951,0.482,16.2668354 +176.0,1.3859403161379191,0.503875,1.4189776238798362,0.482,14.3243646 +177.0,1.3887439238924346,0.499375,1.4189947486908006,0.482,16.2845361 +178.0,1.3876554812617177,0.49575,1.4189810439893475,0.482,14.3670207 +179.0,1.381968757077724,0.49725,1.418926971978386,0.482,16.2894068 +180.0,1.3936226462124568,0.498125,1.4188776851021236,0.482,14.3436526 +181.0,1.3789572014987692,0.494125,1.41885664842968,0.482,16.3309314 +182.0,1.3881823089993017,0.494625,1.4188511663312806,0.482,14.3087881 +183.0,1.3852339640780342,0.4995,1.418890486299103,0.482,16.2456632 +184.0,1.3813461110148502,0.4945,1.4188549171897107,0.482,14.3369703 +185.0,1.3818342396949286,0.494375,1.4188338665273819,0.482,16.2939532 +186.0,1.3892124188612416,0.49525,1.418846640882808,0.482,14.322679 +187.0,1.3812301252303896,0.494375,1.4188179913341572,0.482,16.2958307 +188.0,1.3814830043580946,0.507125,1.418824427486655,0.482,14.3439149 +189.0,1.3990099036117098,0.49,1.4188605429049523,0.482,16.3186364 +190.0,1.3897803545227114,0.494375,1.4188697141790827,0.482,14.34814 +191.0,1.3910870890594529,0.499125,1.41886857467969,0.482,16.3464144 +192.0,1.3860926926724169,0.502,1.4188939979824764,0.482,14.2963438 +193.0,1.3830831335672908,0.50275,1.4188993782347343,0.4815,16.2862901 +194.0,1.382888155158363,0.5045,1.4188807092586129,0.4815,14.396975 +195.0,1.382834499988602,0.49825,1.4188686272614945,0.4815,16.278158 +196.0,1.3833894553684116,0.501125,1.4188712972416067,0.482,14.3342256 +197.0,1.3807217241419694,0.502875,1.4188878529802946,0.4815,16.293994 +198.0,1.3927900512815214,0.49025,1.4189061340117721,0.4815,14.3463528 +199.0,1.3926960505422254,0.49375,1.418886502610954,0.4815,16.2829646 +200.0,1.3779264053198463,0.506375,1.4188526982043426,0.4815,14.3254612 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv.mtd new file mode 100644 index 00000000000..27ebbad6ff3 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 200, + "cols": 6, + "nnz": 1200, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-15 19:30:46 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv new file mode 100644 index 00000000000..f9812bfc241 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv @@ -0,0 +1,30 @@ +1.0,0.8174863545185341,0.774875,0.5278741425441658,0.84,10.1715735 +2.0,0.391795059625804,0.894875,0.41137626379303716,0.872,10.4089369 +3.0,0.3238912468355683,0.908875,0.3622260650084861,0.882,10.3654082 +4.0,0.2876961379383318,0.91825,0.3313803292772612,0.895,10.3783455 +5.0,0.2628983787077953,0.924,0.30862959093366016,0.902,10.4308053 +6.0,0.2441301997304852,0.930875,0.2907272547557681,0.909,10.4656414 +7.0,0.22922833829299888,0.93575,0.2756156963141336,0.915,10.4514486 +8.0,0.2169527598480045,0.938125,0.26295870228302826,0.92,10.4143988 +9.0,0.20646154584633128,0.940375,0.2518751846043149,0.923,10.4375515 +10.0,0.19738738897718835,0.9425,0.24216711870097585,0.924,10.4102107 +11.0,0.18935859648693504,0.9445,0.23361393594884702,0.926,10.4084565 +12.0,0.18222128259203033,0.9475,0.22597548108970147,0.929,10.4346495 +13.0,0.17576497728562024,0.94875,0.2190843598622689,0.93,10.4568538 +14.0,0.1699038875106924,0.95075,0.21289983296694728,0.933,10.4100527 +15.0,0.164577939692685,0.952875,0.2072369736645604,0.937,10.4324912 +16.0,0.1597495354557598,0.95425,0.20204653194347794,0.938,10.426407 +17.0,0.15532033631119696,0.955875,0.19733096208156406,0.942,10.4358339 +18.0,0.1512202977597111,0.95725,0.19293555460197345,0.943,10.4476537 +19.0,0.14743331410629051,0.958,0.18883545199137233,0.944,10.4798371 +20.0,0.14386068327115994,0.95925,0.1850174321646986,0.944,10.4543712 +21.0,0.14051337203274358,0.96025,0.18145676836312086,0.947,10.4729614 +22.0,0.137373666192189,0.96125,0.17815738488515756,0.948,10.4414544 +23.0,0.1344302826236057,0.962125,0.17504792923854812,0.949,10.4334216 +24.0,0.13165543256604695,0.962875,0.1720851788402324,0.949,10.4474674 +25.0,0.129021950918666,0.96325,0.16910255182294232,0.95,10.4655045 +26.0,0.12648997237758286,0.963375,0.16622084441698967,0.955,10.4872578 +27.0,0.1240750267160454,0.964375,0.1636150063159457,0.956,10.4448993 +28.0,0.12178406969154447,0.965125,0.1612286673708566,0.957,10.4340736 +29.0,0.11967929529435148,0.965875,0.15901937095827254,0.959,10.4108645 +30.0,0.11768908388467672,0.966625,0.15699640830982067,0.959,10.4343964 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv.mtd new file mode 100644 index 00000000000..4f8918c902b --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adagrad_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 30, + "cols": 6, + "nnz": 180, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-16 08:34:44 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv index efcfbc37287..267143d2235 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv @@ -1,90 +1,200 @@ -1.0,2.0366285569366878,0.26598543709489775,1.9111378509607304,0.328 -2.0,1.863508219437754,0.3412155143759349,1.8029196566374601,0.3632 -3.0,1.7781075000737478,0.37343204670101376,1.7365597405952091,0.3826 -4.0,1.7178380710578425,0.3947648329732425,1.6806893259419955,0.4002 -5.0,1.669877784216493,0.41048020192787105,1.6390592825854502,0.4138 -6.0,1.6350585694820974,0.42428172261924546,1.6146616228664268,0.4242 -7.0,1.6090974892669985,0.4327987369120824,1.5910762546497168,0.4314 -8.0,1.587529581892735,0.44248223782615925,1.5692068211402614,0.4374 -9.0,1.5657862599669354,0.4502518904769819,1.5481026555575144,0.4452 -10.0,1.5430813878099718,0.45822149742396545,1.5275131045309027,0.4538 -11.0,1.5199649145732006,0.46613397457204586,1.506689447582152,0.4618 -12.0,1.4982848263026722,0.4736133039720792,1.488505237593026,0.4718 -13.0,1.4789747560435527,0.48032605534319434,1.4727941864822314,0.4766 -14.0,1.4621960038234303,0.4855388898121987,1.4603915792006466,0.4802 -15.0,1.4475009074972,0.4910233505068971,1.4511544780956973,0.483 -16.0,1.4349582625238917,0.49627929200598303,1.4428575600357896,0.485 -17.0,1.423895901496466,0.4997927746385241,1.4336665640797934,0.4904 -18.0,1.414059771299443,0.5039585757021772,1.4282307999663446,0.4916 -19.0,1.404377145998948,0.5074814068472661,1.4222616630433387,0.4968 -20.0,1.3953288419933125,0.5116233172677415,1.4168349642383111,0.499 -21.0,1.386648730995609,0.5150796701013794,1.4117382901756448,0.5014 -22.0,1.37796944077023,0.5181361143426957,1.4065785507454347,0.5026 -23.0,1.3696668695223018,0.5211639936845605,1.402195989771859,0.505 -24.0,1.3616434672260533,0.5245060869203922,1.3972141118943933,0.5052 -25.0,1.3542630371676898,0.5273719253780954,1.3935068999222704,0.5078 -26.0,1.3473694290558793,0.5303141100216054,1.3907051889091704,0.5102 -27.0,1.3402073426222127,0.5322232840285857,1.3892659032226624,0.508 -28.0,1.3336872003973426,0.5347987992354993,1.3865499433195474,0.506 -29.0,1.327384157679365,0.537255380588333,1.3873974009402807,0.5034 -30.0,1.3216604201787392,0.5391406639521356,1.3836836288514893,0.5054 -31.0,1.3161280598647895,0.5419685889978394,1.3832381357516508,0.507 -32.0,1.3105416127136869,0.5436824829649327,1.3800900635777025,0.5088 -33.0,1.3047664781705213,0.5450535981386072,1.3801428125459738,0.5088 -34.0,1.2996126109982393,0.5470817059996675,1.3776929353987932,0.5116 -35.0,1.293823188412723,0.5487145795246802,1.375557900607078,0.514 -36.0,1.2884030433697722,0.5512854204753199,1.3705886811509542,0.5142 -37.0,1.2831253551292954,0.552880380588333,1.3683649044462805,0.5134 -38.0,1.2783286448400695,0.553456352833638,1.3651622891751962,0.515 -39.0,1.2733306632853874,0.5543226483297324,1.3643001109138162,0.5164 -40.0,1.268891600263991,0.5557508933023101,1.3617116557796567,0.5192 -41.0,1.264266710657484,0.557293397872694,1.3587595770290883,0.5178 -42.0,1.2596929659095248,0.5590452052517866,1.3554118331969724,0.519 -43.0,1.2553917233114704,0.560554470666445,1.3546034200212493,0.5224 -44.0,1.2516899362081932,0.5619302600963936,1.353135177682238,0.5236 -45.0,1.2473519464193588,0.5630967467176333,1.3521054237005408,0.5234 -46.0,1.2433013995256341,0.5652105492770483,1.3513343518829966,0.5234 -47.0,1.239448787494256,0.5670148121987701,1.3487089014064364,0.5268 -48.0,1.2354618536988764,0.5683812531161708,1.3461108297962203,0.5266 -49.0,1.2318261814835512,0.5694667192953299,1.3446704091638717,0.5274 -50.0,1.2282065364187986,0.5719851047033405,1.344586378891869,0.5296 -51.0,1.224133646245753,0.5726992271896294,1.3432699487117177,0.5304 -52.0,1.220546875066253,0.5752082640850922,1.3426149725440661,0.5308 -53.0,1.217120690696172,0.5763555343194283,1.3426393843545892,0.5318 -54.0,1.213568203392273,0.577783779292006,1.3404433750471476,0.5328 -55.0,1.2103219298678027,0.5786931818181817,1.3395115771735926,0.5354 -56.0,1.206984211848854,0.5799261467508725,1.3372971072601654,0.5356 -57.0,1.2037463317947639,0.5816639313611434,1.3349564292855296,0.5356 -58.0,1.2002898800179351,0.5821495346518198,1.334121740633766,0.535 -59.0,1.196807843220183,0.5832921306298819,1.3337720183945212,0.537 -60.0,1.193598377912578,0.5850345894964267,1.3323687113361222,0.5366 -61.0,1.1900622506273248,0.5858058417816187,1.331289361658365,0.5352 -62.0,1.1871378053459447,0.5867438092072461,1.3306094609968828,0.5378 -63.0,1.1841863183111265,0.5882577488781785,1.3306050856582037,0.5376 -64.0,1.1808866625784924,0.5883720084759847,1.3297544647820971,0.5372 -65.0,1.1784611619616456,0.5891718256606282,1.3293163604280938,0.539 -66.0,1.1754922767281581,0.5895146044540468,1.3281268708805458,0.539 -67.0,1.1727712033092526,0.591171368622237,1.3243216554218156,0.5398 -68.0,1.16986368405737,0.5916948853249128,1.3250558910354457,0.5402 -69.0,1.1669975974070492,0.5933277588499252,1.32206820973747,0.541 -70.0,1.1640628770424661,0.5947419810536813,1.3229685907464526,0.5398 -71.0,1.1614204583284387,0.5954083222536147,1.324079172392963,0.5418 -72.0,1.1584428785720262,0.5964034194781452,1.322592790482728,0.54 -73.0,1.155897042957851,0.5969840659797241,1.321316808597242,0.5404 -74.0,1.1533538946445323,0.5984221788266578,1.3240338764937882,0.5402 -75.0,1.150596395153521,0.5990838457703174,1.3250515243843302,0.5414 -76.0,1.1479828276607542,0.5997361642014293,1.3213816765518247,0.5408 -77.0,1.1456013991649443,0.6007359356822337,1.322209337122594,0.5414 -78.0,1.1428948834559163,0.6021402900116337,1.3208159001419877,0.5416 -79.0,1.1405840977255453,0.6030258018946318,1.3190405319298553,0.5436 -80.0,1.138456276159628,0.6046540011633704,1.319016162754993,0.5428 -81.0,1.1360969314308267,0.604801499916902,1.317674437313949,0.5436 -82.0,1.1335010399508012,0.6058584011966096,1.3186716090087884,0.5436 -83.0,1.13123556274039,0.60646761259764,1.3147843189430144,0.5432 -84.0,1.1291076858663522,0.6074959489778959,1.3154507688752388,0.5422 -85.0,1.1270488055037702,0.6081815065647332,1.3113865161079785,0.5454 -86.0,1.1246272411531353,0.6084671555592488,1.31230086333935,0.543 -87.0,1.1226729512819174,0.6089195196941998,1.3106131954976976,0.5432 -88.0,1.1202892968081963,0.6099572045870034,1.3103511664799978,0.5434 -89.0,1.11780839667264,0.6109523018115339,1.3103589073105326,0.5418 -90.0,1.115877186853028,0.6116378593983712,1.3095933331067162,0.5456 +1.0,2.2849196751628265,0.189875,2.084519199828603,0.2405,14.7279931 +2.0,2.0514378323125824,0.252625,1.98933459881626,0.292,12.0516347 +3.0,1.9483185388915683,0.285,1.8908715936959504,0.316,12.0382224 +4.0,1.8657670224907221,0.31925,1.8231926858817933,0.3505,11.8445111 +5.0,1.8133863519594728,0.34075,1.7555661572244337,0.375,11.8414297 +6.0,1.7752940536772115,0.361125,1.7451762129659305,0.38,11.9849105 +7.0,1.7412140907682303,0.364875,1.675082659913595,0.3945,12.2866462 +8.0,1.703594517521442,0.38625,1.6755534277474669,0.3945,12.1006226 +9.0,1.67629931872254,0.3825,1.6453974387727168,0.4175,12.1520741 +10.0,1.6503038838775324,0.40425,1.6527344115405305,0.403,12.2163826 +11.0,1.6046312956693347,0.42075,1.615644343841738,0.426,12.1007201 +12.0,1.6057910018134771,0.416,1.6214707453859993,0.412,12.1328547 +13.0,1.5803807420278695,0.427125,1.6334525156054494,0.4185,12.0758261 +14.0,1.5601278394115907,0.44125,1.6344749209002323,0.4105,11.9790827 +15.0,1.5415127588392297,0.44225,1.5742071180868544,0.435,12.0774245 +16.0,1.5310840346940542,0.445,1.5827404127899867,0.4285,11.9541701 +17.0,1.501572988672101,0.4545,1.5341685757260721,0.456,12.2120863 +18.0,1.485450600681299,0.460125,1.5477966198027597,0.447,12.2838707 +19.0,1.4639507843093702,0.469375,1.5037428814070453,0.464,12.3109653 +20.0,1.4624581517072426,0.475125,1.5087492133926155,0.4575,12.1374387 +21.0,1.424003268593148,0.479125,1.4637703031331817,0.476,12.0712177 +22.0,1.4075127554733322,0.49675,1.447448027473934,0.483,12.3378606 +23.0,1.3972850105580534,0.4925,1.4424116465037955,0.4775,12.2581617 +24.0,1.400391795640922,0.49625,1.4279798056071022,0.488,12.6511055 +25.0,1.379568500469636,0.5065,1.422323027619446,0.499,12.5493209 +26.0,1.3770498202977532,0.5025,1.4112297227561756,0.49,12.7169776 +27.0,1.3773478962375088,0.501875,1.4094591034438153,0.5,12.9440793 +28.0,1.372900634925617,0.50075,1.4278028238885263,0.486,12.9146473 +29.0,1.3509242459451736,0.511,1.4129524924866912,0.492,13.0256457 +30.0,1.348270725670394,0.51225,1.4100022427744408,0.4895,12.9327142 +31.0,1.3329985225173466,0.51525,1.3920069168097868,0.5045,12.7132853 +32.0,1.3251132878547367,0.5295,1.4052131459513406,0.4905,13.0306638 +33.0,1.3209339033459857,0.5275,1.4140671696405032,0.489,12.6107867 +34.0,1.3248265628032125,0.527375,1.3888975383542994,0.5025,12.7180129 +35.0,1.3068804444938087,0.530625,1.3771416602724549,0.5085,12.8326966 +36.0,1.2985978187007923,0.527625,1.3835900063973818,0.5115,13.431879 +37.0,1.2870060080982069,0.536,1.3730847447029817,0.4975,13.5859462 +38.0,1.2988105916353487,0.531375,1.381673182657721,0.506,13.400477 +39.0,1.2880745925084696,0.539875,1.395685755681152,0.5005,13.8126345 +40.0,1.2775779295535075,0.54325,1.3648056632917787,0.505,13.2916727 +41.0,1.2674003729198933,0.54425,1.355786253462423,0.5195,13.4106837 +42.0,1.2403405311431046,0.551,1.3450661914225202,0.525,12.9386497 +43.0,1.2525224138791935,0.542875,1.350498716202372,0.523,12.7960323 +44.0,1.2436083667132574,0.550125,1.3505262990520448,0.515,12.4925015 +45.0,1.2219492901922577,0.56425,1.3441768377315926,0.5245,12.4754613 +46.0,1.2314550412956364,0.553125,1.3479888063293441,0.5205,12.5148793 +47.0,1.2336214417836706,0.555875,1.338068259159096,0.517,12.6374146 +48.0,1.2103050046512716,0.56025,1.340510380329518,0.5185,12.6743832 +49.0,1.219686015987277,0.560875,1.3370040043704807,0.5185,12.8179449 +50.0,1.2004770007335606,0.569375,1.3409828430072768,0.5235,12.8586987 +51.0,1.2132168302149613,0.567625,1.3392852350306141,0.5245,12.5285519 +52.0,1.210763052483666,0.565125,1.3251450455748024,0.531,12.7817476 +53.0,1.2068689256609306,0.567875,1.3396422423345984,0.531,12.5246526 +54.0,1.2003869651458665,0.563625,1.3397842845150154,0.524,12.518152 +55.0,1.1897083944117914,0.571375,1.3326517121353787,0.521,12.5286551 +56.0,1.1907082749491233,0.57225,1.323745174568078,0.5245,12.5858061 +57.0,1.1827624610749325,0.57875,1.3351505769504648,0.5235,12.5630183 +58.0,1.187010866248019,0.57325,1.3302752936400533,0.528,12.6256623 +59.0,1.1808579575072458,0.573125,1.321112577063071,0.5245,12.6291565 +60.0,1.1709501378424008,0.5795,1.3193550707370911,0.532,12.638679 +61.0,1.1618246093018365,0.5795,1.3174784735123832,0.5355,12.5791721 +62.0,1.1520319609034644,0.585375,1.3150433637399883,0.538,12.6202631 +63.0,1.1477539630405775,0.5875,1.318354816281638,0.531,12.6393164 +64.0,1.1560321916756717,0.583,1.3096614796084618,0.5365,12.8598063 +65.0,1.1409984315346478,0.5915,1.3128574701046716,0.5345,12.6252 +66.0,1.1425714072096107,0.5865,1.3209965747790466,0.5365,12.6533994 +67.0,1.1377979615331564,0.586375,1.3141779951201742,0.538,12.7527022 +68.0,1.1401642573887183,0.59575,1.311253411803279,0.5405,12.7049227 +69.0,1.1285763022611082,0.597625,1.3137751559893571,0.538,12.6332984 +70.0,1.1252280895811295,0.605,1.3144801123311738,0.5345,12.7263709 +71.0,1.1293086454489187,0.59475,1.3097648977770586,0.5345,12.6680093 +72.0,1.1202055671663882,0.601,1.3103034184189035,0.5355,12.7294065 +73.0,1.134320745341683,0.59225,1.3072929819696633,0.5365,12.7053955 +74.0,1.1177024220508391,0.608875,1.3112032049465983,0.539,12.7136953 +75.0,1.1154503437470824,0.59725,1.311733976116678,0.5375,13.5584812 +76.0,1.1052320532715771,0.60275,1.3073616569960127,0.5365,13.4558369 +77.0,1.1194800737647423,0.5995,1.3091582262531305,0.541,14.8243635 +78.0,1.1050994531956013,0.602,1.312880202348314,0.537,14.627551 +79.0,1.1158452230823257,0.60125,1.313914357285414,0.5335,14.2486491 +80.0,1.1038506503516912,0.608625,1.3050348758083008,0.5395,14.7808327 +81.0,1.0953394125932696,0.611125,1.3141482311854404,0.537,14.0316975 +82.0,1.1011376756848144,0.603375,1.3070462300718728,0.54,14.7576307 +83.0,1.0901740272336728,0.606125,1.3045036073733352,0.532,14.3377276 +84.0,1.0940842569842533,0.6065,1.302985038443557,0.538,13.4949199 +85.0,1.096499247425454,0.607375,1.3057020850092418,0.5355,13.6330622 +86.0,1.1029016463254413,0.608125,1.3062685187921292,0.5385,13.7520263 +87.0,1.1022467567036578,0.60825,1.3059329122970975,0.537,13.4987059 +88.0,1.0970637078902337,0.61075,1.3068760309206455,0.534,13.3646162 +89.0,1.0785672019494184,0.614125,1.3027072107401472,0.534,13.3917491 +90.0,1.080712426820526,0.612875,1.3058378744825552,0.5385,13.392417 +91.0,1.0883703299628775,0.61925,1.305967016726914,0.5355,13.4042449 +92.0,1.0956831660720512,0.60625,1.3054116425434836,0.5415,13.4848434 +93.0,1.094387999136863,0.61275,1.3038351010661038,0.5395,13.3700216 +94.0,1.0816361054881438,0.61525,1.302473732099717,0.5305,13.7820103 +95.0,1.084442501275727,0.607625,1.3075599661465238,0.535,13.3721083 +96.0,1.0672284004847896,0.61975,1.300113948680686,0.5325,13.7785516 +97.0,1.0810702022912604,0.616875,1.30007005088398,0.536,13.2700695 +98.0,1.074312475895865,0.61825,1.305057674824402,0.5385,13.5271689 +99.0,1.07787518971787,0.613375,1.3049000745872636,0.5375,13.3081504 +100.0,1.0622463948112089,0.617,1.3047937546047945,0.535,13.3883841 +101.0,1.0798863145626965,0.614125,1.300087975852338,0.5385,13.2879323 +102.0,1.0748581762085905,0.614875,1.3020408251579965,0.5425,13.4267144 +103.0,1.076131837119873,0.6145,1.3018864601505626,0.539,13.6095403 +104.0,1.0698148614793446,0.620875,1.300722831486062,0.539,13.704695 +105.0,1.0574729051032306,0.622,1.2997871976737332,0.5395,13.4815717 +106.0,1.0632482421212033,0.61475,1.3002700108382346,0.5345,13.4054907 +107.0,1.0747349356106042,0.61025,1.3026416420735858,0.5395,13.5249073 +108.0,1.0540256979272413,0.623875,1.301327355702955,0.5395,13.4147966 +109.0,1.0630822063016014,0.61725,1.3003957520698923,0.5455,13.6041269 +110.0,1.0684277335644676,0.606375,1.3029070250525718,0.5395,13.4500564 +111.0,1.0595024475081802,0.62575,1.3033425554955833,0.541,13.390854 +112.0,1.061014467865129,0.61475,1.3032459363385156,0.537,13.4080771 +113.0,1.0702669986594389,0.616875,1.299287772058609,0.538,13.3726651 +114.0,1.0625400138511465,0.61475,1.3003511425879692,0.5385,13.2651985 +115.0,1.0537797004118257,0.619375,1.3017929379372826,0.542,13.2452856 +116.0,1.0547080024448152,0.62175,1.3006155344670178,0.536,13.2166823 +117.0,1.072237912575877,0.61375,1.3015528750320164,0.54,13.2115493 +118.0,1.067022205702234,0.6155,1.3027222626760364,0.539,13.2426751 +119.0,1.0628803732045762,0.61675,1.3017082699813987,0.5405,13.1901532 +120.0,1.0690572401899596,0.61525,1.3027649923054705,0.54,13.2637659 +121.0,1.0586669193834752,0.623375,1.3006300467231307,0.5365,13.4097789 +122.0,1.0707946270681614,0.617125,1.2974340390217514,0.5375,13.250331 +123.0,1.051137950774137,0.627625,1.3010242838026764,0.5395,13.1804708 +124.0,1.0541840286720705,0.623875,1.3002439660513028,0.539,13.2243373 +125.0,1.0607372145414002,0.625625,1.2988381891129452,0.5365,13.2615272 +126.0,1.0560736430132651,0.61875,1.3001726010873673,0.5425,13.2503012 +127.0,1.051659583298328,0.621625,1.2985708239702267,0.539,13.3604874 +128.0,1.0606420874136282,0.618875,1.2988845125118098,0.5405,13.2487604 +129.0,1.0501140126272774,0.620125,1.298684961646278,0.54,13.2934161 +130.0,1.0522953186407882,0.619875,1.2994599738514365,0.541,13.2823787 +131.0,1.0482259552664168,0.627375,1.2988166707261257,0.5395,13.2011415 +132.0,1.053630483315171,0.625625,1.297500298847332,0.542,13.2469529 +133.0,1.0496909241863799,0.623875,1.2982112761444378,0.542,13.2440761 +134.0,1.053390944540559,0.61975,1.2970349452301133,0.538,13.2768969 +135.0,1.0617769307692633,0.621125,1.295577652776914,0.5375,13.3100702 +136.0,1.046344593896457,0.6255,1.2971494371345131,0.5405,13.5443696 +137.0,1.0400885286166677,0.623875,1.2982766618245636,0.54,13.5714783 +138.0,1.0472142246630913,0.630125,1.297338078921211,0.5395,13.4726551 +139.0,1.044345956063719,0.62725,1.2996330963054585,0.5395,13.4786256 +140.0,1.0421961727437798,0.626,1.2981433616708402,0.5405,13.5379465 +141.0,1.06094211532486,0.620875,1.2975984703287131,0.5395,13.7041342 +142.0,1.0553657128652232,0.62425,1.2974125710982907,0.5385,13.6269432 +143.0,1.042882076126943,0.62475,1.2966133401698707,0.5425,13.3839252 +144.0,1.038168211893101,0.626125,1.296318973292743,0.543,13.4427766 +145.0,1.043062231991865,0.62825,1.2973188627296,0.5385,13.4143434 +146.0,1.05010651570851,0.623625,1.296283899633047,0.5415,13.4953181 +147.0,1.0395164948182658,0.630125,1.2976354042279787,0.5425,13.3437978 +148.0,1.0500351886047596,0.620625,1.2972685062147329,0.543,13.5782792 +149.0,1.0471942017101314,0.627875,1.296841270490122,0.544,13.3897592 +150.0,1.040091049062549,0.626,1.2961824055017408,0.5455,13.5886698 +151.0,1.0472366745104382,0.6215,1.2959668583369286,0.5445,13.4912199 +152.0,1.0392867299480801,0.6275,1.296922447744704,0.544,13.4204069 +153.0,1.050994383234715,0.62375,1.2961989924721584,0.5405,13.2335554 +154.0,1.0446272673308703,0.6255,1.296787939931907,0.5425,13.0050197 +155.0,1.0440555151791635,0.62025,1.2964212823829375,0.5405,13.4590827 +156.0,1.0493211434094583,0.622,1.2968609932044313,0.5425,13.4093477 +157.0,1.0370568091941397,0.632375,1.2967308597633744,0.542,13.3970959 +158.0,1.0558573769633197,0.616625,1.2969991442357738,0.5415,13.4566714 +159.0,1.0383749175601147,0.633125,1.295994288564952,0.5415,13.3690832 +160.0,1.0415060230094486,0.633,1.2964085846075386,0.54,13.4282967 +161.0,1.0470905127873347,0.622125,1.296114744568239,0.5395,13.3444574 +162.0,1.031406022430593,0.6315,1.2960618765544158,0.539,13.4295613 +163.0,1.0511886537754764,0.622625,1.2956914380859437,0.541,13.6733833 +164.0,1.039775700268689,0.6225,1.2957488263350172,0.537,13.5702263 +165.0,1.0544922164917554,0.62425,1.2957468170564426,0.5395,13.3902833 +166.0,1.034979644714843,0.628375,1.2958221039568119,0.539,13.4432765 +167.0,1.0391553788499304,0.624875,1.295842786471535,0.54,13.3949436 +168.0,1.0404343953468584,0.63025,1.295914241832399,0.542,13.5573102 +169.0,1.0523678651269004,0.62525,1.2958358142973219,0.543,13.3908004 +170.0,1.0446434167572052,0.6275,1.2953615693678218,0.541,13.3952878 +171.0,1.0417704010479667,0.625875,1.2957523613885806,0.541,13.3884274 +172.0,1.0517252803838033,0.61825,1.295786228869096,0.5405,13.4192946 +173.0,1.03768060965457,0.63025,1.2954580883629132,0.541,13.3358693 +174.0,1.041155215478498,0.625875,1.296008407969002,0.5435,13.4552215 +175.0,1.045112281407261,0.624375,1.296169606537798,0.543,13.535416 +176.0,1.033650008698053,0.62875,1.296262316562349,0.541,13.4594821 +177.0,1.0510810913616209,0.624375,1.2962449321777039,0.5415,13.51468 +178.0,1.0433757721788466,0.622125,1.2956677720818424,0.5385,13.6767805 +179.0,1.051224348660264,0.621875,1.2960152149763833,0.5405,13.5006381 +180.0,1.0314177794277277,0.62875,1.2964203689113176,0.5385,13.5067165 +181.0,1.0513367570179246,0.6295,1.2958561900007526,0.54,13.3785868 +182.0,1.0412040258844728,0.62925,1.2960574313662299,0.539,13.3887546 +183.0,1.0443543257450396,0.625125,1.296019282055106,0.5395,13.5726541 +184.0,1.0544053821073291,0.62475,1.2957639155633933,0.539,14.2769559 +185.0,1.0423633805872128,0.6325,1.2959458594657913,0.54,13.3224801 +186.0,1.0445996463405407,0.625125,1.29606694455465,0.5395,13.2358042 +187.0,1.0465690668191656,0.62925,1.296345247773905,0.5395,13.2132424 +188.0,1.0494627804918446,0.62325,1.2961809356557625,0.5395,13.2491389 +189.0,1.0463956346701941,0.6285,1.296215486088509,0.54,13.2674834 +190.0,1.0403554510497814,0.625125,1.296261999020853,0.5405,13.3292092 +191.0,1.0398717612085016,0.62425,1.296240204862022,0.5395,13.2973548 +192.0,1.0385983015407974,0.629,1.2957113332142651,0.5405,13.2913105 +193.0,1.049133429011457,0.624,1.2958224601839807,0.5405,13.2628486 +194.0,1.0433478935994807,0.629375,1.2958572548832248,0.5405,13.3001396 +195.0,1.0545677217104032,0.62175,1.2956059549931291,0.54,13.2969423 +196.0,1.026881556699914,0.628625,1.2957579917984832,0.5405,13.45485 +197.0,1.051392938570302,0.623125,1.2955728910405828,0.5405,13.4111643 +198.0,1.0438591114221216,0.62775,1.295647149201594,0.54,13.5004065 +199.0,1.0363710844857252,0.629625,1.295381574037537,0.539,13.4280088 +200.0,1.0307854527842486,0.631,1.2954949267970077,0.539,13.4776295 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd index d13a02334c8..0037962551d 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_cifar.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 90, - "cols": 5, - "nnz": 450, + "rows": 200, + "cols": 6, + "nnz": 1200, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-17 19:35:45 MEZ" + "created": "2026-02-15 12:46:32 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv index 5fa736eb04c..60534e100a4 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv @@ -1,60 +1,30 @@ -1.0,0.6600831748999706,0.7919920634920635,0.45846249291763935,0.844 -2.0,0.25601354551075184,0.923,0.3060521207758516,0.909 -3.0,0.1791216355591798,0.947125,0.21327004292691254,0.933 -4.0,0.1399477948175259,0.95775,0.1736507581045767,0.942 -5.0,0.10750665179781986,0.9675,0.1505918516055093,0.952 -6.0,0.09024092394376199,0.971875,0.15272215195884234,0.949 -7.0,0.08109318636628057,0.974,0.18253549984362463,0.943 -8.0,0.07343285225967074,0.9765,0.1963133682103849,0.936 -9.0,0.06492667107394304,0.97925,0.16139850527851352,0.948 -10.0,0.05564659771922558,0.9825,0.15813024537483578,0.949 -11.0,0.04885065099874338,0.984625,0.13685280674984188,0.958 -12.0,0.04345266142523965,0.986,0.1295635143772901,0.963 -13.0,0.03789947918193832,0.988125,0.1280999416145119,0.964 -14.0,0.03440348961873195,0.98975,0.12033225446550745,0.967 -15.0,0.03113956579003195,0.9905,0.14465871496448326,0.956 -16.0,0.02782411652521333,0.992,0.13935065575895655,0.959 -17.0,0.025903924198902143,0.992875,0.13805741037482513,0.96 -18.0,0.023049034921953607,0.994,0.1390425642677865,0.958 -19.0,0.021960489895278133,0.99375,0.14567394365139114,0.953 -20.0,0.022683080115491985,0.992875,0.13101678745364734,0.962 -21.0,0.01951068056535099,0.99375,0.16387851254291194,0.953 -22.0,0.02072305049782118,0.993375,0.13199021229927832,0.963 -23.0,0.01573298327963868,0.9955,0.11595083667347869,0.966 -24.0,0.016863144556757713,0.994625,0.12464655755935368,0.964 -25.0,0.011906263883559153,0.99675,0.09555637996964318,0.975 -26.0,0.01387731248733787,0.995,0.07513476435524133,0.973 -27.0,0.014348454929750287,0.99525,0.09799803592380817,0.973 -28.0,0.014791121236119583,0.995,0.09913795348726741,0.97 -29.0,0.01745363921146775,0.995,0.10855312385534872,0.967 -30.0,0.016810133122882962,0.994625,0.09143590778251723,0.972 -31.0,0.013776919442576465,0.995125,0.09972306275201406,0.973 -32.0,0.012081841240356836,0.995875,0.1042540514767386,0.971 -33.0,0.009673850822736923,0.997,0.08166328277502062,0.976 -34.0,0.010130896530972777,0.99775,0.08359973442180495,0.975 -35.0,0.009486136169168992,0.996375,0.09465088299135849,0.969 -36.0,0.011784477117724483,0.9964980158730159,0.12253367435178857,0.964 -37.0,0.01285823612554023,0.9955,0.0778909504372984,0.973 -38.0,0.005531593403143221,0.99875,0.08527911368874061,0.978 -39.0,0.004174380412227944,0.99925,0.06256664584964217,0.98 -40.0,0.003724836264838745,0.999375,0.06596277050627802,0.977 -41.0,0.00373747439026559,0.999,0.106305429921357,0.975 -42.0,0.00446614766949216,0.99875,0.06967587883698868,0.983 -43.0,0.0033526953383332878,0.999125,0.06330396928658376,0.984 -44.0,0.0028230799970961214,0.999375,0.08233284112176356,0.979 -45.0,0.0027498272954112166,0.99975,0.06967829332529306,0.983 -46.0,0.0021902541798457316,0.9995,0.12228901254433457,0.971 -47.0,0.014584827217146804,0.994625,0.11751439804792264,0.973 -48.0,0.003940440886971421,0.999125,0.07298610902463333,0.982 -49.0,0.002838167116175086,0.999375,0.05795638638785478,0.986 -50.0,0.0024289928108280536,0.99925,0.07105060997549256,0.98 -51.0,8.843184635752194E-4,1.0,0.06353335404859009,0.984 -52.0,6.38977018076913E-4,1.0,0.06250178394164058,0.986 -53.0,0.0010020022685720159,0.99975,0.08592793990596928,0.977 -54.0,0.003981127656437652,0.99875,0.14202391884937093,0.964 -55.0,0.009452855843030253,0.99725,0.11272917235094357,0.969 -56.0,0.02030383425854622,0.994,0.22102710131762598,0.961 -57.0,0.0201962723872667,0.992625,0.0746092794797957,0.98 -58.0,0.012778119867117035,0.99625,0.08488781163569933,0.98 -59.0,0.005098323074058392,0.998625,0.0705106763422874,0.983 -60.0,0.002205910690743962,0.9995,0.06720935609152047,0.985 +1.0,0.671490737144344,0.7822380952380952,0.47648379728190243,0.843,11.0895268 +2.0,0.25421095633431173,0.922,0.28867533486183933,0.918,10.0406482 +3.0,0.17652634164175846,0.94975,0.2141941434112847,0.929,9.5463554 +4.0,0.13149718153185025,0.960125,0.17720437481290172,0.942,9.4036622 +5.0,0.10283253683514162,0.96875,0.14575266474294093,0.953,9.2312427 +6.0,0.0857641404536416,0.973125,0.12156059472284547,0.964,9.1185585 +7.0,0.07526608123779649,0.975,0.13143898826790207,0.956,9.009549 +8.0,0.06621729533058522,0.9775,0.12712797771017936,0.956,8.990172 +9.0,0.05638331247547828,0.981875,0.12373785148374339,0.964,8.7923934 +10.0,0.04905036295398357,0.98325,0.12886071132992316,0.964,8.7588239 +11.0,0.04177406893518381,0.98675,0.13889555161434866,0.96,8.7338741 +12.0,0.037331166043982976,0.98775,0.14846274898559222,0.959,8.7932293 +13.0,0.032232535710503385,0.98975,0.1303295757283838,0.964,8.7249633 +14.0,0.02814180253320607,0.991125,0.11611641280607592,0.973,8.8053534 +15.0,0.025252820878453777,0.992625,0.12700909663005708,0.966,8.6906225 +16.0,0.02354666703378057,0.993375,0.1282420152545264,0.967,8.6754428 +17.0,0.024105774394357852,0.993,0.15015425935971588,0.961,8.6436733 +18.0,0.02508707503139239,0.992625,0.14032983320639303,0.965,8.4945501 +19.0,0.030871324030576203,0.989875,0.12607367953398993,0.963,8.3992487 +20.0,0.02737566527843638,0.990375,0.23582806890127408,0.945,8.2508794 +21.0,0.03523152484880446,0.987625,0.1957042110747224,0.95,8.2963981 +22.0,0.02078805290051819,0.9935,0.1479263583651629,0.963,8.2306996 +23.0,0.014928886045055035,0.995875,0.10446953685296069,0.973,8.275324 +24.0,0.011105806741145708,0.9965,0.08355163540486386,0.976,8.298743 +25.0,0.012849094119188423,0.99575,0.10836928291824617,0.972,8.2758025 +26.0,0.011429991318525302,0.997,0.07273887235172055,0.978,8.469496 +27.0,0.010144580112965642,0.997125,0.07333669203604924,0.982,8.3406143 +28.0,0.009408933052245154,0.997125,0.0873327717081945,0.976,8.340315 +29.0,0.010256818646241157,0.996625,0.09984224770745295,0.973,8.3268913 +30.0,0.008459429296304744,0.997625,0.07754990695275935,0.976,8.317416 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd index 04598b34d75..d8e436dd0a0 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_adam_mnist.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 60, - "cols": 5, - "nnz": 300, + "rows": 30, + "cols": 6, + "nnz": 180, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-18 12:40:31 MEZ" + "created": "2026-02-16 08:10:05 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv new file mode 100644 index 00000000000..1bdb7e4ba9f --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv @@ -0,0 +1,200 @@ +1.0,2.317499911691124,0.169375,2.13424996174316,0.2015,15.667751 +2.0,2.098735588520919,0.22975,1.9912422098606615,0.278,15.1149278 +3.0,2.0097480363784372,0.2715,1.8862427334879692,0.329,15.4429617 +4.0,1.9514673308758173,0.301375,1.879526135571271,0.331,15.5616138 +5.0,1.871795416876061,0.324,1.771293949699762,0.3695,15.7251895 +6.0,1.8425656402886006,0.330375,1.7664795366108683,0.378,14.3086093 +7.0,1.800303919378991,0.34875,1.8639381882569974,0.358,16.9555352 +8.0,1.8012275932260025,0.355875,1.791716958522556,0.371,16.6882911 +9.0,1.7412280970305518,0.383375,1.6950311909952513,0.4135,14.6615754 +10.0,1.7427920276002093,0.377,1.6618712129189341,0.4025,16.2223382 +11.0,1.7031177660760168,0.391375,1.6446194865177897,0.4145,14.2083057 +12.0,1.6763181012684694,0.39375,1.627796724004429,0.418,15.9863267 +13.0,1.665250053617422,0.404375,1.5874945013185404,0.434,13.9179277 +14.0,1.6389400351200059,0.4135,1.6347278525690576,0.4305,15.5785975 +15.0,1.8796133430068205,0.35125,1.6321659876571426,0.437,15.0555681 +16.0,1.6976884158676238,0.399375,1.6231041802537918,0.425,15.8103506 +17.0,1.6321263797709322,0.41475,1.5880290447377179,0.433,13.7301958 +18.0,1.6170722018143378,0.4255,1.5555519893435967,0.451,15.3379314 +19.0,1.5865396398926177,0.434375,1.582015763206702,0.446,13.6175248 +20.0,1.5920473401056938,0.4315,1.567473467273074,0.439,15.224785 +21.0,1.5058687231131618,0.459125,1.4664476723421473,0.478,13.1470106 +22.0,1.4740327894056129,0.472875,1.4357962065188545,0.488,15.2127073 +23.0,1.4632867476778213,0.478,1.4512076441018342,0.48,13.3270302 +24.0,1.4581241812276582,0.47475,1.4215735227706199,0.4955,13.6533707 +25.0,1.4401845236680246,0.48525,1.4424898768758543,0.48,13.679977 +26.0,1.4456110648690073,0.48675,1.4283706213878717,0.4845,13.6214922 +27.0,1.453133943225923,0.479625,1.431633205175132,0.481,13.6292351 +28.0,1.423656330734472,0.490375,1.414020911190374,0.4975,13.5491708 +29.0,1.4134631194803782,0.492125,1.40227521208565,0.49,13.6603128 +30.0,1.4187313979517304,0.49175,1.4175029234205387,0.5035,13.4406988 +31.0,1.4083973484354269,0.492125,1.4051559993054898,0.5015,13.6087809 +32.0,1.3925444389739492,0.501375,1.4072171059975653,0.4945,13.4785072 +33.0,1.394413466584004,0.498125,1.405395410616994,0.5035,13.2013823 +34.0,1.3800512338529545,0.506875,1.422614904690278,0.4865,13.5603503 +35.0,1.3926589200018364,0.497625,1.413254526080061,0.499,13.4163224 +36.0,1.379245965884372,0.514125,1.3864508892392262,0.5115,13.428615 +37.0,1.365956871328199,0.50875,1.4106641268222693,0.494,13.4418634 +38.0,1.3682513628232957,0.503125,1.3814346416604908,0.5075,13.4559156 +39.0,1.3650905934219062,0.516375,1.3777762784596113,0.508,13.341786 +40.0,1.3554101647885188,0.519875,1.4064793629265897,0.4985,13.3609986 +41.0,1.3011859261215395,0.539625,1.3546267019469518,0.527,13.3448237 +42.0,1.2758903018078527,0.54775,1.3442981257376423,0.528,13.5570786 +43.0,1.3038593944073782,0.52875,1.358259080997001,0.5265,13.4646088 +44.0,1.2907539193635258,0.54725,1.3482157723566228,0.5265,13.425172 +45.0,1.2664903832365444,0.544875,1.349655587237188,0.527,13.5045013 +46.0,1.2774463194611307,0.55025,1.3414804211297133,0.532,13.8650976 +47.0,1.2602868014242223,0.547625,1.3411393583185882,0.528,13.8070153 +48.0,1.2589074254721981,0.550375,1.3352796166181973,0.529,13.7642676 +49.0,1.2613348719275195,0.545375,1.326192502001139,0.543,13.6443297 +50.0,1.263075059750477,0.556,1.337822339295826,0.5275,13.6694539 +51.0,1.2560654378465812,0.5575,1.3398909574446176,0.522,13.4980698 +52.0,1.2389522192066347,0.557375,1.3340422040960849,0.5285,13.6909085 +53.0,1.246353421302485,0.556875,1.3499636260855394,0.5225,13.8806309 +54.0,1.239381110228978,0.558375,1.3406075810189342,0.534,13.8525488 +55.0,1.2433353093378448,0.55425,1.324629644870911,0.533,14.0841106 +56.0,1.2354395626741617,0.5565,1.3356743926443475,0.5335,13.8873882 +57.0,1.237418848254395,0.556125,1.3457505939544188,0.5195,13.8577057 +58.0,1.2290688215551495,0.564125,1.3193828541603463,0.529,13.9479669 +59.0,1.2205249908656897,0.5705,1.3362343110804618,0.5295,14.0356272 +60.0,1.2150364051581675,0.567875,1.3377327253949152,0.5175,13.9742641 +61.0,1.2042945810922459,0.567625,1.299347369664342,0.545,13.8784674 +62.0,1.1869554422683357,0.57375,1.295421337121282,0.541,13.7720781 +63.0,1.1913576149956475,0.579625,1.2847922968229424,0.552,14.0236965 +64.0,1.1814797193753155,0.57875,1.2925302533151977,0.5485,14.1982342 +65.0,1.1852575527301905,0.575875,1.2974096833767914,0.5445,14.0822313 +66.0,1.175954399715992,0.58,1.2954700090752658,0.5405,14.1029847 +67.0,1.1698802600032,0.585375,1.2873640487297948,0.5515,14.2222606 +68.0,1.1747750187406745,0.582125,1.2933753825100305,0.5495,14.0698178 +69.0,1.176758844846846,0.5765,1.2942414059631298,0.5475,14.049275 +70.0,1.1626001479337986,0.5805,1.291382934296348,0.5445,13.9798672 +71.0,1.1736646404840752,0.580875,1.2930450557210065,0.548,13.9478874 +72.0,1.1694081129701102,0.58175,1.2878783185602518,0.5455,14.143925 +73.0,1.1612580167200328,0.588875,1.2915025684304995,0.5475,14.0607609 +74.0,1.1554162234151095,0.585375,1.2825781984163054,0.549,14.2038661 +75.0,1.1532475297506493,0.585125,1.2931856305636016,0.5425,14.0194029 +76.0,1.1451593904238064,0.58775,1.2845532911864248,0.547,14.1575925 +77.0,1.1492909645909664,0.590625,1.2822127225089912,0.5465,14.0781696 +78.0,1.1492410836647744,0.59025,1.2798070597934794,0.5585,14.098592 +79.0,1.1545649146597519,0.58975,1.2839808783679567,0.5435,14.258488 +80.0,1.158975975929335,0.583625,1.292040375460197,0.5425,14.1885269 +81.0,1.141626165293428,0.59075,1.2716967459370532,0.55,14.2664008 +82.0,1.1253915069740432,0.59625,1.268181103739951,0.5505,14.3080074 +83.0,1.1285409318245216,0.591375,1.2698792482003705,0.551,14.16291 +84.0,1.1300053654492035,0.596125,1.2668427781471037,0.5535,14.3088668 +85.0,1.1255487032127391,0.600875,1.2665418062110707,0.558,14.2209616 +86.0,1.1377536583624235,0.591875,1.2665377357948204,0.5515,14.274974 +87.0,1.1252373801657416,0.5945,1.266072192143839,0.556,14.2361695 +88.0,1.1241915207941389,0.600625,1.2632048327671943,0.5525,14.2223963 +89.0,1.1228873853680117,0.600625,1.2666055963428553,0.552,14.4269076 +90.0,1.12557193856232,0.597625,1.2659554953031278,0.5515,14.3096142 +91.0,1.1172935662456493,0.6025,1.2721618178688976,0.5495,14.3176152 +92.0,1.118908031135265,0.606,1.2617799352496106,0.552,14.4369106 +93.0,1.119172639667468,0.6045,1.2685502610502812,0.5525,14.4291215 +94.0,1.1140036235135053,0.595625,1.2708219571047736,0.549,14.4566621 +95.0,1.118114251449247,0.600875,1.2645198575680199,0.5505,14.36721 +96.0,1.1221460595068176,0.59725,1.2678244836707697,0.5495,14.4190264 +97.0,1.1222327217316366,0.59725,1.264538032676506,0.5485,14.5194129 +98.0,1.1040915771649886,0.603375,1.2646420254370487,0.557,14.3773226 +99.0,1.1141455596158494,0.596125,1.2617442374133452,0.56,14.4428252 +100.0,1.116353212625066,0.596,1.2637919340908566,0.555,14.4109249 +101.0,1.1103282711157212,0.598625,1.2565343531672128,0.555,14.4365171 +102.0,1.101760974151141,0.602375,1.25923103878668,0.5535,14.476484 +103.0,1.1082838564073645,0.609875,1.2557994847598184,0.5575,14.5165641 +104.0,1.095031309559261,0.609125,1.2564420719858131,0.555,14.408565 +105.0,1.1002173548553162,0.608875,1.252878045094207,0.5605,14.5044739 +106.0,1.0959186074473726,0.61175,1.2532443976780008,0.554,14.6739368 +107.0,1.0990968495728408,0.602375,1.2547726212028347,0.557,14.6413638 +108.0,1.100968336416274,0.609125,1.253793622485958,0.556,14.5580032 +109.0,1.104766573974422,0.6055,1.2557147325798013,0.5545,14.3310999 +110.0,1.104298360743708,0.6075,1.2514087572682986,0.5565,14.4743644 +111.0,1.1063132614827664,0.605875,1.2537732481112982,0.5595,14.4957046 +112.0,1.1063622860749882,0.6045,1.2533806762968076,0.563,14.6431728 +113.0,1.0958888767678567,0.6035,1.2514053135780332,0.557,14.5591325 +114.0,1.1047888519916138,0.6045,1.2513394508878948,0.566,14.5222175 +115.0,1.0943723965297103,0.603,1.2501149491408061,0.56,14.5046575 +116.0,1.1024252537737045,0.60725,1.2544432274720891,0.558,14.5665028 +117.0,1.1019628812334505,0.604875,1.2495313138259807,0.5655,14.4860322 +118.0,1.0951464076701953,0.609625,1.2541648314998317,0.556,14.5191755 +119.0,1.1006300797007322,0.604875,1.2488222470103332,0.5655,14.5660115 +120.0,1.0861879580925962,0.619375,1.2528937514034104,0.5625,14.5908326 +121.0,1.082199018836983,0.613,1.2486644077870812,0.5635,14.4475893 +122.0,1.0938108249841794,0.6095,1.250240468545784,0.5635,14.4728122 +123.0,1.0926590815438308,0.608,1.2470787121981195,0.566,14.624248 +124.0,1.096732621127835,0.608,1.247561125875503,0.565,14.4535908 +125.0,1.1014265553202576,0.60175,1.2451149714164285,0.565,14.548036 +126.0,1.0947156040917423,0.61025,1.2449236442320595,0.5615,14.3996691 +127.0,1.0937438842578266,0.614125,1.2469064344942629,0.565,14.5767773 +128.0,1.079807320566041,0.616875,1.2471043685871859,0.5635,14.652292 +129.0,1.088313007025598,0.61225,1.2461083146488918,0.567,14.4000634 +130.0,1.0848612113364913,0.613375,1.248365278391203,0.5655,14.6998804 +131.0,1.078484783525951,0.615625,1.2454441374933374,0.563,14.7103772 +132.0,1.0783425338304478,0.61325,1.2465316875301682,0.5645,14.6719551 +133.0,1.0869827001337526,0.612125,1.245269172028706,0.5645,14.5390599 +134.0,1.0897246976002282,0.608,1.2467369075941273,0.5575,14.5948143 +135.0,1.0917709960513455,0.603375,1.247644585056021,0.5605,14.5812494 +136.0,1.0879209751856984,0.60725,1.2446197265404972,0.564,14.5561679 +137.0,1.0833220539120074,0.614,1.246359121818303,0.5635,14.5960763 +138.0,1.0727954748691557,0.6185,1.247490147160208,0.5645,14.4926432 +139.0,1.0873991669797005,0.61575,1.2458239587314954,0.5625,14.5005445 +140.0,1.089090211929346,0.61825,1.2458630743589587,0.5625,14.5743146 +141.0,1.0851214902852133,0.618,1.2432538615136424,0.5615,14.5850047 +142.0,1.0811520207431558,0.6215,1.2438817396114263,0.5655,14.6543626 +143.0,1.0772488463140537,0.622375,1.2432059596635283,0.568,14.7068158 +144.0,1.0860889986543312,0.618375,1.2425303322244667,0.563,14.5460072 +145.0,1.082262305634113,0.606625,1.2440479409345793,0.5645,14.6510187 +146.0,1.0773957535473477,0.618875,1.2444595692017162,0.5645,14.6522808 +147.0,1.0856322327284924,0.61525,1.2426483170137028,0.567,14.5760833 +148.0,1.0744046564305696,0.61775,1.2418929836020334,0.565,14.7908474 +149.0,1.0880204422819775,0.609,1.242165650995874,0.5685,14.6450553 +150.0,1.079424235859795,0.613625,1.2423859522173017,0.567,14.6120258 +151.0,1.0754070167286696,0.61275,1.244135044027801,0.5655,14.7034579 +152.0,1.075395018243674,0.6125,1.2429775308290782,0.563,14.5182634 +153.0,1.0734326470902569,0.617125,1.241185051627586,0.5675,14.5124191 +154.0,1.0800490935130316,0.611875,1.2406918921123289,0.566,14.7105367 +155.0,1.0812611398541314,0.618125,1.2421258512253415,0.5645,14.6467188 +156.0,1.0669635728217643,0.618625,1.2415266592008316,0.564,14.577965 +157.0,1.080646794399443,0.61825,1.2420682789030681,0.562,14.7238379 +158.0,1.0880726836878365,0.61725,1.241531721048019,0.567,14.6196427 +159.0,1.0869481752032835,0.616875,1.2415479369822755,0.566,14.4735731 +160.0,1.0756775102272742,0.616375,1.2437069314500606,0.563,14.6270309 +161.0,1.0815435558791733,0.61275,1.2424995906965244,0.5655,14.6042192 +162.0,1.0767528439959069,0.613375,1.241103633416577,0.566,14.5911533 +163.0,1.0831821522442142,0.61525,1.2412252988949473,0.5665,14.6275043 +164.0,1.070576114536538,0.619875,1.2419648926163347,0.566,14.5599641 +165.0,1.090427717286562,0.6095,1.2423699857076484,0.5635,14.5238431 +166.0,1.0630191783580398,0.622125,1.2417300195182925,0.5655,14.5532187 +167.0,1.0708994502811264,0.621875,1.2415790631552621,0.566,14.630444 +168.0,1.067926634220364,0.615,1.2411362538794133,0.5645,14.5589019 +169.0,1.076751084204367,0.61125,1.2412362955613994,0.5665,14.4660675 +170.0,1.070472696770259,0.617,1.2409165979944063,0.567,14.6726661 +171.0,1.0663337222711078,0.618,1.2404039374012783,0.5665,14.6087353 +172.0,1.0725234608638152,0.613625,1.2406567880208028,0.5685,14.6677537 +173.0,1.072992828493098,0.61375,1.242216803186321,0.5675,14.5406408 +174.0,1.0646183318080127,0.623875,1.2412921475359262,0.567,14.539297 +175.0,1.0814626946566752,0.6095,1.2412550627748837,0.5665,14.6157996 +176.0,1.0637959638003647,0.620875,1.240254552962168,0.569,15.2426552 +177.0,1.0775124273546934,0.615,1.2404323890955922,0.568,15.0623497 +178.0,1.0684771109233027,0.62125,1.2408057584058674,0.5695,14.4473813 +179.0,1.064997007670873,0.618875,1.2409065602477318,0.568,14.9252663 +180.0,1.0853188818644275,0.615375,1.241756442412931,0.5645,15.0553087 +181.0,1.0723787152426756,0.609875,1.2409910274926084,0.568,14.4357932 +182.0,1.0798211182304935,0.612625,1.241649187658252,0.566,14.6326167 +183.0,1.0680217992743604,0.620625,1.2408709208176558,0.566,14.5286158 +184.0,1.082317621315392,0.60525,1.2408365046588363,0.566,14.524018 +185.0,1.0678221510505235,0.619875,1.2408972477033255,0.5665,14.6014516 +186.0,1.0628243052131188,0.61625,1.2406602877086075,0.5685,14.6812657 +187.0,1.0617546604520998,0.622625,1.241407661791022,0.5665,14.3843408 +188.0,1.0793570370848462,0.616875,1.2413150660837053,0.5665,14.5970121 +189.0,1.0787423326952976,0.6145,1.2413674900288463,0.566,14.4857065 +190.0,1.0701771971409562,0.617625,1.2407163330746391,0.567,14.5206026 +191.0,1.0701759072087569,0.620875,1.2410263769543541,0.568,14.5850941 +192.0,1.0685708532616058,0.616125,1.2404926656260966,0.5675,14.5744162 +193.0,1.0729520967209174,0.614625,1.2413250883482927,0.568,14.3926992 +194.0,1.07520337154751,0.6185,1.2410090812129266,0.5675,14.6188892 +195.0,1.084254279952915,0.61475,1.241072433446629,0.565,14.536415 +196.0,1.0885902416633608,0.614375,1.2406006627329147,0.568,14.4046883 +197.0,1.0884391833167122,0.613125,1.2402557916683326,0.5675,14.5091527 +198.0,1.0773994190307936,0.616625,1.2395882833528789,0.567,14.4972993 +199.0,1.0705480166366623,0.626875,1.240187015169324,0.567,14.5703108 +200.0,1.0801774570061202,0.60925,1.2397648166117428,0.568,14.3953674 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv.mtd new file mode 100644 index 00000000000..3a7c02770e2 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 200, + "cols": 6, + "nnz": 1200, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-15 20:25:08 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv new file mode 100644 index 00000000000..8ff273d80e6 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv @@ -0,0 +1,30 @@ +1.0,1.1093782488379267,0.6687440476190476,0.7103196227035953,0.751,9.6345167 +2.0,0.5368217115382201,0.843125,0.5409422028335673,0.828,9.4952644 +3.0,0.43075663750726945,0.877,0.4614419577545038,0.855,9.5848966 +4.0,0.3712808445441949,0.89175,0.4083165263014015,0.864,9.5296959 +5.0,0.3313409749491643,0.905,0.36918884861362433,0.872,9.5549979 +6.0,0.3002519872908724,0.911875,0.3374946657663495,0.885,9.5610894 +7.0,0.2738142399887154,0.920625,0.3109021641498068,0.895,9.5647321 +8.0,0.2509429560107622,0.925875,0.28847201710915077,0.903,9.5164089 +9.0,0.23139162590379547,0.930875,0.2684646808503931,0.91,9.5464474 +10.0,0.21415825658663898,0.93525,0.2511333972251902,0.917,9.5202213 +11.0,0.1991027077413793,0.941,0.23575085063304155,0.921,9.5216028 +12.0,0.18567423792810084,0.9455,0.2219718849159556,0.923,9.5566332 +13.0,0.1735862084531195,0.949125,0.20955243879443033,0.926,9.5633677 +14.0,0.16300291268695882,0.95325,0.19891562427291376,0.931,9.6062662 +15.0,0.1537152427254511,0.956,0.19013516779236428,0.939,9.5037059 +16.0,0.14563275824032784,0.95825,0.18214669966884453,0.941,9.5329045 +17.0,0.13842570188433764,0.96025,0.17513901088180947,0.942,9.5138919 +18.0,0.13215219941696327,0.96225,0.1688552742284023,0.945,9.5152434 +19.0,0.12658806589066232,0.963,0.16313021149214327,0.949,9.515968 +20.0,0.12165114480421958,0.964375,0.15806127305317655,0.95,9.5011049 +21.0,0.11704335397099742,0.965625,0.15344154539468688,0.951,9.518604 +22.0,0.11285122230399844,0.9665,0.149181600488355,0.951,9.4965887 +23.0,0.10899167826483962,0.96725,0.14518200962060449,0.952,9.5114517 +24.0,0.10548009999768435,0.968,0.14179011384435702,0.953,9.5125976 +25.0,0.1022286248726787,0.96875,0.13853975328464868,0.953,9.5550386 +26.0,0.09907791719622959,0.969625,0.13584454806628404,0.953,9.522025 +27.0,0.09628575529384678,0.970375,0.13329325995653465,0.953,9.488768 +28.0,0.09366223292106875,0.97125,0.13087012733336528,0.955,9.4671204 +29.0,0.09115698302004199,0.972375,0.12865843448826594,0.955,9.4716141 +30.0,0.08878593398336924,0.973375,0.12666496497283158,0.956,9.4608253 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv.mtd new file mode 100644 index 00000000000..4a8ff0709ea --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_sgd_mnist.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 30, + "cols": 6, + "nnz": 180, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-16 08:39:42 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv index 06ae4237297..c217211340c 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv @@ -1,90 +1,200 @@ -1.0,2.308857970725247,0.09733879009473159,2.303781414916082,0.1044 -2.0,2.304008930124782,0.09928120325743726,2.3033522297439544,0.1044 -3.0,2.3037258759929133,0.09828143177663287,2.303188402061223,0.1044 -4.0,2.3035719744954597,0.09843931776632873,2.3031009169012147,0.1044 -5.0,2.3034703247407293,0.09878209655974737,2.303046278570225,0.1044 -6.0,2.303396340692825,0.09849644756523183,2.303008793363021,0.1044 -7.0,2.303339197122346,0.09803940917400697,2.3029813853473597,0.1044 -8.0,2.303293240514144,0.09798227937510387,2.3029603952712767,0.1044 -9.0,2.3032551783927606,0.097525240983879,2.302943743402374,0.1044 -10.0,2.303222941068266,0.09741098138607279,2.3029301622777862,0.1044 -11.0,2.30319515139901,0.0971538972910088,2.3029188364644875,0.1044 -12.0,2.3031708517290452,0.09735385158716968,2.3029092180000568,0.1044 -13.0,2.303149352177799,0.09749667608442746,2.30290092519086,0.1044 -14.0,2.303130141169306,0.09738241648662123,2.3028936839986205,0.1044 -15.0,2.303112830057921,0.09746811118497589,2.3028872925240407,0.1044 -16.0,2.303097117460817,0.0978394548778461,2.3028815986504196,0.1044 -17.0,2.303082765498494,0.09755380588333055,2.3028764855041284,0.1044 -18.0,2.303069583506499,0.09738241648662123,2.302871861726882,0.1044 -19.0,2.303057416587966,0.09738241648662123,2.3028676548032334,0.1044 -20.0,2.3030461373916387,0.09772519528003988,2.3028638063815388,0.1044 -21.0,2.303035640092217,0.09789658467674921,2.302860268927418,0.1044 -22.0,2.303025835907424,0.09781088997839454,2.3028570032873428,0.1044 -23.0,2.3030166497080473,0.09775376017949143,2.302853976886092,0.1044 -24.0,2.303008017419134,0.09758237078278212,2.302851162373504,0.1044 -25.0,2.3029998840026313,0.09763950058168522,2.3028485365948654,0.1044 -26.0,2.3029922018735722,0.09755380588333055,2.3028460797978676,0.0958 -27.0,2.3029849296437037,0.09726815688881502,2.3028437750148405,0.0958 -28.0,2.302978031115318,0.09718246219046035,2.3028416075764797,0.0958 -29.0,2.3029714744683667,0.09718246219046035,2.302839564725359,0.0958 -30.0,2.302965231598419,0.09675398869868705,2.3028376353059916,0.0958 -31.0,2.3029592775733714,0.09721102708991192,2.3028358095141903,0.0958 -32.0,2.3029535901845293,0.09703963769320259,2.3028340786928005,0.0958 -33.0,2.3029481495732043,0.09718246219046035,2.3028324351640124,0.0958 -34.0,2.302942937918265,0.09683968339704171,2.3028308720907593,0.0958 -35.0,2.3029379391731855,0.09683968339704171,2.3028293833614257,0.0958 -36.0,2.302933138843571,0.09695394299484793,2.3028279634933666,0.0958 -37.0,2.30292852379795,0.09689681319594481,2.302826607551716,0.0958 -38.0,2.3029240821061667,0.09692537809539638,2.3028253110806913,0.0958 -39.0,2.3029198029006626,0.09689681319594481,2.302824070045189,0.0958 -40.0,2.302915676256911,0.09695394299484793,2.3028228807808824,0.0958 -41.0,2.302911693089989,0.09701107279375104,2.3028217399514026,0.0958 -42.0,2.3029078450647407,0.09695394299484793,2.302820644511436,0.0958 -43.0,2.302904124517459,0.09695394299484793,2.302819591674796,0.0958 -44.0,2.302900524387369,0.09695394299484793,2.3028185788866904,0.0958 -45.0,2.30289703815653,0.09686824829649326,2.3028176037995474,0.0958 -46.0,2.302893659796928,0.09669685889978394,2.3028166642518713,0.0958 -47.0,2.3028903837237644,0.09695394299484793,2.302815758249686,0.0958 -48.0,2.3028872047540805,0.09695394299484793,2.302814883950203,0.0958 -49.0,2.302884118070067,0.09701107279375104,2.3028140396473953,0.0958 -50.0,2.302881119186381,0.09709676749210569,2.3028132237592303,0.0958 -51.0,2.302878203920975,0.09741098138607279,2.302812434816333,0.0958 -52.0,2.302875368369051,0.09726815688881502,2.302811671451892,0.0958 -53.0,2.3028726088796594,0.09712533239155725,2.3028109323926556,0.0958 -54.0,2.302869922034726,0.09695394299484793,2.302810216450874,0.0958 -55.0,2.3028673046301313,0.09701107279375104,2.3028095225170846,0.0958 -56.0,2.302864753658669,0.09692537809539638,2.3028088495536134,0.0958 -57.0,2.302862266294632,0.0971538972910088,2.3028081965887446,0.0958 -58.0,2.3028598398798685,0.0971538972910088,2.302807562711441,0.0958 -59.0,2.30285747191109,0.09726815688881502,2.3028069470665855,0.0958 -60.0,2.3028551600284204,0.09726815688881502,2.302806348850665,0.0958 -61.0,2.3028529020048816,0.09726815688881502,2.302805767307857,0.0958 -62.0,2.3028506957368564,0.09741098138607279,2.3028052017264735,0.0958 -63.0,2.3028485392353937,0.09732528668771813,2.3028046514357197,0.0958 -64.0,2.3028464306182124,0.09743954628552434,2.3028041158027452,0.0958 -65.0,2.3028443681023987,0.09769663038058833,2.3028035942299465,0.0958 -66.0,2.302842349997736,0.09772519528003988,2.3028030861525015,0.0958 -67.0,2.3028403747005197,0.09766806548113678,2.30280259103611,0.0958 -68.0,2.3028384406879288,0.09761093568223367,2.3028021083749253,0.0958 -69.0,2.3028365465127987,0.09755380588333055,2.3028016376896474,0.0958 -70.0,2.302834690798834,0.09758237078278212,2.3028011785257787,0.0958 -71.0,2.302832872236157,0.09749667608442746,2.302800730452008,0.0958 -72.0,2.3028310895772277,0.09772519528003988,2.302800293058731,0.0958 -73.0,2.3028293416330525,0.09769663038058833,2.3027998659566746,0.0958 -74.0,2.3028276272696626,0.097782325078943,2.302799448775633,0.0958 -75.0,2.302825945404852,0.09786801977729766,2.3027990411632944,0.0958 -76.0,2.302824295005185,0.09801084427455542,2.302798642784158,0.0958 -77.0,2.3028226750831555,0.09841075286687717,2.3027982533185245,0.0958 -78.0,2.3028210846945876,0.09838218796742562,2.3027978724615648,0.0958 -79.0,2.3028195229362116,0.09826792836961941,2.3027974999224523,0.0958 -80.0,2.302817988943382,0.09806797407345853,2.302797135423554,0.0958 -81.0,2.3028164818879793,0.09818223367126475,2.302796778699684,0.0958 -82.0,2.3028150009764223,0.09830064816353665,2.302796429497398,0.0958 -83.0,2.302813545447827,0.09830064816353665,2.3027960875743467,0.0958 -84.0,2.302812114572304,0.09818638856573043,2.3027957526986635,0.0958 -85.0,2.302810707649296,0.09815782366627888,2.3027954246483984,0.0958 -86.0,2.3028093240061196,0.09818638856573043,2.302795103210983,0.0958 -87.0,2.302807962996513,0.09804356406847267,2.3027947881827373,0.0958 -88.0,2.3028066239993126,0.09804356406847267,2.3027944793684005,0.0958 -89.0,2.3028053064172282,0.09784360977231178,2.3027941765806963,0.0958 -90.0,2.3028040096756257,0.09795786937011801,2.3027938796399248,0.0958 +1.0,2.4819501383599136,0.15825,2.1954280358236584,0.167,12.8226832 +2.0,2.1241497498005764,0.213375,1.9943102329399705,0.2875,12.1007488 +3.0,2.027234758289565,0.25675,1.9223933955898993,0.3205,12.3715178 +4.0,1.9741069605932597,0.274625,1.8224082775974753,0.3625,12.2885312 +5.0,1.912629416464321,0.304125,1.8267242916044975,0.3615,12.6480058 +6.0,1.8545270385656474,0.321375,1.7750925026497926,0.378,16.8090214 +7.0,1.8061631085734955,0.34125,1.700838363120779,0.4035,15.5016037 +8.0,1.7693214725643436,0.35275,1.7018485209067384,0.4,16.7452067 +9.0,1.7241363388625457,0.373875,1.6192016730845822,0.422,16.5303905 +10.0,1.6899718721904458,0.39,1.6034191754305727,0.426,16.5115838 +11.0,1.6524994895007465,0.400875,1.5550641945093,0.4435,14.728634 +12.0,1.6432949550882703,0.402375,1.592158699447699,0.434,16.4731352 +13.0,1.615988515361932,0.416875,1.5275186061075552,0.444,16.2860829 +14.0,1.587172073437394,0.421375,1.542636861146399,0.448,14.7210643 +15.0,1.5805272496783462,0.42575,1.5374200491552987,0.452,16.7437395 +16.0,1.5593052649069628,0.438875,1.4906890664716714,0.4635,16.2719542 +17.0,1.5453559342199386,0.444625,1.4993367717382116,0.461,14.5490643 +18.0,1.5369730980893246,0.443375,1.4733669840365786,0.472,16.4685827 +19.0,1.5329202114576437,0.445625,1.4656331216303011,0.472,16.026961 +20.0,1.5168256117903975,0.4475,1.4588440051597782,0.4695,14.3425992 +21.0,1.4907908259125837,0.457625,1.4422171631303455,0.4795,16.1882807 +22.0,1.476924210077713,0.4655,1.4341120698340857,0.4865,16.1500595 +23.0,1.4769900900189454,0.459375,1.429810053369566,0.4805,14.4395052 +24.0,1.4708689301486537,0.4675,1.4263997067910832,0.486,16.1312856 +25.0,1.4664390243418846,0.469375,1.4196162445211573,0.488,16.1682291 +26.0,1.4500711358908482,0.475,1.4233573098550596,0.4895,14.7780006 +27.0,1.4566358269076984,0.477,1.4169126726313708,0.491,16.3483808 +28.0,1.45020194579957,0.477,1.4015731293983666,0.499,16.2112962 +29.0,1.4495154030298312,0.470625,1.4092490077440627,0.497,14.2588481 +30.0,1.4277077090496262,0.478125,1.4073540252988443,0.496,15.9825039 +31.0,1.4257526659390147,0.483125,1.3912525839448655,0.4955,14.3548938 +32.0,1.4216543769112138,0.48925,1.3996579075917825,0.5005,16.2397246 +33.0,1.4156253075995042,0.49,1.3875123274421899,0.5045,16.6935173 +34.0,1.4249010004159126,0.492375,1.3812148909447315,0.5075,14.7783196 +35.0,1.4112813093990046,0.49625,1.384796418865822,0.504,16.5775371 +36.0,1.414855017245599,0.487,1.3778313279262495,0.5045,14.7421714 +37.0,1.4033908692844592,0.493625,1.3757381449125663,0.5055,16.5465819 +38.0,1.3889955346521285,0.50025,1.3766958318634974,0.509,14.7834195 +39.0,1.3928926643768778,0.49725,1.364270417033822,0.5095,16.7807185 +40.0,1.3889738758794328,0.498125,1.3722521031061374,0.508,14.8672155 +41.0,1.3803343802898287,0.501625,1.3536640488693,0.5175,16.7133591 +42.0,1.3642775420059539,0.5085,1.3519250819576982,0.519,14.7586796 +43.0,1.3739900485987695,0.508125,1.3543994320606951,0.524,16.4919478 +44.0,1.3628192628252611,0.514875,1.35345752834436,0.5195,14.8291684 +45.0,1.360944316101872,0.50375,1.3528284014595926,0.526,17.5073369 +46.0,1.355830000203948,0.5125,1.3467699615240458,0.5265,14.7639548 +47.0,1.3590905769575823,0.513875,1.3513241236471443,0.524,16.3159131 +48.0,1.3639192146204642,0.5145,1.348791900737384,0.523,14.6808939 +49.0,1.3549894740183361,0.51375,1.3461225392077345,0.5285,16.5167279 +50.0,1.3559619989176233,0.513375,1.3431456116296363,0.528,14.9592641 +51.0,1.3523482718050015,0.510375,1.3414689637160735,0.5305,16.6538917 +52.0,1.3471776561874822,0.517375,1.34041669554498,0.5315,14.8952145 +53.0,1.3528346195106322,0.51775,1.342116052772083,0.5245,16.6871542 +54.0,1.3473656938129235,0.51425,1.3377828232469857,0.529,14.9586728 +55.0,1.343422890566923,0.525625,1.3430565980062648,0.5265,16.7949393 +56.0,1.3385820768375822,0.5205,1.3418470692339022,0.5315,15.4616934 +57.0,1.3499835756962406,0.523,1.3376766313861896,0.528,16.9351981 +58.0,1.3419496787287863,0.52675,1.3364162591383668,0.5285,15.1126551 +59.0,1.347486244594015,0.5195,1.3326480998741057,0.5275,17.0143573 +60.0,1.3409485500955667,0.523375,1.3278794575807427,0.5345,15.2219919 +61.0,1.328747869292858,0.526625,1.3236297821012102,0.5295,16.8531891 +62.0,1.3290481474889593,0.525625,1.32219772373381,0.535,14.331144 +63.0,1.3383523911819009,0.523375,1.3244315875906025,0.531,15.9338209 +64.0,1.3261881691408421,0.52475,1.3241596952722798,0.5355,14.4321958 +65.0,1.3314473157528333,0.52575,1.323290018072758,0.534,16.0115732 +66.0,1.3342640798581729,0.523875,1.3222906004178772,0.536,14.3971749 +67.0,1.318069990031956,0.527375,1.3213082859971381,0.532,16.0045866 +68.0,1.320171850991,0.523375,1.3193062634330792,0.539,14.4096936 +69.0,1.32040753060354,0.52775,1.3190576438358175,0.536,15.978542 +70.0,1.3230322936637195,0.523875,1.3251188663297733,0.5315,14.3797398 +71.0,1.3244611489160294,0.52675,1.323866503310526,0.532,15.933473 +72.0,1.3192050760889664,0.529625,1.31863668913747,0.5375,14.3648268 +73.0,1.3214572972219094,0.525625,1.319369511104412,0.536,16.0130725 +74.0,1.3304650689032511,0.5205,1.321135326103876,0.5375,14.3691027 +75.0,1.324742654835387,0.521375,1.3202410408451828,0.534,15.978979 +76.0,1.3185606656341573,0.527625,1.3168221131248072,0.5385,14.4541098 +77.0,1.3127525376174825,0.52975,1.3189589743198078,0.532,16.0679238 +78.0,1.3214510321983362,0.52675,1.3154555274324895,0.5345,14.3882586 +79.0,1.3138102020454596,0.529,1.3173555308230183,0.536,16.0367658 +80.0,1.3160156963356038,0.522875,1.3179678807845718,0.5365,14.4267574 +81.0,1.3185894931850917,0.52675,1.3167544116005843,0.533,15.9544915 +82.0,1.3155511214607427,0.533625,1.3142872937877783,0.535,14.4621926 +83.0,1.3191591312523032,0.52675,1.3139279783295512,0.536,16.0198675 +84.0,1.3047383733486067,0.535125,1.3140554074649027,0.536,14.5224685 +85.0,1.2998807810293591,0.53925,1.3130442287198176,0.538,16.043861 +86.0,1.3048678372577696,0.536,1.3147052667201322,0.536,14.390018 +87.0,1.3156347708054161,0.523375,1.3137179075564476,0.535,15.9995276 +88.0,1.3078233375372548,0.527,1.31269936051695,0.5375,14.7599212 +89.0,1.301694427789555,0.534125,1.3130564091965442,0.535,16.076435 +90.0,1.307213498766632,0.52875,1.312260783377263,0.5325,14.4012776 +91.0,1.3223504815722316,0.5205,1.315197929625652,0.5345,16.0667042 +92.0,1.3121390053008224,0.53275,1.3124919606563745,0.5365,14.4533982 +93.0,1.3148184122871722,0.524625,1.311203033094174,0.5365,16.0702091 +94.0,1.3099455881211106,0.53375,1.3114774517235614,0.5375,14.513704 +95.0,1.3083614915540493,0.537375,1.3109332237160636,0.5375,16.1220703 +96.0,1.3127841293948619,0.528625,1.311932246429838,0.535,14.5003375 +97.0,1.30615867288354,0.530125,1.3096348769315331,0.5365,16.1178876 +98.0,1.301983678563513,0.52825,1.3110851848482254,0.538,14.5334463 +99.0,1.3075021120364343,0.533,1.3123567103595142,0.5365,16.028136 +100.0,1.3051529903938057,0.53425,1.3113587479868671,0.5365,14.5149701 +101.0,1.3024572853872496,0.53275,1.3105569316681898,0.5385,16.1332018 +102.0,1.3008109813519082,0.532,1.3101455864351546,0.5375,14.5657176 +103.0,1.3042768028249934,0.534,1.310465448697579,0.538,16.0753667 +104.0,1.3079622199290803,0.5305,1.3103760940648996,0.5385,14.5056954 +105.0,1.3142336712954228,0.53175,1.3101902095281655,0.5365,16.12271 +106.0,1.3040488430081085,0.5315,1.3103340759717863,0.537,14.5204028 +107.0,1.2993828995467607,0.536,1.3095603939991503,0.5385,16.1341865 +108.0,1.310235843448544,0.529,1.3091904795554128,0.538,14.5112841 +109.0,1.3079399158195157,0.53175,1.3105620002262224,0.539,16.1035164 +110.0,1.308903113318373,0.532875,1.3094641162925613,0.5365,14.5168897 +111.0,1.3033192566386995,0.53375,1.3104795043640327,0.5355,16.1450482 +112.0,1.2951055070115582,0.53325,1.309137470344777,0.5375,14.5270356 +113.0,1.3128955647252174,0.534,1.309990891187841,0.5375,16.1122688 +114.0,1.3021592435466052,0.539375,1.3100196319551212,0.538,14.5811335 +115.0,1.2973206779494846,0.539,1.3104281344138415,0.537,16.1094314 +116.0,1.308543129843251,0.528625,1.30930458919886,0.5375,14.4627417 +117.0,1.2991942470529403,0.5365,1.3085857059080888,0.5375,16.1090825 +118.0,1.2974294267193025,0.53275,1.3086480164427328,0.5385,14.5340735 +119.0,1.2933060365526183,0.539,1.3089961375123735,0.541,16.1258455 +120.0,1.310340502853172,0.527,1.308474706660275,0.5395,14.4783545 +121.0,1.2983906828092213,0.542875,1.3086250639738533,0.54,16.0524143 +122.0,1.2939351291021872,0.534,1.308440324228956,0.5395,14.4535 +123.0,1.2992417093989803,0.541875,1.3079537480569292,0.54,16.0264719 +124.0,1.3028391427293256,0.53875,1.30803101993412,0.54,14.4733958 +125.0,1.3048058914734078,0.53575,1.308175552624005,0.5395,16.1102956 +126.0,1.3132636670158506,0.529375,1.3082581947755898,0.5395,14.478416 +127.0,1.3000461195666042,0.536375,1.3076722796662075,0.539,16.1097683 +128.0,1.3080240859034113,0.5295,1.3079367699114441,0.5385,14.5393235 +129.0,1.2998889882289268,0.532375,1.3078430159961798,0.5385,16.1174312 +130.0,1.3044408971687862,0.537875,1.3074568056484965,0.539,14.485833 +131.0,1.3000980131813082,0.531625,1.307951354348347,0.537,16.0500766 +132.0,1.2944470477122374,0.5365,1.307494635320011,0.5385,14.4679617 +133.0,1.2982900974688767,0.5335,1.3073653260620877,0.539,16.0490205 +134.0,1.3071031687429646,0.533,1.3074821609033018,0.539,14.5065979 +135.0,1.2986052689698258,0.534625,1.3075836761219246,0.538,16.066862 +136.0,1.2895029802358513,0.53525,1.3073350204017655,0.5395,14.5415509 +137.0,1.3000299778369215,0.531875,1.3078150288686006,0.539,16.1089647 +138.0,1.2911167369073444,0.537,1.3076130956444139,0.5395,14.5078313 +139.0,1.29036220769725,0.538625,1.30745664033635,0.538,16.134817 +140.0,1.298080872631335,0.5345,1.3073407141230322,0.5365,14.4369267 +141.0,1.3025891068319724,0.5355,1.3070792055271505,0.538,16.1028676 +142.0,1.2946045135934998,0.533375,1.3069526080745955,0.539,14.5663422 +143.0,1.3032015927455312,0.53325,1.3069122280168874,0.5385,16.1128809 +144.0,1.2995359340671837,0.5415,1.3067171192769849,0.5385,14.4924564 +145.0,1.3023605426524023,0.53425,1.3068084984899109,0.5395,16.0955384 +146.0,1.30930319485174,0.536,1.3070832146909857,0.5395,14.4667475 +147.0,1.2996770951326868,0.5385,1.3071774507007867,0.539,16.1178473 +148.0,1.2967788143087216,0.535,1.307244866162839,0.5395,14.5053554 +149.0,1.3040574953036825,0.533625,1.307385435625991,0.5385,16.0416278 +150.0,1.3015946061192016,0.54475,1.307144346584109,0.5385,14.3857148 +151.0,1.30008500298661,0.533625,1.3070401943057945,0.539,16.0516319 +152.0,1.3060004570482606,0.5315,1.3069878428640846,0.538,14.5040651 +153.0,1.3039147393882513,0.53625,1.3070751575819681,0.538,16.0710873 +154.0,1.2924859620290725,0.539125,1.3071099345998627,0.538,14.4066711 +155.0,1.305181622210978,0.533125,1.3070866668531675,0.539,16.1578756 +156.0,1.3067503725773457,0.532625,1.3072734547354332,0.539,14.4561437 +157.0,1.2974722388735458,0.53975,1.3070760574570204,0.538,16.0989079 +158.0,1.3000584607790142,0.538375,1.3071830952087906,0.539,14.454967 +159.0,1.3081136534291358,0.535375,1.3073356682555537,0.537,16.0018707 +160.0,1.3004744555150258,0.5365,1.3075186996179962,0.537,14.4905311 +161.0,1.296476702807453,0.537625,1.307368689732197,0.5375,16.1077928 +162.0,1.288406756203036,0.532625,1.3072671787650494,0.5375,14.480456 +163.0,1.2946820262839696,0.544625,1.3072713570618757,0.538,16.1547589 +164.0,1.2959582712618745,0.53575,1.3072286637496255,0.5375,14.4900589 +165.0,1.2977611865811967,0.53625,1.3071565196116044,0.537,16.0829189 +166.0,1.3025448788009075,0.53575,1.3071775760998985,0.5365,14.4592435 +167.0,1.2959205015102966,0.5375,1.3070067177984517,0.538,16.040717 +168.0,1.2980978607835076,0.5375,1.3069131168819554,0.538,14.4669075 +169.0,1.316576715578295,0.5295,1.3068651614368016,0.538,16.0375268 +170.0,1.3022452358627001,0.5375,1.3069451965283987,0.538,14.4853237 +171.0,1.3067203198134225,0.53025,1.3068472905654809,0.538,16.0196374 +172.0,1.305151142210352,0.5335,1.3067921163070488,0.5385,14.5103778 +173.0,1.2989866165691726,0.537,1.306790403551562,0.538,16.0988433 +174.0,1.298991254023191,0.534875,1.3067496217039258,0.539,14.4617208 +175.0,1.2937396861643513,0.538,1.306611274851869,0.5385,16.0309367 +176.0,1.2957440792415318,0.534125,1.3066816926504232,0.538,14.4353061 +177.0,1.309066530764555,0.53475,1.3067317608546547,0.5385,16.0850414 +178.0,1.3009487254270833,0.540875,1.3068657712647895,0.538,14.4822867 +179.0,1.295012935326623,0.535625,1.306792522837967,0.538,16.0867644 +180.0,1.3037339178736633,0.53175,1.306696087482113,0.5385,14.491736 +181.0,1.2943573305000133,0.533375,1.306673840375351,0.538,16.0164477 +182.0,1.2936152920134325,0.53875,1.3066134419092958,0.538,14.4022612 +183.0,1.299497084220198,0.541625,1.3066728376864818,0.538,16.0295703 +184.0,1.297338283400904,0.538375,1.3066281454172877,0.5385,14.4810659 +185.0,1.2967509932832386,0.539,1.3066241777176386,0.538,16.0484665 +186.0,1.294193241217018,0.536125,1.306547977835477,0.538,14.4407416 +187.0,1.2991440110083268,0.537125,1.3064796629738546,0.538,16.0741345 +188.0,1.2896026478083573,0.539625,1.3064580423010745,0.5375,14.4357631 +189.0,1.290681102689735,0.531,1.3064867313617383,0.538,16.0705034 +190.0,1.2949458246371983,0.534875,1.3064980174098149,0.538,14.4747998 +191.0,1.291540949525548,0.540125,1.3064895945898964,0.5375,16.0863125 +192.0,1.3087596771411594,0.535,1.3065278044087034,0.5375,14.4270826 +193.0,1.3013773823416332,0.538,1.30655243230613,0.5375,16.0726028 +194.0,1.308975174937881,0.530625,1.3066240567819654,0.5375,14.4525801 +195.0,1.290120110540905,0.531375,1.3066275362979325,0.5375,16.1019442 +196.0,1.3034732654407712,0.529625,1.3066082069241098,0.538,14.4948722 +197.0,1.298069268643873,0.52975,1.3065282004296128,0.538,16.0948817 +198.0,1.2986606845041118,0.538625,1.3064902892378498,0.538,14.4480757 +199.0,1.2997682128209003,0.534,1.3064696007392274,0.5375,16.106717 +200.0,1.2974830155945531,0.539125,1.3065108650287482,0.5375,14.4931709 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd index 85c0deb5c72..6c7901fec6a 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_cifar.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 90, - "cols": 5, - "nnz": 450, + "rows": 200, + "cols": 6, + "nnz": 1200, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-17 14:31:06 MEZ" + "created": "2026-02-15 13:44:27 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv new file mode 100644 index 00000000000..f49b7fbd598 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv @@ -0,0 +1,200 @@ +1.0,2.376452688553843,0.155625,2.1556098635877037,0.2105,13.4727061 +2.0,2.134208736195225,0.208875,2.105177277710116,0.229,11.6442175 +3.0,2.032875826117593,0.24475,1.8898348708091248,0.3315,11.6353514 +4.0,1.9427902968640334,0.292375,1.8092403314441945,0.359,11.9605232 +5.0,1.856056191458096,0.324625,1.7704868669153397,0.3715,11.611253 +6.0,1.8048423057854228,0.353375,1.652339981973803,0.4015,11.2635212 +7.0,1.7613481474084223,0.35875,1.6715358315985873,0.408,11.273542 +8.0,1.7228280048356475,0.371125,1.6169342452755069,0.42,11.4165315 +9.0,1.7042061744805554,0.388,1.5880115035153421,0.426,12.3753668 +10.0,1.680296495493985,0.396125,1.5782422838320826,0.432,11.0482037 +11.0,1.660500844945354,0.406125,1.5820302969326532,0.421,11.1458407 +12.0,1.6479928843932672,0.40575,1.5645482394247503,0.431,11.1351257 +13.0,1.6233078717461356,0.409875,1.5367497116087747,0.442,10.6328212 +14.0,1.597831925202846,0.4195,1.5335680584488711,0.438,11.8666012 +15.0,1.5934214818483465,0.4285,1.529172479851137,0.437,11.5239298 +16.0,1.5839027109797763,0.4355,1.5568644147771329,0.446,12.049156 +17.0,1.5774055638466864,0.43475,1.5020714556222852,0.4505,10.987726 +18.0,1.5515425441190742,0.439,1.48392225157081,0.4685,10.3778375 +19.0,1.5416895791337815,0.444625,1.4792698340722745,0.4605,10.2841794 +20.0,1.5246316885980944,0.448625,1.4713636544811939,0.469,10.2279888 +21.0,1.477323835998623,0.46575,1.4426045184144858,0.4755,10.3257379 +22.0,1.4854151915336127,0.46225,1.4425894368257444,0.479,10.4624141 +23.0,1.4898645139538458,0.462875,1.4500906797364026,0.476,10.7450699 +24.0,1.4711832451689022,0.473125,1.4419756348619515,0.4775,10.9177052 +25.0,1.4701707509959818,0.470375,1.4331732642784207,0.485,10.2696629 +26.0,1.4645130350349913,0.473375,1.4242761343785173,0.489,10.4850996 +27.0,1.4467853446065027,0.478625,1.4190420704491633,0.4895,10.5481403 +28.0,1.4534114658439001,0.4815,1.4248702929585566,0.4895,10.324821 +29.0,1.4364611534539131,0.487,1.4123989189549304,0.488,10.4669579 +30.0,1.446309763375203,0.481875,1.4137452926107268,0.489,10.5837967 +31.0,1.4416450673203447,0.48275,1.4107818299135848,0.4935,10.2361735 +32.0,1.431987844290674,0.483625,1.4049492177597962,0.498,10.3169358 +33.0,1.4255560789782302,0.485125,1.4056418610839123,0.492,10.362491 +34.0,1.4298778306450786,0.48575,1.411402290408623,0.4975,10.3743304 +35.0,1.4072003121356107,0.498625,1.3938863035583569,0.4875,10.5676677 +36.0,1.4170384008599304,0.49175,1.3979400645447513,0.504,10.5253142 +37.0,1.4274224064539414,0.487375,1.4002178731652006,0.494,10.3967215 +38.0,1.4057407637754045,0.494875,1.3877039802067248,0.507,10.4744136 +39.0,1.3925094494918993,0.506125,1.3887825075492275,0.5005,10.5590477 +40.0,1.4035896871987326,0.492625,1.3832010003109698,0.502,10.4390597 +41.0,1.3824016424340198,0.5095,1.3765742775636467,0.505,10.8119083 +42.0,1.3802588406013947,0.5035,1.3782971197139013,0.5105,10.5043987 +43.0,1.3790158212449106,0.511375,1.3750078110329473,0.506,10.2630323 +44.0,1.372724890044871,0.513625,1.371686344085819,0.507,10.2913791 +45.0,1.3841243186840493,0.503125,1.3715707288847834,0.5085,10.483649 +46.0,1.3706965552017922,0.5105,1.372669460034513,0.509,10.5976056 +47.0,1.3609398421904124,0.515,1.3668745076784088,0.5155,10.5246735 +48.0,1.3684465174801346,0.510125,1.3672922703918313,0.5075,10.3461516 +49.0,1.3745615890314176,0.507875,1.3632436799025003,0.5155,10.4318952 +50.0,1.3661560620511515,0.512375,1.3656571720130959,0.5155,10.4115044 +51.0,1.3730880719325358,0.500625,1.364539772414789,0.5155,10.6619087 +52.0,1.3630051676931783,0.5035,1.3662467102323088,0.513,10.5240575 +53.0,1.3617572447747819,0.509,1.363957403159507,0.509,10.5144398 +54.0,1.362037085994588,0.5135,1.3589070650176729,0.519,10.3395114 +55.0,1.3498976297282788,0.51725,1.3599980371372662,0.515,10.5288365 +56.0,1.3516348408141448,0.5125,1.355870372282719,0.512,10.6001736 +57.0,1.3385261825204842,0.526625,1.3617299798150746,0.5095,10.5844011 +58.0,1.3437628067712626,0.521,1.3590337192716369,0.5195,11.1534123 +59.0,1.3474072046438994,0.518125,1.3566891621916062,0.5195,10.7746817 +60.0,1.3533470111880175,0.520375,1.357455364840804,0.513,10.6602748 +61.0,1.3545285545641799,0.518125,1.3505701147484508,0.5155,10.7175487 +62.0,1.341432704073239,0.522375,1.3493006314294527,0.513,10.6496625 +63.0,1.3379378898898793,0.522125,1.3484420742841998,0.517,10.6631501 +64.0,1.333203127708441,0.5235,1.3468148155245283,0.5165,10.6852211 +65.0,1.3377331720004932,0.523875,1.3493423460639042,0.5145,10.7314618 +66.0,1.3255920859867893,0.523375,1.3433875051505015,0.517,10.7242186 +67.0,1.3300511309513712,0.517875,1.3453225103876567,0.5125,10.4978694 +68.0,1.3358010310099961,0.52025,1.3453057215357858,0.5135,10.5691234 +69.0,1.3197357788742194,0.528875,1.3421916039075252,0.518,10.6167641 +70.0,1.3203685028518983,0.527625,1.3424124836025293,0.5165,10.6657817 +71.0,1.3307989670111722,0.5275,1.345739104299278,0.518,11.026438 +72.0,1.3322976095143777,0.52,1.3429779607884242,0.5155,10.644709 +73.0,1.3296559598508593,0.523625,1.3444630944044174,0.514,10.5105399 +74.0,1.3280188841512812,0.527625,1.34344221844315,0.516,10.6776355 +75.0,1.3307803581975912,0.523875,1.3410526207036906,0.516,10.7868019 +76.0,1.3244855340540875,0.527875,1.3438338429550298,0.523,10.6635871 +77.0,1.3305599130402717,0.525875,1.340556653020514,0.5175,10.5409209 +78.0,1.3235894138911644,0.525,1.3403516212495012,0.517,10.9057766 +79.0,1.3268468410443934,0.526875,1.3429226916224026,0.5165,10.7036664 +80.0,1.3149174365790721,0.535375,1.340394598387566,0.5175,10.6037911 +81.0,1.3181477089150777,0.52775,1.3403880188605957,0.5175,10.4741209 +82.0,1.319323285137216,0.535625,1.3411448601353022,0.5155,10.5985708 +83.0,1.3234409121785415,0.529875,1.3394094497030262,0.519,10.5946699 +84.0,1.3190738707359697,0.526625,1.3371803862718643,0.52,10.8042916 +85.0,1.321299521554079,0.52725,1.3373945919902914,0.5185,10.6818265 +86.0,1.3211808042865008,0.528375,1.3392930490633377,0.516,10.6868787 +87.0,1.3131869516551848,0.528,1.3373461343013249,0.5185,10.7746962 +88.0,1.3179359121893317,0.528125,1.3387782429660295,0.5215,10.7270818 +89.0,1.311048859808263,0.530375,1.3372642894972429,0.5205,10.7821707 +90.0,1.320080416323942,0.522125,1.3378657982403377,0.5225,10.9263664 +91.0,1.3249960621263235,0.528875,1.3370766774297338,0.516,10.6828557 +92.0,1.3251215286274038,0.525625,1.3377240399171442,0.5185,10.7313156 +93.0,1.3130120002893377,0.538625,1.3368735438414714,0.522,10.8578005 +94.0,1.310323171879521,0.531375,1.3350314192775283,0.5205,10.824233 +95.0,1.3190330018819567,0.526375,1.3354470971279013,0.52,10.6135388 +96.0,1.3151276322150627,0.530125,1.3359890385035038,0.519,10.6340359 +97.0,1.327150547563038,0.526375,1.336307085224182,0.5205,10.7083007 +98.0,1.3205413336573768,0.532875,1.3367641068052514,0.519,10.8156078 +99.0,1.3273791113771862,0.526,1.3379149870539122,0.5155,10.6449135 +100.0,1.3157120352111094,0.526375,1.3373280187315546,0.519,10.6634119 +101.0,1.3215741494524897,0.528,1.3357480757228959,0.52,10.6139632 +102.0,1.3072876094773205,0.535375,1.3354256884208593,0.5185,10.7655376 +103.0,1.3143488835661843,0.530375,1.3359342968082215,0.5205,10.8298254 +104.0,1.3152350251493992,0.529875,1.3356323643178725,0.5195,10.6298545 +105.0,1.3135973540956014,0.529875,1.3351536118568943,0.5205,10.6211939 +106.0,1.3154384582627792,0.530125,1.334427994455683,0.521,10.8536119 +107.0,1.3210255849454833,0.53075,1.334104218268996,0.5195,10.4814439 +108.0,1.3143402826039234,0.53025,1.3339928720989493,0.5205,10.7829616 +109.0,1.3157600089093793,0.528125,1.333472644524079,0.5215,10.5573774 +110.0,1.3025727092755095,0.53175,1.3345114392841104,0.5195,10.72651 +111.0,1.3036905203297846,0.543,1.3339360539982645,0.518,10.6090085 +112.0,1.3088988457929116,0.5365,1.3333981659049081,0.519,10.4973118 +113.0,1.3119720608457524,0.538,1.3335625353171354,0.52,10.7430242 +114.0,1.3043970085443117,0.531375,1.334056238140732,0.5195,10.4915247 +115.0,1.3017294163536326,0.538,1.3335915368020226,0.5205,10.4581882 +116.0,1.3222256067573879,0.53,1.3335446939318478,0.5195,10.4450988 +117.0,1.3093708948799567,0.53375,1.3334985225509113,0.5215,10.9147872 +118.0,1.3149674150150457,0.538375,1.3337427532687283,0.515,11.7424108 +119.0,1.30783044318407,0.534625,1.3331213359167602,0.5175,11.4566723 +120.0,1.3199277519272925,0.5365,1.3332143538891488,0.516,11.5086804 +121.0,1.3189351313090911,0.532875,1.3327645685240328,0.5175,11.1735311 +122.0,1.313889241231299,0.5335,1.333114587192607,0.518,11.1633045 +123.0,1.3136036409375527,0.534125,1.333415303606058,0.5185,10.8558689 +124.0,1.306055392924934,0.528125,1.333179197683708,0.5205,11.1664468 +125.0,1.313987180190348,0.528375,1.3328025895560218,0.518,10.6900298 +126.0,1.2997369106635803,0.534875,1.3325513330086356,0.52,10.8832755 +127.0,1.3043269154925206,0.542375,1.3323150254162253,0.5185,10.593046 +128.0,1.2990150090042205,0.538875,1.3319693238245163,0.519,11.3041431 +129.0,1.300840925692584,0.53425,1.332129167814571,0.5195,11.3470727 +130.0,1.3113424727787724,0.534875,1.3325362795103008,0.5195,11.4372106 +131.0,1.311164279965689,0.5365,1.3322504298740185,0.519,10.9763431 +132.0,1.3179274596479782,0.531875,1.33200920286141,0.52,11.0927249 +133.0,1.3065535362187486,0.5315,1.3320364020578384,0.5185,11.6468794 +134.0,1.3216960524997605,0.53075,1.332104347727303,0.5185,11.1033941 +135.0,1.2999653635760098,0.53725,1.3320147095564665,0.5195,11.2386502 +136.0,1.3009622714108506,0.53775,1.3320064297783212,0.52,10.8109444 +137.0,1.3020866795673038,0.537,1.3325281269574432,0.52,10.9768592 +138.0,1.2960008817160396,0.542,1.3321393427773633,0.521,11.7773318 +139.0,1.3070319913926276,0.529625,1.3320013928376542,0.522,11.2787995 +140.0,1.313324928250842,0.531125,1.332319248064813,0.52,10.8658981 +141.0,1.3113137255699068,0.5385,1.3322657782060892,0.5205,10.9917196 +142.0,1.2978898540401582,0.533125,1.3322607886380244,0.5195,10.9147804 +143.0,1.303700923738788,0.53675,1.3319811775751962,0.5195,10.8488982 +144.0,1.3080841313267175,0.535375,1.3320822880540282,0.5185,10.9062678 +145.0,1.3061468501882212,0.53525,1.3322048662060668,0.519,10.879839 +146.0,1.3068946425234962,0.5305,1.332217831301229,0.519,10.8861027 +147.0,1.301245090797761,0.539625,1.3320295634714883,0.5215,10.8577545 +148.0,1.3065219890435873,0.53575,1.332113688470487,0.5205,10.7260931 +149.0,1.3274100618369626,0.52925,1.3322692606852753,0.519,10.8736537 +150.0,1.3039974563257908,0.536375,1.3323550212708823,0.519,10.617175 +151.0,1.3043788657553899,0.534125,1.3323710546100196,0.52,10.9235931 +152.0,1.3032293971037556,0.534625,1.332047918810055,0.5175,10.6729111 +153.0,1.3014055210981292,0.54025,1.3321112066303324,0.52,10.676352 +154.0,1.3044298180448326,0.52725,1.3319157753576334,0.52,10.8311417 +155.0,1.3052974145137852,0.53225,1.3318265231488589,0.519,10.7265072 +156.0,1.294456826081973,0.538375,1.3320119341834187,0.519,10.5108274 +157.0,1.3055104415573224,0.5345,1.3322823839439082,0.5195,10.8981915 +158.0,1.3072999859432408,0.530875,1.3323840751470155,0.519,10.8914372 +159.0,1.3054355366673218,0.53575,1.332169356022742,0.518,10.7647776 +160.0,1.3102607607473018,0.534375,1.3322046300303008,0.519,10.8155812 +161.0,1.2996984915003205,0.529875,1.3321690463662035,0.519,10.8601054 +162.0,1.3071410221152815,0.537375,1.33216086525606,0.5195,10.8857956 +163.0,1.31125648643993,0.533,1.3322839485300493,0.5195,10.6960386 +164.0,1.3042658346167568,0.528125,1.3323380572495518,0.519,10.5043007 +165.0,1.3179450261006782,0.531125,1.3324363596005007,0.5185,10.7516799 +166.0,1.3094263423054922,0.531875,1.33248690377941,0.5195,10.7262958 +167.0,1.297266543693268,0.5335,1.3323895667281422,0.519,10.761302 +168.0,1.3151196165543917,0.531375,1.3323485730865656,0.5195,10.6862287 +169.0,1.309759919766804,0.527125,1.3324110180090327,0.5205,10.6801756 +170.0,1.3087049937365367,0.538,1.3322877029001738,0.52,10.7393492 +171.0,1.30327284892245,0.538375,1.332212064881177,0.5195,10.910512 +172.0,1.3082913965540677,0.538,1.3322312483131238,0.5185,10.9118247 +173.0,1.3011244178936303,0.536375,1.3321964417430978,0.519,10.7598359 +174.0,1.3072523127047047,0.52925,1.3320566621653582,0.5185,10.9707458 +175.0,1.3138588411240155,0.529125,1.3319687432258882,0.519,10.8912822 +176.0,1.3106422656372365,0.527125,1.3319979940470699,0.5185,10.6990858 +177.0,1.3066116025402963,0.529125,1.3319158310408483,0.519,10.7381856 +178.0,1.3098564706155673,0.533125,1.331847315213804,0.52,10.9513215 +179.0,1.306568765983263,0.5395,1.3318428764952057,0.5185,10.7053363 +180.0,1.2978578542689068,0.529875,1.3318802142109363,0.5195,10.8236495 +181.0,1.3104137239261946,0.532125,1.3318717953137231,0.5195,10.9077964 +182.0,1.3019511369585126,0.536125,1.3319202281095626,0.519,10.790271 +183.0,1.3026262283933931,0.53875,1.3319301787315239,0.519,10.764685 +184.0,1.3074215948491108,0.535125,1.3318929370446293,0.519,10.4456473 +185.0,1.3140615637521111,0.526375,1.3319417561631457,0.519,10.5469338 +186.0,1.303042511503874,0.535125,1.3319319551137805,0.519,10.4863691 +187.0,1.3023667289610636,0.53725,1.3319634830296754,0.5195,10.4730195 +188.0,1.313656540448708,0.5265,1.3319891322380029,0.519,10.4308219 +189.0,1.3045596261148191,0.5365,1.331928994460482,0.5185,10.7788625 +190.0,1.3133207158887825,0.53375,1.331957463512298,0.519,10.8276871 +191.0,1.3019403606497926,0.5405,1.3319362956789553,0.519,10.7438118 +192.0,1.3130384838114986,0.529375,1.3319535823904183,0.5195,11.608329 +193.0,1.3020558117475203,0.53325,1.3319106796555282,0.5205,10.9393292 +194.0,1.2948945544121986,0.534125,1.3319020806394841,0.5195,11.0815123 +195.0,1.3016977558412837,0.5385,1.3318488280353298,0.519,10.9919619 +196.0,1.309662422430833,0.526625,1.3318498862662658,0.519,10.9792706 +197.0,1.2986204486021442,0.534,1.3318447665439828,0.519,10.9207863 +198.0,1.3066933440609287,0.538125,1.3318181416738772,0.5195,10.8058765 +199.0,1.3057251708289193,0.5355,1.331810294677977,0.5205,10.6486611 +200.0,1.293281533921023,0.542875,1.3317618162361946,0.521,11.1699965 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv.mtd new file mode 100644 index 00000000000..632e778e01b --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 200, + "cols": 6, + "nnz": 1200, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-16 09:29:20 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv index ded8beac83a..30e1296eb54 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv @@ -1,60 +1,30 @@ -1.0,1.529923114957812,0.615625,0.4163508024364405,0.873 -2.0,0.25060122984207545,0.927,0.22952393475133331,0.916 -3.0,0.1548000660061219,0.95425,0.16200895599016565,0.94 -4.0,0.11335569472656531,0.964625,0.13560831935242834,0.955 -5.0,0.09042976548413022,0.971625,0.12328820920087886,0.963 -6.0,0.07636142457008835,0.976625,0.11456082728594813,0.968 -7.0,0.06691350664721099,0.979625,0.109108661140788,0.969 -8.0,0.05926908260776385,0.9825,0.10503831758586746,0.971 -9.0,0.053242110795777134,0.98375,0.1017104393824572,0.971 -10.0,0.048538005602347,0.985125,0.09997651189079403,0.971 -11.0,0.04440544159683867,0.98575,0.09838001759437191,0.971 -12.0,0.040599887346924705,0.98725,0.09778095571436933,0.972 -13.0,0.03734205810908477,0.98825,0.09713194222471225,0.974 -14.0,0.03431520433747054,0.98875,0.09692151531360448,0.974 -15.0,0.0316160967130946,0.98975,0.09732424066243325,0.976 -16.0,0.029327893562393736,0.990125,0.09678624020161315,0.974 -17.0,0.02731709621117975,0.990875,0.09601975312839364,0.975 -18.0,0.025400220810051326,0.99125,0.09493154669329465,0.975 -19.0,0.023849761916733277,0.992375,0.09431458155105914,0.975 -20.0,0.022359802493171675,0.992875,0.09444793298522774,0.975 -21.0,0.02104063762906861,0.993375,0.0940675280289127,0.976 -22.0,0.019815579920937687,0.99375,0.09397031760585552,0.976 -23.0,0.018703144105318287,0.994375,0.09368188701034882,0.976 -24.0,0.01755765508691582,0.995,0.09316670018928445,0.976 -25.0,0.016504243053257428,0.995375,0.09312778676414861,0.976 -26.0,0.015547213662833325,0.996,0.09313668530584004,0.976 -27.0,0.01464135909303369,0.99625,0.09262190180664727,0.975 -28.0,0.013849651145544097,0.996375,0.09243578056237582,0.975 -29.0,0.013045399463127353,0.99675,0.09173679387095408,0.974 -30.0,0.012308034427099244,0.996875,0.09119741075842759,0.974 -31.0,0.01160452532703958,0.997375,0.09061579657563777,0.973 -32.0,0.010950352937654438,0.997625,0.08979792576235757,0.973 -33.0,0.010404225456806958,0.997625,0.08958915530484804,0.973 -34.0,0.00993531874403182,0.99775,0.08940260293029532,0.973 -35.0,0.009447877428045336,0.99775,0.08878696599496204,0.973 -36.0,0.008965917585343961,0.997875,0.08823171309031336,0.974 -37.0,0.008521583132989957,0.99825,0.08802536709390377,0.973 -38.0,0.008150154841642552,0.998375,0.08802838909372968,0.973 -39.0,0.007784229895554334,0.9985,0.08738821101087546,0.973 -40.0,0.00743699102601898,0.9985,0.08739398647224264,0.973 -41.0,0.007119215903327162,0.998625,0.0871615661765243,0.973 -42.0,0.006813014561591904,0.998625,0.08662144756724738,0.974 -43.0,0.006518437802804398,0.99875,0.08661521760369693,0.975 -44.0,0.006218632411764271,0.999,0.08645243665206297,0.973 -45.0,0.005935930756546657,0.99925,0.08618233389590946,0.973 -46.0,0.005689173929135219,0.99925,0.08599448297307472,0.973 -47.0,0.0054517521228319875,0.99925,0.08606674894466114,0.973 -48.0,0.005212159802743296,0.99925,0.08593790211989807,0.973 -49.0,0.0049843212661704744,0.99925,0.08585662017134629,0.973 -50.0,0.00477715303486137,0.999375,0.08578410203580478,0.973 -51.0,0.0045963000060570336,0.999375,0.08605111424505173,0.973 -52.0,0.004398328314693466,0.999375,0.0858784041018631,0.974 -53.0,0.004202551847212241,0.9995,0.08593016807062147,0.974 -54.0,0.004025727697865245,0.9995,0.08563104128541399,0.974 -55.0,0.003846586555499973,0.999625,0.08534700218134265,0.975 -56.0,0.0036902008756122787,0.99975,0.08535591916811447,0.975 -57.0,0.0035283367720043307,0.999875,0.08520610388234004,0.975 -58.0,0.0033746694849511975,1.0,0.0851791314692245,0.976 -59.0,0.0032474977805542946,1.0,0.08501889027122635,0.976 -60.0,0.00312400676742454,1.0,0.08481266555259098,0.977 +1.0,1.2295765558414584,0.63825,0.40444866759503006,0.861,4.8348893 +2.0,0.26477554826363486,0.92175,0.26512101356030243,0.907,4.7804772 +3.0,0.1716384239702753,0.946625,0.1861527421595512,0.934,4.8846158 +4.0,0.13665724205968022,0.95825,0.15402649289072426,0.951,5.0159977 +5.0,0.11528498362904317,0.964625,0.13521963126212833,0.958,5.0522985 +6.0,0.10038067782344141,0.968875,0.1241082393421393,0.961,5.1249097 +7.0,0.08949871150603847,0.973,0.11534541975012162,0.963,5.2391965 +8.0,0.08047304771564,0.975875,0.1085638963229429,0.964,5.2079512 +9.0,0.07326581368947654,0.977375,0.1051219942722409,0.965,5.2237037 +10.0,0.06728259280373594,0.978375,0.10254733037683395,0.964,5.3218238 +11.0,0.06240274275974201,0.97975,0.10023146534197559,0.964,5.2897935 +12.0,0.05796746187582422,0.98125,0.09870775251419572,0.963,5.348292 +13.0,0.05362432700694249,0.982625,0.0976798211552113,0.964,5.4505141 +14.0,0.05031136069768907,0.983375,0.09599775800142536,0.965,5.3998741 +15.0,0.04736434754454498,0.9845,0.09561712478463401,0.965,5.4361032 +16.0,0.04433044920393202,0.985875,0.09517098972122923,0.964,5.5041032 +17.0,0.041435830650165074,0.986875,0.09454187141764388,0.965,5.4937658 +18.0,0.03898370691129355,0.98775,0.09440902006927702,0.964,5.576687 +19.0,0.03667472465419484,0.988375,0.09391787605699703,0.966,5.574709 +20.0,0.034633877224029566,0.989625,0.0929717653801862,0.966,5.6854783 +21.0,0.03275477720188584,0.9895,0.09293803088631118,0.966,5.6193843 +22.0,0.03102670424273144,0.991,0.09201967551518615,0.968,5.7005384 +23.0,0.029217136634823084,0.992125,0.09054231433213239,0.969,5.6793739 +24.0,0.02761085006294365,0.9925,0.08884571423403902,0.972,5.7013257 +25.0,0.02596455143980972,0.993,0.08824125932032173,0.973,5.7015987 +26.0,0.024384720182285775,0.993125,0.08671164308163506,0.974,5.7730918 +27.0,0.023003239637947995,0.994,0.08395146837679776,0.975,5.7459036 +28.0,0.021476007350274925,0.994375,0.08267510745699846,0.975,5.7748666 +29.0,0.020249484263020576,0.994625,0.08064123009465232,0.976,5.7539412 +30.0,0.01907369497589891,0.994875,0.07907412263084829,0.977,5.8177862 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd index e25dd89e1b6..c0f572059d5 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_diagonal_mnist.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 60, - "cols": 5, - "nnz": 300, + "rows": 30, + "cols": 6, + "nnz": 180, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-17 12:04:45 MEZ" + "created": "2026-02-16 08:16:33 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv index d0762291631..ba9f53b3579 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv @@ -1,90 +1,200 @@ -1.0,2.303354277121383,0.09927237410669769,2.3026645264806,0.088 -2.0,2.3024429019304438,0.09835829732424797,2.302395347533886,0.0912 -3.0,2.3022537470495514,0.09710144174837959,2.3022451434900346,0.092 -4.0,2.3020886355946986,0.10289492271896293,2.302096100276622,0.1392 -5.0,2.3019041482290583,0.12017668688715306,2.3019092225507234,0.158 -6.0,2.301688531255859,0.13920090992188797,2.301681104703284,0.145 -7.0,2.3014280018530657,0.14300004154894466,2.301399021947866,0.1332 -8.0,2.301109485417331,0.14231448396210736,2.301052050694326,0.1334 -9.0,2.3007171148037786,0.14319999584510554,2.300619124932079,0.1382 -10.0,2.3002324038562887,0.1473133413661293,2.3000753268846386,0.1498 -11.0,2.2996250406346364,0.15494951803224197,2.299390727424242,0.1668 -12.0,2.298875319802741,0.16842747631710153,2.298581855353828,0.1826 -13.0,2.2979581473242936,0.18157667857736415,2.2975821039931352,0.1988 -14.0,2.296838431406206,0.19601130131294664,2.2963575161816574,0.2086 -15.0,2.295479784689714,0.2057093443576533,2.2948736290852683,0.2054 -16.0,2.2938451276224763,0.21202218713644672,2.2931041844251396,0.2144 -17.0,2.2919033381267577,0.21262205002492934,2.291004362607398,0.215 -18.0,2.2896238508484257,0.21265061492438092,2.288558037422181,0.2122 -19.0,2.286979065939002,0.21156514874522186,2.285732886786278,0.2112 -20.0,2.2839381179310227,0.21030829316935348,2.2824818251091212,0.2096 -21.0,2.2804795042279915,0.20924204337709823,2.2788294933816533,0.2084 -22.0,2.27661619286966,0.2084422261924547,2.27476184874041,0.2082 -23.0,2.27233921479588,0.20778990776134285,2.270293209378558,0.2086 -24.0,2.267662648526721,0.20636166278876517,2.2654318172890657,0.2086 -25.0,2.2626192756606813,0.207332869370118,2.260219881002514,0.2076 -26.0,2.2572590182860295,0.20756138856573042,2.2547077733439878,0.2098 -27.0,2.2516373187233776,0.2081326865547615,2.2489572231627677,0.2108 -28.0,2.245814456526489,0.20861828984543793,2.2430298475130375,0.212 -29.0,2.239854898346882,0.20981801562240318,2.23699057143831,0.215 -30.0,2.2338232484515137,0.21070352750540136,2.2308996938500947,0.216 -31.0,2.227779156047962,0.21227459697523682,2.2248143943377916,0.2164 -32.0,2.221777624187474,0.21447409423300648,2.2187839689159294,0.2168 -33.0,2.215869242739315,0.21642118165198604,2.212859492208603,0.219 -34.0,2.2100970410566547,0.21776373192620907,2.207076999483368,0.221 -35.0,2.2044948909552398,0.2199632291839787,2.201472196746826,0.222 -36.0,2.199092194103585,0.2212818888150241,2.1960714225106948,0.2244 -37.0,2.1939100113217833,0.22248161459198937,2.190890716689774,0.2252 -38.0,2.18896049922426,0.22430976815688883,2.185943191743232,0.2272 -39.0,2.184248558275656,0.22576657802891809,2.181228442466861,0.2278 -40.0,2.1797760513002586,0.22645213561575536,2.1767469219366973,0.2296 -41.0,2.1755397102667793,0.22762329649326907,2.1724977070890747,0.23 -42.0,2.1715336259991895,0.22870876267242812,2.1684688117747153,0.2324 -43.0,2.167749590700271,0.22910867126474987,2.164655458022773,0.233 -44.0,2.16417730105029,0.22999418314774805,2.1610486141209355,0.2332 -45.0,2.1608063211125814,0.23087969503074623,2.157636642520351,0.2326 -46.0,2.1576246790351115,0.2315652526175835,2.154407637714963,0.2342 -47.0,2.154617104468484,0.23242219960113014,2.1513416793938696,0.235 -48.0,2.1517599169780426,0.23252711068638857,2.1484218399487305,0.2358 -49.0,2.149066816222913,0.23321266827322584,2.145675349150036,0.2364 -50.0,2.1465245866633307,0.23366970666445072,2.1430793565890967,0.2378 -51.0,2.14412072766194,0.2344409589496427,2.140617606284286,0.239 -52.0,2.1418439754982397,0.2351836463353831,2.138280235881615,0.2398 -53.0,2.139685512113253,0.2356121198271564,2.13605717653691,0.2402 -54.0,2.137635492810324,0.23606915821838126,2.133940270945409,0.2408 -55.0,2.1356854486646553,0.23681184560412166,2.13192250053105,0.2404 -56.0,2.1338272048501303,0.23744027339205587,2.1299960314510455,0.242 -57.0,2.1320540810077424,0.23829722037560247,2.1281568242149995,0.2426 -58.0,2.1303613659253196,0.23858286937011802,2.126397779975742,0.2434 -59.0,2.1287450851810075,0.23869712896792422,2.124716807678159,0.2438 -60.0,2.1271998321934493,0.23912560245969755,2.1231064529381376,0.2442 -61.0,2.1257209692206427,0.23955407595147085,2.1215637509056395,0.2446 -62.0,2.1243035036437874,0.24003967924214728,2.1200814646668116,0.2452 -63.0,2.122943037851745,0.24066810703008146,2.118657105482082,0.2452 -64.0,2.121635884560944,0.24098232092404856,2.1172868604212627,0.2456 -65.0,2.120378615583713,0.2413822295163703,2.1159680410580592,0.2456 -66.0,2.1191679446234666,0.24166787851088584,2.1146974962627203,0.2464 -67.0,2.1180009668346935,0.24209635200265914,2.113471173048431,0.2468 -68.0,2.116874691196301,0.24218672095728766,2.1122863875401126,0.2474 -69.0,2.1157867655260487,0.24244380505235166,2.111141636758149,0.248 -70.0,2.1147352368261987,0.24270088914741564,2.1100332378539677,0.2482 -71.0,2.113718002806775,0.24307690709655977,2.1089602225780317,0.249 -72.0,2.112733184646633,0.2436767699850424,2.107919882704548,0.2494 -73.0,2.1117789394143482,0.24381959448230017,2.106913026103143,0.2488 -74.0,2.110853316989593,0.24421950307462192,2.1059350834636765,0.2498 -75.0,2.109955079089359,0.2445290427123151,2.104985952301633,0.2502 -76.0,2.109082620696774,0.24475756190792752,2.1040617864167523,0.251 -77.0,2.1082346435077755,0.24478612680737907,2.1031627040313423,0.2512 -78.0,2.1074095248882703,0.2450146460029915,2.1022870982946626,0.252 -79.0,2.1066062067836695,0.24510034070134618,2.1014329767324553,0.2518 -80.0,2.1058225393256165,0.24535742479641015,2.100595247228801,0.252 -81.0,2.1050574606919588,0.24572876848928035,2.099777698683264,0.2526 -82.0,2.1043111830414234,0.24621437177995678,2.0989845437353187,0.2532 -83.0,2.1035842211982745,0.24630006647831143,2.0982143244746703,0.254 -84.0,2.102876376387279,0.24672853997008476,2.0974656861364447,0.253 -85.0,2.10218567299019,0.24707131876350338,2.0967362386813306,0.2536 -86.0,2.1015113351260197,0.24721414326076116,2.096022887408198,0.2534 -87.0,2.100852094441317,0.24738553265747049,2.095325468476296,0.2536 -88.0,2.1002072680052266,0.24758548695363136,2.094641673375884,0.2538 -89.0,2.0995766034511516,0.2474997922552767,2.093973751766461,0.2544 -90.0,2.098959302207614,0.24758548695363136,2.0933196838290935,0.255 +1.0,2.3386543169511085,0.14075,2.301730941076264,0.102,13.2440651 +2.0,2.306853151644142,0.101,2.3055059732966208,0.094,7.0236308 +3.0,2.3029042375367226,0.100625,2.305089544740913,0.094,7.7217454 +4.0,2.302701369501017,0.100625,2.3048698641079537,0.094,7.4292454 +5.0,2.302605392210991,0.102125,2.3047226519023956,0.094,7.4588865 +6.0,2.3025403808407527,0.103,2.3046127102790064,0.094,7.440048 +7.0,2.302489931157983,0.103375,2.304525642874027,0.094,7.5205638 +8.0,2.302443250756605,0.104,2.304456188989574,0.094,7.4743448 +9.0,2.3024118126044075,0.1035,2.3043998604436697,0.094,7.5404491 +10.0,2.302382596182278,0.105,2.3043516836398195,0.094,7.5908392 +11.0,2.302357058853196,0.1055,2.304310472475333,0.094,7.6562841 +12.0,2.302328938804888,0.106375,2.3042523904340477,0.094,7.6313283 +13.0,2.3022267674540298,0.106625,2.303894057422064,0.094,8.15348 +14.0,2.29550364429792,0.11625,2.2418058113426813,0.1375,9.9689379 +15.0,2.229359245280139,0.16075,2.1798739550283135,0.197,12.0221511 +16.0,2.142310522382869,0.202125,2.1353315472476737,0.1985,11.9809247 +17.0,2.123674116460706,0.2015,2.1702792095485903,0.1825,13.029179 +18.0,2.093751733777236,0.2035,2.1175170779096515,0.1975,13.1877498 +19.0,2.084186559199693,0.205375,2.07455807738642,0.218,13.0843158 +20.0,2.0660901014816475,0.2115,2.0317926797671904,0.235,12.9275373 +21.0,2.035379634057953,0.224625,1.9881518961980784,0.246,12.6881631 +22.0,2.033972849762442,0.21975,2.041521747793386,0.22,13.4763186 +23.0,2.0264073632545907,0.2265,1.988690497044981,0.2495,13.5990838 +24.0,2.016342031253889,0.225625,2.003321523485824,0.2365,13.5518185 +25.0,2.0076863302594883,0.235,1.9925855431444786,0.2395,12.4195801 +26.0,1.9964585097411192,0.24375,2.0076889343010755,0.2715,14.2320017 +27.0,1.9901436791749099,0.262,1.9551231426033027,0.291,14.4629347 +28.0,1.9792639289794927,0.26075,1.9737146959790803,0.295,14.969736 +29.0,1.9601689618057947,0.266375,1.9430588801899498,0.2845,13.9720165 +30.0,1.9334580135889636,0.2835,1.8857903641875846,0.3135,14.7784468 +31.0,1.9031685148911583,0.298125,1.8472499120920443,0.3315,15.0640287 +32.0,1.8653301464645862,0.313,1.880057835111283,0.318,15.231095 +33.0,1.8523565124991404,0.316375,1.7725017171266015,0.376,13.5756948 +34.0,1.8342618088226075,0.318125,1.7800508210888095,0.3605,14.9955639 +35.0,1.8336460095065896,0.323125,1.787985185196742,0.3625,15.0110407 +36.0,1.820009047112316,0.329,1.756658638539667,0.3725,14.9862536 +37.0,1.8077631379347214,0.34175,1.7717681762030202,0.364,13.2135801 +38.0,1.788524631007008,0.34575,1.7619589229079804,0.375,15.0620062 +39.0,1.791772084842116,0.341,1.7433679877617634,0.3745,15.0021848 +40.0,1.7791772301611484,0.350125,1.7666157785818999,0.3615,14.9352203 +41.0,1.7746364279319866,0.3455,1.7037150476856802,0.3865,13.3385737 +42.0,1.7713700859606532,0.348875,1.690746168912098,0.387,15.09774 +43.0,1.7713734661248577,0.357875,1.6821605272530649,0.397,15.084371 +44.0,1.7626256890693348,0.35825,1.6837801895121312,0.3935,15.0211462 +45.0,1.7598394151926655,0.354625,1.6740982465868872,0.396,13.3357733 +46.0,1.7539472254744364,0.353125,1.6616898280133225,0.4025,15.2044539 +47.0,1.7538892372159576,0.356625,1.6674473152492373,0.4005,15.0903358 +48.0,1.7539859251331373,0.355125,1.6532536625339793,0.406,14.2919023 +49.0,1.7503969987338617,0.360625,1.6596524329149054,0.4015,14.4817916 +50.0,1.7381123098469948,0.363625,1.656266615649999,0.4025,15.18977 +51.0,1.7342730483969653,0.36325,1.649063863923143,0.4085,15.2124864 +52.0,1.726664700259063,0.363875,1.6494641351454633,0.4075,13.4775783 +53.0,1.7382815597254464,0.370375,1.6484416930601533,0.4085,15.2558147 +54.0,1.7409957010600818,0.36775,1.6400315212566994,0.405,15.1423003 +55.0,1.7380013725836077,0.364375,1.6584235844255384,0.4,15.1819791 +56.0,1.7252254751778295,0.3635,1.6408861354062723,0.412,13.4598759 +57.0,1.7270343866662905,0.362375,1.6341325378487244,0.408,15.2166579 +58.0,1.737977273737201,0.362375,1.6488951299150223,0.4075,15.2679731 +59.0,1.7271689163479547,0.37025,1.6263575944857598,0.413,13.6802149 +60.0,1.7254958413260688,0.3705,1.6315380083120286,0.41,15.2781708 +61.0,1.7181007013044454,0.371,1.6306000717210887,0.4095,15.2280359 +62.0,1.72465079487459,0.364,1.6293561227887043,0.4125,15.507153 +63.0,1.7132400396298113,0.36975,1.626621678750916,0.4135,13.5328102 +64.0,1.7052291677708586,0.3745,1.6210421736276142,0.418,15.3551155 +65.0,1.701867702308963,0.374875,1.6242193103132556,0.4115,15.2727139 +66.0,1.7135358624290584,0.37275,1.6146568323834238,0.419,14.0423824 +67.0,1.7132997176567093,0.371125,1.6172238887195471,0.4205,14.937948 +68.0,1.707521528490376,0.37475,1.6163527913678302,0.4125,15.3428662 +69.0,1.7156805062510991,0.3725,1.6154714246838635,0.4235,15.3497089 +70.0,1.7103624979123697,0.371875,1.6149679063226405,0.4185,13.430805 +71.0,1.7022264497260884,0.37825,1.6189648275144843,0.417,15.3303315 +72.0,1.704999712929571,0.377125,1.6076234744379985,0.425,15.1685186 +73.0,1.7122475371935677,0.37575,1.6128861077870231,0.422,14.68165 +74.0,1.7105726409252495,0.37675,1.6133535284180793,0.4185,14.3623111 +75.0,1.7120967718183928,0.3725,1.6157060009382196,0.415,15.3808897 +76.0,1.709805311172322,0.379,1.6140482812903327,0.417,15.2044063 +77.0,1.693896104078977,0.375125,1.6066355977229072,0.42,13.5269637 +78.0,1.7086734022994816,0.3715,1.6048202835547072,0.42,15.3090831 +79.0,1.7107539978546311,0.382,1.6079807462854248,0.418,15.2142229 +80.0,1.702670634036159,0.377875,1.61275913226515,0.4125,15.4079025 +81.0,1.7056573851314771,0.374125,1.6046630025493709,0.4235,13.5786103 +82.0,1.6975011461960405,0.3805,1.6009267801582263,0.423,15.4458054 +83.0,1.6928633472234556,0.382625,1.605161223911461,0.42,15.2581137 +84.0,1.6877870754748503,0.376875,1.598526014748025,0.4265,13.5425535 +85.0,1.6929905072113842,0.38,1.6032255349219975,0.4225,15.4009236 +86.0,1.6976864219800303,0.378125,1.5996898462747446,0.4275,15.4060508 +87.0,1.6995788055313272,0.38475,1.5997161127296189,0.4275,15.3564231 +88.0,1.6981842472525697,0.379875,1.5992687407447719,0.4275,13.5606273 +89.0,1.7032698390679553,0.373,1.603501228526589,0.4255,15.3838471 +90.0,1.7000317932542064,0.38075,1.5995587290290691,0.422,15.2790385 +91.0,1.6912479590477112,0.3845,1.6011868422735624,0.423,13.505124 +92.0,1.6983303612731993,0.378875,1.6002630969829654,0.423,15.3999124 +93.0,1.6789260073774237,0.388125,1.5963635859077472,0.4225,15.2177478 +94.0,1.6909163785079173,0.378625,1.589221689671725,0.4275,15.3725809 +95.0,1.6919853479142575,0.385375,1.5934452565755204,0.4265,13.4818736 +96.0,1.6990413560659319,0.375375,1.5975081378907166,0.427,15.3572804 +97.0,1.6999366796814561,0.36975,1.591890290822412,0.428,15.3061407 +98.0,1.685029744720875,0.381125,1.5946490682856835,0.4275,13.5822646 +99.0,1.6874998730987087,0.38775,1.594871545984272,0.425,15.3221043 +100.0,1.69273681345158,0.381125,1.5942024752474329,0.428,15.4726346 +101.0,1.6838655988515068,0.385875,1.5911119244789025,0.4275,15.3040142 +102.0,1.6837849565215437,0.38575,1.5920130032978597,0.4275,13.5849855 +103.0,1.689637797014383,0.385,1.5904492220182849,0.4285,15.4492019 +104.0,1.6886520432099212,0.386,1.5912814439026033,0.427,15.4394833 +105.0,1.6890147004636586,0.388875,1.588632761329223,0.431,13.6054946 +106.0,1.703430317835904,0.374375,1.5895182286029685,0.4315,15.446289 +107.0,1.6953541367526648,0.376875,1.590694051057957,0.4295,15.3398089 +108.0,1.68303557594824,0.379625,1.5897667623333334,0.4305,15.4276704 +109.0,1.6937751436354298,0.375625,1.590384041191102,0.4275,13.6274101 +110.0,1.6931847774731332,0.3785,1.5890310243598322,0.43,15.4850877 +111.0,1.6881081318300872,0.385,1.5884077321812178,0.4305,15.3959146 +112.0,1.7002088445228072,0.38225,1.5892000661490608,0.4285,13.8162308 +113.0,1.698733947315805,0.37925,1.5899565453826858,0.4285,15.3936976 +114.0,1.6921351777066116,0.379,1.587732076210329,0.43,15.4659813 +115.0,1.6842771553009004,0.380625,1.5868784756157346,0.4285,15.46463 +116.0,1.6836485036327553,0.38225,1.5884831668792907,0.428,13.650455 +117.0,1.6829108627796128,0.389875,1.5894439750995353,0.427,15.4808514 +118.0,1.687492807727144,0.383875,1.587582875265481,0.4295,15.4860714 +119.0,1.6935608290660495,0.3795,1.5889665229432852,0.4275,13.6095219 +120.0,1.692320313057568,0.376125,1.5887843882934605,0.4295,15.5656657 +121.0,1.6924146604371193,0.380625,1.5882626541406375,0.429,15.5208246 +122.0,1.690012666859895,0.38625,1.5871813967444837,0.431,15.4396337 +123.0,1.6794978819455646,0.38175,1.5871991726488208,0.43,13.6830272 +124.0,1.6926994158016195,0.377875,1.5882365672557917,0.431,15.4183431 +125.0,1.6908961974544536,0.387625,1.5878734133897638,0.43,15.316937 +126.0,1.6893128794654224,0.38075,1.5870830733644223,0.43,13.6248053 +127.0,1.7000015647543092,0.375125,1.5878335143550357,0.429,15.3336629 +128.0,1.6858226188091008,0.384875,1.5870843048812404,0.4295,15.5078571 +129.0,1.6899238394375566,0.383125,1.5870214680172545,0.43,15.4230317 +130.0,1.6970789219675935,0.374125,1.5872033916369521,0.429,14.1680863 +131.0,1.6820761405399696,0.383875,1.5869233456969811,0.4295,15.3963615 +132.0,1.687902460458744,0.383875,1.5864022102044886,0.4295,15.3919471 +133.0,1.7003253824201146,0.38025,1.5861638139521703,0.4275,13.7236074 +134.0,1.691768846180353,0.3785,1.58660031101729,0.428,15.3962918 +135.0,1.6757454282159554,0.38375,1.5873239424805365,0.4275,15.4047804 +136.0,1.6839341372203576,0.388125,1.586107763628232,0.4285,14.4468931 +137.0,1.6851595999266489,0.38525,1.5866514654210415,0.4275,14.7148097 +138.0,1.6895058659092632,0.382625,1.5858813471126203,0.4315,15.4495024 +139.0,1.6904830590658082,0.378875,1.5859974918669153,0.429,15.4072306 +140.0,1.6854879366651503,0.38475,1.5865065338739601,0.4285,13.6094411 +141.0,1.6969478539323126,0.378375,1.586849947244484,0.4275,15.4554722 +142.0,1.6871623395541377,0.38375,1.5870799447975714,0.4275,15.4324881 +143.0,1.6923125617065737,0.371625,1.5871416849716256,0.428,14.3429431 +144.0,1.6821539367762521,0.38125,1.5865588931249075,0.4285,14.7712782 +145.0,1.6903909160857566,0.378,1.5860616530789373,0.431,15.3883726 +146.0,1.6836464701159342,0.38525,1.5864408073000216,0.429,15.4214137 +147.0,1.6871807499364007,0.382875,1.585986801398567,0.429,13.6416271 +148.0,1.6854665285387964,0.384875,1.5860963248632833,0.43,15.3278486 +149.0,1.6725886064474143,0.381625,1.5865046325146315,0.429,15.2909046 +150.0,1.6792273858018316,0.38975,1.5862265450383235,0.428,13.6312723 +151.0,1.6906159325651955,0.388875,1.5871780519732297,0.428,15.3713903 +152.0,1.6863341244339474,0.38625,1.5870150555995144,0.43,16.5433147 +153.0,1.681956552726487,0.381875,1.5860159873341555,0.43,15.7907327 +154.0,1.6763457706493239,0.39125,1.5856159026871037,0.4295,14.1020194 +155.0,1.6878906319655413,0.38525,1.5854738161249688,0.43,15.8203634 +156.0,1.6884639306784512,0.383625,1.5858198660966825,0.4295,15.981796 +157.0,1.6922245572293098,0.3835,1.585450766142147,0.4295,13.9871211 +158.0,1.6837414669281217,0.38675,1.5858054482397583,0.429,15.6782996 +159.0,1.6827408015069112,0.388,1.5851766986452365,0.428,16.5450602 +160.0,1.6822361975373656,0.385375,1.585587716802313,0.4305,16.1751157 +161.0,1.6924068390862042,0.385375,1.5856475374280188,0.4305,13.6632845 +162.0,1.6853950028273168,0.384,1.5858628783955222,0.43,15.503817 +163.0,1.686356493301556,0.383,1.5855189270462533,0.4295,16.1090347 +164.0,1.686867662679916,0.375,1.5856657209926603,0.43,13.8722326 +165.0,1.6874301538456327,0.38375,1.5857448608473028,0.4295,15.774227 +166.0,1.693109929685849,0.384,1.5861631389520925,0.4285,15.6488884 +167.0,1.6796101134236943,0.379125,1.5857977275688675,0.43,16.4700145 +168.0,1.681520783515229,0.388125,1.5857790711970532,0.429,14.1852453 +169.0,1.687637838833695,0.378375,1.585865275167134,0.43,15.8195832 +170.0,1.6928045054909764,0.383875,1.5858695163145378,0.4285,15.8993575 +171.0,1.6841367965298017,0.38275,1.5860559457431749,0.429,14.1741843 +172.0,1.6865338283860034,0.38775,1.5859487070179679,0.429,16.2752338 +173.0,1.6784874510527448,0.39225,1.5859677329806865,0.429,16.6155572 +174.0,1.69070079247893,0.381125,1.5861027397118088,0.4285,17.5706886 +175.0,1.687900832688665,0.384875,1.586369163037136,0.428,14.5073584 +176.0,1.6825990730643612,0.385125,1.5859902444281095,0.429,16.8389949 +177.0,1.6903275758094556,0.37875,1.585857852195248,0.429,16.2755825 +178.0,1.6899771287369825,0.38525,1.5862460878293156,0.428,14.7914186 +179.0,1.689442773092312,0.376875,1.5861651359975653,0.428,16.734763 +180.0,1.6973046454060805,0.386625,1.5861896625513374,0.4285,16.7220156 +181.0,1.6787948339837928,0.393375,1.5858423933158525,0.4295,16.5265661 +182.0,1.686334812355981,0.3865,1.585999150063282,0.428,13.8054375 +183.0,1.6807187943431512,0.3845,1.5857793268734903,0.4295,15.5851119 +184.0,1.680048305050793,0.3845,1.585611871893802,0.4285,17.0678644 +185.0,1.686647722453985,0.385875,1.585337343670542,0.4295,14.517266 +186.0,1.6774368891557536,0.38825,1.5853310311278104,0.429,16.4339002 +187.0,1.6900446961100217,0.38075,1.585453255051558,0.429,15.9561385 +188.0,1.6882838471530937,0.38625,1.5855422860383177,0.4285,15.7107715 +189.0,1.6857764016419219,0.387625,1.5854703899591769,0.4285,14.4953238 +190.0,1.6812043403220969,0.386625,1.5855096261624553,0.429,16.2408232 +191.0,1.6813677278615276,0.385125,1.5855218326222813,0.429,16.334702 +192.0,1.6795154919651627,0.382625,1.5855701296099058,0.429,14.1359716 +193.0,1.6848002800063229,0.387,1.585484081884541,0.429,15.8233924 +194.0,1.6982066391674726,0.381375,1.585539031585177,0.4295,16.250603 +195.0,1.6889067835981957,0.38075,1.5857727124471617,0.429,15.7038991 +196.0,1.6799841921142904,0.38575,1.585742285592279,0.429,14.8943664 +197.0,1.6820144342165013,0.38575,1.5855546538095147,0.4295,16.69676 +198.0,1.6860069308374512,0.388,1.5852642548044042,0.4295,16.7627703 +199.0,1.673462897537824,0.3915,1.5851789779517098,0.43,14.3834255 +200.0,1.6864993365881753,0.3795,1.5854621306917878,0.429,17.1495746 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd index 7bf18c4774f..828cb9698cb 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_cifar.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 90, - "cols": 5, - "nnz": 450, + "rows": 200, + "cols": 6, + "nnz": 1200, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-17 16:41:31 MEZ" + "created": "2026-02-15 17:26:38 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv new file mode 100644 index 00000000000..a8310509791 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv @@ -0,0 +1,200 @@ +1.0,2.3578557887351503,0.127,2.2831586657173353,0.117,12.2236136 +2.0,2.290579345600647,0.112375,2.2599101039589202,0.117,13.1504781 +3.0,2.259876580378829,0.140375,2.190075441997353,0.19,12.7150741 +4.0,2.2123124925882016,0.173,2.1669796925443703,0.1865,14.0307481 +5.0,2.166996186252336,0.18825,2.057032955581059,0.2615,14.5334107 +6.0,2.0901064992160854,0.222375,1.9675302080428219,0.286,15.0818033 +7.0,2.013819524745611,0.258375,1.9133536664070094,0.302,15.1464027 +8.0,1.9737515767550637,0.2755,1.8628096148659337,0.3245,15.5779899 +9.0,1.9374155646339761,0.28425,1.8213905138948094,0.3245,15.5606504 +10.0,1.8903700818031115,0.303625,1.7948572826062223,0.3335,14.149382 +11.0,1.865546397793384,0.31625,1.7321936294291116,0.356,15.7005658 +12.0,1.8356664682549544,0.33125,1.7496619874034676,0.3635,15.6023952 +13.0,1.8021405768559393,0.3505,1.690730207328495,0.384,15.6208546 +14.0,1.7797370219542088,0.348,1.6963849584703392,0.3925,15.6920447 +15.0,1.7666712229633776,0.358125,1.708665893101907,0.3835,15.5287662 +16.0,1.7450442809786055,0.366875,1.6625775635560047,0.3865,15.5169449 +17.0,1.7117889133914013,0.375625,1.6086421432931646,0.4185,15.5266343 +18.0,1.6919193766466378,0.384,1.6054825473227123,0.4175,15.4257219 +19.0,1.6632078021756036,0.391375,1.6288545159855077,0.4115,15.43522 +20.0,1.6613741691155957,0.392,1.5680806717710423,0.4275,15.3289755 +21.0,1.619924805543468,0.412625,1.5465452534635618,0.4285,15.3282209 +22.0,1.6160630277237045,0.411,1.550992263036037,0.425,15.4077311 +23.0,1.6052175401738582,0.41725,1.5282966200898573,0.4305,13.6931284 +24.0,1.585906683721859,0.423375,1.5166766394507396,0.4445,15.1885039 +25.0,1.5732263235986785,0.42425,1.5128602545718595,0.442,15.7604111 +26.0,1.5821843166645668,0.41975,1.513900700717286,0.432,13.718303 +27.0,1.5698889652699637,0.433375,1.5250589184085934,0.4405,15.3884628 +28.0,1.5619760908392646,0.43675,1.5043176617046117,0.4555,13.6728122 +29.0,1.5596303261580569,0.431,1.4865147935033893,0.4605,15.4715643 +30.0,1.5501695546505512,0.435,1.4862708820220933,0.4525,13.5416479 +31.0,1.542548934652783,0.444625,1.4892523345468474,0.4545,15.5810621 +32.0,1.5342478236165886,0.441875,1.4800582095190418,0.4585,13.6371874 +33.0,1.5292448567982906,0.442375,1.4669349211801785,0.474,15.5371402 +34.0,1.5182126152893296,0.447125,1.475864972723064,0.4545,13.7075043 +35.0,1.5110971443878898,0.45625,1.4705142606940091,0.458,15.5589255 +36.0,1.5199600712772678,0.45125,1.489661397966485,0.4575,13.6878869 +37.0,1.4927654641676709,0.454,1.467439092814473,0.466,15.531781 +38.0,1.4948461758696592,0.46125,1.4490079459667489,0.4685,14.5857949 +39.0,1.4918591528247425,0.46,1.4569872177991534,0.4685,15.6324133 +40.0,1.4800146494075497,0.46375,1.470197574909571,0.4675,13.7671721 +41.0,1.480266260987431,0.46025,1.435466124726762,0.4815,16.4634696 +42.0,1.4663583020289601,0.470125,1.4315558300175752,0.4815,14.6995721 +43.0,1.4611874316879079,0.472875,1.4291748734084397,0.4845,15.5487899 +44.0,1.46129813499749,0.46625,1.4320028551847455,0.4745,13.8951668 +45.0,1.4665816751688794,0.472125,1.4339987164520875,0.482,15.5613458 +46.0,1.4551893139522587,0.47425,1.4262095859977861,0.487,13.7835234 +47.0,1.4690645407253038,0.468625,1.4204162903236368,0.4885,15.4783984 +48.0,1.4599160719222943,0.475,1.4248899482762345,0.4855,13.7698484 +49.0,1.4566605552109801,0.47,1.4216157130342515,0.484,15.4621436 +50.0,1.447717760532665,0.479375,1.4250449013770714,0.48,13.9294422 +51.0,1.437806380872101,0.48625,1.4160565750404084,0.4785,15.4871456 +52.0,1.4432825740786184,0.47775,1.4202514635572692,0.4865,13.8851062 +53.0,1.44463340272832,0.4765,1.4175851917572133,0.4845,15.6623871 +54.0,1.451938577051031,0.475875,1.425143809030958,0.4785,14.8936695 +55.0,1.44110717492481,0.478375,1.41470848167406,0.487,19.1872065 +56.0,1.435464820163631,0.4815,1.4081762776725488,0.491,15.3621055 +57.0,1.4288538971104097,0.486125,1.41378619891076,0.4835,15.9713463 +58.0,1.4460401725867442,0.475625,1.4124346427225476,0.4885,13.999068 +59.0,1.435180946362223,0.482125,1.4094683341405312,0.4895,16.800066 +60.0,1.4327815846912868,0.4855,1.4046018909816949,0.492,13.9497476 +61.0,1.4325856379095134,0.484375,1.4059675414095518,0.494,17.9197221 +62.0,1.4291569684534067,0.48,1.400332762771656,0.489,14.5538948 +63.0,1.4219982857346853,0.486625,1.3970289499931685,0.495,15.7821386 +64.0,1.4182059402374125,0.488625,1.400833673485251,0.489,13.9950954 +65.0,1.4195473871650708,0.486375,1.3979501252647686,0.493,17.6774702 +66.0,1.4232736928295164,0.483,1.3983704535335444,0.4855,14.4360364 +67.0,1.421551989755518,0.4855,1.397889088430559,0.4935,17.7797958 +68.0,1.413560874623841,0.489625,1.4006753172044049,0.493,14.32286 +69.0,1.4265113978118376,0.481,1.3970420406768869,0.494,15.6475242 +70.0,1.4261365106177653,0.483125,1.3985393276663705,0.4915,14.027412 +71.0,1.4161164008348488,0.49225,1.3985864796248797,0.491,15.4938534 +72.0,1.4259967552214254,0.490625,1.3945541541966286,0.491,13.5528966 +73.0,1.4234480018588245,0.482,1.393501487288358,0.496,15.4509737 +74.0,1.4183868459944677,0.4905,1.3972153508724983,0.49,13.5829926 +75.0,1.415975832481686,0.488875,1.3945415423533454,0.49,15.4572837 +76.0,1.4137106773331642,0.493,1.3949387782555436,0.4895,13.5858074 +77.0,1.407563039713408,0.48825,1.3945189358636259,0.494,15.6904307 +78.0,1.4161407348166761,0.49725,1.3968541844066253,0.49,14.1936055 +79.0,1.41082925045235,0.493125,1.3915600707496503,0.4965,16.0369722 +80.0,1.407531019966082,0.497125,1.3891041172315384,0.4965,13.879934 +81.0,1.4143762023373787,0.492375,1.389543419961976,0.498,16.1709713 +82.0,1.4010948110384127,0.501125,1.3905496940103907,0.497,15.5447567 +83.0,1.3975022366918521,0.49425,1.3887178652911785,0.494,13.5909262 +84.0,1.4073924909298157,0.491,1.3886342777438223,0.496,15.4333049 +85.0,1.407335627871086,0.492375,1.3880521602774607,0.499,13.5460918 +86.0,1.3993379527408807,0.489625,1.3864861830005113,0.498,15.3514156 +87.0,1.4107472493085969,0.491125,1.387909002130466,0.4975,13.7630284 +88.0,1.4091185550676968,0.49675,1.3879870212969472,0.498,15.3269184 +89.0,1.4065874894372707,0.496125,1.3885835647950597,0.4975,13.5169058 +90.0,1.3973368206156953,0.49225,1.3887803002902355,0.4985,15.3649952 +91.0,1.4041950913842653,0.49725,1.3895534915226555,0.4965,13.5559162 +92.0,1.4024062464325768,0.495625,1.386535331990313,0.5,15.3257995 +93.0,1.3990050380297427,0.491,1.3857530643210278,0.5005,13.4729962 +94.0,1.4027787617356107,0.496,1.3893285744619996,0.499,15.3636517 +95.0,1.401049705402974,0.500125,1.3879682185842706,0.499,13.4351827 +96.0,1.4087284034633765,0.4885,1.387156162598021,0.4975,15.7297076 +97.0,1.4142099163851078,0.4965,1.3891480518420873,0.498,13.970082 +98.0,1.4046857127847048,0.488875,1.387397222746437,0.499,15.8655113 +99.0,1.3987614173553458,0.497125,1.3882776133666892,0.495,14.3087639 +100.0,1.402649947173708,0.49075,1.3876080953484173,0.4945,16.4156547 +101.0,1.4055813169167695,0.492375,1.38754417920826,0.4965,14.3686621 +102.0,1.395343091463629,0.500625,1.384574561930633,0.5035,16.2329499 +103.0,1.4011602620188688,0.494625,1.3849398293100237,0.504,14.0644375 +104.0,1.3970571509337748,0.499875,1.3856719685818204,0.5045,15.7672199 +105.0,1.3976512348981756,0.497125,1.3854529672196398,0.5035,14.9459157 +106.0,1.4022147575152173,0.493875,1.385428420492798,0.505,16.1238784 +107.0,1.400539600131114,0.50175,1.3838452992186754,0.504,14.1168296 +108.0,1.4030561344430086,0.49325,1.3842067014907216,0.5025,15.6359261 +109.0,1.4063934878796418,0.48925,1.3860886483211372,0.5025,13.6504704 +110.0,1.4051149900521684,0.488875,1.3849158029915123,0.5045,15.5044806 +111.0,1.4001584345334,0.492,1.3852677362721162,0.504,13.7843918 +112.0,1.4068725940910731,0.490875,1.38445869103932,0.504,16.0680476 +113.0,1.4022106226497297,0.489625,1.3860103679865754,0.5025,13.8299267 +114.0,1.3995335375298494,0.49375,1.3860651089640434,0.5015,15.7922341 +115.0,1.400503687348999,0.48975,1.3852569594485673,0.5015,14.0225566 +116.0,1.3966020815793994,0.49575,1.3844809469580266,0.505,15.8714818 +117.0,1.4105144698566157,0.493375,1.384121811569296,0.502,13.6426427 +118.0,1.4125510913320924,0.48525,1.3845196302842364,0.5035,15.6862597 +119.0,1.3989033060118337,0.493125,1.3831946048399872,0.503,13.7632232 +120.0,1.4032152181600865,0.496,1.3855581527068392,0.4985,15.7394284 +121.0,1.3988681974602644,0.491625,1.3844494989996838,0.5015,15.6030773 +122.0,1.3950277130253677,0.50375,1.3838707740109528,0.502,15.6065003 +123.0,1.3898302866507375,0.502875,1.383915879207389,0.503,13.7968901 +124.0,1.4035000792445513,0.494,1.3831081883678855,0.5045,15.6726591 +125.0,1.4057160509092983,0.4875,1.383104454951081,0.506,13.6661516 +126.0,1.4006921514586976,0.4955,1.3834568425390648,0.503,15.6107837 +127.0,1.4055961595758415,0.49225,1.3836698494554445,0.503,13.7570813 +128.0,1.4130403376832452,0.49325,1.383975039325702,0.504,15.6788563 +129.0,1.3901234340273052,0.495375,1.3840354024969157,0.504,13.7543542 +130.0,1.387628968695257,0.50325,1.3842585241472747,0.5055,15.6189025 +131.0,1.396140836648794,0.505375,1.3845285303323958,0.504,13.8195172 +132.0,1.3992754444242221,0.494125,1.3840551948087276,0.5035,15.9616324 +133.0,1.3900047557283237,0.49975,1.3845045559770106,0.502,13.7343467 +134.0,1.4094271596346226,0.493625,1.384743449684079,0.503,15.617925 +135.0,1.4029004963603224,0.497375,1.384629196030117,0.505,13.7740788 +136.0,1.38981933900675,0.498875,1.3837472183078396,0.5055,15.6722476 +137.0,1.390877335150279,0.499,1.3834342753703313,0.505,13.7584896 +138.0,1.3923837510602344,0.50075,1.3832670351043763,0.504,15.5770014 +139.0,1.3883020183513597,0.497375,1.382435943463765,0.5055,13.8964198 +140.0,1.3918689012185077,0.494,1.3830131642208616,0.5035,15.6422692 +141.0,1.4039123940331173,0.494875,1.3829432038489289,0.503,13.6727981 +142.0,1.3896969698050174,0.499,1.3833011114100755,0.503,15.9513211 +143.0,1.39201782120047,0.501,1.3832875347917437,0.5035,13.7021309 +144.0,1.4050578038226598,0.492875,1.3830038459295741,0.504,15.6819382 +145.0,1.3865105891403073,0.500375,1.3827551445775557,0.503,13.6406593 +146.0,1.3965918286348946,0.4965,1.3835646071850352,0.502,15.8773205 +147.0,1.3999049573667315,0.492375,1.383326908435256,0.5025,13.8077648 +148.0,1.3936567516400624,0.50025,1.3835365565840425,0.5015,15.7759605 +149.0,1.3959644683247479,0.494,1.3834084661257897,0.5035,13.9374024 +150.0,1.3884447659627033,0.50175,1.3829955403527563,0.5045,16.3715655 +151.0,1.3962198887058612,0.495375,1.382838126289804,0.505,14.8958379 +152.0,1.4008984872315056,0.49725,1.3830868308810906,0.505,16.2607087 +153.0,1.405106918683159,0.48825,1.3832661929477479,0.5045,13.9988522 +154.0,1.3915006292386802,0.50275,1.3829780797178992,0.504,16.042155 +155.0,1.391004352520092,0.5005,1.3830180718878164,0.5025,14.0802696 +156.0,1.3923211752741045,0.50175,1.382985502840576,0.503,15.8148489 +157.0,1.4041786986865317,0.497875,1.3835048945661745,0.502,13.7750587 +158.0,1.4016955230860424,0.495375,1.383217421409712,0.5035,15.6503513 +159.0,1.3980511580629338,0.499625,1.3832032218503227,0.504,13.732946 +160.0,1.3829542717850556,0.5095,1.3825925879595662,0.504,15.6051886 +161.0,1.3875359099923925,0.49825,1.3827759939885853,0.5035,13.7298119 +162.0,1.413167987907386,0.49075,1.3826867393909152,0.5035,15.6136468 +163.0,1.4030912065747152,0.494875,1.3829358155672664,0.5035,13.7618302 +164.0,1.3946387561135805,0.4945,1.382840025716245,0.5035,15.6612857 +165.0,1.398713693518451,0.50025,1.3829774410167497,0.5035,13.7390685 +166.0,1.396998315418331,0.497375,1.3830676034360176,0.5035,16.3453138 +167.0,1.3955577261401846,0.50075,1.3830902261051767,0.5035,14.3911335 +168.0,1.3988853539913237,0.48975,1.3830180969978216,0.5025,16.7471628 +169.0,1.4093234017669038,0.490125,1.3831035911887197,0.503,14.2703948 +170.0,1.387005171514562,0.507875,1.3828799356323076,0.5045,16.2012438 +171.0,1.393070923476958,0.496625,1.3828563713993758,0.5045,14.3381304 +172.0,1.396904210197886,0.489125,1.3826125638876436,0.504,16.4485602 +173.0,1.3833820915446526,0.499,1.3825213731766943,0.505,14.0757611 +174.0,1.3931729362661576,0.496875,1.3826629078598311,0.504,16.0487858 +175.0,1.3956512436818358,0.49675,1.3828076671310645,0.5035,14.0923034 +176.0,1.400443999833515,0.494,1.3827162705127485,0.5035,15.7638616 +177.0,1.3812218777714491,0.499875,1.3827988383253642,0.505,13.7681779 +178.0,1.392146169245651,0.497,1.3827227272044316,0.5055,16.3485031 +179.0,1.3967549513798534,0.499875,1.3827573507870048,0.5055,13.8779946 +180.0,1.3999380833136357,0.497125,1.3826473455450088,0.505,15.7251239 +181.0,1.4003831291106263,0.49125,1.3826710862161784,0.505,13.5663197 +182.0,1.3956567813746823,0.496625,1.3827160100406575,0.505,15.6326484 +183.0,1.3992026783462674,0.4985,1.3827543840344505,0.5055,13.9391901 +184.0,1.392310898218398,0.498,1.382744803969001,0.5055,16.0548293 +185.0,1.3902949594346201,0.502625,1.3826057882774299,0.505,14.0266826 +186.0,1.3945524645807796,0.500625,1.3825970656129722,0.5055,15.8452358 +187.0,1.4026273267951386,0.492375,1.3825762466577218,0.5055,13.9976586 +188.0,1.382746492611655,0.500625,1.3824662080629395,0.5055,15.8777556 +189.0,1.3862457694922095,0.4985,1.3824024206158323,0.505,13.8559148 +190.0,1.4011666509036005,0.493125,1.3823872274582762,0.505,15.9917833 +191.0,1.4011546564775808,0.496625,1.3824078414353653,0.505,14.0627787 +192.0,1.3929999733661478,0.499625,1.3824688822876676,0.505,15.9565214 +193.0,1.4000741941974273,0.493875,1.3824429295181224,0.505,14.2448323 +194.0,1.3854775319429742,0.502,1.3822743869418963,0.505,16.0736746 +195.0,1.3961519847445818,0.49625,1.3823671456915163,0.505,14.3862475 +196.0,1.4136537391722335,0.487,1.3823641975838246,0.505,16.2638135 +197.0,1.3956329021533984,0.4975,1.3823624006347233,0.5045,14.0787797 +198.0,1.3968799700816734,0.497125,1.382414763659396,0.5045,15.5971037 +199.0,1.3899817976102402,0.498875,1.3823728837294411,0.5045,13.77807 +200.0,1.398741816673307,0.492625,1.3824793385707603,0.504,15.7196366 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv.mtd new file mode 100644 index 00000000000..85e79d5aa22 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 200, + "cols": 6, + "nnz": 1200, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-16 11:14:29 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv index 61c471f700d..6f72e8ea740 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv @@ -1,60 +1,30 @@ -1.0,1.866423388179165,0.5742242063492063,1.6439261632170747,0.64 -2.0,1.4928910617188813,0.7032321428571429,1.3853969008124252,0.683 -3.0,1.272710742254421,0.7394861111111111,1.2131369327400596,0.711 -4.0,1.1254325674232708,0.7601150793650794,1.095144211752259,0.727 -5.0,1.022459770574194,0.7726170634920635,1.0101238395751708,0.74 -6.0,0.946530560718444,0.7826170634920635,0.9456451197422426,0.751 -7.0,0.8880268839828795,0.7903670634920635,0.8949212750028692,0.765 -8.0,0.8415278206758608,0.7978670634920635,0.854089316705041,0.768 -9.0,0.8035827965978666,0.8036190476190476,0.8202159641777057,0.774 -10.0,0.7718674883077749,0.8092440476190476,0.7916438039580443,0.781 -11.0,0.7448529883790529,0.8146190476190476,0.7670526565955637,0.792 -12.0,0.721458277224362,0.8191190476190476,0.745724482535323,0.798 -13.0,0.7009611157389515,0.8232440476190476,0.7268900229389159,0.801 -14.0,0.6827906144486946,0.8262440476190476,0.7101796206958488,0.803 -15.0,0.6665491364904129,0.8307460317460317,0.6951588756175966,0.804 -16.0,0.6518900515924803,0.8338710317460317,0.6816308662811724,0.807 -17.0,0.6385824868896167,0.8378710317460317,0.6692585415240807,0.809 -18.0,0.626401446142148,0.8412460317460317,0.657986591683656,0.81 -19.0,0.6152151008879067,0.8434960317460317,0.6475896323415835,0.81 -20.0,0.6048551240028875,0.8463710317460317,0.6380074275770728,0.816 -21.0,0.595226790651475,0.8477460317460317,0.6291030696035893,0.819 -22.0,0.5862262284167258,0.8484960317460317,0.6207762320382855,0.821 -23.0,0.5777942203740585,0.8506210317460317,0.6129073353307255,0.824 -24.0,0.569829336052029,0.8521210317460317,0.6055186920462967,0.827 -25.0,0.562322087467323,0.8549960317460317,0.5984862630477912,0.829 -26.0,0.5551972532193233,0.8561210317460317,0.5918507350880778,0.831 -27.0,0.5483922690557319,0.8568710317460317,0.5854528969297884,0.83 -28.0,0.5417717020101807,0.8577460317460317,0.5791749719268132,0.834 -29.0,0.5353834920310123,0.8588710317460317,0.573021548269845,0.838 -30.0,0.5291950049277978,0.8594980158730159,0.5671532053783704,0.84 -31.0,0.5232429187125389,0.8608730158730159,0.561629254937016,0.841 -32.0,0.5176039971163227,0.8618730158730159,0.5564097976587178,0.843 -33.0,0.5122833004991232,0.8626230158730159,0.5514111670120752,0.844 -34.0,0.5072275346885798,0.8628730158730159,0.5466137422719917,0.846 -35.0,0.5023701417154098,0.864998015873016,0.5420622512278893,0.846 -36.0,0.49771279900284227,0.8653730158730158,0.5377322462760586,0.848 -37.0,0.49325002706494225,0.8657480158730159,0.5335120751616993,0.847 -38.0,0.4889316669931411,0.8663730158730159,0.5294598410779857,0.847 -39.0,0.4847795598700526,0.8673730158730159,0.5256187227433868,0.847 -40.0,0.4808159819962951,0.8683730158730159,0.5218443641381453,0.848 -41.0,0.4769954353746303,0.8692480158730159,0.5181261701052222,0.847 -42.0,0.4732806998370051,0.8706230158730159,0.514536341695689,0.847 -43.0,0.4696791877007013,0.8717480158730159,0.5111297293916626,0.847 -44.0,0.466207952568916,0.8723730158730159,0.5078820073977189,0.847 -45.0,0.4628588261989359,0.8731230158730159,0.504615170638606,0.848 -46.0,0.45960234279588047,0.8742480158730159,0.5016026210614756,0.848 -47.0,0.4564797005612003,0.8744980158730159,0.49853096066258135,0.848 -48.0,0.45340866555174103,0.8748730158730159,0.4956449103544591,0.848 -49.0,0.4504369793890093,0.8758730158730159,0.49280215847599296,0.848 -50.0,0.4475359327883268,0.8763730158730159,0.490056720180492,0.849 -51.0,0.4447109415788691,0.8772480158730159,0.48734386450053985,0.85 -52.0,0.44194446747002286,0.8773730158730159,0.48479191333510535,0.853 -53.0,0.439268379013645,0.8781230158730159,0.4822259811676885,0.855 -54.0,0.4366447818848977,0.8789980158730158,0.47979430296590536,0.855 -55.0,0.4341039553458775,0.879875,0.47737496308325084,0.856 -56.0,0.4316169860382033,0.8805,0.47503514269851493,0.857 -57.0,0.4291959500256212,0.881375,0.4727302757008901,0.857 -58.0,0.42682299095231074,0.88225,0.4704963291546497,0.858 -59.0,0.4245037978579831,0.882875,0.46832729836663517,0.858 -60.0,0.4222409407797942,0.883,0.46619377517871974,0.859 +1.0,1.3857901778452535,0.5646190476190476,0.7319606863224238,0.765,5.3305012 +2.0,0.5684313004583411,0.8217460317460317,0.6234791874559356,0.788,5.2476887 +3.0,0.4905831271718293,0.8504960317460317,0.5502137369610078,0.816,5.2780736 +4.0,0.44710641780490046,0.8622460317460316,0.507108308136985,0.832,5.2201623 +5.0,0.4161624196716421,0.8703710317460317,0.4754469754987524,0.842,5.2467271 +6.0,0.39267227948912486,0.8776230158730159,0.45065514359834485,0.852,5.271739 +7.0,0.37349778819948315,0.8845,0.43106228302258875,0.86,5.2507247 +8.0,0.356711273108282,0.89025,0.41305560320857815,0.865,5.2104277 +9.0,0.34185023249041585,0.8955,0.3962174178864686,0.872,5.2381525 +10.0,0.32823313299042106,0.900375,0.38054277523337965,0.88,5.2121785 +11.0,0.315491705100328,0.905125,0.36540667420176315,0.884,5.2152054 +12.0,0.30350796534296215,0.907625,0.3510384539143976,0.887,5.2359832 +13.0,0.2917294059179154,0.91175,0.33741215573419253,0.891,5.221409 +14.0,0.28007947703812774,0.915625,0.3256616885744949,0.895,5.2581459 +15.0,0.26903833372283736,0.918375,0.3134887826503533,0.9,5.2468317 +16.0,0.2582387839549893,0.923375,0.30257759818077407,0.904,5.2642078 +17.0,0.24793377312342682,0.925875,0.2921610039187919,0.907,5.2371349 +18.0,0.23819607204629348,0.928375,0.2823879693963766,0.911,5.2559867 +19.0,0.2292235461528336,0.93025,0.273400476950809,0.913,5.2403522 +20.0,0.2209457850898866,0.932,0.26516041908569515,0.919,5.2550661 +21.0,0.21332982834010106,0.934,0.2575876194732466,0.922,5.2385794 +22.0,0.20638915200434282,0.937,0.2505459867045295,0.924,5.2494052 +23.0,0.1999071823329033,0.939125,0.24401408966354393,0.927,5.2559466 +24.0,0.19397797659618402,0.94075,0.23809338594290166,0.93,5.2488361 +25.0,0.18852208615222923,0.94225,0.23228565192801962,0.932,5.2528026 +26.0,0.18348110558300604,0.9435,0.22721243789295575,0.932,5.2581057 +27.0,0.17885126807038831,0.944875,0.222421900563385,0.937,5.2454294 +28.0,0.17456385268716143,0.9465,0.21804989421618584,0.938,5.2457904 +29.0,0.17061639368361722,0.94775,0.21415673522380455,0.938,5.2492067 +30.0,0.166888384640409,0.948375,0.21049819306789677,0.939,5.2299216 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd index bc5790ab0e1..63066fb27d2 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_diagonal_mnist.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 60, - "cols": 5, - "nnz": 300, + "rows": 30, + "cols": 6, + "nnz": 180, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-17 12:53:09 MEZ" + "created": "2026-02-16 08:29:18 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv index 74604775d39..e7d8ef60b0b 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv @@ -1,60 +1,30 @@ -1.0,1.866423388179165,0.5742242063492063,1.6439261632170745,0.64 -2.0,1.492891061718881,0.7032321428571429,1.385396900812425,0.683 -3.0,1.2727107422544208,0.7394861111111111,1.2131369327400594,0.711 -4.0,1.1254325674232704,0.7601150793650794,1.0951442117522587,0.727 -5.0,1.0224597705741936,0.7726170634920635,1.0101238395751704,0.74 -6.0,0.9465305607184437,0.7826170634920635,0.9456451197422422,0.751 -7.0,0.8880268839828789,0.7903670634920635,0.8949212750028689,0.765 -8.0,0.84152782067586,0.7978670634920635,0.8540893167050403,0.768 -9.0,0.803582796597866,0.8036190476190476,0.8202159641777054,0.774 -10.0,0.7718674883077745,0.8092440476190476,0.7916438039580438,0.781 -11.0,0.7448529883790521,0.8146190476190476,0.7670526565955632,0.792 -12.0,0.7214582772243614,0.8191190476190476,0.7457244825353226,0.798 -13.0,0.7009611157389508,0.8232440476190476,0.7268900229389155,0.801 -14.0,0.6827906144486944,0.8262440476190476,0.7101796206958487,0.803 -15.0,0.6665491364904125,0.8307460317460317,0.6951588756175962,0.804 -16.0,0.6518900515924798,0.8338710317460317,0.6816308662811721,0.807 -17.0,0.6385824868896166,0.8378710317460317,0.6692585415240803,0.809 -18.0,0.6264014461421475,0.8412460317460317,0.6579865916836556,0.81 -19.0,0.6152151008879062,0.8434960317460317,0.6475896323415832,0.81 -20.0,0.604855124002887,0.8463710317460317,0.6380074275770723,0.816 -21.0,0.5952267906514745,0.8477460317460317,0.629103069603589,0.819 -22.0,0.5862262284167256,0.8484960317460317,0.6207762320382852,0.821 -23.0,0.5777942203740583,0.8506210317460317,0.6129073353307254,0.824 -24.0,0.5698293360520286,0.8521210317460317,0.6055186920462965,0.827 -25.0,0.5623220874673228,0.8549960317460317,0.5984862630477912,0.829 -26.0,0.5551972532193232,0.8561210317460317,0.5918507350880776,0.831 -27.0,0.5483922690557316,0.8568710317460317,0.5854528969297881,0.83 -28.0,0.5417717020101804,0.8577460317460317,0.5791749719268128,0.834 -29.0,0.5353834920310118,0.8588710317460317,0.5730215482698446,0.838 -30.0,0.5291950049277971,0.8594980158730159,0.5671532053783702,0.84 -31.0,0.5232429187125387,0.8608730158730159,0.5616292549370158,0.841 -32.0,0.5176039971163221,0.8618730158730159,0.5564097976587177,0.843 -33.0,0.5122833004991226,0.8626230158730159,0.5514111670120748,0.844 -34.0,0.5072275346885796,0.8628730158730159,0.5466137422719916,0.846 -35.0,0.5023701417154097,0.864998015873016,0.5420622512278892,0.846 -36.0,0.497712799002842,0.8653730158730158,0.5377322462760586,0.848 -37.0,0.4932500270649419,0.8657480158730159,0.5335120751616992,0.847 -38.0,0.4889316669931409,0.8663730158730159,0.5294598410779855,0.847 -39.0,0.4847795598700526,0.8673730158730159,0.525618722743387,0.847 -40.0,0.48081598199629483,0.8683730158730159,0.5218443641381452,0.848 -41.0,0.4769954353746303,0.8692480158730159,0.5181261701052222,0.847 -42.0,0.473280699837005,0.8706230158730159,0.514536341695689,0.847 -43.0,0.4696791877007012,0.8717480158730159,0.5111297293916625,0.847 -44.0,0.46620795256891595,0.8723730158730159,0.5078820073977189,0.847 -45.0,0.46285882619893565,0.8731230158730159,0.504615170638606,0.848 -46.0,0.4596023427958802,0.8742480158730159,0.5016026210614756,0.848 -47.0,0.45647970056120024,0.8744980158730159,0.4985309606625814,0.848 -48.0,0.45340866555174086,0.8748730158730159,0.4956449103544591,0.848 -49.0,0.4504369793890092,0.8758730158730159,0.49280215847599296,0.848 -50.0,0.44753593278832665,0.8763730158730159,0.49005672018049207,0.849 -51.0,0.4447109415788691,0.8772480158730159,0.48734386450053974,0.85 -52.0,0.44194446747002264,0.8773730158730159,0.48479191333510524,0.853 -53.0,0.43926837901364496,0.8781230158730159,0.48222598116768844,0.855 -54.0,0.43664478188489775,0.8789980158730158,0.4797943029659054,0.855 -55.0,0.43410395534587737,0.879875,0.4773749630832509,0.856 -56.0,0.43161698603820314,0.8805,0.4750351426985147,0.857 -57.0,0.4291959500256211,0.881375,0.4727302757008901,0.857 -58.0,0.42682299095231074,0.88225,0.4704963291546497,0.858 -59.0,0.42450379785798303,0.882875,0.4683272983666352,0.858 -60.0,0.4222409407797941,0.883,0.4661937751787198,0.859 +1.0,1.3968817437923011,0.5666170634920635,0.7109426273649633,0.772,5.5362371 +2.0,0.5422156218303953,0.8298710317460317,0.5874008650058562,0.805,5.2614495 +3.0,0.4580689644255494,0.8598710317460317,0.5135835359836203,0.835,5.3245232 +4.0,0.4085299529961879,0.8739960317460317,0.4629310510069232,0.847,5.2657728 +5.0,0.3744498144888525,0.8841230158730159,0.4294496771127414,0.858,5.3684353 +6.0,0.3482254212325919,0.89325,0.4016917288875425,0.87,5.2746683 +7.0,0.32644331573698165,0.90375,0.37816824036388574,0.876,5.3857298 +8.0,0.30740826477091837,0.9085,0.35889205504668836,0.883,5.3341332 +9.0,0.2899825260130954,0.912875,0.34101494981484803,0.884,5.3874481 +10.0,0.2738419712933966,0.917125,0.32457532313402715,0.892,5.3680929 +11.0,0.25908163407723,0.922,0.3100380303313327,0.902,5.3938413 +12.0,0.24576224893321097,0.924875,0.29742807859159387,0.906,5.414599 +13.0,0.23391526860320636,0.928375,0.285618762694352,0.908,5.3437024 +14.0,0.2232570085798237,0.932875,0.27529341934644824,0.911,5.4071808 +15.0,0.21367623660261073,0.934875,0.265642640592245,0.918,5.3577067 +16.0,0.20499424881583464,0.937125,0.25702880054693544,0.923,5.4244476 +17.0,0.19716216164849076,0.939125,0.248436394018528,0.923,5.3548261 +18.0,0.1900326773227678,0.940625,0.24069232408429253,0.925,5.4184062 +19.0,0.18354880745164945,0.942625,0.23356184493107382,0.926,5.3706423 +20.0,0.17760936986157816,0.944375,0.2271132659151866,0.927,5.3886075 +21.0,0.17219953170336277,0.946875,0.22097460735375044,0.929,5.416253 +22.0,0.1671937491912417,0.948625,0.21547076832387607,0.932,5.3531536 +23.0,0.16254762050040597,0.950125,0.21041945222651776,0.933,5.4161205 +24.0,0.1582729010416807,0.9515,0.20547421934126173,0.936,5.3464161 +25.0,0.15419864291613122,0.953,0.20102872883325873,0.939,5.3968156 +26.0,0.150414016123742,0.95375,0.19672941709454136,0.941,5.369739 +27.0,0.1468671893933918,0.955,0.19276066812411718,0.942,5.3666541 +28.0,0.14357153160959613,0.956375,0.18897210951490082,0.942,5.4230144 +29.0,0.14044228163921008,0.957,0.18539700571879691,0.945,5.3552148 +30.0,0.1375059791756444,0.9575,0.18214220693574806,0.945,5.3962925 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd index 39ca9b83ca4..1374abd380a 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_heuristic_mnist.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 60, - "cols": 5, - "nnz": 300, + "rows": 30, + "cols": 6, + "nnz": 180, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-18 12:30:06 MEZ" + "created": "2026-02-16 08:26:34 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv index bf5fe82079c..5ef28f355a9 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv @@ -1,60 +1,30 @@ -1.0,1.5299231149614017,0.615625,0.41635080243384964,0.873 -2.0,0.2506012298428366,0.927,0.22952393475157162,0.916 -3.0,0.15480006600605273,0.95425,0.1620089559895203,0.94 -4.0,0.11335569472662702,0.964625,0.13560831935160117,0.955 -5.0,0.09042976548384442,0.971625,0.12328820920011867,0.963 -6.0,0.07636142456988171,0.976625,0.11456082728567903,0.968 -7.0,0.06691350664702883,0.979625,0.10910866114092198,0.969 -8.0,0.059269082607526495,0.9825,0.10503831758585568,0.971 -9.0,0.053242110795707065,0.98375,0.10171043938325056,0.971 -10.0,0.04853800560203754,0.985125,0.09997651189261585,0.971 -11.0,0.044405441596568826,0.98575,0.09838001759817647,0.971 -12.0,0.040599887346456684,0.98725,0.097780955718731,0.972 -13.0,0.03734205810884943,0.98825,0.09713194222958135,0.974 -14.0,0.03431520433712973,0.98875,0.09692151531860237,0.974 -15.0,0.03161609671275515,0.98975,0.0973242406668757,0.976 -16.0,0.02932789356176544,0.990125,0.09678624020786661,0.974 -17.0,0.027317096210515864,0.990875,0.09601975313441609,0.975 -18.0,0.025400220809541275,0.99125,0.09493154670227145,0.975 -19.0,0.023849761916380875,0.992375,0.09431458156343589,0.975 -20.0,0.02235980249269527,0.992875,0.09444793299463022,0.975 -21.0,0.021040637629279574,0.993375,0.09406752804026423,0.976 -22.0,0.01981557992146146,0.99375,0.09397031761636573,0.976 -23.0,0.018703144106497697,0.994375,0.0936818870241683,0.976 -24.0,0.01755765508786901,0.995,0.09316670020081608,0.976 -25.0,0.01650424305425841,0.995375,0.09312778677582582,0.976 -26.0,0.015547213664301573,0.996,0.09313668531755637,0.976 -27.0,0.014641359094149346,0.99625,0.09262190181973926,0.975 -28.0,0.013849651147343996,0.996375,0.0924357805757844,0.975 -29.0,0.013045399464671547,0.99675,0.0917367938821814,0.974 -30.0,0.01230803442885487,0.996875,0.09119741077156332,0.974 -31.0,0.011604525329266091,0.997375,0.09061579658698077,0.973 -32.0,0.010950352940047849,0.997625,0.08979792577002656,0.973 -33.0,0.010404225458991357,0.997625,0.08958915531131897,0.973 -34.0,0.009935318745837484,0.99775,0.0894026029257118,0.973 -35.0,0.009447877430231724,0.99775,0.08878696599874977,0.973 -36.0,0.008965917587196202,0.997875,0.08823171309225875,0.974 -37.0,0.0085215831353927,0.99825,0.08802536709661077,0.973 -38.0,0.008150154843487975,0.998375,0.08802838908367926,0.973 -39.0,0.007784229897606622,0.9985,0.08738821100377808,0.973 -40.0,0.007436991028673095,0.9985,0.08739398645698664,0.973 -41.0,0.0071192159066914345,0.998625,0.08716156616155904,0.973 -42.0,0.006813014565763649,0.998625,0.08662144756300286,0.974 -43.0,0.0065184378060441145,0.99875,0.08661521759366482,0.975 -44.0,0.006218632412817654,0.999,0.08645243663927514,0.973 -45.0,0.005935930757015673,0.99925,0.08618233388001328,0.973 -46.0,0.005689173931263665,0.99925,0.08599448294668054,0.973 -47.0,0.005451752123017894,0.99925,0.08606674891635356,0.973 -48.0,0.005212159804542434,0.99925,0.08593790210578428,0.973 -49.0,0.004984321267572547,0.99925,0.08585662011359306,0.973 -50.0,0.004777153036591143,0.999375,0.08578410196981058,0.973 -51.0,0.0045963000083057756,0.999375,0.0860511141682166,0.973 -52.0,0.004398328316017485,0.999375,0.08587840406791315,0.974 -53.0,0.00420255185037797,0.9995,0.08593016802382229,0.974 -54.0,0.004025727702078051,0.9995,0.0856310412373703,0.974 -55.0,0.003846586557412409,0.999625,0.08534700213479356,0.975 -56.0,0.003690200877363095,0.99975,0.0853559191273964,0.975 -57.0,0.003528336774508031,0.999875,0.08520610384158768,0.975 -58.0,0.0033746694859510206,1.0,0.08517913142356824,0.976 -59.0,0.0032474977825223453,1.0,0.08501889024451946,0.976 -60.0,0.0031240067693776782,1.0,0.0848126655488919,0.977 +1.0,1.0672269697519308,0.745,0.3154896337179667,0.894,6.8950551 +2.0,0.1912725967718522,0.939875,0.18994796911520165,0.937,6.4917396 +3.0,0.13750680303122417,0.95825,0.14552025052626202,0.95,6.7026874 +4.0,0.10600539294542247,0.968,0.12300881382807402,0.957,6.7345575 +5.0,0.0895785686951236,0.971625,0.1087237926245199,0.962,6.8608509 +6.0,0.07792385997209715,0.97525,0.0990134007840646,0.964,6.9115872 +7.0,0.06857964022931606,0.978875,0.09194584181372921,0.967,6.7975429 +8.0,0.06131704056989847,0.9805,0.08709034624278664,0.968,6.9278184 +9.0,0.055266330731975635,0.982375,0.08248557253423228,0.97,6.9246271 +10.0,0.0503285031091997,0.98475,0.07925273719721848,0.973,6.8895472 +11.0,0.045796471641668016,0.986,0.07626973107476949,0.976,6.9424098 +12.0,0.04195481785390929,0.986875,0.07509220297927882,0.976,6.9327283 +13.0,0.03867272959375796,0.987625,0.07379177486691342,0.975,6.9728977 +14.0,0.03572849416488416,0.988375,0.07317515100398074,0.976,6.9603044 +15.0,0.03302029851342425,0.989875,0.07340364612161045,0.979,6.9702403 +16.0,0.030738249568558456,0.990875,0.07289435577769543,0.978,7.011191 +17.0,0.028540951372596,0.991875,0.07266255568521712,0.98,7.0245984 +18.0,0.026634963373797713,0.99275,0.07305224689062484,0.98,7.0895 +19.0,0.02485411954746853,0.993375,0.07332345043231936,0.978,7.1151131 +20.0,0.023210141534566117,0.994125,0.07427359725206378,0.978,7.2813296 +21.0,0.021622792927153293,0.994875,0.07606467362568518,0.978,7.5442012 +22.0,0.02034490194481817,0.995,0.07589338531205875,0.978,7.2909892 +23.0,0.018977580908473558,0.99575,0.07610500912114254,0.977,7.2659957 +24.0,0.01769668843805958,0.996125,0.07613984192989082,0.977,7.2617284 +25.0,0.01648160390596983,0.996375,0.07555342763341072,0.977,7.2503283 +26.0,0.015396002311372663,0.99675,0.07494203073083414,0.977,7.1952044 +27.0,0.014465453072322028,0.99675,0.07375335675533735,0.978,7.3163035 +28.0,0.013468498837532962,0.99725,0.07278806802310099,0.978,7.328314 +29.0,0.01258707345631355,0.9975,0.07200631260885543,0.978,7.3445472 +30.0,0.011804466835341136,0.997875,0.07137613460647965,0.978,7.3730342 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd index bdad9be7c54..0672e6a5eb5 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_mnist.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 60, - "cols": 5, - "nnz": 300, + "rows": 30, + "cols": 6, + "nnz": 180, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-18 12:10:29 MEZ" + "created": "2026-02-16 08:13:44 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv index a0083b7d42b..d7b285690f7 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv @@ -1,90 +1,200 @@ -1.0,2.3052508540430696,0.0977101337876018,2.303963296401079,0.1044 -2.0,2.303944458910519,0.0991955085590826,2.3035221142468574,0.1044 -3.0,2.3036721115786545,0.09878209655974737,2.303348806933503,0.0986 -4.0,2.3035195526911423,0.09792514957620076,2.3032560152519927,0.0986 -5.0,2.3034184316980806,0.097782325078943,2.303197726078531,0.0986 -6.0,2.3033450284556385,0.09803940917400697,2.303157331622366,0.0986 -7.0,2.303288583012619,0.0981536687718132,2.3031273807533745,0.0986 -8.0,2.303243403976425,0.09775376017949143,2.303104046162939,0.0986 -9.0,2.303206158991423,0.097782325078943,2.30308516976094,0.0986 -10.0,2.303174749851404,0.09729672178826658,2.303069447232022,0.0986 -11.0,2.3031477810136294,0.09675398869868705,2.3030560461012657,0.0986 -12.0,2.303124283577331,0.09681111849759015,2.3030444108621255,0.0986 -13.0,2.3031035611613118,0.09712533239155725,2.3030341567229007,0.0986 -14.0,2.3030850987567844,0.09763950058168522,2.303025008490508,0.0986 -15.0,2.3030685062423215,0.0975293958783447,2.303016763823304,0.0986 -16.0,2.3030534819916095,0.09704379258766828,2.30300927028908,0.0958 -17.0,2.3030397886431664,0.09621541050357321,2.3030024105684137,0.0958 -18.0,2.3030272365062925,0.09641536479973409,2.302996092635205,0.0958 -19.0,2.3030156719152237,0.09658675419644341,2.3029902430729923,0.0958 -20.0,2.3030049688788137,0.09715805218547449,2.3029848024211437,0.0958 -21.0,2.3029950229784286,0.09724374688382915,2.3029797218672385,0.0958 -22.0,2.3029857468327006,0.09701522768821673,2.3029749608519454,0.0958 -23.0,2.3029770666752962,0.09695809788931362,2.302970485304816,0.0958 -24.0,2.3029689197369243,0.09701522768821673,2.302966266324296,0.0958 -25.0,2.3029612522174836,0.09712948728602294,2.3029622791757705,0.0958 -26.0,2.302954017697477,0.0968438382915074,2.302958502520811,0.0958 -27.0,2.30294717588051,0.09681527339205585,2.3029549178169453,0.0958 -28.0,2.302940691588364,0.09698666278876517,2.3029515088448482,0.0958 -29.0,2.3029345339507907,0.09644392969918565,2.302948261331938,0.0958 -30.0,2.3029286757469483,0.09627254030247633,2.302945162649764,0.0958 -31.0,2.302923092866068,0.09601545620741234,2.3029422015684697,0.0958 -32.0,2.3029177638626317,0.09615828070467011,2.3029393680558727,0.0958 -33.0,2.302912669587062,0.09624397540302476,2.3029366531117326,0.0958 -34.0,2.3029077928772526,0.09675814359315274,2.3029340486300307,0.0958 -35.0,2.302903118299415,0.09681527339205585,2.302931547283736,0.0958 -36.0,2.302898631929166,0.09692953298986207,2.3029291424277525,0.0958 -37.0,2.302894321165697,0.09681527339205585,2.3029268280166884,0.0958 -38.0,2.3028901745732164,0.09755796077779624,2.3029245985347893,0.0958 -39.0,2.302886181745126,0.09741513628053848,2.3029224489359157,0.0958 -40.0,2.302882333187097,0.09738657138108693,2.302920374591868,0.0958 -41.0,2.3028786202160454,0.09744370117999003,2.3029183712476917,0.0958 -42.0,2.3028750348725207,0.0974722660794416,2.3029164349828504,0.0958 -43.0,2.302871569844405,0.0976436554761509,2.302914562177353,0.0958 -44.0,2.3028682184002816,0.09767222037560247,2.3029127494820916,0.0958 -45.0,2.3028649743310323,0.0975293958783447,2.3029109937927728,0.0958 -46.0,2.302861831898485,0.0975293958783447,2.3029092922269156,0.0958 -47.0,2.3028587857900877,0.09767222037560247,2.3029076421035097,0.0958 -48.0,2.302855831078908,0.09798643426956956,2.302906040924949,0.0958 -49.0,2.302852963188079,0.09804356406847267,2.302904486360953,0.0958 -50.0,2.3028501778592187,0.09801499916902111,2.302902976234211,0.0958 -51.0,2.3028474711242892,0.09847203756024597,2.3029015085075333,0.0958 -52.0,2.302844839280435,0.09855773225860064,2.302900081272322,0.0958 -53.0,2.3028422788674385,0.09844347266079442,2.3028986927381987,0.0958 -54.0,2.3028397866475188,0.09838634286189131,2.3028973412236535,0.0958 -55.0,2.3028373595871368,0.09858629715805219,2.3028960251475996,0.0958 -56.0,2.302834994840583,0.09844347266079442,2.302894743021725,0.0958 -57.0,2.3028326897351916,0.09847203756024597,2.30289349344355,0.0958 -58.0,2.302830441757941,0.09844347266079442,2.302892275090126,0.0958 -59.0,2.3028282485432734,0.09835777796243976,2.302891086712291,0.0958 -60.0,2.3028261078621295,0.09841490776134287,2.3028899271294314,0.0958 -61.0,2.3028240176118455,0.09844347266079442,2.3028887952246992,0.0958 -62.0,2.3028219758070656,0.09870055675585841,2.302887689940629,0.0958 -63.0,2.302819980571373,0.09867199185640685,2.3028866102751295,0.0958 -64.0,2.3028180301296777,0.09884338125311617,2.302885555277795,0.0958 -65.0,2.3028161228012136,0.09875768655476151,2.302884524046522,0.0958 -66.0,2.302814256993192,0.09878625145421306,2.3028835157243908,0.0958 -67.0,2.3028124311948646,0.09878625145421306,2.302882529496792,0.0958 -68.0,2.3028106439721734,0.09870055675585841,2.302881564588779,0.0958 -69.0,2.3028088939627684,0.09872912165530996,2.302880620262613,0.0958 -70.0,2.3028071798714174,0.09872912165530996,2.3028796958155,0.0958 -71.0,2.3028055004658077,0.09870055675585841,2.3028787905774917,0.0958 -72.0,2.302803854572614,0.09867199185640685,2.302877903909538,0.0958 -73.0,2.302802241073912,0.09884338125311617,2.302877035201682,0.0958 -74.0,2.302800658903833,0.09884338125311617,2.30287618387138,0.0958 -75.0,2.3027991070454563,0.0990147706498255,2.3028753493619405,0.0958 -76.0,2.302797584527948,0.0990147706498255,2.302874531141072,0.0958 -77.0,2.3027960904238864,0.0990147706498255,2.3028737286995273,0.0958 -78.0,2.3027946238467796,0.0990719004487286,2.302872941549839,0.0958 -79.0,2.302793183948759,0.0990719004487286,2.30287216922514,0.0958 -80.0,2.3027917699184237,0.09904333554927705,2.3028714112780633,0.0958 -81.0,2.3027903809788377,0.09904333554927705,2.3028706672797075,0.0958 -82.0,2.302789016385661,0.09892907595147084,2.3028699368186745,0.0958 -83.0,2.302787675425392,0.09895764085092239,2.302869219500162,0.0958 -84.0,2.302786357413738,0.09884338125311617,2.3028685149451196,0.0958 -85.0,2.3027850616940877,0.09875768655476151,2.3028678227894512,0.0958 -86.0,2.302783787636076,0.09847203756024597,2.302867142683268,0.0958 -87.0,2.3027825346342436,0.09838634286189131,2.3028664742901888,0.0958 -88.0,2.3027813021067707,0.09838634286189131,2.3028658172866763,0.0958 -89.0,2.3027800894943056,0.09838634286189131,2.302865171361421,0.0958 -90.0,2.3027788962588445,0.09847203756024597,2.302864536214754,0.0958 +1.0,2.264531363306536,0.17525,2.2524209891590146,0.136,15.1192633 +2.0,2.1036487981603926,0.209875,2.116105637732411,0.191,16.3926771 +3.0,2.0673184383279657,0.21875,2.0671178045527436,0.2095,15.7123529 +4.0,2.0206893951685068,0.247875,2.045779213051997,0.251,20.0922177 +5.0,1.97764013055239,0.26375,2.0122595373957104,0.2555,17.1218173 +6.0,1.9110808348664199,0.2935,1.8071641298339884,0.3345,16.8001048 +7.0,1.8373279193686338,0.329125,1.7384360651889805,0.3635,16.5603975 +8.0,1.7721336870687594,0.35925,1.6549900866813188,0.3995,14.9842052 +9.0,1.7284806405205346,0.374625,1.6424660309092987,0.4025,15.8602069 +10.0,1.6902372408532687,0.393875,1.568710661563789,0.428,15.6008094 +11.0,1.6633654757170033,0.3985,1.5891899754562873,0.4285,15.3528733 +12.0,1.6281171627735753,0.415375,1.5761536289863762,0.4345,15.0810408 +13.0,1.6241790499093782,0.412375,1.6957486992845836,0.3885,13.4078325 +14.0,1.5958414734531405,0.425,1.5789583560492217,0.4465,14.7857495 +15.0,1.5857690798780164,0.4315,1.5728320917913625,0.442,14.6559205 +16.0,1.5616704638698944,0.436,1.5732617778566487,0.4455,14.6416249 +17.0,1.567343323934309,0.43275,1.5417168289578709,0.453,13.3608869 +18.0,1.5459703241960894,0.443375,1.563004802215811,0.449,14.5187628 +19.0,1.5273336266738566,0.4515,1.5043120348145993,0.4645,14.4842276 +20.0,1.5147094180626144,0.451,1.4882037205512182,0.471,14.4512046 +21.0,1.4673836048435869,0.472375,1.452130933591962,0.4905,12.904708 +22.0,1.4655903102751024,0.469875,1.4605752210852259,0.48,14.4928238 +23.0,1.4619555365595454,0.478625,1.4484644897513659,0.49,14.6287528 +24.0,1.452639168121956,0.473625,1.4456110531273243,0.489,12.9840592 +25.0,1.4490949956464987,0.47675,1.4542072289626675,0.481,14.6030493 +26.0,1.443888470229089,0.473125,1.4430465220826345,0.494,14.6328587 +27.0,1.439330810640644,0.4785,1.4268997203677212,0.4935,14.6441291 +28.0,1.438276643229753,0.48225,1.4400235665218124,0.485,12.9043445 +29.0,1.4291816959216714,0.48525,1.424907154359232,0.4945,14.5867728 +30.0,1.4185051060646012,0.48325,1.3990301839259218,0.5,14.5967426 +31.0,1.4191328307261262,0.491,1.4284329551595496,0.494,12.9537765 +32.0,1.4199606614381441,0.487,1.422892406019973,0.498,14.55842 +33.0,1.4031712674318453,0.4935,1.4130693571829114,0.496,14.5796997 +34.0,1.4048654394719795,0.497875,1.4158720643019476,0.497,14.6541082 +35.0,1.4028745586530076,0.4945,1.3968087234441189,0.499,13.6315132 +36.0,1.3923774848700783,0.496625,1.4041774976596844,0.503,16.7142031 +37.0,1.3872566161026847,0.50125,1.38917197016695,0.5065,16.383204 +38.0,1.378412535460756,0.5065,1.4050737260773256,0.5045,14.6910836 +39.0,1.3786045281688108,0.5055,1.3895179012495684,0.5065,15.0160016 +40.0,1.3804915273249434,0.499375,1.4009439596465,0.496,15.2889884 +41.0,1.3709136595868627,0.509625,1.3720189037229937,0.5045,16.2083134 +42.0,1.3644766958907186,0.512875,1.366914430419465,0.5095,14.0672407 +43.0,1.3663732941302456,0.508,1.3660117725603969,0.519,15.231735 +44.0,1.3501037832767524,0.513125,1.3696464767009164,0.5105,15.234361 +45.0,1.3543506136918446,0.515375,1.365825435684687,0.513,13.8195529 +46.0,1.3590577601242946,0.516375,1.3655506231957335,0.512,15.7402211 +47.0,1.353690261687157,0.51225,1.3649695233038823,0.514,15.8925841 +48.0,1.3639233496841165,0.50875,1.3624995782440876,0.512,13.7750749 +49.0,1.3368925007185397,0.519375,1.3588574953836818,0.5135,15.288518 +50.0,1.3363157937213859,0.51925,1.3565843837375187,0.5175,15.6729901 +51.0,1.337341284925157,0.522875,1.3624873241966318,0.5155,13.4714207 +52.0,1.3347898479097353,0.521375,1.357563852923182,0.5155,15.6345323 +53.0,1.3388240010485097,0.515375,1.3518248735852874,0.5145,15.9921757 +54.0,1.3282962813099992,0.529625,1.3595476251946146,0.514,13.803205 +55.0,1.3445866882333266,0.51725,1.3651002703473858,0.5035,14.9594587 +56.0,1.3377694569703154,0.521125,1.3565238057370486,0.515,14.9381128 +57.0,1.3297816020027813,0.52375,1.3503421153705923,0.5125,13.8143254 +58.0,1.3219488155287928,0.5235,1.351774773183257,0.5135,15.4137554 +59.0,1.3265562295382303,0.52675,1.354513369222431,0.5175,16.0579631 +60.0,1.3312265943618973,0.52325,1.3524720831070618,0.516,14.2554182 +61.0,1.3272178009201925,0.523875,1.3533551356165001,0.517,16.5495722 +62.0,1.3236307611456566,0.52225,1.3507945299332174,0.5155,15.7370495 +63.0,1.3253751338232214,0.514875,1.3478426546084752,0.516,13.4004035 +64.0,1.3167046599698915,0.527875,1.3481887501247534,0.5205,14.9484908 +65.0,1.3150668925319913,0.528375,1.3482548752501837,0.516,15.7404474 +66.0,1.3212383370218517,0.524875,1.346726240590312,0.515,14.4361898 +67.0,1.3204936176451465,0.5285,1.3487230940882973,0.515,16.0911403 +68.0,1.310422387927823,0.52925,1.347837421228968,0.5175,15.5049029 +69.0,1.3329962450791217,0.521125,1.3470429745764512,0.518,14.3225444 +70.0,1.3071627232145697,0.529625,1.3442955184798917,0.518,15.2111932 +71.0,1.2996784295378554,0.532625,1.3446045859712306,0.5215,16.206452 +72.0,1.3041435018356875,0.538375,1.3463207004736852,0.516,13.9512571 +73.0,1.3117658652715567,0.52575,1.3454812070693083,0.5175,16.017497 +74.0,1.309219960022251,0.531875,1.346387597365895,0.5155,16.0621942 +75.0,1.313202685332761,0.52725,1.3442610680054343,0.519,14.4096378 +76.0,1.3127296629859724,0.529125,1.3422821573010555,0.5195,16.2684382 +77.0,1.3088257320135446,0.528875,1.3446410056685385,0.513,16.1698006 +78.0,1.3070981878854082,0.5285,1.3420348329163059,0.5175,14.3655351 +79.0,1.3102636495288122,0.5315,1.343603039042454,0.518,16.2607702 +80.0,1.3028561158995375,0.536375,1.3424362608029832,0.519,16.0204513 +81.0,1.3007630027712558,0.53575,1.3398355325193145,0.521,14.5797663 +82.0,1.3134073802575998,0.534875,1.3416543719171308,0.519,16.2121146 +83.0,1.3059576184223014,0.52925,1.3399359247727363,0.522,16.2911817 +84.0,1.3047267869111328,0.52775,1.340288187093933,0.523,14.0880504 +85.0,1.2835015840061434,0.536875,1.339292322044208,0.521,16.2294541 +86.0,1.3027022357710711,0.53025,1.338068561547965,0.523,15.274938 +87.0,1.2894236325012223,0.534,1.3395109845010853,0.5205,14.2536689 +88.0,1.3027552245659266,0.52925,1.3390355031863295,0.519,16.2064674 +89.0,1.314820046532236,0.528125,1.339397137745383,0.52,16.0111338 +90.0,1.2969517512996491,0.5375,1.3378503233559176,0.5245,14.220893 +91.0,1.3032467766868938,0.53475,1.3380473610470531,0.521,16.0427978 +92.0,1.3020578520699047,0.534375,1.337908818371762,0.522,15.7429323 +93.0,1.2921965984934127,0.535875,1.3389740429370327,0.519,14.3099935 +94.0,1.3049342748053159,0.534,1.3389500611094294,0.5215,15.1546298 +95.0,1.2869172680524168,0.53975,1.3377752598802848,0.5225,16.0374185 +96.0,1.2892105427249119,0.53225,1.337303638711213,0.522,14.8088073 +97.0,1.3015571876516687,0.537125,1.3383695642561324,0.52,16.4182009 +98.0,1.3002865268480472,0.5315,1.3366133159704687,0.521,16.3854835 +99.0,1.2845867329782805,0.537625,1.3370824295445132,0.524,15.7797019 +100.0,1.2959321335635203,0.538625,1.3359542455340458,0.522,15.9973989 +101.0,1.2921367026971824,0.542875,1.33516581524642,0.5245,16.1556855 +102.0,1.3012235312277562,0.52975,1.3358909481369263,0.524,14.3586786 +103.0,1.2848732553600015,0.54025,1.3346965165481333,0.5235,16.2865366 +104.0,1.2911549604913042,0.5415,1.335535143232428,0.522,16.2141815 +105.0,1.28035494690788,0.543,1.3353588392887596,0.5215,13.6648141 +106.0,1.2924818700935368,0.536125,1.3368862319774608,0.5215,15.9270246 +107.0,1.2904330481478798,0.535625,1.3358733571592842,0.5225,16.213704 +108.0,1.292712732753748,0.536,1.3346608752502658,0.524,14.1965963 +109.0,1.2780086918498348,0.5405,1.3349210912469138,0.5245,16.1199759 +110.0,1.2879306301212579,0.5365,1.3341388994530403,0.523,15.745916 +111.0,1.3022143023268191,0.536,1.334916362080222,0.523,13.9348722 +112.0,1.2879041052322764,0.53925,1.3350402207538645,0.522,15.6203761 +113.0,1.2851197665531398,0.541125,1.3348180476716311,0.5235,15.2566172 +114.0,1.2808228990590773,0.544875,1.33427858116211,0.5225,13.9109513 +115.0,1.2862879264071587,0.537875,1.3341600493293166,0.525,16.2575684 +116.0,1.2897378844187386,0.540625,1.3345218764580584,0.522,16.2005281 +117.0,1.2863680863584062,0.5405,1.3346601122804047,0.522,14.1893536 +118.0,1.295472390493655,0.540875,1.3336387075807161,0.5225,16.0611998 +119.0,1.294368435606113,0.533875,1.3337353839817345,0.5225,15.8792932 +120.0,1.2916438892564652,0.536875,1.3342602990004797,0.521,14.0947471 +121.0,1.289313781130236,0.53725,1.3339817012534936,0.5215,15.3446459 +122.0,1.2806683445400495,0.542375,1.3344297678579964,0.522,15.7714217 +123.0,1.2935331175264637,0.534625,1.3340954806941063,0.521,14.659198 +124.0,1.293726096618768,0.539125,1.334356401031101,0.523,15.8610345 +125.0,1.2889151206884653,0.53325,1.3343659406094,0.521,16.0753105 +126.0,1.286142135667246,0.538375,1.3339063175720378,0.5245,14.3024143 +127.0,1.2891570727706043,0.539375,1.3339737428410479,0.5245,16.0072251 +128.0,1.2951245790345738,0.535625,1.3342535409792609,0.5255,15.8702727 +129.0,1.2958280449662474,0.542875,1.3346272629010643,0.523,13.8500479 +130.0,1.2820414364036996,0.539,1.3340152937015917,0.524,15.6921369 +131.0,1.293762990584683,0.535625,1.3336577925917428,0.524,16.0344213 +132.0,1.2983325279674265,0.5315,1.3337345533416305,0.5235,14.1520503 +133.0,1.2870033580327678,0.538375,1.3335127198244459,0.524,16.2214209 +134.0,1.2889157501200066,0.537625,1.3333061161102449,0.5235,16.4031728 +135.0,1.2886114766265373,0.535625,1.3337254259803533,0.5215,13.8848493 +136.0,1.2939695034136753,0.535125,1.3341858223545073,0.524,16.7677424 +137.0,1.2950125452394161,0.525875,1.3340652120332983,0.5225,15.289456 +138.0,1.283786827161245,0.546375,1.3337751567905312,0.523,14.071376 +139.0,1.2805583985666478,0.53825,1.3334550636180937,0.523,16.01665 +140.0,1.2937217986088576,0.53225,1.3335698796317401,0.5205,16.1573857 +141.0,1.2912754327389204,0.537875,1.3336561061519638,0.5205,14.2628154 +142.0,1.2929130884983318,0.534625,1.3338549771168016,0.521,15.9366074 +143.0,1.2838901961015974,0.53825,1.3336869759204875,0.521,15.1808514 +144.0,1.287138291174084,0.540125,1.3334967722543458,0.5215,14.1995845 +145.0,1.2856155827077795,0.533,1.3333403323550044,0.522,16.0970121 +146.0,1.2946832133632542,0.5395,1.3334058988367772,0.5225,15.8439865 +147.0,1.2758869662215424,0.542625,1.3332129423095724,0.5225,14.0033164 +148.0,1.2909422990768142,0.537375,1.3332671641542695,0.524,15.8590276 +149.0,1.2836525777523138,0.543875,1.3333441600657678,0.524,16.3236664 +150.0,1.2882770829546208,0.539125,1.333568668532656,0.5235,14.2852665 +151.0,1.28589908136827,0.540625,1.3334725951835673,0.523,15.9381744 +152.0,1.2825370639575737,0.540125,1.3334763530633857,0.523,15.4325727 +153.0,1.2842598514754808,0.53975,1.3333864950658108,0.5235,14.1405752 +154.0,1.2855673499068023,0.543375,1.3331826815659498,0.523,15.4006675 +155.0,1.2796685507143122,0.5415,1.3330995934433378,0.5235,16.0489669 +156.0,1.290990778769658,0.54,1.333156108596848,0.524,14.4498774 +157.0,1.2949980807144286,0.53425,1.3335114230071825,0.522,15.2942715 +158.0,1.2935658819225175,0.538,1.3335606470214256,0.523,14.9612473 +159.0,1.2834168916074506,0.5395,1.3335287949636743,0.5225,13.4138468 +160.0,1.296543034776782,0.535375,1.333737736584474,0.5235,14.9465464 +161.0,1.2899502968686272,0.534125,1.3335085777430096,0.524,14.999506 +162.0,1.2972334615899725,0.53325,1.3335426897378415,0.5225,13.338925 +163.0,1.2873149534945814,0.535,1.3333769321550852,0.5215,14.8673685 +164.0,1.2851488515887488,0.536,1.3332288139853783,0.5225,14.9184405 +165.0,1.2830425022188514,0.545125,1.3334076888951572,0.5225,13.3890631 +166.0,1.286687135851395,0.540125,1.3334718578168638,0.522,14.9619712 +167.0,1.2868045200466687,0.54025,1.3334500023116105,0.5225,14.9980383 +168.0,1.2947535000420507,0.531625,1.3335005293396933,0.523,13.3628698 +169.0,1.292758856119712,0.533625,1.3335703985178562,0.523,15.0637834 +170.0,1.2983691461121052,0.538375,1.3334344857788534,0.5225,14.9735214 +171.0,1.289527062409313,0.534375,1.3334033251743733,0.522,13.4100774 +172.0,1.3003175776723468,0.53225,1.333322809469281,0.5235,15.0178233 +173.0,1.2873977064134468,0.539875,1.333385359365248,0.5235,14.9874359 +174.0,1.2912027145687395,0.534125,1.333281408885529,0.5235,13.3680556 +175.0,1.2857499792552782,0.5395,1.3332893523934572,0.524,14.8997864 +176.0,1.2952536463807691,0.535625,1.333267411007877,0.5235,14.986912 +177.0,1.2934431431671598,0.538,1.3332286427403264,0.5235,13.3794938 +178.0,1.2814326227915276,0.538125,1.3331327377305882,0.523,14.945538 +179.0,1.2822530365926654,0.543375,1.33310288950039,0.5235,14.9358134 +180.0,1.2865291845758648,0.537125,1.3330728602747466,0.5235,13.4063317 +181.0,1.30013264712133,0.53525,1.3330393670563834,0.5235,15.0042163 +182.0,1.2846878344323702,0.542375,1.3329867365498702,0.523,14.9085367 +183.0,1.2885621727392367,0.547375,1.3330173184484886,0.5225,13.4352478 +184.0,1.2782688624893286,0.54775,1.333030368499129,0.522,14.9053492 +185.0,1.2817435934018753,0.540625,1.332988076168602,0.5225,14.9291116 +186.0,1.289142721196581,0.539875,1.3330034919907876,0.522,13.4718049 +187.0,1.2855187500130607,0.5405,1.3329439350244259,0.522,14.9128477 +188.0,1.2976619422131532,0.534875,1.3328755163666313,0.522,14.9392618 +189.0,1.2910918442304136,0.5425,1.3328346289984203,0.5225,13.3626048 +190.0,1.302245583561614,0.529375,1.3328751383699933,0.522,14.9435189 +191.0,1.281956422633208,0.535625,1.3328262730547544,0.522,14.9694986 +192.0,1.2875774740690604,0.541375,1.3328226506532501,0.5225,13.3329662 +193.0,1.2993898158690094,0.534,1.3328685771029491,0.5225,14.9577163 +194.0,1.2877930161069044,0.538875,1.3328580032329884,0.5225,14.9177301 +195.0,1.2866413280922961,0.5355,1.3329425604660379,0.522,13.3912778 +196.0,1.2894215967969298,0.539625,1.3328986911022078,0.5215,14.9634809 +197.0,1.2818862197927154,0.5375,1.332957556219699,0.5225,14.9664049 +198.0,1.289979329334987,0.5365,1.333012498285308,0.5225,13.4005485 +199.0,1.2966938574299653,0.5345,1.3329807949430375,0.522,14.8990188 +200.0,1.2832790991395928,0.539625,1.3329844298134985,0.522,15.2311098 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd index 3337bcddcd5..613f736b101 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_cifar.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 90, - "cols": 5, - "nnz": 450, + "rows": 200, + "cols": 6, + "nnz": 1200, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-17 15:02:57 MEZ" + "created": "2026-02-15 15:40:15 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv new file mode 100644 index 00000000000..e6aa47668c4 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv @@ -0,0 +1,200 @@ +1.0,2.3157880689928874,0.143,2.266711392098975,0.1275,12.5512191 +2.0,2.1409819745452863,0.196875,2.106326467963478,0.2145,10.9266592 +3.0,2.079099223017421,0.21925,1.9766032064628472,0.258,11.1126151 +4.0,1.9894474886042735,0.2685,1.9605719971143494,0.2845,11.6153142 +5.0,1.9445644817807013,0.288375,1.945481640781369,0.307,12.2193038 +6.0,1.8741544326569886,0.332,1.7728359754282186,0.357,11.138006 +7.0,1.848646059909481,0.328625,1.8563254439547625,0.3205,10.4724669 +8.0,1.8112829336610905,0.34225,1.7085865568144627,0.3885,10.0896784 +9.0,1.7862062127325131,0.354125,1.7231854470642987,0.379,9.8884766 +10.0,1.7615489164606373,0.3585,1.6706740558799607,0.3995,9.3439085 +11.0,1.741095913727558,0.36075,1.6685849942200963,0.3845,9.1406507 +12.0,1.7260942725161812,0.3725,1.6836035145344073,0.3825,9.0319209 +13.0,1.7103223143744306,0.38075,1.6252963535989209,0.413,8.929766 +14.0,1.6721708030090296,0.392875,1.579800951716784,0.425,8.7924606 +15.0,1.6552514567223222,0.40175,1.6093665378393254,0.4165,8.7071949 +16.0,1.636435211516211,0.409,1.530321263519919,0.447,8.6658207 +17.0,1.6154527388112714,0.41675,1.5474830096809555,0.445,11.47643 +18.0,1.6232995004256194,0.423875,1.58858502932433,0.4305,13.7200089 +19.0,1.6143557396827017,0.417625,1.5431519693269369,0.454,13.6679685 +20.0,1.5850691889947872,0.42925,1.54828877967272,0.4565,11.5349927 +21.0,1.5467506125070962,0.450875,1.530231503936324,0.4615,13.7097609 +22.0,1.5305861092354516,0.44625,1.5043873242759405,0.469,13.4003398 +23.0,1.5184436049294818,0.450625,1.4902141195062713,0.465,11.4745623 +24.0,1.525958265380638,0.451125,1.4919576338072948,0.4565,13.7305429 +25.0,1.5118629035459226,0.458125,1.4779299883721067,0.4735,13.6704117 +26.0,1.5035068279722636,0.4625,1.4716430900419533,0.475,11.9292932 +27.0,1.493542350279005,0.4625,1.4599315157446644,0.475,13.6995191 +28.0,1.4878278914316323,0.46475,1.5048545357123067,0.4645,13.9638124 +29.0,1.486186755563834,0.462,1.4805201952959401,0.4715,11.6843123 +30.0,1.4752773511419017,0.464375,1.454878589808295,0.483,14.1432484 +31.0,1.466371030567353,0.47175,1.437423002759957,0.4895,13.9879232 +32.0,1.4722916539802005,0.47225,1.4698879134985634,0.479,12.1209128 +33.0,1.4582535100579879,0.476875,1.4514096707219666,0.4825,13.7909428 +34.0,1.4665625864076923,0.476125,1.4513490951624788,0.475,13.7060217 +35.0,1.450695571252721,0.47525,1.4593336607735035,0.484,11.975205 +36.0,1.4495146613839205,0.4835,1.44873788506632,0.479,13.3180128 +37.0,1.438413299803386,0.483,1.4368662250583573,0.484,13.2186843 +38.0,1.43207925982626,0.490375,1.457708896792147,0.4785,11.3311222 +39.0,1.436544235902102,0.483875,1.443137550599694,0.481,13.2581312 +40.0,1.4291147348879263,0.49125,1.4548008740354403,0.48,13.2651795 +41.0,1.4177326880844603,0.49675,1.385246427821156,0.502,11.7076944 +42.0,1.4135705231281257,0.4885,1.3986385495675402,0.4995,14.0297879 +43.0,1.4058895944503582,0.496875,1.4039026083109798,0.4995,12.0711571 +44.0,1.4119846640413494,0.495625,1.3971678877623277,0.505,13.9127872 +45.0,1.4028407512333612,0.497125,1.3785696960176375,0.508,12.1862109 +46.0,1.3949695773459159,0.491625,1.3836750487252991,0.5085,14.4667225 +47.0,1.411741215237472,0.489,1.4010050066701447,0.5025,12.1904013 +48.0,1.3980950882818226,0.50125,1.3918663084512155,0.5035,14.175029 +49.0,1.393821381727539,0.504,1.3838073639729,0.5085,11.9950756 +50.0,1.3894921368446513,0.50025,1.3899047800459923,0.508,13.8684372 +51.0,1.3965245260528532,0.493,1.3844490079518912,0.5085,11.8604857 +52.0,1.3793064160984645,0.51,1.383454716550735,0.5045,14.1109849 +53.0,1.3912244383153525,0.502,1.3754343884224494,0.5085,12.0991638 +54.0,1.3785888563322664,0.503125,1.3748788155029616,0.508,14.3859225 +55.0,1.3762015227068793,0.508625,1.3830224900200274,0.511,11.9410074 +56.0,1.3655160462991154,0.508875,1.3725258879549327,0.516,13.7040802 +57.0,1.3744411907004717,0.5085,1.3795354180139374,0.515,12.0146637 +58.0,1.3718616371840904,0.51225,1.3785682558754342,0.5105,14.0311921 +59.0,1.3814933339669948,0.506375,1.3696816259709597,0.5155,12.1441999 +60.0,1.3690715952399044,0.514875,1.3759583121264691,0.512,14.1361634 +61.0,1.3511693044388786,0.511625,1.3583146517846747,0.513,11.9490806 +62.0,1.369119600963849,0.508375,1.3608122424854772,0.5155,14.1257241 +63.0,1.3553416577524002,0.51775,1.3602560609339485,0.517,12.1039484 +64.0,1.3675879828941189,0.5155,1.3586298557307157,0.519,14.4321177 +65.0,1.3554543194852524,0.515125,1.3587258876617896,0.515,12.2327826 +66.0,1.3602361854034586,0.51775,1.3567784524343074,0.513,14.5178849 +67.0,1.3580991534821787,0.51325,1.361254655098313,0.515,12.8226197 +68.0,1.3564725659127264,0.511375,1.3567669420025505,0.5175,14.3373823 +69.0,1.367403085025942,0.506625,1.3577766821789408,0.515,12.5606728 +70.0,1.3516890530383963,0.514125,1.3572058348669185,0.5185,14.5696158 +71.0,1.3546194877970033,0.51275,1.3559996188382946,0.5145,12.7672584 +72.0,1.3488886076940074,0.521375,1.3547158656296738,0.516,14.5743038 +73.0,1.3473020072496498,0.517125,1.351236398951223,0.5145,11.8103545 +74.0,1.3510353409669316,0.515375,1.3552412362003086,0.519,13.7639647 +75.0,1.3512073115118657,0.51775,1.3545110652482681,0.5155,11.6222744 +76.0,1.347657641397583,0.520625,1.3522552871224227,0.5155,14.2112879 +77.0,1.347567496322903,0.517625,1.352590562383749,0.515,12.0969011 +78.0,1.3492111530254784,0.5145,1.3522919773902298,0.5135,13.9660561 +79.0,1.3401332939050763,0.516,1.3520117421246431,0.516,12.4209539 +80.0,1.341666778779767,0.512,1.3484608878899849,0.52,14.2447223 +81.0,1.3388053039809567,0.522375,1.349975786956574,0.5185,12.1933038 +82.0,1.3248273774884733,0.524375,1.3491935964203958,0.523,13.9520394 +83.0,1.3372436796152822,0.524125,1.3480744632813892,0.518,12.6271241 +84.0,1.3448557224242477,0.5175,1.3505950716925101,0.5175,14.6230825 +85.0,1.3290038732568863,0.52825,1.3482386006512708,0.518,12.0987562 +86.0,1.3391579167758731,0.525625,1.3466445351311933,0.521,14.1919864 +87.0,1.3325859716721962,0.519125,1.3489327377440552,0.5175,11.7293726 +88.0,1.333540532434537,0.525625,1.3470617320016176,0.5215,14.2790142 +89.0,1.3524335548471744,0.511125,1.3478045876405493,0.5195,12.5790056 +90.0,1.3306246466736955,0.527625,1.3438939046783587,0.522,13.9712426 +91.0,1.343057271047558,0.522125,1.3469285098402757,0.5195,11.9473189 +92.0,1.3312068016889718,0.52725,1.3465891326274995,0.5155,13.6411942 +93.0,1.330688667544318,0.523,1.348229550840398,0.5185,11.7721963 +94.0,1.325353026497771,0.52725,1.3482617434104855,0.5205,13.4833187 +95.0,1.334649252471791,0.5185,1.3468837036891863,0.5175,12.2106954 +96.0,1.3347302287769565,0.5195,1.3466383478838755,0.519,14.0990139 +97.0,1.313097860721014,0.53,1.3452729166805197,0.521,11.9987866 +98.0,1.3310380545459513,0.53075,1.3479693707241243,0.5195,13.9081747 +99.0,1.329073769717886,0.53275,1.34659769937679,0.52,12.2095898 +100.0,1.3213308498674283,0.5205,1.3448444469219192,0.5175,14.2702717 +101.0,1.33469093310411,0.5235,1.345583369999924,0.5205,12.1985062 +102.0,1.3332826994106683,0.5235,1.3448925537348078,0.521,14.1301378 +103.0,1.3269464727996603,0.519625,1.34440216379681,0.5225,12.2085062 +104.0,1.3328728178672153,0.518875,1.3448144422684594,0.523,13.5566751 +105.0,1.333911003336845,0.524625,1.3437538105734677,0.5235,11.9244457 +106.0,1.3300348105199205,0.5275,1.344800059518195,0.5215,14.2653785 +107.0,1.325329527314247,0.525375,1.342851655576912,0.5225,12.6552612 +108.0,1.3127596317524333,0.530125,1.3443464685730993,0.5225,14.0137707 +109.0,1.3249476456714924,0.527875,1.3442383624245526,0.5215,12.507873 +110.0,1.3260743342758279,0.532,1.3437622853568998,0.5235,13.9881505 +111.0,1.3184990213319925,0.534,1.3427849469315394,0.5225,12.3655972 +112.0,1.3266201589657443,0.524375,1.343874886864482,0.5245,14.5072942 +113.0,1.3281433831168181,0.529625,1.343742851633507,0.5245,12.2880757 +114.0,1.3304171460684249,0.525375,1.342382895268418,0.5215,14.6972253 +115.0,1.3157801355260865,0.52725,1.3415339890685438,0.5245,11.7250201 +116.0,1.3227598303731074,0.531625,1.3428817799840658,0.5215,13.6256107 +117.0,1.3288785467620008,0.524125,1.3439005136897915,0.521,11.8930585 +118.0,1.3304828197003238,0.515875,1.3438291198335433,0.524,13.6179918 +119.0,1.320879491367843,0.52575,1.3420942762905566,0.5225,11.7203504 +120.0,1.3233530557362179,0.52225,1.343671050663574,0.5205,13.5814375 +121.0,1.3279785538380084,0.52025,1.3431729206595784,0.521,11.713864 +122.0,1.3300042015120073,0.5275,1.342610016533775,0.52,13.5257199 +123.0,1.3352865531931173,0.52625,1.3430338918012255,0.5215,11.6806667 +124.0,1.3335295140875163,0.52425,1.342829839570433,0.521,13.5821248 +125.0,1.3133556520215304,0.533,1.3419767338348298,0.523,11.675267 +126.0,1.315430291800771,0.52825,1.3415590454691197,0.5215,13.5700286 +127.0,1.3210771695976777,0.525375,1.3417774801359468,0.5225,11.6689644 +128.0,1.3091244298523645,0.533,1.3420268998197868,0.522,13.562454 +129.0,1.312787960887864,0.53175,1.3420268485243139,0.5215,11.6587314 +130.0,1.3177353019258728,0.528125,1.3422115187901804,0.523,13.5619759 +131.0,1.3158628785913244,0.524,1.3417076484847141,0.5215,11.7852028 +132.0,1.3206504642614116,0.529875,1.3413260603598482,0.5235,13.5756216 +133.0,1.3221328060291435,0.52725,1.3416256816810885,0.525,11.7322522 +134.0,1.318477307628622,0.5225,1.3419321095461603,0.524,13.619538 +135.0,1.3029324136019587,0.534125,1.3413873293242742,0.5245,11.6802499 +136.0,1.320664447452476,0.526125,1.342561311547229,0.522,13.5487977 +137.0,1.3194386842744847,0.5305,1.3416685474204788,0.5205,11.733151 +138.0,1.31776901257688,0.536375,1.3419333257483705,0.5205,13.661361 +139.0,1.3161809297053153,0.528125,1.3417633471804291,0.519,11.7107709 +140.0,1.3277395031858796,0.522875,1.3416425003868109,0.5205,14.1153315 +141.0,1.3151062080340645,0.536,1.34148044792132,0.521,12.8290446 +142.0,1.3134652301440348,0.527625,1.3412867615049278,0.5215,14.2895394 +143.0,1.309437372013916,0.5325,1.341450662395274,0.5215,12.3450018 +144.0,1.3146498174430659,0.526875,1.3418809577374815,0.522,13.775643 +145.0,1.3230842496135176,0.522125,1.3418493171206105,0.5215,11.9432078 +146.0,1.3131875338895922,0.529625,1.3415062085585887,0.5225,14.5174607 +147.0,1.3113119887744038,0.52525,1.3412598046936655,0.5225,12.8940764 +148.0,1.3215377276593487,0.524,1.3412662776463833,0.5215,15.0257364 +149.0,1.324192619865555,0.526,1.3410356279461473,0.521,12.94243 +150.0,1.3303721754527122,0.52475,1.3412016127588178,0.521,14.4305974 +151.0,1.3200638396637712,0.527125,1.3412067965858954,0.522,12.5709783 +152.0,1.3223024032975392,0.524,1.3406070703088209,0.5215,14.0955406 +153.0,1.3191098008777513,0.5255,1.3409337693594157,0.521,12.236799 +154.0,1.3129426417184222,0.529875,1.3410091962326587,0.523,14.2121331 +155.0,1.309660375194985,0.5345,1.3408431892084285,0.523,12.5007225 +156.0,1.3185716122015687,0.527125,1.341238890734191,0.522,13.8466564 +157.0,1.3161287628572507,0.523375,1.3409632232569868,0.523,12.2410079 +158.0,1.3150509062672533,0.53525,1.3406892944464737,0.5225,14.0827358 +159.0,1.3152685836102556,0.52925,1.340450986063101,0.523,12.2373319 +160.0,1.3155766352012161,0.528375,1.3405906518613617,0.5235,14.0598233 +161.0,1.3171416982941289,0.531125,1.3406664604447769,0.524,11.7966045 +162.0,1.3197602197388536,0.532,1.3404663179008949,0.524,14.8789301 +163.0,1.324298230778107,0.52825,1.340798382996611,0.5235,12.0232858 +164.0,1.3130791580862005,0.529875,1.3406465881266896,0.524,14.2144681 +165.0,1.3208513289910915,0.530875,1.3404496190079584,0.5245,11.7574811 +166.0,1.3147169417064004,0.52525,1.3404223347433593,0.524,13.4994703 +167.0,1.3166377741345037,0.531125,1.3403726076844615,0.5245,11.6442875 +168.0,1.302881980387253,0.536375,1.340462914272213,0.5235,13.4665771 +169.0,1.3272969152354728,0.528375,1.3404052181120096,0.5235,11.6643696 +170.0,1.3249953208668348,0.532125,1.3403862511062463,0.523,13.5083491 +171.0,1.3153214205434764,0.5265,1.340321607689278,0.523,11.717446 +172.0,1.3319853556938892,0.517875,1.3403944159424492,0.5225,13.5085742 +173.0,1.315938898086998,0.52725,1.3404756415832242,0.522,11.6680136 +174.0,1.305554324193872,0.533625,1.340538669090909,0.522,13.5101024 +175.0,1.3199507807303574,0.52575,1.3406348358933875,0.521,11.8448283 +176.0,1.3183324463870947,0.52775,1.3406494082201688,0.5215,13.4840556 +177.0,1.3200154898498262,0.531375,1.3405232179816833,0.5225,11.6985986 +178.0,1.3133752651013222,0.5315,1.3407556553428666,0.522,13.4977775 +179.0,1.309817393760107,0.531875,1.3406614563065014,0.523,11.6820506 +180.0,1.3218945142923948,0.52,1.3406890710751735,0.5225,13.4991202 +181.0,1.3120463466833536,0.524,1.340732918790988,0.5225,11.6961718 +182.0,1.3167799368511601,0.527125,1.340619658962076,0.522,13.5140914 +183.0,1.3248430874405288,0.532,1.3406548647913514,0.523,11.6890105 +184.0,1.3193697140498652,0.5285,1.3406919833088806,0.522,13.5429234 +185.0,1.3250933054110374,0.527625,1.34068048042159,0.522,11.6562704 +186.0,1.3126481632286724,0.532125,1.3406019047998974,0.522,13.5153837 +187.0,1.3146314728215243,0.52925,1.340617869157852,0.522,11.6739261 +188.0,1.3142194156631846,0.530375,1.3405852234582374,0.5225,13.5246301 +189.0,1.3215610128375568,0.530125,1.3404874539145364,0.523,11.8664486 +190.0,1.326462378283354,0.52775,1.3405475052774876,0.5235,13.499073 +191.0,1.3305110780936578,0.524625,1.3405806878155055,0.523,11.6469098 +192.0,1.316585812386334,0.528,1.3406750540685948,0.522,13.5231797 +193.0,1.3186661330526908,0.529,1.3406830567415318,0.5225,11.6744253 +194.0,1.322304835448128,0.5265,1.340679303384344,0.522,13.537015 +195.0,1.3243337522325833,0.521375,1.3406954268334283,0.5215,11.6234184 +196.0,1.3228529680705647,0.5235,1.3406564390141442,0.522,13.4622592 +197.0,1.3139426454708887,0.53075,1.3406314443903489,0.5225,11.6568131 +198.0,1.328395719279288,0.527125,1.34073207610222,0.522,13.6241351 +199.0,1.3236769528367731,0.5235,1.340690663839012,0.5225,11.6782654 +200.0,1.3178963451283567,0.53075,1.3406611411712133,0.522,13.4969919 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv.mtd new file mode 100644 index 00000000000..30bf87657b5 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_cifar.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 200, + "cols": 6, + "nnz": 1200, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-16 10:17:58 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv index df2e0b9dec5..97276a2f9cd 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv @@ -1,60 +1,30 @@ -1.0,0.6395330965863911,0.8015,0.3272391477006809,0.902 -2.0,0.18475208110972252,0.945375,0.22124293746528123,0.937 -3.0,0.13424154347106543,0.95975,0.18851124248025902,0.941 -4.0,0.10030261909915536,0.970375,0.1667022281154376,0.951 -5.0,0.07937873593518888,0.976,0.15600958058409162,0.957 -6.0,0.06920171125717522,0.979125,0.16498212073116425,0.957 -7.0,0.060592194621787006,0.98125,0.17178759629686993,0.958 -8.0,0.05412933187594701,0.98275,0.1633657632581319,0.962 -9.0,0.04811218647175158,0.985375,0.1497524304739882,0.963 -10.0,0.042713873413571295,0.987625,0.13528177549249587,0.964 -11.0,0.03798921289828895,0.989,0.12257248782459493,0.966 -12.0,0.033368917980423234,0.990125,0.11437361989464159,0.968 -13.0,0.02928468918448111,0.991125,0.10654460042550556,0.973 -14.0,0.025635927828060606,0.99225,0.10001953244032351,0.971 -15.0,0.022313700189017967,0.993375,0.09378573210443951,0.97 -16.0,0.01957044397816946,0.99475,0.0884900055429675,0.973 -17.0,0.01725229577517209,0.996125,0.0840339954715082,0.976 -18.0,0.015548186647948697,0.99625,0.08210346019097332,0.976 -19.0,0.014139138023695867,0.996875,0.08060906399263776,0.976 -20.0,0.012959707879691243,0.99775,0.07868875058565629,0.976 -21.0,0.012004452751684604,0.9975,0.07724035363259926,0.977 -22.0,0.0111136327233965,0.9975,0.07612728983693134,0.977 -23.0,0.010281475186653103,0.998,0.07584562740464813,0.976 -24.0,0.009677989022521137,0.998,0.07425610274151832,0.976 -25.0,0.008997284040789153,0.998,0.0736737006721429,0.977 -26.0,0.008524000701748208,0.998,0.07296239630790295,0.977 -27.0,0.007973775129518497,0.99825,0.07233596593358264,0.976 -28.0,0.0075191435573975,0.998625,0.0717720466101364,0.975 -29.0,0.007066838280190324,0.99875,0.0702526716863536,0.974 -30.0,0.006566122743096105,0.999,0.06965647460292666,0.974 -31.0,0.006089250289720929,0.999,0.06819989827467632,0.977 -32.0,0.005608455593168797,0.999125,0.06694592070023135,0.977 -33.0,0.005141466669596634,0.99925,0.06595043354269733,0.978 -34.0,0.004759061968380032,0.99925,0.06443985064969614,0.978 -35.0,0.004380594774155363,0.999375,0.06353770184635456,0.978 -36.0,0.004046733048490616,0.99975,0.06253301596760709,0.979 -37.0,0.003786776513232984,0.99975,0.061590454895157895,0.979 -38.0,0.00349652858317629,1.0,0.0608157597997437,0.979 -39.0,0.003270031704071804,1.0,0.06014196945494181,0.979 -40.0,0.0030958052763965156,1.0,0.05944900177792484,0.979 -41.0,0.0029148209401834786,1.0,0.05910852235695886,0.979 -42.0,0.002747487564857834,1.0,0.05885799247405729,0.98 -43.0,0.002601885279135758,1.0,0.05875771036367837,0.98 -44.0,0.002452998785943756,1.0,0.05875073571192066,0.98 -45.0,0.0023251227606833993,1.0,0.05883290853287607,0.98 -46.0,0.002200477357490353,1.0,0.05931266420926622,0.98 -47.0,0.0020748584217780814,1.0,0.059344483349665564,0.98 -48.0,0.001972244440490512,1.0,0.059807717143902615,0.98 -49.0,0.001866432894600097,1.0,0.06028438945471628,0.98 -50.0,0.0017845509941932457,1.0,0.06072764247481106,0.98 -51.0,0.0017029988093170635,1.0,0.06114998420916026,0.98 -52.0,0.0016256411665798158,1.0,0.06155595808269873,0.979 -53.0,0.0015603666542434512,1.0,0.061922900447717436,0.979 -54.0,0.0014921414498039287,1.0,0.06227737736439052,0.979 -55.0,0.001441256508702496,1.0,0.06265306885356355,0.979 -56.0,0.0013807884045605036,1.0,0.06304211962247053,0.979 -57.0,0.0013330958389548527,1.0,0.063426241980221,0.979 -58.0,0.0012818933369036054,1.0,0.06378686691752658,0.979 -59.0,0.0012389867278221342,1.0,0.06408567297048824,0.979 -60.0,0.001195307205982342,1.0,0.06431335760551511,0.98 +1.0,0.6399534778455417,0.807625,0.4414916285930395,0.875,6.5675493 +2.0,0.2103697243179471,0.939125,0.18546637339458957,0.938,5.6294108 +3.0,0.15145646907937396,0.95475,0.15296044687215252,0.944,5.8055184 +4.0,0.12328296319322866,0.962875,0.14405190386327257,0.961,5.835223 +5.0,0.09868712245474252,0.969375,0.1576193063351126,0.961,5.9725667 +6.0,0.08105159147368214,0.976375,0.13470007074981435,0.957,6.0797144 +7.0,0.07030207597406542,0.979,0.1375097662041591,0.96,6.1848833 +8.0,0.06414214398281054,0.98125,0.137570296006365,0.959,6.2411967 +9.0,0.05898597849079802,0.983,0.13739588235627417,0.965,6.2468008 +10.0,0.054376928708701415,0.983625,0.13455704586363032,0.964,6.2073465 +11.0,0.048916195975170114,0.985,0.1310063648711662,0.962,6.3084106 +12.0,0.04394026131760645,0.98625,0.12785295041227956,0.965,6.276783 +13.0,0.0398092032702973,0.98775,0.1239035508490495,0.964,6.3689285 +14.0,0.0357282678114975,0.989625,0.11820593654418088,0.967,6.3784001 +15.0,0.03254369330103688,0.990625,0.11415661501697245,0.968,6.3398109 +16.0,0.029824099509760914,0.991375,0.10879177841703187,0.969,6.5956139 +17.0,0.027110994551449913,0.992375,0.10512890802301399,0.971,6.5646396 +18.0,0.0245529051263536,0.99325,0.10074488440711184,0.973,6.6188438 +19.0,0.02243487181821926,0.994,0.09817456434044222,0.973,6.6698722 +20.0,0.020763546550039782,0.995,0.09637982285157341,0.975,6.6068259 +21.0,0.01918025078649027,0.995625,0.09601095696043747,0.973,6.7624415 +22.0,0.018048087733333898,0.995625,0.0965307092801049,0.973,6.7299449 +23.0,0.017234113859355332,0.995625,0.09888441223618309,0.972,6.7074557 +24.0,0.01641095299800649,0.995875,0.09965806453354788,0.972,6.6145583 +25.0,0.01586228150445892,0.996,0.10052734547893757,0.972,6.6785008 +26.0,0.015242585156170526,0.996125,0.09972586259946029,0.973,6.6458647 +27.0,0.014541873346726793,0.99625,0.09589592826226206,0.975,6.6931299 +28.0,0.014111385430471367,0.9965,0.09333730044410025,0.975,6.6936154 +29.0,0.01355843865332935,0.996625,0.0923201483486971,0.975,6.7194869 +30.0,0.013044136979958827,0.99675,0.09205831919061061,0.975,6.6706737 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd index e3d62bb00c8..18dec607648 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_diagonal_mnist.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 60, - "cols": 5, - "nnz": 300, + "rows": 30, + "cols": 6, + "nnz": 180, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-17 12:21:48 MEZ" + "created": "2026-02-16 08:23:46 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv index 475eacfbd8b..edee4ec1979 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv @@ -1,60 +1,30 @@ -1.0,0.6395330965863912,0.8015,0.32723914770068085,0.902 -2.0,0.18475208110972235,0.945375,0.22124293746528062,0.937 -3.0,0.1342415434710652,0.95975,0.18851124248025777,0.941 -4.0,0.10030261909915518,0.970375,0.16670222811543603,0.951 -5.0,0.07937873593518883,0.976,0.15600958058409148,0.957 -6.0,0.06920171125717528,0.979125,0.1649821207311639,0.957 -7.0,0.06059219462178708,0.98125,0.17178759629687052,0.958 -8.0,0.05412933187594715,0.98275,0.16336576325813237,0.962 -9.0,0.048112186471751854,0.985375,0.1497524304739886,0.963 -10.0,0.04271387341357169,0.987625,0.13528177549249676,0.964 -11.0,0.037989212898289285,0.989,0.12257248782459636,0.966 -12.0,0.0333689179804235,0.990125,0.11437361989464215,0.968 -13.0,0.029284689184481228,0.991125,0.10654460042550568,0.973 -14.0,0.02563592782806072,0.99225,0.10001953244032429,0.971 -15.0,0.022313700189017974,0.993375,0.09378573210444012,0.97 -16.0,0.01957044397816949,0.99475,0.08849000554296813,0.973 -17.0,0.017252295775172097,0.996125,0.08403399547150898,0.976 -18.0,0.015548186647948742,0.99625,0.08210346019097452,0.976 -19.0,0.014139138023695867,0.996875,0.08060906399263904,0.976 -20.0,0.012959707879691218,0.99775,0.07868875058565691,0.976 -21.0,0.012004452751684557,0.9975,0.07724035363260007,0.977 -22.0,0.01111363272339649,0.9975,0.07612728983693215,0.977 -23.0,0.010281475186653124,0.998,0.07584562740464891,0.976 -24.0,0.009677989022521148,0.998,0.07425610274151902,0.976 -25.0,0.008997284040789163,0.998,0.07367370067214365,0.977 -26.0,0.008524000701748191,0.998,0.0729623963079035,0.977 -27.0,0.00797377512951854,0.99825,0.07233596593358348,0.976 -28.0,0.007519143557397548,0.998625,0.07177204661013718,0.975 -29.0,0.007066838280190385,0.99875,0.07025267168635428,0.974 -30.0,0.006566122743096165,0.999,0.06965647460292756,0.974 -31.0,0.006089250289720989,0.999,0.06819989827467741,0.977 -32.0,0.005608455593168826,0.999125,0.06694592070023227,0.977 -33.0,0.005141466669596642,0.99925,0.06595043354269849,0.978 -34.0,0.004759061968380081,0.99925,0.06443985064969704,0.978 -35.0,0.004380594774155382,0.999375,0.0635377018463556,0.978 -36.0,0.004046733048490658,0.99975,0.06253301596760812,0.979 -37.0,0.0037867765132330333,0.99975,0.06159045489515902,0.979 -38.0,0.003496528583176314,1.0,0.060815759799744844,0.979 -39.0,0.00327003170407184,1.0,0.060141969454942976,0.979 -40.0,0.0030958052763965277,1.0,0.05944900177792594,0.979 -41.0,0.0029148209401835042,1.0,0.05910852235696025,0.979 -42.0,0.0027474875648578626,1.0,0.05885799247405899,0.98 -43.0,0.0026018852791357774,1.0,0.05875771036368049,0.98 -44.0,0.002452998785943783,1.0,0.058750735711922415,0.98 -45.0,0.002325122760683419,1.0,0.058832908532878384,0.98 -46.0,0.0022004773574903613,1.0,0.05931266420926835,0.98 -47.0,0.0020748584217780996,1.0,0.059344483349667965,0.98 -48.0,0.001972244440490512,1.0,0.0598077171439049,0.98 -49.0,0.001866432894600093,1.0,0.060284389454718604,0.98 -50.0,0.001784550994193222,1.0,0.06072764247481326,0.98 -51.0,0.0017029988093170592,1.0,0.061149984209162594,0.98 -52.0,0.00162564116657979,1.0,0.061555958082701305,0.979 -53.0,0.0015603666542434351,1.0,0.061922900447719774,0.979 -54.0,0.0014921414498039198,1.0,0.062277377364392435,0.979 -55.0,0.001441256508702488,1.0,0.06265306885356571,0.979 -56.0,0.0013807884045604901,1.0,0.06304211962247282,0.979 -57.0,0.0013330958389548362,1.0,0.06342624198022304,0.979 -58.0,0.0012818933369035971,1.0,0.06378686691752886,0.979 -59.0,0.0012389867278221167,1.0,0.06408567297049027,0.979 -60.0,0.0011953072059823309,1.0,0.06431335760551778,0.98 +1.0,0.6224640948243657,0.804875,0.32950747493499266,0.906,7.8584854 +2.0,0.19464308336653371,0.941,0.19091637765995637,0.937,6.7715694 +3.0,0.1324258190876514,0.959625,0.15967103515599967,0.951,7.0617942 +4.0,0.09979385554203214,0.97025,0.17423058644033812,0.953,6.9296477 +5.0,0.08238696438368712,0.97475,0.17192332629750903,0.953,7.1026953 +6.0,0.06880401176919847,0.97925,0.14573834155133827,0.961,7.1400194 +7.0,0.05797657751243725,0.98175,0.13770676958035194,0.963,7.2705643 +8.0,0.05063433391067297,0.984,0.1263040802874613,0.965,7.3092983 +9.0,0.04424816208799803,0.987375,0.11456810146699636,0.967,7.4507 +10.0,0.038605833210502746,0.989625,0.10643915111975934,0.965,7.613126 +11.0,0.03366075451209213,0.990625,0.10277666118108401,0.966,7.5308594 +12.0,0.029675215071195263,0.992,0.09730944153423055,0.97,7.6363994 +13.0,0.02646271101556241,0.992875,0.09277150674195356,0.972,7.657226 +14.0,0.023675962513854298,0.99375,0.08788504898580567,0.972,7.6837161 +15.0,0.020987538211958978,0.994625,0.08382649417261773,0.974,7.6730989 +16.0,0.01888307181626461,0.995,0.08221422248895804,0.973,7.7181718 +17.0,0.01703607613220249,0.9955,0.08075960651113932,0.974,7.7815203 +18.0,0.015506364081234679,0.995875,0.08045199745858346,0.977,7.7753385 +19.0,0.014289467459344538,0.99625,0.07958424629306447,0.978,7.7582245 +20.0,0.013182272624173395,0.996875,0.07962837080289704,0.978,7.7726161 +21.0,0.011994690871356678,0.997125,0.07930149422003162,0.978,7.8080378 +22.0,0.011139828376244448,0.997125,0.07942869291400452,0.979,7.7090791 +23.0,0.010239096134087742,0.99775,0.07910192088241703,0.979,7.7464873 +24.0,0.009466167053824031,0.998375,0.07806174166067677,0.979,7.8539785 +25.0,0.008831964314231097,0.998625,0.0771226548909102,0.98,7.8088004 +26.0,0.008245407919059039,0.998625,0.076289475479688,0.979,7.805053 +27.0,0.007788109532100104,0.999,0.0749194212032097,0.979,7.7841762 +28.0,0.007199930555454531,0.999125,0.07414262643969086,0.979,7.7958939 +29.0,0.006797875712135046,0.99925,0.07308549584235557,0.981,7.7634307 +30.0,0.006295809051245656,0.99925,0.0723885182610686,0.982,7.7103899 diff --git a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd index 604f85a9c2e..615fd926292 100644 --- a/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd +++ b/scripts/staging/shampoo_optimizer/metrics/metrics_shampoo_momentum_mnist.csv.mtd @@ -1,12 +1,12 @@ { "data_type": "matrix", "value_type": "double", - "rows": 60, - "cols": 5, - "nnz": 300, + "rows": 30, + "cols": 6, + "nnz": 180, "format": "csv", "author": "nicol", "header": false, "sep": ",", - "created": "2026-01-18 12:19:24 MEZ" + "created": "2026-02-16 08:20:28 MEZ" } \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/metrics/update_step_times.csv b/scripts/staging/shampoo_optimizer/metrics/update_step_times.csv new file mode 100644 index 00000000000..d6ac958abd8 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/update_step_times.csv @@ -0,0 +1,18 @@ +1.0,1.0,1.0,2.742716E-4 +1.0,1000.0,0,1.102185E-4 +2.0,1.0,1.0,4.170569E-4 +2.0,1000.0,0,0.0041237014 +3.0,1.0,1.0,2.424262E-4 +3.0,1000.0,0,0.0040937931 +4.0,1.0,1.0,3.2715470000000004E-4 +4.0,1000.0,0,0.0041171109 +5.0,1.0,1.0,2.865899E-4 +5.0,1000.0,0,0.0041658312 +6.0,1.0,1.0,4.196396E-4 +6.0,1000.0,0,8.759079E-4 +7.0,1.0,1.0,2.838581E-4 +7.0,1000.0,0,8.068506E-4 +8.0,1.0,1.0,2.062514E-4 +8.0,1000.0,0,2.0907039999999998E-4 +9.0,1.0,1.0,3.96182E-5 +9.0,1000.0,0,3.98469E-5 diff --git a/scripts/staging/shampoo_optimizer/metrics/update_step_times.csv.mtd b/scripts/staging/shampoo_optimizer/metrics/update_step_times.csv.mtd new file mode 100644 index 00000000000..15856b10f5a --- /dev/null +++ b/scripts/staging/shampoo_optimizer/metrics/update_step_times.csv.mtd @@ -0,0 +1,12 @@ +{ + "data_type": "matrix", + "value_type": "double", + "rows": 18, + "cols": 4, + "nnz": 63, + "format": "csv", + "author": "nicol", + "header": false, + "sep": ",", + "created": "2026-02-16 11:28:15 MEZ" +} \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/readme.md b/scripts/staging/shampoo_optimizer/readme.md new file mode 100644 index 00000000000..358e06bc533 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/readme.md @@ -0,0 +1,69 @@ +# Shampoo Experiments + +These experiments evaluate an implementation of the Shampoo optimizer, as described in: Gupta et al., “Shampoo: Preconditioned Stochastic Tensor Optimization” (). +Shampoo is a second-order optimizer that preconditions gradients using estimates of the row- and column-wise gradient covariance. Compared to first-order optimizers such as SGD and Adam, Shampoo can converge faster, but it is typically more memory- and compute-intensive. + +Experimental Setup: + - Model: A simple two-layer CNN. + - Datasets: MNIST and CIFAR-10. + - CIFAR-10 regularization: + To reduce overfitting during the 200 training epochs: + - the CIFAR-10 training set is augmented (original + augmented copy), + - a dropout layer is used. + +Implemented Shampoo Variants_ + - Following Gupta et al., three Shampoo variants were implemented: + - Classic Shampoo (baseline) + - Shampoo + Momentum + - Heuristic Shampoo: momentum + computing the expensive matrix-root steps only every n updates (to reduce compute cost) + + Additionally, the diagonal approximation (avoiding full eigendecomposition) is considered where applicable. + +Baselines and Hyperparameter Tuning_ + - The Shampoo variants are compared against three common optimizers: + - SGD + - Adam + - Adagrad + - For every optimizer, hyperparameter tuning was performed. Importantly, no optimizer was tuned more extensively than the others. This means the results may not represent the absolute best achievable performance for each method, but the comparison better reflects: + - how sensitive each optimizer is to tuning, and + - how easy it is to obtain strong results in practice. + +Results Overview + + A full overview of results (plots) is provided in: experiment_results.ipynb + + - Summary + - MNIST + - The Shampoo variants perform very well and typically converge faster. + - A single update step is slightly slower, but fewer epochs may be required. + - CIFAR-10 + - Shampoo variants perform worse than SGD and Adam in this setup. + - A possible reason is that Shampoo benefits less in regimes where the model is underfitting or the setting strongly favors first-order methods. + - Diagonal Shampoo + - Slightly worse final performance than full Shampoo, + - Reduces compute cost and improves time-to-convergence. + - Heuristic Shampoo + - Saves compute time, but performs worse in these experiments. + - The diagonal variant often provides better trade-offs (faster and better-performing than the heuristic here). + - Note: The original paper reports strong heuristic performance. The weaker results here may be due to the simplicity of the CNN or the specific dataset/training setup. + +How to Run + + 1. Create the CIFAR-10 CSV dataset (needed for CIFAR experiments): + - Run: cifar_creation.py + 2. Single-step timing benchmark (optimizer update time): + - Run: shampoo_experiment_time.dml + 3. Full training experiments (main benchmark): + - Run: shamoo_optimizer_experiments.dml + - At the end of the file, you can select: + - standard experiments, or + - hyperparameter fine-tuning runs (with relevant parameters) + - For standard experiments, you can also adjust parameters in: + - definingTrainingParameters + - definingModelParameters + - definingData + - Adjust the values in the function "getOptimizer" to change the optimizers that are supposed to be used + - Note: Default values are already tuned, changing them is not recommended unless you intentionally want a different experimental setup. + 4. (Optional) ResNet experiments + - If you have enough compute, you can use: shampoo_optimizer_experiments_resnet.dml + - Be aware: this pipeline is not optimized. It may be necessary to modify "definingData" to use more data and adjust dataset handling. diff --git a/scripts/staging/shampoo_optimizer/shampoo_experiment_time.dml b/scripts/staging/shampoo_optimizer/shampoo_experiment_time.dml new file mode 100644 index 00000000000..c4749395422 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/shampoo_experiment_time.dml @@ -0,0 +1,174 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +source("scripts/nn/optim/shampoo.dml") as shampoo +source("scripts/nn/optim/adagrad.dml") as adagrad +source("scripts/nn/optim/adam.dml") as adam +source("scripts/nn/optim/sgd.dml") as sgd + + +getOptimizer = function(int optimizerIndex) + return(string optimizer){ + /* + * Maps an integer index to an optimizer name string used throughout the + * experiment pipeline. + * + * Inputs: + * - optimizerIndex: Integer identifier of the optimizer (1..9) + * + * Outputs: + * - optimizer: Optimizer name corresponding to the index. + */ + if (optimizerIndex==1) + { + optimizer = "adam" + } + if (optimizerIndex==2) + { + optimizer = "shampoo" + } + if (optimizerIndex==3) + { + optimizer = "shampoo_momentum" + } + if (optimizerIndex==4) + { + optimizer = "shampoo_heuristic" + } + if (optimizerIndex==5) + { + optimizer = "adagrad" + } + if (optimizerIndex==6) + { + optimizer = "sgd" + } +} + +optimizersToExperiment = list("shampoo", "shampoo_momentum", "shampoo_heuristic","adam", + "adagrad", "sgd") + +epsilon = 1e-4 +lr = 0.005 +rootEvery=10 +preconEvery=10 + +X0 = rand(rows=100, cols=100, min=-1, max=1, pdf="uniform", sparsity=1.0, seed=7) +dX0 = rand(rows=100, cols=100, min=-1, max=1, pdf="uniform", sparsity=1.0, seed=8) + +nSteps = 5000 + +results = matrix(0, rows=length(optimizersToExperiment) * 2, cols=4) +row = 0 + +for (optimizerIndex in 1:length(optimizersToExperiment)) { + + optimizer = getOptimizer(optimizerIndex) + + # two modes: diagonal vs non-diagonal + for (diagThreshold in seq(1, 1000, 999)) { + + X = X0 + dX = dX0 + + timestep = 0 + + # init state + if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")) { + [preconL, preconR, useDiag] = shampoo::init(X, epsilon, diagThreshold) + } else if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")) { + [preconL, preconR, momentum, useDiag] = shampoo::init_momentum(X, epsilon, diagThreshold) + } else if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")) { + [preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag] = shampoo::init_heuristic(X, epsilon, diagThreshold) + } else if (optimizer == "adam") { + [m, v] = adam::init(X) + } else if (optimizer == "adagrad") { + cache = adagrad::init(X) + } + + # warmup + if (optimizer == "sgd") { + X = sgd::update(X, dX, lr) + } else if (optimizer == "adagrad") { + [X, cache] = adagrad::update(X, dX, lr, epsilon, cache) + } else if (optimizer == "adam") { + [X, m, v] = adam::update(X, dX, lr, 0.9, 0.999, epsilon, timestep, m, v) + timestep = timestep + 1 + } else if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")) { + [X, preconL, preconR] = shampoo::update(X, dX, lr, preconL, preconR, useDiag) + } else if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")) { + [X, preconL, preconR, momentum] = shampoo::update_momentum(X, dX, lr, preconL, preconR, momentum, useDiag) + } else if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")) { + [X, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot] = shampoo::update_heuristic(X, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) + } + + # timed loop + t0 = time() + + if (optimizer == "sgd") { + for (step in 1:nSteps) { + X = sgd::update(X, dX, lr) + } + } else if (optimizer == "adagrad") { + for (step in 1:nSteps) { + [X, cache] = adagrad::update(X, dX, lr, epsilon, cache) + } + } else if (optimizer == "adam") { + for (step in 1:nSteps) { + [X, m, v] = adam::update(X, dX, lr, 0.9, 0.999, epsilon, timestep, m, v) + timestep = timestep + 1 + } + } else if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")) { + for (step in 1:nSteps) { + [X, preconL, preconR] = shampoo::update(X, dX, lr, preconL, preconR, useDiag) + } + } else if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")) { + for (step in 1:nSteps) { + [X, preconL, preconR, momentum] = shampoo::update_momentum(X, dX, lr, preconL, preconR, momentum, useDiag) + } + } else if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")) { + for (step in 1:nSteps) { + [X, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot] = shampoo::update_heuristic(X, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) + } + } + + t1 = time() + + diagonal = 0 + if (diagThreshold == 1){ + diagonal = 1 + } else { + diagonal = 0 + } + + timeSec = (t1 - t0) / 1000000000 / nSteps + + row = row + 1 + results[row,1] = optimizerIndex + results[row,2] = diagThreshold + results[row,3] = diagonal + results[row,4] = timeSec + + print("Time per update (" + optimizer + ", " + diagonal + ") = " + timeSec + " sec") + } +} +outDir = "scripts/staging/shampoo_optimizer/metrics" +write(results, outDir + "/update_step_times.csv", format="csv") \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml b/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml index 658724473eb..b1116188182 100644 --- a/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml +++ b/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments.dml @@ -22,55 +22,91 @@ source("scripts/nn/optim/shampoo.dml") as shampoo source("scripts/nn/optim/adagrad.dml") as adagrad source("scripts/nn/optim/adam.dml") as adam +source("scripts/nn/optim/sgd.dml") as sgd source("scripts/nn/layers/conv2d_builtin.dml") as conv2d source("scripts/nn/layers/avg_pool2d_builtin.dml") as avg_pool2d source("scripts/nn/layers/relu.dml") as relu source("scripts/nn/layers/cross_entropy_loss.dml") as cross_entropy_loss source("scripts/nn/layers/softmax.dml") as softmax +source("scripts/nn/layers/dropout.dml") as dropout source("src/test/scripts/applications/nn/util.dml") as test_util # defining forward pass -modelPredict = function(matrix[double] X, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc, list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins) - return(matrix[double] softMaxOut, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred){ # +modelPredict = function(matrix[double] X, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] wFC, matrix[double] bFC, list[unknown] hIns, list[unknown] wIns, list[unknown] cIns, boolean isTraining, string datasetName) + return(matrix[double] softMaxOut, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred, matrix[double] mask2){ + /* + * Forward pass for the 2-layer CNN image classifier. + * + * Computes: + * - Conv2D -> AvgPool2D -> ReLU (block 1) + * - Conv2D -> AvgPool2D -> ReLU (block 2) + * - (optional) Dropout on CIFAR during training + * - Linear layer (fully-connected) and Softmax + * + * Inputs: + * - X: Input batch matrix (flattened images). + * - W1, b1: Weights and bias for the first convolution layer. + * - W2, b2: Weights and bias for the second convolution layer. + * - wFC, bFC: Weights and bias for the fully-connected layer. + * - hIns, wIns, cIns: Lists containing input/intermediate heights, widths, and channels + * required by the conv/pool operators. + * - isTraining: If TRUE, enables training-only behavior (dropout). + * - datasetName: Dataset identifier (e.g., "mnist", "cifar") to trigger dataset-specific logic. + * + * Outputs: + * - softMaxOut: Softmax probabilities for each class. + * - X: The input X (returned for convenience/caching). + * - convOut1, poolOut1, reluOut1: Cached activations after block 1. + * - convOut2, poolOut2, reluOut2: Cached activations after block 2. + * - pred: Pre-softmax logits (linear layer output). + * - mask2: Dropout mask (1x1 dummy matrix if dropout is not applied). + */ filters = 64 - conv_kernel = 5 - pool_kernel = 4 - conv_padding = 2 - pool_padding = 1 - - h_in = as.integer(as.scalar(h_ins[1])) - h_in_1 = as.integer(as.scalar(h_ins[2])) - h_in_2 = as.integer(as.scalar(h_ins[3])) - h_in_3 = as.integer(as.scalar(h_ins[4])) - h_in_4 = as.integer(as.scalar(h_ins[5])) - - w_in = as.integer(as.scalar(w_ins[1])) - w_in_1 = as.integer(as.scalar(w_ins[2])) - w_in_2 = as.integer(as.scalar(w_ins[3])) - w_in_3 = as.integer(as.scalar(w_ins[4])) - w_in_4 = as.integer(as.scalar(w_ins[5])) - - c_in = as.integer(as.scalar(c_ins[1])) - c_in_1 = as.integer(as.scalar(c_ins[2])) + convKernel = 5 + poolKernel = 4 + convPadding = 2 + poolPadding = 1 + + hIn = as.integer(as.scalar(hIns[1])) + hIn1 = as.integer(as.scalar(hIns[2])) + hIn2 = as.integer(as.scalar(hIns[3])) + hIn3 = as.integer(as.scalar(hIns[4])) + hIn4 = as.integer(as.scalar(hIns[5])) + + wIn = as.integer(as.scalar(wIns[1])) + wIn1 = as.integer(as.scalar(wIns[2])) + wIn2 = as.integer(as.scalar(wIns[3])) + wIn3 = as.integer(as.scalar(wIns[4])) + wIn4 = as.integer(as.scalar(wIns[5])) + + cIn = as.integer(as.scalar(cIns[1])) + cIn1 = as.integer(as.scalar(cIns[2])) # first block - [convOut1, Hout, Wout] = conv2d::forward(X, W1, b1, c_in, h_in, w_in, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + [convOut1, Hout, Wout] = conv2d::forward(X, W1, b1, cIn, hIn, wIn, convKernel, convKernel, 1, 1, convPadding, convPadding) - [poolOut1, Hout, Wout] = avg_pool2d::forward(convOut1, c_in_1, h_in_1, w_in_1, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + [poolOut1, Hout, Wout] = avg_pool2d::forward(convOut1, cIn1, hIn1, wIn1, poolKernel, poolKernel, 2, 2, poolPadding, poolPadding) reluOut1 = relu::forward(poolOut1) # second block - [convOut2, Hout, Wout] = conv2d::forward(reluOut1, W2, b2, c_in_1, h_in_2, w_in_2, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + [convOut2, Hout, Wout] = conv2d::forward(reluOut1, W2, b2, cIn1, hIn2, wIn2, convKernel, convKernel, 1, 1, convPadding, convPadding) - [poolOut2, Hout, Wout] = avg_pool2d::forward(convOut2, c_in_1, h_in_3, w_in_3, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + [poolOut2, Hout, Wout] = avg_pool2d::forward(convOut2, cIn1, hIn3, wIn3, poolKernel, poolKernel, 2, 2, poolPadding, poolPadding) reluOut2 = relu::forward(poolOut2) - pred = reluOut2 %*% t(W_fc) + t(b_fc) + mask2 = matrix(1, rows=1, cols=1) + if (datasetName == "cifar" & isTraining){ + pDropout = 0.3 + [dropOut2, mask2] = dropout::forward(reluOut2, pDropout, -1) + pred = dropOut2 %*% t(wFC) + t(bFC) + }else{ + pred = reluOut2 %*% t(wFC) + t(bFC) + } softMaxOut = softmax::forward(pred) @@ -79,64 +115,127 @@ modelPredict = function(matrix[double] X, matrix[double] W1, matrix[double] b1, } #defining backward pass -modelBackward = function(matrix[double] target, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc, list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred, matrix[double] softMaxOut) - return (matrix[double] gradient_lin_layer_W, matrix[double] gradient_lin_layer_b, matrix[double] gradient_W2, matrix[double] gradient_b2, matrix[double] gradient_W1, matrix[double] gradient_b1){ +modelBackward = function(matrix[double] target, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] wFC, matrix[double] bFC, list[unknown] hIns, list[unknown] wIns, list[unknown] cIns, matrix[double] X, matrix[double] convOut1, matrix[double] poolOut1, matrix[double] reluOut1, matrix[double] convOut2, matrix[double] poolOut2, matrix[double] reluOut2, matrix[double] pred, matrix[double] softMaxOut, matrix[double] mask2, string datasetName) + return (matrix[double] gradientLinLayerW, matrix[double] gradientLinLayerb, matrix[double] gradientW2, matrix[double] gradientB2, matrix[double] gradientW1, matrix[double] gradientB1){ + /* + * Backward pass for the 2-layer CNN image classifier. + * + * Computes gradients for: + * - Softmax + Cross-Entropy loss + * - Fully-connected (linear) layer + * - (optional) Dropout on CIFAR + * - ReLU / AvgPool2D / Conv2D blocks (block 2 then block 1) + * + * The function expects cached forward-pass activations (conv/pool/relu outputs) + * to correctly propagate gradients through the network. + * + * Inputs: + * - target: One-hot encoded labels for the current batch. + * - W1, b1: Weights and bias for the first convolution layer. + * - W2, b2: Weights and bias for the second convolution layer. + * - wFC, bFC: Weights and bias for the fully-connected layer. + * - hIns, wIns, cIns: Lists containing input/intermediate heights, widths, and channels + * required by the conv/pool backward operators. + * - X: Original input batch (flattened images), as used in the forward pass. + * - convOut1, poolOut1, reluOut1: Cached activations after block 1. + * - convOut2, poolOut2, reluOut2: Cached activations after block 2. + * - pred: Pre-softmax logits from the forward pass. + * - softMaxOut: Softmax probabilities from the forward pass. + * - mask2: Dropout mask from the forward pass (used only for CIFAR training). + * - datasetName: Dataset identifier ("mnist" or "cifar") to trigger dataset-specific logic. + * + * Outputs: + * - gradientLinLayerW: Gradient of the linear-layer weights (wFC). + * - gradientLinLayerb: Gradient of the linear-layer bias (bFC). + * - gradientW2, gradientB2: Gradients for the second conv layer (W2, b2). + * - gradientW1, gradientB1: Gradients for the first conv layer (W1, b1). + */ filters = 64 - conv_kernel = 5 - pool_kernel = 4 - conv_padding = 2 - pool_padding = 1 - - h_in = as.integer(as.scalar(h_ins[1])) - h_in_1 = as.integer(as.scalar(h_ins[2])) - h_in_2 = as.integer(as.scalar(h_ins[3])) - h_in_3 = as.integer(as.scalar(h_ins[4])) - h_in_4 = as.integer(as.scalar(h_ins[5])) - - w_in = as.integer(as.scalar(w_ins[1])) - w_in_1 = as.integer(as.scalar(w_ins[2])) - w_in_2 = as.integer(as.scalar(w_ins[3])) - w_in_3 = as.integer(as.scalar(w_ins[4])) - w_in_4 = as.integer(as.scalar(w_ins[5])) - - c_in = as.integer(as.scalar(c_ins[1])) - c_in_1 = as.integer(as.scalar(c_ins[2])) + convKernel = 5 + poolKernel = 4 + convPadding = 2 + poolPadding = 1 + + hIn = as.integer(as.scalar(hIns[1])) + hIn1 = as.integer(as.scalar(hIns[2])) + hIn2 = as.integer(as.scalar(hIns[3])) + hIn3 = as.integer(as.scalar(hIns[4])) + hIn4 = as.integer(as.scalar(hIns[5])) + + wIn = as.integer(as.scalar(wIns[1])) + wIn1 = as.integer(as.scalar(wIns[2])) + wIn2 = as.integer(as.scalar(wIns[3])) + wIn3 = as.integer(as.scalar(wIns[4])) + wIn4 = as.integer(as.scalar(wIns[5])) + + cIn = as.integer(as.scalar(cIns[1])) + cIn1 = as.integer(as.scalar(cIns[2])) # gradient of loss function - gradient_lossfn = cross_entropy_loss::backward(softMaxOut, target) + gradientLossfn = cross_entropy_loss::backward(softMaxOut, target) # gradient Softmax - gradient_softmax = softmax::backward(gradient_lossfn, pred) + gradientSoftmax = softmax::backward(gradientLossfn, pred) # gradients Linear layer - gradient_lin_layer_W = t(gradient_softmax) %*% reluOut2 - gradient_lin_layer_b = t(colSums(gradient_softmax)) - gradient_lin_layer_X = gradient_softmax %*% W_fc - - # gradient second Relu - gradient_relu = relu::backward(gradient_lin_layer_X, poolOut2) + gradientLinLayerW = t(gradientSoftmax) %*% reluOut2 + gradientLinLayerb = t(colSums(gradientSoftmax)) + gradientLinLayerX = gradientSoftmax %*% wFC + + if (datasetName == "cifar"){ + # Dropout + pDropout = 0.3 + gradientDropout = dropout::backward(gradientLinLayerX, reluOut2, pDropout, mask2) + gradientRelu = relu::backward(gradientDropout, poolOut2) + }else{ + # gradient second Relu + gradientRelu = relu::backward(gradientLinLayerX, poolOut2) + } # gradient second pooling layer - gradient_second_pooling = avg_pool2d::backward(gradient_relu, h_in_4, w_in_4, convOut2, c_in_1, h_in_3, w_in_3, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + gradientSecondPooling = avg_pool2d::backward(gradientRelu, hIn4, wIn4, convOut2, cIn1, hIn3, wIn3, poolKernel, poolKernel, 2, 2, poolPadding, poolPadding) # gradient second conv layer - [gradient_second_conv_X, gradient_W2, gradient_b2] = conv2d::backward(gradient_second_pooling, h_in_3, w_in_3, reluOut1, W2, b2, c_in_1, h_in_2, w_in_2, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + [gradientSecondConvX, gradientW2, gradientB2] = conv2d::backward(gradientSecondPooling, hIn3, wIn3, reluOut1, W2, b2, cIn1, hIn2, wIn2, convKernel, convKernel, 1, 1, convPadding, convPadding) # gradient of the first Relu - gradient_relu = relu::backward(gradient_second_conv_X, poolOut1) + gradientRelu = relu::backward(gradientSecondConvX, poolOut1) # gradient first pooling layer - gradient_first_pooling = avg_pool2d::backward(gradient_relu, h_in_2, w_in_2, convOut1, c_in_1, h_in_1, w_in_1, pool_kernel, pool_kernel, 2, 2, pool_padding, pool_padding) + gradientFirstPooling = avg_pool2d::backward(gradientRelu, hIn2, wIn2, convOut1, cIn1, hIn1, wIn1, poolKernel, poolKernel, 2, 2, poolPadding, poolPadding) # gradient first conv layer - [gradient_first_conv_X, gradient_W1, gradient_b1] = conv2d::backward(gradient_first_pooling, h_in_1, w_in_1, X, W1, b1, c_in, h_in, w_in, conv_kernel, conv_kernel, 1, 1, conv_padding, conv_padding) + [gradientFirstConvX, gradientW1, gradientB1] = conv2d::backward(gradientFirstPooling, hIn1, wIn1, X, W1, b1, cIn, hIn, wIn, convKernel, convKernel, 1, 1, convPadding, convPadding) } -definingData = function(string dataset_name) - return(matrix[double] X_train, matrix[double] Y_train, matrix[double] X_val, matrix[double] Y_val, matrix[double] X_test, matrix[double] Y_test){ - if (dataset_name=="mnist"){ +definingData = function(string datasetName) + return(matrix[double] XTrain, matrix[double] YTrain, matrix[double] XVal, matrix[double] YVal, matrix[double] XTest, matrix[double] YTest){ + /* + * Loads and prepares the dataset split (train/validation/test) for MNIST or CIFAR. + * + * For MNIST: + * - Reads the CSV from the SystemDS test resources. + * - Normalizes pixel intensities to [0, 1] by dividing by 255. + * + * For CIFAR: + * - Reads a pre-generated CSV (created by the CIFAR conversion script). + * - Note: No additional normalization is applied here (assumes preprocessing + * was already handled in the CSV generation step). + * + * Inputs: + * - datasetName: Dataset identifier ("mnist" or "cifar"). + * + * Outputs: + * - XTrain: Training feature matrix (images). + * - YTrain: One-hot encoded training label matrix. + * - XVal: Validation feature matrix. + * - YVal: One-hot encoded validation label matrix. + * - XTest: Test feature matrix. + * - YTest: One-hot encoded test label matrix. + */ + if (datasetName=="mnist"){ data = read("src/test/resources/datasets/MNIST/mnist_test.csv", format="csv") train = data[1:8999,] test = data[9000:nrow(data),] @@ -144,339 +243,755 @@ definingData = function(string dataset_name) images = train[,2:ncol(train)] images = images / 255.0 labels = train[,1] - images_test = test[,2:ncol(test)] - labels_test = test[,1] + imagesTest = test[,2:ncol(test)] + imagesTest = imagesTest / 255.0 + labelsTest = test[,1] N = nrow(images) - N_test = nrow(images_test) + NTest = nrow(imagesTest) - X_train = images[1001:nrow(images),] - labels_train = labels[1001:nrow(images),] - Y_train = table(seq(1, nrow(X_train)), labels_train+1, nrow(X_train), 10) + XTrain = images[1001:nrow(images),] + labelsTrain = labels[1001:nrow(images),] + YTrain = table(seq(1, nrow(XTrain)), labelsTrain+1, nrow(XTrain), 10) - X_val = images[1:1000,] - labels_val = labels[1:1000,] - Y_val = table(seq(1, nrow(X_val)), labels_val+1, nrow(X_val), 10) + XVal = images[1:1000,] + labelsVal = labels[1:1000,] + YVal = table(seq(1, nrow(XVal)), labelsVal+1, nrow(XVal), 10) - X_test = images_test - Y_test = table(seq(1, N_test), labels_test+1, N_test, 10) + XTest = imagesTest + YTest = table(seq(1, NTest), labelsTest+1, NTest, 10) } - if (dataset_name=="cifar"){ + if (datasetName=="cifar"){ data = read("scripts/staging/shampoo_optimizer/cifar10.csv", format="csv") - train = data[1:39999,] - test = data[40000:nrow(data),] + train = data[1:10000,] # data[1:40000,] + test = data[10001:15000,] # data[40000:nrow(data),] images = train[,2:ncol(train)] - images = images / 255.0 labels = train[,1] - images_test = test[,2:ncol(test)] - labels_test = test[,1] + imagesTest = test[,2:ncol(test)] + labelsTest = test[,1] N = nrow(images) - N_test = nrow(images_test) + NTest = nrow(imagesTest) - X_train = images[5001:nrow(images),] - labels_train = labels[5001:nrow(images),] - Y_train = table(seq(1, nrow(X_train)), labels_train+1, nrow(X_train), 10) + XTrain = images[2001:nrow(images),] + labelsTrain = labels[2001:nrow(images),] + YTrain = table(seq(1, nrow(XTrain)), labelsTrain+1, nrow(XTrain), 10) - X_val = images[1:5000,] - labels_val = labels[1:5000,] - Y_val = table(seq(1, nrow(X_val)), labels_val+1, nrow(X_val), 10) + XVal = images[1:2000,] + labelsVal = labels[1:2000,] + YVal = table(seq(1, nrow(XVal)), labelsVal+1, nrow(XVal), 10) - X_test = images_test - Y_test = table(seq(1, N_test), labels_test+1, N_test, 10) + XTest = imagesTest + YTest = table(seq(1, NTest), labelsTest+1, NTest, 10) } } -# Define image properties -defining_image_properties = function(string dataset_name) - return(int h_in, int w_in, int c_in, int classes){ - if(dataset_name=="mnist"){ - h_in = 28 - w_in = 28 - c_in = 1 +definingImageProperties = function(string datasetName) + /* + * Returns basic image shape metadata for the selected dataset. + * + * Provides the input height/width, number of channels, and number of classes + * for the supported datasets. + * + * Inputs: + * - datasetName: Dataset identifier ("mnist" or "cifar"). + * + * Outputs: + * - hIn: Input image height. + * - wIn: Input image width. + * - cIn: Number of input channels. + * - classes: Number of classes. + */ + return(int hIn, int wIn, int cIn, int classes){ + if(datasetName=="mnist"){ + hIn = 28 + wIn = 28 + cIn = 1 classes = 10 } - if(dataset_name=="cifar"){ - h_in = 32 - w_in = 32 - c_in = 3 + if(datasetName=="cifar"){ + hIn = 32 + wIn = 32 + cIn = 3 classes = 10 } } # Define training parameters -defining_training_parameters = function(string optimizer) - return(int epochs, int batch_size, double epsilon, double lr, int diagThreshold, int rootEvery, int preconEvery){ +definingTrainingParameters = function(string optimizer, string datasetName) + return(int epochs, int batchSize, double epsilon, double lr, int diagThreshold, int rootEvery, int preconEvery){ + /* + * Returns training hyperparameters (epochs, batch size, and optimizer-specific settings) + * for a given optimizer and dataset. + * + * This function provides preset hyperparameters per optimizer (Adam, Adagrad, SGD, + * and three Shampoo variants) and per dataset ("mnist" vs "cifar"). + * + * Inputs: + * - optimizer: Optimizer name. + * - datasetName: Dataset identifier ("mnist" or "cifar"). + * + * Outputs: + * - epochs: Number of training epochs. + * - batchSize: Mini-batch size. + * - epsilon: Numerical stability constant for the selected optimizer/dataset. + * - lr: Learning rate for the selected optimizer/dataset. + * - diagThreshold: Shampoo diagonalization threshold + * - rootEvery: Frequency for computing matrix roots in Shampoo heuristic. + * - preconEvery: Frequency for updating preconditioners in heuristic Shampoo. + */ + lr = 0.001 if(optimizer=="adam"){ - epsilon = 1e-8 - lr = 0.001 + if(datasetName=="cifar"){ + epsilon = 1e-7 + lr = 5.0e-4 + }else{ + epsilon = 1e-4 + lr = 0.0015 + } + } + else if(optimizer=="adagrad"){ + if(datasetName=="cifar"){ + epsilon = 1.0e-5 + lr = 0.007 + }else{ + epsilon = 1e-5 + lr = 0.002 + } + } + else if(optimizer=="sgd"){ + if(datasetName=="cifar"){ + epsilon = 1.0e-8 + lr = 0.1 + }else{ + epsilon = 1e-6 + lr = 0.03 + } } else if((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ - epsilon = 1e-5 - lr = 0.005 + if(datasetName=="cifar"){ + epsilon = 0.09 + lr = 0.2 + } else{ + epsilon = 0.001 + lr = 0.1 + } } - else{ - epsilon = 1e-3 - lr = 0.6 + else if((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + if(datasetName=="cifar"){ + epsilon = 1.0e-7 + lr = 0.3 + } else{ + epsilon = 1e-4 + lr = 0.55 + } + } + else if((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + if(datasetName=="cifar"){ + epsilon = 0.09 + lr = 0.2 + } else{ + epsilon = 0.2 + lr = 0.6 + } + } + + if(datasetName=="cifar"){ + epochs = 200 + } else{ + epochs = 30 } - epochs = 60 - batch_size = 64 - diagThreshold = 1200 - rootEvery = 10 + batchSize = 64 + rootEvery = 8 preconEvery = 2 + if ((optimizer == "shampoo_diagonal") | (optimizer == "shampoo_momentum_diagonal") | (optimizer == "shampoo_heuristic_diagonal")){ + diagThreshold = 1 + } else{ + diagThreshold = 1200 + } } -defining_model_parameters = function() - return(int filters, int conv_kernel, int pool_kernel, int conv_padding, int pool_padding, int seed){ +definingModelParameters = function() + /* + * Defines and returns fixed model hyperparameters for the CNN architecture. + * + * This function centralizes the configuration of convolution/pooling settings + * and the random seed used for weight initialization. + * + * Outputs: + * - filters: Number of convolution filters per conv layer. + * - convKernel: Convolution kernel size. + * - poolKernel: Pooling kernel size. + * - convPadding: Padding applied in convolution layers. + * - poolPadding: Padding applied in pooling layers. + * - seed: Random seed for reproducible initialization. + */ + return(int filters, int convKernel, int poolKernel, int convPadding, int poolPadding, int seed){ filters = 64 - conv_kernel = 5 - pool_kernel = 4 - conv_padding = 2 - pool_padding = 1 + convKernel = 5 + poolKernel = 4 + convPadding = 2 + poolPadding = 1 seed = 42 } -# create simple nn for image classification -defining_nn_image_classification = function(int h_in, int w_in, int c_in, int classes, int filters, int conv_kernel, int pool_kernel, int conv_padding, int pool_padding, int seed) - return(list[unknown] h_ins, list[unknown] w_ins, list[unknown] c_ins, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] W_fc, matrix[double] b_fc){ + +definingNNImageClassification = function(int hIn, int wIn, int cIn, int classes, int filters, int convKernel, int poolKernel, int convPadding, int poolPadding, int seed) + return(list[unknown] hIns, list[unknown] wIns, list[unknown] cIns, matrix[double] W1, matrix[double] b1, matrix[double] W2, matrix[double] b2, matrix[double] wFC, matrix[double] bFC){ + /* + * Initializes a simple 2-layer CNN for image classification and returns + * all learnable parameters plus cached shape metadata for forward/backward passes. + * + * Architecture: + * - Conv2D (filters, convKernel, padding=convPadding) + bias + * - AvgPool2D (poolKernel, stride=2, padding=poolPadding) + * - ReLU + * - Conv2D (filters, convKernel, padding=convPadding) + bias + * - AvgPool2D (poolKernel, stride=2, padding=poolPadding) + * - ReLU + * - Fully-connected layer to `classes` + * + * Inputs: + * - hIn, wIn, cIn: Input image height/width/channels + * - classes: Number of output classes + * - filters: Number of conv filters per layer + * - convKernel: Convolution kernel size + * - poolKernel: Pooling kernel size + * - convPadding: Padding for convolution layers + * - poolPadding: Padding for pooling layers + * - seed: Random seed for reproducible initialization + * + * Outputs: + * - hIns: List of intermediate heights (hIn, hIn1, hIn2, hIn3, hIn4) + * - wIns: List of intermediate widths (wIn, wIn1, wIn2, wIn3, wIn4) + * - cIns: List of channel sizes (cIn, cIn1) + * - W1, b1: Weights/bias of first conv layer + * - W2, b2: Weights/bias of second conv layer + * - wFC, bFC: Weights/bias of final linear layer + */ # convolution layer 1 - [W1, b1] = conv2d::init(filters, c_in, conv_kernel, conv_kernel, seed) - h_in_1 = h_in + conv_padding*2 - (conv_kernel - 1) - w_in_1 = w_in + conv_padding*2 - (conv_kernel - 1) - c_in_1 = filters + [W1, b1] = conv2d::init(filters, cIn, convKernel, convKernel, seed) + hIn1 = hIn + convPadding*2 - (convKernel - 1) + wIn1 = wIn + convPadding*2 - (convKernel - 1) + cIn1 = filters # pooling - h_in_2 = floor((h_in_1 + pool_padding*2 - pool_kernel)/2)+1 - w_in_2 = floor((w_in_1 + pool_padding*2 - pool_kernel)/2)+1 + hIn2 = floor((hIn1 + poolPadding*2 - poolKernel)/2)+1 + wIn2 = floor((wIn1 + poolPadding*2 - poolKernel)/2)+1 # relu # convolution layer 2 - [W2, b2] = conv2d::init(filters, c_in_1, conv_kernel, conv_kernel, seed) - h_in_3 = h_in_2 + conv_padding*2 - (conv_kernel - 1) - w_in_3 = w_in_2 + conv_padding*2 - (conv_kernel - 1) - c_in_1 = filters + [W2, b2] = conv2d::init(filters, cIn1, convKernel, convKernel, seed) + hIn3 = hIn2 + convPadding*2 - (convKernel - 1) + wIn3 = wIn2 + convPadding*2 - (convKernel - 1) + cIn1 = filters # pooling - h_in_4 = floor((h_in_3 + pool_padding*2 - pool_kernel)/2)+1 - w_in_4 = floor((w_in_3 + pool_padding*2 - pool_kernel)/2)+1 + hIn4 = floor((hIn3 + poolPadding*2 - poolKernel)/2)+1 + wIn4 = floor((wIn3 + poolPadding*2 - poolKernel)/2)+1 # relu # Linear - W_fc = rand(rows=classes, cols=h_in_4*w_in_4*c_in_1, pdf="uniform", min=-0.1, max=0.1, seed=seed) - b_fc = matrix(0, rows=classes, cols=1) + wFC = rand(rows=classes, cols=hIn4*wIn4*cIn1, pdf="uniform", min=-0.1, max=0.1, seed=seed) + bFC = matrix(0, rows=classes, cols=1) - h_ins = list(h_in, h_in_1, h_in_2, h_in_3, h_in_4) - w_ins = list(w_in, w_in_1, w_in_2, w_in_3, w_in_4) - c_ins = list(c_in, c_in_1) + hIns = list(hIn, hIn1, hIn2, hIn3, hIn4) + wIns = list(wIn, wIn1, wIn2, wIn3, wIn4) + cIns = list(cIn, cIn1) } -get_optimizer = function(int optimizer_index) +getOptimizer = function(int optimizerIndex) return(string optimizer){ - - if (optimizer_index==4) + /* + * Maps an integer index to an optimizer name string used throughout the + * experiment pipeline. + * + * Inputs: + * - optimizerIndex: Integer identifier of the optimizer (1..9) + * + * Outputs: + * - optimizer: Optimizer name corresponding to the index. + */ + if (optimizerIndex==1) { optimizer = "adam" } - if (optimizer_index==1) + if (optimizerIndex==2) { optimizer = "shampoo" } - if (optimizer_index==5) + if (optimizerIndex==3) { optimizer = "shampoo_diagonal" } - if (optimizer_index==2) + if (optimizerIndex==4) { optimizer = "shampoo_momentum" } - if (optimizer_index==6) + if (optimizerIndex==5) { optimizer = "shampoo_momentum_diagonal" } - if (optimizer_index==3) + if (optimizerIndex==6) { optimizer = "shampoo_heuristic" } - if (optimizer_index==7) + if (optimizerIndex==7) { optimizer = "shampoo_heuristic_diagonal" } + if (optimizerIndex==8) + { + optimizer = "adagrad" + } + if (optimizerIndex==9) + { + optimizer = "sgd" + } } -# set parameters for the experiments -############################################################################################# -dataset_name = "mnist" #Alternatives: "mnist" or "cifar" -optimizers_to_experiment = list("shampoo", "shampoo_momentum", "shampoo_heuristic", "adam") -# Alternatives: ("shampoo", "shampoo_diagonal", "shampoo_momentum", -# "shampoo_momentum_diagonal", "shampoo_heuristic", "shampoo_heuristic_diagonal", "adam") -############################################################################################# +runTraining = function(string type, double epsilon, double lr, int rootEvery, int preconEvery, int epochs, string datasetName, int optimizersToExperiment) + return(double loss, double accuracy){ + /* + * Trains the two-layer CNN for one or multiple optimizers and returns the + * final test loss/accuracy of the last executed optimizer. + * + * This function: + * - Loads and splits the requested dataset (MNIST/CIFAR) + * - Initializes model weights and optimizer state + * - Runs minibatch training for the specified number of epochs + * - Tracks train/validation loss and accuracy per epoch + * - Measures wall-clock time per epoch (seconds) + * - Evaluates on the test set and optionally writes metrics to CSV + * + * Inputs: + * - type: Experiment mode string: + * - "training": use standard tuned params from definingTrainingParameters + * - "finetuning": override rootEvery/preconEvery from caller, keep eps/lr from tuning loop + * - "finetuningShampooHeuristics": tune eps/lr/rootEvery/preconEvery externally, do not override from definingTrainingParameters + * - epsilon: Epsilon value potentially provided by hyperparameter tuning (may be overwritten depending on type) + * - lr: Learning rate potentially provided by hyperparameter tuning (may be overwritten depending on type) + * - rootEvery: Shampoo heuristic parameter (may be overwritten depending on type) + * - preconEvery: Shampoo heuristic parameter (may be overwritten depending on type) + * - epochs: Number of epochs (may be overwritten depending on type/dataset) + * - datasetName: Dataset identifier ("mnist" or "cifar") + * - optimizersToExperiment: Number of optimizers to run (iterates optimizerIndex=1..optimizersToExperiment) + * + * Outputs: + * - loss: Final test loss of the last optimizer run + * - accuracy: Final test accuracy of the last optimizer run + */ + for (optimizerIndex in 1:optimizersToExperiment){ + optimizer = getOptimizer(optimizerIndex) + print("Starting with " + optimizer) + + # get the data + [XTrain, YTrain, XVal, YVal, XTest, YTest] = definingData(datasetName) + + # get image properties + [hIn, wIn, cIn, classes] = definingImageProperties(datasetName) + + # get model parameters + [filters, convKernel, poolKernel, convPadding, poolPadding, seed] = definingModelParameters() + + #get model weights + [hIns, wIns, cIns, W1, b1, W2, b2, wFC, bFC] = definingNNImageClassification(hIn, wIn, cIn, classes, filters, convKernel, poolKernel, convPadding, poolPadding, seed) + + # get training parameters + if (type == "finetuningShampooHeuristics"){ + [tmpEpochs, batchSize, tmpEps, tmpLr, diagThreshold, tmpRoot, tmpPrecon]= definingTrainingParameters(optimizer, datasetName) + }else if (type == "finetuning"){ + [tmpEpochs, batchSize, tmpEps, tmpLr, diagThreshold, rootEvery, preconEvery]= definingTrainingParameters(optimizer, datasetName) + } else{ + [epochs, batchSize, epsilon, lr, diagThreshold, rootEvery, preconEvery]= definingTrainingParameters(optimizer, datasetName) + } + -for (optimizer_index in 1:length(optimizers_to_experiment)){ - optimizer = get_optimizer(optimizer_index) - print("Starting with " + optimizer) - # get the data - [X_train, Y_train, X_val, Y_val, X_test, Y_test] = definingData(dataset_name) + if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + [preconLW1, preconRW1, useDiagW1] = shampoo::init(W1, epsilon, diagThreshold) + [preconLB1, preconRB1, useDiagB1] = shampoo::init(b1, epsilon, diagThreshold) + [preconLW2, preconRW2, useDiagW2] = shampoo::init(W2, epsilon, diagThreshold) + [preconLB2, preconRB2, useDiagB2] = shampoo::init(b2, epsilon, diagThreshold) + [preconLWFC, preconRWFC, useDiagWFC] = shampoo::init(wFC, epsilon, diagThreshold) + [preconLBFC, preconRBFC, useDiagBFC] = shampoo::init(bFC, epsilon, diagThreshold) + } + if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + [preconLW1, preconRW1, momentumW1, useDiagW1] = shampoo::init_momentum(W1, epsilon, diagThreshold) + [preconLB1, preconRB1, momentumB1, useDiagB1] = shampoo::init_momentum(b1, epsilon, diagThreshold) + [preconLW2, preconRW2, momentumW2, useDiagW2] = shampoo::init_momentum(W2, epsilon, diagThreshold) + [preconLB2, preconRB2, momentumB2, useDiagB2] = shampoo::init_momentum(b2, epsilon, diagThreshold) + [preconLWFC, preconRWFC, momentumWFC, useDiagWFC] = shampoo::init_momentum(wFC, epsilon, diagThreshold) + [preconLBFC, preconRBFC, momentumBFC, useDiagBFC] = shampoo::init_momentum(bFC, epsilon, diagThreshold) + } + if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + [preconLW1, preconRW1, stepCounterW1, bufferLW1, bufferRW1, momentumW1, preconLInvPowerRootW1, preconRInvPowerRootW1, useDiagW1] = shampoo::init_heuristic(W1, epsilon, diagThreshold) + [preconLB1, preconRB1, stepCounterB1, bufferLB1, bufferRB1, momentumB1, preconLInvPowerRootB1, preconRInvPowerRootB1, useDiagB1] = shampoo::init_heuristic(b1, epsilon, diagThreshold) + [preconLW2, preconRW2, stepCounterW2, bufferLW2, bufferRW2, momentumW2, preconLInvPowerRootW2, preconRInvPowerRootW2, useDiagW2] = shampoo::init_heuristic(W2, epsilon, diagThreshold) + [preconLB2, preconRB2, stepCounterB2, bufferLB2, bufferRB2, momentumB2, preconLInvPowerRootB2, preconRInvPowerRootB2, useDiagB2] = shampoo::init_heuristic(b2, epsilon, diagThreshold) + [preconLWFC, preconRWFC, stepCounterWFC, bufferLWFC, bufferRWFC, momentumWFC, preconLInvPowerRootWFC, preconRInvPowerRootWFC, useDiagWFC] = shampoo::init_heuristic(wFC, epsilon, diagThreshold) + [preconLBFC, preconRBFC, stepCounterBFC, bufferLBFC, bufferRBFC, momentumBFC, preconLInvPowerRootBFC, preconRInvPowerRootBFC, useDiagBFC] = shampoo::init_heuristic(bFC, epsilon, diagThreshold) + } + if (optimizer == "adam"){ + [mW1, vW1] = adam::init(W1) + [mB1, vB1] = adam::init(b1) + [mW2, vW2] = adam::init(W2) + [mB2, vB2] = adam::init(b2) + [mWFC, vWFC] = adam::init(wFC) + [mBFC, vBFC] = adam::init(bFC) + } + if (optimizer == "adagrad"){ + cacheW1 = adagrad::init(W1) + cacheB1 = adagrad::init(b1) + cacheW2 = adagrad::init(W2) + cacheB2 = adagrad::init(b2) + cacheWFC = adagrad::init(wFC) + cacheBFC = adagrad::init(bFC) + } + + dataValX = XVal + dataValY = YVal - # get image properties - [h_in, w_in, c_in, classes] = defining_image_properties(dataset_name) + # define the training - # get model parameters - [filters, conv_kernel, pool_kernel, conv_padding, pool_padding, seed] = defining_model_parameters() + trainLosses = matrix(0, rows=epochs, cols=1) + trainAccuracies = matrix(0, rows=epochs, cols=1) + valAccuracies = matrix(0, rows=epochs, cols=1) + valLosses = matrix(0, rows=epochs, cols=1) + times = matrix(0, rows=epochs, cols=1) + Ntrain = nrow(XTrain) - #get model weights - [h_ins, w_ins, c_ins, W1, b1, W2, b2, W_fc, b_fc] = defining_nn_image_classification(h_in, w_in, c_in, classes, filters, conv_kernel, pool_kernel, conv_padding, pool_padding, seed) + timestep = 0 - # get training parameters - [epochs, batch_size, epsilon, lr, diagThreshold, rootEvery, preconEvery]= defining_training_parameters(optimizer) + for(epoch in 1:epochs){ + t0 = time() + if (datasetName == "cifar"){ + if (epoch > 1 & (epoch-1) %% 20 == 0) { + lr = lr * 0.5 + print("Learning rate decayed to: " + lr) + } + } + print("Epoch " + epoch + " of " + epochs + " epochs") - if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ - [preconL_W1, preconR_W1, useDiag_W1] = shampoo::init(W1, epsilon, diagThreshold) - [preconL_b1, preconR_b1, useDiag_b1] = shampoo::init(b1, epsilon, diagThreshold) - [preconL_W2, preconR_W2, useDiag_W2] = shampoo::init(W2, epsilon, diagThreshold) - [preconL_b2, preconR_b2, useDiag_b2] = shampoo::init(b2, epsilon, diagThreshold) - [preconL_W_fc, preconR_W_fc, useDiag_W_fc] = shampoo::init(W_fc, epsilon, diagThreshold) - [preconL_b_fc, preconR_b_fc, useDiag_b_fc] = shampoo::init(b_fc, epsilon, diagThreshold) - } - if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ - [preconL_W1, preconR_W1, momentum_W1, useDiag_W1] = shampoo::init_momentum(W1, epsilon, diagThreshold) - [preconL_b1, preconR_b1, momentum_b1, useDiag_b1] = shampoo::init_momentum(b1, epsilon, diagThreshold) - [preconL_W2, preconR_W2, momentum_W2, useDiag_W2] = shampoo::init_momentum(W2, epsilon, diagThreshold) - [preconL_b2, preconR_b2, momentum_b2, useDiag_b2] = shampoo::init_momentum(b2, epsilon, diagThreshold) - [preconL_W_fc, preconR_W_fc, momentum_W_fc, useDiag_W_fc] = shampoo::init_momentum(W_fc, epsilon, diagThreshold) - [preconL_b_fc, preconR_b_fc, momentum_b_fc, useDiag_b_fc] = shampoo::init_momentum(b_fc, epsilon, diagThreshold) - } - if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ - [preconL_W1, preconR_W1, stepCounter_W1, bufferL_W1, bufferR_W1, momentum_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1, useDiag_W1] = shampoo::init_heuristic(W1, epsilon, diagThreshold) - [preconL_b1, preconR_b1, stepCounter_b1, bufferL_b1, bufferR_b1, momentum_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1, useDiag_b1] = shampoo::init_heuristic(b1, epsilon, diagThreshold) - [preconL_W2, preconR_W2, stepCounter_W2, bufferL_W2, bufferR_W2, momentum_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2, useDiag_W2] = shampoo::init_heuristic(W2, epsilon, diagThreshold) - [preconL_b2, preconR_b2, stepCounter_b2, bufferL_b2, bufferR_b2, momentum_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2, useDiag_b2] = shampoo::init_heuristic(b2, epsilon, diagThreshold) - [preconL_W_fc, preconR_W_fc, stepCounter_W_fc, bufferL_W_fc, bufferR_W_fc, momentum_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc, useDiag_W_fc] = shampoo::init_heuristic(W_fc, epsilon, diagThreshold) - [preconL_b_fc, preconR_b_fc, stepCounter_b_fc, bufferL_b_fc, bufferR_b_fc, momentum_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc, useDiag_b_fc] = shampoo::init_heuristic(b_fc, epsilon, diagThreshold) - } - if (optimizer == "adam"){ - [m_W1, v_W1] = adam::init(W1) - [m_b1, v_b1] = adam::init(b1) - [m_W2, v_W2] = adam::init(W2) - [m_b2, v_b2] = adam::init(b2) - [m_W_fc, v_W_fc] = adam::init(W_fc) - [m_b_fc, v_b_fc] = adam::init(b_fc) - } + accuracyValue = 0 + accuracyCount = 0 + lossValue = 0 + lossCount = 0 + + + for(start_index in seq(1, Ntrain, batchSize)){ + #start_index = (i - 1) * batchSize + 1 + end_index = min(start_index + batchSize - 1, Ntrain) + data_train_X = XTrain[start_index:end_index,] + dataTrainY = YTrain[start_index:end_index,] + + [softMaxOut, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred, mask2] = modelPredict(data_train_X, W1, b1, W2, b2, wFC, bFC, hIns, wIns, cIns, TRUE, datasetName) + + predictedValue = rowIndexMax(softMaxOut) - 1 + accuracy = sum(predictedValue==rowIndexMax(dataTrainY)-1) / length(predictedValue) + accuracyValue = accuracyValue + accuracy + accuracyCount = accuracyCount + 1 + + loss = cross_entropy_loss::forward(softMaxOut, dataTrainY) + lossValue = lossValue + loss + lossCount = lossCount + 1 + + + [gradientLinLayerW, gradientLinLayerb, gradientW2, gradientB2, gradientW1, gradientB1] = modelBackward(dataTrainY, W1, b1, W2, b2, wFC, bFC, hIns, wIns, cIns, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred, softMaxOut, mask2, datasetName) + + if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + [W1, preconLW1, preconRW1] = shampoo::update(W1, gradientW1, lr, preconLW1, preconRW1, useDiagW1) + [b1, preconLB1, preconRB1] = shampoo::update(b1, gradientB1, lr, preconLB1, preconRB1, useDiagB1) + [W2, preconLW2, preconRW2] = shampoo::update(W2, gradientW2, lr, preconLW2, preconRW2, useDiagW2) + [b2, preconLB2, preconRB2] = shampoo::update(b2, gradientB2, lr, preconLB2, preconRB2, useDiagB2) + [wFC, preconLWFC, preconRWFC] = shampoo::update(wFC, gradientLinLayerW, lr, preconLWFC, preconRWFC, useDiagWFC) + [bFC, preconLBFC, preconRBFC] = shampoo::update(bFC, gradientLinLayerb, lr, preconLBFC, preconRBFC, useDiagBFC) + } + if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + [W1, preconLW1, preconRW1, momentumW1] = shampoo::update_momentum(W1, gradientW1, lr, preconLW1, preconRW1, momentumW1, useDiagW1) + [b1, preconLB1, preconRB1, momentumB1] = shampoo::update_momentum(b1, gradientB1, lr, preconLB1, preconRB1, momentumB1, useDiagB1) + [W2, preconLW2, preconRW2, momentumW2] = shampoo::update_momentum(W2, gradientW2, lr, preconLW2, preconRW2, momentumW2, useDiagW2) + [b2, preconLB2, preconRB2, momentumB2] = shampoo::update_momentum(b2, gradientB2, lr, preconLB2, preconRB2, momentumB2, useDiagB2) + [wFC, preconLWFC, preconRWFC, momentumWFC] = shampoo::update_momentum(wFC, gradientLinLayerW, lr, preconLWFC, preconRWFC, momentumWFC, useDiagWFC) + [bFC, preconLBFC, preconRBFC, momentumBFC] = shampoo::update_momentum(bFC, gradientLinLayerb, lr, preconLBFC, preconRBFC, momentumBFC, useDiagBFC) + } + if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + [W1, preconLW1, preconRW1, momentumW1, stepCounterW1, bufferLW1, bufferRW1, preconLInvPowerRootW1, preconRInvPowerRootW1] = shampoo::update_heuristic(W1, gradientW1, lr, preconLW1, preconRW1, momentumW1, stepCounterW1, rootEvery, preconEvery, bufferLW1, bufferRW1, preconLInvPowerRootW1, preconRInvPowerRootW1, useDiagW1) + [b1, preconLB1, preconRB1, momentumB1, stepCounterB1, bufferLB1, bufferRB1, preconLInvPowerRootB1, preconRInvPowerRootB1] = shampoo::update_heuristic(b1, gradientB1, lr, preconLB1, preconRB1, momentumB1, stepCounterB1, rootEvery, preconEvery, bufferLB1, bufferRB1, preconLInvPowerRootB1, preconRInvPowerRootB1, useDiagB1) + [W2, preconLW2, preconRW2, momentumW2, stepCounterW2, bufferLW2, bufferRW2, preconLInvPowerRootW2, preconRInvPowerRootW2] = shampoo::update_heuristic(W2, gradientW2, lr, preconLW2, preconRW2, momentumW2, stepCounterW2, rootEvery, preconEvery, bufferLW2, bufferRW2, preconLInvPowerRootW2, preconRInvPowerRootW2, useDiagW2) + [b2, preconLB2, preconRB2, momentumB2, stepCounterB2, bufferLB2, bufferRB2, preconLInvPowerRootB2, preconRInvPowerRootB2] = shampoo::update_heuristic(b2, gradientB2, lr, preconLB2, preconRB2, momentumB2, stepCounterB2, rootEvery, preconEvery, bufferLB2, bufferRB2, preconLInvPowerRootB2, preconRInvPowerRootB2, useDiagB2) + [wFC, preconLWFC, preconRWFC, momentumWFC, stepCounterWFC, bufferLWFC, bufferRWFC, preconLInvPowerRootWFC, preconRInvPowerRootWFC] = shampoo::update_heuristic(wFC, gradientLinLayerW, lr, preconLWFC, preconRWFC, momentumWFC, stepCounterWFC, rootEvery, preconEvery, bufferLWFC, bufferRWFC, preconLInvPowerRootWFC, preconRInvPowerRootWFC, useDiagWFC) + [bFC, preconLBFC, preconRBFC, momentumBFC, stepCounterBFC, bufferLBFC, bufferRBFC, preconLInvPowerRootBFC, preconRInvPowerRootBFC] = shampoo::update_heuristic(bFC, gradientLinLayerb, lr, preconLBFC, preconRBFC, momentumBFC, stepCounterBFC, rootEvery, preconEvery, bufferLBFC, bufferRBFC, preconLInvPowerRootBFC, preconRInvPowerRootBFC, useDiagBFC) + } + if (optimizer == "adam"){ + [W1, mW1, vW1] = adam::update(W1, gradientW1, lr, 0.9, 0.999, epsilon, timestep, mW1, vW1) + [b1, mB1, vB1] = adam::update(b1, gradientB1, lr, 0.9, 0.999, epsilon, timestep, mB1, vB1) + [W2, mW2, vW2] = adam::update(W2, gradientW2, lr, 0.9, 0.999, epsilon, timestep, mW2, vW2) + [b2, mB2, vB2] = adam::update(b2, gradientB2, lr, 0.9, 0.999, epsilon, timestep, mB2, vB2) + [wFC, mWFC, vWFC] = adam::update(wFC, gradientLinLayerW, lr, 0.9, 0.999, epsilon, timestep, mWFC, vWFC) + [bFC, mBFC, vBFC] = adam::update(bFC, gradientLinLayerb, lr, 0.9, 0.999, epsilon, timestep, mBFC, vBFC) + timestep = timestep + 1 + } + if (optimizer == "adagrad"){ + [W1, cacheW1] = adagrad::update(W1, gradientW1, lr, epsilon, cacheW1) + [b1, cacheB1] = adagrad::update(b1, gradientB1, lr, epsilon, cacheB1) + [W2, cacheW2] = adagrad::update(W2, gradientW2, lr, epsilon, cacheW2) + [b2, cacheB2] = adagrad::update(b2, gradientB2, lr, epsilon, cacheB2) + [wFC, cacheWFC] = adagrad::update(wFC, gradientLinLayerW, lr, epsilon, cacheWFC) + [bFC, cacheBFC] = adagrad::update(bFC, gradientLinLayerb, lr, epsilon, cacheBFC) + } + if (optimizer == "sgd"){ + W1 = sgd::update(W1, gradientW1, lr) + b1 = sgd::update(b1, gradientB1, lr) + W2 = sgd::update(W2, gradientW2, lr) + b2 = sgd::update(b2, gradientB2, lr) + wFC = sgd::update(wFC, gradientLinLayerW, lr) + bFC = sgd::update(bFC, gradientLinLayerb, lr) + } + } + t1= time() + times[epoch,1] = (t1 - t0) / 1000000000 + + + trainLosses[epoch,1] = lossValue / lossCount + trainAccuracies[epoch,1] = accuracyValue/accuracyCount + + #print("Train Loss of " + optimizer + " = " + (lossValue / lossCount)) + #print("Train Accuracy of " + optimizer + " = " + (accuracyValue/accuracyCount)) + + [softMaxOutVal, XVal, convOut1Val, poolOut1Val, reluOut1Val, convOut2Val, poolOut2Val, reluOut2Val, predVal, mask2Ignore] = modelPredict(XVal, W1, b1, W2, b2, wFC, bFC, hIns, wIns, cIns, FALSE, datasetName) + + + predictedValueVal = rowIndexMax(softMaxOutVal) - 1 + accuracyVal = sum(predictedValueVal==rowIndexMax(YVal)-1) / length(predictedValueVal) - data_val_X = X_val - data_val_Y = Y_val + valAccuracies[epoch,1] = accuracyVal - # define the training + loss = cross_entropy_loss::forward(softMaxOutVal, YVal) + valLosses[epoch,1] = loss - train_losses = matrix(0, rows=epochs, cols=1) - train_accuracies = matrix(0, rows=epochs, cols=1) - val_accuracies = matrix(0, rows=epochs, cols=1) - val_losses = matrix(0, rows=epochs, cols=1) - Ntrain = nrow(X_train) + #print("Val Loss of " + optimizer + " = " + loss) + #print("Val Accuracy of " + optimizer + " = " + accuracyVal) + } + + + # define the testing - timestep = 0 + [softMaxOutTest, XTest, convOut1Test, poolOut1Test, reluOut1Test, convOut2Test, poolOut2Test, reluOut2Test, predTest, mask2Ignore] = modelPredict(XTest, W1, b1, W2, b2, wFC, bFC, hIns, wIns, cIns, FALSE, datasetName) - for(epoch in 1:epochs){ + predictedValue = rowIndexMax(softMaxOutTest) - 1 + accuracy = sum(predictedValue==rowIndexMax(YTest)-1) / length(predictedValue) - print("Epoch " + epoch + " of " + epochs + " epochs") + loss = cross_entropy_loss::forward(softMaxOutTest, YTest) - accuracy_value = 0 - accuracy_count = 0 - loss_value = 0 - loss_count = 0 + outDir = "scripts/staging/shampoo_optimizer/metrics" + epochs = nrow(trainLosses) + epochCol = seq(1, epochs) + M = cbind(epochCol, trainLosses, trainAccuracies, valLosses, valAccuracies, times) + if ((type != "finetuning") & (type != "finetuningShampooHeuristics")){ + write(M, outDir + "/metrics" + "_" + optimizer + "_" + datasetName + ".csv", format="csv") + } + print("Test Accuracy of " + optimizer + " on " + datasetName + " = " + accuracy) + print("Test Loss of " + optimizer + " on " + datasetName + " = " + loss) - for(start_index in seq(1, Ntrain, batch_size)){ - #start_index = (i - 1) * batch_size + 1 - end_index = min(start_index + batch_size - 1, Ntrain) - data_train_X = X_train[start_index:end_index,] - data_train_Y = Y_train[start_index:end_index,] + } +} - [softMaxOut, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred] = modelPredict(data_train_X, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) +logRow = function(matrix[double] L, int run, int roundID, int paramID, + double candidate, double loss, double epsilon, double lr, + int rootEvery, int preconEvery) + return(matrix[double] L) { +/* + * Writes one hyperparameter-evaluation record into the tuning log matrix. + * + * Inputs: + * - L: Tuning log matrix to update (nEval × 8) + * - run: 1-based row index in L to write to + * - roundID: Current tuning round identifier + * - paramID: Identifier of the tuned parameter: + * - 1: epsilon + * - 2: lr + * - 3: rootEvery + * - 4: preconEvery + * - candidate: Candidate value tested for the parameter indicated by paramID + * - loss: Observed loss for this evaluation (e.g., validation loss) + * - epsilon: Epsilon used in the evaluated run + * - lr: Learning rate used in the evaluated run + * - rootEvery: rootEvery used in the evaluated run + * - preconEvery: preconEvery used in the evaluated run + * + * Output: + * - L: Updated tuning log matrix (with row `run` filled) + */ + L[run,1] = as.double(roundID) + L[run,2] = as.double(paramID) + L[run,3] = candidate + L[run,4] = loss + L[run,5] = epsilon + L[run,6] = lr + L[run,7] = as.double(rootEvery) + L[run,8] = as.double(preconEvery) +} - predicted_value = rowIndexMax(softMaxOut) - 1 - accuracy = sum(predicted_value==rowIndexMax(data_train_Y)-1) / length(predicted_value) - accuracy_value = accuracy_value + accuracy - accuracy_count = accuracy_count + 1 +startHyperparameterTuning = function(string type, string datasetName, list[unknown] epsilonList, list[unknown] lrList, list[unknown] rootEveryList, list[unknown] preconEveryList, + double epsilon, double lr, int rootEvery, int preconEvery, int epochs, int rounds) + return(){ + /* + * Runs multi-round sequential hyperparameter tuning for the selected training setup. + * + * The tuning procedure iterates for `rounds` rounds and evaluates candidate values + * from the provided lists. Within each round it tunes in sequence: + * 1: epsilon (always) + * 2: lr (always) + * 3: rootEvery (only if type == "finetuningShampooHeuristics") + * 4: preconEvery (only if type == "finetuningShampooHeuristics") + * + * For each candidate, it calls `runTraining(...)` (with optimizersToExperiment=1), + * logs the evaluation via `logRow(...)`, and keeps the candidate with the lowest loss. + * + * Inputs: + * - type: Experiment mode ("finetuning" or "finetuningShampooHeuristics") + * - datasetName: Dataset identifier (e.g., "mnist", "cifar") + * - epsilonList: Candidate epsilons to test + * - lrList: Candidate learning rates to test + * - rootEveryList: Candidate rootEvery values to test (heuristic tuning only) + * - preconEveryList: Candidate preconEvery values to test (heuristic tuning only) + * - epsilon: Initial epsilon (starting point for tuning) + * - lr: Initial learning rate (starting point for tuning) + * - rootEvery: Initial rootEvery (starting point for tuning) + * - preconEvery: Initial preconEvery (starting point for tuning) + * - epochs: Number of epochs used per evaluation run + * - rounds: Number of tuning rounds to perform + * + * Outputs: + * - None (side effects: prints progress, runs training evaluations, and builds `tuningLog`). + * At the end, `bestParams` contains the best found (epsilon, lr, rootEvery, preconEvery). + */ + nEval = rounds * ( length(epsilonList) + length(lrList) + length(rootEveryList) + length(preconEveryList) ) + tuningLog = matrix(0, rows=nEval, cols=8) + run = 0 + + for (round in 1:rounds) { + print("=== Round " + round + " ===") + + # tuning epsilon + bestLoss = 10000; + bestEpsilon = epsilon; - loss = cross_entropy_loss::forward(softMaxOut, data_train_Y) - loss_value = loss_value + loss - loss_count = loss_count + 1 - + for (i in 1:length(epsilonList)) { + candidate = as.double(as.scalar(epsilonList[i])) + [loss, accuracy] = runTraining(type, candidate, lr, rootEvery, preconEvery, epochs, datasetName, 1) - [gradient_lin_layer_W, gradient_lin_layer_b, gradient_W2, gradient_b2, gradient_W1, gradient_b1] = modelBackward(data_train_Y, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins, X, convOut1, poolOut1, reluOut1, convOut2, poolOut2, reluOut2, pred, softMaxOut) + run = run + 1 + tuningLog = logRow(tuningLog, run, round, 1, candidate, loss, candidate, lr, rootEvery, preconEvery) - if ((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ - [W1, preconL_W1, preconR_W1] = shampoo::update(W1, gradient_W1, lr, preconL_W1, preconR_W1, useDiag_W1) - [b1, preconL_b1, preconR_b1] = shampoo::update(b1, gradient_b1, lr, preconL_b1, preconR_b1, useDiag_b1) - [W2, preconL_W2, preconR_W2] = shampoo::update(W2, gradient_W2, lr, preconL_W2, preconR_W2, useDiag_W2) - [b2, preconL_b2, preconR_b2] = shampoo::update(b2, gradient_b2, lr, preconL_b2, preconR_b2, useDiag_b2) - [W_fc, preconL_W_fc, preconR_W_fc] = shampoo::update(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, useDiag_W_fc) - [b_fc, preconL_b_fc, preconR_b_fc] = shampoo::update(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, useDiag_b_fc) - } - if ((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ - [W1, preconL_W1, preconR_W1, momentum_W1] = shampoo::update_momentum(W1, gradient_W1, lr, preconL_W1, preconR_W1, momentum_W1, useDiag_W1) - [b1, preconL_b1, preconR_b1, momentum_b1] = shampoo::update_momentum(b1, gradient_b1, lr, preconL_b1, preconR_b1, momentum_b1, useDiag_b1) - [W2, preconL_W2, preconR_W2, momentum_W2] = shampoo::update_momentum(W2, gradient_W2, lr, preconL_W2, preconR_W2, momentum_W2, useDiag_W2) - [b2, preconL_b2, preconR_b2, momentum_b2] = shampoo::update_momentum(b2, gradient_b2, lr, preconL_b2, preconR_b2, momentum_b2, useDiag_b2) - [W_fc, preconL_W_fc, preconR_W_fc, momentum_W_fc] = shampoo::update_momentum(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, momentum_W_fc, useDiag_W_fc) - [b_fc, preconL_b_fc, preconR_b_fc, momentum_b_fc] = shampoo::update_momentum(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, momentum_b_fc, useDiag_b_fc) - } - if ((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ - [W1, preconL_W1, preconR_W1, momentum_W1, stepCounter_W1, bufferL_W1, bufferR_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1] = shampoo::update_heuristic(W1, gradient_W1, lr, preconL_W1, preconR_W1, momentum_W1, stepCounter_W1, rootEvery, preconEvery, bufferL_W1, bufferR_W1, preconLInvPowerRoot_W1, preconRInvPowerRoot_W1, useDiag_W1) - [b1, preconL_b1, preconR_b1, momentum_b1, stepCounter_b1, bufferL_b1, bufferR_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1] = shampoo::update_heuristic(b1, gradient_b1, lr, preconL_b1, preconR_b1, momentum_b1, stepCounter_b1, rootEvery, preconEvery, bufferL_b1, bufferR_b1, preconLInvPowerRoot_b1, preconRInvPowerRoot_b1, useDiag_b1) - [W2, preconL_W2, preconR_W2, momentum_W2, stepCounter_W2, bufferL_W2, bufferR_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2] = shampoo::update_heuristic(W2, gradient_W2, lr, preconL_W2, preconR_W2, momentum_W2, stepCounter_W2, rootEvery, preconEvery, bufferL_W2, bufferR_W2, preconLInvPowerRoot_W2, preconRInvPowerRoot_W2, useDiag_W2) - [b2, preconL_b2, preconR_b2, momentum_b2, stepCounter_b2, bufferL_b2, bufferR_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2] = shampoo::update_heuristic(b2, gradient_b2, lr, preconL_b2, preconR_b2, momentum_b2, stepCounter_b2, rootEvery, preconEvery, bufferL_b2, bufferR_b2, preconLInvPowerRoot_b2, preconRInvPowerRoot_b2, useDiag_b2) - [W_fc, preconL_W_fc, preconR_W_fc, momentum_W_fc, stepCounter_W_fc, bufferL_W_fc, bufferR_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc] = shampoo::update_heuristic(W_fc, gradient_lin_layer_W, lr, preconL_W_fc, preconR_W_fc, momentum_W_fc, stepCounter_W_fc, rootEvery, preconEvery, bufferL_W_fc, bufferR_W_fc, preconLInvPowerRoot_W_fc, preconRInvPowerRoot_W_fc, useDiag_W_fc) - [b_fc, preconL_b_fc, preconR_b_fc, momentum_b_fc, stepCounter_b_fc, bufferL_b_fc, bufferR_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc] = shampoo::update_heuristic(b_fc, gradient_lin_layer_b, lr, preconL_b_fc, preconR_b_fc, momentum_b_fc, stepCounter_b_fc, rootEvery, preconEvery, bufferL_b_fc, bufferR_b_fc, preconLInvPowerRoot_b_fc, preconRInvPowerRoot_b_fc, useDiag_b_fc) - } - if (optimizer == "adam"){ - [W1, m_W1, v_W1] = adam::update(W1, gradient_W1, lr, 0.9, 0.999, epsilon, timestep, m_W1, v_W1) - [b1, m_b1, v_b1] = adam::update(b1, gradient_b1, lr, 0.9, 0.999, epsilon, timestep, m_b1, v_b1) - [W2, m_W2, v_W2] = adam::update(W2, gradient_W2, lr, 0.9, 0.999, epsilon, timestep, m_W2, v_W2) - [b2, m_b2, v_b2] = adam::update(b2, gradient_b2, lr, 0.9, 0.999, epsilon, timestep, m_b2, v_b2) - [W_fc, m_W_fc, v_W_fc] = adam::update(W_fc, gradient_lin_layer_W, lr, 0.9, 0.999, epsilon, timestep, m_W_fc, v_W_fc) - [b_fc, m_b_fc, v_b_fc] = adam::update(b_fc, gradient_lin_layer_b, lr, 0.9, 0.999, epsilon, timestep, m_b_fc, v_b_fc) - timestep = timestep + 1 + if (loss < bestLoss) { + bestLoss = loss + bestEpsilon = candidate } } - train_losses[epoch,1] = loss_value / loss_count - train_accuracies[epoch,1] = accuracy_value/accuracy_count + epsilon = bestEpsilon; + print("best epsilon = " + epsilon + " (loss=" + bestLoss + ")") - [softMaxOut_val, X_val, convOut1_val, poolOut1_val, reluOut1_val, convOut2_val, poolOut2_val, reluOut2_val, pred_val] = modelPredict(X_val, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + # tuning lr + bestLoss = 10000 + bestLr = lr + for (i in 1:length(lrList)) { + candidate = as.double(as.scalar(lrList[i])) + [loss, accuracy] = runTraining(type, epsilon, candidate, rootEvery, preconEvery, epochs, datasetName, 1) - predicted_value_val = rowIndexMax(softMaxOut_val) - 1 - accuracy_val = sum(predicted_value_val==rowIndexMax(Y_val)-1) / length(predicted_value_val) + run = run + 1; + tuningLog = logRow(tuningLog, run, round, 2, candidate, loss, candidate, lr, rootEvery, preconEvery) - val_accuracies[epoch,1] = accuracy_val + if (loss < bestLoss) { + bestLoss = loss + bestLr = candidate + } + } + lr = bestLr + print("best lr = " + lr + " (loss=" + bestLoss + ")") - loss = cross_entropy_loss::forward(softMaxOut_val, Y_val) - val_losses[epoch,1] = loss - } + if (type == "finetuningShampooHeuristics"){ - # define the testing + # tuning rootEvery + bestLoss = 10000; + bestRoot = rootEvery; - [softMaxOut_test, X_test, convOut1_test, poolOut1_test, reluOut1_test, convOut2_test, poolOut2_test, reluOut2_test, pred_test] = modelPredict(X_test, W1, b1, W2, b2, W_fc, b_fc, h_ins, w_ins, c_ins) + for (i in 1:length(rootEveryList)) { + candidate = as.integer(as.scalar(rootEveryList[i])) + [loss, accuracy] = runTraining(type, epsilon, lr, candidate, preconEvery, epochs, datasetName, 1) - predicted_value = rowIndexMax(softMaxOut_test) - 1 - accuracy = sum(predicted_value==rowIndexMax(Y_test)-1) / length(predicted_value) + run = run + 1 + tuningLog = logRow(tuningLog, run, round, 3, candidate, loss, candidate, lr, rootEvery, preconEvery) - loss = cross_entropy_loss::forward(softMaxOut_test, Y_test) + if (loss < bestLoss) { + bestLoss = loss + bestRoot = candidate + } + } + rootEvery = bestRoot + print("best rootEvery = " + rootEvery + " (loss=" + bestLoss + ")") + + # tuning preconEvery + bestLoss = 1e9; + bestPrecon = preconEvery; - outDir = "scripts/staging/shampoo_optimizer/metrics" - epochs = nrow(train_losses) - epoch_col = seq(1, epochs) - M = cbind(epoch_col, train_losses, train_accuracies, val_losses, val_accuracies) - write(M, outDir + "/metrics" + "_" + optimizer + "_" + dataset_name + ".csv", format="csv") + for (i in 1:length(preconEveryList)) { + candidate = as.integer(as.scalar(preconEveryList[i])) + [loss, accuracy] = runTraining(type, epsilon, lr, rootEvery, candidate, epochs, datasetName, 1) - print("Test Accuracy of " + optimizer + " on " + dataset_name + " = " + accuracy) - print("Test Loss of " + optimizer + " on " + dataset_name + " = " + loss) + run = run + 1; + tuningLog = logRow(tuningLog, run, round, 4, candidate, loss, candidate, lr, rootEvery, preconEvery) + if (loss < bestLoss) { + bestLoss = loss + bestPrecon = candidate + } + } + preconEvery = bestPrecon + print("best preconEvery = " + preconEvery + " (loss=" + bestLoss + ")") + } + print("Round " + round + " params: eps=" + epsilon + ", lr=" + lr + + ", rootEvery=" + rootEvery + ", preconEvery=" + preconEvery) + } + bestParams = list(epsilon, lr, rootEvery, preconEvery) } + + +############################################################################################# +datasetName = "cifar" #Alternatives: "mnist" or "cifar" +optimizersToExperiment = 9 # There are up to 9 optimizers available +############################################################################################# +# standard experiment +loss = runTraining("training", 0, 0, 0, 0, 0, datasetName, optimizersToExperiment) + + +############################################################################################# +datasetName = "cifar" #Alternatives: "mnist" or "cifar" +type = "finetuningShampooHeuristics" # "finetuning" or "finetuningShampooHeuristics" + +# finetuning list +epsilonList = list(0.09, 0.08, 0.07, 0.06, 0.05) +lrList = list(0.5, 0.4, 0.3, 0.2) +rootEveryList = list(4, 8, 12) +preconEveryList = list(2, 4) + +# standard values +epsilon = 0.1 +lr = 0.3 +rootEvery = 4 +preconEvery = 2 +epochs = 30 + +rounds = 2 +############################################################################################# +# hyperparameter tuning +# startHyperparameterTuning(type, datasetName, epsilonList, lrList, rootEveryList, preconEveryList, epsilon, lr, rootEvery, preconEvery, epochs, rounds) \ No newline at end of file diff --git a/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments_resnet.dml b/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments_resnet.dml new file mode 100644 index 00000000000..ed91b3c2bc9 --- /dev/null +++ b/scripts/staging/shampoo_optimizer/shampoo_optimizer_experiments_resnet.dml @@ -0,0 +1,734 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +source("scripts/nn/networks/resnet34.dml") as resnet34 +source("scripts/nn/networks/resnet18.dml") as resnet18 + +source("scripts/nn/optim/shampoo.dml") as shampoo +source("scripts/nn/optim/adagrad.dml") as adagrad +source("scripts/nn/optim/adam.dml") as adam +source("scripts/nn/layers/cross_entropy_loss.dml") as cross_entropy_loss +source("scripts/nn/layers/softmax.dml") as softmax + +initShampooHelper = function(string optimizer, matrix[double] weights, double epsilon, int diagThreshold) + return(list[unknown] paramsOptimizerLayer) { + /* + * Initializes and packs the per-layer optimizer state for a Shampoo variant. + * + * Based on `optimizer`, this function calls the corresponding Shampoo initializer + * and returns a `paramsOptimizerLayer` list that contains all state needed for + * subsequent update steps. + * + * Inputs: + * - optimizer: Shampoo variant identifier ("shampoo", "shampoo_momentum", "shampoo_heuristic") + * - weights: Parameter matrix of the current layer + * - epsilon: Numerical stability constant for preconditioner initialization + * - diagThreshold: Dimension threshold controlling whether diagonal preconditioning is used + * + * Outputs: + * - paramsOptimizerLayer: Optimizer state list for this layer, with layout depending on variant: + * - "shampoo": + * [preconL, preconR, useDiag] + * - "shampoo_momentum": + * [preconL, preconR, momentum, useDiag] + * - "shampoo_heuristic": + * [preconL, preconR, stepCounter, bufferL, bufferR, momentum, + * preconLinvPowerRoot, preconRinvPowerRoot, useDiag] + */ + if (optimizer=="shampoo") { + [preconL, preconR, useDiag] = shampoo::init(weights, epsilon, diagThreshold) + paramsOptimizerLayer = list(preconL, preconR, useDiag) + } + if (optimizer=="shampoo_momentum"){ + [preconL, preconR, momentum, useDiag] = shampoo::init_momentum(weights, epsilon, diagThreshold) + paramsOptimizerLayer = list(preconL, preconR, momentum, useDiag) + } + if (optimizer=="shampoo_heuristic"){ + [preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLinvPowerRoot, preconRinvPowerRoot, useDiag] = shampoo::init_heuristic(weights, epsilon, diagThreshold) + paramsOptimizerLayer = list(preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLinvPowerRoot, preconRinvPowerRoot, useDiag) + } +} + +initShampooForModel = function(string optimizer, list[unknown] model, double epsilon, int diagThreshold) + /* + * Initializes Shampoo optimizer state for an entire ResNet-style model and + * returns it in a structure that mirrors the model's parameter layout. + * + * This function iterates over all model parameter groups: + * - layers 1..3 (stem / early layers), + * - residual layers 4..7 (each a list of blocks, each block a list of params), + * - layers 8..9 (final fully-connected layers), + * and calls `initShampooHelper` for every parameter matrix. + * + * Inputs: + * - optimizer: Shampoo variant identifier ("shampoo", "shampoo_momentum", "shampoo_heuristic") + * - model: Model parameter list (ResNet-style layout) + * - epsilon: Numerical stability constant for preconditioner initialization + * - diagThreshold: Dimension threshold controlling whether diagonal preconditioning is used + * + * Outputs: + * - paramsOptimizer: Nested list of optimizer states with the same outer indexing scheme as `model`. + */ + return(list[unknown] paramsOptimizer) { + + paramsOptimizerLayer1 = initShampooHelper(optimizer, as.matrix(model[1]), epsilon, diagThreshold) + paramsOptimizerLayer2 = initShampooHelper(optimizer, as.matrix(model[2]), epsilon, diagThreshold) + paramsOptimizerLayer3 = initShampooHelper(optimizer, as.matrix(model[3]), epsilon, diagThreshold) + + # 4 to 7: residual layers (each is list of blocks) + residualLayersParams = list() # will hold 4 entries + + for(layerIndex in 4:7) { + layer = as.list(model[layerIndex]) # list of blocks + layer_blocks = list() + + for(blockIndex in 1:length(layer)) { + blockParameters = as.list(layer[blockIndex]) # list of params in this block + parameters = list() + + for(parameterIndex in 1:length(blockParameters)) { + parameter = as.matrix(blockParameters[parameterIndex]) + tmp = initShampooHelper(optimizer, parameter, epsilon, diagThreshold) + parameters = append(parameters, tmp) + } + + layer_blocks = append(layer_blocks, parameters) + } + + residualLayersParams = append(residualLayersParams, layer_blocks) + } + + # 8..9: fully connected + paramsOptimizerLayer8 = initShampooHelper(optimizer, as.matrix(model[8]), epsilon, diagThreshold) + paramsOptimizerLayer9 = initShampooHelper(optimizer, as.matrix(model[9]), epsilon, diagThreshold) + + # pack state with same outer indexing scheme + paramsOptimizer = list( + paramsOptimizerLayer1, paramsOptimizerLayer2, paramsOptimizerLayer3, + as.list(residualLayersParams[1]), as.list(residualLayersParams[2]), as.list(residualLayersParams[3]), as.list(residualLayersParams[4]), + paramsOptimizerLayer8, paramsOptimizerLayer9 + ) +} + + +updateShampooHelper = function(string optimizer, matrix[double] weight, list[unknown] paramsOptimizerLayer, matrix[double] gradient, double lr, int rootEvery, int preconEvery) + return (matrix[double] updatedWeight, list[unknown] paramsOptimizerLayer){ + /* + * Applies one Shampoo update step to a single parameter matrix and updates the + * corresponding optimizer state for the selected Shampoo variant. + * + * Depending on `optimizer`, this function dispatches to: + * - shampoo::update (classic Shampoo), + * - shampoo::update_momentum (Shampoo with momentum), + * - shampoo::update_heuristic (heuristic variant with cached inverse roots and periodic updates). + * + * Inputs: + * - optimizer: Shampoo variant identifier ("shampoo", "shampoo_momentum", "shampoo_heuristic") + * - weight: Current parameter matrix to update + * - paramsOptimizerLayer: Optimizer state for this parameter (layout depends on variant) + * - gradient: Gradient matrix for `weight` + * - lr: Learning rate + * - rootEvery: (heuristic only) Frequency for recomputing inverse roots + * - preconEvery: (heuristic only) Frequency for updating preconditioners + * + * Outputs: + * - updatedWeight: Updated parameter matrix after one optimization step + * - paramsOptimizerLayer: Updated optimizer state for this parameter, re-packed as a list + */ + if (optimizer=="shampoo") { + preconL = as.matrix(paramsOptimizerLayer[1]) + preconR = as.matrix(paramsOptimizerLayer[2]) + useDiag = as.boolean(as.scalar(paramsOptimizerLayer[3])) + [updatedWeight, preconL, preconR] = shampoo::update(weight, gradient, lr, preconL, preconR, useDiag) + paramsOptimizerLayer = list(preconL, preconR, useDiag) + } + if (optimizer=="shampoo_momentum"){ + preconL = as.matrix(paramsOptimizerLayer[1]) + preconR = as.matrix(paramsOptimizerLayer[2]) + momentum = as.matrix(paramsOptimizerLayer[3]) + useDiag = as.boolean(as.scalar(paramsOptimizerLayer[4])) + [updatedWeight, preconL, preconR, momentum] = shampoo::update_momentum(weight, gradient, lr, preconL, preconR, momentum, useDiag) + paramsOptimizerLayer = list(preconL, preconR, momentum, useDiag) + } + if (optimizer=="shampoo_heuristic"){ + preconL = as.matrix(paramsOptimizerLayer[1]) + preconR = as.matrix(paramsOptimizerLayer[2]) + stepCounter = as.integer(as.scalar(paramsOptimizerLayer[3])) + bufferL = as.matrix(paramsOptimizerLayer[4]) + bufferR = as.matrix(paramsOptimizerLayer[5]) + momentum = as.matrix(paramsOptimizerLayer[6]) + preconLinvPowerRoot = as.matrix(paramsOptimizerLayer[7]) + preconRinvPowerRoot = as.matrix(paramsOptimizerLayer[8]) + useDiag = as.boolean(as.scalar(paramsOptimizerLayer[9])) + [updatedWeight, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLinvPowerRoot, preconRinvPowerRoot] = shampoo::update_heuristic(weight, gradient, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLinvPowerRoot, preconRinvPowerRoot, useDiag) + paramsOptimizerLayer = list(preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLinvPowerRoot, preconRinvPowerRoot, useDiag) + } +} + + +updateShampooForModel = function(string optimizer, list[unknown] model, list[unknown] paramsOptimizer, list[unknown] gradients, double lr, int rootEvery, int preconEvery) + return(list[unknown] model, list[unknown] paramsOptimizer){ + /* + * Applies a Shampoo update step to all parameters of a ResNet-style model and + * updates the corresponding optimizer state tree. + * + * The function iterates over: + * - Top-level layers 1..3 (single matrices), + * - Residual layers 4..7 (lists of blocks, each block is a list of parameter matrices), + * - Fully connected layers 8..9 (single matrices), + * and calls `updateShampooHelper` for each parameter using the matching gradient + * and per-parameter optimizer state. + * + * Inputs: + * - optimizer: Shampoo variant identifier ("shampoo", "shampoo_momentum", "shampoo_heuristic") + * - model: Model parameter structure (same indexing scheme as ResNet init/forward/backward) + * - paramsOptimizer: Optimizer state structure aligned with `model` + * - gradients: Gradient structure aligned with `model` + * - lr: Learning rate + * - rootEvery: (heuristic only) Frequency for recomputing inverse roots + * - preconEvery: (heuristic only) Frequency for updating preconditioners + * + * Outputs: + * - model: Updated model parameters after applying one optimizer step + * - paramsOptimizer: Updated optimizer state tree after applying one optimizer step + */ + + [updatedWeightLayer1, paramsOptimizerLayer1] = updateShampooHelper(optimizer, as.matrix(model[1]), as.list(paramsOptimizer[1]), as.matrix(gradients[1]), lr, rootEvery, preconEvery) + model[1] = updatedWeightLayer1 + paramsOptimizer[1] = list(paramsOptimizerLayer1) + [updatedWeightLayer2, paramsOptimizerLayer2] = updateShampooHelper(optimizer, as.matrix(model[2]), as.list(paramsOptimizer[2]), as.matrix(gradients[2]), lr, rootEvery, preconEvery) + model[2] = updatedWeightLayer2 + paramsOptimizer[2] = list(paramsOptimizerLayer2) + [updatedWeightLayer3, paramsOptimizerLayer3] = updateShampooHelper(optimizer, as.matrix(model[3]), as.list(paramsOptimizer[3]), as.matrix(gradients[3]), lr, rootEvery, preconEvery) + model[3] = updatedWeightLayer3 + paramsOptimizer[3] = list(paramsOptimizerLayer3) + + # 4 to 7: residual layers (each is list of blocks) + residualLayersParams = list() + residualLayersWeights = list() + + for(layerIndex in 4:7) { + layerParameters = as.list(paramsOptimizer[layerIndex]) + layerWeights = as.list(model[layerIndex]) + layerGradients = as.list(gradients[layerIndex]) + + for(blockIndex in 1:length(layerParameters)) { + blockParameters = as.list(layerParameters[blockIndex]) # list of params in this block + blockWeights = as.list(layerWeights[blockIndex]) + blockGradients = as.list(layerGradients[blockIndex]) + + for(parameterIndex in 1:length(blockParameters)) { + parameter = as.list(blockParameters[parameterIndex]) + weight = as.matrix(blockWeights[parameterIndex]) + gradient = as.matrix(blockGradients[parameterIndex]) + [updatedWeight, updatedParameter] = updateShampooHelper(optimizer, weight, parameter, gradient, lr, rootEvery, preconEvery) + + blockWeights[parameterIndex] = updatedWeight + blockParameters[parameterIndex] = list(updatedParameter) + } + layerWeights[blockIndex] = list(blockWeights) + layerParameters[blockIndex] = list(blockParameters) + } + model[layerIndex] = list(layerWeights) + paramsOptimizer[layerIndex] = list(layerParameters) + } + + # 8..9: fully connected + [updatedWeightLayer8, paramsOptimizerLayer8]= updateShampooHelper(optimizer, as.matrix(model[8]), as.list(paramsOptimizer[8]), as.matrix(gradients[8]), lr, rootEvery, preconEvery) + model[8] = updatedWeightLayer8 + paramsOptimizer[8] = list(paramsOptimizerLayer8) + [updatedWeightLayer9, paramsOptimizerLayer9] = updateShampooHelper(optimizer, as.matrix(model[9]), as.list(paramsOptimizer[9]), as.matrix(gradients[9]), lr, rootEvery, preconEvery) + model[9] = updatedWeightLayer9 + paramsOptimizer[9] = list(paramsOptimizerLayer9) + +} + +addL2Regularization = function(list[unknown] model, list[unknown] gradients, double weightDecay) + return (list[unknown] gradients) { + /* + * Adds L2 regularization (weight decay) to a model's gradients in-place. + * + * For each eligible weight matrix W, the gradient is adjusted as: + * G <- G + weightDecay * W + * + * The function applies weight decay to: + * - Layer 1 (always), + * - Residual layers 4..7 (all block parameters with nrow(W)>1 and ncol(W)>1), + * - Layer 8 (always), + * and leaves bias-like parameters (vectors / 1D shapes) unchanged. + * + * Inputs: + * - model: Model parameter structure (ResNet-style indexing) + * - gradients: Gradient structure aligned with `model` + * - weightDecay: L2 regularization coefficient + * + * Outputs: + * - gradients: Updated gradients with weight decay added to selected parameters + */ + + g1 = as.matrix(gradients[1]) + weightDecay * as.matrix(model[1]) + gradients[1] = g1 + + for(layerIndex in 4:7) { + layerWeights = as.list(model[layerIndex]) + layerGrads = as.list(gradients[layerIndex]) + + for(blockIndex in 1:length(layerGrads)) { + blockWeights = as.list(layerWeights[blockIndex]) + blockGrads = as.list(layerGrads[blockIndex]) + + for(paramIndex in 1:length(blockGrads)) { + W = as.matrix(blockWeights[paramIndex]) + G = as.matrix(blockGrads[paramIndex]) + + if (nrow(W) > 1 & ncol(W) > 1) { + g = G + weightDecay * W + blockGrads[paramIndex] = g + } else { + blockGrads[paramIndex] = G + } + } + + layerGrads[blockIndex] = list(blockGrads) + } + + gradients[layerIndex] = list(layerGrads) + } + + g8 = as.matrix(gradients[8]) + weightDecay * as.matrix(model[8]) + gradients[8] = g8 +} + +definingData = function(string datasetName) + return(matrix[double] XTrain, matrix[double] YTrain, matrix[double] XVal, matrix[double] YVal, matrix[double] XTest, matrix[double] YTest){ + /* + * Loads and prepares train/validation/test splits for MNIST or CIFAR-10. + * + * MNIST: + * - Reads `mnist_test.csv`, splits into train/test by row ranges. + * - Normalizes pixel values to [0,1] by dividing by 255. + * - Creates a validation set from the first 1000 training rows. + * - One-hot encodes labels into 10 classes. + * + * CIFAR-10: + * - Reads `cifar10.csv` (custom preprocessed CSV with label in column 1). + * - Uses rows 1..20000 for training pool and 20001..30000 for test. + * - Creates a validation set from the first 5000 training rows and + * uses the remainder for training. + * - One-hot encodes labels into 10 classes. + * - Prints dataset size diagnostics (row counts and min/max for XTrain). + * + * Inputs: + * - datasetName: "mnist" or "cifar" + * + * Outputs: + * - XTrain, YTrain: Training features and one-hot labels + * - XVal, YVal: Validation features and one-hot labels + * - XTest, YTest: Test features and one-hot labels + */ + + if (datasetName=="mnist"){ + data = read("src/test/resources/datasets/MNIST/mnist_test.csv", format="csv") + train = data[1:8999,] + test = data[9000:nrow(data),] + + images = train[,2:ncol(train)] + images = images / 255.0 + labels = train[,1] + imagesTest = test[,2:ncol(test)] + imagesTest = imagesTest / 255.0 + labelsTest = test[,1] + + N = nrow(images) + nTest = nrow(imagesTest) + + XTrain = images[1001:nrow(images),] + labelsTrain = labels[1001:nrow(images),] + YTrain = table(seq(1, nrow(XTrain)), labelsTrain+1, nrow(XTrain), 10) + + XVal = images[1:1000,] + labelsVal = labels[1:1000,] + YVal = table(seq(1, nrow(XVal)), labelsVal+1, nrow(XVal), 10) + + XTest = imagesTest + YTest = table(seq(1, nTest), labelsTest+1, nTest, 10) + } + if (datasetName=="cifar"){ + data = read("scripts/staging/shampoo_optimizer/cifar10.csv", format="csv") + + train = data[1:20000,] + test = data[20001:30000,] + + images = train[,2:ncol(train)] + labels = train[,1] + imagesTest = test[,2:ncol(test)] + labelsTest = test[,1] + + N = nrow(images) + nTest = nrow(imagesTest) + + XTrain = images[5001:nrow(images),] + labelsTrain = labels[5001:nrow(images),] + YTrain = table(seq(1, nrow(XTrain)), labelsTrain+1, nrow(XTrain), 10) + XVal = images[1:5000,] + labelsVal = labels[1:5000,] + YVal = table(seq(1, nrow(XVal)), labelsVal+1, nrow(XVal), 10) + + XTest = imagesTest + YTest = table(seq(1, nTest), labelsTest+1, nTest, 10) + + #train = data[1:39999,] + #test = data[40000:nrow(data),] + + #images = train[,2:ncol(train)] + #images = images / 255.0 + #labels = train[,1] + #imagesTest = test[,2:ncol(test)] + #labelsTest = test[,1] + + #N = nrow(images) + #nTest = nrow(imagesTest) + + #XTrain = images[5001:nrow(images),] + #labelsTrain = labels[5001:nrow(images),] + #YTrain = table(seq(1, nrow(XTrain)), labelsTrain+1, nrow(XTrain), 10) + + #XVal = images[1:5000,] + #labelsVal = labels[1:5000,] + #YVal = table(seq(1, nrow(XVal)), labelsVal+1, nrow(XVal), 10) + + #XTest = imagesTest + #YTest = table(seq(1, nTest), labelsTest+1, nTest, 10) + } +} + +# Define image properties + +definingImageProperties = function(string datasetName) + return(int hIn, int wIn, int cIn, int classes){ + /* + * Returns basic image shape metadata for the selected dataset. + * + * Provides the input height/width, number of channels, and number of classes + * for the supported datasets. + * + * Inputs: + * - datasetName: Dataset identifier ("mnist" or "cifar"). + * + * Outputs: + * - hIn: Input image height. + * - wIn: Input image width. + * - cIn: Number of input channels. + * - classes: Number of classes. + */ + if(datasetName=="mnist"){ + hIn = 28 + wIn = 28 + cIn = 1 + classes = 10 + } + if(datasetName=="cifar"){ + hIn = 32 + wIn = 32 + cIn = 3 + classes = 10 + } +} + + +# Define training parameters +definingTrainingParameters = function(string optimizer, string datasetName) + return(int epochs, int batchSize, double epsilon, double lr, int diagThreshold, int rootEvery, int preconEvery){ + /* + * Returns training hyperparameters (epochs, batch size, and optimizer-specific settings) + * for a given optimizer and dataset. + * + * This function provides preset hyperparameters per optimizer (Adam, Adagrad, SGD, + * and three Shampoo variants) and per dataset ("mnist" vs "cifar"). + * + * Inputs: + * - optimizer: Optimizer name. + * - datasetName: Dataset identifier ("mnist" or "cifar"). + * + * Outputs: + * - epochs: Number of training epochs. + * - batchSize: Mini-batch size. + * - epsilon: Numerical stability constant for the selected optimizer/dataset. + * - lr: Learning rate for the selected optimizer/dataset. + * - diagThreshold: Shampoo diagonalization threshold + * - rootEvery: Frequency for computing matrix roots in Shampoo heuristic. + * - preconEvery: Frequency for updating preconditioners in heuristic Shampoo. + */ + lr = 0.001 + if(optimizer=="adam"){ + if(datasetName=="cifar"){ + epsilon = 1e-7 + lr = 5.0e-4 + }else{ + epsilon = 1e-4 + lr = 0.0015 + } + } + else if(optimizer=="adagrad"){ + if(datasetName=="cifar"){ + epsilon = 1.0e-5 + lr = 0.007 + }else{ + epsilon = 1e-5 + lr = 0.002 + } + } + else if(optimizer=="sgd"){ + if(datasetName=="cifar"){ + epsilon = 1.0e-8 + lr = 0.1 + }else{ + epsilon = 1e-6 + lr = 0.03 + } + } + else if((optimizer == "shampoo_heuristic") | (optimizer == "shampoo_heuristic_diagonal")){ + if(datasetName=="cifar"){ + epsilon = 0.09 + lr = 0.2 + } else{ + epsilon = 0.001 + lr = 0.1 + } + } + else if((optimizer == "shampoo_momentum") | (optimizer == "shampoo_momentum_diagonal")){ + if(datasetName=="cifar"){ + epsilon = 1.0e-7 + lr = 0.3 + } else{ + epsilon = 1e-4 + lr = 0.55 + } + } + else if((optimizer == "shampoo") | (optimizer == "shampoo_diagonal")){ + if(datasetName=="cifar"){ + epsilon = 0.09 + lr = 0.2 + } else{ + epsilon = 0.2 + lr = 0.6 + } + } + + if(datasetName=="cifar"){ + epochs = 200 + } else{ + epochs = 30 + } + batchSize = 64 + rootEvery = 8 + preconEvery = 2 + if ((optimizer == "shampoo_diagonal") | (optimizer == "shampoo_momentum_diagonal") | (optimizer == "shampoo_heuristic_diagonal")){ + diagThreshold = 1 + } else{ + diagThreshold = 1200 + } +} + +getOptimizer = function(int optimizerIndex) + return(string optimizer){ + /* + * Maps an integer index to an optimizer name string used throughout the + * experiment pipeline. + * + * Inputs: + * - optimizerIndex: Integer identifier of the optimizer (1..6) + * + * Outputs: + * - optimizer: Optimizer name corresponding to the index. + */ + if (optimizerIndex==1) + { + optimizer = "shampoo" + } + if (optimizerIndex==2) + { + optimizer = "shampoo_momentum" + } + if (optimizerIndex==3) + { + optimizer = "shampoo_heuristic" + } + if (optimizerIndex==4) + { + optimizer = "adam" + } + if (optimizerIndex==5) + { + optimizer = "sgd" + } + if (optimizerIndex==6) + { + optimizer = "adagrad" + } +} + +# set parameters for the experiments +############################################################################################# +datasetName = "cifar" #Alternatives: "mnist" or "cifar" +optimizersToExperiment = 6 +# Alternatives: ("shampoo", "shampoo_momentum", "shampoo_heuristic", "adam", "sgd", "adagrad") +############################################################################################# + + +for (optimizerIndex in 1:optimizersToExperiment){ + optimizer = getOptimizer(optimizerIndex) + print("Starting with " + optimizer) + seed = 42 + # get the data + [XTrain, YTrain, XVal, YVal, XTest, YTest] = definingData(datasetName) + + # get image properties + [hIn, wIn, cIn, classes] = definingImageProperties(datasetName) + + # get training parameters + [epochs, batchSize, epsilon, lr, diagThreshold, rootEvery, preconEvery]= definingTrainingParameters(optimizer, datasetName) + + # init the model + + [model, emas] = resnet18::init(classes, seed) + + # init the optimizer + + if ((optimizer == "shampoo") | (optimizer == "shampoo_momentum") | (optimizer == "shampoo_heuristic")){ + paramsOptimizer = initShampooForModel(optimizer, model, epsilon, diagThreshold) + } + if (optimizer == "adam"){ + paramsOptimizer = resnet18::init_adam_optim_params(classes) + } + if (optimizer == "adagrad"){ + paramsOptimizer = resnet18::init_adagrad_optim_params(classes) + } + if (optimizer == "sgd"){ + # not needed to init + } + + trainLosses = matrix(0, rows=epochs, cols=1) + trainAccuracies = matrix(0, rows=epochs, cols=1) + valAccuracies = matrix(0, rows=epochs, cols=1) + valLosses = matrix(0, rows=epochs, cols=1) + Ntrain = nrow(XTrain) + + # train the model + t = 0 + for(epoch in 1:epochs){ + + print("Epoch " + epoch + " of " + epochs + " epochs") + + accuracyValue = 0 + accuracyCount = 0 + lossValue = 0 + lossCount = 0 + + numBatches = as.integer(ceil(Ntrain / batchSize)) + batchID = 0 + + for(startIndex in seq(1, Ntrain, batchSize)){ + endIndex = min(startIndex + batchSize - 1, Ntrain) + dataTrainX = XTrain[startIndex:endIndex,] + dataTrainY = YTrain[startIndex:endIndex,] + + batchID = batchID + 1 + #print("Batch " + batchID + " of " + numBatches + " Batches") + + [out, emas, cachedOut, cachedMeansVars] = resnet18::forward(dataTrainX, hIn, wIn, model, "train", emas) + + predictedValue = rowIndexMax(out) - 1 + accuracy = sum(predictedValue==rowIndexMax(dataTrainY)-1) / length(predictedValue) + accuracyValue = accuracyValue + accuracy + accuracyCount = accuracyCount + 1 + + probs = softmax::forward(out) + loss = cross_entropy_loss::forward(probs, dataTrainY) + dLossDProbs = cross_entropy_loss::backward(probs, dataTrainY) + dOut = softmax::backward(dLossDProbs, out) + + lossValue = lossValue + loss + lossCount = lossCount + 1 + + [dX, gradients] = resnet18::backward(dOut, cachedOut, model, cachedMeansVars) + + + weightDecay = 1e-3 + gradients = addL2Regularization(model, gradients, weightDecay) + + # optimizing + if ((optimizer == "shampoo") | (optimizer == "shampoo_momentum") | (optimizer == "shampoo_heuristic")){ + [model, paramsOptimizer] = updateShampooForModel(optimizer, model, paramsOptimizer, gradients, lr, rootEvery, preconEvery) + } + if (optimizer == "adam"){ + [model, paramsOptimizer] = resnet18::update_params_with_adam(model, gradients, lr, 0.9, 0.999, 1e-8, t, paramsOptimizer) + t = t+1 + } + if (optimizer == "adagrad"){ + [model, paramsOptimizer] = resnet18::update_params_with_adagrad(model, gradients, lr, epsilon, paramsOptimizer) + } + if (optimizer == "sgd"){ + model = resnet18::update_params_with_sgd(model, gradients, lr) + } + } + + trainLosses[epoch,1] = lossValue / lossCount + trainAccuracies[epoch,1] = accuracyValue/accuracyCount + + print("Train Loss of " + optimizer + " = " + (lossValue / lossCount)) + print("Train Accuracy of " + optimizer + " = " + (accuracyValue/accuracyCount)) + + # val loss + [outVal, emaMeansVarsUpdVal, cachedOutVal, cachedMeansVarsVal] = resnet18::forward(XVal, hIn, wIn, model, "test", emas) + + predictedValueVal = rowIndexMax(outVal) - 1 + accuracyVal = sum(predictedValueVal==rowIndexMax(YVal)-1) / length(predictedValueVal) + + valAccuracies[epoch,1] = accuracyVal + probsVal = softmax::forward(outVal) + loss = cross_entropy_loss::forward(probsVal, YVal) + valLosses[epoch,1] = loss + print("Val Loss of " + optimizer + " = " + loss) + print("Val Accuracy of " + optimizer + " = " + accuracyVal) + + } + + # define the testing + + [outTest, emaMeansVarsUpdTest, cachedOutTest, cachedMeansVarsTest] = resnet18::forward(XTest, hIn, wIn, model, "test", emas) + + predictedValue = rowIndexMax(outTest) - 1 + accuracy = sum(predictedValue==rowIndexMax(YTest)-1) / length(predictedValue) + + probs_test = softmax::forward(outTest) + loss = cross_entropy_loss::forward(probs_test, YTest) + + outDir = "scripts/staging/shampoo_optimizer/metrics" + epochs = nrow(trainLosses) + epoch_col = seq(1, epochs) + M = cbind(epoch_col, trainLosses, trainAccuracies, valLosses, valAccuracies) + write(M, outDir + "/metrics" + "_" + optimizer + "_" + datasetName + ".csv", format="csv") + + print("Test Accuracy of " + optimizer + " on " + datasetName + " = " + accuracy) + print("Test Loss of " + optimizer + " on " + datasetName + " = " + loss) + +} \ No newline at end of file diff --git a/src/test/scripts/applications/nn/component/shampoo_test.py b/src/test/scripts/applications/nn/component/shampoo_test.py index 6e4e1290cad..eb142452c37 100644 --- a/src/test/scripts/applications/nn/component/shampoo_test.py +++ b/src/test/scripts/applications/nn/component/shampoo_test.py @@ -20,6 +20,7 @@ #------------------------------------------------------------- import numpy as np +from systemds.context import SystemDSContext # update shampoo def update_shampoo(X, dX, lr, preconL, preconR, useDiag): @@ -198,19 +199,12 @@ def init_shampoo_heuristic(X, epsilon, useDiagThreshold): bufferR = preconR * 0 bufferL = preconL * 0 stepCounter = 0 - momentum = X * 0 return(preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) -n = 5 -m = 5 -epsilon = 1e-4 -lr = 0.005 -diagThreshold = 10 -rootEvery=10 -preconEvery=10 + # define weight matrix -X = np.array([ +X_main = np.array([ [ 0.12, -0.45, 0.33, 0.08, -0.19], [-0.27, 0.41, -0.05, 0.22, 0.14], [ 0.09, -0.31, 0.26, -0.48, 0.37], @@ -227,20 +221,40 @@ def init_shampoo_heuristic(X, epsilon, useDiagThreshold): [ 0.010, -0.017, 0.024, -0.003, 0.028], ], dtype=np.float64) -for diagThreshold in (1, 10): - X_py = X.copy() - dX = dX_main.copy() +with SystemDSContext() as sds: + n = 5 + m = 5 + epsilon = 1e-4 + lr = 0.005 + diagThreshold = 10 + rootEvery=10 + preconEvery=10 + + shampooUtils = sds.source("src/test/scripts/applications/nn/component/shampoo_test2.dml", "shampooUtils") - # preconL_py, preconR_py, useDiag_py = init_shampoo(X_py, epsilon, diagThreshold) - # X_py, preconL_py, preconR_py = update_shampoo(X_py, dX, lr, preconL_py, preconR_py, useDiag_py) + for shampoo_type in ["shampoo", "shampoo_momentum", "shampoo_heuristic"]: + for diagThreshold in (1, 10): + X = X_main.copy() + dX = dX_main.copy() + + if shampoo_type=="shampoo": + preconL_py, preconR_py, useDiag_py = init_shampoo(X, epsilon, diagThreshold) + X_py, preconL_py, preconR_py = update_shampoo(X, dX, lr, preconL_py, preconR_py, useDiag_py) + elif shampoo_type=="shampoo_momentum": + preconL_py, preconR_py, momentum_py, useDiag_py = init_shampoo_momentum(X, epsilon, diagThreshold) + X_py, preconL_py, preconR_py, momentum_py = update_shampoo_momentum(X, dX, lr, preconL_py, preconR_py, momentum_py, useDiag_py) + elif shampoo_type=="shampoo_heuristic": + preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag = init_shampoo_heuristic(X, epsilon, diagThreshold) + X_py, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot = update_shampoo_heuristic(X, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) + + X_updated = shampooUtils.test_update(sds.from_numpy(X), sds.from_numpy(dX), sds.scalar(shampoo_type), epsilon, lr, diagThreshold, rootEvery, preconEvery).compute() + X_updated = np.asarray(X_updated, dtype=np.float64) + + identical = np.allclose(X_py, X_updated, rtol=1e-7, atol=1e-9) + + diagonal = "diagonal" if diagThreshold==1 else "non-diagonal" + + print(f"{shampoo_type} - {diagonal}: {'Test Passed' if identical else 'Test Failed'}") - # preconL_py, preconR_py, momentum_py, useDiag_py = init_shampoo_momentum(X_py, epsilon, diagThreshold) - # X_py, preconL_py, preconR_py, momentum_py = update_shampoo_momentum(X_py, dX, lr, preconL_py, preconR_py, momentum_py, useDiag_py) - preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag = init_shampoo_heuristic(X_py, epsilon, diagThreshold) - X_py, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot = update_shampoo_heuristic(X_py, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) - - print("diagThreshold: " + str(diagThreshold)) - print(X_py) - \ No newline at end of file diff --git a/src/test/scripts/applications/nn/component/shampoo_test2.dml b/src/test/scripts/applications/nn/component/shampoo_test2.dml index fcfac1aa03f..ef1c62f7c0e 100644 --- a/src/test/scripts/applications/nn/component/shampoo_test2.dml +++ b/src/test/scripts/applications/nn/component/shampoo_test2.dml @@ -21,35 +21,43 @@ source("scripts/nn/optim/shampoo.dml") as shampoo -X_main = matrix("0.12 -0.45 0.33 0.08 -0.19 -0.27 0.41 -0.05 0.22 0.14 0.09 -0.31 0.26 -0.48 0.37 0.44 0.06 -0.29 0.15 -0.11 -0.38 0.24 0.17 -0.07 0.52", - rows=5, cols=5 -) - -dX_main = matrix("0.015 -0.022 0.008 0.031 -0.012 -0.009 0.027 -0.014 0.005 0.019 0.021 -0.006 0.011 -0.025 0.004 -0.018 0.013 -0.029 0.007 -0.016 0.010 -0.017 0.024 -0.003 0.028", - rows=5, cols=5 -) - -epsilon = 1e-4 -lr = 0.005 -diagThreshold = 10 -rootEvery = 10 -preconEvery = 10 - -for (diagThreshold in seq(1, 10, 9)){ - X = X_main - dX = dX_main - #[preconL, preconR, useDiag] = shampoo::init(X, epsilon, diagThreshold) - #[X, preconL, preconR] = shampoo::update(X, dX, lr, preconL, preconR, useDiag) - - #[preconL, preconR, momentum, useDiag] = shampoo::init_momentum(X, epsilon, diagThreshold) - #[X, preconL, preconR, momentum] = shampoo::update_momentum(X, dX, lr, preconL, preconR, momentum, useDiag) - - [preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag] = shampoo::init_heuristic(X, epsilon, diagThreshold) - [X, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot] = shampoo::update_heuristic(X, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) - - print("diagThreshold: " + diagThreshold) - print(X) -} - - - +test_update = function(matrix[double] X, matrix[double] dX, string type, double epsilon, double lr, int diagThreshold, int rootEvery, int preconEvery) + /* + * Applies a single optimization update step to X using a selected Shampoo variant. + * + * This helper initializes the required optimizer state for the given `type` + * (preconditioners, momentum, buffers, cached inverse roots, etc.) and then + * performs exactly one update with gradient `dX`. + * + * Note: + * - This function re-initializes the optimizer state on every call, so it is + * intended for isolated single-step tests/benchmarks, not for training loops + * where state must persist across steps. + * + * Inputs: + * - X: Current parameter matrix + * - dX: Gradient matrix (same shape as X) + * - type: Optimizer variant ("shampoo", "shampoo_momentum", "shampoo_heuristic") + * - epsilon: Numerical stability constant + * - lr: Learning rate + * - diagThreshold: Threshold controlling diagonal vs full preconditioning + * - rootEvery: (heuristic only) Recompute inverse-root frequency + * - preconEvery: (heuristic only) Preconditioner update frequency + * + * Output: + * - XUpdated: Updated parameter matrix after one optimizer step + */ + return(matrix[double] XUpdated){ + if (type=="shampoo"){ + [preconL, preconR, useDiag] = shampoo::init(X, epsilon, diagThreshold) + [XUpdated, preconL, preconR] = shampoo::update(X, dX, lr, preconL, preconR, useDiag) + } + else if (type=="shampoo_momentum"){ + [preconL, preconR, momentum, useDiag] = shampoo::init_momentum(X, epsilon, diagThreshold) + [XUpdated, preconL, preconR, momentum] = shampoo::update_momentum(X, dX, lr, preconL, preconR, momentum, useDiag) + } + else if (type=="shampoo_heuristic"){ + [preconL, preconR, stepCounter, bufferL, bufferR, momentum, preconLInvPowerRoot, preconRInvPowerRoot, useDiag] = shampoo::init_heuristic(X, epsilon, diagThreshold) + [XUpdated, preconL, preconR, momentum, stepCounter, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot] = shampoo::update_heuristic(X, dX, lr, preconL, preconR, momentum, stepCounter, rootEvery, preconEvery, bufferL, bufferR, preconLInvPowerRoot, preconRInvPowerRoot, useDiag) + } + } From 7e1c30e485d71317ba6898593539f39a9a762e3c Mon Sep 17 00:00:00 2001 From: Nicolas Date: Mon, 16 Feb 2026 20:02:17 +0100 Subject: [PATCH 4/4] Renaming diagram_creation to experiment_results and shampoo_test2 to shampoo_test_utils --- .../{diagram_creation.ipynb => experiment_results.ipynb} | 0 src/test/scripts/applications/nn/component/shampoo_test.py | 2 +- .../nn/component/{shampoo_test2.dml => shampoo_test_utils.dml} | 0 3 files changed, 1 insertion(+), 1 deletion(-) rename scripts/staging/shampoo_optimizer/{diagram_creation.ipynb => experiment_results.ipynb} (100%) rename src/test/scripts/applications/nn/component/{shampoo_test2.dml => shampoo_test_utils.dml} (100%) diff --git a/scripts/staging/shampoo_optimizer/diagram_creation.ipynb b/scripts/staging/shampoo_optimizer/experiment_results.ipynb similarity index 100% rename from scripts/staging/shampoo_optimizer/diagram_creation.ipynb rename to scripts/staging/shampoo_optimizer/experiment_results.ipynb diff --git a/src/test/scripts/applications/nn/component/shampoo_test.py b/src/test/scripts/applications/nn/component/shampoo_test.py index eb142452c37..c2815090615 100644 --- a/src/test/scripts/applications/nn/component/shampoo_test.py +++ b/src/test/scripts/applications/nn/component/shampoo_test.py @@ -230,7 +230,7 @@ def init_shampoo_heuristic(X, epsilon, useDiagThreshold): rootEvery=10 preconEvery=10 - shampooUtils = sds.source("src/test/scripts/applications/nn/component/shampoo_test2.dml", "shampooUtils") + shampooUtils = sds.source("src/test/scripts/applications/nn/component/shampoo_test_utils.dml", "shampooUtils") for shampoo_type in ["shampoo", "shampoo_momentum", "shampoo_heuristic"]: for diagThreshold in (1, 10): diff --git a/src/test/scripts/applications/nn/component/shampoo_test2.dml b/src/test/scripts/applications/nn/component/shampoo_test_utils.dml similarity index 100% rename from src/test/scripts/applications/nn/component/shampoo_test2.dml rename to src/test/scripts/applications/nn/component/shampoo_test_utils.dml

    3n${z`4#ua|KKF_Vb70n%u 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 R5Pp)uTIcUu`bAj!KLG|0N<#nu literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/total_comparison_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/total_comparison_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..007ccb53929626578c85c2aff3e880fecf1bd49c GIT binary patch literal 80434 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 EZ?atF761SM literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/total_comparison_mnist.png b/scripts/staging/shampoo_optimizer/diagrams/total_comparison_mnist.png new file mode 100644 index 0000000000000000000000000000000000000000..d0df77f82e9368ffa4ac332b80115024d1cb0660 GIT binary patch literal 84299 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 literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/update_step_times_single_bar.png b/scripts/staging/shampoo_optimizer/diagrams/update_step_times_single_bar.png new file mode 100644 index 0000000000000000000000000000000000000000..678fdf95705b6d5fcbd2f02c7061389b445e46a1 GIT binary patch literal 157020 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

    E&p-c6GOpZ$ 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�_{@19GTy$;4Le}M>@hFS zFoFYH0GnIFNp(88%bL}vj7@3x7cMA?*+Fj|d1z|XAmglVZOya{`hy0o_0}_UW~h+$?n`z_kGp<*K=xpyY^nBnsZ>Yu?b48e13$xaP;ZJG zcqC40fu!jf#aV+cw7>sYTD7V_o{oH4nw0+=N4**rIrW;wG;xgEnUGrY&^H4%;3X845#>KIQb&DtQF1N zoehANP7qXZX@yubTOoVPa=1OspoSQGkT=hZii+CU{ms(W8{2%Tksb4VF2X>R$+GAV z4Ei|yg~ccP4q0i`&F!V=9?&?@& zx27X+HXOE<30+m7bpiJaQOcexk9e|@1y|b%`cotyIg+{l#r+|y`!JSAc7A?}c?PZA2~ch(F(^Mv}dDp z_bUwE|1)lVn;7!C=mrB%dNXgNDjHPSC(OAGH`?EIpqvb`;c^&(ANL=K($kGu|Loas z)9rpe({p{(2FOa?Sf`>HvD5wo11BU2tQJ&sUnU;$8*WsA1(rjGepI|&VkUyjey?N3C~`NWX@+6++qsShN{-as$$89fLx7dYUvP*3AFJnOiq* zWYo0ZuTRV!nrLQA)A!*+vyywdE&FeZjG!`^Pp_H#^A2~m+67zeWdcr1w5VFJteUeY zMV9FZ3`mg!V{h9Um_X6+T>K2`-%qdQx98^@nrwWDS=1F)26;qdCU+n;@jr4T%QKZT zb=Hsoq$p+C`MiHqZMAEM!Be->jzBQ`vqmXxQTdl6*)Y9xHWUl*d7O^DnMjbaFl>X%MB3MpV%5c(}!`t1qWPA-C zVu-|C3iE`FtCH;ywz`2l^Yx%hS!KE)7$Koyek?v=umLVaYmC}}S@QW| znLwn340UU1Y!+THDAB{NwPau7D-pm_rF=L&+%oIuxs8wNX_%r3RhHVM0M@Jj3I88T zU2OQz=-;ySyiovA!?Dr@B0(Sn&41!{aKH3@CnevhA#n%$ z#QryfVA*U zL3B4CrKXAwjmMQ^~6oDm>1oL zO-ymmc$;>cdI51KqC-#dqX_Q|Ix$k&9)c%w=LAudF-huzOX5K-sP?15qEd5{C!c-K zFonjVx9D~XN4#%y5_K_kAO@B_zM z-?McLXxt~D|L5g_&An=YV=+n9u`5zGPegj5xnu}Vv+SQdJMxcWAAd53`lzNIo z(a>u_p2!}+PsQKXt|F=}XAB&SLeA+tpJ~(bZYP-Ff)>!UBp>1ry3aF=v2``}R^=$;`#k zpTEJzmcnIb0I`4LfLuh=qeBk)F(SIv(-b_sAz&Oa@BVPqjMLp6nDs!P^YN8Fs8`2w z*@Ky+w-E3tE1LT4Y*1LDAk?A<|I)v6Z#t!;{r>=5YEH@n?lpHK{uO=c0BW%&6zFtW z;}4E5gLh|Nm}c;uEALw5OF``uOH(?x0rok>-*n^x1IziJ$hmc5KsD2MvYpcLBzaA9 zm-drhlV*NSFI9 z{J%wPBjSpip}6i$4L=Y8D*4%9Mg8QJmbezcCVLJTPo2+wHjBt2E(0xLmUJSYcjgyp zT*}86_et(6n^@^N^gY%h5LM}*=76q;w9MMQc143a#H+(q{7i7s`Fw`?HR_$TMem{Vf{;~FIEp|O`o!yOR;n1;WerKHk09yu`DIpEvIMK zHq!lXG1>TF$a(a>tY=9 zw*0?l>hXoXw7o#Hc7Pev%kKj3D0wfm{3$Hi2&fhE$k}RvA%Ak?8%clxmP|*1cO7d8 z#1BW)#T^QL@YPz%cHiOkQHYRRleZL=5%(bo0|+yA%^au>%>=4xa&4t7MB8B&Q0FVy zYYf6RZn{>#lxN*E*+jDn>6qx$PtoM4QW~Di9pV3l3uU}+z~>(t28No;c85RLgfm$w z*_G&+yHHiXx@1efB}mSne}31?FU-_}+(mV+eq4=t;mjZvR2H9P9Q(S*54-o?Z|?8+ z`WM^L%eE~X+qXu|TK&e9|83j&TFui2&HeVyY}ZmFs*QFmSfFOR{*DLTM}|cF-e63A z+usK~sp#wSOT9<4i#i=mKALDOx_0yEgJ-`p9E?Gl{38)|LHP2*g4;)-}EY-f9U5wuTyxo?dM;w%K!Dh*LVE*s@d+U=?(dv z{|c+8pWnv8siZ#G^x98p8(pA+yKU~(nWr1)RbTJyHe^ndd!~=@i$jSjj$vcw3{;LMbUFc9uGK4FeVa;4 zO<&w$;jZo5-*?J<7Qg>-+wc$G+kJAGi;~&4QY61Dv4b0(I@|;>Zeg7jLzk z%tj2bgeLw`>s_ zMJ^}yC*|ZGvvnx*Io; zPGIVOmvz!ompCkDq3Nmmo#Bf!_~R*MnRP%w0LQib0RO%6Cug6U>|d~S*XtBKEyv>H z35LVl2BU}oZ5W68t)tcs-MOe@$r?u#zdgjWJ0(&80oxS>P4XH+%Xqz*ds?3n&$g`(Cw4}@z1}qeTbup+2Xop^ zpUHdmb#``kpU%uAA~8#R_kk-rD-Y9yDpr1(PPYwoo;F&)mQ0$qjNVs2oH!}A!MmU% zq}L&n|NN0rfF6LG0NEr`H+WtN{<|W#!(goPWhWU{g=lWX^{#f^`PLxvl?W1QI?)+e zhpD+a7_d9FnhxExZs8r$wflmUC9Tq8nDznAUGl-=8LiR_po;5Abp^i}H9d5NOYH+% z5Y(eRDWoPP+Fy)~#T~UR_wS_E-@jOqeC);ESWu%@QOgUy+0lwNq zqn)NbUfhi7jk6L#k%y`UTGy>#KekC+>y;9htLF%b_k1_YcOc1OP{m13D_D#Wz}2Z0 z;}~5s%d!M(tn4FZVA7&@`jdw=3%sSC_Ii(7E&^Ho3pC z`Nuf1@*s0Gtap^V(|JjOCJ5OFhVJdibU!@08Pmp2IPvb*<6FkcDJdxt$t$`(|BVfh z!l&(im2zZEkBNNT-C_6LS=&AgTIR+nsj>X^fBj-j7#X_7Fp|;Ng;o)OARVgyU2X(6))#z zeDBE|z1*(8GcbHdP@H3!Y-;RvGn|ZV8v~`uK z9bsuNAeT>PNawblJD(q&Or(i}a!;r6tV-YL5y&@;jykm?`+|jj<=4w}r+D5YPDDI^ z{u~N>SC65KVZk&^`rR$KyBbc{i4}MDv!H7^0h^|GnPy*^dl7{6wce3?-h+|8d7M60 z(LJ(}6O>q@-_GxO=Lf?&nsUzr>wA-L52c;x1ZZ52^8KK9E|*L*vkxn31uRTxczF1g zW8hRBnK$`#eOjG9bPm_5ox;Z-dQ2e zyn<=>JXN5a28sK;I&^zXSmT`&Ndk1n>dhW$_cmjC58;IW4XGq zd3NmH-HnQqK_%5aI%VSC0? ziz6HjM!l2Fv;obizYZ-;*11*qj}3L9{JX7y*l5iG7Oy9c4f0KkVERa7Dm!Po_>b|v zHbnVwxo^)l0T6zgwvN%ySFs*o`wOz+XLk<0Xq){HzP-c3k9qrj#R-g%>esJd@>;hb z9iN4MZ6{y178U5QD!woG1(a(_Ls}x!}RCO}&oL3osZ7>#4Vpbli9W=E%;v)MSuk`1uHiUmd z1^QiXh5rW3wEya@^bg;3+VDSxF?t(N)&GB#G}max%%!BVgPXtCM>uup;kdW`@Y(+X Dn7Z2p literal 0 HcmV?d00001 diff --git a/scripts/staging/shampoo_optimizer/diagrams/shampoo_diagonal_nondiagonal_comparison_cifar.png b/scripts/staging/shampoo_optimizer/diagrams/shampoo_diagonal_nondiagonal_comparison_cifar.png new file mode 100644 index 0000000000000000000000000000000000000000..2692831f4b8bf23fbe468015488459ea4d126dac GIT binary patch literal 43736 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