Metrics packages |
mean_squared_error , mean_absolute_error , r2_score |
mean_squared_error , r2_score , mean_absolute_error |
mean_squared_error , mean_absolute_error , r2_score |
Internal validation |
Train op data.train_mask , valideren op data.test_mask |
Optuna-trials trainen op data.train_mask , valideren op data.test_mask |
Train op data.train_mask , valideren op data.test_mask |
validation |
Evaluatie op data.test_mask |
Evaluatie (RMSE) op data.test_mask binnen elke trial |
Evaluatie (eval_rmse ) op data.test_mask |
Train/test split |
valid_idx = np.where(~np.isnan(y))[0] ; shuffle; 80/20; boolean-masks |
valid_idx = np.where(~np.isnan(y.flatten()))[0] ; shuffle; 80/20; boolean-masks |
valid_idx = np.where(~np.isnan(y.flatten()))[0] ; shuffle; 80/20; boolean-masks |
Hyperparam tuning |
β |
Optuna over: num_layers (2β4), hidden_units {16,32,64}, dropout [0β0.5], lr [1e-4β1e-2], weight_decay [1e-5β1e-3], activation {relu,elu} |
Optuna over: top_n [500β1500], neighbors [10β200], sim_thresh [0.80β0.9999], min_dist [50β500], max_dist [500β5000], hop_thresh [1β5], max_edges [500β5000], per_node_cap [1β10] |
Epochs & Early stopping |
GCN & GAT: 200 epochs, geen early stopping |
Elke trial: 100 epochs,wel early stopping |
Fase 1: 50 epochs; fase 2: 200 epochs; wel early stopping |
Node masking |
valid_idx = indices waar yβ NaN ; excludes outliers; boolean-masks |
valid_idx = indices waar yβ NaN ; boolean-masks |
valid_idx = indices waar yβ NaN ; boolean-masks |