Metode de învățare în ansamblu pentru rețele neuronale de învățare profundă

Tweet Share Share

Ultima actualizare la 6 august 2019

Cum să îmbunătățiți performanța prin combinarea predicțiilor de la mai multe modele.

Rețelele neuronale de învățare profundă sunt metode neliniare.

Oferă o flexibilitate sporită și se pot extinde proporțional cu cantitatea de date de instruire disponibile. Un dezavantaj al acestei flexibilități este faptul că acestea învață printr-un algoritm de instruire stocastic, ceea ce înseamnă că sunt sensibile la specificul datelor de instruire și pot găsi un set diferit de ponderi de fiecare dată când sunt instruite, care, la rândul lor, produc predicții diferite.

În general, acest lucru este denumit rețele neuronale care au o varianță ridicată și poate fi frustrant atunci când se încearcă să se dezvolte un model final care să fie utilizat pentru a face predicții.

O abordare de succes pentru a reduce varianța modelelor de rețele neuronale este de a antrena mai multe modele în loc de un singur model și de a combina predicțiile acestor modele. Acest lucru se numește învățare de ansamblu și nu numai că reduce varianța predicțiilor, dar poate avea ca rezultat predicții care sunt mai bune decât orice model unic.

În această postare, veți descoperi metode de învățare profundă a rețelelor neuronale pentru a reduce varianța și a îmbunătăți performanța predicțiilor.

După ce veți citi această postare, veți ști:

  • Modelele rețelelor neuronale sunt neliniare și au o varianță ridicată, ceea ce poate fi frustrant atunci când se pregătește un model final pentru a face predicții.
  • Învățarea în ansamblu combină predicțiile de la mai multe modele de rețele neuronale pentru a reduce varianța predicțiilor și pentru a reduce eroarea de generalizare.
  • Tehnicile de învățare în ansamblu pot fi grupate în funcție de elementul care este variat, cum ar fi datele de instruire, modelul și modul în care sunt combinate predicțiile.

Dă startul proiectului tău cu noua mea carte Better Deep Learning, care include tutoriale pas cu pas și fișierele de cod sursă Python pentru toate exemplele.

Să începem.

Ensemble Methods to Reduce Variance and Improve Performance of Deep Learning Neural Networks

Ensemble Methods to Reduce Variance and Improve Performance of Deep Learning Neural Networks
Photo by University of San Francisco’s Performing Arts, some rights reserved.

Overview

This tutorial is divided into four parts; they are:

  1. High Variance of Neural Network Models
  2. Reduce Variance Using an Ensemble of Models
  3. How to Ensemble Neural Network Models
  4. Summary of Ensemble Techniques

High Variance of Neural Network Models

Training deep neural networks can be very computationally expensive.

Very deep networks trained on millions of examples may take days, weeks, and sometimes months to train.

Modelul de bază al Google a fost o rețea neuronală convoluțională profundă care a fost antrenată timp de aproximativ șase luni folosind coborârea stocastică asincronă a gradientului stocastic pe un număr mare de nuclee.

– Distilling the Knowledge in a Neural Network, 2015.

După investirea a atât de mult timp și resurse, nu există nicio garanție că modelul final va avea o eroare de generalizare scăzută, performând bine pe exemple care nu au fost văzute în timpul antrenamentului.

… să antreneze multe rețele candidate diferite și apoi să o selecteze pe cea mai bună, iar pe restul să le elimine. Există două dezavantaje în cazul unei astfel de abordări. În primul rând, tot efortul implicat în instruirea rețelelor rămase este irosit. În al doilea rând, este posibil ca rețeaua care a avut cea mai bună performanță pe setul de validare să nu fie cea cu cea mai bună performanță pe noile date de test.

– Paginile 364-365, Neural Networks for Pattern Recognition, 1995.

Modelele de rețele neuronale sunt o metodă neliniară. Aceasta înseamnă că ele pot învăța relații neliniare complexe în date. Un dezavantaj al acestei flexibilități este că sunt sensibile la condițiile inițiale, atât în ceea ce privește ponderile aleatorii inițiale, cât și în ceea ce privește zgomotul statistic din setul de date de instruire.

Această natură stocastică a algoritmului de învățare înseamnă că, de fiecare dată când un model de rețea neuronală este antrenat, acesta poate învăța o versiune ușor (sau dramatic) diferită a funcției de cartografiere de la intrări la ieșiri, care, la rândul său, va avea performanțe diferite pe setul de date de antrenament și pe setul de date de reținere.

