class_docstr: The ``AudioClassificationData`` class is a :class:`~flash.core.data.data_module.DataModule` with a set of class
  methods for loading data for audio classification.
docstr: Load the :class:`~flash.audio.classification.data.AudioClassificationData` from torch tensors (or lists of
  tensors) and corresponding lists of targets.
  
  The targets can be in any of our
  :ref:`supported classification target formats <formatting_classification_targets>`.
  To learn how to customize the transforms applied for each stage, read our
  :ref:`customizing transforms guide <customizing_transforms>`.
  
  Args:
      train_data: The torch tensor or list of tensors to use when training.
      train_targets: The list of targets to use when training.
      val_data: The torch tensor or list of tensors to use when validating.
      val_targets: The list of targets to use when validating.
      test_data: The torch tensor or list of tensors to use when testing.
      test_targets: The list of targets to use when testing.
      predict_data: The torch tensor or list of tensors to use when predicting.
      target_formatter: Optionally provide a :class:`~flash.core.data.utilities.classification.TargetFormatter` to
          control how targets are handled. See :ref:`formatting_classification_targets` for more details.
      input_cls: The :class:`~flash.core.data.io.input.Input` type to use for loading the data.
      transform: The :class:`~flash.core.data.io.input_transform.InputTransform` type to use.
      transform_kwargs: Dict of keyword arguments to be provided when instantiating the transforms.
      data_module_kwargs: Additional keyword arguments to provide to the
          :class:`~flash.core.data.data_module.DataModule` constructor.
  
  Returns:
      The constructed :class:`~flash.audio.classification.data.AudioClassificationData`.
  
  Examples
  ________
  
  .. doctest::
  
      >>> import torch
      >>> from flash import Trainer
      >>> from flash.audio import AudioClassificationData
      >>> from flash.image import ImageClassifier
      >>> datamodule = AudioClassificationData.from_tensors(
      ...     train_data=[torch.rand(3, 64, 64), torch.rand(3, 64, 64), torch.rand(3, 64, 64)],
      ...     train_targets=["meow", "bark", "meow"],
      ...     predict_data=[torch.rand(3, 64, 64)],
      ...     transform_kwargs=dict(spectrogram_size=(128, 128)),
      ...     batch_size=2,
      ... )
      >>> datamodule.num_classes
      2
      >>> datamodule.labels
      ['bark', 'meow']
      >>> model = ImageClassifier(backbone="resnet18", num_classes=datamodule.num_classes)
      >>> trainer = Trainer(fast_dev_run=True)
      >>> trainer.fit(model, datamodule=datamodule)  # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
      Training...
      >>> trainer.predict(model, datamodule=datamodule)  # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
      Predicting...
