Kemény bemutató

Kemeny Bemutato



Tudott már valaki a Python használatáról a robotok tervezésében és fejlesztésében? Ha ez így van, akkor bizonyítani kell, hogy a Python mélytanulási elképzelése az egyetlen módja ennek megvalósítására. A gépi tanulás olyan optimalizálási technikák kutatása, amely az emberi elme modelljéből merít ihletet. Az adattudományi tudományágakban, beleértve a robotikát, a mesterséges intelligenciát (AI), a zene- és videóazonosítást, valamint a képazonosítást, egyre nagyobb a mély tanulás alkalmazása. A mély tanulási megközelítések szintetikus neurális hálózatok köré épülnek. Mielőtt mélyre ásna, először meg kell értenie a Keras fogalmát.

Kemény

A mélytanulási algoritmusok felépítésére szolgáló leghatékonyabb és legfelhasználóbarátabb beépülő modulok közé tartozik a Python-alapú, emelt szintű mesterséges neurális keretrendszer, a Keras, amelyet olyan jól ismert mélytanulási keretrendszerekre építenek fel, mint a TensorFlow vagy a CNTK. A mélyebb neurális hálózatokat használó gyorsabb feltárás érdekében felhasználóbarát, bővíthető és adaptálható. Mind az előrecsatolható, mind a visszahúzható hálózatokat külön-külön, valamint kombinálva kezeli. A háttércsomagot használja a kis műveletek kezelésére, mert nem tudja kezelni azokat. Ebben a leckében a Keras telepítéséről, a mély tanulás alapjairól, a Keras struktúrákról, a Keras rétegezésről, a Keras csomagokról és a valós idejű programozásról lesz szó.

A Keras beállítása Linuxon

01. lépés: Frissítse a rendszert

Mielőtt bemutatnánk a Python „Keras” könyvtárának használatát, teljesen frissítenünk kell Linux gépünket, hogy megkönnyítsük a további telepítéseket. Ehhez gyorsan meg kell nyitnunk a „konzol” alkalmazást a rendszer beépített alkalmazásai közül. Az adott lekérdezési területen belül hozzáadtuk a Linux „frissítés” lekérdezését „apt” segédprogrammal és „sudo” jogosultsággal, hogy gyorsan frissítsük a rendszerünket. A folyamat folytatásához felhasználói jelszavunkra volt szükség, hogy rendszerünket megfelelően frissíteni lehessen.









02. lépés: A Python és a Pip telepítése

A Keras és TensorFlow segítségével történő Deep Learning használatához a Python legújabb verzióját kell beállítani a gépünkön. Ezért elkezdjük telepíteni a Python frissített csomagját a szükséges „pip” segédprogrammal együtt a rendszerünkre. Ehhez ismét az Ubuntu 20.04 Linux rendszer „apt” segédprogramját kell használnunk a shell „install” lekérdezésében, majd a telepítendő csomagok, azaz a Python3 és a Python3-pip nevével. Ennek az egyszerű lekérdezésnek a konzolterületen végrehajtásakor a rendszer elkezdi telepíteni és konfigurálni mindkét csomagot a rendszerünkben.







Másrészt, ha a rendszeren a Python „pip” segédprogramjának egy régi verziója van telepítve, akkor a továbblépés előtt frissítenie kell.



A Python és a „pip” segédprogram sikeres konfigurálása után itt az ideje frissíteni a Setuptools for Python programot, hogy elkerüljük a közeljövőben felmerülő problémákat. Ezért kipróbáltuk a telepítési lekérdezést a „pip3” segédprogrammal és a –upgrade opcióval, hogy telepítsük a frissítést a Setupools, azaz a telepítőeszközökkel. Kéri a rendszerünkhöz tartozó jelenlegi jelszót, és hozzáadtuk.

03. lépés: Telepítse a TensorFlow-t

A gépi tanulás és a felügyelt neurális modellek felépítéséhez a TensorFlow a legismertebb szimbolikus matematikai csomag. Miután végigmentünk a telepítéseken, ugyanazt a „pip3” telepítési lekérdezést hajtjuk végre, amelyet a „Tensorflow” csomagnév követ.

A többi TensorFlow-hoz kapcsolódó segédprogramot teljesen telepíteni kell a rendszerre. Ezeket a segédprogramokat a TensorFlow-val együtt telepítik, és ez akár 10 vagy több percig is eltarthat.