Ca atare, ne putem gândi la o rețea neuronală ca la o metodă care are o prejudecată scăzută și o varianță ridicată. Chiar și atunci când sunt antrenate pe seturi de date mari pentru a satisface varianța ridicată, a avea orice varianță într-un model final care este destinat să fie folosit pentru a face predicții poate fi frustrant.

Vreți rezultate mai bune cu Deep Learning?

Faceți acum cursul meu rapid gratuit de 7 zile prin e-mail (cu cod de probă).

Click pentru a vă înscrie și obțineți, de asemenea, o versiune gratuită a cursului în format PDF Ebook.

Download Your FREE Mini-Course

Reduceți varianța folosind un ansamblu de modele

O soluție pentru varianța ridicată a rețelelor neuronale este de a antrena mai multe modele și de a combina predicțiile lor.

Ideea este de a combina predicțiile de la mai multe modele bune, dar diferite.

Un model bun are abilități, ceea ce înseamnă că predicțiile sale sunt mai bune decât șansa aleatorie. Este important faptul că modelele trebuie să fie bune în moduri diferite; ele trebuie să facă erori de predicție diferite.

Motivul pentru care medierea modelelor funcționează este că modelele diferite nu vor face, de obicei, toate aceleași erori pe setul de testare.

– Page 256, Deep Learning, 2016.

Combinarea predicțiilor de la mai multe rețele neuronale adaugă o prejudecată care, la rândul ei, contracarează varianța unui singur model de rețea neuronală instruit. Rezultatele sunt predicții care sunt mai puțin sensibile la specificul datelor de instruire, la alegerea schemei de instruire și la serendipitatea unei singure execuții de instruire.

Pe lângă reducerea varianței în predicție, ansamblul poate duce, de asemenea, la predicții mai bune decât orice model unic cel mai bun.

… performanța unui comitet poate fi mai bună decât performanța celei mai bune rețele unice utilizate în mod izolat.

– Pagina 365, Neural Networks for Pattern Recognition, 1995.

Această abordare aparține unei clase generale de metode numite „învățare în ansamblu”, care descrie metodele care încearcă să utilizeze cât mai bine predicțiile din mai multe modele pregătite pentru aceeași problemă.

În general, învățarea în ansamblu implică antrenarea mai multor rețele pe același set de date, apoi utilizarea fiecăruia dintre modelele antrenate pentru a face o predicție înainte de a combina predicțiile într-un anumit mod pentru a obține un rezultat sau o predicție finală.

De fapt, asamblarea modelelor este o abordare standard în învățarea automată aplicată pentru a se asigura că se face cea mai stabilă și cea mai bună predicție posibilă.

De exemplu, Alex Krizhevsky, et al. în faimoasa lor lucrare din 2012 intitulată „Imagenet classification with deep convolutional neural networks” (Clasificarea imaginilor cu rețele neuronale convoluționale profunde), care a introdus rețele neuronale convoluționale foarte profunde pentru clasificarea fotografiilor (de exemplu, AlexNet), au folosit medierea modelelor între mai multe modele CNN performante pentru a obține rezultate de ultimă generație la acel moment. Performanța unui singur model a fost comparată cu predicțiile ansamblului mediate pe două, cinci și șapte modele diferite.

Medierea predicțiilor a cinci CNN-uri similare oferă o rată de eroare de 16,4%. Calcularea mediei predicțiilor a două CNN care au fost pre-antrenate cu cele cinci CNN menționate mai sus dă o rată de eroare de 15,3%.

Însamblarea este, de asemenea, abordarea folosită de câștigătorii concursurilor de învățare automată.

O altă tehnică puternică pentru obținerea celor mai bune rezultate posibile într-o sarcină este ansamblarea modelelor. Dacă vă uitați la competițiile de învățare automată, în special pe Kaggle, veți vedea că învingătorii folosesc ansambluri foarte mari de modele care, în mod inevitabil, bat orice model individual, indiferent cât de bun ar fi.

– Pagina 264, Deep Learning With Python, 2017.

Cum se asamblează modelele rețelelor neuronale

Poate cea mai veche și încă cea mai frecvent utilizată abordare de asamblare pentru rețelele neuronale se numește „comitet de rețele.”

O colecție de rețele cu aceeași configurație și cu ponderi aleatorii inițiale diferite este antrenată pe același set de date. Fiecare model este apoi utilizat pentru a face o predicție, iar predicția reală este calculată ca medie a predicțiilor.

