Entscheidungsregeln aus Scikit-Learn-Entscheidungsbäumen extrahieren
Beim maschinellen Lernen werden Entscheidungsbäume häufig verwendet, um Entscheidungsprozesse im zu erfassen Form von Entscheidungsregeln. Diese Regeln können als Textlisten dargestellt werden und bieten ein klares Verständnis der zugrunde liegenden Logik in einem Entscheidungsbaum.
Entscheidungsregeln programmgesteuert extrahieren
Die Python-Funktion „tree_to_code“ ermöglicht die Extraktion von Entscheidungsregeln aus einem trainierten Entscheidungsbaum. Es verwendet als Eingabe den trainierten Baum und eine Liste von Feature-Namen und generiert eine gültige Python-Funktion, die die Entscheidungsregeln darstellt.
<code class="python">def tree_to_code(tree, feature_names): # ...</code>
Die generierte Funktion hat dieselbe Struktur wie der Entscheidungsbaum und verwendet verschachtelte if -else-Anweisungen zur Darstellung der Entscheidungspfade. Wenn die Eingabedaten bereitgestellt werden, gibt die Funktion die entsprechende Ausgabe zurück.
Beispielausgabe
Für einen Entscheidungsbaum, der versucht, seine Eingabe zurückzugeben (eine Zahl zwischen 0 und 10). ), könnte der generierte Code wie folgt aussehen:
<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>
Einschränkungen anderer Ansätze
Einige häufige Fallstricke beim Extrahieren von Entscheidungsregeln aus Entscheidungsbäumen sind:
Das obige ist der detaillierte Inhalt vonWie können wir Entscheidungsregeln programmgesteuert aus Scikit-Learn-Entscheidungsbäumen extrahieren und dabei häufige Fallstricke vermeiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!