Grūti pamācība

Gruti Pamaciba



Vai kāds kādreiz ir zinājis par Python izmantošanu robotu projektēšanā un izstrādē? Ja tas tā ir, ir jāspēj pierādīt, ka Python ideja par dziļu mācīšanos ir vienīgais veids, kā to paveikt. Mašīnmācība ir optimizācijas metožu izpēte, kas smeļas iedvesmu no cilvēka prāta modeļa. Datu zinātnes disciplīnās, tostarp robotikā, mākslīgajā intelektā (AI), mūzikas un video identifikācijā un attēlu identifikācijā, pieaug dziļās mācīšanās izmantošana. Dziļās mācīšanās pieejas ir balstītas uz sintētiskiem neironu tīkliem. Pirms rakšanas dziļumā vispirms ir jāsaprot Keras jēdziens.

Grūti

Viens no visefektīvākajiem un lietotājam draudzīgākajiem spraudņiem padziļinātas mācīšanās algoritmu veidošanai ir uz Python balstīta paaugstināta mākslīgā neironu sistēma Keras, kas tiktu konstruēta papildus labi zināmām dziļās mācīšanās sistēmām, piemēram, TensorFlow vai CNTK. Lai nodrošinātu ātrāku izpēti, izmantojot dziļākus neironu tīklus, tas ir izstrādāts lietotājam draudzīgs, paplašināms un pielāgojams. Tas apstrādā gan pārejošos, gan izvelkamos tīklus atsevišķi, kā arī kombinācijā. Tas izmanto aizmugursistēmas pakotni, lai risinātu nelielas darbības, jo tā nevar tās pārvaldīt. Šajā nodarbībā tiks apskatīta Keras izvietošana, dziļās mācīšanās pamati, Keras struktūras, Keras slāņošana, Keras pakotnes un reāllaika programmēšana.

Iestatiet Keras operētājsistēmā Linux

01. darbība: sistēmas atjaunināšana

Pirms Python bibliotēkas Keras lietošanas pilnīgas demonstrācijas mums ir pilnībā jāatjaunina mūsu Linux mašīna, lai atvieglotu turpmāko instalēšanu. Šim nolūkam mums ir ātri jāatver lietojumprogramma “konsole” no sistēmas iebūvētajām lietojumprogrammām. Konkrētajā vaicājumu apgabalā esam pievienojuši Linux vaicājumu “update” ar “apt” utilītu un “sudo” privilēģiju, lai ātri atjauninātu mūsu sistēmu. Lai turpinātu šo procesu, ir nepieciešama mūsu lietotāja parole, lai mūsu sistēmu varētu pareizi atjaunināt.









02. darbība: instalējiet Python un Pip

Lai izmantotu Deep Learning, izmantojot Keras un TensorFlow, mūsu mašīnā ir jābūt konfigurētai Python jaunākajai versijai. Tāpēc mēs sākam instalēt Python atjaunināto pakotni kopā ar nepieciešamo “pip” utilītu mūsu sistēmā. Šim nolūkam mums atkal ir jāizmanto Ubuntu 20.04 Linux sistēmas “apt” utilīta “instalēšanas” vaicājumā čaulā, kam seko instalējamo pakotņu nosaukumi, t.i., Python3 un Python3-pip. Pēc šī vienkāršā vaicājuma izpildes konsoles apgabalā sistēma sāks instalēt un konfigurēt abas pakotnes mūsu sistēmā.







No otras puses, ja jūsu sistēmā ir instalēta vecā Python utilīta “pip” versija, pirms turpināt darbu, tā ir jāatjaunina.



Pēc veiksmīgas Python un tā “pip” utilīta konfigurācijas ir pienācis laiks jaunināt Python iestatīšanas rīkus, lai tuvākajā nākotnē izvairītos no problēmām. Tāpēc mēs esam izmēģinājuši instalēšanas vaicājumu ar utilītu “pip3” un opciju –upgrade, lai instalētu jauninājumu Setup Tools, t.i., iestatīšanas rīkus. Tā pieprasa pašreizējo mūsu sistēmas paroli, un mēs to esam pievienojuši.

03. darbība: instalējiet TensorFlow

Mašīnmācības un uzraudzītu neironu modeļu veidošanai TensorFlow ir vispazīstamākā simboliskā matemātikas pakotne. Pēc instalēšanas mēs esam izpildījuši to pašu “pip3” instalēšanas vaicājumu, kam seko “Tensorflow” pakotnes nosaukums.

Citas ar TensorFlow saistītās utilītas ir pilnībā jāinstalē sistēmā. Šīs utilītas tiks instalētas kopā ar TensorFlow, un tas var ilgt līdz 10 minūtēm vai vairāk.

04. darbība: instalējiet svarīgākās pakotnes

