Somebody could help me to understand the procedure for the calculation

of the error rate for models generated in Model Tree!

Observing the class RuleNode, the root mean square error is calculated

in the following way:

/**

* Recursively builds a textual description of the tree

*

* @param level the level of this node

* @return string describing the tree

*/

text.append("LM" + m_leafModelNum);

if (m_globalDeviation > 0.0) {

text .append(" (" + m_numInstances + "/" +

Utils.doubleToString((100.0 * m_rootMeanSquaredError /

m_globalAbsDeviation), 1, 3) + "%)\n");

} else {

text.append(" (" + m_numInstances + ")\n");

}

where: m_rootMeanSquaredError is procedure of the class Evaluation.java

* Returns the root mean squared error.

*

* @return the root mean squared error

*/

public final double rootMeanSquaredError() {

return Math.sqrt(m_SumSqrErr / m_WithClass);

}

and

m_SumSqrErr += weight * sumSqrErr / m_NumClasses;

m_WithClass += instance.weight();

In class instance.

/**

* Returns the instance's weight.

*

* @return the instance's weight as a double

*/

public final double weight() {

return m_Weight;

}

Where

m_Weight = weight;

I don't understand which are the weights that the procedure refers. I

thought that they went the coefficients of the variables, even so, in

the practice didn't give right.

Example y'=5.34 + (weight1 * 3) + (weight2 * 4)

If this is a regression model, I don't also understand because

sumSqrErr / m_NumClasses. In this case is the numbers of generated

models are?

_______________________________________________

Wekalist mailing list

[hidden email]
https://list.scms.waikato.ac.nz/mailman/listinfo/wekalist