LigorioDaniele / Pyspark_classification

Esercizio di classificazione tramite l'utilizzo un modello di Regressione Logistica con il modulo MLlib di Spark. Lo scopo è quello di identificare tumori maligni al seno da delle informazioni estratte delle agobiopsie

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Pyspark_classification

Il DataFrame ha 31 colonne:

  • 30 features: attributi dell'agobiopsia.
  • 1 target: che è la colonna malignant, un valore di 1 indica un tumore maligno, al contrario un valore di 0 indica un tumore benigno.

La classe MLlib richiede che le features si trovino tutte all'interno di un unico vettore su di una colonna, possiamo creare questa rappresentazione utilizzando la classe VectorAssemlber di MLlib:

  • All'interno del parametro inputCols sono specificate le colonne con gli input.
  • All'interno del parametro outputCol è specificato il nome della colonna che conterrà le features.

L'accuracy indica semplicemente la percentuale di classificazioni che il nostro modello ha eseguito correttamente.

evaluation.accuracy --> Out[24]: 0.956989247311828

La precision ci dice, tra le classificazioni eseguite per una data classe, quante sono effettivamente apparteneti a quella classe.

evaluation.precisionByLabel -->Out[25]: [0.9629629629629629, 0.953125]

Il recall ci dice quanti dei casi positivi il modello è riuscito a classificare correttamente.

evaluation.recallByLabel -->Out[26]: [0.9719626168224299, 0.9384615384615385]

il DataFrame alla fine conterrà due nuove colonne:

  • Prediction: (0=benigno, 1=maligno)
  • Probabily: probabilità di apparteneza alle due classi.

About

Esercizio di classificazione tramite l'utilizzo un modello di Regressione Logistica con il modulo MLlib di Spark. Lo scopo è quello di identificare tumori maligni al seno da delle informazioni estratte delle agobiopsie


Languages

Language:Jupyter Notebook 100.0%