spark-vlbfgs
spark-vlbfgs copied to clipboard
breeze.optimize.FirstOrderException: Line search failed
having issue when running example on a9a data
bin/spark-shell --master 'local[7]' --jars target/spark-vlbfgs-0.1-SNAPSHOT.jar --driver-memory 10g --executor-memory 10g
scala> import org.apache.spark.sql.Dataset import org.apache.spark.sql.Dataset
scala> import org.apache.spark.ml.classification.VLogisticRegression import org.apache.spark.ml.classification.VLogisticRegression
scala> val dataset: Dataset[] = spark.read.format("libsvm").load("data/a9a") dataset: org.apache.spark.sql.Dataset[] = [label: double, features: vector]
scala> val trainer = new VLogisticRegression().setColsPerBlock(100).setRowsPerBlock(10).setColPartitions(3).setRowPartitions(3).setRegParam(0.5) trainer: org.apache.spark.ml.classification.VLogisticRegression = vector-free-logreg_53218448522f
scala> val model = trainer.fit(dataset)
18/06/02 16:24:04 WARN BLAS: Failed to load implementation from: com.github.fommil.netlib.NativeSystemBLAS
18/06/02 16:24:04 WARN BLAS: Failed to load implementation from: com.github.fommil.netlib.NativeRefBLAS
18/06/02 16:24:14 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 0.041010631451266606
18/06/02 16:24:22 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 0.020505315725633303
18/06/02 16:24:31 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 0.010252657862816652
18/06/02 16:24:40 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 0.005126328931408326
18/06/02 16:24:46 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 0.002563164465704163
18/06/02 16:24:53 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 0.0012815822328520814
18/06/02 16:25:00 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 6.407911164260407E-4
18/06/02 16:25:07 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 3.2039555821302036E-4
18/06/02 16:25:15 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 1.6019777910651018E-4
18/06/02 16:25:22 ERROR StrongWolfeLineSearch: Encountered bad values in function evaluation. Decreasing step size to 8.009888955325509E-5
18/06/02 16:25:22 ERROR VLBFGS: LBFGS search failed: breeze.optimize.FirstOrderException: Line search failed
breeze.optimize.FirstOrderException: Line search failed
at breeze.optimize.StrongWolfeLineSearch.minimize(StrongWolfe.scala:179)
at org.apache.spark.ml.optim.VLBFGS.determineAndTakeStepSize(VLBFGS.scala:80)
at org.apache.spark.ml.optim.VLBFGS$$anonfun$8.apply(VLBFGS.scala:173)
at org.apache.spark.ml.optim.VLBFGS$$anonfun$8.apply(VLBFGS.scala:169)
at scala.collection.Iterator$$anon$7.next(Iterator.scala:129)
at breeze.util.IteratorImplicits$RichIterator$$anon$2.next(Implicits.scala:71)
at org.apache.spark.ml.classification.VLogisticRegression.train(VLogisticRegression.scala:382)
at org.apache.spark.ml.classification.VLogisticRegression.train(VLogisticRegression.scala:51)
at org.apache.spark.ml.Predictor.fit(Predictor.scala:90)
at $line18.$read$$iw$$iw$$iw$$iw$$iw$$iw$$iw$$iw.
scala>
scala> println(s"Vector-free logistic regression coefficients: ${model.coefficients}")
Hi,i'm encountering this issue when trained on my own dataset. Would you figure out the reason caused it?