class_docstr: Class which encapsulate logit of the worker.
  
  Main entry point of this class is EvaluationWorker.run_work method which
  performs cleanup of temporary directories, then runs
  EvaluationWorker.run_attacks and EvaluationWorker.run_defenses
class_docstr_tok: ["Class","which","encapsulate","logit","of","the","worker",".","Main","entry","point","of","this","class","is","EvaluationWorker.run_work","method","which","performs","cleanup","of","temporary","directories",",","then","runs","EvaluationWorker.run_attacks","and","EvaluationWorker.run_defenses"]
docstr: Initializes data necessary to execute attacks.
  
  This method could be called multiple times, only first call does
  initialization, subsequent calls are noop.
docstr_tok: ["Initializes","data","necessary","to","execute","attacks",".","This","method","could","be","called","multiple","times",",","only","first","call","does","initialization",",","subsequent","calls","are","noop","."]
code: def fetch_attacks_data(self):
      """Initializes data necessary to execute attacks.
  
      This method could be called multiple times, only first call does
      initialization, subsequent calls are noop.
      """
      if self.attacks_data_initialized:
          return
      # init data from datastore
      self.submissions.init_from_datastore()
      self.dataset_batches.init_from_datastore()
      self.adv_batches.init_from_datastore()
      # copy dataset locally
      if not os.path.exists(LOCAL_DATASET_DIR):
          os.makedirs(LOCAL_DATASET_DIR)
      eval_lib.download_dataset(
          self.storage_client,
          self.dataset_batches,
          LOCAL_DATASET_DIR,
          os.path.join(LOCAL_DATASET_COPY, self.dataset_name, "images"),
      )
      # download dataset metadata
      self.read_dataset_metadata()
      # mark as initialized
      self.attacks_data_initialized = True
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from builtins import int
  import argparse
  import json
  import logging
  import os
  import random
  import shutil
  import subprocess
  import time
  import uuid
  from six import iteritems
  import eval_lib
  from cleverhans.utils import shell_call
label_desc: Use image node_id 3 for calling the EvaluationWorker obj's underlying member method code with example usage: obj.fetch_attacks_data() without return types