code: def test_dataframe_different_train_val(self):
      sc = OrcaContext.get_spark_context()
      rdd = sc.range(0, 100, numSlices=10)
      spark = OrcaContext.get_spark_session()
  
      from pyspark.ml.linalg import DenseVector
  
      df = rdd.map(
          lambda x: (
              DenseVector(
                  np.random.randn(
                      1,
                  ).astype(np.float32)
              ),
              int(np.random.randint(0, 2, size=())),
          )
      ).toDF(["feature", "label"])
  
      val_rdd = sc.range(0, 20, numSlices=6)
      val_df = val_rdd.map(
          lambda x: (
              DenseVector(
                  np.random.randn(
                      1,
                  ).astype(np.float32)
              ),
              int(np.random.randint(0, 2, size=())),
          )
      ).toDF(["feature", "label"])
  
      config = {"lr": 0.2}
  
      trainer = Estimator.from_keras(
          model_creator=model_creator,
          verbose=True,
          config=config,
          workers_per_node=2,
          backend="spark",
      )
  
      res = trainer.fit(
          df,
          epochs=5,
          batch_size=4,
          steps_per_epoch=25,
          validation_data=val_df,
          validation_steps=2,
          feature_cols=["feature"],
          label_cols=["label"],
      )
  
      res = trainer.evaluate(
          val_df,
          batch_size=4,
          num_steps=25,
          feature_cols=["feature"],
          label_cols=["label"],
      )
      print("validation result: ", res)
  
      res = trainer.predict(df, feature_cols=["feature"]).collect()
      print("predict result: ", res)
      trainer.shutdown()
  
imports: import os
  import pytest
  import shutil
  import tempfile
  from unittest import TestCase
  import numpy
  import tensorflow
  from bigdl.orca import init_orca_context, stop_orca_context
  from bigdl.orca.learn.tf2 import Estimator
  from bigdl.orca import OrcaContext
label_desc: Use image node_id 6 for calling the TestTFEstimatorBasic obj's underlying member method code with example usage: obj.test_dataframe_different_train_val() without return types