04. lépés: Telepítse az alapvető csomagokat

A TensorFlow eredményes konfigurálása után az Ubuntu 20.04 rendszerben néhány build csomagot is be kell állítanunk néhány más segédprogram mellett, mint például a „git” és a „cmake”. Ugyanazt az „apt” eszközt kipróbálva számos szükséges csomagot telepítettünk, az alábbiak szerint:

Ez a lépés a telepítés megerősítésével vonja le a legtöbb figyelmünket. Koppintson az „y” gombra, és folytassa.

05. lépés: Virtuális környezet létrehozása

A szükséges telepítések után itt az ideje egy virtuális környezet létrehozásának. Ezért a Python3 segédprogramot a „-m” opcióval kell használnunk a „kerasenv” virtuális környezet létrehozásához a „venv” változón keresztül. Az „ls” lekérdezés azt mutatja, hogy a környezet létrejött.

Most a Keras mappa virtuális környezetében kell mozognunk. Tehát a „cd” utasítást egy virtuális környezet mappa nevével együtt használjuk. Ezt követően ennek a virtuális környezetnek a „bin” mappájában mozogtunk, és felsoroltuk annak alját. Ennek a Python-környezetnek az aktiválásához kipróbáltuk a „source” utasítást a lekérdezési területén, valamint az „activate” fájlt. A virtuális környezet „kerasenv” néven aktiválódik.

06. lépés: Telepítse a Python Libraries alkalmazást

A Python virtuális környezet sikeres beállítása után telepítenie kell az összes szükséges Python-könyvtárat a Keras telepítése előtt. Ezért a panda könyvtárát először ugyanabba a virtuális környezetbe telepítettük, a Python „pip” csomagjával.

A rendszer elkezdi konfigurálni a Python virtuális környezetében, a képen látható módon:

A pandák könyvtárának telepítése után próbálja meg telepíteni a NumPy könyvtárat a következő módszerrel:

Nagyon hasonló módon telepítse a Python scipy könyvtárát ugyanabba a környezetbe.

Most telepítse a Python matplotlib könyvtárát a környezetben.

A Python fürtözési és regressziós algoritmusokat használ a gépi tanulásban a neurális hálózati modellek végrehajtásához. Ehhez rendelkezik a sci-kit learning könyvtárral, amelyet a „pip” segédprogrammal telepítünk, valamint a „-u” opciót a szükséges csomagok konfigurálásához.

A scikit könyvtár telepítésének feldolgozása az alábbiakban látható:

A mélytanulás vizualizálásához telepíteni kell a Python tengeri könyvtárát. Ezért ugyanabba a környezetbe telepítettük az „install” lekérdezéssel.

07. lépés: Telepítse a Keras Library-t

A Python összes szükséges előfeltételkönyvtárának telepítése után végre telepíthetjük a Keras-t a Python virtuális környezetébe. Erre a célra a „pip” segédprogramot használjuk az „install” lekérdezésünkben a modulnévvel, azaz „Keras”. Ha a rendszer azt mutatja, hogy a követelménye már teljesült, ez azt jelenti, hogy már telepítve és konfigurálva van.

Ha még nincs telepítve, ez a lekérdezés egy másodperc késedelem nélkül elkezdi letölteni és konfigurálni a virtuális környezetben, és a feldolgozás az alábbiak szerint jelenik meg:

A „Keras” könyvtár teljes konfigurálása és telepítése után a Virtuális Környezetben, itt az ideje, hogy a „pip show” lekérdezéssel megjelenítsük a teljes információt a shell-en. Ennek a „show” lekérdezésnek a végrehajtása során bemutatták a Python virtuális környezetünkbe telepített Keras verzióját, annak nevét, összefoglalóját, webes kezdőlapját, szerzőjét, a szerző e-mail címét, licencét, a helyét a rendszerünkön, és sok mást. bővebben az alábbiak szerint:

A Python Keras és TensorFlow könyvtárainak legfinomabb telepítései után ki kell lépnünk a virtuális környezetből. Ehhez próbálja meg a „deaktiválás” lekérdezést a héjon, és lépjen ki.

08. lépés: Az Anaconda Cloud telepítése

A Pythonnak van egy „Anaconda” nevű felhője, amely szükséges a neurális hálózati példák Pythonban történő felépítéséhez. Ezért letöltöttük a végrehajtó fájlját a rendszerünkre.