Pēc TensorFlow auglīgās konfigurēšanas Ubuntu 20.04 sistēmā mums ir jākonfigurē arī dažas būvēšanas pakotnes, kā arī dažas citas utilītas, piemēram, “git” un “cmake”. Izmēģinot to pašu “apt” rīku, mēs esam instalējuši daudzas nepieciešamās pakotnes, kā parādīts zemāk:

Šis solis piesaista mūsu uzmanību, apstiprinot šo instalāciju. Pieskarieties “y” un turpiniet.

05. darbība: izveidojiet virtuālo vidi

Pēc nepieciešamo instalāciju veikšanas ir pienācis laiks izveidot virtuālo vidi. Tāpēc mums ir jāizmanto Python3 utilīta ar opciju “-m”, lai izveidotu virtuālo vidi “kerasenv”, izmantojot mainīgo “venv”. Vaicājums “ls” parāda, ka vide ir izveidota.

Tagad mums jāpārvietojas Keras mapes virtuālajā vidē. Tātad, mēs esam izmantojuši 'cd' instrukciju kopā ar virtuālās vides mapes nosaukumu. Pēc tam mēs esam pārvietojušies šīs virtuālās vides mapē “bin” un uzskaitījuši tās apakšdaļu. Lai aktivizētu šo Python vidi, mēs izmēģinājām “avota” instrukciju tās vaicājuma apgabalā kopā ar failu “aktivizēt”. Virtuālā vide tiek aktivizēta ar nosaukumu “kerasenv”.

06. darbība: instalējiet Python bibliotēkas

Pēc veiksmīgas Python virtuālās vides iestatīšanas pirms Keras instalēšanas ir jāinstalē visas nepieciešamās Python bibliotēkas. Tāpēc mēs vispirms esam instalējuši pandas bibliotēku tajā pašā virtuālajā vidē, izmantojot Python pakotni “pip”.

Sistēma sāks to konfigurēt Python virtuālajā vidē, kā parādīts attēlā:

Pēc pandu bibliotēkas instalēšanas mēģiniet instalēt NumPy bibliotēku, izmantojot šādu metodi:

Ļoti līdzīgā veidā instalējiet Python scipy bibliotēku tajā pašā vidē.

Tagad instalējiet Python bibliotēku matplotlib vidē.

Python izmanto klasterizācijas un regresijas algoritmus mašīnmācībā, lai veiktu neironu tīklu modeļus. Šim nolūkam tai ir sci-kit mācību bibliotēka, ko mēs instalējam ar utilītu “pip”, kā arī opciju “-u”, lai konfigurētu arī nepieciešamās pakotnes.

Scikit bibliotēkas instalācijas apstrāde ir parādīta zemāk:

Lai veiktu vizualizāciju dziļās mācībās, mums ir jāinstalē Python jūras bibliotēka. Tāpēc mēs to instalējām tajā pašā vidē ar vaicājumu “instalēt”.

07. darbība. Instalējiet Keras bibliotēku

Pēc visu nepieciešamo Python priekšnosacījumu bibliotēku instalēšanas mēs beidzot varam instalēt Keras Python virtuālajā vidē. Šim nolūkam tiks izmantota utilīta “pip” mūsu “instalēšanas” vaicājumā ar moduļa nosaukumu, t.i., “Keras”. Ja sistēma parāda, ka tās prasība jau ir izpildīta, tas nozīmē, ka tā jau ir instalēta un konfigurēta.

Ja tas vēl nav instalēts, šis vaicājums sāks tā lejupielādi un konfigurēšanu virtuālajā vidē bez vienas sekundes aizkaves, un tiks parādīta apstrāde, kā norādīts tālāk:

Pēc pilnīgas bibliotēkas “Keras” konfigurēšanas un instalēšanas virtuālajā vidē ir pienācis laiks parādīt visu informāciju par to čaulā, izmantojot vaicājumu “pip show”. Šī “show” vaicājuma izpilde ir parādījusi mūsu Python virtuālajā vidē instalēto Keras versiju, tās nosaukumu, kopsavilkumu, tīmekļa mājaslapu, autoru, autora e-pastu, licenci, atrašanās vietu, ko tā ieņem mūsu sistēmā un daudz ko citu. vairāk, kā parādīts zemāk:

Pēc Python bibliotēku Keras un TensorFlow labākajām instalācijām mums ir jāaizver virtuālā vide. Lai to izdarītu, čaulā izmēģiniet vaicājumu “deaktivizēt” un aizveriet.

08. darbība: instalējiet Anaconda Cloud

Python ir mākonis ar nosaukumu 'Anaconda', kas ir nepieciešams, lai Python veidotu neironu tīklu piemērus. Tāpēc mēs savā sistēmā esam lejupielādējuši tā izpildes failu.

