code: def squeezenet(
      x,
      is_training=False,
      classes=1000,
      stem=False,
      scope=None,
      reuse=None,
  ):
      x = conv(x, 64, 3, stride=2, padding="VALID", scope="conv1")
      x = max_pool2d(x, 3, stride=2, scope="pool1")
  
      x = fire(x, 16, 64, scope="fire2")
      x = fire(x, 16, 64, scope="fire3")
      x = max_pool2d(x, 3, stride=2, scope="pool3")
  
      x = fire(x, 32, 128, scope="fire4")
      x = fire(x, 32, 128, scope="fire5")
      x = max_pool2d(x, 3, stride=2, scope="pool5")
  
      x = fire(x, 48, 192, scope="fire6")
      x = fire(x, 48, 192, scope="fire7")
      x = fire(x, 64, 256, scope="fire8")
      x = fire(x, 64, 256, scope="fire9")
      if stem:
          return x
      x = dropout(x, keep_prob=0.5, scope="drop9")
  
      x = reduce_mean(x, [1, 2], name="pool10")
      x = fc(
          x, classes, scope="logits"
      )  # the original name is `conv10`
      x = softmax(x, name="probs")
      return x
  
file_path: tensornets/tensornets/squeezenets.py
imports: from __future__ import absolute_import
  import tensorflow
  from .layers import conv2d
  from .layers import dropout
  from .layers import fc
  from .layers import max_pool2d
  from .layers import convrelu
  from .ops import *
  from .utils import set_args
  from .utils import var_scope
label_desc: Use image node_id 3 for calling a global function with example usage: squeezenet(x, is_training, classes, stem, scope, reuse) and returns: x, x