class_docstr: A ResNet class that is similar to torchvision's but contains the following changes:
  - There are now 3 "stem" convolutions as opposed to 1, with an average pool instead of a max pool.
  - Performs anti-aliasing strided convolutions, where an avgpool is prepended to convolutions with stride > 1
  - The final pooling layer is a QKV attention instead of an average pool
class_docstr_tok: ["A","ResNet","class","that","is","similar","to","torchvision","'s","but","contains","the","following","changes",":","-","There","are","now","3","``","stem","''","convolutions","as","opposed","to","1",",","with","an","average","pool","instead","of","a","max","pool",".","-","Performs","anti-aliasing","strided","convolutions",",","where","an","avgpool","is","prepended","to","convolutions","with","stride",">","1","-","The","final","pooling","layer","is","a","QKV","attention","instead","of","an","average","pool"]
code: def _make_layer(self, planes, blocks, stride=1):
      layers = [Bottleneck(self._inplanes, planes, stride)]
  
      self._inplanes = planes * Bottleneck.expansion
      for _ in range(1, blocks):
          layers.append(Bottleneck(self._inplanes, planes))
  
      return nn.Sequential(*layers)
  
imports: from collections import OrderedDict
  from typing import Tuple, Union
  import numpy
  import torch
  import torch.nn.functional
  from torch import nn
label_desc: Use image node_id 2 for calling the ModifiedResNet obj's underlying member method code with example usage: obj._make_layer(planes, blocks, stride) and returns: nn