Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/arseniistratiuk/decision-tree-classifier-lab

A student lab project focused on tree algorithms and a Decision Tree classifier.
https://github.com/arseniistratiuk/decision-tree-classifier-lab

bellman-ford decision-tree-classifier floyd-warshall graph-algorithms kruskal-algorithm machine-learning networkx prim-algorithm scikit-learn

Last synced: 1 day ago
JSON representation

A student lab project focused on tree algorithms and a Decision Tree classifier.

Awesome Lists containing this project

README

        

# Tree Algorithms and Decision Tree Classifier Lab

## Overview

**Team 5, Arsenii Stratiuk, Viktor Syrotiuk**

This repository contains a student lab project focused on implementing and analyzing fundamental tree algorithms and a Decision Tree classifier. The project is divided into two main tasks:

1. **Task 1: Graph Algorithm Analysis**
- Implementation and comparison of **Kruskal's** and **Prim's** algorithms for Minimum Spanning Trees (MST).
- Analysis of **Bellman-Ford** and **Floyd-Warshall** algorithms for shortest path detection in graphs.
- Time complexity measurements and performance plots for varying graph sizes.

2. **Task 2: Decision Tree Classifier**
- A custom Decision Tree classifier built from scratch using Gini impurity.
- Validation on the Iris dataset, with comparisons to scikit-learn's implementation.
- Visualization of tree structures and accuracy evaluation.

## Features

- Random graph generation with adjustable completeness and weights.
- MST algorithms (Kruskal/Prim) and shortest path algorithms (Bellman-Ford/Floyd-Warshall).
- Decision Tree classifier with training, prediction, and evaluation.
- Integration with `networkx`, `scikit-learn`, and `graphviz` for visualization.