Šis fails ir atradies pašreizējā Linux mašīnas mājas mapē saskaņā ar vaicājumu “ls”. Vispirms jums ir jāpārliecinās, vai tā ir kontrolsumma, t.i., vai tā ir pilnībā pareiza, izmantojot sha256sum vaicājumu.

Pēc tam mums savā sistēmā jāinstalē lejupielādētais anaconda Bash fails, izmantojot instrukciju “Bash” un faila nosaukumu tajā pašā konsolē. Tas mums lūdza pārskatīt licences līgumu pirms instalēšanas. Tātad, mēs pieskārāmies 'Enter', lai turpinātu.

Pēc licences līguma izskatīšanas tas lūdz mums pieskarties “jā”, ja mēs piekrītam noteikumiem. Jums ir jānospiež Enter, lai turpinātu tā instalēšanu tajā pašā vietā vai ierakstiet ceļu uz direktoriju, kurā vēlaties to instalēt. Pretējā gadījumā izmantojiet taustiņu kombināciju Ctrl-c, lai atceltu instalēšanu.

Tas parādīs garu pakotņu sarakstu, kas tiks instalētas šajā procesā. Pēc dažu darījumu izpildes tas sāks pakotņu instalēšanu.

Pēc kāda laika anakonda tika veiksmīgi uzstādīta ar tās papildu pakotnēm.

Fails “aktivizēt” no anaconda mapes ir jāpalaiž, izmantojot “avota” vaicājumu kā sakni.

Mēģiniet palaist anaconda navigatoru, izmantojot šādu vaicājumu.

Lai izveidotu un strādātu ar jauno conda vidi, izmēģiniet “conda create” instrukciju ar nosaukuma opciju, kam seko jaunās vides nosaukums, t.i., PyCPU.

Šim procesam ir nepieciešams mūsu apstiprinājums par jaunās vides izveidi. Pieskarieties “y”.

Lai aktivizētu un palaistu jaunizveidoto conda vidi, izmantojiet vaicājumu “conda activate” ar jaunās vides nosaukumu, t.i., PyCPU vide tagad ir aktivizēta.

09. darbība: instalējiet Spyder IDE

Lai varētu izpildīt Python programmas, šajā vidē ir jāinstalē Spyder IDE. Šim nolūkam mēs esam izmēģinājuši conda instalēšanas vaicājumu PyCPU vides apvalkā ar atslēgvārdu “spyder”.

Pieskarieties “y”, lai turpinātu Spyder instalēšanu.

10. darbība. Instalējiet Pandas un Keras bibliotēku

Pēc Spyder instalēšanas instalējiet Panda bibliotēku Python anaconda vidē, izmantojot conda instalēšanas vaicājumu ar opciju –c.

Lai turpinātu, vēlreiz nospiediet pogu “y”.

Pēc veiksmīgas pandu konfigurācijas instalējiet Keras bibliotēku ar tādu pašu vaicājumu.

Turpiniet pēc noklikšķināšanas uz pogas “y”.

Varat palaist Spyder IDE anaconda pašreizējās vides konsolē šādi:

Spyder IDE gatavojas palaišanai.

Slēptā mape “.keras” atrodas mājas direktorijā. Atveriet to un atveriet tā failu “keras.json”, lai tam pievienotu tālāk norādītās konfigurācijas.

Iestatiet Keras un TensorFlow operētājsistēmā Windows

Lai iestatītu Keras un TensorFlow Windows vidē, jums ir jāpārliecinās, ka tajā jau ir iestatīta Python valoda kopā ar tās “pip” bibliotēku un Anaconda Navigator. Pēc tā iestatīšanas jums tas jāatver no meklēšanas apgabala un jāpārvietojas cilnē “vide”. Šajā cilnē jūs atradīsiet vides nosaukumu, kurā pašlaik strādājat, t.i., bāze. Tālāk esošajā apgabalā atradīsit šādu cilni. Pieskarieties opcijai “Izveidot”.

Šeit jums ir jāizveido jauns vides nosaukums “TensorFlow”, t.i., pašlaik atrodas bāzes vidē. Atlasiet izmantojamo Python jaunāko versiju un pieskarieties pogai “Izveidot”, lai turpinātu.

Jūs redzēsiet, ka vide ir sākusi ielādēt.

Pēc kāda laika TensorFlow vide tiek pilnībā instalēta.

Tā galējā kreisajā apgabalā varat redzēt visas instalētās un pieejamās Python bibliotēkas un moduļus, kā parādīts tālāk:

Tagad mums ir jāinstalē Python TensorFlow aizmugures bibliotēka, izmantojot šo apgabalu. Meklēšanas joslā ierakstiet “TensorFlow” un parādītajā sarakstā atzīmējiet to pašu korpusa pakotni, lai to instalētu. Pieskarieties pogai “Lietot”, lai turpinātu TensorFlow instalēšanu kopā ar tā apakšmoduļiem, piemēram, “Keras”.

