Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Hands-On Computer Vision with TensorFlow 2

You're reading from   Hands-On Computer Vision with TensorFlow 2 Leverage deep learning to create powerful image processing apps with TensorFlow 2.0 and Keras

Arrow left icon
Product type Paperback
Published in May 2019
Publisher Packt
ISBN-13 9781788830645
Length 372 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Eliot Andres Eliot Andres
Author Profile Icon Eliot Andres
Eliot Andres
Benjamin Planche Benjamin Planche
Author Profile Icon Benjamin Planche
Benjamin Planche
Arrow right icon
View More author details
Toc

Table of Contents (16) Chapters Close

Preface 1. Section 1: TensorFlow 2 and Deep Learning Applied to Computer Vision FREE CHAPTER
2. Computer Vision and Neural Networks 3. TensorFlow Basics and Training a Model 4. Modern Neural Networks 5. Section 2: State-of-the-Art Solutions for Classic Recognition Problems
6. Influential Classification Tools 7. Object Detection Models 8. Enhancing and Segmenting Images 9. Section 3: Advanced Concepts and New Frontiers of Computer Vision
10. Training on Complex and Scarce Datasets 11. Video and Recurrent Neural Networks 12. Optimizing Models and Deploying on Mobile Devices 13. Migrating from TensorFlow 1 to TensorFlow 2 14. Assessments 15. Other Books You May Enjoy

Variable management

In TensorFlow 1, variables were created globally. Each variable had a unique name and the best practice in terms of creating them was to use tf1.get_variable():

weights = tf1.get_variable(name='W', initializer=[3])

Here, we created a global variable named W. Deleting the Python weights variable (using the Python del weights command, for instance) would have no effect on TensorFlow memory. In fact, if we try to create the same variable again, we would end up with an error:

Variable W already exists, disallowed. Did you mean to set reuse=True or reuse=tf.AUTO_REUSE in VarScope?

While tf1.get_variable() allows you to reuse variables, its default behavior is to throw an error if a variable with the chosen name already exists, preventing you from mistakenly overriding variables. To avoid this error, we can update our call to tf1.variable_scope(...) and employ the reuse argument:

with tf1.variable_scope("conv1", reuse=True):
weights = tf1...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime