Opened 5 years ago

Closed 5 years ago

#1708 closed feature request (done)

Implement a residuals histogram for regression solutions

Reported by: sforsten Owned by: sforsten
Priority: medium Milestone: HeuristicLab 3.3.7
Component: Algorithms.DataAnalysis.Views Version: 3.3.7
Keywords: Cc:

Description (last modified by sforsten)

A new view which shows the residual frequency in a histogram for the best solution shall be implemented to tell if a model is appropriate, as described http://itl.nist.gov/div898/handbook/pri/section2/pri24.htm.
Residuals are estimates of experimental error obtained by subtracting the observed responses from the predicted responses.

Change History (22)

comment:1 Changed 5 years ago by sforsten

  • Component changed from Analysis to Algorithms.DataAnalysis
  • Status changed from new to accepted
  • Type changed from defect to feature request

comment:2 Changed 5 years ago by sforsten

  • Component changed from Algorithms.DataAnalysis to Algorithms.DataAnalysis.Views
  • Description modified (diff)
  • Summary changed from ResidualHistogramAnalyzer to RegressionSolutionResidualHistogram

comment:3 Changed 5 years ago by sforsten

r7186:

  • added first version of the RegressionSolutionResidualHistogram

the residuals are already displayed, but with absolute frequency and only for all samples (not for training and test partition) furthermore the number of columns is fixed and the GUI has to be adjusted

comment:4 Changed 5 years ago by sforsten

r7255: merged r7209 from trunk

  • adjusted GUI
  • added toggle for the different series
  • X Axis labels are rounded to useful values
  • added tooltip

The RegressionSolutionResidualHistogram can now be used in the branch http://dev.heuristiclab.com/svn/hl/core/branches/RegressionBenchmarks/.

comment:5 Changed 5 years ago by sforsten

  • Owner changed from sforsten to mkommend
  • Status changed from accepted to reviewing

comment:6 Changed 5 years ago by sforsten

  • Version changed from 3.3.5 to branch

comment:7 Changed 5 years ago by mkommend

  • Owner changed from mkommend to sforsten
  • Status changed from reviewing to assigned
  • Summary changed from RegressionSolutionResidualHistogram to Implement a residuals histogram for regression solutions

Reviewing comments:

  • The All Samples series should be hidden by default.
  • The resx file must be removed.
  • Adapt license header to the new year (2012).
  • Remove unused using.
  • Improve source code formatting
    • Do not use /* */ comments except in the license header
    • Correct comments
    • this qualifiers can be omitted
    • Reduce usage of empty lines
    • Reorganize regions (e.g. events) and ordering of methods

After this changes have been applied, the ResidualHistogram can be merged into the trunk solution.

comment:8 Changed 5 years ago by sforsten

r7485:

  • changes according to mkommend's reviewing comments have been made

comment:9 Changed 5 years ago by sforsten

  • Owner changed from sforsten to mkommend
  • Status changed from assigned to reviewing

comment:10 Changed 5 years ago by mkommend

r7500: Merged ResidualsHistogram in the trunk.

comment:11 Changed 5 years ago by mkommend

  • Owner changed from mkommend to sforsten
  • Status changed from reviewing to assigned

comment:12 Changed 5 years ago by sforsten

  • Status changed from assigned to accepted

Residuals should center around zero at the X-Axis.

comment:13 Changed 5 years ago by sforsten

  • Owner changed from sforsten to mkommend
  • Status changed from accepted to reviewing

r7503:

  • residual bars center around zero at the X-Axis
  • some small changes in the appearance

comment:14 Changed 5 years ago by gkronber

  • Milestone changed from HeuristicLab 3.3.x Backlog to HeuristicLab 3.3.7
  • Version changed from branch to 3.3.6

comment:15 Changed 5 years ago by mkommend

  • Owner changed from mkommend to sforsten
  • Status changed from reviewing to assigned

Review Comments:

  • Remove ALL_SERIES constant and use chart.Series instead
  • Order methods more logically in the source, so that the control flow is more obvious
  • CalculateResiduals should just return the residuals instead of a dictionary
  • Methods should not use a larger number of parameters and in addition access class members.
  • Reevaluate usage of DataTableView instead of implementing a new histogram. q

comment:16 Changed 5 years ago by mkommend

r8098: Minor modifications in residual histogram view.

comment:17 Changed 5 years ago by sforsten

r8104:

  • Removed ALL_SERIES constant
  • Reordered methods
  • CalculateResiduals returns now all residuals instead of a dictionary
  • reduced number of parameters for methods were possible

comment:18 Changed 5 years ago by sforsten

  • Owner changed from sforsten to mkommend
  • Status changed from assigned to reviewing

It seems to be difficult to implement the residual histogram with the DataTableView without adding a few new properties to DataRowVisualProperties and/or DataTableVisualProperties. I would suggest to leave it the way it is, at least for now.

comment:19 Changed 5 years ago by mkommend

  • Owner changed from mkommend to sforsten
  • Status changed from reviewing to assigned

Please, rewrite the ResidualsHistogram to make the complicated data structure relativeFrequencies obsolete.

comment:20 Changed 5 years ago by sforsten

  • Owner changed from sforsten to mkommend
  • Status changed from assigned to reviewing

r8173: The data structure relativeFrequencies is now obsolete and some other changes should make it more readable.

comment:21 Changed 5 years ago by mkommend

  • Owner changed from mkommend to sforsten
  • Status changed from reviewing to readytorelease

r8176: Small change in ResidualHistogram.

comment:22 Changed 5 years ago by mkommend

  • Resolution set to done
  • Status changed from readytorelease to closed
  • Version changed from 3.3.6 to 3.3.7
Note: See TracTickets for help on using tickets.