Numărul de modele din ansamblu este adesea păstrat la un nivel mic, atât din cauza cheltuielilor de calcul pentru antrenarea modelelor, cât și din cauza scăderii randamentului performanței prin adăugarea mai multor membri ai ansamblului. Ansamblurile pot fi la fel de mici ca și trei, cinci sau 10 modele instruite.

Domeniul învățării de ansamblu este bine studiat și există multe variații pe această temă simplă.

Pot fi util să ne gândim la variația fiecăruia dintre cele trei elemente majore ale metodei de ansamblu; de exemplu:

  • Date de instruire: Variați alegerea datelor utilizate pentru a antrena fiecare model din ansamblu.
  • Modele de ansamblu: Variați alegerea modelelor utilizate în ansamblu.
  • Combinații: Varierea alegerii modului în care sunt combinate rezultatele obținute de la membrii ansamblului.

Să analizăm mai îndeaproape fiecare element în parte.

Varierea datelor de instruire

Datele utilizate pentru instruirea fiecărui membru al ansamblului pot fi variate.

Cea mai simplă abordare ar fi utilizarea validării încrucișate k-fold pentru a estima eroarea de generalizare a configurației modelului ales. În această procedură, k modele diferite sunt antrenate pe k subseturi diferite de date de antrenament. Aceste k modele pot fi apoi salvate și utilizate ca membri ai unui ansamblu.

O altă abordare populară implică reeșantionarea setului de date de instruire cu înlocuire, apoi instruirea unei rețele utilizând setul de date reeșantionat. Procedura de reeșantionare înseamnă că compoziția fiecărui set de date de instruire este diferită, cu posibilitatea unor exemple duplicate, permițând modelului instruit pe setul de date să aibă o așteptare ușor diferită a densității eșantioanelor și, la rândul său, o eroare de generalizare diferită.

Această abordare se numește agregare bootstrap sau, pe scurt, bagging, și a fost concepută pentru a fi utilizată cu arbori de decizie neefectuați care au o varianță ridicată și o prejudecată scăzută. De obicei, se utilizează un număr mare de arbori de decizie, cum ar fi sute sau mii, având în vedere că sunt rapid de pregătit.

… o modalitate naturală de a reduce varianța și, prin urmare, de a crește precizia predicției unei metode de învățare statistică este de a lua mai multe seturi de instruire din populație, de a construi un model de predicție separat utilizând fiecare set de instruire și de a calcula media predicțiilor rezultate. Desigur, acest lucru nu este practic, deoarece, în general, nu avem acces la mai multe seturi de instruire. În schimb, putem face bootstrap, luând eșantioane repetate din setul (unic) de date de instruire.

– Paginile 216-317, An Introduction to Statistical Learning with Applications in R, 2013.

O abordare echivalentă ar putea fi utilizarea unui subset mai mic din setul de date de instruire fără regularizare pentru a permite o instruire mai rapidă și o anumită supraadaptare.

Dorința de a avea modele ușor suboptimizate se aplică la selectarea membrilor ansamblului în general.

… membrii comisiei nu ar trebui să fie aleși individual pentru a avea un compromis optim între părtinire și varianță, ci ar trebui să aibă o părtinire relativ mai mică, deoarece varianța suplimentară poate fi eliminată prin calcularea mediei.

– Pagina 366, Neural Networks for Pattern Recognition, 1995.

Alte abordări pot implica selectarea unui subspațiu aleatoriu al spațiului de intrare pentru a fi alocat fiecărui model, cum ar fi un subset al hipervolumului din spațiul de intrare sau un subset de caracteristici de intrare.

Tutoriale despre ansambluri

Pentru exemple de ansambluri de învățare profundă care variază datele de instruire, a se vedea:

  • Cum se dezvoltă un ansamblu de divizare aleatorie, validare încrucișată și bagging pentru învățarea profundă

Modele variabile

Instruirea aceluiași model sub constrângere pe aceleași date cu condiții inițiale diferite va avea ca rezultat modele diferite, având în vedere dificultatea problemei și natura stocastică a algoritmului de învățare.

Acest lucru se datorează faptului că problema de optimizare pe care rețeaua încearcă să o rezolve este atât de dificilă încât există multe soluții „bune” și „diferite” pentru a cartografia intrările în ieșiri.

