‫Quindi iniziamo a tuffarci in diversi modi in cui possiamo migliorare i nostri modelli utilizzando l'ottimizzazione dei parametri iper.
‫Il primo qui è a mano.
‫Quindi facciamo un piccolo titolo.
‫5. 1 tipo di sintonizzazione dei parametri a mano.
‫E finora abbiamo parlato della gestione dei set di dati di addestramento e test, un modello viene addestrato sul lato dell'addestramento,
‫trova i modelli e quindi viene valutato sul set di test.
‫Quindi usa quei modelli.
‫Ma l'ottimizzazione dei parametri iper introduce un terzo set, un set di convalida.
‫Quindi, se diamo un'occhiata qui, questo è come apparirà quando addestriamo i parametri a mano.
‫Quindi, se iniziassimo con 100 cartelle cliniche nel caso del nostro problema di malattie cardiache.
‫Ora, di nuovo, questo potrebbe cambiare a seconda del problema con cui stai lavorando.
‫E ho appena usato il numero 100 perché è un numero facile da immaginare.
‫Quindi questi sono i nostri dati di partenza e quello che potremmo fare è dividerli.
‫Questo è ciò che intendo per tre diversi set.
‫Quindi ci siamo divisi.
‫Potremmo usare dal 70 all'80 percento.
‫Quindi 70 cartelle cliniche come suddivisione della formazione.
‫Potremmo usare dal 10 al 15 percento come suddivisione di convalida e potremmo usare dal 10 al 15 percento per una suddivisione di prova.
‫Ora, ovviamente, puoi modificare questi numeri.
‫Questi sono solo alcuni numeri comuni che vedrai usati.
‫E quindi, naturalmente, il modello viene addestrato su questo è ciò che abbiamo visto prima.
‫E di solito senza il set di convalida, il nostro modello verrà valutato su questi, ma ora poiché abbiamo un set di convalida, è qui che andremo
‫a regolare le impostazioni del nostro modello, a. K. un. i parametri hyper,
‫vengono sintonizzati sulla divisione di convalida e infine, come di consueto, un modello viene valutato sulla divisione di test.
‫E ora l'analogia qui è che, se ricordi all'inizio, il concetto più importante nell'apprendimento
‫automatico è il tre set.
‫Quindi questo era proprio all'inizio.
‫L'apprendimento automatico uno sul set di formazione è analogo a dire che sei a un corso universitario e stavi imparando
‫i materiali del corso.
‫Il set di convalida è il luogo in cui metteresti un po' alla prova le tue conoscenze e vedere cosa è necessario regolare.
‫Quindi avresti ricevuto l'esame di pratica dal tuo professore e lo provi e dici, Oh, wow, sto
‫andando terribilmente alle domande uno, due e quattro.
‫Forse devo adattare il modo in cui mi avvicino a questo.
‫E poi fai di nuovo l'esame pratico.
‫E una volta che avrai migliorato le tue abilità nell'esame pratico, ti sentiresti
‫un po' sicuro e finalmente ti valuteresti davvero nell'esame finale, che è il set di test.
‫Quindi, come lo faremmo con il codice?
‫Torniamo al nostro taccuino.
‫Tipo di allenamento dei parametri con la mano, facciamo tre set, allenamento, convalida e test.
‫Quindi quello che faremo è ricordare a noi stessi i nostri Get Prem o ricordarci i nostri classificatori
‫di foreste casuali, i parametri di base.
‫Quindi questi sono tutti parametri di base, a. K. un. le impostazioni sul nostro modello, che possiamo regolare.
‫Ed ora, infatti, quali andremo ad adeguare?
‫Bene, dopo aver letto la documentazione della foresta casuale e ancora una volta, puoi farlo per qualsiasi
‫stima o modello di apprendimento automatico con ciclone, iniziamo a farci un'idea di come potremmo regolare ogni impostazione.
‫E anche con alcuni modelli, ci saranno alcune note su diversi tipi di parametri.
‫Quindi non posso imparare a suggerire di cambiare.
‫È un po' come quelli che vuoi cambiare prima di provare.
‫E così dopo averlo letto.
‫Dopo averlo attraversato.
‫Quindi, nel nostro caso, proveremo a modificare quanto segue.
‫Quindi vogliamo la profondità massima.
‫In realtà, li mettiamo in pratica perché sappiamo che sono lì, quindi sappiamo che potrebbero raggiungere la massima profondità.
‫Caratteristiche massime.
‫Voglio dire, i campioni se ne vanno se nessuno di questi ha senso.
‫Ricorda, la definizione di tutti questi è nella documentazione per qualsiasi modello.
‫Quindi arriviamo qui, campioni medi, lasciamo il numero minimo di campioni richiesti per essere in un nodo foglia.
‫E puoi leggere in modo più approfondito cos'è un nodo foglia se controlli in profondità alcune risorse su una foresta
‫casuale.
‫Ma per ora, ci stiamo solo concentrando su come possiamo regolare i parametri di un modello di machine learning.
‫Voglio dire, campioni di foglie.
‫E i campioni medi si dividono e una stima è meravigliosa.
‫Quindi questi sono il tipo di parametri che andremo a regolare e ora utilizzeremo lo stesso codice di
‫prima, tranne che questa volta abbiamo bisogno di creare una convalida dell'addestramento e una suddivisione di test, che utilizza solo queste suddivisioni qui.
‫Quindi la suddivisione dell'addestramento creerà con il 70 percento dei dati, i set di convalida e di test conterranno
‫ciascuno 15 e otterremo alcuni risultati di base.
‫Quindi li abbiamo già ottenuti, ma lo faremo di nuovo, otterremo alcuni risultati di base
‫e poi vedremo come possiamo regolare manualmente i parametri ibridi dei modelli.
‫E poiché valuteremo alcuni modelli, penso che sia importante creare una funzione di
‫valutazione.
‫Quindi questo è quello che potresti voler fare.
‫Qualunque sia il modello su cui stai lavorando è creare funzioni se sai di voler fare qualcosa più di
‫una volta.
‫Quindi risparmia la scrittura di un sacco di codice.
‫Ma di nuovo, probabilmente è un po' diverso da quello che abbiamo visto in passato.
‫Sappiamo che ci piace scrivere tutto a mano.
‫Lasciamo solo un po' di dottore qui.
‫Confronto di valutazione delle prestazioni sul perché etichette vere, le etichette diffuse.
‫E ora, come abbiamo visto nella sezione di valutazione, la cosa principale che fa la valutazione del modello di
‫apprendimento automatico è confrontare le sue previsioni con le etichette vere.
‫Ecco cosa farà questa funzione.
‫Quindi, poiché stiamo lavorando con il classificatore, vogliamo accuratezza, accuratezza, punteggio.
‫Perché vero?
‫Perché le sfilate?
‫Vogliamo anche precisione.
‫E ora potremmo effettivamente notare qui sul nostro modello di classificazione, perché se usiamo questo spread di valutazione su
‫un modello di regressione, stiamo inserendo metriche di classificazione, otterremo errori perché un modello di regressione
‫prevede cose diverse da ciò che una classificazione il modello prevede la precisione.
‫E poi non ricorderemo, ovviamente, uguale punteggio di richiamo.
‫E ora, di nuovo, puoi aggiustare questo, valutare le parate, funzionare per quello che ti serve.
‫Ma includerò solo alcune delle metriche più comuni che abbiamo trattato per i modelli di classificazione, alcune
‫delle cose a cui vuoi prestare attenzione praticamente per tutti i tuoi modelli di classificazione.
‫Perché le sfilate?
‫E poi creeremo un dizionario in modo che possa restituire la previsione in modo da poterle confrontare
‫con altre previsioni in un secondo momento.
‫La precisione andrà a due cifre decimali.
‫Sì, precisione, precisione rotonda.
‫Per.
‫Ora, ricorda sempre, se questo sembra molto, è perché, prima di tutto, è molto da accettare
‫in un colpo.
‫E la seconda cosa è che ho fatto un po' di pratica con questo, quindi so intrinsecamente cosa
‫usare.
‫Di nuovo, imparo sempre, ma ho appena fatto un po' di pratica nella costruzione di questi tipi specifici di sistemi.
‫E questi schemi si ripresentano più e più volte.
‫Vai a stampare.
‫Vogliamo solo darci una piccola stampa di quello che sta succedendo.
‫Ah, precisione.
‫Per 100, quindi vogliamo solo due cifre decimali che saranno sufficienti, quindi andremo alla
‫stessa cosa se la precisione.
‫Questa può essere precisione, non avremo bisogno di moltiplicare quella per 100 che può stare solo a due cifre decimali.
‫Abbiamo bisogno di una stringa in una stampa meravigliosa e andremo a ricordare che c'è molto da scrivere per cominciare.
‫Ma poiché saremo in grado di riutilizzarlo, ci salverà lungo la strada.
‫E poi, finalmente, vogliamo Trent.
‫Se una scuola.
‫Ce la stiamo facendo, finalmente stiamo facendo uno sforzo eccellente.
‫Ci siamo.
‫OK.
‫E infine, vogliamo restituire la nostra data metrica.
‫Ora, cosa sta succedendo qui?
‫Bene, in sostanza, questa funzione prende solo alcune etichette vere e alcune etichette di previsione dai nostri modelli di
‫classificazione.
‫Lo sappiamo dalla stringa qui.
‫Calcolerà diverse funzioni di valutazione qui e poi restituirà un dizionario di metrica in modo che possiamo
‫salvarlo per dopo.
‫E stamperà anche alcune metriche in modo che possiamo ottenere una stampa non appena eseguiamo questa funzione.
‫Quindi è solo una funzione di valutazione per i nostri modelli di classificazione.
‫Meraviglioso.
‫E salverò il taccuino qui, come sempre.
‫Ora, come creeremmo esattamente questi test pilota e convalida dei treni?
‫Bene, la nostra funzione di split test del treno che abbiamo visto prima.
‫Ricordi questo display di un treno?
‫Quindi questo restituisce solo, treni suddivisi, matrici di matrici in treni casuali e sottoinsiemi di test.
‫Questo si divide solo in set di treni e test.
‫Quindi quello che dobbiamo fare è dividere manualmente i nostri dati nella convalida del treno in senso di test.
‫E così per fare questo.
‫Possiamo come possiamo farlo perché i nostri dati sono in un frame di dati, malattie cardiache, dovremmo essere in grado di
‫farlo usando alcuni buoni vecchi calcoli e indicizzazione.
‫Vediamo come diremmo da Ascalon, importeremo prima il nostro modello, anche se abbiamo già istanziato un
‫classificatore forestale casuale.
‫andiamo
‫Vai al seme casuale MPLX e poi mescoleremo i dati.
‫Perché stiamo mescolando i dati qui se ci dividiamo in convalida del treno e test in cui vogliamo mischiarli, assicurarci che
‫non sia lo stesso, i record stanno arrivando in modo che entrino.
‫Se utilizziamo lo slicing per creare la convalida del nostro treno e testare ciò che vogliamo assicurarci che tutti
‫questi record siano confusi.
‫Quindi è quello che faremo.
‫Possiamo mescolarlo usando la funzione di esempio dei panda o diffrangere quello delle aquile per il 100% dei dati.
‫Questo prenderà semplicemente il campione della malattia cardiaca che è casuale e quindi riassegna il frame di
‫dati della malattia cardiaca alla sua variabile normale.
‫Quindi prenderà questo campione un po' di righe a caso e poi lo riassegnarà a questa variabile, a. K. un.
‫mischiare i dati.
‫Ora i dati vengono rimescolati, verranno suddivisi in X e Y.
‫In realtà, potremmo risparmiarlo alle malattie cardiache.
‫Mescolato come un'idea migliore.
‫X è uguale questa volta, abbiamo bisogno che le malattie cardiache vengano rimescolate e quindi lasceremo cadere la colonna dell'obiettivo qui.
‫Questo video è un po' attingendo, ma questo è un concetto importante, giusto?
‫Staremo a vedere qui.
‫Ne varrà la pena perché saremo in grado di migliorare i nostri modelli utilizzando l'ottimizzazione
‫delle prestazioni, dividere la convalida dei dati e i set di test.
‫Meraviglioso.
‫Quindi il treno si è diviso, come lo faremo?
‫Bene, dobbiamo creare un numero che possiamo usare per affettare.
‫Quindi vogliamo il 70% della lunghezza dei nostri dati.
‫Quindi vedi cosa sta succedendo qui.
‫Prova a dividere quando hai bisogno di un numero.
‫Abbiamo bisogno del 70 per cento.
‫Quindi zero virgola sette volte la durata della malattia cardiaca mischiata.
‫E questo sarà il 70% dei dati e quindi abbiamo bisogno di una divisione valida.
‫Quale sarà ti ricordi?
‫Ricordi qual è la divisione, il 15 percento?
‫È quello su cui ci siamo accordati.
‫Meraviglioso.
‫Quindi possiamo farlo nello stesso modo in cui verrà suddiviso il treno perché vogliamo indicizzare.
‫Vogliamo il prossimo 15 per cento.
‫Quindi prova a dividere più zero virgola cinque uno cinque.
‫La durata della nostra malattia cardiaca è cambiata.
‫Frame di dati, questo è il 15 percento dei dati, meraviglioso, quindi il treno X Il treno Y saranno i dati X.
‫Fino alla divisione del treno.
‫E il perché i dati fino ai treni sarebbero meravigliosi e poi sono validi, perché validi?
‫Mi dispiace, saranno i dati della divisione del treno.
‫Per la divisione valida e la stessa cosa per il motivo per cui saranno i dati perché dalla divisione del treno.
‫Alla divisione valida.
‫E poi avremo X test e perché test saranno i dati X dalla divisione valida in
‫poi.
‫Quindi il resto dei dati e poi perché dalla divisione valida in poi, chi è stato perso finora, vediamo solo cosa sta
‫succedendo.
‫Bene, andiamo.
‫Len ha stampato il treno X e poi vogliamo che Lenn X sia valido.
‫E poi vogliamo il test di Glenn X.
‫OK.
‫Quindi quel centro di formazione ha il 70 percento dei dati, a. K. un. 212 è aumentato, il set di convalida
‫ne ha 46 è aumentato, il 15 percento dei dati e il set di test ne ha 46 è aumentato.
‫Quindi questo è il 15% dei dati.
‫Ci sono diversi importi qui anche che sono entrambi del 15% perché abbiamo usato Rand.
‫Abbiamo un numero dispari di campioni nella cardiopatia, set di dati mescolati.
‫Quindi ci sarà uno spillover da qualche parte che va perfettamente bene.
‫Ok, ora abbiamo le nostre divisioni.
‫Possiamo creare un'istanza CLF di un classificatore di foreste casuali.
‫E ora poiché non abbiamo passato nulla qui, questo lo istanzia con i parametri di base.
‫Quindi, se lo facciamo, CLF non prende Perens.
‫Oh, questo non è un attributo, è una funzione, quindi senza passare nulla per ascoltare il nostro primo classificatore casuale e istanzia il classificatore in forma casuale
‫con i parametri di base, a. K. un. questo.
‫E quindi è quello che vogliamo perché vogliamo fare alcune previsioni di base.
‫Quindi andiamo in cima a una scogliera, ci adatteremo ai dati di allenamento come al solito e poi
‫faremo previsioni.
‫Allora perché le parate sono uguali a Cele dopo la previsione?
‫No, faremo previsioni sui dati di convalida perché torniamo qui.
‫Vogliamo mettere a punto il nostro modello sulla divisione di convalida.
‫Quindi è su questo che basiamo la nostra metrica, creeremo prima una metrica di base, ovvero eseguendo la nostra funzione di
‫valutazione sulla divisione di convalida, quindi regoleremo gli iper parametri e riproveremo il nostro modello sulla divisione di
‫convalida e vedremo come si confrontano.
‫Quindi andiamo avanti e facciamo previsioni, chiameremo queste previsioni di base e poi valuteremo il
‫classificatore sul set di convalida.
‫Quindi abbiamo ottenuto le metriche di base e ora è qui che la nostra funzione di valutazione tornerà utile.
‫Le metriche Eagles valutano i rossi come validi.
‫Quindi vedo come abbiamo pubblicato il motivo per cui il set di convalida e le tariffe per il motivo.
‫E poi vogliamo passare alle metriche di base.
‫Bene, cosa abbiamo, riferimento alla precisione della variabile locale prima, oh, questo è quello che ci siamo persi.
‫Questo deve essere di nuovo il punteggio di precisione da questo.
‫È fatto in modo terribile.
‫Ora, cosa sta succedendo qui allo stesso punto a due?
‫Lo abbiamo fatto correttamente?
‫Oh, ci siamo.
‫Ecco perché abbiamo usato il nostro C originale che era così.
‫Abbiamo bisogno di usare lo shuffle delle malattie cardiache perché altrimenti il nostro modello prevedeva le etichette originali piuttosto
‫che ora le etichette mescolate.
‫Quindi è questo che ci siamo persi.
‫Hanno un ragazzo che quindi riceviamo questo avviso qui che il valore di una stima cambierà da
‫10 inversione, zero virgola due a cento e punto a due.
‫Quindi questa è la nostra metrica di base.
‫Ora, quello che abbiamo fatto è stato creare una convalida del treno e una suddivisione dei test.
‫Abbiamo istanziato e modellato solo se lo avessimo fatto prima sui dati di addestramento qui.
‫E poi abbiamo valutato i parametri di base, il tipo di parametri di base sul set di convalida e
‫abbiamo ottenuto queste metriche.
‫Quindi, se dovessimo cercare di migliorare i nostri risultati, se dovessimo provare a modificare i nostri modelli, iper parametri.
‫Questi qui sulla nostra foresta casuale a mano, perché questo è ciò che questa sezione è, regolando i parametri a
‫mano.
‫Come lo faremmo?
‫Prendiamo questo avviso come esempio di modifica di un parametro hyper.
‫Cambiamolo di nuovo.
‫Se stai usando la psichedelia e indichi il tour sopra, non riceverai questo avviso.
‫Ma dal momento che stiamo ricevendo questo avvertimento, cercheremo di adattarci.
‫I nostri parametri ibridi cambieranno.
‫Una stima è qual è questo qui?
‫Lo cambieremo dalla linea di base di 10 a 100 e vedremo
‫se otteniamo un punteggio diverso sul set di convalida, grande seme casuale, seme casuale 40 a quello che faremo è creare un
‫secondo classificatore con diversi tipi di parametri perché ricorda.
‫Istanziando il nostro fuoco casuale di prima classe qui, senza passargli nulla, istanzia il classificatore con i
‫parametri hyper di base con cui viene fornito immediatamente.
‫Così come usare le impostazioni predefinite del tuo Arvind quando esce dalla scatola per cucinare il tuo piatto preferito.
‫Queste scuole non ci stanno davvero aiutando qui.
‫Vogliamo che un modello migliore crei anche CLF, e regoleremo gli iper parametri come faresti
‫con il tuo forno per cercare di migliorare quel delizioso piatto di pollo arrosto preferito che stai preparando.
‫Forse ti stai preparando per una grande funzione alla quale stanno arrivando i tuoi oi tuoi amici e hai promesso loro
‫un ottimo piatto.
‫Quindi stai cercando di perfezionarlo.
‫Questo è ciò che stiamo facendo con il nostro modello di machine learning.
‫Quindi, di nuovo, stessa cosa, stessi dati adattati ai dati di allenamento.
‫Ma questa volta abbiamo CLF due, che usa una stima di 100 anziché 10.
‫E ora, di nuovo, potremmo provare diverse impostazioni per tutte queste funzionalità
‫qui, quelle che proveremo a regolare, ma potremmo iniziare con una sola, vederne un esempio, e poi
‫faremo predizioni.
‫Allora perché anche le sfilate, perché stiamo usando l'auto per auto per aiutare a prevedere.
‫È valido.
‫Stiamo facendo la stessa cosa qui, le previsioni di base sono sul set di
‫convalida e ora facciamo previsioni con parametri diversi.
‫Lo stesso giorno, c'è un modello diverso, stessi dati, e ora valuteremo il secondo
‫classificatore.
‫Ha lasciato due metriche, Eagles, stiamo già usando di nuovo la nostra funzione di valutazione, quella che abbiamo creato
‫prima, e stiamo salvando alcune righe di codice semplicemente estraendola in questo modo.
‫Va bene.
‫Ora diamo un'occhiata.
‫Ah, ok, quindi ora se confrontiamo gli iperparametri di base con cui è arrivato il nostro modello, cosa possiamo dire di
‫diverso qui?
‫Tutto quello che abbiamo cambiato è una stima uguale a 100, quindi abbiamo regolato un quadrante sul nostro modello.
‫Quindi, come regolare un quadrante sul tuo forno, possiamo vedere un leggero aumento della precisione sugli stessi dati.
‫Quindi CAFTA ha una precisione leggermente superiore.
‫Sta andando ad una maggiore precisione.
‫Ma un richiamo inferiore e allo stesso F una scuola.
‫Hmm, OK, questo ci sta dando un piccolo sentore che forse se avessimo continuato con diversi parametri alti, avremmo continuato
‫a provare a regolarli.
‫A mano, alla fine, speriamo solo di continuare a migliorare queste metriche.
‫Quindi cosa pensi che faremmo dopo se andassimo qui?
‫Forse abbiamo provato a cambiare la profondità massima.
‫Quindi qual è la profondità massima predefinita?
‫Lo troviamo qui, Max.
‫La profondità è nessuna.
‫Quindi forse dovremmo guardare la documentazione e andare alle diverse variabili che la lunghezza massima può assumere in modo che
‫possa accettare numeri interi o nessuno.
‫L'impostazione predefinita è nessuno.
‫La profondità massima dell'albero e facendo la nostra ricerca, leggendo la documentazione, vediamo alcuni valori diversi per
‫la profondità massima.
‫Quindi torniamo al nostro modello qui e forse creiamo un classificatore di foresta casuale uguale a tre uguali.
‫Questa volta manterremo una stima in quanto lo stesso equivale a cento e quindi modificheremo la profondità massima da nove a
‫uguale a 10.
‫Ora, non ho inventato questo numero, ho fatto qualche ricerca, letto la documentazione e ho trovato idee diverse
‫per la profondità massima, e poi potremmo fare la stessa cosa che abbiamo fatto qui.
‫Valuta il nostro terzo classificatore, come avrai intuito, come potresti aver pensato, se esaminiamo
‫e regoliamo tutti questi elementi a mano, regolando tutte le manopole a mano, ci vorrà un bel
‫po' di lavoro.
‫Destra.
‫Quindi, proprio come perfezionare il tuo piatto nella vita reale, come se stai preparando il piatto di pollo preferito, tutti vengono
‫a cena, stai cercando di regolare le impostazioni del tuo forno.
‫Potrebbe essere necessario passare attraverso un po' di tentativi ed errori.
‫Destra.
‫Potresti cucinarlo una volta e poi non è così buono.
‫E poi alla decima volta, inizi a diventare davvero bravo.
‫Ma potrebbe volerci molto più tempo con quello che stiamo cercando di fare qui.
‫Scrivendo codice, se abbiamo tutte queste diverse impostazioni quassù, provando a cambiarle, cercando di trovare le
‫migliori impostazioni che potrebbero richiedere molto più tempo di quello che abbiamo.
‫E la regola è in codice, non ripeterti.
‫Quindi potresti aver indovinato.
‫Quindi non posso imparare ha un modo, un metodo integrato che può farlo per noi.
‫Prova un sacco di impostazioni diverse per noi.
‫E questa è la ricerca casuale c. v.
‫Lo vedremo nel prossimo video.
‫Questo sta già diventando troppo lungo.
‫Ma il punto principale qui è che quando mettiamo a punto un tipo di modello di parametri, puoi pensare al
‫set di formazione come ai materiali del corso in cui stai imparando i dati di base.
‫Questo è il set di allenamento.
‫E poi all'esame di pratica, stai perfezionando ciò che sai.
‫Quindi hai già imparato tutti i modelli di base come il nostro modello.
‫E poi con il set di convalida, stiamo regolando l'impostazione.
‫Quindi stiamo perfezionando ciò che sa il modello, come apprende cose diverse prima di metterci alla prova
‫nell'esame finale.
‫Così.
‫Ok, prima di valutare il nostro modello sul set di prova.
‫Ora, non preoccuparti, se ti senti un po' sopraffatto, ripassa il codice che
‫abbiamo scritto, dai un'occhiata.
‫Potresti provare a regolare tu stesso alcuni parametri diversi, ma se non ti preoccupare.
‫Vedremo nel prossimo video come possiamo usare un modulo in Saikat, impareremo a provare diversi tipi di
‫parametri per noi.