Ez a fájl az „ls” lekérdezésnek megfelelően a Linux gép aktuális kezdőmappájában található. Először meg kell győződnie arról, hogy ez az ellenőrző összeg, vagyis hogy teljesen helyes-e vagy sem, az sha256sum lekérdezés segítségével.

Ezt követően telepítenünk kell a rendszerünkbe az anaconda letöltött Bash fájlját a „Bash” utasítás és a fájlnév segítségével ugyanazon a konzolon. Arra kért minket, hogy a telepítés előtt tekintsük át a licencszerződést. Tehát a folytatáshoz megnyomtuk az „Enter” gombot.

A licencszerződés átfutása után arra kér minket, hogy koppintsunk az „igen” gombra, ha egyetértünk a feltételekkel. Meg kell nyomnia az Enter billentyűt a telepítés folytatásához ugyanott, vagy meg kell írnia annak a könyvtárnak az elérési útját, ahová telepíteni szeretné. Ellenkező esetben használja a „Ctrl-c” billentyűkombinációt a telepítés megszakításához.

Megjeleníti a folyamat során telepített csomagok hosszú listáját. Néhány tranzakció végrehajtása után megkezdi a csomagok telepítését.

Egy idő után az anacondát sikeresen telepítették további csomagjaival együtt.

Az „Active” fájlt az anaconda mappából a „source” lekérdezéssel rootként kell futtatnia.

Próbálja meg elindítani az anaconda navigátort a következő lekérdezéssel.

Az új conda környezet létrehozásához és feldolgozásához próbálja ki a „conda create” utasítást a név opcióval, majd az új környezetnévvel, azaz PyCPU-val.

Ez a folyamat megköveteli a megerősítésünket az új környezet létrehozásáról. Koppintson az „y” gombra.

Az újonnan készített conda környezet aktiválásához és futtatásához használja a „conda activate” lekérdezést az új környezet nevével, azaz a PyCPU környezet aktiválva van.

09. lépés: Telepítse a Spyder IDE-t

A Spyder IDE-t ebben a környezetben kell telepíteni a Python-programok végrehajtásához. Ehhez kipróbáltuk a conda telepítési lekérdezést a PyCPU környezeti shellben a „spyder” kulcsszóval.

Érintse meg az „y” gombot a Spyder telepítésének folytatásához.

10. lépés: Telepítse a Pandas és a Keras Library programot

A Spyder telepítése után telepítse a panda Python könyvtárát anaconda környezetben a conda install lekérdezés segítségével a –c kapcsolóval.

Ismét nyomja meg az „y” gombot a folytatáshoz.

A pandák sikeres konfigurálása után telepítse a Keras könyvtárat ugyanazzal a lekérdezéssel.

Folytassa az „y” gomb megnyomása után.

A Spyder IDE-t az anaconda jelenlegi környezeti konzolján az alábbiak szerint indíthatja el:

A Spyder IDE indulásra készül.

A „.keras” rejtett mappa a kezdőkönyvtárban található. Nyissa meg a „keras.json” fájlt, és adja hozzá a következő konfigurációkat.

A Keras és a TensorFlow beállítása Windows rendszeren

A Keras és a TensorFlow Windows környezetben történő beállításához meg kell győződnie arról, hogy a Python nyelv a „pip” könyvtárával és az Anaconda Navigatorral együtt már be van állítva rajta. A beállítás után nyissa meg a keresési területről, és lépjen a „környezet” lapon. Ezen a lapon megtalálja a környezet nevét, amelyben jelenleg dolgozik, azaz az alap. Az alábbi területen a következő lapot találja. Koppintson a „létrehozás” lehetőségre.

Itt létre kell hoznia egy új „TensorFlow” környezetnevet, azaz jelenleg az alapkörnyezeten belül van. Válassza ki a Python legújabb verzióját, és érintse meg a „Létrehozás” gombot a folytatáshoz.

Látni fogja, hogy a környezet betöltődött.

Egy idő után a TensorFlow környezet teljesen telepítve lesz.

A bal szélső részből láthatja az összes telepített és elérhető Python könyvtárat és modult, az alábbiak szerint:

Most telepítenünk kell a Python TensorFlow háttérkönyvtárát ezen a területen. A keresősávba írja be a „TensorFlow” kifejezést, és a telepítéshez jelölje meg ugyanazt az esetcsomagot a megjelenített listában. Érintse meg az „Alkalmaz” gombot a TensorFlow és annak almoduljainak, például a „Keras” telepítésének folytatásához.

