summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/functions.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/functions.py b/lib/functions.py
index c229594..dab317b 100644
--- a/lib/functions.py
+++ b/lib/functions.py
@@ -605,8 +605,16 @@ class LMTFunction(SKLearnRegressionFunction):
def get_number_of_leaves(self):
return len(self.regressor._leaves.keys())
- # def get_complexity_score(self):
- # FIXME
+ def get_complexity_score(self):
+ ret = 0
+ print(self.regressor._leaves)
+ for leaf in self.regressor._leaves.values():
+ ret += len(
+ list(
+ filter(lambda x: x > 0, leaf.model.coef_ + [leaf.model.intercept_])
+ )
+ )
+ return ret
def get_max_depth(self):
return max(map(len, self.regressor._leaves.keys())) + 1