Tas ir sācis darboties un konfigurēt TensorFlow mūsu Anaconda vidē.

Instalēšanas laikā tiks parādīts to apakšpakešu saraksts, kuras tiks instalētas Anaconda vidē. Nospiediet pogu “Lietot” un pagaidiet kādu laiku, līdz tas ir pabeigts.

Pēc kāda laika visas instalētās pakotnes atradīsit tajā pašā moduļu apgabalā. Varat redzēt, ka Keras bibliotēka ir instalēta kopā ar citām pakotnēm, un mums tā tagad nav jāinstalē.

Windows meklēšanas joslā meklējiet atslēgvārdu “Jupyter”. Lietojumprogramma ar nosaukumu “Jupyter Notebook (TensorFlow)” tiks parādīta kopā ar citām. Pieskarieties tam, lai palaistu Jupyter piezīmjdatoru ar iespējotu TensorFlow aizmugursistēmu. Izveidojiet jaunu Python failu un sāciet strādāt.

Deep Learning Via Hard

Padziļinātā mācīšanās ietver ieplūdes analīzi pa slāņiem, katrā slānī pakāpeniski iegūstot uzlabotā līmeņa informāciju no ievades. Keras nodrošina pilnu sistēmu, lai izveidotu jebkāda veida neironu tīklu. Gan radošs, gan neticami vienkārši saprotams, Keras. Tas nodrošina neironu tīklu modeļus, sākot no visnaivākajiem līdz lielākajiem un augstākajiem kompleksiem.

Mākslīgais neironu tīkls (ANN)

“Mākslīgā neironu tīkla” (ANN) metodoloģija, šķiet, ir visplašāk izmantotā un fundamentālākā dziļās mācīšanās metode. Viņi izņem norādes no cilvēka prāta, mūsu ķermeņa dabiskās vissarežģītākās sastāvdaļas, kas kalpo par modeli. Vairāk nekā 90 miljardi mikroskopisku šūnu, ko sauc par 'neironiem', veido indivīda smadzenes. Aksoni un dendrīti ir nervu šķiedru veidi, kas savieno neironus kopā. Aksona galvenā funkcija ir sūtīt datus no viena saistītā neirona uz nākamo. Lai iegūtu papildinformāciju, lūdzu, meklējiet Google meklētājprogrammā.

Keras arhitektūra

Keras API arhitektūra ir klasificēta trīs galvenajās daļās, kas uzskaitītas tālāk. Apskatīsim katru atsevišķi.

  • Modelis
  • Slānis
  • Pamata moduļi

Cietais modelis

Keras modelis sastāv tieši no diviem veidiem, t.i., secīgā un funkcionālā API.

Secīgs modelis

Būtībā secīgais modelis ir hronoloģisks Keras slāņu apkopojums. Vienkāršais, vienkāršotais secīgais modelis var aprakstīt gandrīz visus pašlaik izmantotos neironu tīklus. Pielāgotu modeli var izveidot, izmantojot modeļu klasi, ko atklāj secīgais modelis. Apakšklasifikācijas pieeju var izmantot, lai izveidotu mūsu pašu izsmalcinātu modeli. Secīgā modeļa demonstrācija ir parādīta zemāk.

Pievienot slāņus

Skripts ir sākts no secīgā režīma importēšanas, izmantojot keras.models, un otra līnija ir veidojusi secīgu modeli. Pēc tam, importējot blīvo slāni, tiek izveidots ievades slānis un modelim tiek pievienots ievades slānis. Slēptais blīvais slānis ir izveidots un pievienots modelim, un tas pats ir veikts izvades blīvajam slānim.

Piekļūstiet modelim

Jūs varat iegūt informāciju par sava modeļa slāņiem, ievades datiem, ko tas ir izmantojis, un tā izvades datiem. Funkcija model.layers ļauj piekļūt visiem slāņiem. Modelis.inputs rādīs ievades tenzorus, bet model.output izvades tenzorus.

Serializējiet modeli

Skriptā izmantoto modeli ir viegli atgriezt kā objektu vai JSON. Piemēram, funkcija get_config() nodrošina modeli kā entītiju/objektu. Funkcija from_config() izveido jaunu modeli, izmantojot objektu kā parametru vērtību.

Varat arī mainīt modeli uz JSON, izmantojot funkciju to_json().

Modeļa kopsavilkums

Lai iegūtu visu kopsavilkumu par modelī izmantotajiem slāņiem, kā arī papildu informāciju, izsauciet funkciju summary().

Apmāciet un prognozējiet modeli

Lai apmācītu un prognozētu, mums šajā sakarā jāizmanto kompilēšanas funkcija, fit funkcija, jānovērtē funkcija un jāparedz funkcija.

Cietie slāņi

