code: def one_hot_cnn(dense_out, max_len=300, frame="small"):
      """
      Temporal CNN Model
  
      As defined in "Text Understanding from Scratch" by Zhang, LeCun 2015
      https://arxiv.org/pdf/1502.01710v4.pdf
      This model is a series of 1D CNNs, with a maxpooling and fully connected layers.
      The frame sizes may either be large or small.
  
  
      Args:
          dense_out (int): size out the output dense layer, this is the number of classes
          max_len (int): length of the input text
          frame (str): frame size, either large or small
  
      Returns:
          model (model): temporal CNN model
      """
  
      if frame == "large":
          cnn_size = 1024
          fully_connected = [2048, 2048, dense_out]
      else:
          cnn_size = 256
          fully_connected = [1024, 1024, dense_out]
  
      model = tf.keras.models.Sequential()
  
      model.add(
          tf.keras.layers.Conv1D(
              cnn_size, 7, padding="same", input_shape=(68, max_len)
          )
      )
      model.add(tf.keras.layers.MaxPooling1D(pool_size=3))
  
      print(model.output_shape)
  
      # Input = 22 x 256
      model.add(tf.keras.layers.Conv1D(cnn_size, 7, padding="same"))
      model.add(tf.keras.layers.MaxPooling1D(pool_size=3))
  
      print(model.output_shape)
      # Input = 7 x 256
      model.add(tf.keras.layers.Conv1D(cnn_size, 3, padding="same"))
  
      # Input = 7 x 256
      model.add(tf.keras.layers.Conv1D(cnn_size, 3, padding="same"))
  
      model.add(tf.keras.layers.Conv1D(cnn_size, 3, padding="same"))
  
      # Input = 7 x 256
      model.add(tf.keras.layers.Conv1D(cnn_size, 3, padding="same"))
      model.add(tf.keras.layers.MaxPooling1D(pool_size=3))
  
      model.add(tf.keras.layers.Flatten())
  
      # Fully Connected Layers
  
      # Input is 512 Output is 1024/2048
      model.add(tf.keras.layers.Dense(fully_connected[0]))
      model.add(tf.keras.layers.Dropout(0.75))
      model.add(tf.keras.layers.Activation("relu"))
  
      # Input is 1024/2048 Output is 1024/2048
      model.add(tf.keras.layers.Dense(fully_connected[1]))
      model.add(tf.keras.layers.Dropout(0.75))
      model.add(tf.keras.layers.Activation("relu"))
  
      # Input is 1024/2048 Output is dense_out size (number of classes)
      model.add(tf.keras.layers.Dense(fully_connected[2]))
      model.add(tf.keras.layers.Activation("softmax"))
  
      # Stochastic gradient parameters as set by paper
      sgd = tf.keras.optimizers.SGD(
          lr=0.01, decay=1e-5, momentum=0.9, nesterov=True
      )
      model.compile(
          loss="categorical_crossentropy",
          optimizer=sgd,
          metrics=["accuracy"],
      )
  
      return model
  
label_desc: Use image node_id 2 for calling a global function with example usage: one_hot_cnn(dense_out, max_len, frame) and returns: model