Skip to content

Conversation

@WeichenXu123
Copy link
Contributor

@WeichenXu123 WeichenXu123 commented Dec 1, 2017

What changes were proposed in this pull request?

This is python api for #19350

Python CrossValidator/TrainValidationSplit:
With base Estimator implemented in Scala/Java
→ Convert base Estimator to Scala/Java object, and call the JVM fit()
With base Estimator implemented in Python
→ Python needs the same machinery for multi-model fitting and parallelism as Scala. We can call directly into it. New API added:

class Estimator:
  def parallelFit(self, dataset, paramMaps, threadPool, modelCallback):

Doc link

Note This PR also fix the # TODO: persist average/validation metrics as well in CV/TVS. Because the testsuite need to check consistency of avgMetrics/validationMetrics so this need to be fixed.
If this need backport to old spark version, I can split it to a separate PR.

How was this patch tested?

Existing UT already covers each code paths which need test.

@WeichenXu123
Copy link
Contributor Author

@MrBago @jkbradley I think this PR need to be reviewed and merged first, before reviewing #19627
Because this PR change some critical code path.

@SparkQA
Copy link

SparkQA commented Dec 1, 2017

Test build #84372 has finished for PR 19857 at commit 980c8ec.

  • This patch fails Python style tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Dec 1, 2017

Test build #84373 has finished for PR 19857 at commit c6f2250.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@WeichenXu123 WeichenXu123 changed the title [SPARK-22667][ML] Fix model-specific optimization support for ML tuning: Python API [SPARK-22667][ML][WIP] Fix model-specific optimization support for ML tuning: Python API Dec 13, 2017
@WeichenXu123
Copy link
Contributor Author

The design of this issue changed. @MrBago will take this over.

@WeichenXu123 WeichenXu123 deleted the fix_model_spec_optim_py branch December 19, 2017 02:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants