Skip to content

Commit

Permalink
I broke the .callout in a prev. push
Browse files Browse the repository at this point in the history
  • Loading branch information
profvjreddi committed Jun 11, 2024
1 parent bfaf9ee commit 4da9bf3
Show file tree
Hide file tree
Showing 17 changed files with 52 additions and 52 deletions.
6 changes: 3 additions & 3 deletions contents/ai_for_good/ai_for_good.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ Widespread TinyML applications can help digitize smallholder farms to increase p

With greater investment and integration into rural advisory services, TinyML could transform small-scale agriculture and improve farmers' livelihoods worldwide. The technology effectively brings the benefits of precision agriculture to disconnected regions most in need.

:::{#exr-agri.callout-caution collapse="true"}
:::{#exr-agri .callout-caution collapse="true"}

### Crop Yield Modeling

Expand Down Expand Up @@ -125,7 +125,7 @@ An on-device algorithm for early and timely life-threatening VA detection will i

The champion, GaTech EIC Lab, obtained 0.972 in $F_\beta$ (F1 score with a higher weight to recall), 1.747 ms in latency, and 26.39 kB in memory footprint with a deep neural network. An ICD with an on-device VA detection algorithm was [implanted in a clinical trial](https://youtu.be/vx2gWzAr85A?t=2359).

:::{#exr-hc.callout-caution collapse="true"}
:::{#exr-hc .callout-caution collapse="true"}

### Clinical Data: Unlocking Insights with Named Entity Recognition

Expand Down Expand Up @@ -253,7 +253,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

- @exr-agri
Expand Down
6 changes: 3 additions & 3 deletions contents/benchmarking/benchmarking.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ These types of microbenchmarks include zooming into very specific operations or

Example: [DeepBench](https://github.com/baidu-research/DeepBench), introduced by Baidu, is a good example of something that assesses the above. DeepBench assesses the performance of basic operations in deep learning models, providing insights into how different hardware platforms handle neural network training and inference.

:::{#exr-cuda.callout-caution collapse="true"}
:::{#exr-cuda .callout-caution collapse="true"}

### System Benchmarking - Tensor Operations

Expand Down Expand Up @@ -449,7 +449,7 @@ Metrics: We will measure the following metrics:

By measuring these metrics, we can assess the performance of the object detection model on the edge device and identify any potential bottlenecks or areas for optimization to enhance real-time processing capabilities.

:::{#exr-perf.callout-caution collapse="true"}
:::{#exr-perf .callout-caution collapse="true"}

### Inference Benchmarks - MLPerf

Expand Down Expand Up @@ -821,7 +821,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
10 changes: 5 additions & 5 deletions contents/data_engineering/data_engineering.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ In this context, using KWS as an example, we can break each of the steps out as
7. **Iterative Feedback and Refinement:**
Once a prototype KWS system is developed, it's crucial to test it in real-world scenarios, gather feedback, and iteratively refine the model. This ensures that the system remains aligned with the defined problem and objectives. This is important because the deployment scenarios change over time as things evolve.

:::{#exr-kws.callout-caution collapse="true"}
:::{#exr-kws .callout-caution collapse="true"}

### Keyword Spotting with TensorFlow Lite Micro

Expand Down Expand Up @@ -174,7 +174,7 @@ Web scraping can yield inconsistent or inaccurate data. For example, the photo i

![A picture of old traffic lights (1914). Credit: [Vox.](https://www.vox.com/2015/8/5/9097713/when-was-the-first-traffic-light-installed)](images/jpg/1914_traffic.jpeg){#fig-traffic-light}

:::{#exr-ws.callout-caution collapse="true"}
:::{#exr-ws .callout-caution collapse="true"}

### Web Scraping

Expand Down Expand Up @@ -219,7 +219,7 @@ While synthetic data offers numerous advantages, it is essential to use it judic

![Increasing training data size with synthetic data generation. Credit: [AnyLogic](https://www.anylogic.com/features/artificial-intelligence/synthetic-data/).](images/jpg/synthetic_data.jpg){#fig-synthetic-data}

:::{#exr-sd.callout-caution collapse="true"}
:::{#exr-sd .callout-caution collapse="true"}

### Synthetic Data
Let us learn about synthetic data generation using Generative Adversarial Networks (GANs) on tabular data. We'll take a hands-on approach, diving into the workings of the CTGAN model and applying it to the Synthea dataset from the healthcare domain. From data preprocessing to model training and evaluation, we'll go step-by-step, learning how to create synthetic data, assess its quality, and unlock the potential of GANs for data augmentation and real-world applications.
Expand Down Expand Up @@ -304,7 +304,7 @@ Maintaining the integrity of the data infrastructure is a continuous endeavor. T

There is a boom in data processing pipelines, commonly found in ML operations toolchains, which we will discuss in the MLOps chapter. Briefly, these include frameworks like MLOps by Google Cloud. It provides methods for automation and monitoring at all steps of ML system construction, including integration, testing, releasing, deployment, and infrastructure management. Several mechanisms focus on data processing, an integral part of these systems.

:::{#exr-dp.callout-caution collapse="true"}
:::{#exr-dp .callout-caution collapse="true"}

### Data Processing

Expand Down Expand Up @@ -493,7 +493,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
6 changes: 3 additions & 3 deletions contents/dl_primer/dl_primer.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ MLPs are basic deep learning architectures comprising three layers: an input lay

In embedded AI systems, MLPs can function as compact models for simpler tasks like sensor data analysis or basic pattern recognition, where computational resources are limited. Their ability to learn non-linear relationships with relatively less complexity makes them a suitable choice for embedded systems.

:::{.callout-caution #exr-mlp collapse="false"}
:::{ .callout-caution #exr-mlp collapse="false"}

##### Multilayer Perceptrons (MLPs)

Expand All @@ -140,7 +140,7 @@ CNNs are mainly used in image and video recognition tasks. This architecture emp

In embedded AI, CNNs are crucial for image and video recognition tasks, where real-time processing is often needed. They can be optimized for embedded systems using techniques like quantization and pruning to minimize memory usage and computational demands, enabling efficient object detection and facial recognition functionalities in devices with limited computational resources.

:::{.callout-caution #exr-cnn collapse="false"}
:::{ .callout-caution #exr-cnn collapse="false"}

### Convolutional Neural Networks (CNNs)

Expand Down Expand Up @@ -282,7 +282,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
2 changes: 1 addition & 1 deletion contents/efficient_ai/efficient_ai.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu
- [Continuous Evaluation Challenges for TinyML.](https://docs.google.com/presentation/d/1OuhwH5feIwPivEU6pTDyR3QMs7AFstHLiF_LB8T5qYQ/edit?usp=drive_link&resourcekey=0-DZxIuVBUbJawuFh0AO-Pvw)
:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}

#### Exercises

Expand Down
8 changes: 4 additions & 4 deletions contents/frameworks/frameworks.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ The Parameter Server (PS) architecture is a popular design for distributing the

**Computation:** The worker processes, which could be run in parallel, were stateless and purely computational. They processed data and computed gradients without maintaining any state or long-term memory [@li2014communication].

:::{#exr-tfc.callout-caution collapse="true"}
:::{#exr-tfc .callout-caution collapse="true"}

### TensorFlow Core

Expand All @@ -129,7 +129,7 @@ Let's comprehensively understand core machine learning algorithms using TensorFl
[![](https://colab.research.google.com/assets/colab-badge.png)](https://colab.research.google.com/drive/15Cyy2H7nT40sGR7TBN5wBvgTd57mVKay#scrollTo=IEeIRxlbx0wY)
:::

:::{#exr-tfl.callout-caution collapse="true"}
:::{#exr-tfl .callout-caution collapse="true"}

### TensorFlow Lite

Expand Down Expand Up @@ -166,7 +166,7 @@ TensorFlow includes libraries to help users develop and deploy more use-case-spe

One of TensorFlow's biggest advantages is its integration with Keras, though, as we will cover in the next section, Pytorch recently added a Keras integration. Keras is another ML framework built to be extremely user-friendly and, as a result, has a high level of abstraction. We will cover Keras in more depth later in this chapter. However, when discussing its integration with TensorFlow, it was important to note that it was originally built to be backend-agnostic. This means users could abstract away these complexities, offering a cleaner, more intuitive way to define and train models without worrying about compatibility issues with different backends. TensorFlow users had some complaints about the usability and readability of TensorFlow's API, so as TF gained prominence, it integrated Keras as its high-level API. This integration offered major benefits to TensorFlow users since it introduced more intuitive readability and portability of models while still taking advantage of powerful backend features, Google support, and infrastructure to deploy models on various platforms.

:::{#exr-k.callout-caution collapse="true"}
:::{#exr-k .callout-caution collapse="true"}

### Exploring Keras: Building, Training, and Evaluating Neural Networks

Expand Down Expand Up @@ -759,7 +759,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu
* [TFLite Micro NN Operations.](https://docs.google.com/presentation/d/1ZwLOLvYbKodNmyuKKGb_gD83NskrvNmnFC0rvGugJlY/edit?usp=drive_link)
:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
4 changes: 2 additions & 2 deletions contents/hw_acceleration/hw_acceleration.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -594,7 +594,7 @@ Programming models provide abstractions to map computations and data onto hetero

Key challenges include expressing parallelism, managing memory across devices, and matching algorithms to hardware capabilities. Abstractions must balance portability with allowing hardware customization. Programming models enable developers to harness accelerators without hardware expertise. These details are discussed in the [AI frameworks](../frameworks/frameworks.qmd) section.

:::{#exr-tvm.callout-caution collapse="true"}
:::{#exr-tvm .callout-caution collapse="true"}

### Software for AI Hardware - TVM

Expand Down Expand Up @@ -1021,7 +1021,7 @@ Here is a curated list of resources to support students and instructors in their
* *Coming soon.*
:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

* @exr-tvm
Expand Down
4 changes: 2 additions & 2 deletions contents/ml_systems/ml_systems.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ TinyML excels in low-power and resource-constrained settings. These environments

![Examples of TinyML device kits. Credit: [Widening Access to Applied Machine Learning with TinyML.](https://arxiv.org/pdf/2106.04008.pdf)](images/jpg/tiny_ml.jpg){#fig-tinyml-example}

:::{#exr-tinyml.callout-caution collapse="true"}
:::{#exr-tinyml .callout-caution collapse="true"}

### TinyML with Arduino

Expand Down Expand Up @@ -278,7 +278,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
8 changes: 4 additions & 4 deletions contents/ondevice_learning/ondevice_learning.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,7 @@ There are advantages to reusing the features:
1. **Hierarchical Feature Learning:** Deep learning models, particularly Convolutional Neural Networks (CNNs), can learn hierarchical features. Lower layers typically learn generic features like edges and shapes, while higher layers learn more complex and task-specific features. Transfer learning allows us to reuse the generic features learned by a model and finetune the higher layers for our specific task.
2. **Boosting Performance:** Transfer learning has been proven to boost the performance of models on tasks with limited data. The knowledge gained from the source task can provide a valuable starting point and lead to faster convergence and improved accuracy on the target task.

:::{#exr-tlb.callout-caution collapse="true"}
:::{#exr-tlb .callout-caution collapse="true"}

### Transfer Learning

Expand Down Expand Up @@ -478,7 +478,7 @@ To accomplish this goal, Google employed its algorithm DP-FTRL, which provides a

![Differential Privacy in G Board. Credit: Zheng et al., ([2023](https://arxiv.org/abs/2305.18465)).](images/png/ondevice_gboard_approach.png){#fig-differential-privacy}

:::{#exr-flg.callout-caution collapse="true"}
:::{#exr-flg .callout-caution collapse="true"}

### Federated Learning - Text Generation

Expand All @@ -488,7 +488,7 @@ Have you ever used those smart keyboards to suggest the next word? With federate

:::

:::{#exr-fli.callout-caution collapse="true"}
:::{#exr-fli .callout-caution collapse="true"}

### Federated Learning - Image Classification

Expand Down Expand Up @@ -734,7 +734,7 @@ These slides serve as a valuable tool for instructors to deliver lectures and fo

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises


Expand Down
4 changes: 2 additions & 2 deletions contents/ops/ops.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -728,7 +728,7 @@ Deploying low-powered devices also presents inherent challenges. Optimized model

While impressive results are achievable, users shouldn't view Edge Impulse as a "Push Button ML" solution. Careful project scoping, data collection, model evaluation, and testing are still essential. As with any development tool, reasonable expectations and diligence in application are advised. However, Edge Impulse can accelerate embedded ML prototyping and deployment for developers willing to invest the requisite data science and engineering effort.

:::{#exr-ei.callout-caution collapse="true"}
:::{#exr-ei .callout-caution collapse="true"}

### Edge Impulse

Expand Down Expand Up @@ -921,7 +921,7 @@ These slides serve as a valuable tool for instructors to deliver lectures and fo

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
8 changes: 4 additions & 4 deletions contents/optimizations/optimizations.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@ Last but not least, adherence to legal and ethical guidelines is paramount, espe

![Sparse weight matrix.](images/jpg/modeloptimization_sprase_matrix.jpeg){#fig-sparse-matrix}

:::{#exr-p.callout-caution collapse="true"}
:::{#exr-p .callout-caution collapse="true"}

### Pruning

Expand Down Expand Up @@ -299,7 +299,7 @@ The work of Tamara G. Kolda and Brett W. Bader, ["Tensor Decompositions and Appl

![Tensor decomposition. Credit: @xinyu.](images/png/modeloptimization_tensor_decomposition.png){#fig-tensor-decomposition}

:::{#exr-mc.callout-caution collapse="true"}
:::{#exr-mc .callout-caution collapse="true"}

### Scalable Model Compression with TensorFlow

Expand Down Expand Up @@ -343,7 +343,7 @@ Similarly, MorphNet is a neural network optimization framework designed to autom

TinyNAS and MorphNet represent a few of the many significant advancements in the field of systematic neural network optimization, allowing architectures to be systematically chosen and generated to fit perfectly within problem constraints.

:::{#exr-md.callout-caution collapse="true"}
:::{#exr-md .callout-caution collapse="true"}

### Edge-Aware Model Design

Expand Down Expand Up @@ -977,7 +977,7 @@ These slides serve as a valuable tool for instructors to deliver lectures and fo

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
6 changes: 3 additions & 3 deletions contents/privacy_security/privacy_security.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -831,7 +831,7 @@ The system uses hardware-based secure random number generation to sample from th

Multiple third-party audits have verified that Apple's system provides rigorous differential privacy protections in line with their stated policies. Of course, assumptions around composition over time and potential re-identification risks still apply. Apple's deployment shows how differential Privacy can be realized in large real-world products when backed by sufficient engineering resources.

:::{#exr-dptf.callout-caution collapse="true"}
:::{#exr-dptf .callout-caution collapse="true"}

### Differential Privacy - TensorFlow Privacy

Expand Down Expand Up @@ -965,7 +965,7 @@ For many real-time and embedded applications, fully homomorphic encryption remai

**Hybrid Designs:** Rather than encrypting entire workflows, selective application of homomorphic encryption to critical subcomponents can achieve protection while minimizing overheads.

:::{#exr-he.callout-caution collapse="true"}
:::{#exr-he .callout-caution collapse="true"}

### Homomorphic Encryption

Expand Down Expand Up @@ -1110,7 +1110,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
2 changes: 1 addition & 1 deletion contents/responsible_ai/responsible_ai.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -472,7 +472,7 @@ These slides are a valuable tool for instructors to deliver lectures and for stu

:::

:::{.callout-caution collapse="false"}
:::{ .callout-caution collapse="false"}
#### Exercises

To reinforce the concepts covered in this chapter, we have curated a set of exercises that challenge students to apply their knowledge and deepen their understanding.
Expand Down
Loading

0 comments on commit 4da9bf3

Please sign in to comment.