Add phases description
This commit is contained in:
parent
bf3095460c
commit
81d5832aa4
@ -59,17 +59,18 @@ La definizioni delle varie fasi è avvenuta partendo da un lavoro di *Microsoft*
|
|||||||
|
|
||||||
Le fasi considerate sono:
|
Le fasi considerate sono:
|
||||||
|
|
||||||
- *Model Requirements*
|
- *Model Requirements*: questa fase comprende tutte le discussioni rispetto all'individuazione del modello più adatto, le funzionalità che questo deve esporre e come adattare un modello esistente per eseguire una diversa funzionalità.
|
||||||
- *Data Collection*
|
- *Data Collection*: comprende le operazioni volte alla definizione di un dataset.
|
||||||
- *Data Labeling*
|
Rientrano in questa fase sia la ricerca di dataset già esistenti che la costruzione di nuovi dataset.
|
||||||
- *Data cleaning*[^data-cleaning]
|
- *Data Labeling*: questa fase si rende necessaria ogni qual volta si opera con modelli basati su apprendimento supervisionato.
|
||||||
- *Feature Engineering*
|
- *Data cleaning*: in questa fase non rientrano soltanto le operazioni strettamente di pulizia dei dati come ad esempio rimozione di record rumorosi o incompleti, ma tutte le trasformazioni eseguite sui dati, quindi anche operazioni di standardizzazione, flip di immagini ecc.
|
||||||
- *Model Training*
|
- *Feature Engineering*: questa fase serve per identificare le trasformazioni da attuare sui dati e le migliori configurazioni degli *hyperparametri* al fine di migliorare il modello.
|
||||||
- *Model Evaluation*
|
- *Model Training*: questa fase racchiude il training vero e proprio del modello.
|
||||||
- *Model Deployment*
|
- *Model Evaluation*: in questa fase vengono valutate le performance del modello utilizzando metriche standard come *precision* e *recall*, ma anche andando a confrontare i risultati ottenuti rispetto a quelli generati da altri modelli o rispetto all'esperienza[^esperienza].
|
||||||
- *Model Monitoring*
|
- *Model Deployment*: questa fase riguarda il dispiegamento del modello sul dispositivo target.
|
||||||
|
- *Model Monitoring*: una volta dispiegato il modello deve essere continuamente monitora al fini di assicurasi un corretto comportamento anche sui dati reali.
|
||||||
|
|
||||||
[^data-cleaning]: Nella fase di *Data Cleaning* non rientrano soltanto le operazioni strettamente di pulizia come ad esempio rimozione di record rumorosi o incompleti, ma tutte le trasformazioni eseguite sui dati, quindi anche operazioni di standardizzazione, flip di immagini ecc.
|
[^esperienza]: Non sempre è possibile valutare un modello in modo oggettivo, ci sono determinati contesti, come ad esempio la generazione di *deep fakes*, in cui è comunque necessaria una valutazione umana per determinare la qualità del risultato.
|
||||||
|
|
||||||
A partire dal dataset *labellato* è stato possibile costruire un training e un test set, mediante i quali è stato possibile allenare e valutare le performance del modello bayesiano.
|
A partire dal dataset *labellato* è stato possibile costruire un training e un test set, mediante i quali è stato possibile allenare e valutare le performance del modello bayesiano.
|
||||||
Mentre le performance del primo modello sono state valutate sull'intero dataset.
|
Mentre le performance del primo modello sono state valutate sull'intero dataset.
|
||||||
@ -103,8 +104,8 @@ Prima di poter classificare i commit si è reso necessaria un'ulteriore fase di
|
|||||||
Sono stati considerati come commit di *fix* tutti quei commit al cui interno veniva fatto riferimento a delle issues attraverso la notazione *"#"*.
|
Sono stati considerati come commit di *fix* tutti quei commit al cui interno veniva fatto riferimento a delle issues attraverso la notazione *"#"*.
|
||||||
Questa operazione ha ridotto il dataset dei commit a $3321$ unità la cui distribuzione in base al tipo è riportata in @fig:count-commit.
|
Questa operazione ha ridotto il dataset dei commit a $3321$ unità la cui distribuzione in base al tipo è riportata in @fig:count-commit.
|
||||||
|
|
||||||
![Risultato della classificazione dei commit](figures/count-commit.pdf){#fig:count-commit}
|
A questo punto è stato possibile separare i *fix* di \acl{ML} da quelli generici.
|
||||||
|
|
||||||
A questo punto è stato possibile separare i *fix* di \acl{ML} e quelli generici.
|
|
||||||
La classificazione è avvenuta attraverso la lista delle issues citate all'interno del *commit message* e sono stati considerati come commit di \ac{ML} tutti quei commit che facevano riferimento ad almeno una issue di \ac{ML}.
|
La classificazione è avvenuta attraverso la lista delle issues citate all'interno del *commit message* e sono stati considerati come commit di \ac{ML} tutti quei commit che facevano riferimento ad almeno una issue di \ac{ML}.
|
||||||
|
|
||||||
|
![Risultato della classificazione dei commit](figures/count-commit.pdf){#fig:count-commit}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user