Github user jkbradley commented on a diff in the pull request:
https://github.com/apache/spark/pull/7099#discussion_r33967425
--- Diff:
mllib/src/main/scala/org/apache/spark/ml/regression/LinearRegression.scala ---
@@ -212,12 +226,110 @@ class LinearRegressionModel private[ml] (
extends RegressionModel[Vector, LinearRegressionModel]
with LinearRegressionParams {
+ @transient private var trainingResults:
Option[LinearRegressionTrainingResults] = None
+
+ /**
+ * Gets results (e.g. residuals, mse, r^2) of model on training set.
This method should only
+ * be called on the driver (it is not available on workers).
+ */
+ def getTrainingResults: Option[LinearRegressionTrainingResults] =
trainingResults
--- End diff --
Let's stick with the design doc naming, or modify the design doc if you
think other naming is better. I like the more succinct usage in the doc:
```
lrModel.summary.objectiveTrace
```
That will require summary to throw an exception if the results are not
available, but that seems OK to me as long as we make it a meaningful
exception. We could also provide:
```
def hasSummary: Boolean
def setSummary(summary: LinearRegressionSummary): this.type
def getSummary // for convenience, if you want
```
I also like calling it Summary instead of TrainingResults since it's
shorter and may be more recognizable to R users.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]