You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spark.apache.org by ho...@apache.org on 2017/11/06 05:21:36 UTC

spark git commit: [SPARK-7146][ML] Expose the common params as a DeveloperAPI for other ML developers

Repository: spark
Updated Branches:
  refs/heads/master db389f719 -> 4bacddb60


[SPARK-7146][ML] Expose the common params as a DeveloperAPI for other ML developers

## What changes were proposed in this pull request?

Expose the common params from Spark ML as a Developer API.

## How was this patch tested?

Existing tests.

Author: Holden Karau <ho...@us.ibm.com>
Author: Holden Karau <ho...@google.com>

Closes #18699 from holdenk/SPARK-7146-ml-shared-params-developer-api.


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/4bacddb6
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/4bacddb6
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/4bacddb6

Branch: refs/heads/master
Commit: 4bacddb602e19fcd4e1ec75a7b10bed524e6989a
Parents: db389f7
Author: Holden Karau <ho...@us.ibm.com>
Authored: Sun Nov 5 21:21:12 2017 -0800
Committer: Holden Karau <ho...@google.com>
Committed: Sun Nov 5 21:21:12 2017 -0800

----------------------------------------------------------------------
 .../ml/param/shared/SharedParamsCodeGen.scala   |   7 +-
 .../spark/ml/param/shared/sharedParams.scala    | 145 +++++++++++++------
 2 files changed, 102 insertions(+), 50 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/spark/blob/4bacddb6/mllib/src/main/scala/org/apache/spark/ml/param/shared/SharedParamsCodeGen.scala
