You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Bryan Cutler (JIRA)" <ji...@apache.org> on 2016/03/02 23:57:18 UTC

[jira] [Commented] (SPARK-13625) PySpark-ML method to get list of params for an obj should not check property attr

    [ https://issues.apache.org/jira/browse/SPARK-13625?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15176655#comment-15176655 ] 

Bryan Cutler commented on SPARK-13625:
--------------------------------------

I have a fix for this, will post PR soon

> PySpark-ML method to get list of params for an obj should not check property attr
> ---------------------------------------------------------------------------------
>
>                 Key: SPARK-13625
>                 URL: https://issues.apache.org/jira/browse/SPARK-13625
>             Project: Spark
>          Issue Type: Improvement
>          Components: ML, PySpark
>            Reporter: Bryan Cutler
>
> In PySpark params.__init__.py, the method {{Param.params()}} to return a list of Params belonging to that object should not check an attribute to be an instance of {{Param}} if it is a class property (uses the {{@property}} decorator).  This causes the property to be invoked to 'get' the attribute, and that can lead to an error, depending on the property.  If an attribute is a property it is not an ML {{Param}}, so no need to check it.
> I came across this in working on SPARK-13430 while adding {{LinearRegressionModel.summary}} as a property to give a training summary, similar to the Scala API.  It is possible that a training summary does not exist and will then raise an exception if the {{summary}} property is invoked.  
> Calling {{getattr(self, x)}} will cause the property to be invoked if {{x}} is a property.  To fix this, just need to check if it a class property before making the call to {{getattr()}}, which is fine because no instance of a {{Param}} should be a property.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org