Katrs ievades, slēptais un ienesīguma slānis ierosinātajā neironu tīklu modelī atbilst citam Keras slānim reālajā modelī. Jebkuru sarežģītu neironu tīklu var ātri izveidot, izmantojot daudz Keras bibliotēkas iepriekš izveidoto slāņu. Mums ir dažādi Keras slāņi, t.i., pamata slāņi, apvienošanas slāņi, atkārtoti slāņi un konvolūcijas slāņi. Jūs varat tos izpētīt, meklējot tīmeklī. Pirmajās divās rindās ir importēts secīgais režīms, blīvais, aktivizēšanas un izlaišanas slānis.



Mēs esam izmēģinājuši Sequential() API, lai izveidotu pamešanas secīgu modeli. Atmetot aktivizācijas modeli “relu”, mēs esam izveidojuši blīvu slāni, izmantojot “Dense” API. Lai nodrošinātu pārmērīgu blīvā slāņa pielāgošanu, mēs esam izmantojuši Dropout() API, t.i., atbiršanas slāņošanu, izmantojot funkciju dropout(). Pēc tam mēs šeit esam izmantojuši blīvāku slāni ar “relu” aktivizācijas modeli. Lai apstrādātu blīvos slāņus no pārmērīgas pielāgošanas, mums ir jāizmanto Dropout slāņi. Galu galā mēs esam nolaiduši savus pēdējos blīvos slāņus, izmantojot “softmax” tipa aktivizācijas modeli.







Vai esat kādreiz gatavošanas laikā veicis slāņošanu? Ja tā, tad šo jēdzienu jums nebūtu grūti saprast. Viena līmeņa rezultāts kalpos kā ievades dati nākamajam slānim. Šeit ir norādītas pamata lietas, kas nepieciešamas, lai izveidotu pilnīgi jaunu slāni:



  • Ievades datu forma
  • Kopējais neironu/vienību skaits slānī
  • Inicializētāji
  • Regulatori
  • Ierobežojumi
  • Aktivizācijas

Ievades datu forma

Python valodā jebkura veida ievade ir pārveidota veselu skaitļu masīvā un pēc tam pievienota algoritma modelim. Python ietvaros mums ir jānorāda ievades forma, lai iegūtu izvadi atbilstoši mūsu prasībām. Turpmākajos piemēros esam norādījuši ievades formu (3,3), t.i., 3 rindas un 3 kolonnas. Izvade ir parādījusi matricu.







Inicializētāji

Keras Layers inicializatoru modulis nodrošina mums daudzas funkcijas, lai norādītu konkrētu ievades datu svaru. Piemēram, funkcija nulles () norāda 0 visiem, vieni () norāda visiem, un funkcija konstante () norādīs noteiktu konstantes vērtību, ko lietotājs pievienos visiem un citiem. Lai labāk izprastu, identitātes matricas ģenerēšanai esam izmantojuši funkciju Identity(). Pārējās funkcijas var meklēt arī meklētājprogrammā.



Ierobežojumi

Ir pieejamas dažādas ierobežojuma funkcijas, lai piemērotu ierobežojumus slāņa “svara” parametram, t.i., nenegatīvs, vienības norma, maksimālā norma, minimālā norma un daudz ko citu. Nākamajā ilustrācijā mēs esam piemērojuši ierobežojuma normu, kas ir mazāka par svaru vai vienāda ar to. Parametrs “max_value” ir piemērojamā ierobežojuma augšējā robeža, un ass ir dimensija, kurai ierobežojums tiktu piemērots, t.i., 1. dimensija.

Regulatori

Optimizācijas laikā tas uzliek dažādas maksas par slāņa īpašumu. Lai to izdarītu, tas arī nāca klajā ar dažām funkcijām, t.i., L1 regularizer, L2 regularizer un “LI and L2” Regulaizer. Šeit ir visvienkāršākā L1 regulatora funkcijas ilustrācija:

Aktivizācijas

Lai noteiktu, vai konkrēts neirons ir aktīvs vai nē, tiek izmantota unikāla funkcija, ko sauc par aktivizācijas funkciju. Aktivizācijas funkcija sarežģīti pārveido ienākošos datus, kas palīdz neironiem efektīvāk pētīt. Tālāk sniegtajos piemēros ir norādītas vairākas aktivizācijas metodes.

Cietie moduļi

Kā zināms, programmēšanas moduļos parasti ir funkcijas, klases un mainīgie, kas izmantojami dažādiem un īpašiem mērķiem. Tāpat arī Python Keras bibliotēkā ir daudz moduļu. Visas nepieciešamās zināšanas par Keras moduļiem varat iegūt tīmeklī.

Aizmugursistēma

