diff --git a/Data/odds.sqlite b/Data/OddsData.sqlite similarity index 53% rename from Data/odds.sqlite rename to Data/OddsData.sqlite index d71f0bc8a..a8b8b8976 100644 Binary files a/Data/odds.sqlite and b/Data/OddsData.sqlite differ diff --git a/Data/teams.sqlite b/Data/TeamData.sqlite similarity index 66% rename from Data/teams.sqlite rename to Data/TeamData.sqlite index 186bc1c12..da371dc8e 100644 Binary files a/Data/teams.sqlite and b/Data/TeamData.sqlite differ diff --git a/Data/dataset.sqlite b/Data/dataset.sqlite index 54805bb85..308e8cc40 100644 Binary files a/Data/dataset.sqlite and b/Data/dataset.sqlite differ diff --git a/Logs/1578197645.614275/train/events.out.tfevents.1578197669.MacBook-Pro-3.local.7631.285.v2 b/Logs/1578197645.614275/train/events.out.tfevents.1578197669.MacBook-Pro-3.local.7631.285.v2 deleted file mode 100644 index 57840e69f..000000000 Binary files a/Logs/1578197645.614275/train/events.out.tfevents.1578197669.MacBook-Pro-3.local.7631.285.v2 and /dev/null differ diff --git a/Logs/1578197645.614275/train/events.out.tfevents.1578197669.MacBook-Pro-3.local.profile-empty b/Logs/1578197645.614275/train/events.out.tfevents.1578197669.MacBook-Pro-3.local.profile-empty deleted file mode 100644 index c2541b605..000000000 Binary files a/Logs/1578197645.614275/train/events.out.tfevents.1578197669.MacBook-Pro-3.local.profile-empty and /dev/null differ diff --git a/Logs/1578197645.614275/train/plugins/profile/2020-01-04_23-14-29/local.trace b/Logs/1578197645.614275/train/plugins/profile/2020-01-04_23-14-29/local.trace deleted file mode 100644 index 5aba3b49c..000000000 Binary files a/Logs/1578197645.614275/train/plugins/profile/2020-01-04_23-14-29/local.trace and /dev/null differ diff --git a/Logs/1578197645.614275/validation/events.out.tfevents.1578197670.MacBook-Pro-3.local.7631.2407.v2 b/Logs/1578197645.614275/validation/events.out.tfevents.1578197670.MacBook-Pro-3.local.7631.2407.v2 deleted file mode 100644 index 7f19413c8..000000000 Binary files a/Logs/1578197645.614275/validation/events.out.tfevents.1578197670.MacBook-Pro-3.local.7631.2407.v2 and /dev/null differ diff --git a/Logs/1578200745.042956/train/events.out.tfevents.1578200769.MacBook-Pro-3.local.8300.255.v2 b/Logs/1578200745.042956/train/events.out.tfevents.1578200769.MacBook-Pro-3.local.8300.255.v2 deleted file mode 100644 index 8616bd93c..000000000 Binary files a/Logs/1578200745.042956/train/events.out.tfevents.1578200769.MacBook-Pro-3.local.8300.255.v2 and /dev/null differ diff --git a/Logs/1578200745.042956/train/events.out.tfevents.1578200770.MacBook-Pro-3.local.profile-empty b/Logs/1578200745.042956/train/events.out.tfevents.1578200770.MacBook-Pro-3.local.profile-empty deleted file mode 100644 index e1b0816cb..000000000 Binary files a/Logs/1578200745.042956/train/events.out.tfevents.1578200770.MacBook-Pro-3.local.profile-empty and /dev/null differ diff --git a/Logs/1578200745.042956/train/plugins/profile/2020-01-05_00-06-10/local.trace b/Logs/1578200745.042956/train/plugins/profile/2020-01-05_00-06-10/local.trace deleted file mode 100644 index 22404a18f..000000000 Binary files a/Logs/1578200745.042956/train/plugins/profile/2020-01-05_00-06-10/local.trace and /dev/null differ diff --git a/Logs/1578200745.042956/validation/events.out.tfevents.1578200771.MacBook-Pro-3.local.8300.2296.v2 b/Logs/1578200745.042956/validation/events.out.tfevents.1578200771.MacBook-Pro-3.local.8300.2296.v2 deleted file mode 100644 index 6dac1122f..000000000 Binary files a/Logs/1578200745.042956/validation/events.out.tfevents.1578200771.MacBook-Pro-3.local.8300.2296.v2 and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-ML-1680133120.689445/keras_metadata.pb b/Models/NN_Models/Trained-Model-ML-1680133120.689445/keras_metadata.pb deleted file mode 100644 index 0d9fdb736..000000000 --- a/Models/NN_Models/Trained-Model-ML-1680133120.689445/keras_metadata.pb +++ /dev/null @@ -1,9 +0,0 @@ - -�-root"_tf_keras_sequential*�,{"name": "sequential", "trainable": true, "expects_training_arg": true, "dtype": "float32", "batch_input_shape": null, "must_restore_from_config": false, "class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 106]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 512, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 256, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_2", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_3", "trainable": true, "dtype": "float32", "units": 2, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}]}, "shared_object_id": 14, "build_input_shape": {"class_name": "TensorShape", "items": [null, 106]}, "is_graph_network": true, "full_save_spec": {"class_name": "__tuple__", "items": [[{"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 106]}, "float32", "flatten_input"]}], {}]}, "save_spec": {"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 106]}, "float32", "flatten_input"]}, "keras_version": "2.9.0", "backend": "tensorflow", "model_config": {"class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 106]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}, "shared_object_id": 0}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 512, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 256, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7}, {"class_name": "Dense", "config": {"name": "dense_2", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 8}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 9}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 10}, {"class_name": "Dense", "config": {"name": "dense_3", "trainable": true, "dtype": "float32", "units": 2, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 11}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 12}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 13}]}}, "training_config": {"loss": "sparse_categorical_crossentropy", "metrics": [[{"class_name": "MeanMetricWrapper", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 15}]], "weighted_metrics": null, "loss_weights": null, "optimizer_config": {"class_name": "Adam", "config": {"name": "Adam", "learning_rate": 0.0010000000474974513, "decay": 0.0, "beta_1": 0.8999999761581421, "beta_2": 0.9990000128746033, "epsilon": 1e-07, "amsgrad": false}}}}2 -� root.layer-0"_tf_keras_layer*�{"name": "flatten", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 1, "axes": {}}, "shared_object_id": 16}}2 -�root.layer_with_weights-0"_tf_keras_layer*�{"name": "dense", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 512, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 106}}, "shared_object_id": 17}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 106]}}2 -�root.layer_with_weights-1"_tf_keras_layer*�{"name": "dense_1", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 256, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 512}}, "shared_object_id": 18}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 512]}}2 -�root.layer_with_weights-2"_tf_keras_layer*�{"name": "dense_2", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Dense", "config": {"name": "dense_2", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 8}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 9}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 10, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 256}}, "shared_object_id": 19}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 256]}}2 -�root.layer_with_weights-3"_tf_keras_layer*�{"name": "dense_3", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Dense", "config": {"name": "dense_3", "trainable": true, "dtype": "float32", "units": 2, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 11}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 12}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 13, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 128}}, "shared_object_id": 20}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 128]}}2 -�kroot.keras_api.metrics.0"_tf_keras_metric*�{"class_name": "Mean", "name": "loss", "dtype": "float32", "config": {"name": "loss", "dtype": "float32"}, "shared_object_id": 21}2 -�lroot.keras_api.metrics.1"_tf_keras_metric*�{"class_name": "MeanMetricWrapper", "name": "accuracy", "dtype": "float32", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 15}2 \ No newline at end of file diff --git a/Models/NN_Models/Trained-Model-ML-1680133120.689445/saved_model.pb b/Models/NN_Models/Trained-Model-ML-1680133120.689445/saved_model.pb deleted file mode 100644 index ff75afd57..000000000 Binary files a/Models/NN_Models/Trained-Model-ML-1680133120.689445/saved_model.pb and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-ML-1680133120.689445/variables/variables.data-00000-of-00001 b/Models/NN_Models/Trained-Model-ML-1680133120.689445/variables/variables.data-00000-of-00001 deleted file mode 100644 index d5c2b3f4a..000000000 Binary files a/Models/NN_Models/Trained-Model-ML-1680133120.689445/variables/variables.data-00000-of-00001 and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-ML-1680133120.689445/variables/variables.index b/Models/NN_Models/Trained-Model-ML-1680133120.689445/variables/variables.index deleted file mode 100644 index 05926c950..000000000 Binary files a/Models/NN_Models/Trained-Model-ML-1680133120.689445/variables/variables.index and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-ML/fingerprint.pb b/Models/NN_Models/Trained-Model-ML/fingerprint.pb deleted file mode 100644 index 6f780450e..000000000 Binary files a/Models/NN_Models/Trained-Model-ML/fingerprint.pb and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-ML/keras_metadata.pb b/Models/NN_Models/Trained-Model-ML/keras_metadata.pb deleted file mode 100644 index 6d843b412..000000000 --- a/Models/NN_Models/Trained-Model-ML/keras_metadata.pb +++ /dev/null @@ -1,9 +0,0 @@ - -�/root"_tf_keras_sequential*�.{"name": "sequential", "trainable": true, "expects_training_arg": true, "dtype": "float32", "batch_input_shape": null, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": false, "class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 106]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 512, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 256, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_2", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_3", "trainable": true, "dtype": "float32", "units": 2, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}]}, "shared_object_id": 14, "build_input_shape": {"class_name": "TensorShape", "items": [null, 106]}, "is_graph_network": true, "full_save_spec": {"class_name": "__tuple__", "items": [[{"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 106]}, "float32", "flatten_input"]}], {}]}, "save_spec": {"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 106]}, "float32", "flatten_input"]}, "keras_version": "2.11.0", "backend": "tensorflow", "model_config": {"class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 106]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}, "shared_object_id": 0}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 512, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 256, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7}, {"class_name": "Dense", "config": {"name": "dense_2", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 8}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 9}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 10}, {"class_name": "Dense", "config": {"name": "dense_3", "trainable": true, "dtype": "float32", "units": 2, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 11}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 12}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 13}]}}, "training_config": {"loss": "sparse_categorical_crossentropy", "metrics": [[{"class_name": "MeanMetricWrapper", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 15}]], "weighted_metrics": null, "loss_weights": null, "optimizer_config": {"class_name": "Custom>Adam", "config": {"name": "Adam", "weight_decay": null, "clipnorm": null, "global_clipnorm": null, "clipvalue": null, "use_ema": false, "ema_momentum": 0.99, "ema_overwrite_frequency": null, "jit_compile": true, "is_legacy_optimizer": false, "learning_rate": 0.0010000000474974513, "beta_1": 0.9, "beta_2": 0.999, "epsilon": 1e-07, "amsgrad": false}}}}2 -� root.layer-0"_tf_keras_layer*�{"name": "flatten", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 1, "axes": {}}, "shared_object_id": 16}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 106]}}2 -�root.layer_with_weights-0"_tf_keras_layer*�{"name": "dense", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 512, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 106}}, "shared_object_id": 17}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 106]}}2 -�root.layer_with_weights-1"_tf_keras_layer*�{"name": "dense_1", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 256, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 512}}, "shared_object_id": 18}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 512]}}2 -�root.layer_with_weights-2"_tf_keras_layer*�{"name": "dense_2", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Dense", "config": {"name": "dense_2", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 8}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 9}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 10, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 256}}, "shared_object_id": 19}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 256]}}2 -�root.layer_with_weights-3"_tf_keras_layer*�{"name": "dense_3", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Dense", "config": {"name": "dense_3", "trainable": true, "dtype": "float32", "units": 2, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 11}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 12}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 13, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 128}}, "shared_object_id": 20}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 128]}}2 -�mroot.keras_api.metrics.0"_tf_keras_metric*�{"class_name": "Mean", "name": "loss", "dtype": "float32", "config": {"name": "loss", "dtype": "float32"}, "shared_object_id": 21}2 -�nroot.keras_api.metrics.1"_tf_keras_metric*�{"class_name": "MeanMetricWrapper", "name": "accuracy", "dtype": "float32", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 15}2 \ No newline at end of file diff --git a/Models/NN_Models/Trained-Model-ML/saved_model.pb b/Models/NN_Models/Trained-Model-ML/saved_model.pb deleted file mode 100644 index ccf6040fb..000000000 Binary files a/Models/NN_Models/Trained-Model-ML/saved_model.pb and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-ML/variables/variables.data-00000-of-00001 b/Models/NN_Models/Trained-Model-ML/variables/variables.data-00000-of-00001 deleted file mode 100644 index e1c04510e..000000000 Binary files a/Models/NN_Models/Trained-Model-ML/variables/variables.data-00000-of-00001 and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-ML/variables/variables.index b/Models/NN_Models/Trained-Model-ML/variables/variables.index deleted file mode 100644 index 3b068f9f0..000000000 Binary files a/Models/NN_Models/Trained-Model-ML/variables/variables.index and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/keras_metadata.pb b/Models/NN_Models/Trained-Model-OU-1680133008.6887271/keras_metadata.pb deleted file mode 100644 index be169c170..000000000 --- a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/keras_metadata.pb +++ /dev/null @@ -1,7 +0,0 @@ - -�root"_tf_keras_sequential*�{"name": "sequential", "trainable": true, "expects_training_arg": true, "dtype": "float32", "batch_input_shape": null, "must_restore_from_config": false, "class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 107]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 3, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}]}, "shared_object_id": 8, "build_input_shape": {"class_name": "TensorShape", "items": [null, 107]}, "is_graph_network": true, "full_save_spec": {"class_name": "__tuple__", "items": [[{"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 107]}, "float32", "flatten_input"]}], {}]}, "save_spec": {"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 107]}, "float32", "flatten_input"]}, "keras_version": "2.9.0", "backend": "tensorflow", "model_config": {"class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 107]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}, "shared_object_id": 0}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 3, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7}]}}, "training_config": {"loss": "sparse_categorical_crossentropy", "metrics": [[{"class_name": "MeanMetricWrapper", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 9}]], "weighted_metrics": null, "loss_weights": null, "optimizer_config": {"class_name": "Adam", "config": {"name": "Adam", "learning_rate": 0.0010000000474974513, "decay": 0.0, "beta_1": 0.8999999761581421, "beta_2": 0.9990000128746033, "epsilon": 1e-07, "amsgrad": false}}}}2 -� root.layer-0"_tf_keras_layer*�{"name": "flatten", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 1, "axes": {}}, "shared_object_id": 10}}2 -�root.layer_with_weights-0"_tf_keras_layer*�{"name": "dense", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 107}}, "shared_object_id": 11}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 107]}}2 -�root.layer_with_weights-1"_tf_keras_layer*�{"name": "dense_1", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 3, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 128}}, "shared_object_id": 12}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 128]}}2 -�Kroot.keras_api.metrics.0"_tf_keras_metric*�{"class_name": "Mean", "name": "loss", "dtype": "float32", "config": {"name": "loss", "dtype": "float32"}, "shared_object_id": 13}2 -�Lroot.keras_api.metrics.1"_tf_keras_metric*�{"class_name": "MeanMetricWrapper", "name": "accuracy", "dtype": "float32", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 9}2 \ No newline at end of file diff --git a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/saved_model.pb b/Models/NN_Models/Trained-Model-OU-1680133008.6887271/saved_model.pb deleted file mode 100644 index 486f1d9ab..000000000 Binary files a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/saved_model.pb and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/variables/variables.data-00000-of-00001 b/Models/NN_Models/Trained-Model-OU-1680133008.6887271/variables/variables.data-00000-of-00001 deleted file mode 100644 index 4a929bec4..000000000 Binary files a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/variables/variables.data-00000-of-00001 and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/variables/variables.index b/Models/NN_Models/Trained-Model-OU-1680133008.6887271/variables/variables.index deleted file mode 100644 index 33f1d6c68..000000000 Binary files a/Models/NN_Models/Trained-Model-OU-1680133008.6887271/variables/variables.index and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-OU/fingerprint.pb b/Models/NN_Models/Trained-Model-OU/fingerprint.pb deleted file mode 100644 index a4248cebd..000000000 Binary files a/Models/NN_Models/Trained-Model-OU/fingerprint.pb and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-OU/keras_metadata.pb b/Models/NN_Models/Trained-Model-OU/keras_metadata.pb deleted file mode 100644 index 5ad26120e..000000000 --- a/Models/NN_Models/Trained-Model-OU/keras_metadata.pb +++ /dev/null @@ -1,7 +0,0 @@ - -� root"_tf_keras_sequential*� {"name": "sequential", "trainable": true, "expects_training_arg": true, "dtype": "float32", "batch_input_shape": null, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": false, "class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 107]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 3, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}}]}, "shared_object_id": 8, "build_input_shape": {"class_name": "TensorShape", "items": [null, 107]}, "is_graph_network": true, "full_save_spec": {"class_name": "__tuple__", "items": [[{"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 107]}, "float32", "flatten_input"]}], {}]}, "save_spec": {"class_name": "TypeSpec", "type_spec": "tf.TensorSpec", "serialized": [{"class_name": "TensorShape", "items": [null, 107]}, "float32", "flatten_input"]}, "keras_version": "2.11.0", "backend": "tensorflow", "model_config": {"class_name": "Sequential", "config": {"name": "sequential", "layers": [{"class_name": "InputLayer", "config": {"batch_input_shape": {"class_name": "__tuple__", "items": [null, 107]}, "dtype": "float32", "sparse": false, "ragged": false, "name": "flatten_input"}, "shared_object_id": 0}, {"class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1}, {"class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4}, {"class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 3, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7}]}}, "training_config": {"loss": "sparse_categorical_crossentropy", "metrics": [[{"class_name": "MeanMetricWrapper", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 9}]], "weighted_metrics": null, "loss_weights": null, "optimizer_config": {"class_name": "Custom>Adam", "config": {"name": "Adam", "weight_decay": null, "clipnorm": null, "global_clipnorm": null, "clipvalue": null, "use_ema": false, "ema_momentum": 0.99, "ema_overwrite_frequency": null, "jit_compile": true, "is_legacy_optimizer": false, "learning_rate": 0.0010000000474974513, "beta_1": 0.9, "beta_2": 0.999, "epsilon": 1e-07, "amsgrad": false}}}}2 -� root.layer-0"_tf_keras_layer*�{"name": "flatten", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Flatten", "config": {"name": "flatten", "trainable": true, "dtype": "float32", "data_format": "channels_last"}, "shared_object_id": 1, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 1, "axes": {}}, "shared_object_id": 10}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 107]}}2 -�root.layer_with_weights-0"_tf_keras_layer*�{"name": "dense", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Dense", "config": {"name": "dense", "trainable": true, "dtype": "float32", "units": 128, "activation": "relu6", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 2}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 3}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 4, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 107}}, "shared_object_id": 11}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 107]}}2 -�root.layer_with_weights-1"_tf_keras_layer*�{"name": "dense_1", "trainable": true, "expects_training_arg": false, "dtype": "float32", "batch_input_shape": null, "stateful": false, "must_restore_from_config": false, "preserve_input_structure_in_config": false, "autocast": true, "class_name": "Dense", "config": {"name": "dense_1", "trainable": true, "dtype": "float32", "units": 3, "activation": "softmax", "use_bias": true, "kernel_initializer": {"class_name": "GlorotUniform", "config": {"seed": null}, "shared_object_id": 5}, "bias_initializer": {"class_name": "Zeros", "config": {}, "shared_object_id": 6}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "shared_object_id": 7, "input_spec": {"class_name": "InputSpec", "config": {"dtype": null, "shape": null, "ndim": null, "max_ndim": null, "min_ndim": 2, "axes": {"-1": 128}}, "shared_object_id": 12}, "build_input_shape": {"class_name": "TensorShape", "items": [null, 128]}}2 -�Mroot.keras_api.metrics.0"_tf_keras_metric*�{"class_name": "Mean", "name": "loss", "dtype": "float32", "config": {"name": "loss", "dtype": "float32"}, "shared_object_id": 13}2 -�Nroot.keras_api.metrics.1"_tf_keras_metric*�{"class_name": "MeanMetricWrapper", "name": "accuracy", "dtype": "float32", "config": {"name": "accuracy", "dtype": "float32", "fn": "sparse_categorical_accuracy"}, "shared_object_id": 9}2 \ No newline at end of file diff --git a/Models/NN_Models/Trained-Model-OU/saved_model.pb b/Models/NN_Models/Trained-Model-OU/saved_model.pb deleted file mode 100644 index 9fbc9d042..000000000 Binary files a/Models/NN_Models/Trained-Model-OU/saved_model.pb and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-OU/variables/variables.data-00000-of-00001 b/Models/NN_Models/Trained-Model-OU/variables/variables.data-00000-of-00001 deleted file mode 100644 index 5a37abbc1..000000000 Binary files a/Models/NN_Models/Trained-Model-OU/variables/variables.data-00000-of-00001 and /dev/null differ diff --git a/Models/NN_Models/Trained-Model-OU/variables/variables.index b/Models/NN_Models/Trained-Model-OU/variables/variables.index deleted file mode 100644 index 9f47338ac..000000000 Binary files a/Models/NN_Models/Trained-Model-OU/variables/variables.index and /dev/null differ diff --git a/config.toml b/config.toml new file mode 100644 index 000000000..7c1dfd4fb --- /dev/null +++ b/config.toml @@ -0,0 +1,184 @@ +data_url = "https://stats.nba.com/stats/leaguedashteamstats?Conference=&DateFrom=10%2F01%2F{2}&DateTo={0}%2F{1}%2F{3}&Division=&GameScope=&GameSegment=&LastNGames=0&LeagueID=00&Location=&MeasureType=Base&Month=0&OpponentTeamID=0&Outcome=&PORound=0&PaceAdjust=N&PerMode=PerGame&Period=0&PlayerExperience=&PlayerPosition=&PlusMinus=N&Rank=N&Season={4}&SeasonSegment=&SeasonType=Regular+Season&ShotClockRange=&StarterBench=&TeamID=0&TwoWay=0&VsConference=&VsDivision=" + +[get-data] + [get-data.2007-08] + start_date = "2007-10-30" + end_date = "2008-6-17" + start_year = "2007" + end_year = "2008" + + [get-data.2008-09] + start_date = "2008-10-27" + end_date = "2009-6-14" + start_year = "2008" + end_year = "2009" + + [get-data.2009-10] + start_date = "2009-10-26" + end_date = "2010-6-17" + start_year = "2009" + end_year = "2010" + + [get-data.2010-11] + start_date = "2010-10-25" + end_date = "2011-6-12" + start_year = "2010" + end_year = "2011" + + [get-data.2011-12] + start_date = "2011-12-24" + end_date = "2012-6-21" + start_year = "2011" + end_year = "2012" + + [get-data.2012-13] + start_date = "2012-10-29" + end_date = "2013-6-20" + start_year = "2012" + end_year = "2013" + + [get-data.2013-14] + start_date = "2013-10-28" + end_date = "2014-6-15" + start_year = "2013" + end_year = "2014" + + [get-data.2014-15] + start_date = "2014-10-27" + end_date = "2015-6-16" + start_year = "2014" + end_year = "2015" + + [get-data.2015-16] + start_date = "2015-10-26" + end_date = "2016-6-19" + start_year = "2015" + end_year = "2016" + + [get-data.2016-17] + start_date = "2016-10-24" + end_date = "2017-6-12" + start_year = "2016" + end_year = "2017" + + [get-data.2017-18] + start_date = "2017-10-16" + end_date = "2018-6-08" + start_year = "2017" + end_year = "2018" + + [get-data.2018-19] + start_date = "2018-10-15" + end_date = "2019-6-13" + start_year = "2018" + end_year = "2019" + + [get-data.2019-20] + start_date = "2019-10-21" + end_date = "2020-10-11" + start_year = "2019" + end_year = "2020" + + [get-data.2020-21] + start_date = "2020-12-21" + end_date = "2021-7-20" + start_year = "2020" + end_year = "2021" + + [get-data.2021-22] + start_date = "2021-10-18" + end_date = "2022-6-16" + start_year = "2021" + end_year = "2022" + + [get-data.2022-23] + start_date = "2022-10-17" + end_date = "2023-6-12" + start_year = "2022" + end_year = "2023" + + [get-data.2023-24] + start_date = "2023-10-23" + end_date = "2024-4-28" + start_year = "2023" + end_year = "2024" + +[get-odds-data] + [get-odds-data.2023-24] + start_date = "2023-10-23" + end_date = "2024-4-28" + start_year = "2023" + end_year = "2024" + +[create-games] + [create-games.2012-13] + start_date = "2012-10-29" + end_date = "2013-6-20" + start_year = "2012" + end_year = "2013" + + [create-games.2013-14] + start_date = "2013-10-28" + end_date = "2014-6-15" + start_year = "2013" + end_year = "2014" + + [create-games.2014-15] + start_date = "2014-10-27" + end_date = "2015-6-16" + start_year = "2014" + end_year = "2015" + + [create-games.2015-16] + start_date = "2015-10-26" + end_date = "2016-6-19" + start_year = "2015" + end_year = "2016" + + [create-games.2016-17] + start_date = "2016-10-24" + end_date = "2017-6-12" + start_year = "2016" + end_year = "2017" + + [create-games.2017-18] + start_date = "2017-10-16" + end_date = "2018-6-08" + start_year = "2017" + end_year = "2018" + + [create-games.2018-19] + start_date = "2018-10-15" + end_date = "2019-6-13" + start_year = "2018" + end_year = "2019" + + [create-games.2019-20] + start_date = "2019-10-23" + end_date = "2020-10-11" + start_year = "2019" + end_year = "2020" + + [create-games.2020-21] + start_date = "2020-12-21" + end_date = "2021-7-20" + start_year = "2020" + end_year = "2021" + + [create-games.2021-22] + start_date = "2021-10-18" + end_date = "2022-6-16" + start_year = "2021" + end_year = "2022" + + [create-games.2022-23] + start_date = "2022-10-17" + end_date = "2023-6-12" + start_year = "2022" + end_year = "2023" + + [create-games.2023-24] + start_date = "2023-10-23" + end_date = "2024-4-28" + start_year = "2023" + end_year = "2024" \ No newline at end of file diff --git a/src/DataProviders/SbrOddsProvider.py b/src/DataProviders/SbrOddsProvider.py index d028e3c60..daf1f4d9a 100644 --- a/src/DataProviders/SbrOddsProvider.py +++ b/src/DataProviders/SbrOddsProvider.py @@ -1,19 +1,18 @@ from sbrscrape import Scoreboard + class SbrOddsProvider: - - """ Abbreviations dictionary for team location which are sometimes saved with abbrev instead of full name. + """ Abbreviations dictionary for team location which are sometimes saved with abbrev instead of full name. Moneyline options name require always full name Returns: string: Full location name - """ + """ def __init__(self, sportsbook="fanduel"): sb = Scoreboard(sport="NBA") self.games = sb.games if hasattr(sb, 'games') else [] self.sportsbook = sportsbook - def get_odds(self): """Function returning odds from Sbr server's json content @@ -25,7 +24,7 @@ def get_odds(self): # Get team names home_team_name = game['home_team'].replace("Los Angeles Clippers", "LA Clippers") away_team_name = game['away_team'].replace("Los Angeles Clippers", "LA Clippers") - + money_line_home_value = money_line_away_value = totals_value = None # Get money line bet values @@ -33,14 +32,14 @@ def get_odds(self): money_line_home_value = game['home_ml'][self.sportsbook] if self.sportsbook in game['away_ml']: money_line_away_value = game['away_ml'][self.sportsbook] - + # Get totals bet value if self.sportsbook in game['total']: totals_value = game['total'][self.sportsbook] - - dict_res[home_team_name + ':' + away_team_name] = { + + dict_res[home_team_name + ':' + away_team_name] = { 'under_over_odds': totals_value, - home_team_name: { 'money_line_odds': money_line_home_value }, - away_team_name: { 'money_line_odds': money_line_away_value } + home_team_name: {'money_line_odds': money_line_home_value}, + away_team_name: {'money_line_odds': money_line_away_value} } - return dict_res \ No newline at end of file + return dict_res diff --git a/src/Process-Data/Add_Days_Rest.py b/src/Process-Data/Add_Days_Rest.py index 3cde5853b..24c17c240 100644 --- a/src/Process-Data/Add_Days_Rest.py +++ b/src/Process-Data/Add_Days_Rest.py @@ -10,7 +10,7 @@ def get_date(date_string): year = year1 if int(month) > 8 else int(year1) + 1 return datetime.strptime(f"{year}-{month}-{day}", '%Y-%m-%d') -con = sqlite3.connect("../../Data/odds.sqlite") +con = sqlite3.connect("../../Data/OddsData.sqlite") datasets = ["odds_2022-23", "odds_2021-22", "odds_2020-21", "odds_2019-20", "odds_2018-19", "odds_2017-18", "odds_2016-17", "odds_2015-16", "odds_2014-15", "odds_2013-14", "odds_2012-13", "odds_2011-12", "odds_2010-11", "odds_2009-10", "odds_2008-09", "odds_2007-08"] for dataset in tqdm(datasets): data = pd.read_sql_query(f"select * from \"{dataset}\"", con, index_col="index") diff --git a/src/Process-Data/Create_Games.py b/src/Process-Data/Create_Games.py index 2cfb10943..6a9f913e2 100644 --- a/src/Process-Data/Create_Games.py +++ b/src/Process-Data/Create_Games.py @@ -1,19 +1,16 @@ import os import sqlite3 import sys -from datetime import datetime import numpy as np import pandas as pd -from tqdm import tqdm +import toml sys.path.insert(1, os.path.join(sys.path[0], '../..')) -from src.Utils.Dictionaries import team_index_07, team_index_08, team_index_12, team_index_13, team_index_14, team_index_current +from src.Utils.Dictionaries import team_index_07, team_index_08, team_index_12, team_index_13, team_index_14, \ + team_index_current -# season_array = ["2007-08", "2008-09", "2009-10", "2010-11", "2011-12", "2012-13", "2013-14", "2014-15", "2015-16", -# "2016-17", "2017-18", "2018-19", "2019-20", "2020-21", "2021-22", "2022-23"] -season_array = ["2012-13", "2013-14", "2014-15", "2015-16", "2016-17", "2017-18", "2018-19", "2019-20", "2020-21", - "2021-22", "2022-23","2023-24"] +config = toml.load("../../config.toml") df = pd.DataFrame scores = [] @@ -23,55 +20,38 @@ games = [] days_rest_away = [] days_rest_home = [] -teams_con = sqlite3.connect("../../Data/teams.sqlite") -odds_con = sqlite3.connect("../../Data/odds.sqlite") +teams_con = sqlite3.connect("../../Data/TeamData.sqlite") +odds_con = sqlite3.connect("../../Data/OddsData.sqlite") -for season in tqdm(season_array): - odds_df = pd.read_sql_query(f"select * from \"odds_{season}\"", odds_con, index_col="index") - team_table_str = "teams_{}-{}-" + season +for key, value in config['create-games'].items(): + print(key) + odds_df = pd.read_sql_query(f"select * from \"odds_{key}_new\"", odds_con, index_col="index") + team_table_str = key year_count = 0 + season = key for row in odds_df.itertuples(): - home_team = row[3] - away_team = row[4] + home_team = row[2] + away_team = row[3] - date = row[2] - date_array = date.split('-') - if not date_array or len(date_array) < 2: - continue - year = date_array[0] + '-' + date_array[1] - month = date_array[2][:2] - day = date_array[2][2:] + date = row[1] - if month[0] == '0': - month = month[1:] - if day[0] == '0': - day = day[1:] - if int(month) == 1: - year_count = 1 - end_year_pointer = int(date_array[0]) + year_count - if end_year_pointer == datetime.now().year: - if int(month) == datetime.now().month and int(day) >= datetime.now().day: - continue - if int(month) > datetime.now().month: - continue - - team_df = pd.read_sql_query(f"select * from \"teams_{year}-{month}-{day}\"", teams_con, index_col="index") + team_df = pd.read_sql_query(f"select * from \"{date}\"", teams_con, index_col="index") if len(team_df.index) == 30: - scores.append(row[9]) - OU.append(row[5]) - days_rest_home.append(row[11]) - days_rest_away.append(row[12]) - if row[10] > 0: + scores.append(row[8]) + OU.append(row[4]) + days_rest_home.append(row[10]) + days_rest_away.append(row[11]) + if row[9] > 0: win_margin.append(1) else: win_margin.append(0) - if row[9] < row[5]: + if row[8] < row[4]: OU_Cover.append(0) - elif row[9] > row[5]: + elif row[8] > row[4]: OU_Cover.append(1) - elif row[9] == row[5]: + elif row[8] == row[4]: OU_Cover.append(2) if season == '2007-08': @@ -97,14 +77,14 @@ print(home_team) raise e game = pd.concat([home_team_series, away_team_series.rename( - index={col:f"{col}.1" for col in team_df.columns.values} + index={col: f"{col}.1" for col in team_df.columns.values} )]) games.append(game) odds_con.close() teams_con.close() season = pd.concat(games, ignore_index=True, axis=1) season = season.T -frame = season.drop(columns=['TEAM_ID', 'CFID', 'CFPARAMS', 'Unnamed: 0', 'Unnamed: 0.1', 'CFPARAMS.1', 'TEAM_ID.1', 'CFID.1']) +frame = season.drop(columns=['TEAM_ID', 'TEAM_ID.1']) frame['Score'] = np.asarray(scores) frame['Home-Team-Win'] = np.asarray(win_margin) frame['OU'] = np.asarray(OU) @@ -113,9 +93,9 @@ frame['Days-Rest-Away'] = np.asarray(days_rest_away) # fix types for field in frame.columns.values: - if 'TEAM_' in field or 'Date' in field or field not in frame: + if 'TEAM_' in field or 'Date' in field or field not in frame: continue frame[field] = frame[field].astype(float) con = sqlite3.connect("../../Data/dataset.sqlite") -frame.to_sql("dataset_2012-24", con, if_exists="replace") -con.close() \ No newline at end of file +frame.to_sql("dataset_2012-24_new", con, if_exists="replace") +con.close() diff --git a/src/Process-Data/Fix_Odds_Date_Format.py b/src/Process-Data/Fix_Odds_Date_Format.py new file mode 100644 index 000000000..9823d54c1 --- /dev/null +++ b/src/Process-Data/Fix_Odds_Date_Format.py @@ -0,0 +1,43 @@ +import sqlite3 +from datetime import datetime + +import pandas as pd +import toml + +config = toml.load("config.toml") + +odds_con = sqlite3.connect("Data/OddsData.sqlite") + +date_format = "%Y-%m-%d" + +for key, value in config['get-data'].items(): + print(key) + odds_df = pd.read_sql_query(f"select * from \"odds_{key}\"", odds_con, index_col="index") + team_table_str = key + year_count = 0 + arr = [] + + for row in odds_df.itertuples(): + date = row[2] + date_array = date.split('-') + if not date_array or len(date_array) < 2: + continue + year = date_array[0] + month = date_array[2][:2] + day = date_array[2][2:] + + if month == '01': + year_count += 1 + + if year_count > 0: + year = str(int(year) + 1) + + date_str = f'{year}-{month}-{day}' + new_date = datetime.strptime(date_str, date_format).date() + + arr.append(str(new_date)) + print(f'Old date = {date} : New date = {new_date}') + + odds_df['Date'] = arr + odds_df.drop(odds_df.filter(regex="Unname"), axis=1, inplace=True) + odds_df.to_sql(f'odds_{key}_new', odds_con, if_exists="replace") diff --git a/src/Process-Data/Get_Data.py b/src/Process-Data/Get_Data.py index 4ed3bbab8..1ebe13cc1 100644 --- a/src/Process-Data/Get_Data.py +++ b/src/Process-Data/Get_Data.py @@ -3,72 +3,38 @@ import sqlite3 import sys import time -from datetime import date, datetime, timedelta +from datetime import datetime, timedelta -from tqdm import tqdm +import toml sys.path.insert(1, os.path.join(sys.path[0], '../..')) from src.Utils.tools import get_json_data, to_data_frame +config = toml.load("../../config.toml") -url = 'https://stats.nba.com/stats/' \ - 'leaguedashteamstats?Conference=&' \ - 'DateFrom=10%2F01%2F{2}&DateTo={0}%2F{1}%2F{3}' \ - '&Division=&GameScope=&GameSegment=&LastNGames=0&' \ - 'LeagueID=00&Location=&MeasureType=Base&Month=0&' \ - 'OpponentTeamID=0&Outcome=&PORound=0&PaceAdjust=N&' \ - 'PerMode=PerGame&Period=0&PlayerExperience=&' \ - 'PlayerPosition=&PlusMinus=N&Rank=N&' \ - 'Season={4}' \ - '&SeasonSegment=&SeasonType=Regular+Season&ShotClockRange=&' \ - 'StarterBench=&TeamID=0&TwoWay=0&VsConference=&VsDivision=' +url = config['data_url'] -# year = [2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022] -year = [2023, 2024] -season = ["2023-24"] -# season = ["2007-08", "2008-09", "2009-10", "2010-11", "2011-12", "2012-13", "2013-14", "2014-15", "2015-16", "2016-17", -# "2017-18", "2018-19", "2019-20", "2020-2021", "2021-2022"] +con = sqlite3.connect("../../Data/TeamData.sqlite") -month = [10, 11, 12, 1, 2, 3, 4, 5, 6] -days = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31] +for key, value in config['get-data'].items(): + date_pointer = datetime.strptime(value['start_date'], "%Y-%m-%d").date() + end_date = datetime.strptime(value['end_date'], "%Y-%m-%d").date() -begin_year_pointer = year[0] -end_year_pointer = year[0] -count = 0 + while date_pointer <= end_date: + print("Getting data: ", date_pointer) -con = sqlite3.connect("../../Data/teams.sqlite") + raw_data = get_json_data( + url.format(date_pointer.month, date_pointer.day, value['start_year'], date_pointer.year, key)) + df = to_data_frame(raw_data) -for season1 in tqdm(season): - for month1 in tqdm(month): - if month1 == 1: - count += 1 - end_year_pointer = year[count] - for day1 in tqdm(days): - if month1 == 10 and day1 < 24: - continue - if month1 in [4, 6, 9, 11] and day1 > 30: - continue - if month1 == 2: - if (end_year_pointer % 4 == 0 and end_year_pointer % 100 != 0) or end_year_pointer % 400 == 0: - if day1 > 29: - continue - elif day1 > 28: - continue - if end_year_pointer == datetime.now().year: - if month1 == datetime.now().month and day1 > datetime.now().day: - continue - if month1 > datetime.now().month: - continue - general_data = get_json_data(url.format(month1, day1, begin_year_pointer, end_year_pointer, season1)) - general_df = to_data_frame(general_data) - real_date = date(year=end_year_pointer, month=month1, day=day1) + timedelta(days=1) - general_df['Date'] = str(real_date) + date_pointer = date_pointer + timedelta(days=1) - x = str(real_date).split('-') - general_df.to_sql(f"teams_{season1}-{str(int(x[1]))}-{str(int(x[2]))}", con, if_exists="replace") + df['Date'] = str(date_pointer) - time.sleep(random.randint(1, 3)) - begin_year_pointer = year[count] + df.to_sql(date_pointer.strftime("%Y-%m-%d"), con, if_exists="replace") + + time.sleep(random.randint(1, 3)) + + # TODO: Add tests con.close() diff --git a/src/Process-Data/Get_Odds_Data.py b/src/Process-Data/Get_Odds_Data.py index 73d44c9d5..03356c4b5 100644 --- a/src/Process-Data/Get_Odds_Data.py +++ b/src/Process-Data/Get_Odds_Data.py @@ -6,85 +6,70 @@ from datetime import datetime, timedelta import pandas as pd +import toml from sbrscrape import Scoreboard -from tqdm import tqdm -sys.path.insert(1, os.path.join(sys.path[0], '../..')) -from src.Utils.tools import get_date - -year = ["2023", "2024"] -season = ["2023-24"] - -month = [10, 11, 12, 1, 2, 3, 4, 5, 6] -days = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31] +# TODO: Add tests -begin_year_pointer = year[0] -end_year_pointer = year[0] -count = 0 +sys.path.insert(1, os.path.join(sys.path[0], '../..')) sportsbook = 'fanduel' df_data = [] -con = sqlite3.connect("../../Data/odds.sqlite") +config = toml.load("config.toml") + +con = sqlite3.connect("Data/OddsData.sqlite") -for season1 in tqdm(season): +for key, value in config['get-odds-data'].items(): + date_pointer = datetime.strptime(value['start_date'], "%Y-%m-%d").date() + end_date = datetime.strptime(value['end_date'], "%Y-%m-%d").date() teams_last_played = {} - for month1 in tqdm(month): - if month1 == 1: - count += 1 - end_year_pointer = year[count] - for day1 in tqdm(days): - if month1 == 10 and day1 < 24: - continue - if month1 in [4, 6, 9, 11] and day1 > 30: - continue - if month1 == 2 and day1 > 28: - continue - # skip future games - if datetime.now() < datetime(year=int(end_year_pointer), month=month1, day=day1): - continue - print(f"{end_year_pointer}-{month1:02}-{day1:02}") - sb = Scoreboard(date=f"{end_year_pointer}-{month1:02}-{day1:02}") - if not hasattr(sb, "games"): - continue - for game in sb.games: - if game['home_team'] not in teams_last_played: - teams_last_played[game['home_team']] = get_date(f"{season1}-{month1:02}{day1:02}") - home_games_rested = timedelta(days=7) # start of season, big number - else: - current_date = get_date(f"{season1}-{month1:02}{day1:02}") - home_games_rested = current_date - teams_last_played[game['home_team']] - teams_last_played[game['home_team']] = current_date - # todo update row - if game['away_team'] not in teams_last_played: - teams_last_played[game['away_team']] = get_date(f"{season1}-{month1:02}{day1:02}") - away_games_rested = timedelta(days=7) # start of season, big number - else: - current_date = get_date(f"{season1}-{month1:02}{day1:02}") - away_games_rested = current_date - teams_last_played[game['away_team']] - teams_last_played[game['away_team']] = current_date + while date_pointer <= end_date: + print("Getting odds data: ", date_pointer) + sb = Scoreboard(date=date_pointer) + + if not hasattr(sb, "games"): + date_pointer = date_pointer + timedelta(days=1) + continue + + for game in sb.games: + if game['home_team'] not in teams_last_played: + teams_last_played[game['home_team']] = date_pointer + home_games_rested = timedelta(days=7) # start of season, big number + else: + current_date = date_pointer + home_games_rested = current_date - teams_last_played[game['home_team']] + teams_last_played[game['home_team']] = current_date + + if game['away_team'] not in teams_last_played: + teams_last_played[game['away_team']] = date_pointer + away_games_rested = timedelta(days=7) # start of season, big number + else: + current_date = date_pointer + away_games_rested = current_date - teams_last_played[game['away_team']] + teams_last_played[game['away_team']] = current_date + + try: + df_data.append({ + 'Date': date_pointer, + 'Home': game['home_team'], + 'Away': game['away_team'], + 'OU': game['total'][sportsbook], + 'Spread': game['away_spread'][sportsbook], + 'ML_Home': game['home_ml'][sportsbook], + 'ML_Away': game['away_ml'][sportsbook], + 'Points': game['away_score'] + game['home_score'], + 'Win_Margin': game['home_score'] - game['away_score'], + 'Days_Rest_Home': home_games_rested.days, + 'Days_Rest_Away': away_games_rested.days + }) + except KeyError: + print(f"No {sportsbook} odds data found for game: {game}") - try: - df_data.append({ - 'Unnamed: 0': 0, - 'Date': f"{season1}-{month1:02}{day1:02}", - 'Home': game['home_team'], - 'Away': game['away_team'], - 'OU': game['total'][sportsbook], - 'Spread': game['away_spread'][sportsbook], - 'ML_Home': game['home_ml'][sportsbook], - 'ML_Away': game['away_ml'][sportsbook], - 'Points': game['away_score'] + game['home_score'], - 'Win_Margin': game['home_score'] - game['away_score'], - 'Days_Rest_Home': home_games_rested.days, - 'Days_Rest_Away': away_games_rested.days - }) - except KeyError: - print(f"No {sportsbook} odds data found for game: {game}") - time.sleep(random.randint(1, 3)) - begin_year_pointer = year[count] + date_pointer = date_pointer + timedelta(days=1) + time.sleep(random.randint(1, 3)) df = pd.DataFrame(df_data, ) - df.to_sql(f"odds_{season1}", con, if_exists="replace") + df.to_sql(key, con, if_exists="replace") con.close() diff --git a/src/Train-Models/NN_Model_ML.py b/src/Train-Models/NN_Model_ML.py index 08da2403e..8063851df 100644 --- a/src/Train-Models/NN_Model_ML.py +++ b/src/Train-Models/NN_Model_ML.py @@ -12,7 +12,7 @@ earlyStopping = EarlyStopping(monitor='val_loss', patience=10, verbose=0, mode='min') mcp_save = ModelCheckpoint('../../Models/Trained-Model-ML-' + current_time, save_best_only=True, monitor='val_loss', mode='min') -dataset = "dataset_2012-24" +dataset = "dataset_2012-24_new" con = sqlite3.connect("../../Data/dataset.sqlite") data = pd.read_sql_query(f"select * from \"{dataset}\"", con, index_col="index") con.close() diff --git a/src/Train-Models/NN_Model_UO.py b/src/Train-Models/NN_Model_UO.py index b42bf77e5..1d4649a49 100644 --- a/src/Train-Models/NN_Model_UO.py +++ b/src/Train-Models/NN_Model_UO.py @@ -12,7 +12,7 @@ earlyStopping = EarlyStopping(monitor='val_loss', patience=10, verbose=0, mode='min') mcp_save = ModelCheckpoint('../../Models/Trained-Model-OU-' + current_time, save_best_only=True, monitor='val_loss', mode='min') -dataset = "dataset_2012-24" +dataset = "dataset_2012-24_new" con = sqlite3.connect("../../Data/dataset.sqlite") data = pd.read_sql_query(f"select * from \"{dataset}\"", con, index_col="index") con.close() diff --git a/src/Train-Models/XGBoost_Model_ML.py b/src/Train-Models/XGBoost_Model_ML.py index fb57e3921..163a5c272 100644 --- a/src/Train-Models/XGBoost_Model_ML.py +++ b/src/Train-Models/XGBoost_Model_ML.py @@ -7,7 +7,7 @@ from sklearn.model_selection import train_test_split from tqdm import tqdm -dataset = "dataset_2012-24" +dataset = "dataset_2012-24_new" con = sqlite3.connect("../../Data/dataset.sqlite") data = pd.read_sql_query(f"select * from \"{dataset}\"", con, index_col="index") con.close() diff --git a/src/Train-Models/XGBoost_Model_UO.py b/src/Train-Models/XGBoost_Model_UO.py index 7435550d4..72c7de880 100644 --- a/src/Train-Models/XGBoost_Model_UO.py +++ b/src/Train-Models/XGBoost_Model_UO.py @@ -7,7 +7,7 @@ from sklearn.model_selection import train_test_split from tqdm import tqdm -dataset = "dataset_2012-24" +dataset = "dataset_2012-24_new" con = sqlite3.connect("../../Data/dataset.sqlite") data = pd.read_sql_query(f"select * from \"{dataset}\"", con, index_col="index") con.close() diff --git a/src/Utils/tools.py b/src/Utils/tools.py index de2173337..43f4a48d5 100644 --- a/src/Utils/tools.py +++ b/src/Utils/tools.py @@ -1,7 +1,9 @@ -from datetime import datetime import re -import requests +from datetime import datetime + import pandas as pd +import requests + from .Dictionaries import team_index_current games_header = { @@ -25,7 +27,6 @@ } - def get_json_data(url): raw_data = requests.get(url, headers=data_headers) try: @@ -71,7 +72,8 @@ def create_todays_games_from_odds(input_dict): games.append([home_team, away_team]) return games + def get_date(date_string): - year1,month,day = re.search(r'(\d+)-\d+-(\d\d)(\d\d)', date_string).groups() + year1, month, day = re.search(r'(\d+)-\d+-(\d\d)(\d\d)', date_string).groups() year = year1 if int(month) > 8 else int(year1) + 1 - return datetime.strptime(f"{year}-{month}-{day}", '%Y-%m-%d') \ No newline at end of file + return datetime.strptime(f"{year}-{month}-{day}", '%Y-%m-%d')