Cheat Sheet TensorFlow za LuckyTemplates

TensorFlow je Googlov vrhunski okvir za strojno učenje in vsaka nova različica prinaša široko paleto zmogljivosti in funkcij. Ko se povzpnete po krivulji učenja, lahko pišete sofisticirane aplikacije za strojno učenje in jih izvajate z veliko hitrostjo.

Toda vzpenjanje po krivulji učenja ni enostavno – z veliko močjo prihaja velika zapletenost. Da bi vam pomagali pri vzponu, se morate zavedati vrst podatkov TensorFlow, pripomočka TensorBoard in uvajanja aplikacij v Googlov strojni učni mehanizem.

Osnovni tipi podatkov v TensorFlow

Aplikacije TensorFlow lahko pišete v več različnih jezikih, kot so Python, C++ in Java. Ne glede na to, kateri jezik uporabljate, morate poznati vrsto podatkovnih tipov, specifičnih za TensorFlow:

  • Tenzorji in označevalci mesta: Tenzor je primerek razreda Tensor in služi kot večdimenzionalni niz splošnega namena. Označevalnik mesta je tudi Tensor, vendar namesto inicializacije v kodi prejme podatke iz seje, ki bodo veljavni med eno izvedbo seje. Nadomestni znaki omogočajo posodabljanje vsebine tenzorja od izvajanja ene seje do naslednje.
  • Grafi: graf je vsebnik, podoben seznamu ali zbirki. Naenkrat je lahko aktiven samo en graf in ko kodirate operacijo, ki sprejema tenzorje ali spremenljivke, so tenzorji, spremenljivke in operacija shranjeni kot elementi v grafu. Ko ustvarite optimizator in pokličete njegovo metodo minimize, TensorFlow shrani nastalo operacijo v graf.
  • Seje . Grafi shranjujejo operacije, vendar jih ne morejo izvajati sami. Namesto tega morate ustvariti sejo in poklicati njeno metodo za zagon. Če pokličete run s tenzorjem ali operacijo, bo metoda izvedla operacije v grafu, potrebne za pridobitev želenega rezultata.
  • Optimizatorji . Cilj strojnega učenja je izboljšati matematični model sistema v resničnem svetu, dokler ni čim bolj podoben sistemu. Ta postopek izpopolnjevanja se imenuje optimizacija in raziskovalci so razvili številne metode optimizacije. TensorFlow podpira številne od teh algoritmov in zagotavlja razred optimizatorja za vsakega. Ne glede na razred lahko dobite operacijo optimizacije tako, da pokličete optimizatorjevo metodo minimize.
  • spremenljivke . Za razliko od tenzorjev in nadomestnih znakov je spremenljivka primerek razreda Variable. Njegov primarni namen je vsebovati podatke, ki jih je treba posodobiti med postopkom optimizacije. Na primer, če vaša aplikacija modelira sistem z ravno črto, boste shranili naklon črte in prestrezanje y kot spremenljivke. Toda preden lahko uporabite spremenljivke za optimizacijo modela, morate ustvariti in izvesti posebne inicializacijske operacije.
  • Ocenjevalci . Če se raje ne ukvarjate s podatkovnimi strukturami na nizki ravni, kot so seje in grafi, lahko izvedete algoritme strojnega učenja z API-jem za ocenjevanje TensorFlow. Ocenjevalnik je primerek razreda Estimator in vsak ocenjevalec uteleša algoritem strojnega učenja. Glavna prednost uporabe ocenjevalnikov je, da imajo vsi enake tri metode za zagon procesa strojnega učenja: usposabljanje, vrednotenje in napovedovanje.

Kako uporabljati TensorBoard v TensorFlow

Ko namestite TensorFlow, namestitveni program ponuja tudi pripomoček ukazne vrstice z imenom TensorBoard. To ustvari grafe, ki vam omogočajo vizualizacijo delovanja vaše aplikacije TensorFlow. TensorBoard olajša iskanje napak v vaših programih, vendar ga ni enostavno uporabljati. Če želite ustvariti podatke in si ogledati grafe v TensorFlow, morate izvesti šest korakov:

Ustvarite povzetek operacij.
Preden si lahko ogledate podatke v TensorBoardu, morate identificirati podatke, ki bodo prikazani, tako da ustvarite posebne operacije, imenovane operacije povzetka. Te operacije lahko ustvarite tako, da pokličete funkcije paketa tf.summary. Na primer, lahko ustvarite operacijo povzetka za eno samo vrednost tako, da pokličete tf.summary.scalar. Operacijo povzetka za niz vrednosti lahko ustvarite tako, da pokličete tf.summary.histogram. Operacije lahko združite tako, da pokličete funkcijo, kot je tf.summary.merge_all.

Izvedite operacije povzetka.
Ko ustvarite eno ali več operacij povzetka, lahko pridobite povzetke z izvajanjem operacij v seji. Posledično bo seja vrnila medpomnilnik protokola, ki vsebuje povzetke podatkov aplikacije.