Majoritatea algoritmilor de rețele neuronale obțin performanțe suboptime în special din cauza existenței unui număr copleșitor de minime locale suboptime. Dacă luăm un set de rețele neuronale care au convergent către minime locale și aplicăm o medie, putem construi o estimare îmbunătățită. Un mod de a înțelege acest fapt este de a considera că, în general, rețelele care au căzut în diferite minime locale vor avea performanțe slabe în diferite regiuni ale spațiului caracteristic și, astfel, termenii lor de eroare nu vor fi puternic corelați.

– Când rețelele nu sunt de acord: Ensemble methods for hybrid neural networks (Metode de ansamblu pentru rețele neuronale hibride), 1995.

Acest lucru poate avea ca rezultat o varianță redusă, dar este posibil să nu îmbunătățească în mod dramatic eroarea de generalizare. Erorile făcute de modele pot fi în continuare prea puternic corelate, deoarece toate modelele au învățat funcții de cartografiere similare.

O abordare alternativă ar putea fi aceea de a varia configurația fiecărui model de ansamblu, cum ar fi utilizarea unor rețele cu capacitate diferită (de exemplu, numărul de straturi sau noduri) sau a unor modele instruite în condiții diferite (de exemplu, rata de învățare sau regularizarea).

Rezultatul poate fi un ansamblu de modele care au învățat o colecție mai eterogenă de funcții de cartografiere și care, la rândul lor, au o corelație mai mică în predicțiile și erorile de predicție.

Diferențele în ceea ce privește inițializarea aleatorie, selecția aleatorie a miniblocurilor, diferențele în hiperparametri sau rezultatele diferite ale implementărilor nedeterministe ale rețelelor neuronale sunt adesea suficiente pentru a determina diferiți membri ai ansamblului să facă erori parțial independente.

– Pagini 257-258, Deep Learning, 2016.

Un astfel de ansamblu de modele configurate diferit poate fi obținut prin procesul normal de dezvoltare a rețelei și de reglare a hiperparametrilor acesteia. Fiecare model ar putea fi salvat în timpul acestui proces și un subset de modele mai bune ar putea fi ales pentru a forma ansamblul.

Rețele ușor inferioare instruite sunt un produs secundar gratuit al majorității algoritmilor de reglare; este de dorit să se utilizeze astfel de copii suplimentare chiar și atunci când performanța lor este semnificativ mai slabă decât cea mai bună performanță găsită. O performanță mai bună încă poate fi obținută printr-o planificare atentă pentru o clasificare de ansamblu prin utilizarea celor mai buni parametri disponibili și antrenarea diferitelor copii pe diferite subseturi ale bazei de date disponibile.

– Neural Network Ensembles, 1990.

În cazurile în care antrenarea unui singur model poate dura săptămâni sau luni, o altă alternativă poate fi salvarea periodică a celui mai bun model în timpul procesului de antrenare, numite modele instantanee sau modele de control, apoi selectarea membrilor ansamblului dintre modelele salvate. Acest lucru oferă avantajele de a avea mai multe modele instruite pe aceleași date, deși colectate în timpul unei singure execuții de instruire.

Snapshot Ensembling produce un ansamblu de modele precise și diverse dintr-un singur proces de instruire. În centrul Snapshot Ensembling se află un proces de optimizare care vizitează mai multe minime locale înainte de a converge către o soluție finală. Luăm instantanee ale modelului la aceste diverse minime și calculăm media predicțiilor lor la momentul testului.

– Snapshot Ensembles: Train 1, get M for free, 2017.

O variație a ansamblului Snapshot este salvarea modelelor dintr-o serie de epoci, poate identificate prin revizuirea curbelor de învățare a performanțelor modelelor pe seturile de date de instruire și de validare în timpul instruirii. Ansamblurile din astfel de secvențe contigue de modele sunt denumite ansambluri orizontale.

În primul rând, se selectează rețelele antrenate pentru un interval relativ stabil de epoci. Predicțiile probabilității fiecărei etichete sunt produse de clasificatorii standard epocii selectate și apoi se calculează media.

– Ansamblu orizontal și vertical cu reprezentare profundă pentru clasificare, 2013.

