The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here

Transformed Regression operator with

yzanyzan Member Posts: 66 Unicorn
edited October 2019 in Product Feedback - Resolved
When I set  "transformation method"="none" in Transformed Regression operator, all the predictions have zero value. The attached example illustrates the issue (in Rapidminer 9.4).

The workaround: Do not use the operator when not necessary.

It is also possible that I interpret the "none" option badly or that I use a bad flow. If that is true, the documentation should be extended/an example flow should be provided.





0
0 votes

Fixed and Released · Last Updated

9.5.0

Comments

  • sgenzersgenzer Administrator, Moderator, Employee-RapidMiner, RapidMiner Certified Analyst, Community Manager, Member, University Professor, PM Moderator Posts: 2,959 Community Manager
    hi @yzan so thank you for this. The good (bad?) news is that this operator is rarely used any more. In fact many of us here had the same reaction: "Transformed Regression? Never heard of it!". Hence it is highly unlikely that we will add an example or extend documentation to this due to low usage. That said if you have a process (similar to the one you posted but perhaps with some sticky note explanations) that would help users, I can add it to the community repo. 

    Thank you!

    Scott
  • yzanyzan Member Posts: 66 Unicorn
    The bug is in
    com.rapidminer.operator.learner.meta.TransformedRegressionModel.java
    in section:
    case NONE:<br>	if (zscale) {<br>		while (originalReader.hasNext()) {<br>			double functionValue = reader.next().getPredictedLabel() * stddev + mean;<br>			Example example = originalReader.next();<br>			example.setPredictedLabel(functionValue);<br>		}<br>	}<br>	break;
    Currently, when case==NONE and zscale==False, it doesn't do anything. The corrected code could look like:
    case NONE:<br>	while (originalReader.hasNext()) {<br>		double functionValue = reader.next().getPredictedLabel();<br>		if (zscale) {<br>			functionValue = functionValue * stddev + mean;<br>		}<br>		Example example = originalReader.next();<br>		example.setPredictedLabel(functionValue);<br>	}<br>	break;






  • sgenzersgenzer Administrator, Moderator, Employee-RapidMiner, RapidMiner Certified Analyst, Community Manager, Member, University Professor, PM Moderator Posts: 2,959 Community Manager
  • yzanyzan Member Posts: 66 Unicorn
    Thank you.
Sign In or Register to comment.