Skip to content

merymylo/iris

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

iris

Semplice algoritmo di machine learning fatto con il K-means

Descrzione

Questo progetto è stato creato per classificare varie classi di piante, in questo caso iris, utilizzando il K-means. In questo programma abbiamo utilizzato 3 classi differenti di piante, abbiamo quindi utilizzato 3 cluster(centroidi) differenti per classificarli.

Ogni singolo elemento del dataset viene posizionato su un canvas, utilizzando le sue caratteristiche come coordinate (ogni elemento ha 4 caratteristiche), e di conseguenza ogni baricentro viene posizionato casualmente all'interno dell'intervallo di punti, per assicurarsi che tutti siano associati ad almeno un punto.

Per associare un baricentro ai punti corrispondenti, calcoliamo la sua distanza punto-centroide, e assegniamo il punto al baricentro con la distanza più breve, fatto ciò aggiorniamo la posizione del baricentro, calcolando la media delle coordinate dei punti associati , ea questo punto ricalcoliamo le distanze e riassociamo i punti ai propri centroidi fino a che questi ultimi non cambiano più la loro posizione.

Ora controlliamo a quale classe si riferisce il baricentro, semplicemente assegnandogli la classe maggioritaria dei punti ad esso associati, e infine controlliamo se il programma è efficace, verificando quanti elementi rappresentano realmente la classe del baricentro a cui sono stati associati, abbiamo ottenuto la massima precisione, ovvero circa il 91%, utilizzando un grafico 4d, è possibile modificare il numero di dimensioni utilizzate nel programma semplicemente cambiando la linea:

var ndim = 4;

Struttura del progetto

Il progetto è suddiviso in 3 file:

  • dataset.js: contiene tutti gli elementi del progetto, in questo caso tutte le piante, nel nostro progetto abbiamo 150 elementi, 50 per ogni classe
  • iris.html: contiene l'elemento canvas per visualizzare il risultato e collegamenti a vari file js
  • kmeans.js: rappresenta il codice che permette di realizzare il progetto

Run and Test

Per avviare il progetto è necessario aprire il file iris.html dal quale sarà possibile visualizzare il risultato finale, ed infine accedendo alla console del browser sarà possibile visualizzarne anche l'esattezza

Persone

Le persone che hanno collaborato a questo progetto sono:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published