Ustvarite FileWriter.
Preden lahko natisnete povzetek v datoteko, morate ustvariti FileWriter tako, da pokličete tf.summary.FileWriter. Ta konstruktor sprejema veliko argumentov, vendar je edini zahtevani argument ime imenika, ki vsebuje povzetke podatkov.

Natisnite povzetek podatkov.
Razred FileWriter nima preproste metode tiskanja. Namesto tega morate poklicati metodo add_summary datoteke FileWriter za tiskanje povzetkov v datoteko. Ta metoda zapiše datoteko dogodka v imenik, podan v konstruktorju FileWriter. Ko natisnete podatke, je dobro, da pokličete metodo close datoteke FileWriter, da uničite primerek.

Zaženite TensorBoard.
Ko namestite TensorFlow, se pripomoček tensorboard prikaže v imeniku skriptov najvišje ravni. Pripomoček lahko zaženete tako, da izvedete ukaz tensorboard in nastavite možnost logdir na ime imenika, ki vsebuje povzetke podatkov. Na primer, če so povzetki podatki v izhodnem imeniku, lahko zaženete TensorBoard tako, da v ukazni vrstici izvedete tensorboard –logdir=output.

Oglejte si TensorBoard v brskalniku.
Ko zaženete pripomoček TensorBoard, si lahko ogledate njegov vmesnik tako, da odprete brskalnik. Privzeti URL je http://localhost:6006, vendar ga lahko konfigurirate tako, da v ukazu tensorboard nastavite možnosti gostitelja in vrat.

Kako zagnati TensorFlow v oblaku

Najboljši razlog za uporabo TensorFlow za strojno učenje je ta, da lahko svoje aplikacije izvajate v oblaku. Natančneje, programe TensorFlow lahko namestite v mehanizem strojnega učenja (ML), ki ga Google daje na voljo kot del platforme Google Cloud Platform (GCP). Ta postopek uvajanja je sestavljen iz sedmih korakov:

Ustvarite projekt Google Cloud Platform.
Ko delate z GCP, služi projekt kot osrednji vsebnik konfiguracijskih nastavitev in izvornih datotek. Nov projekt lahko ustvarite tako, da obiščete platformo Google Cloud , kliknete Izberi projekt in kliknete gumb plus v pogovornem oknu Izbira. Izberete lahko ime svojega projekta, vendar GCP nastavi ID projekta, ki je edinstven med vsemi projekti GCP.

Omogočite dostop do motorja ML.
Vsak nov projekt GCP lahko dostopa do številnih Googlovih zmogljivosti, vključno s shrambo podatkov in shrambo v oblaku. Toda projekti GCP privzeto ne morejo uvesti aplikacij v ML Engine. Če želite omogočiti dostop, odprite meni v zgornjem levem kotu strani projekta, izberite API-ji in storitve in nato kliknite Knjižnica. Kliknite povezavo z naslovom Google Cloud Machine Learning Engine in nato kliknite gumb OMOGOČI.

Namestite komplet za razvoj programske opreme v oblaku (SDK).
Do GCP lahko dostopate iz ukazne vrstice, tako da namestite Googlov Cloud SDK . Če želite to prenesti, kliknite ustrezno povezavo za svoj operacijski sistem. Ko bo namestitev končana, boste lahko dostopali do SDK-ja z izvajanjem ukazov gcloud v ukazni vrstici.

Naložite podatke o usposabljanju/napovedi v Cloud Storage.
ML Engine lahko dostopa do vaših podatkov o usposabljanju/napovedi le, če jih naložite v Googlovo shrambo v oblaku. S storitvijo Cloud Storage lahko komunicirate iz ukazne vrstice prek pripomočka gsutil, ki ga zagotavlja SDK za oblak. Podatki Cloud Storage so vsebovani v imeniku podobnih strukturah, imenovanih vedra, in ko naložite datoteko v vedro, se podatkovna struktura imenuje objekt.

V paket aplikacije dodajte modul setup.py.
Če želite, da bo aplikacija Python dostopna za ML Engine, jo morate strukturirati kot paket. Vsak paket mora imeti modul setup.py v imeniku najvišje ravni. Ta modul mora zagotoviti kodo za setuptools.setup, ki zagotavlja informacije o konfiguraciji motorju ML.

Zaženite usposabljanje za ML Engine.
Če želite svoj model usposobiti v oblaku, morate zagnati opravilo za usposabljanje tako, da zaženete gcloud ml-engine opravila, predloži usposabljanje z ustreznimi možnostmi. Možnosti vključujejo --package-path, ki identificira lokacijo paketa, --module-name, ki zagotavlja ime modula Python, in –job-dir, ki pove motorju ML, kam naj shrani izhod. Ko je usposabljanje končano, bo ML Engine ustvaril SavedModel, ki vsebuje rezultate usposabljanja.

Zaženite nalogo predvidevanja za ML Engine.
Ko pridobite SavedModel, lahko uporabite ML Engine za izvedbo napovedi, tako da zaženete gcloud ml-engine jobs submit napoved z ustreznimi možnostmi. Možnosti vključujejo --input-paths, ki označuje lokacijo vhodnih datotek projekta, --data-format, ki motorju ML pove, kako so vhodni podatki formatirani, in --output-path, ki določa, kje naj bi izhod napovedi biti shranjeni.


