# initialize the bias
    def bias_init(m):
        if isinstance(m, nn.Conv2d):
            BIAS_INIT = -13
            m.bias.data.fill_(BIAS_INIT)

    model = CifarResNet(HwNetBasicblock, depth=110, num_classes=10)
    model = model.apply(bias_init)
    net = model.cuda()

The option you suggest should work and I am doing something similar when initializing my networks. If you take a look at https://github.com/pytorch/pytorch/blob/master/torch/nn/init.py 10 it also seems to be the preferred approach of initializing parameters. (Although one of the devs will probably have to tell you if this is actually true)
If only certain layers actually have a bias value you should also additionally be able to do something like:
if not isinstance(m.bias, type(None)): 
    m.bias.data.fill_(value) 

This way you wouldn’t have to worry about bias=True or False explicitly.
EDIT:
When I further think about it you could actually probably do this thing directly in the init of your network similar to the example given in https://github.com/pytorch/vision/blob/master/torchvision/models/resnet.py#L112-L118 2
for m in self.modules():
        if isinstance(m, nn.Conv2d):
            if not isinstance(m.bias, type(None)):
                 m.bias.data = -13

I intuitively prefer the option of defining the function to initialize/change parameters outside of the model init though as you can just call it on the model whenever you want, instead of just in the constructor.