Github user sethah commented on the issue:

    https://github.com/apache/spark/pull/15435
  
    So, looking at the design, I'm a bit concerned. Since we're adding 
summaries in several places around ML, I think we'd ideally design a hierarchy 
like we did for the estimators and models: 
    
    * `Summary`
    * `PredictionSummary extends Summary`
    * `ClassificationSummary extends PredictionSummary`
    * `ProbabilisticClassificationSummary extends ClassificationSummary`
    * `MulticlassClassificationSummary extends ClassificationSummary`
    * `BinaryClassificationSummary extends MulticlassClassificationSummary`
    
    Then we could implement model summaries like: 
`LogisticRegressionTrainingSummary extends MulticlassClassificationSummary with 
ProbabilisticClassificationSummary with TrainingSummary`. However, I don't see 
a way to accomplish this without breaking API compatibility. Regarding what we 
have now, a couple things:
    
    * Why are we creating a class `MulticlassClassificationSummary` but not 
also `BinaryClassificationSummary` ?
    * Why is there a one-to-one overlap between 
`MulticlassClassificationSummary` and `LogisticRegressionSummary`, and 
`MulticlassLogisticRegressionSummary` inherits from them both?
    
    Maybe @jkbradley can help shed some light on this and what was originally 
intended? Open to other thoughts...


---
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]

Reply via email to