Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Rule Extraction from GBDT

Fire: An optimization approach for fast interpretable rule extraction. (KDD2023)

Fire(Fast Interpretable Rule Extraction) は、決定木アンサンブル(Random Forest や Boosted Trees)から 少数で解釈しやすいルール集合 を抽出するための最適化ベースのフレームワークである。 Fire は、

  • スパース選択(非凸ペナルティ) により代表的なルールを厳選し、

  • 融合正則化(fused LASSO) により共通の前提条件(if-then antecedents)を共有するルール群を促す。

これにより、解釈性を保ちながら高性能な小規模モデルを生成できる。

Fire は問題規模と非凸性のため既存ソルバーでは扱いにくいが、論文では ブロック座標降下(BCD)+貪欲選択(greedy selection) に基づく専用ソルバーを開発し、既存手法より最大40倍高速に動作することを示した。

前提の考え方

決定木の葉ノードはif-thenルールの連鎖になる。例えば閾値ss, 入力xx, 葉の値vvについて

r3(x)=1(x1>s1)1(x3s3)v3r_3(x)=1\left(x_1>s_1\right) \cdot 1\left(x_3 \leq s_3\right) \cdot v_3

のように表すことができる。

アンサンブルは葉の重み付き和

y^=jwjrj(x)\hat{y}=\sum_j w_j r_j(x)

であるため、重要度の低い葉の重みwjw_jをゼロにすることで予測精度への悪影響を抑えつつルールをシンプルにし、人間にとっての解釈可能性を上げることができる。

目的関数

スパース化のための項と、ルールの融合のための項をつけた目的関数を使う

minw12yMw22+h(w,λs)+g(w,λf)\min _w \frac{1}{2}\|y-M w\|_2^2+h\left(w, \lambda_s\right)+g\left(w, \lambda_f\right)
h(w,λs)=j=1RPγ(wj,λs)h\left(w, \lambda_s\right)=\sum_{j=1}^R P_\gamma\left(w_j, \lambda_s\right)

スパース化

正則化項にLASSOではなくMCP(Minimax Concave Penalty)を採用

Pγ(wj,λs)={λswjwj22γ,wjλsγ12γλs2,wj>λsγP_\gamma\left(w_j, \lambda_s\right)= \begin{cases}\lambda_s\left|w_j\right|-\frac{w_j^2}{2 \gamma}, & \left|w_j\right| \leq \lambda_s \gamma \\ \frac{1}{2 \gamma} \lambda_s^2, & \left|w_j\right|>\lambda_s \gamma\end{cases}

γ>1\gamma > 1 はハイパーパラメータで、γ1\gamma \approx 1では0\ell_0ペナルティ、γ\gammaが無限までの大きいときは1\ell_1ペナルティ(=LASSO)に近づく

融合項

隣接ノードの重みの差へのペナルティをかける fused LASSO を導入

g(w,λf)=λft=1TDtwt1g\left(w, \lambda_f\right)=\lambda_f \sum_{t=1}^T\left\|D_t w_t\right\|_1

近いノードをまとめてグループ化し、ルールの共有や内部ノードの削減を促す