Viens no tā pazīstamākajiem un lietotākajiem moduļiem ir “Backend” modulis, kas ir paredzēts Python aizmugures bibliotēkas, piemēram, TensorFlow un Theano, lietošanai. Izmantojot aizmugursistēmas moduli, mēs varam izmantot pēc iespējas vairāk aizmugursistēmas funkciju no TensorFlow un Theano bibliotēkas. Lai izmantotu aizmugursistēmas bibliotēkas moduli, mums ir jānorāda aizmugursistēmas bibliotēka, kas tiks izmantota konfigurācijas failā “keras.json”, kuru esam izveidojuši slēptajā .keras mapē. Pēc noklusējuma aizmugursistēma ir norādīta kā “TensorFlow”, taču varat to mainīt arī uz kādu citu, t.i., Theano vai CNTK.

Mūsu piemērā kā aizmugursistēmu izmantosim TensorFlow bibliotēku. Lai ielādētu aizmugursistēmas konfigurācijas no saknes mapes “keras” faila keras.json, izmantojiet:

  • no keras importa backend kā k

Pēc veiksmīgas aizmugursistēmas importēšanas no faila keras.json ir pienācis laiks iegūt aizmugursistēmas informāciju, izmantojot mainīgo “k” ar ienesamo mainīgo. Pirmkārt, mēs esam ienesuši aizmugursistēmas nosaukumu, kuru esam izmantojuši un jau importējuši, izmantojot funkciju “backend ()”. Tas atgriež “Tensorflow” kā savu aizmugurvērtību. Lai iegūtu aizmugursistēmas peldošo vērtību, mēs esam izsaukuši funkciju floatx (), izmantojot Keras mainīgā objektu “k”. Tas parāda, ka mēs esam izmantojuši float32 vērtību.

Lai iegūtu attēla datu formātu, izmantojiet funkciju image_Data_format() ar mainīgo “k”. Izmantojot to, tas parāda, ka mūsu aizmugursistēma ir izmantojusi attēla datu formātu “channels_last”. Lai iegūtu aizmugursistēmas eksponenta jaudu, izsauciet funkciju epsilon () ar mainīgo “k”. Tas parāda, ka aizmugursistēma izmantos “07” eksponenciālo jaudu. Tas viss attiecas uz aizmugursistēmas informācijas iegūšanu.

Get_uid() funkcija

Ir pienācis laiks apskatīt dažas TensorFlow aizmugures funkcijas, lai izprastu tās funkcionalitāti. Viena no tās visbiežāk izmantotajām aizmugurfunkcijām “get_uid() funkcija, kas tiek izmantota, lai identificētu mūsu izmantoto noklusējuma grafiku. Izmantojot to ar prefiksu=’’ parametru, tiktu atgriezts “1”, t.i., atbilstoši lietojumam. Atkal, izmantojot to, atgrieztos “2”, kā mēs to atkal saucām, un diagrammas vērtība ir palielināta. Pēc funkcijas “reset_uids” izmantošanas grafika lietotāja ID vērtība tiks atiestatīta uz 0. Tādējādi, vēlreiz izmantojot funkciju get_uid(), tā tiktu palielināta par 1.

Viettura() funkcija

Tensors ir izmantojis placeholder() funkciju, lai tajā turētu dažādas dimensijas formas. Piemēram, nākamajā ilustrācijā mēs to izmantojām, lai turētu 3-D attēlu tensorā, izmantojot Keras mainīgo “k”, un saglabātu to citā mainīgajā “d”. Mainīgā “d” izvade parāda vietturā izmantotās formas īpašības.

Funkciju “int_shape()” izmanto, lai parādītu vietturi “d” saglabātās vērtības formu.

Dot() funkcija

Vai esat kādreiz reizinājis divus vektorus? Ja tā, tad jums nebūs grūti reizināt divus tenzorus. Šim nolūkam aizmugures bibliotēka nāca klajā ar funkciju “punkts”. Pirmkārt, lai noturētu divas dažādas formas, pirmajās 2 rindās esam izmantojuši formas vērtības funkcijā placeholder (), lai izveidotu divus turētājus “x” un “y”. Dot() funkcija ir izmantojusi “x” un “y” turētājus, lai reizinātu abus tenzorus un saglabātu rezultātu citā mainīgajā “z”. Izmantojot “z” tensoru drukāšanai, ekrānā tika parādīta reizināta iegūtā tenzora forma (1, 5).

Ones() Funkcija

Aizmugursistēmas moduļa funkcija ones() ir zināma, lai inicializētu visas noteiktas formas vērtības uz 1. Piemēram, mēs esam izmantojuši funkciju ones() tenzora formā (3, 3) un saglabājuši rezultātu mainīgais “v”. Funkcija eval () šeit tiek atmesta, lai novērtētu mainīgā “v” vērtību un parādītu Python vidē. Savukārt tas ir pārveidojis formu (3, 3) par masīva matricu no visām matricām ar float32 datu tipu.

Batch_dot() funkcija

