Skip to content

Feat user defined measures - #33

Merged
cezary986 merged 2 commits into
mainfrom
feat-user-defined-measures
Nov 8, 2024
Merged

Feat user defined measures#33
cezary986 merged 2 commits into
mainfrom
feat-user-defined-measures

Conversation

@cezary986

Copy link
Copy Markdown
Collaborator

Users can now define custom quality measures function and use them for: growing, pruning and voting. Defining quality measure function is easy and straightforward, see example below.

from rulekit.classification import RuleClassifier

def my_induction_measure(p: float, n: float, P: float, N: float) -> float:
    # do anything you want here and return a single float...
    return (p + n) / (P + N)

def my_pruning_measure(p: float, n: float, P: float, N: float) -> float:
    return p - n

def my_voting_measure(p: float, n: float, P: float, N: float) -> float:
    return (p + 1) / (p + n + 2)

python_clf = RuleClassifier(
    induction_measure=my_induction_measure,
    pruning_measure=my_pruning_measure,
    voting_measure=my_voting_measure,
)

@cezary986
cezary986 merged commit 883c8f1 into main Nov 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Missing parameters user_induction_equation/user_pruning_equation/user_voting_equation

2 participants