Elkezdett működni és konfigurálni a TensorFlow-t Anaconda környezetünkben.

A telepítés során megjelenik az Anaconda környezetre telepítendő alcsomagok listája. Nyomja meg az „Alkalmaz” gombot, és várjon egy kicsit, amíg befejeződik.

Egy idő után az összes telepített csomag ugyanazon a modulterületen található. Láthatja, hogy a Keras könyvtárat más csomagokkal együtt telepítették, és most nem kell telepítenünk.

A Windows keresősávjában keressen a „Jupyter” kulcsszóra. A „Jupyter Notebook (TensorFlow)” nevű alkalmazás másokkal együtt megjelenik. Koppintson rá a Jupyter Notebook elindításához, a TensorFlow háttérrendszerrel. Hozzon létre egy új Python-fájlt, és kezdje el a munkát.

Mély tanulás keményen keresztül

A mélyreható tanulás magában foglalja a bevitel rétegenkénti elemzését, és minden réteg fokozatosan emeli ki a haladó szintű részleteket a bemenetből. A Keras teljes keretet biztosít bármilyen neurális hálózat kialakításához. Egyszerre kreatív és hihetetlenül egyszerűen érthető, Keras. Lehetővé teszi a neurális hálózati modelleket a legnaivabbtól a legnagyobb és legfelsőbb komplexumig.

Mesterséges neurális hálózat (ANN)

Úgy tűnik, hogy a „mesterséges neurális hálózat” (ANN) módszertana a mély tanulás legszélesebb körben használt és alapvető módszere. Jelzéseiket az emberi elméből, testünk legbonyolultabb természetes összetevőjéből veszik ki, amely mintául szolgál. Több mint 90 milliárd mikroszkopikus sejt, úgynevezett „neuron” alkotja az egyén agyát. Az axonok és a dendritek olyan típusú idegrostok, amelyek összekötik az idegsejteket. Az axon elsődleges feladata, hogy adatokat küldjön az egyik kapcsolt neuronról a másikra. További információért keressen a Google keresőmotorból.

Keras építészet

A Keras API architektúrát az alábbiakban felsorolt ​​három fő részre osztották. Vegyünk egy álcát mindegyikről külön.

  • Modell
  • Réteg
  • Alapmodulok

Kemény modell

A Keras modell pontosan két típusból áll, azaz szekvenciális és funkcionális API-ból.

Szekvenciális modell

Alapvetően a szekvenciális modell a Keras rétegek kronologikus összeállítása. Az egyszerű, leegyszerűsített szekvenciális modell szinte az összes jelenleg használatban lévő neurális hálózatot le tudja írni. Személyre szabott modell készíthető a Model osztály használatával, amelyet a szekvenciális modell feltár. Az alosztályozási megközelítés felhasználható egy saját, kifinomult modell felépítésére. A szekvenciális modell bemutatóját az alábbiakban mutatjuk be.

Rétegek hozzáadása

A szkript a szekvenciális mód importálásából indult el a keras.models-en keresztül, a másik sor pedig egy szekvenciális modell létrehozása. Ezt követően a sűrű réteg importálása létrehoz egy bemeneti réteget, és hozzáad egy bemeneti réteget a modellhez. A rejtett sűrű réteget létrehoztuk és hozzáadtuk a modellhez, és ugyanezt elvégeztük a kimeneti sűrű réteggel is.

Nyissa meg a modellt

Információkat kaphat a modellrétegeiről, az általa használt bemeneti adatokról és a kimeneti adatokról. A model.layers funkció lehetővé teszi az összes réteg elérését. A model.inputs bemeneti tenzorokat, a model.output pedig a kimeneti tenzorokat jeleníti meg.

Sorolja fel a modellt

Könnyen visszaadható a szkriptben használt modell objektumként vagy JSON-ként. Például a get_config() függvény a modellt entitásként/objektumként adja. A from_config() függvény új modellt hoz létre az objektumot paraméteres értékként használva.

A modellt JSON-ra is módosíthatja a to_json() függvény segítségével.

Modell összefoglaló

A modellben használt fóliák teljes összegzéséhez, valamint néhány további információhoz hívja meg az summary() függvényt.

Tanítsd meg és jósold meg a modellt

A betanításhoz és az előrejelzéshez a fordítási függvényt, az illesztési függvényt, a függvény értékelését és a függvény előrejelzését kell használnunk.

