[
https://issues.apache.org/jira/browse/SPARK-10691?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14903070#comment-14903070
]
Joseph K. Bradley commented on SPARK-10691:
-------------------------------------------
We could document that `evaluate` calls `transform`, so users can change model
parameters before calling evaluate. Or, we can have it like transform and take
a ParamMap to configure parameters.
I'm not sure how to handle extra parameters such as binning for evaluation
metrics. However, if a user knows enough to want to adjust something like
binning, then they should be able to do evaluation manually easily.
I'm ambivalent about `evaluate` vs `score`.
> Make LogisticRegressionModel.evaluate() method public
> -----------------------------------------------------
>
> Key: SPARK-10691
> URL: https://issues.apache.org/jira/browse/SPARK-10691
> Project: Spark
> Issue Type: Improvement
> Components: ML
> Affects Versions: 1.5.0
> Reporter: Hao Ren
>
> The following method in {{LogisticRegressionModel}} is marked as {{private}},
> which prevents users from creating a summary on any given data set. Check
> [here|https://github.com/feynmanliang/spark/blob/d219fa4c216e8f35b71a26921561104d15cd6055/mllib/src/main/scala/org/apache/spark/ml/regression/LinearRegression.scala#L272].
> {code}
> // 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))
> }
> {code}
> This method is definitely necessary to test model performance.
> By the way, the name {{evaluate}} is already pretty good for me.
> [~mengxr] Could you check this ? Thx
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]