Za starejše: Kako vstaviti izrezke v diapozitiv PowerPoint

Za starejše: Kako vstaviti izrezke v diapozitiv PowerPoint

Izrezki so vnaprej narisane splošne umetnine, Microsoft pa s svojimi izdelki Office brezplačno ponuja številne datoteke z izrezki. Izrezke lahko vstavite v postavitev diapozitiva PowerPoint. Najlažji način za vstavljanje izrezka je uporaba enega od označb mesta na postavitvi diapozitiva: Prikažite diapozitiv, ki vsebuje izrezek […]

Za starejše: Kako zapolniti barvo v Microsoft Excelu

Za starejše: Kako zapolniti barvo v Microsoft Excelu

Barva polnila – imenovana tudi senčenje – je barva ali vzorec, ki zapolni ozadje ene ali več celic delovnega lista Excel. Uporaba senčenja lahko pomaga bralčevim očem slediti informacijam po strani ter lahko delovnemu listu doda barvo in vizualno zanimanje. V nekaterih vrstah preglednic, kot je register čekovne knjige, […]

Dodajanje novih stikov v Act! 2005

Dodajanje novih stikov v Act! 2005

Na zelo preprosti ravni je glavni namen ACT! služi kot prostor za shranjevanje vseh stikov, s katerimi dnevno komunicirate. Vse svoje stike lahko dodate in uredite v oknu s podrobnostmi o stiku, ker vsebuje vse informacije, ki se nanašajo na en določen zapis in […]

Discord For LuckyTemplates Cheat Sheet

Discord For LuckyTemplates Cheat Sheet

Uporabite to Cheat Sheet, da takoj začnete uporabljati Discord. Odkrijte koristne bote Discord, aplikacije, ki jih lahko integrirate, in nasvete za intervjuje z gosti.

OpenOffice.org Za LuckyTemplates Cheat Sheet

OpenOffice.org Za LuckyTemplates Cheat Sheet

Pisarniški paket OpenOffice.org ima veliko orodij za lažje delo. Ko delate v OpenOffice.org, spoznajte funkcijsko orodno vrstico (ki je v vseh aplikacijah videti skoraj enako) in glavne gumbe orodne vrstice za pomoč pri osnovnih ukazih za večino opravil.

Bombe Machine Alana Turinga

Bombe Machine Alana Turinga

Stroj Bombe Alana Turinga ni bil nobena oblika umetne inteligence (AI). Pravzaprav niti ni pravi računalnik. Razbil je kriptografska sporočila Enigme in to je to. Vendar pa je Turingu zagotovilo razmislek, kar je na koncu pripeljalo do članka z naslovom “Computing Machinery and Intelligenceâ€?? ki ga je objavil v petdesetih letih prejšnjega stoletja in opisuje […]

Standardne pomanjkljivosti strojne opreme za umetno inteligenco

Standardne pomanjkljivosti strojne opreme za umetno inteligenco

Sposobnost ustvarjanja modularnega sistema ima pomembne prednosti, zlasti v poslu. Zmožnost odstranjevanja in zamenjave posameznih komponent ohranja nizke stroške, hkrati pa omogoča postopno izboljšanje hitrosti in učinkovitosti. Vendar, tako kot pri večini stvari, ni brezplačnega kosila. Modularnost, ki jo zagotavlja Von Neumannova arhitektura, prihaja z nekaj […]

10 stvari, ki jih je treba storiti in kaj storiti pri uporabi QuarkXPress

10 stvari, ki jih je treba storiti in kaj storiti pri uporabi QuarkXPress

Če bi morali izbrati deset stvari o QuarkXPressu, ki jih je enostavno pozabiti, a izjemno uporabnih, ki bi si jih zapomnili, bi bile tiste na naslednjem seznamu, dragi bralec, to. Namaste. Pogovorite se s svojim komercialnim tiskalnikom. Vsi projekti tiskanja se začnejo in končajo s tiskalnikom. To je zato, ker samo tiskarji poznajo svoje omejitve in na tisoče načinov, kako je projekt lahko […]

Izvor Bitcoina

Izvor Bitcoina

Najpomembnejši vidik bitcoina je morda koncept, ki stoji za njim. Bitcoin je ustvaril razvijalec Satoshi Nakamoto. Namesto da bi poskušal oblikovati popolnoma novo plačilno sredstvo, ki bi uničil način, kako vsi plačujemo stvari na spletu, je Satoshi videl določene težave z obstoječimi plačilnimi sistemi in jih želel odpraviti. Koncept […]

Kako zaščititi svojo zasebnost pri uporabi Bitcoin

Kako zaščititi svojo zasebnost pri uporabi Bitcoin

Določena raven anonimnosti je vezana na uporabo bitcoina in digitalne valute na splošno. Ali lahko to označite kot "dovolj anonimno", je osebno mnenje. Obstajajo načini za zaščito vaše zasebnosti, ko uporabljate bitcoin za premikanje sredstev, vendar ti zahtevajo nekaj truda in načrtovanja: ustvarite lahko nov naslov za […]