Kemény rétegek

A neurális hálózatok javasolt modelljében minden bemeneti, rejtett és hozamréteg egy másik Keras rétegnek felel meg a valós modellben. Bármilyen kifinomult neurális hálózat gyorsan fejleszthető a Keras könyvtár számos előre elkészített rétegével. Különféle Keras-rétegeink vannak, azaz magrétegek, gyűjtőrétegek, ismétlődő rétegek és konvolúciós rétegek. Az interneten való kereséssel tanulmányozhatja őket. Az első két sor a szekvenciális mód, a sűrű, az aktiválási és a lemorzsolódási réteg importálása volt.



Kipróbáltuk a Sequential() API-t egy kieső szekvenciális modell létrehozásához. A „relu” aktiválási modell levetésével egy sűrű réteget hoztunk létre a „Dense” API-n keresztül. A sűrű réteg túlillesztése érdekében a Dropout() API-t használjuk, azaz a dropout rétegezést a dropout() függvényen keresztül. Ezek után itt egy sűrűbb réteget használtunk a „relu” aktiválási modellel. A sűrű rétegek túlillesztéstől való kezeléséhez a Dropout rétegeket kell használnunk. Végül a „softmax” típusú aktiválási modell segítségével öntöttük le a végső sűrű rétegeinket.







Végeztél már rétegezést főzés közben? Ha igen, akkor ezt a fogalmat nem lenne nehéz megértenie. Az egyik szint eredménye a következő réteg bemeneti adataként fog szolgálni. Íme az alapvető dolgok, amelyek egy teljesen új réteg felépítéséhez szükségesek:



  • Input Data Shape
  • Összes neuron/egység egy rétegben
  • Inicializálók
  • Rendszeresek
  • Korlátok
  • Aktiválások

Input Data Shape

A Python nyelven belül minden bemenetet egész számok tömbjévé alakítottak, majd hozzáadtak az algoritmusmodellhez. A Pythonon belül meg kell adnunk a bemeneti alakzatot, hogy a követelménynek megfelelő kimenetet kapjunk. A következő példákban megadtuk a bemeneti alakzatot (3,3), azaz 3 sort és 3 oszlopot. A kimenet a mátrixot jeleníti meg.







Inicializálók

A Keras Layers inicializáló modulja számos funkciót biztosít számunkra a bemeneti adatok súlyának megadásához. Például a zeros() függvény 0-t ad meg az összeshez, az egyesek() az összeshez, a konstans() függvény pedig egy adott állandó értéket ad meg, amelyet a felhasználó ad hozzá mindenhez és még többhez. A jobb megértés érdekében az identitás() függvényt használtuk egy identitásmátrix létrehozására. A többi funkció is kereshető a keresőből.



Korlátok

Különféle kényszerfüggvények állnak rendelkezésre a fólia „súly” paraméterére vonatkozó megszorítások alkalmazására, azaz nem negatív, egységnyi norma, max norma, minmaxnorm és még sok más. A következő ábrán a súlynál kisebb vagy azzal egyenlő kényszernormát alkalmaztuk. A „max_value” paraméter az alkalmazandó megszorítás felső határa, a tengely pedig az a méret, amelyre a megszorítást alkalmazni kell, azaz az 1. dimenzió.

Rendszeresek

Az optimalizálás során különféle díjakat ró a rétegtulajdonságra. Ehhez kitalált néhány funkciót is, például az L1 szabályosítót, az L2 szabályosítót és az „LI és L2” szabályosítót. Íme az L1 szabályosító függvény legegyszerűbb illusztrációja:

Aktiválások

Az aktiválási funkciónak nevezett egyedi funkció annak meghatározására szolgál, hogy egy adott neuron aktív-e vagy sem. Az aktiváló funkció komplex módon alakítja át a beérkező adatokat, ami segíti a neuronok hatékonyabb tanulását. Íme néhány aktiválási módszer, amelyeket az alábbi példákban mutatunk be:

Kemény modulok

Mint tudjuk, a programozási modulok általában olyan függvényeket, osztályokat és változókat tartalmaznak, amelyeket különböző és meghatározott célokra használnak. Hasonlóképpen, a Python Keras könyvtára sok modult tartalmaz. A Keras modulokról minden szükséges tudást megszerezhet a weben.

Háttérrendszer

