code: def evaluate(
      net: nn.Module,
      data_loader: DataLoader,
      dtype: torch.dtype,
      device: torch.device,
  ) -> float:
      """
      Compute classification accuracy on provided dataset.
  
      Args:
          net: trained model
          data_loader: DataLoader containing the evaluation set
          dtype: torch dtype
          device: torch device
      Returns:
          float: classification accuracy
      """
      net.eval()
      correct = 0
      total = 0
      with torch.no_grad():
          for inputs, labels in data_loader:
              # move data to proper dtype and device
              inputs = inputs.to(dtype=dtype, device=device)
              labels = labels.to(device=device)
              outputs = net(inputs)
              _, predicted = torch.max(outputs.data, 1)
              total += labels.size(0)
              correct += (predicted == labels).sum().item()
  
      return correct / total
  
file_path: Ax/ax/utils/tutorials/cnn_utils.py
imports: from itertools import accumulate
  from typing import Dict, List, Optional, Tuple
  import torch
  import torch.nn
  import torch.nn.functional
  import torch.optim
  import torchvision
  import torchvision.transforms
  from torch._tensor import Tensor
  from torch.utils.data import DataLoader, Dataset, Subset
label_desc: Use image node_id 5 for calling a global function with example usage: evaluate(net, data_loader, dtype, device) and returns: unknown