Table of Contents[Ferstopje][Toanje]
- 1. Wat is Deep Learning krekt?
- 2. Wat ûnderskiedt Deep Learning fan Machine Learning?
- 3. Wat binne jo hjoeddeistige begripen fan neurale netwurken?
- 4. Wat is krekt in perceptron?
- 5. Wat is krekt in djip neural netwurk?
- 6. Wat is krekt in Multilayer Perceptron (MLP)?
- 7. Hokker doel spylje aktivearringsfunksjes yn in neural netwurk?
- 8. Wat is krekt Gradient Descent?
- 9. Wat is de kostenfunksje krekt?
- 10. Hoe kinne djippe netwurken better prestearje as ûndjippe?
- 11. Beskriuw foarút fuortplanting.
- 12. Wat is backpropagation?
- 13. Yn 'e kontekst fan djip learen, hoe begripe jo gradientknipsel?
- 14. Wat binne de Softmax- en ReLU-funksjes?
- 15. Kin in neural netwurk model wurde oplaat mei alle gewichten ynsteld op 0?
- 16. Wat ûnderskiedt in tiidrek fan in batch en in iteraasje?
- 17. Wat binne batchnormalisaasje en útfal?
- 18. Wat skiedt Stochastic Gradient Descent fan Batch Gradient Descent?
- 19. Wêrom is it krúsjaal om net-lineariteiten yn neurale netwurken op te nimmen?
- 20. Wat is in tensor yn djip learen?
- 21. Hoe soene jo de aktivearringsfunksje kieze foar in model foar djip learen?
- 22. Wat bedoelst mei CNN?
- 23. Wat binne de protte CNN lagen?
- 24. Wat binne de effekten fan oer- en ûnderfitting, en hoe kinne jo se foarkomme?
- 25. Wat is in RNN yn djip learen?
- 26. Beskriuw de Adam Optimizer
- 27. Djippe autoencoders: wat binne se?
- 28. Wat betsjut Tensor yn Tensorflow?
- 29. In útlis fan in computational grafyk
- 30. Generative adversarial netwurken (GANs): wat binne se?
- 31. Hoe sille jo it oantal neuroanen en ferburgen lagen kieze om yn it neuronale netwurk op te nimmen as jo de arsjitektuer ûntwerpe?
- 32. Hokker soarten neurale netwurken wurde brûkt troch djippe fersterking learen?
- Konklúzje
Djip learen is gjin gloednij idee. Keunstmjittige neurale netwurken tsjinje as de ienige stifting fan 'e subset fan masine-learen bekend as djip learen.
Djip learen is in mimik fan it minsklik brein, lykas neurale netwurken binne, om't se makke binne om it minsklik brein te imitearjen.
Dat hat der al in skoftke west. Dizze dagen praat elkenien der oer, om't wy net sa folle ferwurkingskrêft of gegevens hawwe as no.
Yn 'e ôfrûne 20 jier binne djip learen en masine learen ûntstien as gefolch fan' e dramatyske stiging yn ferwurkingskapasiteit.
Om jo te helpen by it tarieden fan alle fragen dy't jo kinne tsjinkomme as jo sykje nei jo dreambaan, sil dizze post jo liede troch in oantal fragen foar djippe learen ynterview, fariearjend fan ienfâldich oant yngewikkeld.
1. Wat is Deep Learning krekt?
As jo bywenje in djip learen ynterview, jo begripe sûnder mis wat djip learen is. De ynterviewer ferwachtet lykwols dat jo in detaillearre antwurd jouwe tegearre mei in yllustraasje yn antwurd op dizze fraach.
Om te trainen neurale netwurken foar djip learen moatte wichtige hoemannichten organisearre as net-strukturearre gegevens brûkt wurde. Om ferburgen patroanen en skaaimerken te finen, docht it yngewikkelde prosedueres (bygelyks it ûnderskied fan it byld fan in kat fan dat fan in hûn).
2. Wat ûnderskiedt Deep Learning fan Machine Learning?
As in tûke fan keunstmjittige yntelliginsje bekend as masine learen, traine wy kompjûters mei gegevens en statistyske en algoritmyske techniken, sadat se mei de tiid better wurde.
As aspekt fan masine learen, djippe learen imiteart de neuronale netwurkarsjitektuer te sjen yn it minsklik brein.
3. Wat binne jo hjoeddeistige begripen fan neurale netwurken?
Keunstmjittige systemen bekend as neurale netwurken lykje op 'e organyske neuronale netwurken dy't yn it minsklik lichem tige nau fûn wurde.
Mei help fan in technyk dy't liket hoe't de minskebern funksjes, in neural netwurk is in samling algoritmen dy't as doel hat om ûnderlizzende korrelaasjes te identifisearjen yn in stikje gegevens.
Dizze systemen krije taakspesifike kennis troch harsels te bleatsjen oan in ferskaat oan datasets en foarbylden, ynstee fan troch taakspesifike regels te folgjen.
It idee is dat ynstee fan in foarprogrammearre begryp fan dizze datasetten te hawwen, it systeem ûnderskiedende skaaimerken leart fan 'e gegevens dy't it wurdt fied.
De trije netwurklagen dy't it meast brûkt wurde yn neurale netwurken binne as folget:
- Ynput laach
- Ferburgen laach
- Utfier laach
4. Wat is krekt in perceptron?
De biologyske neuron fûn yn it minsklik brein is te fergelykjen mei in perceptron. Meardere ynputen wurde ûntfongen troch de perceptron, dy't dan ferskate transformaasjes en funksjes útfiert en in útfier produsearret.
In lineêr model neamd in perceptron wurdt brûkt yn binêre klassifikaasje. It simulearret in neuron mei in ferskaat oan ynputs, elk mei in oar gewicht.
De neuron berekkent in funksje mei dizze gewichtde ynputs en jout de resultaten út.
5. Wat is krekt in djip neural netwurk?
In djip neural netwurk is in keunstmjittich neural netwurk (ANN) mei ferskate lagen tusken de ynfier- en útfierlagen (DNN).
Djippe neuronale netwurken binne djippe arsjitektuerneurale netwurken. It wurd "djip" ferwiist nei funksjes mei in protte nivo's en ienheden yn ien laach. Krekter modellen kinne wurde makke troch mear en gruttere lagen ta te foegjen om gruttere nivo's fan patroanen te fangen.
6. Wat is krekt in Multilayer Perceptron (MLP)?
Ynput-, ferburgen- en útfierlagen binne oanwêzich yn MLP's, lykas yn neurale netwurken. It is boud lykas in single-layer perceptron mei ien of mear ferburgen lagen.
De binêre útfier fan in inkele laach perceptron kin allinich lineêre skiedbere klassen kategorisearje (0,1), wylst MLP net-lineêre klassen klassifisearje kin.
7. Hokker doel spylje aktivearringsfunksjes yn in neural netwurk?
In aktivearringsfunksje bepaalt oft in neuron op it meast fûnemintele nivo moat aktivearje of net. Elke aktivearringsfunksje kin de gewogen som fan 'e ynputen plus bias as ynfier akseptearje. Aktivearringsfunksjes omfetsje de stapfunksje, de Sigmoid, de ReLU, de Tanh, en de Softmax.
8. Wat is krekt Gradient Descent?
De bêste oanpak foar it minimalisearjen fan in kostenfunksje as in flater is gradientôfstamming. It finen fan in lokaal-globale minima fan in funksje is it doel. Dit spesifiseart it paad dat it model folgje moat om flater te minimalisearjen.
9. Wat is de kostenfunksje krekt?
De kostenfunksje is in metrysk om te beoardieljen hoe goed jo model prestearret; it wurdt soms bekend as "ferlies" of "flater". Tidens efterpropagaasje wurdt it brûkt om de flater fan 'e útfierlaach te berekkenjen.
Wy eksploitearje dy unakkuraatheid om de trainingsprosessen fan it neuronale netwurk te ferfoljen troch it werom te drukken troch it neuronale netwurk.
10. Hoe kinne djippe netwurken better prestearje as ûndjippe?
Ferburgen lagen wurde tafoege oan neurale netwurken neist ynfier- en útfierlagen. Tusken de ynfier- en útfierlagen brûke ûndjippe neurale netwurken in inkele ferburgen laach, wylst djippe neurale netwurken ferskate nivo's brûke.
In ûndjip netwurk fereasket ferskate parameters om yn elke funksje passe te kinnen. Djippe netwurken kinne funksjes better passe, sels mei in lyts oantal parameters, om't se ferskate lagen omfetsje.
Djippe netwurken binne no de foarkar fanwegen har veelzijdigheid yn it wurkjen mei elk type gegevensmodellering, of it no is foar spraak- as ôfbyldingsherkenning.
11. Beskriuw foarút fuortplanting.
Ynputen wurde tegearre mei gewichten oerbrocht nei de begroeven laach yn in proses bekend as trochstjoere propagaasje.
De útfier fan de aktivearringsfunksje wurdt berekkene yn elke begroeven laach foardat ferwurking kin trochgean nei de folgjende laach.
It proses begjint by de ynfierlaach en giet troch nei de ultime útfierlaach, dus de namme foarút fuortplanting.
12. Wat is backpropagation?
As gewichten en foaroardielen wurde oanpast yn it neurale netwurk, wurdt backpropagation brûkt om de kostenfunksje te ferminderjen troch earst te observearjen hoe't de wearde feroaret.
De gradient te begripen by elke ferburgen laach makket it berekkenjen fan dizze feroaring ienfâldich.
It proses, bekend as backpropagation, begjint by de útfierlaach en beweecht efterút nei de ynfierlagen.
13. Yn 'e kontekst fan djip learen, hoe begripe jo gradientknipsel?
Gradient Clipping is in metoade foar it oplossen fan it probleem fan eksplodearjende gradiënten dy't ûntsteane tidens efterpropagaasje (in betingst wêryn signifikante ferkearde gradienten oer de tiid accumulearje, wat liedt ta wichtige oanpassingen oan neural netwurkmodelgewichten tidens training).
Eksplodearjende gradiënten is in probleem dat ûntstiet as de hellingen te grut wurde tidens training, wêrtroch it model ynstabyl wurdt. As de gradient it ferwachte berik hat oerstutsen, wurde de gradientwearden elemint-foar-elemint skood nei in foarbepaalde minimum- of maksimumwearde.
Gradientknipjen ferbettert de numerike stabiliteit fan in neuronale netwurk tidens training, mar it hat minimale ynfloed op de prestaasjes fan it model.
14. Wat binne de Softmax- en ReLU-funksjes?
In aktivearring funksje neamd Softmax produsearret in útfier yn it berik tusken 0 en 1. Eltse útfier wurdt ferdield sadat de som fan alle útgongen is ien. Foar útfierlagen wurdt Softmax faak brûkt.
Rjochte lineêre ienheid, soms bekend as ReLU, is de meast brûkte aktivearringsfunksje. As X posityf is, jout it X út, oars jout it nullen út. ReLU wurdt geregeld tapast op begroeven lagen.
15. Kin in neural netwurk model wurde oplaat mei alle gewichten ynsteld op 0?
It neuronale netwurk sil noait leare om in bepaalde taak te foltôgjen, dus is it net mooglik om in model te trenen troch alle gewichten te inisjalisearjen nei 0.
De derivatives sille itselde bliuwe foar elk gewicht yn W [1] as alle gewichten wurde inisjalisearre op nul, wat sil resultearje yn neuroanen leare deselde funksjes iteratyf.
Net gewoan inisjalisearjen fan de gewichten nei 0, mar nei elke foarm fan konstante sil wierskynlik resultearje yn in subpar resultaat.
16. Wat ûnderskiedt in tiidrek fan in batch en in iteraasje?
Ferskillende foarmen fan ferwurkjen fan datasets en gradient-ôfstammingstechniken omfetsje batch, iteraasje en epoch. Epoch omfettet ien kear troch in neural netwurk mei in folsleine dataset, sawol foarút as efterút.
Om betroubere resultaten te leverjen, wurdt de dataset faak meardere kearen trochjûn, om't it te grut is om yn ien poging troch te gean.
Dizze praktyk fan it werheljen fan in lytse hoemannichte gegevens troch in neural netwurk wurdt oantsjutten as iteraasje. Om te garandearjen dat de gegevensset mei súkses de neurale netwurken trochgiet, kin it wurde ferdield yn in oantal batches of subsets, dy't bekend is as batching.
Ofhinklik fan 'e grutte fan' e gegevenssammeling binne alle trije metoaden - epoch, iteraasje en batchgrutte - yn essinsje manieren om de gradient ôfstamming algoritme.
17. Wat binne batchnormalisaasje en útfal?
Dropout foarkomt gegevensoverfitting troch willekeurich sawol sichtbere as ferburgen netwurk-ienheden te ferwiderjen (typysk falle 20 prosint fan 'e knopen). It ferdûbelet it oantal iteraasjes nedich om it netwurk te konvergearjen.
Troch de yngongen yn elke laach te normalisearjen om in gemiddelde útfieraktivaasje fan nul en in standertdeviaasje fan ien te hawwen, is batchnormalisaasje in strategy om de prestaasjes en stabiliteit fan neurale netwurken te ferbetterjen.
18. Wat skiedt Stochastic Gradient Descent fan Batch Gradient Descent?
Batch Gradient Descent:
- De folsleine dataset wurdt brûkt om de gradient foar de batchgradient te konstruearjen.
- De enoarme hoemannichte gegevens en de stadich bywurkjende gewichten meitsje konverginsje lestich.
Stochastic Gradient Descent:
- De stochastyske gradient brûkt ien stekproef om de gradient te berekkenjen.
- Troch de faker gewichtsferoaringen konvergeart it signifikant rapper dan de batchgradient.
19. Wêrom is it krúsjaal om net-lineariteiten yn neurale netwurken op te nimmen?
Nettsjinsteande hoefolle lagen d'r binne, sil in neural netwurk gedrage as in perceptron by it ûntbrekken fan net-lineariteiten, wêrtroch de útfier lineêr ôfhinklik is fan 'e ynfier.
Om it oars te sizzen, is in neuronale netwurk mei n lagen en m ferburgen ienheden en lineêre aktivearringsfunksjes lykweardich oan in lineêre neurale netwurk sûnder ferburgen lagen en mei de mooglikheid om allinich lineêre skiedingsgrinzen te detektearjen.
Sûnder net-lineariteiten is in neuraal netwurk net yn steat om yngewikkelde problemen op te lossen en de ynfier sekuer te kategorisearjen.
20. Wat is in tensor yn djip learen?
In multydinsjonele array bekend as in tensor tsjinnet as in generalisaasje fan matrices en vectoren. It is in krúsjale gegevensstruktuer foar djip learen. N-diminsjonale arrays fan fûnemintele gegevenstypen wurde brûkt om tensors foar te stellen.
Elke komponint fan 'e tensor hat itselde gegevenstype, en dit gegevenstype is altyd bekend. It is mooglik dat allinich in stik fan 'e foarm - nammentlik hoefolle dimensjes der binne en hoe grut elk is - bekend is.
Yn situaasjes as de yngongen ek folslein bekend binne, produsearret de mearderheid fan operaasjes folslein bekende tensoren; yn oare gefallen, de foarm fan in tensor kin allinnich wurde fêststeld tidens grafyk útfiering.
21. Hoe soene jo de aktivearringsfunksje kieze foar in model foar djip learen?
- It makket sin om in lineêre aktivearringsfunksje te brûken as it resultaat dat ferwachte wurde moat aktueel is.
- In Sigmoid-funksje moat brûkt wurde as de útfier dy't foarsizze moat in binêre klassekâns is.
- In Tanh-funksje kin brûkt wurde as de projektearre útfier twa klassifikaasjes befettet.
- Fanwegen syn gemak fan berekkening is de ReLU-funksje fan tapassing yn in breed skala oan situaasjes.
22. Wat bedoelst mei CNN?
Djippe neurale netwurken dy't spesjalisearje yn it evaluearjen fan fisuele bylden omfetsje konvolúsjonele neurale netwurken (CNN, of ConvNet). Hjir, yn stee fan yn neurale netwurken wêr't in fektor de ynfier fertsjintwurdiget, is de ynfier in multi-kanale ôfbylding.
Multilayer perceptrons wurde op in spesjale manier brûkt troch CNN's dy't heul lyts foarferwurking fereasket.
23. Wat binne de protte CNN lagen?
Konvolúsjonele laach: De haadlaach is de konvolúsjonele laach, dy't in ferskaat oan learbere filters hat en in ûntfanklik fjild. Dizze earste laach nimt de ynfiergegevens en ekstrakt har skaaimerken.
ReLU-laach: Troch de netwurken net-lineêr te meitsjen, feroaret dizze laach negative piksels yn nul.
Poolinglaach: Troch ferwurkings- en netwurkynstellingen te minimalisearjen, minimalisearret de poollaach stadichoan de romtlike grutte fan 'e foarstelling. Max pooling is de meast brûkte metoade fan pooling.
24. Wat binne de effekten fan oer- en ûnderfitting, en hoe kinne jo se foarkomme?
Dit is bekend as overfitting as in model de intricacies en lûd yn 'e trainingsgegevens leart oant it punt wêr't it negatyf beynfloedet it gebrûk fan farske gegevens troch it model.
It is wierskynliker te barren mei net-lineêre modellen dy't mear oanpasber binne by it learen fan in doelfunksje. In model kin wurde oplaat om auto's en frachtweinen te detektearjen, mar it kin allinich auto's identifisearje mei in bepaalde doazefoarm.
Mei it each op it feit dat it mar op ien type frachtwein waard traind, kin it miskien net in flatbedfrachtwein ûntdekke. Op trainingsgegevens wurket it model goed, mar net yn 'e eigentlike wrâld.
In under-fitted model ferwiist nei ien dy't net genôch oplaat is op gegevens of by steat is om te generalisearjen nei nije ynformaasje. Dit komt faak foar as in model wurdt oplaat mei net genôch of net krekte gegevens.
Krektens en prestaasjes wurde beide kompromittearre troch underfitting.
Resampling fan de gegevens om de krektens fan model te skatten (K-fold cross-validation) en it brûken fan in falidaasjedataset om it model te beoardieljen binne twa manieren om overfitting en underfitting te foarkommen.
25. Wat is in RNN yn djip learen?
Weromkommende neurale netwurken (RNN's), in mienskiplik ferskaat oan keunstmjittige neurale netwurken, gean troch de ôfkoarting RNN. Se wurde ûnder oare brûkt om genomen, hânskrift, tekst en gegevenssekwinsjes te ferwurkjen. Foar de nedige oplieding brûke RNN's werompropagaasje.
26. Beskriuw de Adam Optimizer
Adam optimizer, ek bekend as adaptive momentum, is in optimisaasjetechnyk ûntwikkele om lawaaierige situaasjes te behanneljen mei sparse hellingen.
Njonken it leverjen fan updates per parameter foar rapper konverginsje, ferbetteret de Adam optimizer konverginsje troch momentum, en soarget derfoar dat in model net yn 'e sealpunt fongen wurdt.
27. Djippe autoencoders: wat binne se?
Deep autoencoder is de sammelnamme foar twa symmetryske djippe leauwen netwurken dy't yn 't algemien fjouwer of fiif ûndjippe lagen omfetsje foar de kodearringhelte fan it netwurk en in oare set fan fjouwer of fiif lagen foar de dekodearjende helte.
Dizze lagen foarmje de stifting fan djippe leauwennetwurken en wurde beheind troch Boltzmann-masines. Nei eltse RBM jildt in djippe autoencoder binêre feroarings oan de dataset MNIST.
Se kinne ek brûkt wurde yn oare datasets wêr't Gaussiaanske rjochtfeardige transformaasjes de foarkar hawwe oer RBM.
28. Wat betsjut Tensor yn Tensorflow?
Dit is in oare fraach foar djippe learen ynterview dy't regelmjittich wurdt frege. In tensor is in wiskundich konsept dat fisualisearre wurdt as heger-diminsjonale arrays.
Tensors binne dizze gegevensarrays dy't wurde levere as ynfier nei it neurale netwurk en hawwe ferskate dimensjes en ranglist.
29. In útlis fan in computational grafyk
De basis fan in TensorFlow is de konstruksje fan in berekkeningsgrafyk. Elke knooppunt funksjonearret yn in netwurk fan knooppunten, wêrby't knooppunten steane foar wiskundige operaasjes en rânen foar tensors.
It wurdt soms oantsjutten as in "DataFlow Graph" sûnt gegevens streamt yn de foarm fan in grafyk.
30. Generative adversarial netwurken (GANs): wat binne se?
Yn Deep Learning wurdt generative modellering berikt mei generative adversariale netwurken. It is in unsupervised baan dêr't it resultaat wurdt produsearre troch identifisearje patroanen yn de ynfier gegevens.
De diskriminator wurdt brûkt om de eksimplaren te kategorisearjen produsearre troch de generator, wylst de generator wurdt brûkt om nije foarbylden te produsearjen.
31. Hoe sille jo it oantal neuroanen en ferburgen lagen kieze om yn it neuronale netwurk op te nimmen as jo de arsjitektuer ûntwerpe?
Mei it each op in saaklike útdaging, kin it krekte oantal neuroanen en ferburgen lagen nedich om in neurale netwurkarsjitektuer te bouwen net bepaald wurde troch hurde en rappe regels.
Yn in neural netwurk moat de grutte fan 'e ferburgen laach earne yn' e midden fan 'e grutte fan' e ynfier- en útfierlagen falle.
In foarsprong op it meitsjen fan in neural netwurkûntwerp kin wurde berikt yn in pear rjochtlinige metoaden, hoewol:
Begjin mei wat basale systematyske testen om te sjen wat it bêste soe prestearje foar elke spesifike dataset basearre op eardere ûnderfining mei neurale netwurken yn ferlykbere ynstellings yn 'e echte wrâld is de bêste manier om elke unike útdaging foar foarsizzend modellewurk yn 'e echte wrâld oan te pakken.
De netwurkkonfiguraasje kin keazen wurde op basis fan 'e kennis fan' e kwestjedomein en foarôfgeande neuronale netwurkûnderfining. By it beoardieljen fan de opset fan in neuronale netwurk, is it oantal lagen en neuroanen brûkt op relatearre problemen in goed plak om te begjinnen.
De kompleksiteit fan it neuronale netwurk moat stadichoan ferhege wurde op basis fan projizearre útfier en krektens, begjinnend mei in ienfâldich neural netwurkûntwerp.
32. Hokker soarten neurale netwurken wurde brûkt troch djippe fersterking learen?
- Yn in masine-learparadigma neamd fersterking learen, wurket it model om it idee fan kumulative beleanning te maksimalisearjen, krekt lykas live dingen dogge.
- Spultsjes en selsridende auto's wurde beide omskreaun as problemen mei fersteuring learen.
- It skerm wurdt brûkt as ynfier as it probleem te fertsjintwurdigjen is in spultsje. Om in útfier foar de folgjende fazen te produsearjen, nimt it algoritme de piksels as ynfier en ferwurket se fia in protte lagen fan konvolúsjonele neurale netwurken.
- De resultaten fan 'e aksjes fan it model, sawol geunstich as min, fungearje as fersterking.
Konklúzje
Deep Learning is yn 'e rin fan' e jierren tanommen yn populariteit, mei applikaasjes yn hast alle yndustrygebieten.
Bedriuwen sykje hieltyd faker nei kompetinte saakkundigen dy't modellen kinne ûntwerpe dy't minsklik gedrach replikearje mei oanpak fan djip learen en masinelearen.
Kandidaten dy't har feardigensnivo ferheegje en har kennis behâlde fan dizze foaroansteande technologyen kinne in breed oanbod fan wurkmooglikheden fine mei oantreklike beleanning.
Jo kinne begjinne mei de ynterviews no't jo in sterk begrip hawwe oer hoe't jo kinne reagearje op guon fan 'e meast frege fragen foar ynterviews foar djippe learen. Nim de folgjende stap basearre op jo doelen.
Besykje Hashdork's Ynterview Series tariede op ynterviews.
Leave a Reply