Update : Wir haben eine interaktive Lern-App für maschinelles Lernen / KI eingeführt,>> Probieren Sie es jetzt kostenlos aus <<
Importieren Sie die erforderlichen Bibliotheken
import numpy as np
import pandas as pd
eps = np.finfo(float).eps
from numpy import log2 as log
‚eps‘ ist hier die kleinste darstellbare Zahl. Manchmal erhalten wir log(0) oder 0 im Nenner, um das zu vermeiden, werden wir dies verwenden.
Definieren Sie den Datensatz:
Erstellen Sie einen Pandas-Datenrahmen:
Erinnern wir uns nun an die Schritte zur Erstellung eines Entscheidungsbaums….
1.compute the entropy for data-set2.for every attribute/feature:
1.calculate entropy for all categorical values
2.take average information entropy for the current attribute
3.calculate gain for the current attribute3. pick the highest gain attribute.
4. Repeat until we get the tree we desired
- Finden Sie die Entropie und dann den Informationsgewinn für die Aufteilung des Datensatzes.
Wir werden eine Funktion definieren, die eine Klasse (Zielvariablenvektor) aufnimmt und die Entropie dieser Klasse findet.
Hier ist der Bruch ‚pi‘, es ist das Verhältnis der Anzahl der Elemente in der aufgeteilten Gruppe zur Anzahl der Elemente in der Gruppe vor der Aufteilung (Elterngruppe).
2 .Definiere nun eine Funktion {ent}, um die Entropie jedes Attributs zu berechnen :
Speichere die Entropie jedes Attributs mit seinem Namen :
a_entropy = {k:ent(df,k) for k in df.keys()}
a_entropy