docstr_tok: ["Load","the",":","class",":","`","~flash.audio.classification.data.AudioClassificationData","`","from","torch","tensors","(","or","lists","of","tensors",")","and","corresponding","lists","of","targets",".","The","targets","can","be","in","any","of","our",":","ref",":","`","supported","classification","target","formats","<","formatting_classification_targets",">","`",".","To","learn","how","to","customize","the","transforms","applied","for","each","stage",",","read","our",":","ref",":","`","customizing","transforms","guide","<","customizing_transforms",">","`",".","Args",":","train_data",":","The","torch","tensor","or","list","of","tensors","to","use","when","training",".","train_targets",":","The","list","of","targets","to","use","when","training",".","val_data",":","The","torch","tensor","or","list","of","tensors","to","use","when","validating",".","val_targets",":","The","list","of","targets","to","use","when","validating",".","test_data",":","The","torch","tensor","or","list","of","tensors","to","use","when","testing",".","test_targets",":","The","list","of","targets","to","use","when","testing",".","predict_data",":","The","torch","tensor","or","list","of","tensors","to","use","when","predicting",".","target_formatter",":","Optionally","provide","a",":","class",":","`","~flash.core.data.utilities.classification.TargetFormatter","`","to","control","how","targets","are","handled",".","See",":","ref",":","`","formatting_classification_targets","`","for","more","details",".","input_cls",":","The",":","class",":","`","~flash.core.data.io.input.Input","`","type","to","use","for","loading","the","data",".","transform",":","The",":","class",":","`","~flash.core.data.io.input_transform.InputTransform","`","type","to","use",".","transform_kwargs",":","Dict","of","keyword","arguments","to","be","provided","when","instantiating","the","transforms",".","data_module_kwargs",":","Additional","keyword","arguments","to","provide","to","the",":","class",":","`","~flash.core.data.data_module.DataModule","`","constructor",".","Returns",":","The","constructed",":","class",":","`","~flash.audio.classification.data.AudioClassificationData","`",".","Examples","________","..","doctest",":",":",">",">",">","import","torch",">",">",">","from","flash","import","Trainer",">",">",">","from","flash.audio","import","AudioClassificationData",">",">",">","from","flash.image","import","ImageClassifier",">",">",">","datamodule","=","AudioClassificationData.from_tensors","(","...","train_data=","[","torch.rand","(","3",",","64",",","64",")",",","torch.rand","(","3",",","64",",","64",")",",","torch.rand","(","3",",","64",",","64",")","]",",","...","train_targets=","[","``","meow","''",",","``","bark","''",",","``","meow","''","]",",","...","predict_data=","[","torch.rand","(","3",",","64",",","64",")","]",",","...","transform_kwargs=dict","(","spectrogram_size=","(","128",",","128",")",")",",","...","batch_size=2",",","...",")",">",">",">","datamodule.num_classes","2",">",">",">","datamodule.labels","[","'bark","'",",","'meow","'","]",">",">",">","model","=","ImageClassifier","(","backbone=","''","resnet18","''",",","num_classes=datamodule.num_classes",")",">",">",">","trainer","=","Trainer","(","fast_dev_run=True",")",">",">",">","trainer.fit","(","model",",","datamodule=datamodule",")","#","doctest",":","+ELLIPSIS","+NORMALIZE_WHITESPACE","Training","...",">",">",">","trainer.predict","(","model",",","datamodule=datamodule",")","#","doctest",":","+ELLIPSIS","+NORMALIZE_WHITESPACE","Predicting","..."]
code: def from_tensors(
      cls,
      train_data: Optional[Collection[Tensor]] = None,
      train_targets: Optional[Collection[Any]] = None,
      val_data: Optional[Collection[Tensor]] = None,
      val_targets: Optional[Sequence[Any]] = None,
      test_data: Optional[Collection[Tensor]] = None,
      test_targets: Optional[Sequence[Any]] = None,
      predict_data: Optional[Collection[Tensor]] = None,
      input_cls: Type[Input] = AudioClassificationTensorInput,
      transform: INPUT_TRANSFORM_TYPE = AudioClassificationInputTransform,
      transform_kwargs: Optional[Dict] = None,
      target_formatter: Optional[TargetFormatter] = None,
      **data_module_kwargs: Any,
  ) -> "AudioClassificationData":
      """Load the :class:`~flash.audio.classification.data.AudioClassificationData` from torch tensors (or lists of
      tensors) and corresponding lists of targets.
  
      The targets can be in any of our
      :ref:`supported classification target formats <formatting_classification_targets>`.
      To learn how to customize the transforms applied for each stage, read our
      :ref:`customizing transforms guide <customizing_transforms>`.
  
      Args:
          train_data: The torch tensor or list of tensors to use when training.
          train_targets: The list of targets to use when training.
          val_data: The torch tensor or list of tensors to use when validating.
          val_targets: The list of targets to use when validating.
          test_data: The torch tensor or list of tensors to use when testing.
          test_targets: The list of targets to use when testing.
          predict_data: The torch tensor or list of tensors to use when predicting.
          target_formatter: Optionally provide a :class:`~flash.core.data.utilities.classification.TargetFormatter` to
              control how targets are handled. See :ref:`formatting_classification_targets` for more details.
          input_cls: The :class:`~flash.core.data.io.input.Input` type to use for loading the data.
          transform: The :class:`~flash.core.data.io.input_transform.InputTransform` type to use.
          transform_kwargs: Dict of keyword arguments to be provided when instantiating the transforms.
          data_module_kwargs: Additional keyword arguments to provide to the
              :class:`~flash.core.data.data_module.DataModule` constructor.
  
      Returns:
          The constructed :class:`~flash.audio.classification.data.AudioClassificationData`.
  
      Examples
      ________
  
      .. doctest::
  
          >>> import torch
          >>> from flash import Trainer
          >>> from flash.audio import AudioClassificationData
          >>> from flash.image import ImageClassifier
          >>> datamodule = AudioClassificationData.from_tensors(
          ...     train_data=[torch.rand(3, 64, 64), torch.rand(3, 64, 64), torch.rand(3, 64, 64)],
          ...     train_targets=["meow", "bark", "meow"],
          ...     predict_data=[torch.rand(3, 64, 64)],
          ...     transform_kwargs=dict(spectrogram_size=(128, 128)),
          ...     batch_size=2,
          ... )
          >>> datamodule.num_classes
          2
          >>> datamodule.labels
          ['bark', 'meow']
          >>> model = ImageClassifier(backbone="resnet18", num_classes=datamodule.num_classes)
          >>> trainer = Trainer(fast_dev_run=True)
          >>> trainer.fit(model, datamodule=datamodule)  # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
          Training...
          >>> trainer.predict(model, datamodule=datamodule)  # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
          Predicting...
  
      """
  
      ds_kw = {
          "target_formatter": target_formatter,
      }
  
      train_input = input_cls(
          RunningStage.TRAINING, train_data, train_targets, **ds_kw
      )
      ds_kw["target_formatter"] = getattr(
          train_input, "target_formatter", None
      )
  
      return cls(
          train_input,
          input_cls(
              RunningStage.VALIDATING, val_data, val_targets, **ds_kw
          ),
          input_cls(
              RunningStage.TESTING, test_data, test_targets, **ds_kw
          ),
          input_cls(RunningStage.PREDICTING, predict_data, **ds_kw),
          transform=transform,
          transform_kwargs=transform_kwargs,
          **data_module_kwargs,
      )
  
imports: from typing import Any, Callable, Collection, Dict, List, Optional, Sequence, Type, Union
  import numpy
  import pandas
  from torch import Tensor
  from flash.audio.classification.input import AudioClassificationCSVInput, AudioClassificationDataFrameInput, AudioClassificationFilesInput, AudioClassificationFolderInput, AudioClassificationNumpyInput, AudioClassificationTensorInput
  from flash.audio.classification.input_transform import AudioClassificationInputTransform
  from flash.core.data.callback import BaseDataFetcher
  from flash.core.data.data_module import DataModule
  from flash.core.data.io.input import Input
  from flash.core.data.io.input_transform import INPUT_TRANSFORM_TYPE
  from flash.core.data.utilities.classification import TargetFormatter
  from flash.core.data.utilities.paths import PATH_TYPE
  from flash.core.utilities.imports import _TOPIC_AUDIO_AVAILABLE, _TOPIC_IMAGE_AVAILABLE
  from flash.core.utilities.stages import RunningStage
  from flash.image.classification.data import MatplotlibVisualization
label_desc: Use image node_id 4 for calling the AudioClassificationData obj's underlying member method code with example usage: obj.from_tensors(cls, train_data, train_targets, val_data, val_targets, test_data, test_targets, predict_data, input_cls, transform, transform_kwargs, target_formatter) and returns: cls