To my loving wife, for all your support
Do you wish to learn to build practical deep learning and computer vision Systems, but are reluctant to switch to Linux for the development? Do you feel like you are more familiar with Windows, and wish that you could build everything on Windows? Well, you do not need to worry anymore. The latest deep learning and computer vision libraries have matured to the point that almost everything now can be made to work seamlessly on Windows as well. This book will show you how.
Windows OS accounts for over 70% of desktop PC usage. Windows provides many conveniences, with a wide variety of available productivity tools, causing it to gather a large user base. Furthermore, due to the better hardware compatibility and driver support, most decently to high-powered personal PCs tend to run Windows. This means that there is a large percentage of AI enthusiasts and developers out there who would like to jump into learning the remarkable capabilities of deep learning / AI. But they are reluctant or afraid to take the first steps because of the fear of the complexity of the tools and a widely held belief that AI systems can only be built on developer-friendly operating systems such as Linux. This book aims to help them move past those mental blocks and start building practical deep learning systems.
Deep learning on Windows will help you learn to build deep learning and computer vision systems using Python, TensorFlow, Keras, OpenCV, and more, right within the familiar elements of Microsoft Windows. The goal of this book is to get as many of you interested in the field of deep learning and have the OS you build upon a nonbarrier to begin learning.
Along the way, we will learn what deep learning is and how it came to be. We will clarify some misconceptions and confusion surrounding deep learning and look at some of the major milestones it has achieved throughout the years. We will dive into coding, while learning how to apply the concepts as you build. You will learn how to set up all the tools and technologies you will need to start coding deep learning systems on a Windows system.
Learn the concepts, history, and milestones behind deep learning and how it relates to machine learning and AI while resolving some misconceptions surrounding those AI concepts.
Learn the tools you would require (TensorFlow, Keras, OpenCV, CUDA, etc.) to successfully learn building deep learning systems, and learn how to set up, configure, and troubleshoot them step by step. Learn to get the tools working on Microsoft Windows and learn why the OS or the hardware you are developing in does not hold you back in building state-of-the-art AI systems. This should allow you to break any mental barriers and apply what you have learned in any OS or other system.
Learn to build your first deep learning model and understand how the concepts of each step of it work through code examples. Learn how to visualize the internal workings and the structure of a model to gain a deeper understanding of how they work, and apply that experience to develop more complex models in the future.
Learn to build real-world, practical deep learning computer vision systems with limited amounts of data with the concepts of transfer learning and fine-tuning. Learn how to configure training of larger models with large datasets, and ways you can deploy your application once trained.
Once you have mastered the basics, learn more exciting and advanced concepts such as generative adversarial networks, and reinforcement learning (for basics in game programming).
The book is meant for you if you are an enthusiast of machine learning and AI—from the beginner to intermediate level—and would like to get a taste of what deep learning can do. It is meant for you if you prefer to jump in and learn through a hands-on, practical way by trying out coding and are not afraid to get your hands dirty with code. And finally, this book is meant for you if you desire to build practical, real-world AI systems.
Like many others, this book also started as a single thought. Even with experience in publishing two earlier books, it was a challenging journey. From the beginning and along the way, I have received support and encouragement from many, and I would like to express my sincere gratitude here.
First, I would like to thank the team at Apress, especially Smriti Srivastava, the acquisitions editor; Shrikant Vishwakarma, the coordinating editor; Matthew Moodie, the developmental editor; and everyone else involved in the publishing of this book.
I would also like to thank Sarani Mendis, the technical reviewer, for the excellent feedback and suggestions that added immense value to this book.
To my loving wife, Pramitha: Thank you for the encouragement and the motivation you provided from the inception of the idea to the completion. Without your support throughout the long hours and days spent writing and perfecting this book, completing it might not have been possible.
To my managers at Pearson PLC, who have guided me throughout the years, I would like to express my gratitude for the guidance and encouragement. And to my team and colleagues, thank you for all your support that allowed me to achieve this.
And last but not least, to my parents and sister, thank you for the endless support throughout the years.
Thimira holds a Master of Science in Computer Science with a Bachelor’s degree in Information Technology from the University of Colombo, Sri Lanka.
He has filed three patents to date, in the fields of dynamic neural networks and semantics for online learning platforms. Thimira has also published two books on deep learning: Build Deeper: The Deep Learning Beginners’ Guide and Build Deeper: The Path to Deep Learning.
In addition, Thimira is the author of Codes of Interest ( www.codesofinterest.com ), a portal for deep learning and computer vision knowledge, covering everything from concepts to step-by-step tutorials.
LinkedIn: www.linkedin.com/in/thimira-amaratunga .
She holds a Master of Science in Computer Science and a Bachelor of Information Technology from University of Colombo School of Computing–Sri Lanka.
3.12.162.179