jobregon1212 / rulecosi

RuleCOSI is a machine learning package that combine and simplifies tree ensembles and generates a single rule-based classifier that is smaller and simpler.
MIT License
6 stars 1 forks source link

Difference between pseudocode in the paper and implementation. #5

Open nishimura28 opened 11 months ago

nishimura28 commented 11 months ago

I am very glad to see your paper "RuleCOSI+: Rule extraction for interpreting classification tree ensembles".

I am afraid to point out that I don't think the pseudo code in your paper matches the text in the relevant section.

In Procedure 3. GENERALIZERULESET, lines 11 and 12 say "remove the rule" if the condition is satisfied.

However, in the text of Section 3.5.2. Ruleset generalization, it is written as follows

The last step consists of removing the rules that do not comply with the rule accuracy and rule confidence thresholds (see lines 11 and 12).

Which is correct?

Relevant code

Best regards

jobregon1212 commented 7 months ago

Hello @nishimura28 . Thank you for your interest in my research. I am sorry for my late reply but I did not get any notification about this issue.

I was checking your comment and you are right, the pseudocode has a mistake. The evaluated condition on Line 11 in Procedure 3 should be different, it should read:

$if \space cov(r,D) < \beta \space or \space conf(r,D) < \alpha \space or A= \emptyset \space then$

If that condition holds, we should remove the rules. In the relevant code that you mentioned, I implemented it with the complement condtions, and in that case I kept the rules instead of removing them.