Tartalomjegyzék[Elrejt][Előadás]
- 1. Mi is pontosan az a mélytanulás?
- 2. Mi különbözteti meg a mély tanulást a gépi tanulástól?
- 3. Jelenleg mi a véleménye a neurális hálózatokról?
- 4. Mi is pontosan a perceptron?
- 5. Mi is pontosan a mély neurális hálózat?
- 6. Mi is pontosan a többrétegű perceptron (MLP)?
- 7. Milyen célt szolgálnak az aktiváló függvények egy neurális hálózatban?
- 8. Mi is pontosan a gradiens süllyedés?
- 9. Mi is pontosan a költségfüggvény?
- 10. Hogyan tudnak a mély hálózatok felülmúlni a sekély hálózatokat?
- 11. Ismertesse az előreterjedést!
- 12. Mi az a visszaszaporítás?
- 13. A mély tanulással összefüggésben hogyan értelmezi a gradiens vágást?
- 14. Mik a Softmax és a ReLU funkciók?
- 15. Tanítható-e egy neurális hálózati modell úgy, hogy az összes súlyozás 0-ra van állítva?
- 16. Mi különbözteti meg a korszakot a kötegtől és az iterációtól?
- 17. Mit jelent a kötegelt normalizálás és kihagyás?
- 18. Mi választja el a sztochasztikus gradiens süllyedést a kötegelt gradiens süllyedéstől?
- 19. Miért döntő fontosságú a nemlinearitások bevonása a neurális hálózatokba?
- 20. Mi a tenzor a mélytanulásban?
- 21. Hogyan választaná ki az aktiválási funkciót egy mély tanulási modellhez?
- 22. Mit értesz CNN alatt?
- 23. Mi a sok CNN réteg?
- 24. Milyen hatásai vannak a túl- és alulfittnek, és hogyan lehet ezeket elkerülni?
- 25. Mi az RNN a mély tanulásban?
- 26. Ismertesse az Adam Optimizert!
- 27. Mélyautomatikus kódolók: mik ezek?
- 28. Mit jelent a Tensor a Tensorflow-ban?
- 29. Számítógépes gráf magyarázata
- 30. Generatív ellenséges hálózatok (GAN-ok): mik ezek?
- 31. Hogyan választja ki a neuronok és a rejtett rétegek számát, amelyeket bele kell foglalni a neurális hálózatba az architektúra tervezésekor?
- 32. Milyen neurális hálózatokat alkalmaz a mély megerősítő tanulás?
- Következtetés
A mélyreható tanulás nem teljesen új ötlet. A mesterséges neurális hálózatok szolgálják a mély tanulásnak nevezett gépi tanulási részhalmaz egyetlen alapját.
A mély tanulás az emberi agy utánzása, akárcsak a neurális hálózatok, mivel azokat az emberi agy utánzására hozták létre.
Egy ideje van ilyen. Manapság mindenki erről beszél, mivel közel sem áll rendelkezésünkre annyi feldolgozási teljesítmény vagy adat, mint most.
Az elmúlt 20 évben a mély tanulás és a gépi tanulás a feldolgozási kapacitás drámai növekedésének eredményeként jelent meg.
Annak érdekében, hogy segítsen felkészülni azokra a kérdésekre, amelyekkel álmai állása keresésekor szembesülhet, ez a bejegyzés végigvezeti Önt számos mélyreható tanulási interjú kérdésén, az egyszerűtől a bonyolultig.
1. Mi is pontosan az a mélytanulás?
Ha részt vesz a mély tanulás interjú során kétségtelenül megérted, mi az a mély tanulás. A kérdező azonban elvárja, hogy részletes választ adjon, valamint egy illusztrációt válaszoljon erre a kérdésre.
Az edzés érdekében neurális hálózatok a mély tanuláshoz jelentős mennyiségű szervezett vagy strukturálatlan adatot kell felhasználni. A rejtett minták és jellemzők megtalálásához bonyolult eljárásokat végez (például megkülönbözteti a macska és a kutya képét).
2. Mi különbözteti meg a mély tanulást a gépi tanulástól?
A mesterséges intelligencia gépi tanulásként ismert ágaként a számítógépeket adatok, valamint statisztikai és algoritmikus technikák segítségével képezzük, hogy azok idővel jobbak legyenek.
Mint egy szempont gépi tanulás, a mély tanulás az emberi agyban látható neurális hálózati architektúrát utánozza.
3. Jelenleg mi a véleménye a neurális hálózatokról?
A neurális hálózatoknak nevezett mesterséges rendszerek nagyon hasonlítanak az emberi testben található szerves neurális hálózatokra.
Olyan technikát használva, amely hasonlít a emberi agy A neurális hálózat olyan algoritmusok gyűjteménye, amelynek célja egy adatban a mögöttes összefüggések azonosítása.
Ezek a rendszerek úgy sajátítják el a feladatspecifikus ismereteket, hogy egy sor adatkészletnek és példának teszik ki magukat, nem pedig a feladatspecifikus szabályok betartásával.
Az ötlet az, hogy ahelyett, hogy előre programozottan értené ezeket az adatkészleteket, a rendszer megtanulja megkülönböztetni a jellemzőket a betáplált adatoktól.
A neurális hálózatokban leggyakrabban használt három hálózati réteg a következő:
- Bemeneti réteg
- Rejtett réteg
- Kimeneti réteg
4. Mi is pontosan a perceptron?
Az emberi agyban található biológiai neuron egy perceptronhoz hasonlítható. Több bemenetet fogad a perceptron, amely ezután számos transzformációt és funkciót hajt végre, és kimenetet állít elő.
A bináris osztályozásban egy perceptron nevű lineáris modellt alkalmaznak. Egy neuront szimulál különféle bemenetekkel, amelyek mindegyike más-más súlyú.
A neuron ezekkel a súlyozott bemenetekkel kiszámít egy függvényt, és kiadja az eredményeket.
5. Mi is pontosan a mély neurális hálózat?
A mély neurális hálózat egy mesterséges neurális hálózat (ANN), amelynek több rétege van a bemeneti és kimeneti rétegek (DNN) között.
A mély neurális hálózatok mély architektúrájú neurális hálózatok. A „mély” szó olyan funkciókra utal, amelyek egy rétegben több szintet és egységet tartalmaznak. Pontosabb modellek hozhatók létre több és nagyobb réteg hozzáadásával, hogy minél több mintát rögzítsenek.
6. Mi is pontosan a többrétegű perceptron (MLP)?
A bemeneti, rejtett és kimeneti rétegek jelen vannak az MLP-kben, hasonlóan a neurális hálózatokhoz. Hasonlóan épül fel, mint egy egyrétegű perceptron, egy vagy több rejtett réteggel.
Az egyrétegű perceptron bináris kimenete csak lineárisan elválasztható osztályokat (0,1), míg az MLP nemlineáris osztályokat tud osztályozni.
7. Milyen célt szolgálnak az aktiváló függvények egy neurális hálózatban?
Az aktiválási funkció határozza meg, hogy egy neuronnak a legalapvetőbb szinten kell-e aktiválódnia vagy sem. Bármely aktiváló funkció képes bemenetként elfogadni a bemenetek súlyozott összegét és a torzítást. Az aktiválási funkciók közé tartozik a lépés funkció, a Sigmoid, a ReLU, a Tanh és a Softmax.
8. Mi is pontosan a gradiens süllyedés?
A költségfüggvény vagy hiba minimalizálásának legjobb módja a gradiens süllyedés. A függvény lokális-globális minimumának megtalálása a cél. Ez meghatározza azt az utat, amelyet a modellnek követnie kell a hiba minimalizálása érdekében.
9. Mi is pontosan a költségfüggvény?
A költségfüggvény egy olyan mérőszám, amely felméri a modell teljesítményét; néha „vesztésnek” vagy „hibának” nevezik. A visszaterjesztés során a kimeneti réteg hibájának kiszámítására használják.
Kihasználjuk ezt a pontatlanságot a neurális hálózat képzési folyamatainak előmozdítására azáltal, hogy visszatoljuk a neurális hálózaton keresztül.
10. Hogyan tudnak a mély hálózatok felülmúlni a sekély hálózatokat?
A neurális hálózatokhoz a bemeneti és kimeneti rétegek mellett rejtett rétegek is hozzáadódnak. A bemeneti és kimeneti rétegek között a sekély neurális hálózatok egyetlen rejtett réteget alkalmaznak, míg a mély neurális hálózatok számos szintet használnak.
Egy sekély hálózatnak több paraméterre van szüksége ahhoz, hogy bármilyen funkcióba be tudjon illeszkedni. A mélyhálózatok még kis számú paraméterrel is jobban megfelelnek a funkcióknak, mivel több réteget tartalmaznak.
A mélyhálózatokat manapság előnyben részesítik, mivel sokoldalúak bármilyen típusú adatmodellezésben, legyen szó beszéd- vagy képfelismerésről.
11. Ismertesse az előreterjedést!
A bemeneteket a súlyokkal együtt továbbítják az eltemetett réteghez a továbbító terjesztésnek nevezett folyamatban.
Az aktiváló függvény kimenete minden egyes eltemetett rétegben kiszámításra kerül, mielőtt a feldolgozás a következő rétegre mehetne.
A folyamat a bemeneti rétegnél kezdődik és a végső kimeneti rétegig halad, így a név továbbterjedése.
12. Mi az a visszaszaporítás?
Amikor a neurális hálózatban a súlyokat és a torzításokat módosítják, a visszaszaporítást a költségfüggvény csökkentésére használják, először megfigyelve, hogyan változik az érték.
Az egyes rejtett rétegek színátmenetének megértése egyszerűvé teszi a változás kiszámítását.
A backpropagation néven ismert folyamat a kimeneti rétegnél kezdődik, és visszafelé halad a bemeneti rétegek felé.
13. A mély tanulással összefüggésben hogyan értelmezi a gradiens vágást?
A Gradient Clipping egy módszer a visszaterjedés során fellépő felrobbanó gradiensek problémájának megoldására (olyan állapot, amelyben jelentős hibás gradiensek halmozódnak fel az idő múlásával, ami a neurális hálózati modell súlyainak jelentős módosításához vezet a képzés során).
A gradiensek robbanása olyan probléma, amely akkor merül fel, ha a gradiensek túl nagyok lesznek az edzés során, ami instabillá teszi a modellt. Ha a színátmenet átlépte a várt tartományt, a színátmenet értékeit elemről elemre egy előre meghatározott minimális vagy maximális értékre tolja.
A gradiens vágás növeli a neurális hálózat numerikus stabilitását a képzés során, de minimális hatással van a modell teljesítményére.
14. Mik a Softmax és a ReLU funkciók?
A Softmax nevű aktiváló függvény 0 és 1 közötti tartományban állít elő kimenetet. Minden kimenet fel van osztva úgy, hogy az összes kimenet összege egy legyen. A kimeneti rétegeknél gyakran alkalmazzák a Softmax-ot.
Az egyenirányított lineáris egység, más néven ReLU, a leggyakrabban használt aktiválási funkció. Ha X pozitív, akkor X-et ad ki, egyébként pedig nullákat. A ReLU-t rendszeresen alkalmazzák eltemetett rétegekre.
15. Tanítható-e egy neurális hálózati modell úgy, hogy az összes súlyozás 0-ra van állítva?
A neurális hálózat soha nem tanul meg egy adott feladat elvégzését, ezért nem lehet modellt betanítani úgy, hogy az összes súlyt 0-ra inicializálja.
A deriváltak ugyanazok maradnak minden W-beli súlynál [1], ha az összes súlyt nullára inicializáljuk, ami azt eredményezi, hogy az idegsejtek iteratívan tanulják meg ugyanazokat a tulajdonságokat.
Nem egyszerűen 0-ra inicializálva a súlyokat, hanem bármilyen állandóra, valószínűleg alulértéket ad.
16. Mi különbözteti meg a korszakot a kötegtől és az iterációtól?
Az adatkészletek feldolgozásának és a gradiens süllyedési technikáknak különböző formái közé tartozik a kötegelt, az iteráció és az epocha. Az Epoch magában foglalja az egyszeri neurális hálózaton keresztüli teljes adatkészletet, előre és visszafelé egyaránt.
A megbízható eredmények elérése érdekében az adatkészletet gyakran többször is átadják, mivel túl nagy ahhoz, hogy egyetlen próbálkozással átadják.
Ezt a gyakorlatot, amikor kis mennyiségű adatot ismételten futtatnak egy neurális hálózaton, iterációnak nevezik. Annak biztosítására, hogy az adatkészlet sikeresen áthaladjon a neurális hálózatokon, több kötegre vagy részhalmazra osztható, amelyet kötegelésnek nevezünk.
Az adatgyűjtés méretétől függően mindhárom módszer – korszak, iteráció és kötegméret – alapvetően a gradiens süllyedés algoritmus.
17. Mit jelent a kötegelt normalizálás és kihagyás?
A Dropout megakadályozza az adatok túlillesztését azáltal, hogy véletlenszerűen eltávolítja mind a látható, mind a rejtett hálózati egységeket (általában a csomópontok 20 százalékát ejti el). Megduplázza a hálózat konvergéséhez szükséges iterációk számát.
Azáltal, hogy az egyes rétegekben a bemeneteket úgy normalizálják, hogy az átlagos kimeneti aktiválás nulla és a szórása egy legyen, a kötegelt normalizálás egy stratégia a neurális hálózatok teljesítményének és stabilitásának javítására.
18. Mi választja el a sztochasztikus gradiens süllyedést a kötegelt gradiens süllyedéstől?
Kötegelt gradiens süllyedés:
- A teljes adatkészletet a kötegelt gradiens gradiensének létrehozására használják.
- A hatalmas adatmennyiség és a lassan frissülő súlyok nehezítik a konvergenciát.
Sztochasztikus gradiens süllyedés:
- A sztochasztikus gradiens egyetlen mintát használ a gradiens kiszámításához.
- A gyakoribb súlyváltozások miatt lényegesen gyorsabban konvergál, mint a tételes gradiens.
19. Miért döntő fontosságú a nemlinearitások bevonása a neurális hálózatokba?
Nem számít, hány réteg van, a neurális hálózat nemlinearitások hiányában perceptronként fog viselkedni, így a kimenet lineárisan függ a bemenettől.
Másképpen fogalmazva, egy n rétegű, m rejtett egységgel és lineáris aktiválási függvényekkel rendelkező neurális hálózat egyenértékű egy rejtett rétegek nélküli lineáris neurális hálózattal, amely kizárólag lineáris elválasztási határokat képes észlelni.
Nemlinearitás nélkül a neurális hálózat nem képes bonyolult problémákat megoldani és a bemenetet pontosan kategorizálni.
20. Mi a tenzor a mélytanulásban?
A tenzorként ismert többdimenziós tömb mátrixok és vektorok általánosításaként szolgál. Ez egy kulcsfontosságú adatstruktúra a mély tanuláshoz. Az alapvető adattípusok N-dimenziós tömbjei a tenzorok ábrázolására szolgálnak.
A tenzor minden összetevője azonos adattípussal rendelkezik, és ez az adattípus mindig ismert. Lehetséges, hogy az alakzatnak csak egy darabja – nevezetesen, hogy hány dimenzió van, és mekkora mindegyik – ismert.
Olyan helyzetekben, amikor a bemenetek is teljesen ismertek, a műveletek többsége teljesen ismert tenzorokat állít elő; más esetekben a tenzor alakja csak a gráf végrehajtása során állapítható meg.
21. Hogyan választaná ki az aktiválási funkciót egy mély tanulási modellhez?
- Akkor érdemes lineáris aktiválási függvényt alkalmazni, ha a várható eredmény tényleges.
- Szigmoid függvényt kell használni, ha az előre jelzett kimenet egy bináris osztályvalószínűség.
- A Tanh függvény akkor használható, ha a kivetített kimenet két osztályozást tartalmaz.
- Könnyű kiszámíthatósága miatt a ReLU funkció sokféle helyzetben alkalmazható.
22. Mit értesz CNN alatt?
A vizuális képek értékelésére szakosodott mély neurális hálózatok közé tartoznak a konvolúciós neurális hálózatok (CNN vagy ConvNet). Itt a neurális hálózatok helyett, ahol egy vektor képviseli a bemenetet, a bemenet többcsatornás kép.
A többrétegű perceptronokat a CNN-ek speciális módon használják, ami nagyon kevés előfeldolgozást igényel.
23. Mi a sok CNN réteg?
Konvolúciós réteg: A fő réteg a konvolúciós réteg, amely számos tanulható szűrővel és befogadó mezővel rendelkezik. Ez a kezdeti réteg veszi a bemeneti adatokat, és kivonja a jellemzőit.
ReLU réteg: A hálózatok nem lineárissá tételével ez a réteg nullává változtatja a negatív képpontokat.
Pooling réteg: A feldolgozási és hálózati beállítások minimalizálásával a pooling réteg fokozatosan minimalizálja az ábrázolás térbeli méretét. A max pooling a leggyakrabban használt pooling módszer.
24. Milyen hatásai vannak a túl- és alulfittnek, és hogyan lehet ezeket elkerülni?
Ezt túlillesztésnek nevezik, amikor a modell megtanulja a betanítási adatok bonyolultságait és zajait addig a pontig, amíg az negatívan befolyásolja a modell friss adatok felhasználását.
Valószínűbb, hogy ez nemlineáris modellekkel történik, amelyek jobban alkalmazkodnak a célfüggvény tanulása során. Egy modellt meg lehet tanítani arra, hogy felismerje az autókat és teherautókat, de előfordulhat, hogy csak egy adott dobozzal rendelkező járműveket képes azonosítani.
Tekintettel arra, hogy csak egy típusú teherautóra képezték ki, előfordulhat, hogy nem képes felismerni egy platós teherautót. A képzési adatokon a modell jól működik, de a valóságban nem.
Az alulfitt modell olyan modellt jelent, amely nem rendelkezik kellőképpen képzett adatokkal, vagy nem képes új információkra általánosítani. Ez gyakran akkor fordul elő, ha egy modellt elégtelen vagy pontatlan adatokkal tanítanak.
A pontosságot és a teljesítményt egyaránt veszélyezteti az alulszerelés.
Az adatok újbóli mintavételezése a modell pontosságának becsléséhez (K-szeres keresztellenőrzés), valamint egy validációs adatkészlet használata a modell értékeléséhez két módja annak, hogy elkerüljük a túl- és alulillesztést.
25. Mi az RNN a mély tanulásban?
A visszatérő neurális hálózatok (RNN-ek), a mesterséges neurális hálózatok gyakori változata, az RNN rövidítése. Többek között genomok, kézírás, szöveg és adatszekvenciák feldolgozására használják őket. A szükséges képzéshez az RNN-ek visszaszaporítást alkalmaznak.
26. Ismertesse az Adam Optimizert!
Az Adam optimalizáló, más néven adaptív momentum, egy optimalizálási technika, amelyet a ritka gradiensekkel járó zajos helyzetek kezelésére fejlesztettek ki.
Amellett, hogy paraméterenkénti frissítéseket biztosít a gyorsabb konvergencia érdekében, az Adam-optimalizáló a lendülettel fokozza a konvergenciát, biztosítva, hogy a modell ne szoruljon be a nyeregpontba.
27. Mélyautomatikus kódolók: mik ezek?
A Deep autoencoder a két szimmetrikus mélyhitű hálózat gyűjtőneve, amelyek általában négy vagy öt sekély réteget tartalmaznak a hálózat kódoló felére és egy másik négy vagy öt rétegből álló halmazt a dekódoló fele számára.
Ezek a rétegek mély hithálózatok alapját képezik, és Boltzmann gépei korlátozzák őket. Minden egyes RBM után egy mély automatikus kódoló bináris módosításokat alkalmaz az MNIST adatkészleten.
Más adatkészletekben is használhatók, ahol a Gauss-féle helyreigazított transzformációkat részesítik előnyben az RBM-mel szemben.
28. Mit jelent a Tensor a Tensorflow-ban?
Ez egy másik mély tanulási interjúkérdés, amelyet rendszeresen feltesznek. A tenzor egy matematikai fogalom, amely magasabb dimenziós tömbként jelenik meg.
A tenzorok ezek az adattömbök, amelyek bemenetként szolgálnak a neurális hálózathoz, és különböző dimenziókkal és rangsorokkal rendelkeznek.
29. Számítógépes gráf magyarázata
A TensorFlow alapja egy számítási gráf felépítése. Mindegyik csomópont csomópontok hálózatában működik, ahol a csomópontok a matematikai műveleteket, az élek pedig a tenzorokat jelentik.
Néha „DataFlow Graph”-nak is nevezik, mivel az adatok grafikon alakban áramlanak.
30. Generatív ellenséges hálózatok (GAN-ok): mik ezek?
A Deep Learningben a generatív modellezés generatív ellenséges hálózatok segítségével valósul meg. Ez egy nem felügyelt munka, ahol az eredményt a bemeneti adatokban lévő minták azonosításával állítják elő.
A diszkriminátor a generátor által előállított példányok kategorizálására szolgál, míg a generátor új példák előállítására szolgál.
31. Hogyan választja ki a neuronok és a rejtett rétegek számát, amelyeket bele kell foglalni a neurális hálózatba az architektúra tervezésekor?
Az üzleti kihívások miatt a neurális hálózati architektúra felépítéséhez szükséges neuronok és rejtett rétegek pontos száma nem határozható meg szigorú szabályokkal.
Egy neurális hálózatban a rejtett réteg méretének valahova a bemeneti és kimeneti réteg méretének közepébe kell esnie.
A neurális hálózat kialakításának előnye néhány egyszerű módszerrel érhető el:
Az összes egyedi valós prediktív modellezési kihívás leküzdésének legjobb módja, ha néhány alapvető szisztematikus teszteléssel kezdi, hogy megtudja, mi teljesítene a legjobban egy adott adatkészlet esetében a neurális hálózatokkal kapcsolatos korábbi tapasztalatok alapján, hasonló valós környezetben.
A hálózati konfigurációt a problématerület ismerete és a korábbi neurális hálózati tapasztalatok alapján lehet kiválasztani. Egy neurális hálózat beállításának értékelésekor a kapcsolódó problémákhoz használt rétegek és neuronok száma jó kiindulópont.
A neurális hálózat összetettségét fokozatosan növelni kell a tervezett kimenet és a pontosság alapján, kezdve egy egyszerű neurális hálózat tervezésével.
32. Milyen neurális hálózatokat alkalmaz a mély megerősítő tanulás?
- A megerősítő tanulásnak nevezett gépi tanulási paradigmában a modell úgy működik, hogy maximalizálja a halmozott jutalom gondolatát, akárcsak az élő dolgok.
- A játékokat és az önvezető járműveket egyaránt problémaként írják le megerősítő tanulás.
- A képernyő bemenetként szolgál, ha a megjelenítendő probléma egy játék. Annak érdekében, hogy a következő fázisokhoz kimenetet állítson elő, az algoritmus bemenetként veszi a pixeleket, és a konvolúciós neurális hálózatok sok rétegén keresztül dolgozza fel azokat.
- A modell akcióinak – akár kedvező, akár rossz – eredményei megerősítésként szolgálnak.
Következtetés
A Deep Learning népszerűsége az évek során nőtt, gyakorlatilag minden iparági területen alkalmazzák.
A vállalatok egyre gyakrabban keresnek hozzáértő szakértőket, akik képesek olyan modelleket tervezni, amelyek az emberi viselkedést lemásolják mély tanulási és gépi tanulási megközelítések segítségével.
Azok a pályázók, akik bővítik készségeiket és megőrzik ismereteiket ezen élvonalbeli technológiák terén, sokféle munkalehetőséget találhatnak vonzó díjazás mellett.
Kezdheti az interjúkkal, most, hogy jól tudja, hogyan válaszoljon a mélytanulási interjúk leggyakrabban feltett kérdéseire. Tegye meg a következő lépést a céljai alapján.
Látogassa meg a Hashdorkot Interjú sorozat felkészülni az interjúkra.
Hagy egy Válaszol