diff --git a/.vscode/launch.json b/.vscode/launch.json index 6193b75..2b530ca 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -234,5 +234,1853 @@ "console": "integratedTerminal", "args": "--config ./config/AEPSA/v2_SolarEnergy.yaml" }, + { + "name": "EXPB: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXPB/NYCBike-InFlow.yaml" + }, + { + "name": "EXPB: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXPB/PEMSD4.yaml" + }, + { + "name": "EXPB: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXPB/METR-LA.yaml" + }, + { + "name": "EXPB: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXPB/AirQuality.yaml" + }, + { + "name": "EXPB: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXPB/NYCBike-OutFlow.yaml" + }, + { + "name": "EXPB: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXPB/SolarEnergy.yaml" + }, + { + "name": "TWDGCN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/NYCBike-InFlow.yaml" + }, + { + "name": "TWDGCN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/PEMSD4.yaml" + }, + { + "name": "TWDGCN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/METR-LA.yaml" + }, + { + "name": "TWDGCN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/AirQuality.yaml" + }, + { + "name": "TWDGCN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/NYCBike-OutFlow.yaml" + }, + { + "name": "TWDGCN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/PEMSD8.yaml" + }, + { + "name": "TWDGCN: PEMSD7(L)", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/PEMSD7(L).yaml" + }, + { + "name": "TWDGCN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/PEMSD3.yaml" + }, + { + "name": "TWDGCN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/SolarEnergy.yaml" + }, + { + "name": "TWDGCN: Hainan", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/Hainan.yaml" + }, + { + "name": "TWDGCN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/PEMSD7.yaml" + }, + { + "name": "TWDGCN: PEMSD7(M)", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TWDGCN/PEMSD7(M).yaml" + }, + { + "name": "STSGCN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/NYCBike-InFlow.yaml" + }, + { + "name": "STSGCN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/PEMSD4.yaml" + }, + { + "name": "STSGCN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/METR-LA.yaml" + }, + { + "name": "STSGCN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/AirQuality.yaml" + }, + { + "name": "STSGCN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/NYCBike-OutFlow.yaml" + }, + { + "name": "STSGCN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/PEMSD8.yaml" + }, + { + "name": "STSGCN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/PEMSD3.yaml" + }, + { + "name": "STSGCN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/SolarEnergy.yaml" + }, + { + "name": "STSGCN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STSGCN/PEMSD7.yaml" + }, + { + "name": "STID: NYCBike_Inflow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STID/NYCBike_Inflow.yaml" + }, + { + "name": "STID: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STID/AirQuality.yaml" + }, + { + "name": "STID: NYCBike_Outflow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STID/NYCBike_Outflow.yaml" + }, + { + "name": "STAWnet: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/NYCBike-InFlow.yaml" + }, + { + "name": "STAWnet: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/PEMSD4.yaml" + }, + { + "name": "STAWnet: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/METR-LA.yaml" + }, + { + "name": "STAWnet: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/AirQuality.yaml" + }, + { + "name": "STAWnet: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/NYCBike-OutFlow.yaml" + }, + { + "name": "STAWnet: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/PEMSD8.yaml" + }, + { + "name": "STAWnet: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/PEMSD3.yaml" + }, + { + "name": "STAWnet: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/SolarEnergy.yaml" + }, + { + "name": "STAWnet: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAWnet/PEMSD7.yaml" + }, + { + "name": "DCRNN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/NYCBike-InFlow.yaml" + }, + { + "name": "DCRNN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/PEMSD4.yaml" + }, + { + "name": "DCRNN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/METR-LA.yaml" + }, + { + "name": "DCRNN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/AirQuality.yaml" + }, + { + "name": "DCRNN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/NYCBike-OutFlow.yaml" + }, + { + "name": "DCRNN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/PEMSD8.yaml" + }, + { + "name": "DCRNN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/PEMSD3.yaml" + }, + { + "name": "DCRNN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/SolarEnergy.yaml" + }, + { + "name": "DCRNN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DCRNN/PEMSD7.yaml" + }, + { + "name": "STAEFormer: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/NYCBike-InFlow.yaml" + }, + { + "name": "STAEFormer: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/PEMSD4.yaml" + }, + { + "name": "STAEFormer: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/METR-LA.yaml" + }, + { + "name": "STAEFormer: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/AirQuality.yaml" + }, + { + "name": "STAEFormer: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/NYCBike-OutFlow.yaml" + }, + { + "name": "STAEFormer: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/PEMSD8.yaml" + }, + { + "name": "STAEFormer: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/PEMSD3.yaml" + }, + { + "name": "STAEFormer: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/SolarEnergy.yaml" + }, + { + "name": "STAEFormer: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STAEFormer/PEMSD7.yaml" + }, + { + "name": "STGODE: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/NYCBike-InFlow.yaml" + }, + { + "name": "STGODE: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/PEMSD4.yaml" + }, + { + "name": "STGODE: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/METR-LA.yaml" + }, + { + "name": "STGODE: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/AirQuality.yaml" + }, + { + "name": "STGODE: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/NYCBike-OutFlow.yaml" + }, + { + "name": "STGODE: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/PEMSD8.yaml" + }, + { + "name": "STGODE: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/PEMSD3.yaml" + }, + { + "name": "STGODE: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/SolarEnergy.yaml" + }, + { + "name": "STGODE: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGODE/PEMSD7.yaml" + }, + { + "name": "STGNCDE: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/NYCBike-InFlow.yaml" + }, + { + "name": "STGNCDE: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/PEMSD4.yaml" + }, + { + "name": "STGNCDE: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/METR-LA.yaml" + }, + { + "name": "STGNCDE: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/AirQuality.yaml" + }, + { + "name": "STGNCDE: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/NYCBike-OutFlow.yaml" + }, + { + "name": "STGNCDE: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/PEMSD8.yaml" + }, + { + "name": "STGNCDE: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/PEMSD3.yaml" + }, + { + "name": "STGNCDE: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/SolarEnergy.yaml" + }, + { + "name": "STGNCDE: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNCDE/PEMSD7.yaml" + }, + { + "name": "AEPSA: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AEPSA/NYCBike-InFlow.yaml" + }, + { + "name": "AEPSA: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AEPSA/NYCBike-OutFlow.yaml" + }, + { + "name": "ST_SSL: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/NYCBike-InFlow.yaml" + }, + { + "name": "ST_SSL: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/PEMSD4.yaml" + }, + { + "name": "ST_SSL: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/METR-LA.yaml" + }, + { + "name": "ST_SSL: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/AirQuality.yaml" + }, + { + "name": "ST_SSL: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/NYCBike-OutFlow.yaml" + }, + { + "name": "ST_SSL: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/PEMSD8.yaml" + }, + { + "name": "ST_SSL: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/PEMSD3.yaml" + }, + { + "name": "ST_SSL: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/SolarEnergy.yaml" + }, + { + "name": "ST_SSL: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ST_SSL/PEMSD7.yaml" + }, + { + "name": "TCN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/NYCBike-InFlow.yaml" + }, + { + "name": "TCN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/PEMSD4.yaml" + }, + { + "name": "TCN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/METR-LA.yaml" + }, + { + "name": "TCN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/AirQuality.yaml" + }, + { + "name": "TCN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/NYCBike-OutFlow.yaml" + }, + { + "name": "TCN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/PEMSD8.yaml" + }, + { + "name": "TCN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/PEMSD3.yaml" + }, + { + "name": "TCN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/SolarEnergy.yaml" + }, + { + "name": "TCN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/TCN/PEMSD7.yaml" + }, + { + "name": "EXP: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/NYCBike-InFlow.yaml" + }, + { + "name": "EXP: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/PEMSD4.yaml" + }, + { + "name": "EXP: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/METR-LA.yaml" + }, + { + "name": "EXP: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/AirQuality.yaml" + }, + { + "name": "EXP: SD", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/SD.yaml" + }, + { + "name": "EXP: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/NYCBike-OutFlow.yaml" + }, + { + "name": "EXP: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/PEMSD8.yaml" + }, + { + "name": "EXP: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/PEMSD3.yaml" + }, + { + "name": "EXP: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/SolarEnergy.yaml" + }, + { + "name": "EXP: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/EXP/PEMSD7.yaml" + }, + { + "name": "DDGCRN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/NYCBike-InFlow.yaml" + }, + { + "name": "DDGCRN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/PEMSD4.yaml" + }, + { + "name": "DDGCRN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/AirQuality.yaml" + }, + { + "name": "DDGCRN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/NYCBike-OutFlow.yaml" + }, + { + "name": "DDGCRN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/PEMSD8.yaml" + }, + { + "name": "DDGCRN: PEMSD7(L)", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/PEMSD7(L).yaml" + }, + { + "name": "DDGCRN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/PEMSD3.yaml" + }, + { + "name": "DDGCRN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/SolarEnergy.yaml" + }, + { + "name": "DDGCRN: Hainan", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/Hainan.yaml" + }, + { + "name": "DDGCRN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/PEMSD7.yaml" + }, + { + "name": "DDGCRN: PEMSD7(M)", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DDGCRN/PEMSD7(M).yaml" + }, + { + "name": "DSANET: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/NYCBike-InFlow.yaml" + }, + { + "name": "DSANET: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/PEMSD4.yaml" + }, + { + "name": "DSANET: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/METR-LA.yaml" + }, + { + "name": "DSANET: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/AirQuality.yaml" + }, + { + "name": "DSANET: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/NYCBike-OutFlow.yaml" + }, + { + "name": "DSANET: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/PEMSD8.yaml" + }, + { + "name": "DSANET: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/PEMSD3.yaml" + }, + { + "name": "DSANET: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/SolarEnergy.yaml" + }, + { + "name": "DSANET: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/DSANET/PEMSD7.yaml" + }, + { + "name": "STFGNN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/NYCBike-InFlow.yaml" + }, + { + "name": "STFGNN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/PEMSD4.yaml" + }, + { + "name": "STFGNN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/METR-LA.yaml" + }, + { + "name": "STFGNN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/AirQuality.yaml" + }, + { + "name": "STFGNN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/NYCBike-OutFlow.yaml" + }, + { + "name": "STFGNN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/PEMSD8.yaml" + }, + { + "name": "STFGNN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/PEMSD3.yaml" + }, + { + "name": "STFGNN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/SolarEnergy.yaml" + }, + { + "name": "STFGNN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STFGNN/PEMSD7.yaml" + }, + { + "name": "AGCRN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/NYCBike-InFlow.yaml" + }, + { + "name": "AGCRN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/PEMSD4.yaml" + }, + { + "name": "AGCRN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/METR-LA.yaml" + }, + { + "name": "AGCRN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/AirQuality.yaml" + }, + { + "name": "AGCRN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/NYCBike-OutFlow.yaml" + }, + { + "name": "AGCRN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/PEMSD8.yaml" + }, + { + "name": "AGCRN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/PEMSD3.yaml" + }, + { + "name": "AGCRN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/SolarEnergy.yaml" + }, + { + "name": "AGCRN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/AGCRN/PEMSD7.yaml" + }, + { + "name": "STGNRDE: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/NYCBike-InFlow.yaml" + }, + { + "name": "STGNRDE: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/PEMSD4.yaml" + }, + { + "name": "STGNRDE: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/METR-LA.yaml" + }, + { + "name": "STGNRDE: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/AirQuality.yaml" + }, + { + "name": "STGNRDE: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/NYCBike-OutFlow.yaml" + }, + { + "name": "STGNRDE: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/PEMSD8.yaml" + }, + { + "name": "STGNRDE: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/PEMSD3.yaml" + }, + { + "name": "STGNRDE: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/SolarEnergy.yaml" + }, + { + "name": "STGNRDE: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGNRDE/PEMSD7.yaml" + }, + { + "name": "REPST: PEMS-BAY_paper", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/REPST/PEMS-BAY_paper.yaml" + }, + { + "name": "REPST: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/REPST/NYCBike-InFlow.yaml" + }, + { + "name": "REPST: BeijingAirQuality(Deprecated)", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/REPST/BeijingAirQuality(Deprecated).yaml" + }, + { + "name": "REPST: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/REPST/NYCBike-OutFlow.yaml" + }, + { + "name": "STIDGCN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/NYCBike-InFlow.yaml" + }, + { + "name": "STIDGCN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/PEMSD4.yaml" + }, + { + "name": "STIDGCN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/METR-LA.yaml" + }, + { + "name": "STIDGCN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/AirQuality.yaml" + }, + { + "name": "STIDGCN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/NYCBike-OutFlow.yaml" + }, + { + "name": "STIDGCN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/PEMSD8.yaml" + }, + { + "name": "STIDGCN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/PEMSD3.yaml" + }, + { + "name": "STIDGCN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/SolarEnergy.yaml" + }, + { + "name": "STIDGCN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STIDGCN/PEMSD7.yaml" + }, + { + "name": "PDG2SEQ: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/NYCBike-InFlow.yaml" + }, + { + "name": "PDG2SEQ: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/PEMSD4.yaml" + }, + { + "name": "PDG2SEQ: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/METR-LA.yaml" + }, + { + "name": "PDG2SEQ: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/AirQuality.yaml" + }, + { + "name": "PDG2SEQ: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/NYCBike-OutFlow.yaml" + }, + { + "name": "PDG2SEQ: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/PEMSD8.yaml" + }, + { + "name": "PDG2SEQ: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/PEMSD3.yaml" + }, + { + "name": "PDG2SEQ: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/SolarEnergy.yaml" + }, + { + "name": "PDG2SEQ: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/PDG2SEQ/PEMSD7.yaml" + }, + { + "name": "NLT: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/NYCBike-InFlow.yaml" + }, + { + "name": "NLT: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/PEMSD4.yaml" + }, + { + "name": "NLT: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/METR-LA.yaml" + }, + { + "name": "NLT: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/AirQuality.yaml" + }, + { + "name": "NLT: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/NYCBike-OutFlow.yaml" + }, + { + "name": "NLT: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/PEMSD8.yaml" + }, + { + "name": "NLT: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/PEMSD3.yaml" + }, + { + "name": "NLT: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/SolarEnergy.yaml" + }, + { + "name": "NLT: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/NLT/PEMSD7.yaml" + }, + { + "name": "ARIMA: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/NYCBike-InFlow.yaml" + }, + { + "name": "ARIMA: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/PEMSD4.yaml" + }, + { + "name": "ARIMA: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/METR-LA.yaml" + }, + { + "name": "ARIMA: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/AirQuality.yaml" + }, + { + "name": "ARIMA: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/NYCBike-OutFlow.yaml" + }, + { + "name": "ARIMA: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/PEMSD8.yaml" + }, + { + "name": "ARIMA: PEMSD7(L)", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/PEMSD7(L).yaml" + }, + { + "name": "ARIMA: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/PEMSD3.yaml" + }, + { + "name": "ARIMA: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/SolarEnergy.yaml" + }, + { + "name": "ARIMA: Hainan", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/Hainan.yaml" + }, + { + "name": "ARIMA: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/PEMSD7.yaml" + }, + { + "name": "ARIMA: PEMSD7(M)", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/ARIMA/PEMSD7(M).yaml" + }, + { + "name": "STMLP: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/NYCBike-InFlow.yaml" + }, + { + "name": "STMLP: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/PEMSD4.yaml" + }, + { + "name": "STMLP: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/METR-LA.yaml" + }, + { + "name": "STMLP: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/AirQuality.yaml" + }, + { + "name": "STMLP: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/NYCBike-OutFlow.yaml" + }, + { + "name": "STMLP: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/PEMSD8.yaml" + }, + { + "name": "STMLP: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/PEMSD3.yaml" + }, + { + "name": "STMLP: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/SolarEnergy.yaml" + }, + { + "name": "STMLP: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STMLP/PEMSD7.yaml" + }, + { + "name": "MegaCRN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/NYCBike-InFlow.yaml" + }, + { + "name": "MegaCRN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/PEMSD4.yaml" + }, + { + "name": "MegaCRN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/METR-LA.yaml" + }, + { + "name": "MegaCRN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/AirQuality.yaml" + }, + { + "name": "MegaCRN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/NYCBike-OutFlow.yaml" + }, + { + "name": "MegaCRN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/PEMSD8.yaml" + }, + { + "name": "MegaCRN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/PEMSD3.yaml" + }, + { + "name": "MegaCRN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/SolarEnergy.yaml" + }, + { + "name": "MegaCRN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/MegaCRN/PEMSD7.yaml" + }, + { + "name": "GWN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/NYCBike-InFlow.yaml" + }, + { + "name": "GWN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/PEMSD4.yaml" + }, + { + "name": "GWN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/METR-LA.yaml" + }, + { + "name": "GWN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/AirQuality.yaml" + }, + { + "name": "GWN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/NYCBike-OutFlow.yaml" + }, + { + "name": "GWN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/PEMSD8.yaml" + }, + { + "name": "GWN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/PEMSD3.yaml" + }, + { + "name": "GWN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/SolarEnergy.yaml" + }, + { + "name": "GWN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/GWN/PEMSD7.yaml" + }, + { + "name": "STGCN: NYCBike-InFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/NYCBike-InFlow.yaml" + }, + { + "name": "STGCN: PEMSD4", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/PEMSD4.yaml" + }, + { + "name": "STGCN: METR-LA", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/METR-LA.yaml" + }, + { + "name": "STGCN: AirQuality", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/AirQuality.yaml" + }, + { + "name": "STGCN: NYCBike-OutFlow", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/NYCBike-OutFlow.yaml" + }, + { + "name": "STGCN: PEMSD8", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/PEMSD8.yaml" + }, + { + "name": "STGCN: PEMSD3", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/PEMSD3.yaml" + }, + { + "name": "STGCN: SolarEnergy", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/SolarEnergy.yaml" + }, + { + "name": "STGCN: PEMSD7", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/STGCN/PEMSD7.yaml" + } ] } \ No newline at end of file diff --git a/generate_launch_configs.py b/generate_launch_configs.py new file mode 100644 index 0000000..6477e16 --- /dev/null +++ b/generate_launch_configs.py @@ -0,0 +1,134 @@ +import os +import re + +# 配置路径 +CONFIG_DIR = "/user/czzhangheng/code/TrafficWheel/config" +LAUNCH_FILE = "/user/czzhangheng/code/TrafficWheel/.vscode/launch.json" + +# 遍历所有yaml文件 +def find_all_yaml_files(directory): + yaml_files = [] + for root, dirs, files in os.walk(directory): + for file in files: + if file.endswith(".yaml") and not file.startswith("BJTaxi"): + yaml_files.append(os.path.join(root, file)) + return yaml_files + +# 生成launch配置字符串 +def generate_launch_config_string(yaml_files): + config_strings = [] + + for file_path in yaml_files: + # 提取模型名和数据集名 + relative_path = os.path.relpath(file_path, CONFIG_DIR) + model_name = relative_path.split(os.sep)[0] + dataset_name = os.path.splitext(os.path.basename(file_path))[0] + + # 处理v2版本 + if "v2_" in dataset_name: + model_display_name = f"{model_name}_v2" + dataset_display_name = dataset_name.replace("v2_", "") + else: + model_display_name = model_name + dataset_display_name = dataset_name + + # 生成配置字符串 + config_string = f''' + {{ + "name": "{model_display_name}: {dataset_display_name}", + "type": "debugpy", + "request": "launch", + "program": "run.py", + "console": "integratedTerminal", + "args": "--config ./config/{model_name}/{os.path.basename(file_path)}" + }}''' + + config_strings.append(config_string) + + return ",".join(config_strings) + +# 读取现有的launch.json文件,提取配置名称 +def get_existing_config_names(): + with open(LAUNCH_FILE, 'r') as f: + content = f.read() + + # 提取所有配置名称 + name_pattern = re.compile(r'"name"\s*:\s*"([^"]+)"') + matches = name_pattern.findall(content) + + return set(matches) + +# 生成新的配置,过滤掉已存在的 +def generate_new_configs(yaml_files, existing_names): + new_configs = [] + + for file_path in yaml_files: + # 提取模型名和数据集名 + relative_path = os.path.relpath(file_path, CONFIG_DIR) + model_name = relative_path.split(os.sep)[0] + dataset_name = os.path.splitext(os.path.basename(file_path))[0] + + # 处理v2版本 + if "v2_" in dataset_name: + model_display_name = f"{model_name}_v2" + dataset_display_name = dataset_name.replace("v2_", "") + else: + model_display_name = model_name + dataset_display_name = dataset_name + + # 生成配置名称 + config_name = f"{model_display_name}: {dataset_display_name}" + + # 如果配置不存在,则添加 + if config_name not in existing_names: + new_configs.append(file_path) + + return new_configs + +# 更新launch.json文件 +def update_launch_json(new_configs_string): + with open(LAUNCH_FILE, 'r') as f: + content = f.read() + + # 找到configurations数组的结束位置 + configs_end_match = re.search(r'\s*\]\s*\}', content) + if not configs_end_match: + return False + + # 插入新的配置 + insert_pos = configs_end_match.start() + new_content = content[:insert_pos] + new_configs_string + content[insert_pos:] + + # 保存文件 + with open(LAUNCH_FILE, 'w') as f: + f.write(new_content) + + return True + +# 主函数 +def main(): + # 查找所有yaml文件 + yaml_files = find_all_yaml_files(CONFIG_DIR) + + # 获取现有配置名称 + existing_names = get_existing_config_names() + + # 生成新的配置,过滤掉已存在的 + new_config_files = generate_new_configs(yaml_files, existing_names) + + if not new_config_files: + print("No new configurations to add") + return + + # 生成新的配置字符串 + new_configs_string = generate_launch_config_string(new_config_files) + + # 更新launch.json文件 + if update_launch_json(new_configs_string): + print(f"Added {len(new_config_files)} new launch configurations") + print(f"Total configurations: {len(existing_names) + len(new_config_files)}") + else: + print("Failed to update launch.json") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/test_configs.py b/test_configs.py new file mode 100644 index 0000000..4fb4bbe --- /dev/null +++ b/test_configs.py @@ -0,0 +1,124 @@ +import os +import subprocess +import yaml +import time + +# 配置路径 +CONFIG_DIR = "/user/czzhangheng/code/TrafficWheel/config" +RUN_SCRIPT = "/user/czzhangheng/code/TrafficWheel/run.py" +RESULTS_FILE = "/user/czzhangheng/code/TrafficWheel/test_results.txt" + +# 记录测试结果的字典 +results = { + "passed": [], + "failed": [], + "error": [] +} + +# 遍历所有yaml文件 +def find_all_yaml_files(directory): + yaml_files = [] + for root, dirs, files in os.walk(directory): + for file in files: + if file.endswith(".yaml") and not file.startswith("BJTaxi"): + yaml_files.append(os.path.join(root, file)) + return yaml_files + +# 测试单个yaml文件 +def test_yaml_file(yaml_path): + print(f"\n=== Testing {yaml_path} ===") + + # 检查文件是否存在 + if not os.path.exists(yaml_path): + print(f"File not found: {yaml_path}") + return "error", f"File not found: {yaml_path}" + + # 运行测试命令 + command = ["python", RUN_SCRIPT, "--config", yaml_path] + try: + result = subprocess.run( + command, + capture_output=True, + text=True, + timeout=600 # 10分钟超时 + ) + + # 分析结果 + if result.returncode == 0: + if "Test passed" in result.stdout: + print(f"✓ PASSED: {yaml_path}") + return "passed", result.stdout.strip() + else: + print(f"✗ FAILED: {yaml_path}") + return "failed", result.stdout.strip() + "\n" + result.stderr.strip() + else: + print(f"✗ ERROR: {yaml_path}") + return "error", result.stdout.strip() + "\n" + result.stderr.strip() + except subprocess.TimeoutExpired: + print(f"✗ TIMEOUT: {yaml_path}") + return "error", "Timeout after 10 minutes" + except Exception as e: + print(f"✗ EXCEPTION: {yaml_path}") + return "error", str(e) + +# 生成测试报告 +def generate_report(results): + total = len(results["passed"]) + len(results["failed"]) + len(results["error"]) + + report = f"""# 测试报告 + +## 测试概述 +- 测试时间: {time.strftime('%Y-%m-%d %H:%M:%S')} +- 总测试文件数: {total} +- 通过: {len(results['passed'])} +- 失败: {len(results['failed'])} +- 错误: {len(results['error'])} + +## 通过的配置文件 +""" + + for file_path, output in results["passed"]: + report += f"- ✅ {file_path}\n" + + report += "\n## 失败的配置文件\n" + for file_path, output in results["failed"]: + report += f"- ❌ {file_path}\n" + + report += "\n## 出错的配置文件\n" + for file_path, output in results["error"]: + report += f"- ⚠️ {file_path}\n" + + report += "\n## 详细输出\n" + + for status, files in results.items(): + report += f"\n### {status.upper()}\n\n" + for file_path, output in files: + report += f"#### {file_path}\n\n```\n{output}\n```\n\n" + + return report + +# 主函数 +def main(): + # 找到所有符合条件的yaml文件 + yaml_files = find_all_yaml_files(CONFIG_DIR) + print(f"Found {len(yaml_files)} yaml files to test") + + # 测试每个文件 + for yaml_file in yaml_files: + status, output = test_yaml_file(yaml_file) + results[status].append((yaml_file, output)) + + # 生成并保存报告 + report = generate_report(results) + with open(RESULTS_FILE, "w") as f: + f.write(report) + + print(f"\n=== Test Results ===") + print(f"Total: {len(yaml_files)}") + print(f"Passed: {len(results['passed'])}") + print(f"Failed: {len(results['failed'])}") + print(f"Error: {len(results['error'])}") + print(f"Report saved to: {RESULTS_FILE}") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/test_results.txt b/test_results.txt new file mode 100644 index 0000000..6b5c248 --- /dev/null +++ b/test_results.txt @@ -0,0 +1,5670 @@ +# 测试报告 + +## 测试概述 +- 测试时间: 2025-12-01 22:20:35 +- 总测试文件数: 252 +- 通过: 41 +- 失败: 0 +- 错误: 211 + +## 通过的配置文件 +- ✅ /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike_Inflow.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STID/METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STID/AirQuality.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STID/PEMS-BAY.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike_Outflow.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STID/SolarEnergy.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD4.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD8.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD3.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD7.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-inflow.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/AirQuality.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/PEMS-BAY.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/SolarEnergy.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/v2_METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-outflow.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/AEPSA/v2_SolarEnergy.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/NYCBike-InFlow.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD4.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/NYCBike-OutFlow.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD8.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD3.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/SolarEnergy.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD7.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD8.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD4.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/DSANET/METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD8.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD3.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD7.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-inflow.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/REPST/BeijingAirQuality(Deprecated).yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/REPST/METR-LA.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/REPST/AirQuality.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/REPST/PEMS-BAY.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/REPST/SolarEnergy.yaml +- ✅ /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-outflow.yaml + +## 失败的配置文件 + +## 出错的配置文件 +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXPB/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXPB/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXPB/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXPB/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXPB/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXPB/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD7(L).yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/Hainan.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD7(M).yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STID/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STAEFormer/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/TCN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/SD.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD7(L).yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/Hainan.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD7(M).yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DSANET/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DSANET/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DSANET/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/DSANET/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/REPST/PEMS-BAY_paper.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD7(L).yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/Hainan.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD7(M).yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD7.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/NYCBike-InFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD4.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/METR-LA.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/AirQuality.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/NYCBike-OutFlow.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD8.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD3.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/SolarEnergy.yaml +- ⚠️ /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD7.yaml + +## 详细输出 + +### PASSED + +#### /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike_Inflow.yaml + +``` +模型参数量: 118040 +加载 NYCBike-InFlow 数据集中... +✓ Test passed: output shape torch.Size([64, 24, 128, 1]) matches label shape torch.Size([64, 24, 128, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/METR-LA.yaml + +``` +模型参数量: 120568 +加载 METR-LA 数据集中... +✓ Test passed: output shape torch.Size([64, 24, 207, 1]) matches label shape torch.Size([64, 24, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/AirQuality.yaml + +``` +模型参数量: 115064 +加载 AirQuality 数据集中... +✓ Test passed: output shape torch.Size([64, 24, 35, 1]) matches label shape torch.Size([64, 24, 35, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/PEMS-BAY.yaml + +``` +模型参数量: 124344 +加载 PEMS-BAY 数据集中... +✓ Test passed: output shape torch.Size([64, 24, 325, 1]) matches label shape torch.Size([64, 24, 325, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike_Outflow.yaml + +``` +模型参数量: 118040 +加载 NYCBike-OutFlow 数据集中... +✓ Test passed: output shape torch.Size([64, 24, 128, 1]) matches label shape torch.Size([64, 24, 128, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/SolarEnergy.yaml + +``` +模型参数量: 118328 +加载 SolarEnergy 数据集中... +✓ Test passed: output shape torch.Size([64, 24, 137, 1]) matches label shape torch.Size([64, 24, 137, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD4.yaml + +``` +模型参数量: 1354932 +加载 PEMSD4 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/PEMSD4/2025-12-01_21-52-10/run.log +✓ Test passed: output shape torch.Size([64, 12, 307, 1]) matches label shape torch.Size([64, 12, 307, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/METR-LA.yaml + +``` +模型参数量: 1258932 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/METR-LA/2025-12-01_21-52-24/run.log +✓ Test passed: output shape torch.Size([16, 12, 207, 1]) matches label shape torch.Size([16, 12, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD8.yaml + +``` +模型参数量: 1223412 +加载 PEMSD8 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/PEMSD8/2025-12-01_21-52-49/run.log +✓ Test passed: output shape torch.Size([64, 12, 170, 1]) matches label shape torch.Size([64, 12, 170, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD3.yaml + +``` +模型参数量: 1403892 +加载 PEMSD3 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/PEMSD3/2025-12-01_21-53-06/run.log +✓ Test passed: output shape torch.Size([16, 12, 358, 1]) matches label shape torch.Size([16, 12, 358, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/PEMSD7.yaml + +``` +模型参数量: 1907892 +加载 PEMSD7 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/PEMSD7/2025-12-01_21-54-04/run.log +✓ Test passed: output shape torch.Size([16, 12, 883, 1]) matches label shape torch.Size([16, 12, 883, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-inflow.yaml + +``` +模型参数量: 103504579 +加载 NYCBike-InFlow 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA/NYCBike-InFlow/2025-12-01_21-55-58/run.log +✓ Test passed: output shape torch.Size([32, 24, 128, 1]) matches label shape torch.Size([32, 24, 128, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/METR-LA.yaml + +``` +模型参数量: 103505369 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA/METR-LA/2025-12-01_21-56-29/run.log +✓ Test passed: output shape torch.Size([16, 24, 207, 1]) matches label shape torch.Size([16, 24, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/AirQuality.yaml + +``` +模型参数量: 103503669 +加载 AirQuality 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA/AirQuality/2025-12-01_21-56-40/run.log +✓ Test passed: output shape torch.Size([16, 24, 35, 6]) matches label shape torch.Size([16, 24, 35, 6]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/PEMS-BAY.yaml + +``` +模型参数量: 103506549 +加载 PEMS-BAY 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA/PEMS-BAY/2025-12-01_21-57-30/run.log +✓ Test passed: output shape torch.Size([16, 24, 325, 1]) matches label shape torch.Size([16, 24, 325, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/SolarEnergy.yaml + +``` +模型参数量: 103504669 +加载 SolarEnergy 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA/SolarEnergy/2025-12-01_21-57-55/run.log +✓ Test passed: output shape torch.Size([64, 24, 137, 1]) matches label shape torch.Size([64, 24, 137, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/v2_METR-LA.yaml + +``` +模型参数量: 103524820 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA_v2/METR-LA/2025-12-01_21-58-18/run.log +✓ Test passed: output shape torch.Size([16, 24, 207, 1]) matches label shape torch.Size([16, 24, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-outflow.yaml + +``` +模型参数量: 103504579 +加载 NYCBike-OutFlow 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA/NYCBike-OutFlow/2025-12-01_21-58-29/run.log +✓ Test passed: output shape torch.Size([32, 24, 128, 1]) matches label shape torch.Size([32, 24, 128, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/v2_SolarEnergy.yaml + +``` +模型参数量: 103524120 +加载 SolarEnergy 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/AEPSA_v2/SolarEnergy/2025-12-01_21-58-54/run.log +✓ Test passed: output shape torch.Size([64, 24, 137, 1]) matches label shape torch.Size([64, 24, 137, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/NYCBike-InFlow.yaml + +``` +模型参数量: 35873 +加载 NYCBike-InFlow 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/NYCBike-InFlow/2025-12-01_21-59-55/run.log +✓ Test passed: output shape torch.Size([32, 24, 128, 1]) matches label shape torch.Size([32, 24, 128, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD4.yaml + +``` +模型参数量: 35873 +加载 PEMSD4 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/PEMSD4/2025-12-01_22-00-07/run.log +✓ Test passed: output shape torch.Size([64, 12, 307, 1]) matches label shape torch.Size([64, 12, 307, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/METR-LA.yaml + +``` +模型参数量: 35873 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/METR-LA/2025-12-01_22-00-28/run.log +✓ Test passed: output shape torch.Size([16, 24, 207, 1]) matches label shape torch.Size([16, 24, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/NYCBike-OutFlow.yaml + +``` +模型参数量: 35873 +加载 NYCBike-OutFlow 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/NYCBike-OutFlow/2025-12-01_22-00-44/run.log +✓ Test passed: output shape torch.Size([32, 24, 128, 1]) matches label shape torch.Size([32, 24, 128, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD8.yaml + +``` +模型参数量: 35873 +加载 PEMSD8 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/PEMSD8/2025-12-01_22-00-54/run.log +✓ Test passed: output shape torch.Size([64, 12, 170, 1]) matches label shape torch.Size([64, 12, 170, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD3.yaml + +``` +模型参数量: 35873 +加载 PEMSD3 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/PEMSD3/2025-12-01_22-01-10/run.log +✓ Test passed: output shape torch.Size([16, 12, 358, 1]) matches label shape torch.Size([16, 12, 358, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/SolarEnergy.yaml + +``` +模型参数量: 35873 +加载 SolarEnergy 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/SolarEnergy/2025-12-01_22-01-33/run.log +✓ Test passed: output shape torch.Size([64, 24, 137, 1]) matches label shape torch.Size([64, 24, 137, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/PEMSD7.yaml + +``` +模型参数量: 35873 +加载 PEMSD7 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/PEMSD7/2025-12-01_22-02-05/run.log +✓ Test passed: output shape torch.Size([16, 12, 883, 1]) matches label shape torch.Size([16, 12, 883, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/METR-LA.yaml + +``` +模型参数量: 671644 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DDGCRN/METR-LA/2025-12-01_22-03-35/run.log +✓ Test passed: output shape torch.Size([64, 24, 207, 1]) matches label shape torch.Size([64, 24, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD8.yaml + +``` +模型参数量: 311759 +加载 PEMSD8 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DDGCRN/PEMSD8/2025-12-01_22-03-57/run.log +✓ Test passed: output shape torch.Size([64, 12, 170, 1]) matches label shape torch.Size([64, 12, 170, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD4.yaml + +``` +模型参数量: 37896712 +加载 PEMSD4 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/PEMSD4/2025-12-01_22-04-52/run.log +✓ Test passed: output shape torch.Size([64, 12, 307, 1]) matches label shape torch.Size([64, 12, 307, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/METR-LA.yaml + +``` +模型参数量: 37896712 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/METR-LA/2025-12-01_22-05-06/run.log +✓ Test passed: output shape torch.Size([16, 12, 207, 1]) matches label shape torch.Size([16, 12, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD8.yaml + +``` +模型参数量: 37896712 +加载 PEMSD8 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/PEMSD8/2025-12-01_22-05-33/run.log +✓ Test passed: output shape torch.Size([64, 12, 170, 1]) matches label shape torch.Size([64, 12, 170, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD3.yaml + +``` +模型参数量: 37896712 +加载 PEMSD3 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/PEMSD3/2025-12-01_22-05-49/run.log +✓ Test passed: output shape torch.Size([16, 12, 358, 1]) matches label shape torch.Size([16, 12, 358, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/PEMSD7.yaml + +``` +模型参数量: 615304 +加载 PEMSD7 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/PEMSD7/2025-12-01_22-06-48/run.log +✓ Test passed: output shape torch.Size([16, 12, 883, 1]) matches label shape torch.Size([16, 12, 883, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-inflow.yaml + +``` +模型参数量: 103481647 +加载 NYCBike-InFlow 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/REPST/NYCBike-InFlow/2025-12-01_22-09-34/run.log +✓ Test passed: output shape torch.Size([16, 24, 128, 1]) matches label shape torch.Size([16, 24, 128, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/BeijingAirQuality(Deprecated).yaml + +``` +模型参数量: 103815937 +加载 BeijingAirQuality 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/REPST/BeijingAirQuality/2025-12-01_22-09-59/run.log +✓ Test passed: output shape torch.Size([16, 24, 7, 3]) matches label shape torch.Size([16, 24, 7, 3]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/METR-LA.yaml + +``` +模型参数量: 103481647 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/REPST/METR-LA/2025-12-01_22-10-22/run.log +✓ Test passed: output shape torch.Size([16, 24, 207, 1]) matches label shape torch.Size([16, 24, 207, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/AirQuality.yaml + +``` +模型参数量: 103815973 +加载 AirQuality 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/REPST/AirQuality/2025-12-01_22-10-33/run.log +✓ Test passed: output shape torch.Size([16, 24, 35, 3]) matches label shape torch.Size([16, 24, 35, 3]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/PEMS-BAY.yaml + +``` +模型参数量: 103481647 +加载 PEMS-BAY 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/REPST/PEMS-BAY/2025-12-01_22-11-23/run.log +✓ Test passed: output shape torch.Size([16, 24, 325, 1]) matches label shape torch.Size([16, 24, 325, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/SolarEnergy.yaml + +``` +模型参数量: 103481647 +加载 SolarEnergy 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/REPST/SolarEnergy/2025-12-01_22-11-48/run.log +✓ Test passed: output shape torch.Size([64, 24, 137, 1]) matches label shape torch.Size([64, 24, 137, 1]) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-outflow.yaml + +``` +模型参数量: 103481647 +加载 NYCBike-OutFlow 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/REPST/NYCBike-OutFlow/2025-12-01_22-11-58/run.log +✓ Test passed: output shape torch.Size([16, 24, 128, 1]) matches label shape torch.Size([16, 24, 128, 1]) +``` + + +### FAILED + + +### ERROR + +#### /user/czzhangheng/code/TrafficWheel/config/EXPB/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^^^^ +AttributeError: 'NoneType' object has no attribute 'to' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXPB/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^^^^ +AttributeError: 'NoneType' object has no attribute 'to' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXPB/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^^^^ +AttributeError: 'NoneType' object has no attribute 'to' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXPB/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^^^^ +AttributeError: 'NoneType' object has no attribute 'to' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXPB/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^^^^ +AttributeError: 'NoneType' object has no attribute 'to' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXPB/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^^^^ +AttributeError: 'NoneType' object has no attribute 'to' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD7(L).yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/Hainan.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TWDGCN/PEMSD7(M).yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 38, in model_selector + return TWDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TWDGCN/TWDGCN.py", line 84, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STSGCN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 60, in model_selector + return STSGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/STSGCN.py", line 295, in __init__ + self.adj = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STSGCN/get_adj.py", line 10, in get_adj + match args["num_nodes"]: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike-InFlow.yaml + +``` +模型参数量: 146712 +加载 NYCBike-InFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 70, in model_selector + return STID(model_config) + ^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STID/STID.py", line 13, in __init__ + self.embed_dim = model_args["embed_dim"] + ~~~~~~~~~~^^^^^^^^^^^^^ +KeyError: 'embed_dim' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STID/NYCBike-OutFlow.yaml + +``` +模型参数量: 146712 +加载 NYCBike-OutFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAWnet/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 82, in model_selector + return STAWnet(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAWnet/STAWnet.py", line 269, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 29, in get_adj + return adj + ^^^ +UnboundLocalError: cannot access local variable 'adj' where it is not associated with a value +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DCRNN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 50, in model_selector + return DCRNNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DCRNN/dcrnn_model.py", line 123, in __init__ + adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/NYCBike-InFlow.yaml + +``` +模型参数量: 3086208 +加载 NYCBike-InFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/AirQuality.yaml + +``` +模型参数量: 1624752 +加载 AirQuality 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/AirQuality/2025-12-01_21-52-33/run.log +2025/12/01 21:52:33 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/AirQuality/2025-12-01_21-52-33 +2025/12/01 21:52:33 - Training process started + +Train Epoch 1: 0%| | 0/325 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAEFormer/STAEFormer.py", line 195, in forward + x = self.input_proj(x) # (batch_size, in_steps, num_nodes, input_embedding_dim) + ^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/linear.py", line 125, in forward + return F.linear(input, self.weight, self.bias) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +RuntimeError: mat1 and mat2 shapes cannot be multiplied (13440x1 and 6x24) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/NYCBike-OutFlow.yaml + +``` +模型参数量: 3086208 +加载 NYCBike-OutFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STAEFormer/SolarEnergy.yaml + +``` +模型参数量: 13296192 +加载 SolarEnergy 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/SolarEnergy/2025-12-01_21-53-32/run.log +2025/12/01 21:53:32 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/STAEFormer/SolarEnergy/2025-12-01_21-53-32 +2025/12/01 21:53:32 - Training process started + +Train Epoch 1: 0%| | 0/1970 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STAEFormer/STAEFormer.py", line 195, in forward + x = self.input_proj(x) # (batch_size, in_steps, num_nodes, input_embedding_dim) + ^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/linear.py", line 125, in forward + return F.linear(input, self.weight, self.bias) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +RuntimeError: mat1 and mat2 shapes cannot be multiplied (52608x1 and 137x24) +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGODE/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 62, in model_selector + return ODEGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGODE/STGODE.py", line 149, in __init__ + num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNCDE/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 44, in model_selector + return make_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNCDE/Make_model.py", line 16, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-InFlow.yaml + +``` +模型参数量: 103513539 +加载 NYCBike-InFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AEPSA/NYCBike-OutFlow.yaml + +``` +模型参数量: 103513539 +加载 NYCBike-OutFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ST_SSL/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 78, in model_selector + return STSSLModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ST_SSL/ST_SSL.py", line 39, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/TCN/AirQuality.yaml + +``` +模型参数量: 36678 +加载 AirQuality 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/AirQuality/2025-12-01_22-00-37/run.log +2025/12/01 22:00:37 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/TCN/AirQuality/2025-12-01_22-00-37 +2025/12/01 22:00:37 - Training process started + +Train Epoch 1: 0%| | 0/325 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TCN/TCN.py", line 43, in forward + x = self.network(x) + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/container.py", line 250, in forward + input = module(input) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/TCN/TCN.py", line 89, in forward + res = x if self.downsample is None else self.downsample(x) + ^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/conv.py", line 554, in forward + return self._conv_forward(input, self.weight, self.bias) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/conv.py", line 549, in _conv_forward + return F.conv2d( + ^^^^^^^^^ +RuntimeError: Given groups=1, weight of size [32, 6, 1, 1], expected input[16, 1, 35, 24] to have 6 channels, but got 1 channels instead +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/SD.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD8.yaml + +``` +模型参数量: 235788 +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 18, in get_dataloader + return EXP_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/EXPdataloader.py", line 8, in get_dataloader + data = load_st_dataset(args["type"], args["sample"]) # [T, N, F] + ~~~~^^^^^^^^ +KeyError: 'type' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/EXP/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 74, in model_selector + return EXP(model_config) + ^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/EXP/EXP32.py", line 114, in __init__ + self.horizon = args["horizon"] # 预测步长 + ~~~~^^^^^^^^^^^ +KeyError: 'horizon' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD7(L).yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/Hainan.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DDGCRN/PEMSD7(M).yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 36, in model_selector + return DDGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/DDGCRN/DDGCRN.py", line 41, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/NYCBike-InFlow.yaml + +``` +模型参数量: 37897240 +加载 NYCBike-InFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/AirQuality.yaml + +``` +模型参数量: 37897240 +加载 AirQuality 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/AirQuality/2025-12-01_22-05-16/run.log +2025/12/01 22:05:16 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/AirQuality/2025-12-01_22-05-16 +2025/12/01 22:05:16 - Training process started + +Train Epoch 1: 0%| | 0/325 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 180, in _run_epoch + loss = self.loss(output, label) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/loss.py", line 128, in forward + return F.l1_loss(input, target, reduction=self.reduction) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/functional.py", line 3810, in l1_loss + expanded_input, expanded_target = torch.broadcast_tensors(input, target) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/functional.py", line 76, in broadcast_tensors + return _VF.broadcast_tensors(tensors) # type: ignore[attr-defined] + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +RuntimeError: The size of tensor a (12) must match the size of tensor b (24) at non-singleton dimension 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/NYCBike-OutFlow.yaml + +``` +模型参数量: 37897240 +加载 NYCBike-OutFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/DSANET/SolarEnergy.yaml + +``` +模型参数量: 37897240 +加载 SolarEnergy 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/SolarEnergy/2025-12-01_22-06-16/run.log +2025/12/01 22:06:16 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/DSANET/SolarEnergy/2025-12-01_22-06-16 +2025/12/01 22:06:16 - Training process started + +Train Epoch 1: 0%| | 0/1970 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 180, in _run_epoch + loss = self.loss(output, label) + ^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/loss.py", line 128, in forward + return F.l1_loss(input, target, reduction=self.reduction) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/functional.py", line 3810, in l1_loss + expanded_input, expanded_target = torch.broadcast_tensors(input, target) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/functional.py", line 76, in broadcast_tensors + return _VF.broadcast_tensors(tensors) # type: ignore[attr-defined] + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +RuntimeError: The size of tensor a (12) must match the size of tensor b (24) at non-singleton dimension 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STFGNN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 58, in model_selector + return STFGNN(model_config) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STFGNN/STFGNN.py", line 343, in __init__ + adj = torch.tensor(get_adj(args)) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 53, in __init__ + self.input_dim = args["input_dim"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'input_dim' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/AGCRN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 40, in model_selector + return AGCRN(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/AGCRN/AGCRN.py", line 52, in __init__ + self.num_node = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGNRDE/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 80, in model_selector + return make_nrde_model(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGNRDE/Make_model.py", line 17, in make_model + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/PEMS-BAY_paper.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 84, in model_selector + return REPST(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/REPST/repst.py", line 24, in __init__ + self.word_choice = GumbelSoftmax(configs['word_num']) + ~~~~~~~^^^^^^^^^^^^ +KeyError: 'word_num' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-InFlow.yaml + +``` +模型参数量: 103481647 +加载 NYCBike-InFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/REPST/NYCBike-OutFlow.yaml + +``` +模型参数量: 103481647 +加载 NYCBike-OutFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STIDGCN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 68, in model_selector + return STIDGCN(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STIDGCN/STIDGCN.py", line 337, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/PDG2SEQ/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 64, in model_selector + return PDG2Seq(model_config) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/PDG2SEQ/PDG2Seqb.py", line 226, in __init__ + self.num_nodes = args["num_nodes"] + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/NLT/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 42, in model_selector + return HierAttnLstm(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/NLT/HierAttnLstm.py", line 10, in __init__ + args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/NYCBike-InFlow.yaml + +``` +模型参数量: 4 +加载 NYCBike-InFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD4.yaml + +``` +模型参数量: 4 +加载 PEMSD4 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD4/2025-12-01_22-14-54/run.log +2025/12/01 22:14:54 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD4/2025-12-01_22-14-54 +2025/12/01 22:14:54 - Training process started + +Train Epoch 1: 0%| | 0/160 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 40, in forward + drift = self.drift[n] if self.drift is not None else None + ~~~~~~~~~~^^^ +IndexError: index 1 is out of bounds for dimension 0 with size 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/METR-LA.yaml + +``` +模型参数量: 4 +加载 METR-LA 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/METR-LA/2025-12-01_22-15-07/run.log +2025/12/01 22:15:07 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/METR-LA/2025-12-01_22-15-07 +2025/12/01 22:15:07 - Training process started + +Train Epoch 1: 0%| | 0/1285 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 40, in forward + drift = self.drift[n] if self.drift is not None else None + ~~~~~~~~~~^^^ +IndexError: index 1 is out of bounds for dimension 0 with size 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/AirQuality.yaml + +``` +模型参数量: 4 +加载 AirQuality 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/AirQuality/2025-12-01_22-15-15/run.log +2025/12/01 22:15:15 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/AirQuality/2025-12-01_22-15-15 +2025/12/01 22:15:15 - Training process started + +Train Epoch 1: 0%| | 0/325 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 40, in forward + drift = self.drift[n] if self.drift is not None else None + ~~~~~~~~~~^^^ +IndexError: index 1 is out of bounds for dimension 0 with size 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/NYCBike-OutFlow.yaml + +``` +模型参数量: 4 +加载 NYCBike-OutFlow 数据集中... +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 22, in main + train_loader, val_loader, test_loader, scaler, *extra_data = get_dataloader( + ^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/loader_selector.py", line 20, in get_dataloader + return normal_loader(config, normalizer, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 14, in get_dataloader + x, y = _prepare_data_with_windows(data, args, single) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 43, in _prepare_data_with_windows + x = _add_time_features(x, time_features, args["lag"], args["horizon"], single, add_window_x) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/dataloader/PeMSDdataloader.py", line 64, in _add_time_features + return np.concatenate([data, time_day, time_week], axis=-1) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 2, the array at index 0 has size 128 and the array at index 1 has size 1024 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD8.yaml + +``` +模型参数量: 4 +加载 PEMSD8 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD8/2025-12-01_22-15-31/run.log +2025/12/01 22:15:31 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD8/2025-12-01_22-15-31 +2025/12/01 22:15:31 - Training process started + +Train Epoch 1: 0%| | 0/168 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 40, in forward + drift = self.drift[n] if self.drift is not None else None + ~~~~~~~~~~^^^ +IndexError: index 1 is out of bounds for dimension 0 with size 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD7(L).yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 52, in model_selector + return ARIMA(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 9, in __init__ + self.p = args["p"] # 自回归阶数 + ~~~~^^^^^ +KeyError: 'p' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD3.yaml + +``` +模型参数量: 4 +加载 PEMSD3 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD3/2025-12-01_22-15-53/run.log +2025/12/01 22:15:53 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD3/2025-12-01_22-15-53 +2025/12/01 22:15:53 - Training process started + +Train Epoch 1: 0%| | 0/982 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 40, in forward + drift = self.drift[n] if self.drift is not None else None + ~~~~~~~~~~^^^ +IndexError: index 1 is out of bounds for dimension 0 with size 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/SolarEnergy.yaml + +``` +模型参数量: 4 +加载 SolarEnergy 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/SolarEnergy/2025-12-01_22-16-18/run.log +2025/12/01 22:16:18 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/SolarEnergy/2025-12-01_22-16-18 +2025/12/01 22:16:18 - Training process started + +Train Epoch 1: 0%| | 0/1970 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 40, in forward + drift = self.drift[n] if self.drift is not None else None + ~~~~~~~~~~^^^ +IndexError: index 1 is out of bounds for dimension 0 with size 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/Hainan.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 52, in model_selector + return ARIMA(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 9, in __init__ + self.p = args["p"] # 自回归阶数 + ~~~~^^^^^ +KeyError: 'p' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD7.yaml + +``` +模型参数量: 4 +加载 PEMSD7 数据集中... +Create Log File in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD7/2025-12-01_22-16-56/run.log +2025/12/01 22:16:56 - Experiment log path in: /user/czzhangheng/code/TrafficWheel/experiments/ARIMA/PEMSD7/2025-12-01_22-16-56 +2025/12/01 22:16:56 - Training process started + +Train Epoch 1: 0%| | 0/1058 [00:00 + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 46, in main + trainer.train() + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 266, in train + train_epoch_loss = self.train_epoch(epoch) + ^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 244, in train_epoch + return self._run_epoch(epoch, self.train_loader, "train") + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/trainer/Trainer.py", line 179, in _run_epoch + output = self.model(data).to(self.device) + ^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1739, in _wrapped_call_impl + return self._call_impl(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/miniconda/envs/TrafficWheel/lib/python3.12/site-packages/torch/nn/modules/module.py", line 1750, in _call_impl + return forward_call(*args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 40, in forward + drift = self.drift[n] if self.drift is not None else None + ~~~~~~~~~~^^^ +IndexError: index 1 is out of bounds for dimension 0 with size 1 +``` + +#### /user/czzhangheng/code/TrafficWheel/config/ARIMA/PEMSD7(M).yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 52, in model_selector + return ARIMA(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/ARIMA/ARIMA.py", line 9, in __init__ + self.p = args["p"] # 自回归阶数 + ~~~~^^^^^ +KeyError: 'p' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STMLP/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 66, in model_selector + return STMLP(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STMLP/STMLP.py", line 188, in __init__ + self.adj_mx = get_adj(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 10, in get_adj + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/MegaCRN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 76, in model_selector + return MegaCRNModel(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/MegaCRN/MegaCRNModel.py", line 32, in __init__ + num_nodes=args["num_nodes"], + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/GWN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 56, in model_selector + return gwnet(model_config) + ^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/GWN/GraphWaveNet.py", line 91, in __init__ + torch.randn(args["num_nodes"], 10, device=args["device"]) + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/NYCBike-InFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD4.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/METR-LA.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/AirQuality.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/NYCBike-OutFlow.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD8.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD3.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/SolarEnergy.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + +#### /user/czzhangheng/code/TrafficWheel/config/STGCN/PEMSD7.yaml + +``` + +Traceback (most recent call last): + File "/user/czzhangheng/code/TrafficWheel/run.py", line 66, in + main() + File "/user/czzhangheng/code/TrafficWheel/run.py", line 19, in main + model = init.init_model(args) + ^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/initializer.py", line 14, in init_model + model = model_selector(args).to(device) + ^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/model_selector.py", line 48, in model_selector + return STGCNChebGraphConv(model_config) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/model/STGCN/models.py", line 31, in __init__ + gso = get_gso(args) + ^^^^^^^^^^^^^ + File "/user/czzhangheng/code/TrafficWheel/utils/get_adj.py", line 33, in get_gso + match args['num_nodes']: + ~~~~^^^^^^^^^^^^^ +KeyError: 'num_nodes' +``` + diff --git a/trainer/DCRNN_Trainer.py b/trainer/DCRNN_Trainer.py index 8bb2298..a60eddb 100755 --- a/trainer/DCRNN_Trainer.py +++ b/trainer/DCRNN_Trainer.py @@ -103,6 +103,16 @@ class Trainer: output = self.model(data, labels=label.clone()).to(self.device) loss = self.loss(output, label) + # 检查output和label的shape是否一致 + if output.shape == label.shape: + print(f"✓ Test passed: output shape {output.shape} matches label shape {label.shape}") + import sys + sys.exit(0) + else: + print(f"✗ Test failed: output shape {output.shape} does not match label shape {label.shape}") + import sys + sys.exit(1) + # 反归一化 d_output = self.scaler.inverse_transform(output) d_label = self.scaler.inverse_transform(label) diff --git a/trainer/E32Trainer.py b/trainer/E32Trainer.py index 5011131..4bad8dd 100644 --- a/trainer/E32Trainer.py +++ b/trainer/E32Trainer.py @@ -108,6 +108,16 @@ class Trainer: label = target[..., : self.args["output_dim"]] loss = self.loss(output, label) + # 检查output和label的shape是否一致 + if output.shape == label.shape: + print(f"✓ Test passed: output shape {output.shape} matches label shape {label.shape}") + import sys + sys.exit(0) + else: + print(f"✗ Test failed: output shape {output.shape} does not match label shape {label.shape}") + import sys + sys.exit(1) + # 反归一化 d_output = self.scaler.inverse_transform(output) d_label = self.scaler.inverse_transform(label) diff --git a/trainer/PDG2SEQ_Trainer.py b/trainer/PDG2SEQ_Trainer.py index 95b7a61..e42e841 100755 --- a/trainer/PDG2SEQ_Trainer.py +++ b/trainer/PDG2SEQ_Trainer.py @@ -107,6 +107,16 @@ class Trainer: # 计算原始loss loss = self.loss(output, label) + # 检查output和label的shape是否一致 + if output.shape == label.shape: + print(f"✓ Test passed: output shape {output.shape} matches label shape {label.shape}") + import sys + sys.exit(0) + else: + print(f"✗ Test failed: output shape {output.shape} does not match label shape {label.shape}") + import sys + sys.exit(1) + # 反归一化 d_output = self.scaler.inverse_transform(output) d_label = self.scaler.inverse_transform(label) diff --git a/trainer/STMLP_Trainer.py b/trainer/STMLP_Trainer.py index d1ac02a..4f3d576 100644 --- a/trainer/STMLP_Trainer.py +++ b/trainer/STMLP_Trainer.py @@ -137,11 +137,31 @@ class Trainer: # 总loss loss = loss1 + 10 * tkloss + 1 * scl + + # 检查output和label的shape是否一致 + if output.shape == label.shape: + print(f"✓ Test passed: output shape {output.shape} matches label shape {label.shape}") + import sys + sys.exit(0) + else: + print(f"✗ Test failed: output shape {output.shape} does not match label shape {label.shape}") + import sys + sys.exit(1) else: # 普通训练模式 output, out_, _ = self.model(data) loss = self.loss(output, label) + # 检查output和label的shape是否一致 + if output.shape == label.shape: + print(f"✓ Test passed: output shape {output.shape} matches label shape {label.shape}") + import sys + sys.exit(0) + else: + print(f"✗ Test failed: output shape {output.shape} does not match label shape {label.shape}") + import sys + sys.exit(1) + # 反归一化 d_output = self.scaler.inverse_transform(output) d_label = self.scaler.inverse_transform(label) diff --git a/trainer/cdeTrainer/cdetrainer.py b/trainer/cdeTrainer/cdetrainer.py index 84111fb..cda4a10 100755 --- a/trainer/cdeTrainer/cdetrainer.py +++ b/trainer/cdeTrainer/cdetrainer.py @@ -110,6 +110,16 @@ class Trainer: # 计算原始loss loss = self.loss(output, label) + # 检查output和label的shape是否一致 + if output.shape == label.shape: + print(f"✓ Test passed: output shape {output.shape} matches label shape {label.shape}") + import sys + sys.exit(0) + else: + print(f"✗ Test failed: output shape {output.shape} does not match label shape {label.shape}") + import sys + sys.exit(1) + # 反归一化 d_output = self.scaler.inverse_transform(output) d_label = self.scaler.inverse_transform(label)