Unable to load MultiStepLR with torch.load(weights_only=True) 
Labels: module: serialization, triaged

### 🐛 Describe the bug

`MultiStepLR.state_dict()` contains an instance of `collections.Counter`, but `collections.Counter` is not included in the safelist of weights_only_unpickler.
So, errors occur when loading checkpoints depending on the class of the LR scheduler.

reproduction code
```python
import torch

model = torch.nn.Linear(4, 4)
optimizer = torch.optim.Adam(model.parameters())
scheduler = torch.optim.lr_scheduler.MultiStepLR(optimizer, [10, 20])

# print(scheduler.state_dict())

torch.save({
    "model_state_dict": model.state_dict(),
    "optimizer_state_dict": optimizer.state_dict(),
    "scheduler_state_dict": scheduler.state_dict(),
}, "./checkpoint.pth")
print("SAVE")

torch.load("./checkpoint.pth", weights_only=True)
print("LOAD")
```
output
```
SAVE
Traceback (most recent call last):
  File "/home/nagadomi/dev/nunif/tmp/weights_only/bug_multistep.py", line 16, in <module>
    torch.load("./checkpoint.pth", weights_only=True)
  File "/home/nagadomi/dev/nunif/.venv/lib/python3.10/site-packages/torch/serialization.py", line 808, in load
    raise pickle.UnpicklingError(UNSAFE_MESSAGE + str(e)) from None
_pickle.UnpicklingError: Weights only load failed. Re-running `torch.load` with `weights_only` set to `False` will likely succeed, but it can result in arbitrary code execution.Do it only if you get the file from a trusted source. WeightsUnpickler error: Unsupported class collections.Counter
```

`scheduler.state_dict()`
```
{'milestones': Counter({10: 1, 20: 1}), 'gamma': 0.1, 'base_lrs': [0.001], 'last_epoch': 0, 'verbose': False, '_step_count': 1, '_get_lr_called_within_step': False, '_last_lr': [0.001]}
```

### Versions

PyTorch version: 2.0.0+cu117
Is debug build: False
CUDA used to build PyTorch: 11.7
ROCM used to build PyTorch: N/A

OS: Ubuntu 22.04.2 LTS (x86_64)
GCC version: (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
Clang version: Could not collect
CMake version: version 3.26.0
Libc version: glibc-2.35

Python version: 3.10.6 (main, Mar 10 2023, 10:55:28) [GCC 11.3.0] (64-bit runtime)
Python platform: Linux-5.19.0-38-generic-x86_64-with-glibc2.35
Is CUDA available: True
CUDA runtime version: 11.8.89
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration: GPU 0: NVIDIA GeForce RTX 3070 Ti
Nvidia driver version: 525.105.17
cuDNN version: Probably one of the following:
/usr/lib/x86_64-linux-gnu/libcudnn.so.8.8.1
/usr/lib/x86_64-linux-gnu/libcudnn_adv_infer.so.8.8.1
/usr/lib/x86_64-linux-gnu/libcudnn_adv_train.so.8.8.1
/usr/lib/x86_64-linux-gnu/libcudnn_cnn_infer.so.8.8.1
/usr/lib/x86_64-linux-gnu/libcudnn_cnn_train.so.8.8.1
/usr/lib/x86_64-linux-gnu/libcudnn_ops_infer.so.8.8.1
/usr/lib/x86_64-linux-gnu/libcudnn_ops_train.so.8.8.1
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available: True

Versions of relevant libraries:
[pip3] numpy==1.24.2
[pip3] perlin-numpy==0.0.0
[pip3] torch==2.0.0
[pip3] torchaudio==0.13.1
[pip3] torchdata==0.6.0
[pip3] torchtext==0.15.1
[pip3] torchvision==0.15.1
[conda] Could not collect


cc @mruberry