V TensorFlow 2.0 byl koncept relací odstraněn ve prospěch dychtivého provádění, protože dychtivé provádění umožňuje okamžité vyhodnocení a snazší ladění operací, díky čemuž je proces intuitivnější a Pythonic. Tato změna představuje významný posun v tom, jak TensorFlow funguje a jak komunikuje s uživateli.
V TensorFlow 1.x byly relace použity k vytvoření výpočtového grafu a jeho následnému provedení v prostředí relace. Tento přístup byl výkonný, ale někdy těžkopádný, zejména pro začátečníky a uživatele pocházející z naléhavějšího programovacího prostředí. S dychtivým prováděním jsou operace prováděny okamžitě, aniž by bylo nutné explicitně vytvářet relaci.
Odstranění relací zjednodušuje pracovní postup TensorFlow a více jej sladí se standardním programováním v Pythonu. Nyní mohou uživatelé psát a spouštět kód TensorFlow mnohem přirozeněji, podobně jako by psali běžný kód Pythonu. Tato změna zlepšuje uživatelskou zkušenost a zkracuje dobu učení pro nové uživatele.
Pokud jste narazili na chybu AttributeError při pokusu o spuštění nějakého kódu cvičení, který závisí na relacích v TensorFlow 2.0, je to způsobeno tím, že relace již nejsou podporovány. Chcete-li tento problém vyřešit, musíte kód přefaktorovat, aby bylo možné využít dychtivé provádění. Tímto způsobem můžete zajistit, že váš kód je kompatibilní s TensorFlow 2.0 a využít výhod, které dychtivé provádění nabízí.
Zde je příklad, který ilustruje rozdíl mezi používáním relací v TensorFlow 1.xa dychtivým prováděním v TensorFlow 2.0:
TensorFlow 1.x (pomocí relací):
python import tensorflow as tf # Build a graph a = tf.constant(2) b = tf.constant(3) c = tf.add(a, b) # Create a session and run the graph with tf.Session() as sess: result = sess.run(c) print(result)
TensorFlow 2.0 (s použitím dychtivého provádění):
python import tensorflow as tf # Enable eager execution tf.config.run_functions_eagerly(True) # Perform operations without the need for a session a = tf.constant(2) b = tf.constant(3) c = tf.add(a, b) print(c)
Aktualizací cvičebního kódu pro využití dychtivého provádění lze zajistit kompatibilitu s TensorFlow 2.0 a těžit z jeho zjednodušeného pracovního postupu.
Odstranění relací v TensorFlow 2.0 ve prospěch horlivého provádění představuje změnu, která zvyšuje použitelnost a jednoduchost rámce. Přijetím dychtivého provádění mohou uživatelé psát kód TensorFlow přirozeněji a efektivněji, což vede k bezproblémovějšímu vývoji strojového učení.
Další nedávné otázky a odpovědi týkající se EITC/AI/GCML Google Cloud Machine Learning:
- Jaká jsou omezení při práci s velkými datovými sadami ve strojovém učení?
- Dokáže strojové učení nějakou dialogickou pomoc?
- Co je hřiště TensorFlow?
- Co vlastně znamená větší soubor dat?
- Jaké jsou příklady hyperparametrů algoritmu?
- Co je to souborové učení?
- Co když vybraný algoritmus strojového učení není vhodný a jak se lze ujistit, že vyberete ten správný?
- Potřebuje model strojového učení během tréninku dohled?
- Jaké jsou klíčové parametry používané v algoritmech založených na neuronové síti?
- Co je TensorBoard?
Další otázky a odpovědi naleznete v EITC/AI/GCML Google Cloud Machine Learning