code: def __init__(
      self, num_input, output_size, num_channels, kernel_size, dropout
  ):
      super().__init__()
      self.num_input = num_input
      self.tcn = TemporalConvNet(
          num_input, num_channels, kernel_size, dropout=dropout
      )
      self.linear = nn.Linear(num_channels[-1], output_size)
  
imports: from __future__ import division
  from __future__ import print_function
  import numpy
  import pandas
  from typing import Text, Union
  import copy
  from ...utils import get_or_create_path
  from ...log import get_module_logger
  import torch
  import torch.nn
  import torch.optim
  from .pytorch_utils import count_parameters
  from ...model.base import Model
  from ...data.dataset import DatasetH
  from ...data.dataset.handler import DataHandlerLP
  from .tcn import TemporalConvNet
label_desc: Use image node_id 1 to create a new TCNModel object from inherited base classes: nn with example: obj = TCNModel(num_input, output_size, num_channels, kernel_size, dropout)