Skip to content
Snippets Groups Projects
Commit 8ef49376 authored by Joseph K. Bradley's avatar Joseph K. Bradley
Browse files

[SPARK-10691][ML] Make LogisticRegressionModel, LinearRegressionModel evaluate() public

## What changes were proposed in this pull request?

Made evaluate method public.  Fixed LogisticRegressionModel evaluate to handle case when probabilityCol is not specified.

## How was this patch tested?

There were already unit tests for these methods.

Author: Joseph K. Bradley <joseph@databricks.com>

Closes #11928 from jkbradley/public-evaluate.
parent 0f02a5c6
No related branches found
No related tags found
No related merge requests found
......@@ -539,13 +539,15 @@ class LogisticRegressionModel private[spark] (
def hasSummary: Boolean = trainingSummary.isDefined
/**
* Evaluates the model on a testset.
* Evaluates the model on a test dataset.
* @param dataset Test dataset to evaluate model on.
*/
// TODO: decide on a good name before exposing to public API
private[classification] def evaluate(dataset: DataFrame): LogisticRegressionSummary = {
new BinaryLogisticRegressionSummary(
this.transform(dataset), $(probabilityCol), $(labelCol), $(featuresCol))
@Since("2.0.0")
def evaluate(dataset: DataFrame): LogisticRegressionSummary = {
// Handle possible missing or invalid prediction columns
val (summaryModel, probabilityColName) = findSummaryModelAndProbabilityCol()
new BinaryLogisticRegressionSummary(summaryModel.transform(dataset),
probabilityColName, $(labelCol), $(featuresCol))
}
/**
......
......@@ -412,15 +412,15 @@ class LinearRegressionModel private[ml] (
def hasSummary: Boolean = trainingSummary.isDefined
/**
* Evaluates the model on a testset.
* Evaluates the model on a test dataset.
* @param dataset Test dataset to evaluate model on.
*/
// TODO: decide on a good name before exposing to public API
private[regression] def evaluate(dataset: DataFrame): LinearRegressionSummary = {
@Since("2.0.0")
def evaluate(dataset: DataFrame): LinearRegressionSummary = {
// Handle possible missing or invalid prediction columns
val (summaryModel, predictionColName) = findSummaryModelAndPredictionCol()
new LinearRegressionSummary(summaryModel.transform(dataset), predictionColName,
$(labelCol), this, Array(0D))
$(labelCol), summaryModel, Array(0D))
}
/**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment