Github user jkbradley commented on a diff in the pull request:
https://github.com/apache/spark/pull/19208#discussion_r150619165
--- Diff:
mllib/src/main/scala/org/apache/spark/ml/tuning/TrainValidationSplit.scala ---
@@ -265,23 +317,58 @@ class TrainValidationSplitModel private[ml] (
@Since("2.0.0")
object TrainValidationSplitModel extends
MLReadable[TrainValidationSplitModel] {
+ private[TrainValidationSplitModel] def copySubModels(subModels:
Option[Array[Model[_]]])
+ : Option[Array[Model[_]]] = {
+ subModels.map(_.map(_.copy(ParamMap.empty).asInstanceOf[Model[_]]))
+ }
+
@Since("2.0.0")
override def read: MLReader[TrainValidationSplitModel] = new
TrainValidationSplitModelReader
@Since("2.0.0")
override def load(path: String): TrainValidationSplitModel =
super.load(path)
- private[TrainValidationSplitModel]
- class TrainValidationSplitModelWriter(instance:
TrainValidationSplitModel) extends MLWriter {
+ /**
+ * Writer for TrainValidationSplitModel.
+ * @param instance TrainValidationSplitModel instance used to construct
the writer
+ *
+ * TrainValidationSplitModel supports an option "persistSubModels", with
possible values
+ * "true" or "false". If you set the collectSubModels Param before
fitting, then you can
+ * set "persistSubModels" to "true" in order to persist the subModels.
By default,
+ * "persistSubModels" will be "true" when subModels are available and
"false" otherwise.
+ * If subModels are not available, then setting "persistSubModels" to
"true" will cause
+ * an exception.
+ */
+ final class TrainValidationSplitModelWriter private[tuning] (
--- End diff --
Since annotation
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]