update single_core_regen settings new runs
This commit is contained in:
@@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:7231dea2c9107f443de9122fdc971d9ce6df93db2ee27a9d68a5e22c986373eb
|
oid sha256:f3510d41f9f0605e438a09767c43edda38162601292be1207f50747117ae5479
|
||||||
size 937984
|
size 9863168
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
|
import optuna
|
||||||
from hypertraining.hypertraining import HyperTraining
|
from hypertraining.hypertraining import HyperTraining
|
||||||
from hypertraining.settings import (
|
from hypertraining.settings import (
|
||||||
GlobalSettings,
|
GlobalSettings,
|
||||||
@@ -10,59 +12,72 @@ from hypertraining.settings import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
global_settings = GlobalSettings(
|
global_settings = GlobalSettings(
|
||||||
seed = 42,
|
seed=42,
|
||||||
)
|
)
|
||||||
|
|
||||||
data_settings = DataSettings(
|
data_settings = DataSettings(
|
||||||
config_path = "data/*-128-16384-100000-0-0-17-0-PAM4-0.ini",
|
config_path="data/*-128-16384-100000-0-0-17-0-PAM4-0.ini",
|
||||||
dtype = ("complex128", "complex64", "float64", "float32"),
|
dtype="complex64",
|
||||||
symbols = (1, 16),
|
# symbols = (9, 20), # 13 symbol @ 10GBd <-> 1.3ns <-> 0.26m of fiber
|
||||||
model_input_dim = (1, 32),
|
symbols=13, # study: single_core_regen_20241123_011232
|
||||||
shuffle = True,
|
# output_size = (11, 32), # ballpark 26 taps -> 2 taps per input symbol -> 1 tap every 0.01m (model has 52 inputs)
|
||||||
in_out_delay = 0,
|
output_size=26, # study: single_core_regen_20241123_011232 (model_input_dim/2)
|
||||||
xy_delay = 0,
|
shuffle=True,
|
||||||
drop_first = 1000,
|
in_out_delay=0,
|
||||||
train_split = 0.8,
|
xy_delay=0,
|
||||||
|
drop_first=128 * 100,
|
||||||
|
train_split=0.8,
|
||||||
)
|
)
|
||||||
|
|
||||||
pytorch_settings = PytorchSettings(
|
pytorch_settings = PytorchSettings(
|
||||||
epochs = 25,
|
epochs=10,
|
||||||
batchsize = 2**10,
|
batchsize=2**10,
|
||||||
device = "cuda",
|
device="cuda",
|
||||||
dataloader_workers = 2,
|
dataloader_workers=2,
|
||||||
dataloader_prefetch = 2,
|
dataloader_prefetch=4,
|
||||||
summary_dir = ".runs",
|
summary_dir=".runs",
|
||||||
write_every = 2**5,
|
write_every=2**5,
|
||||||
model_dir = ".models",
|
save_models=True,
|
||||||
|
model_dir=".models",
|
||||||
)
|
)
|
||||||
|
|
||||||
model_settings = ModelSettings(
|
model_settings = ModelSettings(
|
||||||
output_dim = 2,
|
output_dim=2,
|
||||||
model_n_layers = (2, 8),
|
# n_hidden_layers = (3, 8),
|
||||||
unit_count = (2, 16),
|
n_hidden_layers=(4, 6), # study: single_core_regen_20241123_011232
|
||||||
model_activation_func = ("ModReLU")#, "ZReLU", "Mag")#, "CReLU", "Identity"),
|
n_hidden_nodes=(4,20),
|
||||||
|
# overrides={
|
||||||
|
# "n_hidden_nodes_0": (14, 20), # study: single_core_regen_20241123_011232
|
||||||
|
# "n_hidden_nodes_1": (8, 16),
|
||||||
|
# "n_hidden_nodes_2": (10, 16),
|
||||||
|
# # "n_hidden_nodes_3": (4, 20), # study: single_core_regen_20241123_135749
|
||||||
|
# "n_hidden_nodes_4": (2, 8),
|
||||||
|
# "n_hidden_nodes_5": (10, 16),
|
||||||
|
# },
|
||||||
|
# model_activation_func = ("ModReLU", "Mag", "Identity")
|
||||||
|
model_activation_func="Mag", # study: single_core_regen_20241123_011232
|
||||||
)
|
)
|
||||||
|
|
||||||
optimizer_settings = OptimizerSettings(
|
optimizer_settings = OptimizerSettings(
|
||||||
optimizer = ("Adam", "RMSprop"),#, "SGD"),
|
optimizer="Adam",
|
||||||
# learning_rate = (1e-5, 1e-1),
|
# learning_rate = (1e-5, 1e-1),
|
||||||
learning_rate=1e-3,
|
learning_rate=5e-4,
|
||||||
# scheduler = "ReduceLROnPlateau",
|
|
||||||
# scheduler_kwargs = {"mode": "min", "factor": 0.5, "patience": 10}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
optuna_settings = OptunaSettings(
|
optuna_settings = OptunaSettings(
|
||||||
n_trials = 4096,
|
n_trials=512,
|
||||||
n_threads = 16,
|
n_workers=14,
|
||||||
timeout = 600,
|
timeout=3600,
|
||||||
directions = ("minimize","minimize"),
|
directions=("maximize", "minimize"),
|
||||||
metrics_names = ("n_params","mse"),
|
metrics_names=("neg_log_mse","n_nodes"),
|
||||||
|
limit_examples=True,
|
||||||
limit_examples = True,
|
n_train_batches=500,
|
||||||
n_train_batches = 100,
|
# n_valid_batches = 100,
|
||||||
n_valid_batches = 100,
|
storage="sqlite:///data/single_core_regen.db",
|
||||||
storage = "sqlite:///data/single_core_regen.db",
|
study_name=f"single_core_regen_{datetime.now().strftime('%Y%m%d_%H%M%S')}",
|
||||||
study_name = f"single_core_regen_{datetime.now().strftime('%Y%m%d_%H%M%S')}",
|
n_trials_filter=(optuna.trial.TrialState.COMPLETE, optuna.trial.TrialState.PRUNED),
|
||||||
|
pruner="MedianPruner",
|
||||||
|
pruner_kwargs=None
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -78,8 +93,6 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
hyper_training.setup_study()
|
hyper_training.setup_study()
|
||||||
|
|
||||||
# hyper_training.resume_latest_study()
|
|
||||||
|
|
||||||
hyper_training.run_study()
|
hyper_training.run_study()
|
||||||
# best_trial = hyper_training.study.best_trial
|
# best_trial = hyper_training.study.best_trial
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user