O altă îmbunătățire a ansamblului instantaneu este de a varia sistematic procedura de optimizare în timpul antrenamentului pentru a forța diferite soluții (adică seturi de ponderi), dintre care cele mai bune pot fi salvate în punctele de control. Acest lucru ar putea implica injectarea unei cantități oscilante de zgomot pe parcursul epocilor de instruire sau oscilarea ratei de învățare în timpul epocilor de instruire. O variantă a acestei abordări numită Stochastic Gradient Descent with Warm Restarts (SGDR) a demonstrat o învățare mai rapidă și rezultate de ultimă generație pentru sarcini standard de clasificare a fotografiilor.

SgDR-ul nostru simulează repornirile la cald prin programarea ratei de învățare pentru a obține rezultate competitive de aproximativ două până la patru ori mai rapide. De asemenea, am obținut noi rezultate de ultimă generație cu SGDR, în principal prin utilizarea unor ansambluri și mai largi de instantanee din traiectoria SGDR.

– SGDR: Stochastic Gradient Descent with Warm Restarts, 2016.

Un beneficiu al rețelelor neuronale foarte profunde este acela că straturile ascunse intermediare oferă o reprezentare învățată a datelor de intrare de joasă rezoluție. Straturile ascunse pot emite direct reprezentările lor interne, iar ieșirea de la unul sau mai multe straturi ascunse dintr-o rețea foarte profundă poate fi utilizată ca intrare pentru un nou model de clasificare. Acest lucru este poate cel mai eficient atunci când modelul profund este antrenat cu ajutorul unui model autocodificator. Acest tip de ansamblu este denumit ansamblu vertical.

Această metodă asamblează o serie de clasificatori ale căror intrări sunt reprezentarea straturilor intermediare. Se așteaptă o rată de eroare mai mică, deoarece aceste caracteristici par diverse.

– Ansamblu orizontal și vertical cu reprezentare profundă pentru clasificare, 2013.

Tutoriale despre ansambluri

Pentru exemple de ansambluri de învățare profundă care variază modelele, vedeți:

  • Cum să dezvoltați un ansamblu instantaneu pentru învățare profundă
  • Cum să dezvoltați un ansamblu cu vot orizontal pentru învățare profundă

Combinații variabile

Cel mai simplu mod de a combina predicțiile este de a calcula media predicțiilor de la membrii ansamblului.

Acest lucru poate fi îmbunătățit ușor prin ponderarea predicțiilor de la fiecare model, în cazul în care ponderile sunt optimizate utilizând un set de date de validare hold-out. Acest lucru oferă o medie ponderată a ansamblului care se numește uneori model blending.

… ne-am putea aștepta ca unii membri ai comitetului să facă, de obicei, predicții mai bune decât alți membri. Prin urmare, ne-am aștepta să putem reduce și mai mult eroarea dacă acordăm o pondere mai mare unor membri ai comitetului decât altora. Astfel, considerăm o predicție generalizată a comitetului dată de o combinație ponderată a predicțiilor membrilor …

– Pagina 367, Neural Networks for Pattern Recognition, 1995.

Un pas mai departe în complexitate implică utilizarea unui nou model pentru a învăța cum să combine cel mai bine predicțiile fiecărui membru al ansamblului.

Modelul ar putea fi un model liniar simplu (de exemplu, foarte asemănător cu media ponderată), dar ar putea fi o metodă neliniară sofisticată care să ia în considerare, de asemenea, eșantionul specific de intrare, pe lângă predicțiile furnizate de fiecare membru. Această abordare generală de învățare a unui nou model se numește stivuire a modelelor sau generalizare stivuită.

Generalizarea stivuită funcționează prin deducerea prejudecăților generalizatorului (generalizatorilor) cu privire la un set de învățare furnizat. Această deducție procedează prin generalizarea într-un al doilea spațiu ale cărui intrări sunt (de exemplu) presupunerile generalizatorilor inițiali atunci când sunt învățați cu o parte din setul de învățare și încearcă să ghicească restul acestuia, iar ieșirea este (de exemplu) presupunerea corectă. Atunci când este utilizată cu un singur generalizator, generalizarea stivuită este o schemă de estimare (și apoi de corectare) a erorii unui generalizator care a fost antrenat pe un anumit set de învățare și apoi i s-a adresat o anumită întrebare.

– Generalizarea stivuită, 1992.

Există metode mai sofisticate de stivuire a modelelor, cum ar fi stimularea în care membrii ansamblului sunt adăugați unul câte unul pentru a corecta erorile modelelor anterioare. Complexitatea suplimentară face ca această abordare să fie mai puțin utilizată în cazul modelelor mari de rețele neuronale.

