diff options
author | WeichenXu <WeichenXu123@outlook.com> | 2016-07-25 20:00:37 +0100 |
---|---|---|
committer | Sean Owen <sowen@cloudera.com> | 2016-07-25 20:00:37 +0100 |
commit | ad3708e78377d631e3d586548c961f4748322bf0 (patch) | |
tree | d835074b1c49c0fd2e3af7c18c8523ed5992e8c6 | |
parent | b73defdd790cb823a4f9958ca89cec06fd198051 (diff) | |
download | spark-ad3708e78377d631e3d586548c961f4748322bf0.tar.gz spark-ad3708e78377d631e3d586548c961f4748322bf0.tar.bz2 spark-ad3708e78377d631e3d586548c961f4748322bf0.zip |
[SPARK-16653][ML][OPTIMIZER] update ANN convergence tolerance param default to 1e-6
## What changes were proposed in this pull request?
replace ANN convergence tolerance param default
from 1e-4 to 1e-6
so that it will be the same with other algorithms in MLLib which use LBFGS as optimizer.
## How was this patch tested?
Existing Test.
Author: WeichenXu <WeichenXu123@outlook.com>
Closes #14286 from WeichenXu123/update_ann_tol.
-rw-r--r-- | mllib/src/main/scala/org/apache/spark/ml/classification/MultilayerPerceptronClassifier.scala | 4 | ||||
-rw-r--r-- | python/pyspark/ml/classification.py | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/mllib/src/main/scala/org/apache/spark/ml/classification/MultilayerPerceptronClassifier.scala b/mllib/src/main/scala/org/apache/spark/ml/classification/MultilayerPerceptronClassifier.scala index 76ef32aa3d..7264a99b47 100644 --- a/mllib/src/main/scala/org/apache/spark/ml/classification/MultilayerPerceptronClassifier.scala +++ b/mllib/src/main/scala/org/apache/spark/ml/classification/MultilayerPerceptronClassifier.scala @@ -100,7 +100,7 @@ private[classification] trait MultilayerPerceptronParams extends PredictorParams @Since("2.0.0") final def getInitialWeights: Vector = $(initialWeights) - setDefault(maxIter -> 100, tol -> 1e-4, blockSize -> 128, + setDefault(maxIter -> 100, tol -> 1e-6, blockSize -> 128, solver -> MultilayerPerceptronClassifier.LBFGS, stepSize -> 0.03) } @@ -190,7 +190,7 @@ class MultilayerPerceptronClassifier @Since("1.5.0") ( /** * Set the convergence tolerance of iterations. * Smaller value will lead to higher accuracy with the cost of more iterations. - * Default is 1E-4. + * Default is 1E-6. * * @group setParam */ diff --git a/python/pyspark/ml/classification.py b/python/pyspark/ml/classification.py index 613bc8cb3e..9a3c7b1596 100644 --- a/python/pyspark/ml/classification.py +++ b/python/pyspark/ml/classification.py @@ -1124,11 +1124,11 @@ class MultilayerPerceptronClassifier(JavaEstimator, HasFeaturesCol, HasLabelCol, @keyword_only def __init__(self, featuresCol="features", labelCol="label", predictionCol="prediction", - maxIter=100, tol=1e-4, seed=None, layers=None, blockSize=128, stepSize=0.03, + maxIter=100, tol=1e-6, seed=None, layers=None, blockSize=128, stepSize=0.03, solver="l-bfgs", initialWeights=None): """ __init__(self, featuresCol="features", labelCol="label", predictionCol="prediction", \ - maxIter=100, tol=1e-4, seed=None, layers=None, blockSize=128, stepSize=0.03, \ + maxIter=100, tol=1e-6, seed=None, layers=None, blockSize=128, stepSize=0.03, \ solver="l-bfgs", initialWeights=None) """ super(MultilayerPerceptronClassifier, self).__init__() @@ -1141,11 +1141,11 @@ class MultilayerPerceptronClassifier(JavaEstimator, HasFeaturesCol, HasLabelCol, @keyword_only @since("1.6.0") def setParams(self, featuresCol="features", labelCol="label", predictionCol="prediction", - maxIter=100, tol=1e-4, seed=None, layers=None, blockSize=128, stepSize=0.03, + maxIter=100, tol=1e-6, seed=None, layers=None, blockSize=128, stepSize=0.03, solver="l-bfgs", initialWeights=None): """ setParams(self, featuresCol="features", labelCol="label", predictionCol="prediction", \ - maxIter=100, tol=1e-4, seed=None, layers=None, blockSize=128, stepSize=0.03, \ + maxIter=100, tol=1e-6, seed=None, layers=None, blockSize=128, stepSize=0.03, \ solver="l-bfgs", initialWeights=None) Sets params for MultilayerPerceptronClassifier. """ |