Algorithmus zur Optimierung von Entscheidungsbäumen


16

Hintergrund

Ein binärer Entscheidungsbaum ist ein Stammbaum, in dem jeder interne Knoten (und jeder Stamm) durch einen Index , sodass kein Pfad von Stamm zu Blatt einen Index, die Blätter, wiederholt werden durch Ausgaben in , und jede Kante wird für das linke untergeordnete Element mit und für das rechte untergeordnete Element mit . So wenden Sie einen Baum auf eine Eingabe x an :j { 1 , . . . , n } { A , B } 0 1Tj{1,...,n}{A,B}01x

  1. Beginnen Sie an der Wurzel
  2. Wenn Sie sich am Blatt befinden, geben Sie die Blattbeschriftung A oder B und beenden sie
  3. Lesen Sie die Bezeichnung j Ihres aktuellen Knotens. Wenn xj=0 , gehen Sie zum linken Kind und wenn xj=1 , gehen Sie zum rechten Kind.
  4. springe zu Schritt (2)

Der Baum wird als ein Weg verwendet , um eine Funktion zu bewerten, insbesondere sagen wir einen Baum T eine Gesamtfunktion repräsentiert f , wenn für jedes x{0,1}n haben wir T(x)=f(x) . Die Abfragekomplexität eines Baums ist seine Tiefe, und die Abfragekomplexität einer Funktion ist die Tiefe des kleinsten Baums, der ihn darstellt.


Problem

Bei gegebenem binären Entscheidungsbaum T wird ein binärer Entscheidungsbaum T 'mit minimaler Tiefe ausgegeben, so dass T und T' die gleiche Funktion darstellen.

Frage

Was ist der bekannteste Algorithmus dafür? Sind Untergrenzen bekannt? Was ist, wenn wir wissen, dass die depth(T)=Ö(LogTiefe(T)) ? Was ist, wenn wir nur verlangen, dass T eine annähernd minimale Tiefe hat?


Naiver Ansatz

Der naive Ansatz erhält um alle binären Entscheidungsbäume der Tiefe d - 1 rekursiv aufzulisten, während geprüft wird, ob sie dasselbe wie T ergeben . Dies scheint O ( d 2 n n zu erfordern !d=Tiefe(T)d-1TSchritte (unter der Annahme, dassdSchritte erforderlich sind, um zu überprüfen, wasT(x)für ein beliebigesxergibt). Gibt es einen besseren Ansatz?Ö(d2nn!(n-d)!)dT(x)x

Motivation

Diese Frage basiert auf einer früheren Frage zum Kompromiss zwischen Abfragekomplexität und Zeitkomplexität . Insbesondere soll die zeitliche Trennung für Gesamtfunktionen begrenzt werden. Wir können einen Baum aus einem zeitoptimalen Algorithmus mit der Laufzeit t erstellen und möchten ihn dann für einen abfrageoptimalen Algorithmus in einen Baum T ' konvertieren . Leider, wenn t O ( n ! / ( N - d ) ! ) (Und oft d Θ ( n )TtTtO(n!/(nd)!)dΘ(n)) Der Engpass ist die Konvertierung. Es wäre schön, wenn wir ersetzen könnten ! / ( n - d ) ! durch so etwas wie 2 d .n!/(nd)!2d


Das Finden des optimalen Entscheidungsbaums ist NP-vollständig. Mir wurde beigebracht, dass in den Kursen für Entscheidungstheorie und Data Mining diese jedoch auf Notizen basierten, und mir ist das Originalpapier, in dem das Ergebnis vorgestellt wurde, nicht bekannt.
Chazisop

@chazisop cool, danke. Es ist mir nicht klar, dass es in NP liegt, den optimalen Entscheidungsbaum zu finden, aber ich werde darüber nachdenken / etwas mehr danach suchen. Manchmal ist es auf halbem Weg, den Satz zu kennen, um ihn zu beweisen: D.
Artem Kaznatcheev

Ich denke, der früheste Hinweis hierfür ist: Niedrigere Grenzen für das Lernen von Entscheidungslisten und -bäumen. (Hancock et al. 1994) cs.uwaterloo.ca/~mli/dl.ps
Lev Reyzin

1
Der Beweis, dass das Finden des optimalen Entscheidungsbaums ein NP-vollständiges Problem ist, wurde von Laurent Hyafil und Ronald L. Rivest bei der Konstruktion optimaler binärer Entscheidungsbäume erbracht und ist NP-vollständig (1976). Hinweis: hier
Antoine

Antworten:


16

Ich habe 3 Antworten, die alle etwas unterschiedliche Härtewerte ergeben.

Sei eine Funktion.f:{0,1}n{0,1}

Antwort 1

Wenn ein Entscheidungsbaum f und eine Zahl berechnet , ist es schwer zu sagen, ob ein Entscheidungsbaum T ' existiert , der f mit einer Größe von höchstens dieser Zahl berechnet . TfTf( Zantema und Bodlaender '00 )

