Wróć do projektów
AlgorytmyDostępny kod

Studium przypadku

Analizator drzew decyzyjnych

Narzędzie CLI w Pythonie wyjaśniające strukturę danych przez entropię, przyrost informacji, gain ratio i eksport wizualizacji drzewa.

Analizator drzew decyzyjnych z wygenerowaną wizualizacją drzewa

Przegląd projektu

Kategoria
Algorytmy

Technologie

  • Python

Wewnątrz projektu

Kontekst

Projekt akademicki zamienia obliczenia stojące za uczeniem drzewa decyzyjnego w przejrzysty proces wiersza poleceń. Zamiast ukrywać działanie w bibliotece machine learning, pokazuje metryki, które decydują o wyborze najlepszego atrybutu podziału.

Rola

Zaimplementowałem wczytywanie danych, analizę statystyczną, ocenę podziałów, budowę drzewa, raporty konsolowe oraz eksport do formatu tekstowego i Graphviz.

Ograniczenia

Narzędzie miało działać na prostych zbiorach tekstowych, poprawnie obsługiwać atrybuty o różnej liczbie wartości i prezentować wyniki pośrednie na tyle jasno, aby można je było zweryfikować ręcznie.

Podejście

Dla każdego atrybutu program zlicza unikalne wartości i ich wystąpienia, a następnie oblicza entropię zbioru, entropię warunkową, przyrost informacji, split information i gain ratio. Atrybut z najwyższym współczynnikiem staje się kolejnym węzłem, a wynikowa struktura jest eksportowana jako czytelny tekst oraz wizualizacja DOT/SVG.

Rezultat

CLI generuje kompletny raport analityczny i wizualne drzewo decyzyjne w jednym uruchomieniu. Może służyć zarówno jako ćwiczenie klasyfikacyjne, jak i narzędzie edukacyjne pokazujące, dlaczego algorytm wybiera konkretny podział.

Wnioski

Samodzielna implementacja metryk wyraźnie pokazała zależność między rozkładem danych a strukturą drzewa. Podkreśliła też znaczenie przypadków brzegowych w obliczeniach, szczególnie zerowych prawdopodobieństw i atrybutów, które wnoszą niewiele lub pozornie dużo informacji.

Narzędzie CLI w Pythonie wyjaśniające strukturę danych przez entropię, przyrost informacji, gain ratio i eksport wizualizacji drzewa.

Zobacz wszystkie projekty