Computing Tools PDF
Computing Tools PDF
1. Introduction to TinyML:
We are currently living in a world surrounded by
Machine Learning models. Over the course of your day,
you are utilising these models more than you realize.
Day to day tasks like scrolling through social media,
taking a picture, checking the weather, all depend on
machine learning models. You might even see this blog
because a machine learning model suggested this to
you.
We all know that training these models are
computationally expensive. But most of the times,
running inference on these models are
computationally expensive as well. The rate at which
we are using machine learning services, we need
computing systems that are fast enough to handle it.
Thus most of these models run on huge data centres
with clusters of CPUs and GPUs(even TPUs in some
cases).
What is TinyML
TinyML is a field of study in Machine Learning and
Embedded Systems that explores the types of models
you can run on small, low-powered devices like
microcontrollers. It enables low-latency, low power
and low bandwidth model inference at edge devices.
While a standard consumer CPUs consume between 65
watts and 85 watts and standard consumer GPU
(Graphics processing unit) consumes anywhere
between 200 watts to 500 watts, a typical
microcontroller consumes power in the order of
What is microcontroller:
1. A microcontroller is a compact integrated circuit
designed to govern a specific operation in
an embedded system. A typical microcontroller
includes a processor, memory and input/output (I/
O) peripherals on a single chip.Sometimes referred
to as an embedded controller or microcontroller
unit (MCU),microcontrollers are found in vehicles,
robots, office machines, medical devices, mobile
radio transceivers, vending machines and home
appliances, among other devices
How do microcontrollers work?
A microcontroller is embedded inside of a system to control
a singular function in a device. It does this by interpreting
data it receives from its I/O peripherals using its central
processor. The temporary information that the
Advantages of TinyML
• Low Latency: Since the model runs on the edge,
the data doesn't have to be sent to a server to run
inference. This reduces the latency of the output.
• Low Power Consumption: As we discussed
before, microcontrollers consume very little power.
This enables them to run without being charged
for a really long time.
• Low Bandwidth: As the data doesn’t have to be
sent to the server constantly, less internet
bandwidth is used.
• Privacy: Since the model is running on the edge,
your data is not stored in any servers.
Applications of TinyML
By summarizing and analyzing data at the edge on low
power devices, TinyML offers many unique solutions.
Even though TinyML is an emerging field, it has been
used in production for years. The “OK Google”,
“Alexa”, “Hey Siri” wake words are an example of
TinyML. Here, the devices are always on and are
analyzing your voice to detect the wake word. I’ll add
some more applications of TinyML here.
• Industrial Predictive Maintenance: Machines
are prone to fault. Using TinyML on low powered
devices, it is possible to monitor the machine and
Why TinyML:
Unit 2
Data Visualization: Data visualization is the graphical
representation of information and data in a pictorial or graphical
format(Example: charts, graphs, and maps). Data visualization
tools provide an accessible way to see and understand trends,
patterns in data and outliers. Data visualization tools and
technologies are essential to analyze massive amounts of
information and make data-driven decisions. The concept of
using pictures is to understand data has been used since
centuries. General types of data visualizations are Charts,
Tables, Graphs, Maps, Dashboards.
fi
fl
fi
fi
.
sns.FacetGrid(hb,hue='SurvStat',size=5).map(sns.di
stplot,'age').add_legend()
Implementation:
•
Boxplot is available in the Seaborn library
•
Here x is considered as the dependent variable and y is
considered as the independent variable. These box
plots come under univariate analysis, which means
that we are exploring data only with one variable
• Here we are trying to check the impact of a feature
named “axil_nodes” on the class named “Survival
status” and not between any two independent
features
The code snippet is as follows
sns.boxplot(x='SurvStat',y='axil_nodes',data=hb)
.
From the above box and whisker plot we can conclude the
following observations
3. Violin Plot
fl
.
Implementation:
sns.violinplot(x='SurvStat',y='op_yr',data=hb,size
=6)
fi
.
plt.plot(x,y)
plt.bar(x,y)
fi
.
fi
.
plt.scatter(x,y)
.
fi
Unit 5
1. https://docs.microsoft.com/en-us/azure/cloud-adoption-
framework/ready/azure-best-practices/ai-machine-learning-
mlops
2. https://www.toolbox.com/tech/innovation/articles/top-open-
source-arti cial-intelligence-software/
3. https://www.ibm.com/in-en/cloud/learn/devops-a-complete-
guide
Unit 4
1. https://www.geeksforgeeks.org/distributed-database-system/
2. https://www.techtarget.com/searchoracle/de nition/
distributed-database
https://cs.uwaterloo.ca/~tozsu/courses/cs856/F02/lecture-1-
ho.pdf
:
fi
fi