EITC/AI/DLPTFK Deep Learning with Python, TensorFlow and Keras is the European IT Certification programme on the fundamentals of programming deep learning in Python with TensorFlow and Keras machine learning libraries.
The curriculum of the EITC/AI/DLPTFK Deep Learning with Python, TensorFlow and Keras focuses on practical skills in deep learning Python programming with TensorFlow and Keras libraries organized within the following structure, encompassing comprehensive video didactic content as a reference for this EITC Certification.
Deep learning (also known as deep structured learning) is part of a broader family of machine learning methods based on artificial neural networks with representation learning. Learning can be supervised, semi-supervised or unsupervised. Deep learning architectures such as deep neural networks, deep belief networks, recurrent neural networks and convolutional neural networks have been applied to fields including computer vision, machine vision, speech recognition, natural language processing, audio recognition, social network filtering, machine translation, bioinformatics, drug design, medical image analysis, material inspection and board game programs, where they have produced results comparable to and in some cases surpassing human expert performance.
Python is an interpreted, high-level and general-purpose programming language. Python’s design philosophy emphasizes code readability with its notable use of significant whitespace. Its language constructs and object-oriented approach aim to help programmers write clear, logical code for small and large-scale projects. Python is often described as a “batteries included” language due to its comprehensive standard library. Python is commonly used in artificial intelligence projects and machine learning projects with the help of libraries like TensorFlow, Keras, Pytorch and Scikit-learn.
Python is dynamically-typed (executing at runtime many common programming behaviours that static programming languages perform during compilation) and garbage-collected (with automatic memory management). It supports multiple programming paradigms, including structured (particularly, procedural), object-oriented and functional programming. It was created in the late 1980s, and first released in 1991, by Guido van Rossum as a successor to the ABC programming language. Python 2.0, released in 2000, introduced new features, such as list comprehensions, and a garbage collection system with reference counting, and was discontinued with version 2.7 in 2020. Python 3.0, released in 2008, was a major revision of the language that is not completely backward-compatible and much Python 2 code does not run unmodified on Python 3. With Python 2’s end-of-life (and pip having dropped support in 2021), only Python 3.6.x and later are supported, with older versions still supporting e.g. Windows 7 (and old installers not restricted to 64-bit Windows).
Python interpreters are supported for mainstream operating systems and available for a few more (and in the past supported many more). A global community of programmers develops and maintains CPython, a free and open-source reference implementation. A non-profit organization, the Python Software Foundation, manages and directs resources for Python and CPython development.
As of January 2021, Python ranks third in TIOBE’s index of most popular programming languages, behind C and Java, having previously gained second place and their award for the most popularity gain for 2020. It was selected Programming Language of the Year in 2007, 2010, and 2018.
An empirical study found that scripting languages, such as Python, are more productive than conventional languages, such as C and Java, for programming problems involving string manipulation and search in a dictionary, and determined that memory consumption was often “better than Java and not much worse than C or C++”. Large organizations that use Python include i.a. Wikipedia, Google, Yahoo!, CERN, NASA, Facebook, Amazon, Instagram.
Beyond its artificial intelligence applications, Python, as a scripting language with modular architecture, simple syntax and rich text processing tools, is often used for natural language processing.
TensorFlow is a free and open-source software library for machine learning. It can be used across a range of tasks but has a particular focus on training and inference of deep neural networks. It is a symbolic math library based on dataflow and differentiable programming. It is used for both research and production at Google.
Starting in 2011, Google Brain built DistBelief as a proprietary machine learning system based on deep learning neural networks. Its use grew rapidly across diverse Alphabet companies in both research and commercial applications. Google assigned multiple computer scientists, including Jeff Dean, to simplify and refactor the codebase of DistBelief into a faster, more robust application-grade library, which became TensorFlow. In 2009, the team, led by Geoffrey Hinton, had implemented generalized backpropagation and other improvements which allowed generation of neural networks with substantially higher accuracy, for instance a 25% reduction in errors in speech recognition.
TensorFlow is Google Brain’s second-generation system. Version 1.0.0 was released on February 11, 2017. While the reference implementation runs on single devices, TensorFlow can run on multiple CPUs and GPUs (with optional CUDA and SYCL extensions for general-purpose computing on graphics processing units). TensorFlow is available on 64-bit Linux, macOS, Windows, and mobile computing platforms including Android and iOS. Its flexible architecture allows for the easy deployment of computation across a variety of platforms (CPUs, GPUs, TPUs), and from desktops to clusters of servers to mobile and edge devices. TensorFlow computations are expressed as stateful dataflow graphs. The name TensorFlow derives from the operations that such neural networks perform on multidimensional data arrays, which are referred to as tensors. During the Google I/O Conference in June 2016, Jeff Dean stated that 1,500 repositories on GitHub mentioned TensorFlow, of which only 5 were from Google. In December 2017, developers from Google, Cisco, RedHat, CoreOS, and CaiCloud introduced Kubeflow at a conference. Kubeflow allows operation and deployment of TensorFlow on Kubernetes. In March 2018, Google announced TensorFlow.js version 1.0 for machine learning in JavaScript. In Jan 2019, Google announced TensorFlow 2.0. It became officially available in Sep 2019. In May 2019, Google announced TensorFlow Graphics for deep learning in computer graphics.
Keras is an open-source software library that provides a Python interface for artificial neural networks. Keras acts as an interface for the TensorFlow library.
Keras contains numerous implementations of commonly used neural-network building blocks such as layers, objectives, activation functions, optimizers, and a host of tools to make working with image and text data easier to simplify the coding necessary for writing deep neural network code. The code is hosted on GitHub, and community support forums include the GitHub issues page, and a Slack channel.
In addition to standard neural networks, Keras has support for convolutional and recurrent neural networks. It supports other common utility layers like dropout, batch normalization, and pooling. Keras allows users to productize deep models on smartphones (iOS and Android), on the web, or on the Java Virtual Machine. It also allows use of distributed training of deep-learning models on clusters of Graphics processing units (GPU) and tensor processing units (TPU). Keras has been adopted for use in scientific research due to Python (programming language) and its own ease of use and installation. Keras was the 10th most cited tool in the KDnuggets 2018 software poll and registered a 22% usage.
To acquaint yourself in-detail with the certification curriculum you can expand and analyze the table below.
The EITC/AI/DLPTFK Deep Learning with Python, TensorFlow and Keras Certification Curriculum references open-access didactic materials in a video form by Harrison Kinsley. Learning process is divided into a step-by-step structure (programmes -> lessons -> topics) covering relevant curriculum parts.
Unlimited consultancy with domain experts are also provided.
For details on the Certification procedure check How it Works.
Curriculum Reference Resources
Google TensorFlow
https://www.tensorflow.org/
Google TensorFlow Learning Resources
https://www.tensorflow.org/learn/
TensorFlow API Documentation
https://www.tensorflow.org/api_docs/
TensorFlow Models and Datasets
https://www.tensorflow.org/resources/models-datasets/
TensorFlow Community
https://www.tensorflow.org/community/
Google Cloud AI Platform Training with TensorFlow
https://cloud.google.com/ai-platform/training/docs/tensorflow-2/
Python documentation
https://www.python.org/doc/
Python releases downloads
https://www.python.org/downloads/
Python for Beginners Guide
https://www.python.org/about/gettingstarted/
Python Wiki Beginners Guide
https://wiki.python.org/moin/BeginnersGuide
W3Schools Python Machine Learning Tutorial
https://www.w3schools.com/python/python_ml_getting_started.asp
Download the complete offline self-learning preparatory materials for the EITC/AI/DLPTFK Deep Learning with Python, TensorFlow and Keras programme in a PDF file
EITC/AI/DLPTFK preparatory materials – standard version
EITC/AI/DLPTFK preparatory materials – extended version with review questions