----------------------------------------------------------------------
diff --git a/mllib/src/main/scala/org/apache/spark/ml/param/shared/SharedParamsCodeGen.scala b/mllib/src/main/scala/org/apache/spark/ml/param/shared/SharedParamsCodeGen.scala
index 1860fe8..a932d28 100644
--- a/mllib/src/main/scala/org/apache/spark/ml/param/shared/SharedParamsCodeGen.scala
+++ b/mllib/src/main/scala/org/apache/spark/ml/param/shared/SharedParamsCodeGen.scala
@@ -177,9 +177,11 @@ private[shared] object SharedParamsCodeGen {
 
     s"""
       |/**
-      | * Trait for shared param $name$defaultValueDoc.
+      | * Trait for shared param $name$defaultValueDoc. This trait may be changed or
+      | * removed between minor versions.
       | */
-      |private[ml] trait Has$Name extends Params {
+      |@DeveloperApi
+      |trait Has$Name extends Params {
       |
       |  /**
       |   * Param for $htmlCompliantDoc.
@@ -215,6 +217,7 @@ private[shared] object SharedParamsCodeGen {
         |
         |package org.apache.spark.ml.param.shared
         |
+        |import org.apache.spark.annotation.DeveloperApi
         |import org.apache.spark.ml.param._
         |
         |// DO NOT MODIFY THIS FILE! It was generated by SharedParamsCodeGen.

http://git-wip-us.apache.org/repos/asf/spark/blob/4bacddb6/mllib/src/main/scala/org/apache/spark/ml/param/shared/sharedParams.scala
----------------------------------------------------------------------
diff --git a/mllib/src/main/scala/org/apache/spark/ml/param/shared/sharedParams.scala b/mllib/src/main/scala/org/apache/spark/ml/param/shared/sharedParams.scala
index 6061d9c..e6bdf52 100644
--- a/mllib/src/main/scala/org/apache/spark/ml/param/shared/sharedParams.scala
+++ b/mllib/src/main/scala/org/apache/spark/ml/param/shared/sharedParams.scala
@@ -17,6 +17,7 @@
 
 package org.apache.spark.ml.param.shared
 
+import org.apache.spark.annotation.DeveloperApi
 import org.apache.spark.ml.param._
 
 // DO NOT MODIFY THIS FILE! It was generated by SharedParamsCodeGen.
@@ -24,9 +25,11 @@ import org.apache.spark.ml.param._
 // scalastyle:off
 
 /**
- * Trait for shared param regParam.
+ * Trait for shared param regParam. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasRegParam extends Params {
+@DeveloperApi
+trait HasRegParam extends Params {
 
   /**
    * Param for regularization parameter (&gt;= 0).
@@ -39,9 +42,11 @@ private[ml] trait HasRegParam extends Params {
 }
 
 /**
- * Trait for shared param maxIter.
+ * Trait for shared param maxIter. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasMaxIter extends Params {
+@DeveloperApi
+trait HasMaxIter extends Params {
 
   /**
    * Param for maximum number of iterations (&gt;= 0).
@@ -54,9 +59,11 @@ private[ml] trait HasMaxIter extends Params {
 }
 
 /**
- * Trait for shared param featuresCol (default: "features").
+ * Trait for shared param featuresCol (default: "features"). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasFeaturesCol extends Params {
+@DeveloperApi
+trait HasFeaturesCol extends Params {
 
   /**
    * Param for features column name.
@@ -71,9 +78,11 @@ private[ml] trait HasFeaturesCol extends Params {
 }
 
 /**
- * Trait for shared param labelCol (default: "label").
+ * Trait for shared param labelCol (default: "label"). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasLabelCol extends Params {
+@DeveloperApi
+trait HasLabelCol extends Params {
 
   /**
    * Param for label column name.
@@ -88,9 +97,11 @@ private[ml] trait HasLabelCol extends Params {
 }
 
 /**
- * Trait for shared param predictionCol (default: "prediction").
+ * Trait for shared param predictionCol (default: "prediction"). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasPredictionCol extends Params {
+@DeveloperApi
+trait HasPredictionCol extends Params {
 
   /**
    * Param for prediction column name.
@@ -105,9 +116,11 @@ private[ml] trait HasPredictionCol extends Params {
 }
 
 /**
- * Trait for shared param rawPredictionCol (default: "rawPrediction").
+ * Trait for shared param rawPredictionCol (default: "rawPrediction"). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasRawPredictionCol extends Params {
+@DeveloperApi
+trait HasRawPredictionCol extends Params {
 
   /**
    * Param for raw prediction (a.k.a. confidence) column name.
@@ -122,9 +135,11 @@ private[ml] trait HasRawPredictionCol extends Params {
 }
 
 /**
- * Trait for shared param probabilityCol (default: "probability").
+ * Trait for shared param probabilityCol (default: "probability"). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasProbabilityCol extends Params {
+@DeveloperApi
+trait HasProbabilityCol extends Params {
 
   /**
    * Param for Column name for predicted class conditional probabilities. Note: Not all models output well-calibrated probability estimates! These probabilities should be treated as confidences, not precise probabilities.
@@ -139,9 +154,11 @@ private[ml] trait HasProbabilityCol extends Params {
 }
 
 /**
- * Trait for shared param varianceCol.
+ * Trait for shared param varianceCol. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasVarianceCol extends Params {
+@DeveloperApi
+trait HasVarianceCol extends Params {
 
   /**
    * Param for Column name for the biased sample variance of prediction.
@@ -154,9 +171,11 @@ private[ml] trait HasVarianceCol extends Params {
 }
 
 /**
- * Trait for shared param threshold.
+ * Trait for shared param threshold. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasThreshold extends Params {
+@DeveloperApi
+trait HasThreshold extends Params {
 
   /**
    * Param for threshold in binary classification prediction, in range [0, 1].
@@ -169,9 +188,11 @@ private[ml] trait HasThreshold extends Params {
 }
 
 /**
- * Trait for shared param thresholds.
+ * Trait for shared param thresholds. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasThresholds extends Params {
+@DeveloperApi
+trait HasThresholds extends Params {
 
   /**
    * Param for Thresholds in multi-class classification to adjust the probability of predicting each class. Array must have length equal to the number of classes, with values &gt; 0 excepting that at most one value may be 0. The class with largest value p/t is predicted, where p is the original probability of that class and t is the class's threshold.
@@ -184,9 +205,11 @@ private[ml] trait HasThresholds extends Params {
 }
 
 /**
- * Trait for shared param inputCol.
+ * Trait for shared param inputCol. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasInputCol extends Params {
+@DeveloperApi
+trait HasInputCol extends Params {
 
   /**
    * Param for input column name.
@@ -199,9 +222,11 @@ private[ml] trait HasInputCol extends Params {
 }
 
 /**
- * Trait for shared param inputCols.
+ * Trait for shared param inputCols. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasInputCols extends Params {
+@DeveloperApi
+trait HasInputCols extends Params {
 
   /**
    * Param for input column names.
@@ -214,9 +239,11 @@ private[ml] trait HasInputCols extends Params {
 }
 
 /**
- * Trait for shared param outputCol (default: uid + "__output").
+ * Trait for shared param outputCol (default: uid + "__output"). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasOutputCol extends Params {
+@DeveloperApi
+trait HasOutputCol extends Params {
 
   /**
    * Param for output column name.
@@ -231,9 +258,11 @@ private[ml] trait HasOutputCol extends Params {
 }
 
 /**
- * Trait for shared param checkpointInterval.
+ * Trait for shared param checkpointInterval. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasCheckpointInterval extends Params {
+@DeveloperApi
+trait HasCheckpointInterval extends Params {
 
   /**
    * Param for set checkpoint interval (&gt;= 1) or disable checkpoint (-1). E.g. 10 means that the cache will get checkpointed every 10 iterations.
@@ -246,9 +275,11 @@ private[ml] trait HasCheckpointInterval extends Params {
 }
 
 /**
- * Trait for shared param fitIntercept (default: true).
+ * Trait for shared param fitIntercept (default: true). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasFitIntercept extends Params {
+@DeveloperApi
+trait HasFitIntercept extends Params {
 
   /**
    * Param for whether to fit an intercept term.
@@ -263,9 +294,11 @@ private[ml] trait HasFitIntercept extends Params {
 }
 
 /**
- * Trait for shared param handleInvalid.
+ * Trait for shared param handleInvalid. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasHandleInvalid extends Params {
+@DeveloperApi
+trait HasHandleInvalid extends Params {
 
   /**
    * Param for how to handle invalid entries. Options are skip (which will filter out rows with bad values), or error (which will throw an error). More options may be added later.
@@ -278,9 +311,11 @@ private[ml] trait HasHandleInvalid extends Params {
 }
 
 /**
- * Trait for shared param standardization (default: true).
+ * Trait for shared param standardization (default: true). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasStandardization extends Params {
+@DeveloperApi
+trait HasStandardization extends Params {
 
   /**
    * Param for whether to standardize the training features before fitting the model.
@@ -295,9 +330,11 @@ private[ml] trait HasStandardization extends Params {
 }
 
 /**
- * Trait for shared param seed (default: this.getClass.getName.hashCode.toLong).
+ * Trait for shared param seed (default: this.getClass.getName.hashCode.toLong). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasSeed extends Params {
+@DeveloperApi
+trait HasSeed extends Params {
 
   /**
    * Param for random seed.
@@ -312,9 +349,11 @@ private[ml] trait HasSeed extends Params {
 }
 
 /**
- * Trait for shared param elasticNetParam.
+ * Trait for shared param elasticNetParam. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasElasticNetParam extends Params {
+@DeveloperApi
+trait HasElasticNetParam extends Params {
 
   /**
    * Param for the ElasticNet mixing parameter, in range [0, 1]. For alpha = 0, the penalty is an L2 penalty. For alpha = 1, it is an L1 penalty.
@@ -327,9 +366,11 @@ private[ml] trait HasElasticNetParam extends Params {
 }
 
 /**
- * Trait for shared param tol.
+ * Trait for shared param tol. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasTol extends Params {
+@DeveloperApi
+trait HasTol extends Params {
 
   /**
    * Param for the convergence tolerance for iterative algorithms (&gt;= 0).
@@ -342,9 +383,11 @@ private[ml] trait HasTol extends Params {
 }
 
 /**
- * Trait for shared param stepSize.
+ * Trait for shared param stepSize. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasStepSize extends Params {
+@DeveloperApi
+trait HasStepSize extends Params {
 
   /**
    * Param for Step size to be used for each iteration of optimization (&gt; 0).
@@ -357,9 +400,11 @@ private[ml] trait HasStepSize extends Params {
 }
 
 /**
- * Trait for shared param weightCol.
+ * Trait for shared param weightCol. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasWeightCol extends Params {
+@DeveloperApi
+trait HasWeightCol extends Params {
 
   /**
    * Param for weight column name. If this is not set or empty, we treat all instance weights as 1.0.
@@ -372,9 +417,11 @@ private[ml] trait HasWeightCol extends Params {
 }
 
 /**
- * Trait for shared param solver.
+ * Trait for shared param solver. This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasSolver extends Params {
+@DeveloperApi
+trait HasSolver extends Params {
 
   /**
    * Param for the solver algorithm for optimization.
@@ -387,9 +434,11 @@ private[ml] trait HasSolver extends Params {
 }
 
 /**
- * Trait for shared param aggregationDepth (default: 2).
+ * Trait for shared param aggregationDepth (default: 2). This trait may be changed or
+ * removed between minor versions.
  */
-private[ml] trait HasAggregationDepth extends Params {
+@DeveloperApi
+trait HasAggregationDepth extends Params {
 
   /**
    * Param for suggested depth for treeAggregate (&gt;= 2).


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@spark.apache.org
For additional commands, e-mail: commits-help@spark.apache.org