Ensaios clínicos em escala de hiperoptia

Concluído

Uma das vantagens de usar o Apache Spark no Azure Databricks é a capacidade de distribuir tarefas de processamento entre vários nós de cluster. Quando você usa uma biblioteca de aprendizado de máquina com reconhecimento de faísca como MLlib, o treinamento de aprendizado de máquina pode ser expandido para reduzir o tempo total que o processo de treinamento leva. Ao usar o Hyperopt com uma biblioteca de treinamento distribuída como MLlib, o trabalho é dimensionado automaticamente entre os nós de trabalho disponíveis no cluster.

O Hyperopt oferece suporte ao dimensionamento de avaliações de ajuste de hiperparâmetros para bibliotecas que não são distribuídas usando a classe SparkTrials no lugar de uma classe Trials regular. Essa abordagem permite que você aproveite o paralelismo de expansão do Spark para distribuir execuções de ajuste de hiperparâmetros em vários nós, mesmo ao usar uma biblioteca projetada para processamento em um único computador, como o Scikit-Learn.

O código de exemplo a seguir mostra como usar a classe SparkTrials .

from hyperopt import SparkTrials

  spark_trials = SparkTrials()
  with mlflow.start_run():
    argmin = fmin(
      fn=objective,
      space=search_space,
      algo=algo,
      max_evals=100,
      trials=spark_trials)
  
  print("Best param values: ", argmin)

Gorjeta

Para obter mais informações sobre como usar a classe SparkTrials , consulte A classe SparkTrials na documentação do Azure Databricks.