O altă combinație puțin diferită este combinarea ponderilor mai multor rețele neuronale cu aceeași structură. Se poate face o medie a ponderilor mai multor rețele, pentru a obține, sperăm, un nou model unic care are o performanță generală mai bună decât orice model original. Această abordare se numește medierea ponderilor modelului.

… sugerează că este promițător să se facă o medie a acestor puncte în spațiul ponderilor și să se utilizeze o rețea cu aceste ponderi medii, în loc să se formeze un ansamblu prin medierea ieșirilor rețelelor în spațiul modelului

– Averaging Weights Leads to Wider Optima and Better Generalization, 2018.

Tutoriale despre ansambluri

Pentru exemple de ansambluri de învățare profundă care variază combinații, a se vedea:

  • Cum să dezvoltați un ansamblu de mediere a modelelor pentru învățare profundă
  • Cum să dezvoltați un ansamblu de medie ponderată pentru învățare profundă
  • Cum să dezvoltați un ansamblu de stivuire pentru învățare profundă
  • Cum să creați un ansamblu Polyak-Ruppert pentru învățare profundă

Sumarul tehnicilor de ansamblu

În rezumat, we can list some of the more common and interesting ensemble methods for neural networks organized by each element of the method that can be varied, as follows:

  • Varying Training Data
    • k-fold Cross-Validation Ensemble
    • Bootstrap Aggregation (bagging) Ensemble
    • Random Training Subset Ensemble
  • Varying Models
    • Multiple Training Run Ensemble
    • Hyperparameter Tuning Ensemble
    • Snapshot Ensemble
    • Horizontal Epochs Ensemble
    • Vertical Representational Ensemble
  • Varying Combinations
    • Model Averaging Ensemble
    • Weighted Average Ensemble
    • Stacked Generalization (stacking) Ensemble
    • Boosting Ensemble
    • Model Weight Averaging Ensemble

There is no single best ensemble method; perhaps experiment with a few approaches or let the constraints of your project guide you.

Further Reading

This section provides more resources on the topic if you are looking to go deeper.

Books

  • Section 9.6 Committees of networks, Neural Networks for Pattern Recognition, 1995.
  • Section 7.11 Bagging and Other Ensemble Methods, Deep Learning, 2016.
  • Section 7.3.3 Model ensembling, Deep Learning With Python, 2017.
  • Section 8.2 Bagging, Random Forests, Boosting, An Introduction to Statistical Learning with Applications in R, 2013.

Papers

  • Neural Network Ensembles, 1990.
  • Neural Network Ensembles, Cross Validation, and Active Learning, 1994.
  • When networks disagree: Ensemble methods for hybrid neural networks, 1995.
  • Snapshot Ensembles: Train 1, get M for free, 2017.
  • SGDR: Stochastic Gradient Descent with Warm Restarts, 2016.
  • Horizontal and vertical ensemble with deep representation for classification, 2013.
  • Stacked generalization, 1992.
  • Averaging Weights Leads to Wider Optima and Better Generalization, 2018.

Articles

  • Ensemble learning, Wikipedia.
  • Bootstrap aggregating, Wikipedia.
  • Boosting (machine learning), Wikipedia.

Summary

In this post, you discovered ensemble methods for deep learning neural networks to reduce variance and improve prediction performance.

Specifically, you learned:

  • Neural network models are nonlinear and have a high variance, which can be frustrating when preparing a final model for making predictions.
  • Învățarea de ansamblu combină predicțiile de la mai multe modele de rețele neuronale pentru a reduce varianța predicțiilor și pentru a reduce eroarea de generalizare.
  • Tehnicile de învățare de ansamblu pot fi grupate în funcție de elementul care este variat, cum ar fi datele de instruire, modelul și modul în care sunt combinate predicțiile.

Aveți întrebări?
Puneți întrebările dvs. în comentariile de mai jos și voi face tot posibilul să vă răspund.

Dezvoltați astăzi modele mai bune de învățare profundă!

Mai bună învățare profundă

Învățați mai repede, reduceți suprasolicitarea și ansamblurile

…cu doar câteva linii de cod python

Descoperiți cum în noul meu Ebook:
Better Deep Learning

Acesta oferă tutoriale de auto-studiu pe subiecte precum:
Descreșterea greutății, normalizarea loturilor, dropout, stivuirea modelelor și multe altele…

Aduceți o mai bună învățare profundă în proiectele dvs. Just Results. See What’s Inside

Tweet Share Share

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *