docstr: pre_process input data.
  1. expand dims for y and val_y
  2. get decoder inputs for train data
  3. get decoder inputs for validation data
  :param x: train_x
  :param y: train_y
  :param validation_data:
  :return: network input
docstr_tok: ["pre_process","input","data",".","1.","expand","dims","for","y","and","val_y","2.","get","decoder","inputs","for","train","data","3.","get","decoder","inputs","for","validation","data",":","param","x",":","train_x",":","param","y",":","train_y",":","param","validation_data",":",":","return",":","network","input"]
code: def _pre_processing(self, x, y, validation_data):
      """
      pre_process input data.
      1. expand dims for y and val_y
      2. get decoder inputs for train data
      3. get decoder inputs for validation data
      :param x: train_x
      :param y: train_y
      :param validation_data:
      :return: network input
      """
      y = self._expand_y(y)
      self._get_len(x, y)
      decoder_input_data = self._get_decoder_inputs(x, y)
      if validation_data is not None:
          val_x, val_y = validation_data
          val_y = self._expand_y(val_y)
          val_decoder_input = self._get_decoder_inputs(val_x, val_y)
          validation_data = ([val_x, val_decoder_input], val_y)
      return x, y, decoder_input_data, validation_data
  
imports: import pickle
  import numpy
  from tensorflow.keras.models import Model
  from tensorflow.keras.layers import Input, LSTM, Dense
  import tensorflow.keras
  from bigdl.orca.automl.model.abstract import BaseModel
  from bigdl.orca.automl.metrics import Evaluator
label_desc: Use image node_id 9 for calling the LSTMSeq2Seq obj's underlying member method code with example usage: obj._pre_processing(x, y, validation_data) and returns: x,  y,  decoder_input_data,  validation_data