Guest User

Untitled

a guest
Feb 22nd, 2018
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. package com.criteo.lookalike.flow.Validation
  2.  
  3. import org.apache.spark.ml.{Pipeline}
  4. import org.apache.spark.ml.evaluation.Evaluator
  5. import org.apache.spark.ml.param.ParamMap
  6. import org.apache.spark.ml.tuning.{CrossValidator, CrossValidatorModel}
  7. import org.apache.spark.sql.DataFrame
  8.  
  9. trait CrossValidatorTrait extends Validators[CrossValidatorModel] {
  10.  
  11. def evaluator: Evaluator
  12.  
  13. def estimator: Pipeline
  14.  
  15. def paramGrid: Array[ParamMap]
  16.  
  17. override def fit(estimator: Pipeline,
  18. evaluator: Evaluator,
  19. paramGrid: Array[ParamMap],
  20. dfIn: DataFrame): CrossValidatorModel = {
  21.  
  22. val validator = new CrossValidator()
  23. .setEstimator(estimator)
  24. .setEvaluator(evaluator)
  25. .setEstimatorParamMaps(paramGrid)
  26. .setNumFolds(3)
  27.  
  28. validator.fit(dfIn)
  29. }
  30.  
  31. override def transform(model: CrossValidatorModel, df: DataFrame): DataFrame = {
  32. model.transform(df);
  33. }
  34. }
Add Comment
Please, Sign In to add comment