Machine Learning Tensorflow: A Concise Tutorial Just An Hour
Tensorflow Tutorial

Machine Learning Tensorflow: A Concise Tutorial Just An Hour – FREE

Last updated on 21st Jun 2020, Blog, Tutorials

About author

Kamalesh (Sr Software Engineer )

Kamalesh is a Senior Software Engineer and his passion lies in writing articles on the most popular IT platforms, including Prometheus, Machine Learning, DevOps, Data Science, Artificial Intelligence, RPA, Deep Learning, and so on. You can stay up to date on all these technologies.

(5.0) | 19870 Ratings 1003

What is TensorFlow?

TensorFlow is a free and open-source software library for dataflow and differentiable programming across a range of tasks. It is a symbolic math library, and is also used for machine learning applications such as neural networks.It is used for both research and production at Google.‍

TensorFlow

TensorFlow was developed by the Google Brain team for internal Google use. It was released under the Apache License 2.0 on November 9, 2015.

Tensorflow-Googlebrain

Google Brain is a deep learning artificial intelligence research team at Google. Formed in the early 2010s, Google Brain combines open-ended machine learning research with information systems and large-scale computing resources.

Googlebrain

DistBelief:

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:

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.

    Subscribe For Free Demo

    [custom_views_post_title]

    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 Kube Flow 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.

    Tensor processing unit (TPU):

    In May 2016, Google announced its Tensor processing unit (TPU), an application-specific integrated circuit (a hardware chip) built specifically for machine learning and tailored for TensorFlow. A TPU is a programmable AI accelerator designed to provide high throughput of low-precision arithmetic (e.g., 8-bit), and oriented toward using or running models rather than training them. Google announced they had been running TPUs inside their data centers for more than a year, and had found them to deliver an order of magnitude better-optimized performance per watt for machine learning.

    In May 2017, Google announced the second-generation, as well as the availability of the TPUs in Google Compute Engine. The second-generation TPUs deliver up to 180 teraflops of performance, and when organized into clusters of 64 TPUs, provide up to 11.5 petaflops.In May 2018, Google announced the third-generation TPUs delivering up to 420 teraflops of performance and 128 GB high bandwidth memory (HBM). Cloud TPU v3 Pods offer 100+ petaflops of performance and 32 TB HBM.

    In February 2018, Google announced that they were making TPUs available in beta on the Google Cloud Platform.

    Edge TPU:

    In July 2018, the Edge TPU was announced. Edge TPU is Google’s purpose-built ASIC chip designed to run TensorFlow Lite machine learning (ML) models on small client computing devices such as smartphones known as edge computing.

    TensorFlow Lite:

    Tensorflow-lite

    In May 2017, Google announced a software stack specifically for mobile development, TensorFlow Lite. In January 2019, TensorFlow team released a developer preview of the mobile GPU inference engine with OpenGL ES 3.1 Compute Shaders on Android devices and Metal Compute Shaders on iOS devices.In May 2019, Google announced that their TensorFlow Lite Micro (also known as TensorFlow Lite for Microcontrollers) and ARM’s uTensor would be merging.

    Arm Holdings (stylized as arm) is a global semiconductor and software design company, owned by the Japanese SoftBank Group and its Vision Fund. With its global headquarters in Cambridgeshire, in the United Kingdom, and its US headquarters in San Jose, California, its primary business is in the design of ARM processors (CPUs), although it also designs other chips; and software development tools under the DS-5, RealView and Keil brands, as well as systems and platforms, system-on-a-chip (SoC) infrastructure and software. As a “holding” company, it also holds shares of other companies. It is considered to be market dominant for processors in mobile phones (smartphones or otherwise), tablet computers and for chips in smart TVs and in total over 160 billion chips have been made for all kinds of devices based on designs from Arm (more than from any other company). The company is one of the best-known “Silicon Fen” companies.

    Pixel Visual Core (PVC):

    In October 2017, Google released the Google Pixel 2 which featured their Pixel Visual Core (PVC), a fully programmable image, vision and AI processor for mobile devices. The PVC supports TensorFlow for machine learning (and Halide for image processing).

    Applications:

    Google officially released RankBrain on October 26, 2015, backed by TensorFlow.

    Google also released Colaboratory, which is a TensorFlow Jupyter notebook environment that requires no setup to use.

    Machine Learning Crash Course (MLCC):

    On March 1, 2018, Google released its Machine Learning Crash Course (MLCC). Originally designed to help equip Google employees with practical artificial intelligence and machine learning fundamentals, Google rolled out its free TensorFlow workshops in several cities around the world before finally releasing the course to the public.

    TensorFlow 2.0:

    As TensorFlow’s market share among research papers was declining to the advantage of PyTorch, TensorFlow Team announced a release of a new major version of the library in September 2019. TensorFlow 2.0 among many changes introduced a number of simplifications, removal of old libraries, cross-compatibility between trained models on different versions of TensorFlow, and significant improvements to the performance on GPU

    Features:

    TensorFlow provides stable Python (for version 3.7 across all platforms)[29] and C APIs;[30] and without API backwards compatibility guarantee: C++, Go, Java,[31] JavaScript[3] and Swift (early release).[32][33] Third-party packages are available for C#,[34][35] Haskell,[36] Julia,[37] MATLAB,[38] R,[39] Scala,[40] Rust,[41] OCaml,[42] and Crystal.[43]

    “New language support should be built on top of the C API. However, [..] not all functionality is available in C yet.”[44] Some more functionality is provided by the Python API.

    Applications:

    Among the applications for which TensorFlow is the foundation, are automated image-captioning software, such as DeepDream.

    Apache License:

    The Apache License is a permissive free software license written by the Apache Software Foundation (ASF). It allows users to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software under the terms of the license, without concern for royalties. The ASF and its projects release their software products under the Apache License. The license is also used by many non-ASF projects.

    Course Curriculum

    Best Advanced TensorFlow Courses & Get Noticed By Top Hiring Companies

    Weekday / Weekend BatchesSee Batch Details
    Apache-license

    A free-software license is a notice that grants the recipient of a piece of software extensive rights to modify and redistribute that software. These actions are usually prohibited by copyright law, but the rights-holder (usually the author) of a piece of software can remove these restrictions by accompanying the software with a software license which grants the recipient these rights. Software using such a license is free software (or free and open-source software) as conferred by the copyright holder. Free-software licenses are applied to software in source code and also binary object-code form, as the copyright law recognizes both forms.

    Free-software-license

    Uses:

    It is an open source artificial intelligence library, using data flow graphs to build models. It allows developers to create large-scale neural networks with many layers. TensorFlow is mainly used for: Classification, Perception, Understanding, Discovering, Prediction and Creation.

    In trying to build a tool to satisfy everyone’s needs, it seems that Google built a product that does a so-so job of satisfying anyone’s needs. For researchers, Tensorflow is hard to learn and hard to use. Research is all about flexibility, and lack of flexibility is baked into Tensorflow at a deep level.

    Main Use Cases of TensorFlow:

     Voice/Sound Recognition:

    One of the most well-known uses of TensorFlow are Sound based applications. With the proper data feed, neural networks are capable of understanding audio signals. These can be:

    • Voice recognition – mostly used in IoT, Automotive, Security and UX/UI
    • Voice search – mostly used in Telecoms, Handset Manufacturers
    • Sentiment Analysis – mostly used in CRM
    • Flaw Detection (engine noise) – mostly used in Automotive and Aviation

    Regarding common use cases, we are all familiar with voice-search and voice-activated assistants with the new wide spreading smartphones such as Apple’s Siri, Google Now for Android and Microsoft Cortana for Windows Phone.

    Language understanding is another common use case for Voice Recognition. Speech-to-text applications can be used to determine snippets of sound in greater audio files, and transcribe the spoken word as text.

    Sound based applications also can be used in CRM. A use case scenario might be: TensorFlow algorithms standing in for customer service agents, and route customers to the relevant information they need, and faster than the agents.

    Text Based Applications:Further popular uses of TensorFlow are, text based applications such as sentimental analysis (CRM, Social Media), Threat Detection (Social Media, Government) and Fraud Detection (Insurance, Finance)

    Language Detection is one of the most popular uses of text based applications.

    • We all know Google Translate, which supports over 100 languages translating from one to another. The evolved versions can be used for many cases like translating jargon legalese in contracts into plain language.
    • Text Summarization:Google also found out that for shorter texts, summarization can be learned with a technique called sequence-to-sequence learning. This can be used to produce headlines for news articles. Below, you can see an example where the model reads the article text and writes a suitable headline.

    Image Recognition:Mostly used by Social Media, Telecom and Handset Manufacturers; Face Recognition, Image Search, Motion Detection, Machine Vision and Photo Clustering can be used also in Automotive, Aviation and Healthcare Industries. Image Recognition aims to recognize and identify people and objects in images as well as understanding the content and context.TensorFlow object recognition algorithms classify and identify arbitrary objects within larger images. This is usually used in engineering applications to identify shapes for modeling purposes (3D space construction from 2D images) and by social networks for photo tagging (Facebook’s Deep Face). By analyzing thousands of photos of trees for example, the technology can learn to identify a tree it has never seen before.

    Image Recognition is starting to expand in the Healthcare Industry, too where TensorFlow algorithms can process more information and spot more patterns than their human counterparts. Computers are now able to review scans and spot more illnesses than humans.

    Image-recognition-Tensorflow

    Time Series:

    TensorFlow Time Series algorithms are used for analyzing time series data in order to extract meaningful statistics. They allow forecasting non-specific time periods in addition to generate alternative versions of the time series.

    Course Curriculum

    Get Advanced Practices on TensorFlow Training from Real Time Experts

    • Instructor-led Sessions
    • Real-life Case Studies
    • Assignments
    Explore Curriculum

    The most common use case for Time Series is Recommendation. You’ve probably heard of this use from Amazon, Google, Facebook and Netflix where they analyze customer activity and compare it to the millions of other users to determine what the customer might like to purchase or watch.  These recommendations are getting even smarter, for example, they offer you certain things as gifts (not for yourself) or TV shows that your family members might like.

    The other uses of TensorFlow Time Series algorithms are mainly in the field of interest to Finance, Accounting, Government, Security and IoT with Risk Detections, Predictive Analysis and Enterprise/Resource Planning.

    Video Detection:

    TensorFlow neural networks also work on video data. This is mainly used in Motion Detection, Real-Time Thread Detection in Gaming, Security, Airports and UX/UI fields.  Recently, Universities are working on Large scale Video Classification datasets like YouTube-8M aiming to accelerate research on large-scale video understanding, representation learning, noisy data modeling, transfer learning, and domain adaptation approaches for video.

    Bonus: This might not be a common use but it is a matter of life and death –if you watch American movies you know! – and it is chosen as the top 20 projects worldwide (Global Finalist).  Nasa is designing a system with TensorFlow for orbit classification and object clustering of asteroids. As a result, they can classify and predict NEOs (near earth objects).

    As TensorFlow is an open source library, we will see many more innovative use cases soon, which will influence one another and contribute to Machine Learning technology.

    Why is TensorFlow? The machine learning library explained

    TensorFlow is a Python-friendly open source library for numerical computation that makes machine learning faster and easier.

    Machine learning is a complex discipline. But implementing machine learning models is far less daunting and difficult than it used to be, thanks to machine learning frameworks—such as Google’s TensorFlow—that ease the process of acquiring data, training models, serving predictions, and refining future results.Created by the Google Brain team, TensorFlow is an open source library for numerical computation and large-scale machine learning. TensorFlow bundles together a slew of machine learning and deep learning (aka neural networking) models and algorithms and makes them useful by way of a common metaphor. It uses Python to provide a convenient front-end API for building applications with the framework, while executing those applications in high-performance C++.

    TensorFlow can train and run deep neural networks for handwritten digit classification, image recognition, word embeddings, recurrent neural networks, sequence-to-sequence models for machine translation, natural language processing, and PDE (partial differential equation) based simulations. Best of all, TensorFlow supports production prediction at scale, with the same models used for training.

    machine-learning-tensorflow

    Advantage and Disadvantage of TensorFlow:

    TensorFlow is an open-source machine learning concept which is designed and developed by Google. It offers a very high level and abstract approach to organizing low-level numerical programming. And supporting libraries that can allow our software to run without changes on regular CPU.

    Its supported platforms include Linux, macOS, Windows, and Android.

    TensorFlow models can also be run without a traditional computer platform in the Google Cloud Machine Learning Engine.

    Tensorflow-advantages

    The more advanced technology, and the more useful it can be, but everything has its downside and also this machine learning library. When comparing TensorFlow with other libraries like Torch, SciKit, Theano, Neon, there are drawbacks in several features that the library lets us manipulate. This library is designed and updated by Google, so needless to say, and it has come a far way since its initial release.

    Advantages of TensorFlow:

    Pros-and-cons-Tensorflow

    1) Graphs:

    TensorFlow has better computational graph visualizations. Which are inherent when compared to other libraries like Torch and Theano.

    Pros-cons-Graph

    2) Library management:

    Google backs it. And has the advantages of seamless performance, quick updates, and frequent new releases with new features.

    Tensorflow Sample Resumes! Download & Edit, Get Noticed by Top Employers! Download

    3) Debugging:

    It helps us execute subpart of a graph which gives it an upper hand as we can introduce and retrieve discrete data

    4) Scalability:

    The libraries are deployed on a hardware machine, which is a cellular device to the computer with a complex setup.

    5) Pipelining:

    TensorFlow is designed to use various backend software (GPUs, ASIC), etc. and is also highly parallel.

    6) It has a unique approach that allows monitoring the training progress of our models and tracking several metrics.

    7) TensorFlow has excellent community support.

    8) Its performance is high and matching the best in the industry.

    Conclusion:

    TensorFlow is a great library that can be used for numerical and graphical computation of data in creating deep learning networks and is the most widely used library for various applications like Google Search, Google Translate, Google Photos, and many more.Hope you have found all the details that you were looking for, in this article.

    Are you looking training with Right Jobs?

    Contact Us
    Get Training Quote for Free