У меня есть одна проблема с искрой, когда я попытался сгенерировать модель, я получил одно исключение с пространством кучи Java, которое я не могу решить.
Я пытался поставить эти значения на параметры виртуальной машины -Xmx4g, но ничего не происходит.
я тоже пытался добавить эти параметры в конфигурацию spark, но опять ничего не произошло.
Версия Java: 7
Версия Spark: 2.1.0
SparkConf conf = newSparkConf().setAppName("myAPP").setMaster("local");
conf = (conf.setMaster("local[*]"));
SparkContext sc = new SparkContext(conf);
JavaRDD<LabeledPoint> data = MLUtils.loadLibSVMFile(sc, path).toJavaRDD();
// Split initial RDD into two... [60% training data, 40% testing data].
JavaRDD<LabeledPoint>[] splits =
data.randomSplit(new double[]{0.6, 0.4}, 11L);
JavaRDD<LabeledPoint> training = splits[0].cache();
JavaRDD<LabeledPoint> test = splits[1];
// Run training algorithm to build the model.
final LogisticRegressionModel model = new LogisticRegressionWithLBFGS()
.setNumClasses(2)
.run(training.rdd());
// Clear the prediction threshold so the model will return probabilities
model.clearThreshold();
// Compute raw scores on the test set.
JavaRDD<Tuple2<Object, Object>> predictionAndLabels = test.map(
new Function<LabeledPoint, Tuple2<Object, Object>>() {
@Override
public Tuple2<Object, Object> call(LabeledPoint p) {
Double prediction = model.predict(p.features());
return new Tuple2<Object, Object>(prediction, p.label());
}
}
);
// Get evaluation metrics.
BinaryClassificationMetrics metrics =
new BinaryClassificationMetrics(predictionAndLabels.rdd());
Error
18/05/02 13:06:49 INFO DAGScheduler: Job 1 finished: first at GeneralizedLinearAlgorithm.scala:206, took 0,038806 s
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at org.apache.spark.mllib.linalg.Vectors$.zeros(Vectors.scala:340)
at org.apache.spark.mllib.regression.GeneralizedLinearAlgorithm.run(GeneralizedLinearAlgorithm.scala:222)
at Principal.main(Principal.java:114)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)