original_docstring: 
          Adds a Dense Layer inside a Dense Block, which is composed of BN, ReLU, Conv and Dropout
  
          # References
              Jegou S, Drozdzal M, Vazquez D, Romero A, Bengio Y.
              The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation.
              arXiv preprint arXiv:1611.09326. 2016 Nov 28.
  
          :param name:
          :param input_layer: input layer to the dense block.
          :param k: growth rate. Number of additional feature maps learned at each layer.
          :param drop: dropout rate.
          :param init_weights: weights initialization function
          :return: output layer
          
docstring: Adds a Dense Layer inside a Dense Block, which is composed of BN, ReLU, Conv and Dropout
  References
  Jegou S, Drozdzal M, Vazquez D, Romero A, Bengio Y.
  The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation.
docstring_tokens: Adds a Dense Layer inside a Dense Block which is composed of BN ReLU Conv and Dropout References Jegou S Drozdzal M Vazquez D Romero A Bengio Y . The One Hundred Layers Tiramisu : Fully Convolutional DenseNets for Semantic Segmentation .
code: def add_dense_layer(input_layer, k, drop, init_weights, name=None):
          """
          Adds a Dense Layer inside a Dense Block, which is composed of BN, ReLU, Conv and Dropout
  
          # References
              Jegou S, Drozdzal M, Vazquez D, Romero A, Bengio Y.
              The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation.
              arXiv preprint arXiv:1611.09326. 2016 Nov 28.
  
          :param name:
          :param input_layer: input layer to the dense block.
          :param k: growth rate. Number of additional feature maps learned at each layer.
          :param drop: dropout rate.
          :param init_weights: weights initialization function
          :return: output layer
          """
  
          if name is not None:
              name_batch = 'batchnormalization' + name
              name_activ = 'activation' + name
              name_conv = 'convolution2d' + name
              name_drop = 'dropout' + name
          else:
              name_batch = None
              name_activ = None
              name_conv = None
              name_drop = None
  
          out_layer = BatchNormalization(mode=2, axis=1, name=name_batch)(input_layer)
          out_layer = Activation('relu', name=name_activ)(out_layer)
          out_layer = Conv2D(k, (3, 3), kernel_initializer=init_weights, padding='same', name=name_conv)(out_layer)
          if drop > 0.0:
              out_layer = Dropout(drop, name=name_drop)(out_layer)
          return out_layer
code_tokens: def add_dense_layer ( input_layer , k , drop , init_weights , name = None ) : if name is not None : name_batch = 'batchnormalization' + name name_activ = 'activation' + name name_conv = 'convolution2d' + name name_drop = 'dropout' + name else : name_batch = None name_activ = None name_conv = None name_drop = None out_layer = BatchNormalization ( mode = 2 , axis = 1 , name = name_batch ) ( input_layer ) out_layer = Activation ( 'relu' , name = name_activ ) ( out_layer ) out_layer = Conv2D ( k , ( 3 , 3 ) , kernel_initializer = init_weights , padding = 'same' , name = name_conv ) ( out_layer ) if drop > 0.0 : out_layer = Dropout ( drop , name = name_drop ) ( out_layer ) return out_layer
short_docstring: Adds a Dense Layer inside a Dense Block, which is composed of BN, ReLU, Conv and Dropout
   References
  Jegou S, Drozdzal M, Vazquez D, Romero A, Bengio Y.
short_docstring_tokens: Adds a Dense Layer inside a Dense Block which is composed of BN ReLU Conv and Dropout References Jegou S Drozdzal M Vazquez D Romero A Bengio Y .
comment: """
          Adds a Dense Layer inside a Dense Block, which is composed of BN, ReLU, Conv and Dropout
  
          # References
              Jegou S, Drozdzal M, Vazquez D, Romero A, Bengio Y.
              The One Hundred Layers Tiramisu: Fully Convolutional DenseNets for Semantic Segmentation.
              arXiv preprint arXiv:1611.09326. 2016 Nov 28.
  
          :param name:
          :param input_layer: input layer to the dense block.
          :param k: growth rate. Number of additional feature maps learned at each layer.
          :param drop: dropout rate.
          :param init_weights: weights initialization function
          :return: output layer
          """