Tensoru partija norāda kopējo paraugu skaitu, kas jākārto pirms modeļa atjaunināšanas. TensorFlow aizmugursistēmas funkcija batch_dot() galvenokārt tiek izmantota, lai noskaidrotu divu dažādu pakešdatu reizināšanas rezultātu. Tāpēc mēs esam izveidojuši divus tenzora mainīgos v1 un v2 un izmantojām funkciju Input (), lai tos saglabātu v1 un v2 kā ievadi. Pēc tam mēs esam izmēģinājuši funkciju batch_dot () gan tensora mainīgajiem, gan v1, gan v2, un iegūtā vērtība tiks saglabāta citā mainīgajā “v3”. Drukājot mainīgo v3, mēs pretī atradām iegūto formu (2, 2).

Mainīga funkcija

Ja kādreiz esat strādājis ar kādu citu valodu, iespējams, esat inicializējis daudzus mainīgos ar atslēgvārdu “var” vai bez tā. Daudzas reizes, iespējams, esat inicializējis mainīgos ar to datu veidiem, piemēram, vesels skaitlis, virkne vai rakstzīme. Python Keras bibliotēkā mēs varam izveidot jebkuru mainīgo, izmantojot funkciju variable () dažiem tenzora datiem paraugu veidā.

Nākamajā attēlā mēs esam izveidojuši mainīgo “d”, pievienojot divu paraugu saraksta datus mainīgā () funkcijai ar Keras objektu “k”. Pēc šī mainīgā pievienošanas mēs esam izsaukuši funkciju transpose () šim mainīgajam “d”, lai noskaidrotu parauga datu transponēšanu tajā, izmantojot Keras objektu “k”. Iegūtā transponēšana tiktu saglabāta mainīgajā “val”. Python valodas drukas paziņojums šeit ir izmantots, lai drukātu “val” rezultējošā mainīgā vērtību. Drukas paziņojumā ir parādīta funkcijas izvēle, ko esam piemērojuši mainīgajam “d”, un kopējais elementu skaits katrā sarakstā.

Pēc tam mēs izmēģinājām funkciju “eval” mainīgajam “val”, lai iegūtu paraugu transponēšanu, kas pievienoti mainīgajam “d”, un drukas funkcija to attēloja. Izvadē var redzēt divu sarakstu transponēšanu.

Iepriekšējā koda ilustrācija tika panākta, izmantojot vienkāršas Python funkcijas, neimportējot nevienu konkrētu Python bibliotēku. Divu datu kopu “transponēšanu” var atrast, izmantojot NumPy masīvus. Lai to izdarītu, mums sākumā ir jāimportē NumPy bibliotēka kā “n”. Pamatformāts ir tāds pats, taču mums ir jāinicializē formas datu kopa ar atslēgvārdu “masīvs”, nevis jāizmanto atslēgvārds “mainīgais”. Parauga NumPy masīvs jāsaglabā atpakaļ uz mainīgo “d”. Tas pats NumPy objekts “n” tiek izmantots, lai izsauktu funkciju transpose () mainīgajam “d” un saglabātu tā rezultātu mainīgajā “val”.

Drukas paziņojumā ir izsaukts mainīgais “val”, lai parādītu tā transponēšanas tensoru. Varat redzēt, ka, lai parādītu iegūto mainīgā “val” transponēto vērtību, mums šeit nav nepieciešama funkcija “eval”. Tagad mēs esam izmantojuši mainīgā funkciju ar argumentu “d” un saglabājuši rezultātu mainīgajā “z”. Pēc drukāšanas priekšraksta izmēģināšanas, pievienojot tajā argumenta vērtību “z”, tas parādīja izvadi tajā pašā iepriekšējā formātā, ko izmēģinājām iepriekš minētajā mainīgā piemērā.

Is_sparse() funkcija

Vārds “rets” tensorā tiek lietots retam tensoram, kurā galvenokārt ir ieraksti ar nullēm. Šajā piemērā mēs izmantosim aizmugursistēmas moduļa funkciju is_sparse (), lai pārbaudītu, vai tensorā ir lielākā daļa nulles.

Pirmkārt, mēs esam izsaukuši funkciju placeholder(), lai saglabātu tenzora formu (3, 3), kā arī argumentu Sparse, kas iestatīts uz True. Šī viettura vērtība tiks saglabāta līdz mainīgajam “x” un tiek parādīta. Izvadē tika parādīta informācija par viettura mainīgo “x”.

Piemēram, tam tiek piemērots tā datu tips, forma un funkcija. Pēc tam mēs vēlreiz izmēģinājām drukāšanas paziņojumu, izsaucot tajā esošo funkciju is_Sparse (). Šī funkcija ir izmantojusi mainīgo “x” kā argumentu, lai parādītu, vai “x” tensors ir mazs vai nē. Izvade parāda “true”.

To_dense() funkcija

