Nekantrus vykdymas „TensorFlow“ yra režimas, leidžiantis intuityviau ir interaktyviau kurti mašininio mokymosi modelius. Tai ypač naudinga modelio kūrimo prototipų kūrimo ir derinimo etapuose. „TensorFlow“ norimas vykdymas yra būdas nedelsiant atlikti operacijas, kad būtų grąžintos konkrečios reikšmės, o ne tradicinis grafikas pagrįstas vykdymas, kai operacijos pridedamos prie skaičiavimo grafiko ir vykdomos vėliau.
Noras vykdymas netrukdo paskirstyti TensorFlow funkcionalumą. „TensorFlow“ sukurta taip, kad palaikytų paskirstytą skaičiavimą keliuose įrenginiuose ir serveriuose. Tiesą sakant, „TensorFlow“ platinimo strategijos gali būti sklandžiai integruotos ir noriai vykdomos, kad modeliai būtų mokomi keliuose įrenginiuose ar serveriuose.
Dirbdami su paskirstytu „TensorFlow“ eager režimu, galite naudoti tokias strategijas kaip „tf.distribute.MirrorredStrategy“, kad efektyviai išnaudotumėte kelis GPU viename įrenginyje arba „tf.distribute.MultiWorkerMirrroredStrategy“, kad apmokytumėte modelius keliose mašinose. Šios paskirstymo strategijos tvarko paskirstytojo skaičiavimo sudėtingumą, pvz., ryšį tarp įrenginių, gradientų sinchronizavimą ir rezultatų agregavimą.
Pavyzdžiui, jei turite modelį, kurį norite treniruoti keliuose GPU, naudodami nekantriai vykdymą, galite sukurti „MirrorredStrategy“ objektą ir paleisti mokymo ciklą pagal šią strategiją. Tai automatiškai paskirstys skaičiavimus turimiems GPU ir sujungs gradientus, kad būtų atnaujinti modelio parametrai.
python import tensorflow as tf strategy = tf.distribute.MirroredStrategy() with strategy.scope(): # Define and compile your model model = tf.keras.Sequential([...]) model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy']) # Train your model model.fit(train_dataset, epochs=5)
Šiame pavyzdyje „MirrorredStrategy“ naudojama modeliui paskirstyti keliuose GPU mokymui. „strategy.scope()“ konteksto tvarkyklė užtikrina, kad modelis būtų pakartotas kiekviename GPU, o gradientai būtų apibendrinami prieš atnaujinant modelio parametrus.
Noras „TensorFlow“ vykdymas netrukdo paskirstytam sistemos funkcionalumui. Vietoj to, tai suteikia interaktyvesnį ir intuityvesnį mašininio mokymosi modelių kūrimo būdą, tuo pačiu leidžiant efektyviai paskirstyti mokymus keliuose įrenginiuose ar serveriuose.
Kiti naujausi klausimai ir atsakymai apie Pažanga mašininio mokymosi srityje:
- Kai branduolys yra sujungtas su duomenimis, o originalas yra privatus, ar šakotasis branduolys gali būti viešas ir jei taip, tai nėra privatumo pažeidimas?
- Kokie yra apribojimai dirbant su dideliais duomenų rinkiniais mašininio mokymosi metu?
- Ar mašininis mokymasis gali padėti dialogui?
- Kas yra TensorFlow žaidimų aikštelė?
- Ar „Google“ debesies sprendimus galima naudoti norint atsieti kompiuteriją nuo saugyklos, kad būtų galima efektyviau lavinti ML modelį naudojant didelius duomenis?
- Ar „Google Cloud Machine Learning Engine“ (CMLE) siūlo automatinį išteklių gavimą ir konfigūravimą bei tvarko išteklių išjungimą, kai modelio mokymas baigtas?
- Ar galima treniruoti mašininio mokymosi modelius savavališkai dideliuose duomenų rinkiniuose be jokių trukdžių?
- Ar naudojant CMLE kuriant versiją reikia nurodyti eksportuoto modelio šaltinį?
- Ar CMLE gali nuskaityti iš „Google Cloud“ saugyklos duomenų ir naudoti nurodytą išmokytą modelį išvadoms daryti?
- Ar Tensorflow gali būti naudojamas giliųjų neuronų tinklų (DNN) mokymui ir išvadoms?
Peržiūrėkite daugiau klausimų ir atsakymų skyriuje „Mašininio mokymosi tobulinimas“.