Az egyik legismertebb és leghasználtabb modulja a „Backend” modul, amelyet a Python háttérkönyvtárainak, például a TensorFlow és a Theano használatára terveztek. A háttérmodul használatával a TensorFlow és Theano könyvtárból a lehető legtöbb háttérfunkciót használhatjuk. A háttérkönyvtár modul használatához meg kell adnunk a használandó háttérkönyvtárat a „keras.json” konfigurációs fájlban, amelyet a rejtett .keras mappában hoztunk létre. Alapértelmezés szerint a háttérprogram „TensorFlow”-ként van megadva, de módosíthatja másra is, például Theano-ra vagy CNTK-ra.

Példánkban a TensorFlow könyvtárat fogjuk használni háttérprogramként. A háttérrendszer konfigurációinak a „keras” gyökérmappa keras.json fájljából való betöltéséhez használja:

  • keras import backendből mint k

Miután sikeresen importálta a háttérrendszert a keras.json fájlból, ideje beszerezni a háttérinformációkat a „k” változó használatával a lekérendő változóval. Először is lekértük egy általunk használt és már importált háttérprogram nevét a „backend()” függvénnyel. A „Tensorflow”-t adja vissza háttérértékeként. A háttér lebegő értékének meghatározásához a floatx() függvényt a Keras „k” változóobjektumán keresztül hívtuk meg. Ez azt mutatja, hogy a float32 értéket használtuk.

A képadatok formátumának meghatározásához használja az image_Data_format() függvényt a „k” változóval. Használatakor azt mutatja, hogy a háttérrendszerünk a „channels_last” képadatformátumot használja. A háttér kitevő hatványának meghatározásához hívja meg az epsilon() függvényt a „k” változóval. Azt adja vissza, hogy a háttérrendszer a „07” exponenciális hatványát fogja használni. Ez minden a háttérinformációk lekéréséről szól.

Get_uid() függvény

Itt az ideje, hogy vessen egy pillantást a TensorFlow néhány háttérfunkciójára, hogy megértse a funkcióit. Az egyik leggyakrabban használt háttérfüggvénye a „get_uid() függvény, amely az általunk használt alapértelmezett gráf azonosítására szolgál. Ha ezt az előtag=’’ paraméterrel használná, az „1”-et adna vissza, azaz a használatnak megfelelően. Ha ezt ismételten használnánk, akkor a „2”-t adná vissza, ahogyan azt újra hívtuk, és a grafikon értéke megnövekedett. A „reset_uids” függvény használata után a grafikon felhasználói azonosítója 0-ra áll vissza. Ezért a get_uid() függvény ismételt használata 1-gyel növelné.

Helyőrző() függvény

A tenzor a placeholder() függvényt használta különböző méretű alakzatok megtartására. Például a következő ábrán arra használjuk, hogy a 3D-s képet tenzorban tartsuk a „k” Keras-változón keresztül, és elmentsük egy másik „d” változóba. A „d” változó kimenete a helyőrzőben használt alakzat tulajdonságait mutatja.

Az „int_shape()” függvény a „d” helyőrzőbe mentett érték alakjának megjelenítésére szolgál.

Dot() függvény

Szorzott már valaha két vektort? Ha igen, akkor nem lesz kihívás két tenzor szorzása. Ehhez a háttérkönyvtár előállt a „pont” funkcióval. Először is, a két különböző alakzat megtartásához a placeholder() függvény alakzatértékeit használtuk az első 2 sorban, hogy két „x” és „y” tartót hozzunk létre. A dot() függvény az „x” és „y” tartót vette a tenzorok szorzásához, és az eredményt egy másik „z” változóba menti. A „z” tenzor használatakor a képernyőn megjelenítette a szorzott eredő tenzor alakzatot (1, 5).

Ones() függvény

A háttérmodul onees() függvénye ismert, hogy egy adott alakzat összes értékét 1-re inicializálja. Például az ones() függvényt a tenzor alakzaton (3,3) használtuk, és az eredményt elmentettük ide. a „v” változó. Az eval() függvény itt ki van vetve, hogy kiértékelje a „v” változó értékét, és megjelenjen a Python környezetben. Cserébe az alakzatot (3,3) egy float32 adattípusú összes alak mátrixává alakította.

Batch_dot() függvény