Tiek uzskatīts, ka blīvais tensors ir tas, kas izmantoja hronoloģisko atmiņas bloku, lai saglabātu informāciju blakus un attēlotu arī informācijas vērtības. Aizmugursistēmas moduļa funkcija “to_dense()” ļauj pārveidot reto tensoru blīvā tensorā. Tāpēc mēs izmantojam to pašu viettura funkciju, lai pievienotu tensoru mainīgajam “x”, un šis tensors ir iestatīts uz “sparse”.

Funkcija “to_dense()” tiek piemērota blīvā tensora mainīgajam “x”, t.i., lai to pārveidotu par blīvu tensoru un saglabātu citā mainīgajā “res”. Tagad “res” ir pats blīvs tensors. Drukāšanas paziņojums ir noņemts, lai izdrukātu mainīgo “res”. Drukāto paziņojumu izmantošana mainīgajam “res” rādīja informāciju par “res” pārveidoto mainīgo, t.i., veiksmīgi pārveidots rets par blīvu un daudz ko citu.

Pēc tam tiek izsaukta cita drukāšanas funkcija, izmantojot tajā esošo funkciju is_sparse (), lai pārbaudītu, vai mainīgais “res” ir mazs. Izvade rāda, ka mainīgais “res” nav mazs, t.i., jo mēs to jau esam pārveidojuši par “blīvu” tensoru.

Random_uniform_variable() Funkcija

Funkcija random_uniform_variable() Keras aizmugursistēmas modulī ir īpaši izstrādāta tenzora inicializācijai, izmantojot vienotu sadalījumu. Pavisam nepieciešami trīs argumenti. Pats pirmais arguments “forma” tiek izmantots, lai definētu formas rindas un kolonnas korešu formā. Ja esat apguvis matemātiku, iespējams, esat apguvis vidējās un standarta novirzes jēdzienu.

Random_uniform_variable() metodē nākamie divi argumenti ir vidējā un tipiskā novirze no vienmērīga sadalījuma. Šajā ilustrācijā mēs esam inicializējuši divus tensorus “x” un “y”, izmantojot standarta vienmērīgo sadalījumu, izmantojot funkciju random_uniform_variable(). Abiem tenzoriem ir dažādi formas formāti, t.i., rindas un kolonnas ar vienādu vidējo un standarta novirzi, t.i., zems = 0 un augsts = 1.

Pēc tam mēs noņemam funkciju “punkts”, ņemot tajā esošos tenzorus “x” un “y” reizināšanai. Šīs reizināšanas rezultāts tiks saglabāts mainīgajā “z”. Galu galā int_shape() ir jāizmanto, lai parādītu rezultējošā tensora “z” formu. Izvade parāda tensoru (2,2).

Utils

Ja vēlaties izmantot dažas ļoti noderīgas funkcijas no Python dziļās mācīšanās koncepcijas, skriptos ir jāizmanto Keras bibliotēkas utils modulis. Piemēram, ja vēlaties parādīt savus datus HDF5Matrix formātā, jums ir jāimportē HDF5Matrix klase un skriptā jāizmanto tās HDF5Matrix funkcija.

To_categorical() funkcija

Šī funkcija ļauj pārveidot klases vektoru matricā, t.i., binārā klases matricā. Pieņemsim, ka mēs esam importējuši funkciju to_categorical () no utils moduļa un inicializējuši vektoru “A”. Vektors “A” ir nodots funkcijai to_categorical(). Šī klases vektora “A” binārā matrica ir parādīta.

print_summary() Funkcija

Lai izdrukātu kopsavilkumu par modeli, kuru esam izlaiduši savā vidē, tika izmantota funkcija print_summary.

plot_model() funkcija

Funkcija plot_model() apzīmē modeli punktu formātā un ļauj to saglabāt dokumentā.

Secinājums

Rezumējot, mēs varam teikt, ka Python valoda ir mūsdienu laikmetam nepieciešama valoda, jo viss kļūst ātri un tehnoloģijas ir tik traki ātri attīstījušās. Šīs mācīšanās vadlīnijas laikā mēs esam izmantojuši Python Keras bibliotēku dziļās mācīšanās un mākslīgajos neironu tīklos. Šim nolūkam mēs esam arī izpētījuši tās aizmugures bibliotēkas “TensorFlow” nozīmi un izmantošanu, lai iegūtu skaidru izpratni. Turklāt mēs esam apsprieduši un izskaidrojuši katru konfigurāciju, kas nepieciešama, lai iestatītu Keras un Anaconda vidi Python operētājsistēmā Ubuntu 20.04 Linux. Pēc tam mēs esam rūpīgi apsprieduši Keras modeļus, slāņus un moduļus pa vienam, kā arī to visbiežāk izmantotās funkcijas. Lai demonstrētu Function API modeli, lūdzu, pārbaudiet oficiālo dokumentāciju.