nerdexam
Microsoft

DP-100 · Question #421

You are using a ScriptRunConfig object to configure an experiment that uses a script to train a machine learning model. The script must apply a regularization rate hyperparameter to the algorithm…

The correct answer is B. script_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', arguments=['--reg_rate', reg_rate], environment=env). The arguments parameter of ScriptRunConfig accepts a list of command-line arguments, which is the correct way to pass hyperparameter values to a training script.

Explore data and run experiments

Question

You are using a ScriptRunConfig object to configure an experiment that uses a script to train a machine learning model. The script must apply a regularization rate hyperparameter to the algorithm that is used to train the model. You need to pass the regularization rate in a variable named reg_rate to the script. Which code segment should you use? A. B. C. D.

Options

  • Ascript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', telemetry_values = ['--reg_rate', reg_rate], environment=env)
  • Bscript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', arguments=['--reg_rate', reg_rate], environment=env)
  • Cscript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', --reg_rate = reg_rate, environment=env)
  • Dscript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', --reg_rate reg_rate, environment=env)

How the community answered

(35 responses)
  • A
    6% (2)
  • B
    89% (31)
  • C
    3% (1)
  • D
    3% (1)

Why each option

The arguments parameter of ScriptRunConfig accepts a list of command-line arguments, which is the correct way to pass hyperparameter values to a training script.

Ascript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', telemetry_values = ['--reg_rate', reg_rate], environment=env)

telemetry_values is not a valid parameter for ScriptRunConfig and would raise a TypeError at configuration time.

Bscript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', arguments=['--reg_rate', reg_rate], environment=env)Correct

ScriptRunConfig accepts an arguments parameter that takes a Python list of alternating flag names and values (e.g., ['--reg_rate', reg_rate]). At runtime, Azure ML passes these as command-line arguments to the script, where argparse or similar libraries parse them. This is the documented and supported pattern for injecting hyperparameters into training scripts.

Cscript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', --reg_rate = reg_rate, environment=env)

Using --reg_rate = reg_rate as a keyword argument is invalid Python syntax for a ScriptRunConfig constructor call and would cause a SyntaxError.

Dscript_config = ScriptRunConfig(source_directory='experiment_files', script='training.py', --reg_rate reg_rate, environment=env)

--reg_rate reg_rate is also invalid Python syntax inside a function call and would raise a SyntaxError.

Concept tested: Passing script arguments via ScriptRunConfig

Source: https://learn.microsoft.com/en-us/python/api/azureml-core/azureml.core.scriptrunconfig

Topics

#ScriptRunConfig#Experiment configuration#Hyperparameter#Azure Machine Learning

Community Discussion

No community discussion yet for this question.

Full DP-100 Practice