A tenzorköteg határozza meg a rendezendő minták teljes számát a modell frissítése előtt. A TensorFlow backend batch_dot() függvénye elsősorban két különböző kötegelt adat szorzási eredményének kiderítésére szolgál. Ezért létrehoztunk két v1 és v2 tenzorváltozót, és az Input() függvénnyel mentettük őket bemenetként a v1-be és a v2-be. Ezt követően mind a v1, mind a v2 tenzorváltozón kipróbáltuk a batch_dot() függvényt, és az eredményül kapott érték egy másik „v3” változóba kerül mentésre. A v3 változó kinyomtatásakor cserébe megtaláltuk a kapott alakzatot (2,2).

Változó funkció

Ha valaha más nyelven dolgozott, előfordulhat, hogy sok változót inicializált a „var” kulcsszóval vagy anélkül. Sokszor előfordulhat, hogy inicializálta a változókat adattípusaikkal, például egész számmal, karakterlánccal vagy karakterrel. A Python Keras könyvtáron belül a variable() függvény segítségével bármilyen változót létrehozhatunk bizonyos tenzoradatokon minták formájában.

A következő képen egy „d” változót hoztunk létre úgy, hogy a két lista mintaadatát hozzáadtuk egy variable() függvényhez a „k” Keras objektummal. Miután hozzáadtuk ezt a változót, meghívtuk a „d” változón a transpose() függvényt, hogy megtudjuk, hogyan került át egy mintaadat a „k” Keras objektumon keresztül. Az eredményül kapott transzponálás egy „val” változóba kerül mentésre. A Python nyelv print utasítását használták itt a „val” eredő változó értékének kinyomtatására. A print utasítás megjeleníti a „d” változóra alkalmazott függvényválasztást és az egyes listák elemeinek teljes számát.

Ezt követően a „val” változón az „eval” függvényt próbáltuk ki, hogy a minták transzponálását a „d” változóhoz adjuk, és a print függvény megjelenítse azt. A kimenetben két lista transzponálása látható.

Az előző kódillusztráció egyszerű Python-függvények használatával valósult meg anélkül, hogy bármilyen Python-könyvtárat importált volna. Két adatkészlet „transzponálása” a NumPy tömbök segítségével kereshető meg. Ehhez a NumPy könyvtárat az elején „n”-ként kell importálnunk. Az alapformátum ugyanaz, de az alakzat adatkészletet a „tömb” kulcsszóval kell inicializálnunk a „változó” kulcsszó használata helyett. A minta NumPy tömböt vissza kell tartani a „d” változóhoz. Ugyanezt az „n” NumPy objektumot használják a „d” változón a transpose() függvény meghívására, és az eredményt a „val” változóba mentjük.

A print utasítás a „val” változót hívja meg, hogy megjelenítse a transzpozíciós tenzorát. Látható, hogy a „val” változó eredő transzponált értékének megjelenítéséhez itt nincs szükségünk az „eval” függvényre. Most a változó függvényt használtuk a „d” argumentummal, és az eredményt a „z” változóba mentettük. Miután kipróbálta a print utasítást a „z” argumentumérték hozzáadásával, a kimenetet ugyanabban az előző formátumban jelenítette meg, mint a fenti változópéldában.

Is_sparse() függvény

A tenzorban szereplő „ritka” szót olyan ritka tenzorokra használják, amelyek többnyire nullákat tartalmaznak. Ebben a példában a háttérmodul is_sparse() függvényét fogjuk használni annak ellenőrzésére, hogy a tenzorban van-e a legtöbb nulla vagy sem.

Először a placeholder() függvényt hívtuk meg a tenzor alakjának (3,3) megtartásához, valamint a Sparse argumentum igazra állítását. Ez a helyőrző érték a változtatható „x”-nek maradna, és megjelenik. A kimenet az „x” helyőrző változóval kapcsolatos információkat jelenítette meg.

Például az adattípust, alakzatot és funkciót alkalmazzák rá. Ezt követően még egyszer kipróbáltuk a print utasítást, amelyben meghívtuk az is_Sparse() függvényt. Ez a függvény az „x” változót vette argumentumaként annak megjelenítésére, hogy az „x” tenzor ritka-e vagy sem. A kimenet „true”-t jelenít meg.

To_dense() függvény

Azt mondják, hogy a sűrű tenzor az, amely a kronológiai memóriablokkot használta az információk szomszédos tárolására és az információ értékeinek megjelenítésére. A háttérmodul „to_dense()” függvénye lehetővé teszi, hogy a ritka tenzort sűrű tenzorrá alakítsuk. Ezért ugyanazt a helyőrző függvényt használjuk a tenzor hozzáadásához az „x” változóhoz, és ezt a tenzort „sparse”-ra állítottuk.

