zero323 commented on issue #25776: [SPARK-28985][PYTHON][ML] Add common classes 
(JavaPredictor/JavaClassificationModel/JavaProbabilisticClassifier) in PYTHON
URL: https://github.com/apache/spark/pull/25776#issuecomment-533319112
 
 
   @huaxingao @srowen What about extensibility of such type hierarchy? I'd say 
it is perfectly valid for Python users to be interested in implementing their 
own `Classifiers`, `ClassificationModels` and so on, without using JVM backend. 
With such implementation they can only plug-in at the `Estimator` or 
`Transformer` level and recreate whole type hierarchy. That is not a new 
problem (`JavaClassificationModel` set a precedence), but these changes really 
aggravate it.
   
   Wouldn't make more sense to mimic actual Scala hierarchy ClassifierParams`, 
`Classifier`, `ClassificationModel` and make `Java*` extend these?  I am 
thinking from static type checking perspective, but there are other possible 
applications here.
   
   Additionally I am bit concerned about all the `(Private)` annotations. These 
are rather useless for Python users. Why not follow PEP-8 and undersocre these 
(i.e. `_JavaClassifier`)?
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to