Antwort 2

Bei gegebenem Entscheidungsbaum f berechnet , ist es NP schwer, den kleinsten Entscheidungsbaum, der f berechnet, an einen konstanten Faktor anzunähern. Tff( Sieling '08 )

Antwort 3

Lassen Sie die Größe des kleinsten Entscheidungsbaum - Computing sein f . Bei einem Entscheidungsbaum T Berechnung f unter der Annahme , N P D T I M E ( 2 n ε ) für einige ε < 1 , kann man nicht eine äquivalente Entscheidungsbaum findet T ' der Größe s k für jeden k 0 .sfTfNPDTIME(2nϵ)ϵ<1Tskk0

Ich denke, dass diese stärkere Antwort (basierend auf einer schwächeren Annahme) aus bekannten Ergebnissen in der Lerntheorie von Occam-Algorithmen für Entscheidungsbäume über das folgende Argument abgeleitet werden kann:

  1. Ist es möglich, einen Entscheidungsbaum für Variablen im Zeit- n- Protokoll s zu finden , wobei s der kleinste Entscheidungsbaum ist, der mit Beispielen aus einer Verteilung übereinstimmt (PAC-Modell)? ( Blum '92 ) nnlogss
  2. Unter der Annahme , für einige ε < 1 , können wir nicht PAC Größe lernen s Entscheidungsbäume durch Größe s k Entscheidungsbäume für jeden k 0 . ( Alekhnovich et al. '07 )NPDTIME(2nϵ)ϵ<1sskk0

Diese beiden Ergebnisse scheinen ein Ergebnis der Härte für Ihr Problem zu implizieren. Einerseits (1) können wir einen großen Entscheidungsbaum finden; Andererseits (2) sollten wir es nicht minimieren können, um ein äquivalentes "kleines" mit der Größe , selbst wenn eines mit der Größe s existiert .sks


(Ich habe Ihre Antwort aus dieser Antwort gefunden , die vor weniger als einer Stunde veröffentlicht wurde.)Es sieht so aus, als ob " " durch "positiv ϵ " ersetzt werden kann , da durch Verringern von ϵ die rechte Seite des Containments kleiner wird .ϵ<1ϵϵ Auch wo in diesem Papier ist 2. gezeigt?

Siehe Punkt 2 in der Zusammenfassung hier: researcher.watson.ibm.com/researcher/files/us-vitaly/…
Lev Reyzin

(aus der gleichen Antwort wie Ricky Demer) Könnten Sie etwas genauer beschreiben, wie Sie aus den Punkten 1 und 2 "Antwort 3" erhalten? Ich bin nicht sehr vertraut mit Theorie zu lernen und es fällt mir schwer, die Teile zu verbinden ...
Marc

Dieses Konsistenzproblem und die Erlernbarkeit hängen eng mit Occams Rasiermesser zusammen. Die Idee ist, dass, wenn Sie eine konsistente Funktion aus einer kleinen Menge finden können, Sie PAC-Lernen erfolgreich durchführen können. Daher impliziert eine Härte des Lernergebnisses ein Ergebnis der "Härte der Konsistenz". Ich bin mir nicht sicher, wie viel mehr ich in einem Kommentar erklären kann ...
Lev Reyzin

Soweit ich es verstehe, ist der Algorithmus evozierte für 1 nicht rechtzeitig ausgeführt , die notwendig wäre , einen Widerspruch zu 2. (dem genauen Ergebnis in dem Artikel zu erhalten , wenn ich sie habe richtig sagt, dass es keinen Polytime-Lernalgorithmus für Entscheidungsbäume gibt). Es könnte also ein Problem mit Ihrer Argumentation geben. Poly(n,s)
Marc
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.