A „to_dense()” függvényt az „x” sűrű tenzorváltozóra alkalmazzuk, azaz sűrű tenzorrá alakítjuk, és egy másik „res” változóba mentjük. Nos, a „res” maga egy sűrű tenzor. A print utasítás ki lett vetve a „res” változó kinyomtatásához. A „res” változóhoz használt print utasítások a „res” átalakított változóra vonatkozó információkat jelenítették meg, azaz a ritka sűrűséget és még sok mást sikeresen konvertáltak.

Ezután egy másik nyomtatási függvényt hívunk meg az is_sparse() függvény használatával annak ellenőrzésére, hogy a „res” változó ritka-e vagy sem. A kimenet azt mutatja, hogy a „res” változó nem ritka, azaz már átalakítottuk „sűrű” tenzorra.

Random_uniform_variable() függvény

A Keras háttérmodulban található random_uniform_variable() függvényt kifejezetten a tenzorok egyenletes eloszláson keresztüli inicializálására tervezték. Összesen három érv kell hozzá. A legelső „shape” argumentum az alakzat sorainak és oszlopainak meghatározására szolgál a sor űrlapon belül. Ha végzett matematikával, akkor lehet, hogy megtanulta az átlag és a szórás fogalmát.

A random_uniform_variable() metódusban a következő két argumentum az egyenletes eloszlástól való átlagos és tipikus eltérés. Ezen az illusztráción belül két „x” és „y” tenzort inicializáltunk a standard egyenletes eloszlás használatával a random_uniform_variable() függvényen keresztül. Mindkét tenzor különböző alakformátumokat tartalmaz, azaz azonos átlaggal és szórással rendelkező sorokat és oszlopokat, azaz alacsony=0 és magas=1.

Ezt követően kidobjuk a „pont” függvényt, és a benne lévő „x” és „y” tenzorokat a szorzáshoz felhasználjuk. A szorzás eredménye a „z” változóba kerül mentésre. Végül az int_shape()-t kötelező használni a „z” eredő tenzor alakjának megjelenítéséhez. A kimenet a tenzort (2,2) mutatja.

Utils

Ha a Python mély tanulási koncepciójának néhány nagyon hasznos funkcióját szeretné használni, akkor a Keras könyvtár utils modulját kell használnia a szkriptekben. Például, ha adatait HDF5Matrix formátumban szeretné megjeleníteni, importálnia kell a HDF5Matrix osztályt, és használnia kell a HDF5Matrix funkcióját a szkriptben.

To_categorical() függvény

Ez a funkció lehetővé teszi egy osztályvektor mátrixsá, azaz bináris osztálymátrixsá történő módosítását. Tegyük fel, hogy importáltuk a to_categorical() függvényt az utils modulból, és inicializáltunk egy „A” vektort. Az „A” vektort átadtuk a to_categorical() függvénynek. Megjelenik az „A” osztályvektor bináris mátrixa.

print_summary() függvény

Egy olyan modell összefoglalójának kinyomtatásához, amelyet a környezetünkben kiöntöttünk, a print_summary függvényt használtuk.

plot_model() függvény

A plot_model() függvény a modellt pont formátumban jelöli, és lehetővé teszi, hogy dokumentumba mentse.

Következtetés

Összefoglalva azt mondhatjuk, hogy a Python nyelv elengedhetetlen nyelv a mai korban, hiszen minden felgyorsul, és a technológia is őrülten gyorsan fejlődik. Ebben a tanulási útmutatóban végig a Python Keras könyvtárának a mélytanulásban és a mesterséges neurális hálózatokban való használatán dolgoztunk. Ehhez a „TensorFlow” háttérkönyvtár fontosságát és használatát is áttekintettük, hogy egyértelmű megértést kapjunk. Ezenkívül megvitattunk és elmagyaráztunk minden konfigurációt, amely a Keras és Anaconda környezet beállításához szükséges Pythonban az Ubuntu 20.04 Linux operációs rendszeren belül. Ezt követően egyenként alaposan megvitattuk a Keras modelleket, rétegeket és modulokat, valamint azok leggyakrabban használt funkcióit. A Function API-modell bemutatásához kérjük, ellenőrizze a hivatalos dokumentációt.