從Scikit-Learn 決策樹中提取決策規則
在機器學習中,決策樹通常用於捕獲決策過程決策規則的形式。這些規則可以表示為文字列表,讓您清楚地了解決策樹中的底層邏輯。
以程式方式擷取決策規則
Python 函數 tree_to_code 可以實現從經過訓練的決策樹中擷取決策規則。它將經過訓練的樹和特徵名稱清單作為輸入,並產生一個表示決策規則的有效 Python 函數。
<code class="python">def tree_to_code(tree, feature_names): # ...</code>
產生的函數與決策樹具有相同的結構,使用巢狀 if -else 語句代表決策路徑。提供輸入資料後,函數將傳回對應的輸出。
範例輸出
對於嘗試傳回其輸入(0 到10 之間的數字)的決策樹),產生的程式碼可能如下所示:
<code class="python">def tree(f0): if f0 <= 6.0: if f0 <= 1.5: return [[ 0.]] else: # if f0 > 1.5 if f0 <= 4.5: if f0 <= 3.5: return [[ 3.]] else: # if f0 > 3.5 return [[ 4.]] else: # if f0 > 4.5 return [[ 5.]] else: # if f0 > 6.0 if f0 <= 8.5: if f0 <= 7.5: return [[ 7.]] else: # if f0 > 7.5 return [[ 8.]] else: # if f0 > 8.5 return [[ 9.]]</code>
其他方法的限制
從決策樹中提取決策規則的一些常見陷阱包括:
以上是我們如何以程式設計方式從 Scikit-Learn 決策樹中提取決策規則,同時避免常見陷阱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!