class_docstr: A dataset fetching the data in a meta-level.
  
  A Meta Dataset is responsible for
  
  - input tasks(e.g. Qlib tasks) and prepare meta tasks
  
      - meta task contains more information than normal tasks (e.g. input data for meta model)
  
  The learnt pattern could transfer to other meta dataset. The following cases should be supported
  
  - A meta-model trained on meta-dataset A and then applied to meta-dataset B
  
      - Some pattern are shared between meta-dataset A and B, so meta-input on meta-dataset A are used when meta model are applied on meta-dataset-B
docstr: The meta-dataset maintains a list of meta-tasks when it is initialized.
  
  The segments indicates the way to divide the data
  
  The duty of the `__init__` function of MetaTaskDataset
  - initialize the tasks
docstr_tok: ["The","meta-dataset","maintains","a","list","of","meta-tasks","when","it","is","initialized",".","The","segments","indicates","the","way","to","divide","the","data","The","duty","of","the","`","__init__","`","function","of","MetaTaskDataset","-","initialize","the","tasks"]
code: def __init__(
      self, segments: Union[Dict[Text, Tuple], float], *args, **kwargs
  ):
      """
      The meta-dataset maintains a list of meta-tasks when it is initialized.
  
      The segments indicates the way to divide the data
  
      The duty of the `__init__` function of MetaTaskDataset
      - initialize the tasks
      """
      super().__init__(*args, **kwargs)
      self.segments = segments
  
file_path: qlib/qlib/model/meta/dataset.py
imports: import abc
  from qlib.model.meta.task import MetaTask
  from typing import Dict, Union, List, Tuple, Text
  from ...utils.serial import Serializable
label_desc: Use image node_id 1 to create a new MetaTaskDataset object from inherited base classes: Serializable with example: obj = MetaTaskDataset(segments)