Sign in

Imported from my Github repo:


If you are comfortable Vim you can enable Vim keyboard bindings from the settings.


Majority of Colab shortcuts are multi step shortcuts like Emacs. For example, to see all the available shortcuts you have to press Command/Ctrl + m prefix first then press h.

It is too much mental burden to remember every single shortcut, so typing out the command via command palette( Command/Ctrl+Shift+p) is not a bad idea.


Terminal have a builtin Tmux, which is neat for creating multiple panes. The downside is though you have to learn the Tmux shortcuts if you are…

Learn to scale your machine learning workflows at will.

I work at Yodo1, a leading mobile game platform company where we value streamlined efficiency and achieve it through automation. In this post, I am going to introduce two tools I have used on the job that can help you build efficient and scalable machine learning pipelines.

1. Papermill

We all love Jupyter Notebooks — interactive programming is fun and powerful — but it is difficult to use on its own in production. Stuffing everything into a single, massive notebook or running multiple notebooks with hacky shell scripts are not scalable practices.

However, we can refactor our notebooks with the help of…

Autoencoder in action

What is an anomaly?

Lexico defines it as: something that deviates from what is standard, normal, or expected.

This isn’t a great definition because it implies a perfect observer.

In the real world, an anomaly is a phenomenon that happens all the time either due to the imperfect observational capabilities of the observer or, as the dictionary definition states, due to something changing intrinsically within the subject we are investigating.

By definition, anomalies are a perfect opportunity to correct prior fallacious beliefs or to capture behavioral changes within subjects.

In this post, I will introduce and discuss:

  • A number of…

Learn how to ship in this 5-minute read on TensorFlow Serving

In a previous series, I covered the nuts and bolts of developing machine learning algorithms with TensorFlow. Now it’s time to demonstrate how to release our models into production.

In this post, you’ll learn:

  • Why we use TensorFlow Serving;
  • How to release models through TensorFlow Serving, with or without GPUs
  • How to deploy models into Kubernetes

Last week, I held a workshop in which I demonstrated how to create a text classifier with NLP framework Kashgari in 15 minutes. Here is the full source code.

Today, I will use…

Why TensorBoard?

In my previous three posts, I covered tf.keras and other features of TensorFlow 1.0 and 2.0 such as computational graphs, Eager execution, and AutoGraph. With this post, I’ll introduce you to the super useful tool, TensorBoard!

After reading, you should understand:

  • Why TensorBoard is useful;
  • How TensorBoard works, and what it can do
  • The basics of TensorBoard Graphs, Scalars, and Histograms.

Why is TensorBoard useful?

"In God we trust, all others must bring data." —W. Edwards Deming.

Although the human brain is an amazing machine, it’s only capable of processing one value at a time. …

why tf.keras? one ring to rule them all!

In the first two parts of this series, I covered Computation Graphs, plus Eager Execution and AutoGraph. However, as powerful as Graphs and Eager Execution may be, they simply aren’t that pleasant to use.

Whether you’re a seasoned researcher or simply a newcomer, the complexity of the TensorFlow ecosystem will likely overwhelm you. To lower the bar of entry, TensorFlow developers have placed tf.keras centerstage.

In this post, I will introduce and discuss:

  • The differences between Keras and tf.keras;
  • Architecture and an example of tf.keras in action;
  • How to use layers and methods of building models.

Keras vs tf.keras

François Chollet, a Google…

In my previous post, I covered computational graphs with TensorFlow 1.0. As we’ve learned, these graphs are stable and performant but the non-imperative way of dealing with them puts an extra cognitive load on developers.

With the arrival of TensorFlow 2.0, there was a paradigm shift. In this post, I’ll focus on a couple of the most important changes. By the end, you’ll know:

  • What Eager execution is;
  • What AutoGraph is;
  • When and how both are used.

Eager Execution

The TensorFlow graphs we covered last week aren’t friendly to newcomers, but TensorFlow 2.0 …

TensorFlow, a machine learning library created by Google, is not known for being easy to use. In response, TensorFlow 2.0 addressed a lot of the pain points with eager mode and AutoGraph features. Thing is, while these additions solve a lot of problems, they also complicate the existing programming model.

In this article, I’ll introduce the TensorFlow 1.0 programming model and discuss some of the design choices and accompanying problems. This will make the updates in TensorFlow 2.0, which we’ll discuss in the next part of the series, easier to understand.

Core Concepts

The TensorFlow framework has two components:

  • Library: for defining…

An Introduction to the Anatomy and Core Concepts of the Python Execution Model

Python has become a de facto programming language for machine learning. However, if you are jumping into Tensorflow, PyTorch, or any other Python machine learning framework without previous Python experience, you might be overwhelmed by its complexity.

(P.S. I’ll be writing about the Tensorflow programming model soon. Follow my blog to stay tuned!)

I made my own transition into a Python machine learning framework a few months ago and found it quite confusing. Fortunately, I’ve since come to a much better understanding of the Python execution model.

In this article, I’m going to share what I’ve learned by showcasing and…

The best way to learn is by doing! I’m excited to go from backend engineering to AI project development

I have been developing backend applications for the last few years. After reading Hackers & Painters I was captivated by the Lisp, to this day still, am. And under the influence of Paul and Hacker News,

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store