Solved by ptrblck in post #2 
              
              
                The scheduler might track multiple param_groups as described here. 


It should still work as shown in this example: 


model = nn.Linear(10, 2)
optimizer = optim.Adam(model.parameters(), lr=1e-3)
scheduler = optim.lr_scheduler.ReduceLROnPlateau(
    optimizer, patience=10, verbose=True)

for i in…