code: def test_no_validation_loop(simple_datamodule):
      active_learning_dm = ActiveLearningDataModule(
          simple_datamodule,
          initial_num_labels=2,
          query_size=100,
          val_split=0.0,
      )
      assert active_learning_dm.val_dataloader is None
      head = nn.Sequential(
          nn.Dropout(p=0.1),
          nn.Linear(512, active_learning_dm.num_classes),
      )
  
      model = ImageClassifier(
          backbone="resnet18",
          head=head,
          num_classes=active_learning_dm.num_classes,
      )
      trainer = flash.Trainer(max_epochs=3)
      active_learning_loop = ActiveLearningLoop(
          label_epoch_frequency=1, inference_iteration=3
      )
      active_learning_loop.connect(trainer.fit_loop)
      trainer.fit_loop = active_learning_loop
  
      # Check that we can finetune without val_set
      trainer.finetune(
          model, datamodule=active_learning_dm, strategy="no_freeze"
      )
  
file_path: lightning-flash/tests/image/classification/test_active_learning.py
imports: import math
  from pathlib import Path
  import flash
  import numpy
  import pytest
  import torch
  from flash.core.utilities.imports import _BAAL_AVAILABLE, _BAAL_GREATER_EQUAL_1_5_2, _TOPIC_IMAGE_AVAILABLE
  from flash.image import ImageClassificationData, ImageClassifier
  from flash.image.classification.integrations.baal import ActiveLearningDataModule, ActiveLearningLoop
  from pytorch_lightning import seed_everything
  from torch import nn
  from torch.utils.data import SequentialSampler
  from tests.image.classification.test_data import _rand_image
label_desc: Use image node_id 3 for calling a global function with example usage: test_no_validation_loop(simple_datamodule) without return types