181 lines
6.3 KiB
JSON
181 lines
6.3 KiB
JSON
{
|
|
"input_size": 7,
|
|
"output_size": 1,
|
|
"hidden_size": 512,
|
|
"n_stacks_trend": 3,
|
|
"n_stacks_seasonal": 4,
|
|
"blocks_per_stack": 3,
|
|
"theta_size_trend": 2,
|
|
"theta_size_season": 4,
|
|
"epochs": 300,
|
|
"batch_size": 32,
|
|
"learning_rate": 0.0001,
|
|
"loss_type": "mse",
|
|
"alpha": 0.1,
|
|
"neuron_function": "GELU(approximate='none')",
|
|
"device": "cuda",
|
|
"train_samples": 1971,
|
|
"validation_samples": 494,
|
|
"train_input_shape": [
|
|
1971,
|
|
7
|
|
],
|
|
"train_target_shape": [
|
|
1971,
|
|
1
|
|
],
|
|
"validation_input_shape": [
|
|
494,
|
|
7
|
|
],
|
|
"validation_target_shape": [
|
|
494,
|
|
1
|
|
],
|
|
"best_epoch": 300,
|
|
"best_validation_loss": 4.962215825798921e-05,
|
|
"time_complexity": {
|
|
"forward": "O(N * B * H^2)",
|
|
"training_step_approx": "O(N * B * H^2)",
|
|
"gradient_norm_calculation": "O(P)",
|
|
"N_batch_size": 32,
|
|
"B_total_blocks": 21,
|
|
"H_hidden_size": 512,
|
|
"I_input_size": 7,
|
|
"O_output_size": 1,
|
|
"total_parameters": 16750308
|
|
},
|
|
"big_o_empirical_test": {
|
|
"benchmark_batch_size": 8,
|
|
"device": "cuda",
|
|
"hidden_size_scaling": {
|
|
"expected_complexity": "O(H^2)",
|
|
"results": [
|
|
{
|
|
"hidden_size": 128,
|
|
"total_blocks": 21,
|
|
"batch_size": 8,
|
|
"time_seconds_median": 0.01987130008637905,
|
|
"time_milliseconds_median": 19.87130008637905,
|
|
"theoretical_relative_cost_vs_first": 1.0
|
|
},
|
|
{
|
|
"hidden_size": 256,
|
|
"total_blocks": 21,
|
|
"batch_size": 8,
|
|
"time_seconds_median": 0.01879219990223646,
|
|
"time_milliseconds_median": 18.79219990223646,
|
|
"theoretical_relative_cost_vs_first": 4.0
|
|
},
|
|
{
|
|
"hidden_size": 512,
|
|
"total_blocks": 21,
|
|
"batch_size": 8,
|
|
"time_seconds_median": 0.019390400033444166,
|
|
"time_milliseconds_median": 19.390400033444166,
|
|
"theoretical_relative_cost_vs_first": 16.0
|
|
}
|
|
],
|
|
"log_log_fit": {
|
|
"exponent": -0.017671848609463185,
|
|
"intercept": -3.847262919698698,
|
|
"r2": 0.1915588923022309
|
|
}
|
|
},
|
|
"block_scaling": {
|
|
"expected_complexity": "O(B)",
|
|
"results": [
|
|
{
|
|
"blocks_per_stack": 10,
|
|
"total_blocks": 70,
|
|
"hidden_size": 512,
|
|
"batch_size": 8,
|
|
"time_seconds_median": 0.06300389999523759,
|
|
"time_milliseconds_median": 63.00389999523759,
|
|
"theoretical_relative_cost_vs_first": 1.0
|
|
},
|
|
{
|
|
"blocks_per_stack": 20,
|
|
"total_blocks": 140,
|
|
"hidden_size": 512,
|
|
"batch_size": 8,
|
|
"time_seconds_median": 0.12464780011214316,
|
|
"time_milliseconds_median": 124.64780011214316,
|
|
"theoretical_relative_cost_vs_first": 2.0
|
|
},
|
|
{
|
|
"blocks_per_stack": 30,
|
|
"total_blocks": 210,
|
|
"hidden_size": 512,
|
|
"batch_size": 8,
|
|
"time_seconds_median": 0.18604329996742308,
|
|
"time_milliseconds_median": 186.04329996742308,
|
|
"theoretical_relative_cost_vs_first": 3.0
|
|
}
|
|
],
|
|
"log_log_fit": {
|
|
"exponent": 0.9854571097543345,
|
|
"intercept": -6.951476412790202,
|
|
"r2": 0.9999991876654754
|
|
}
|
|
},
|
|
"input_batch_scaling": {
|
|
"expected_complexity": "O(N)",
|
|
"results": [
|
|
{
|
|
"batch_size": 1,
|
|
"hidden_size": 512,
|
|
"total_blocks": 21,
|
|
"time_seconds_median": 0.01942260004580021,
|
|
"time_milliseconds_median": 19.42260004580021,
|
|
"theoretical_relative_cost_vs_first": 1.0
|
|
},
|
|
{
|
|
"batch_size": 2,
|
|
"hidden_size": 512,
|
|
"total_blocks": 21,
|
|
"time_seconds_median": 0.019125699996948242,
|
|
"time_milliseconds_median": 19.125699996948242,
|
|
"theoretical_relative_cost_vs_first": 2.0
|
|
},
|
|
{
|
|
"batch_size": 4,
|
|
"hidden_size": 512,
|
|
"total_blocks": 21,
|
|
"time_seconds_median": 0.018762200139462948,
|
|
"time_milliseconds_median": 18.762200139462948,
|
|
"theoretical_relative_cost_vs_first": 4.0
|
|
},
|
|
{
|
|
"batch_size": 8,
|
|
"hidden_size": 512,
|
|
"total_blocks": 21,
|
|
"time_seconds_median": 0.01835409994237125,
|
|
"time_milliseconds_median": 18.35409994237125,
|
|
"theoretical_relative_cost_vs_first": 8.0
|
|
},
|
|
{
|
|
"batch_size": 16,
|
|
"hidden_size": 512,
|
|
"total_blocks": 21,
|
|
"time_seconds_median": 0.019410799955949187,
|
|
"time_milliseconds_median": 19.410799955949187,
|
|
"theoretical_relative_cost_vs_first": 16.0
|
|
},
|
|
{
|
|
"batch_size": 32,
|
|
"hidden_size": 512,
|
|
"total_blocks": 21,
|
|
"time_seconds_median": 0.01993660000152886,
|
|
"time_milliseconds_median": 19.93660000152886,
|
|
"theoretical_relative_cost_vs_first": 32.0
|
|
}
|
|
],
|
|
"log_log_fit": {
|
|
"exponent": 0.006306562161759777,
|
|
"intercept": -3.965757991421921,
|
|
"r2": 0.07918679416134755
|
|
}
|
|
}
|
|
}
|
|
} |