class_docstr: It is a rolling based on DDG-DA
  
  **NOTE**
  before running the example, please clean your previous results with following command
  - `rm -r mlruns`
class_docstr_tok: ["It","is","a","rolling","based","on","DDG-DA","*","*","NOTE","*","*","before","running","the","example",",","please","clean","your","previous","results","with","following","command","-","`","rm","-r","mlruns","`"]
docstr: some task are use for special purpose.
  For example:
  - GBDT for calculating feature importance
  - Linear or GBDT for calculating similarity
  - Datset (well processed) that aligned to Linear that for meta learning
docstr_tok: ["some","task","are","use","for","special","purpose",".","For","example",":","-","GBDT","for","calculating","feature","importance","-","Linear","or","GBDT","for","calculating","similarity","-","Datset","(","well","processed",")","that","aligned","to","Linear","that","for","meta","learning"]
code: def _adjust_task(self, task: dict, astype: UTIL_MODEL_TYPE):
      """
      some task are use for special purpose.
      For example:
      - GBDT for calculating feature importance
      - Linear or GBDT for calculating similarity
      - Datset (well processed) that aligned to Linear that for meta learning
      """
      # NOTE: here is just for aligning with previous implementation
      # It is not necessary for the current implementation
      handler = (
          task["dataset"]
          .setdefault("kwargs", {})
          .setdefault("handler", {})
      )
      if astype == "gbdt":
          task["model"] = LGBM_MODEL
          if isinstance(handler, dict):
              for k in ["infer_processors", "learn_processors"]:
                  if k in handler.setdefault("kwargs", {}):
                      handler["kwargs"].pop(k)
      elif astype == "linear":
          task["model"] = LINEAR_MODEL
          handler["kwargs"].update(PROC_ARGS)
      else:
          raise ValueError(f"astype not supported: {astype}")
      return task
  
imports: from pathlib import Path
  import pickle
  from typing import Optional, Union
  import pandas
  import yaml
  from qlib.contrib.meta.data_selection.dataset import InternalData, MetaDatasetDS
  from qlib.contrib.meta.data_selection.model import MetaModelDS
  from qlib.data.dataset.handler import DataHandlerLP
  from qlib.model.meta.task import MetaTask
  from qlib.model.trainer import TrainerR
  from qlib.typehint import Literal
  from qlib.utils import init_instance_by_config
  from qlib.workflow import R
  from qlib.workflow.task.utils import replace_task_handler_with_cache
  from .base import Rolling
label_desc: Use image node_id 2 for calling the DDGDA obj's underlying member method code with example usage: obj._adjust_task(task, astype) and returns: task