NLP Chronicles: spaCy, the NLP Library Built for Production

Articles

If you’re familiar with natural language processing or starting to learn about it, you might have come across NLTK (Natural Language Tool Kit), Stanford Core NLP, etc.

Think of it this way. Natural language processing (in Python) is a kingdom, and NLTK is the king. Everyone admires the king and respects what he has done for the kingdom. But there comes a time when every king should step down and make way for the next generation

Continue reading NLP Chronicles: spaCy, the NLP Library Built for Production

AutoML Vision Edge: Deploying and Running TensorFlow Models using Docker Containers

Articles

This is the fifth blog post in my AutoML Vision Edge series. The post will help you run AutoML Edge models on Docker containers. If you haven’t been following this blog post series till now, here’s a quick recap:

We started the series by learning how we can train and run inference on an edge-ready ML model in hours using Google Cloud’s AutoML.

Continue reading AutoML Vision Edge: Deploying and Running TensorFlow Models using Docker Containers

AutoML Vision Edge: Build machine learning models for mobile and edge devices—in hours

Articles

Though I support learning machine learning from scratch, I’m always interested in validating the classic Cost + Effort < Output.

Machine learning is interesting conceptually, but at the same time, it’s hard to understand for a beginner. A lot of effort is needed to master and understand the foundational mathematics and logic. But luckily, there are a number of tools available online to decrease these efforts exponentially. One of them is Google Cloud AutoML.

Continue reading AutoML Vision Edge: Build machine learning models for mobile and edge devices—in hours

Deep Video Portraits

Articles

Synthesizing and editing video portraits—i.e., videos framed to show a person’s head and upper body—is an important problem in computer graphics, with applications in video editing and movie postproduction, visual effects, visual dubbing, virtual reality, and telepresence, among others.

The problem of synthesizing a photo-realistic video portrait of a target actor that mimics the actions of a source actor—and especially where the source and target actors can be different subjects—is still an open problem.

Continue reading Deep Video Portraits

Hardware acceleration for machine learning on Apple and Android devices

Articles

Recently, Apple showcased its new iPhone lineup, launching the iPhone XS, XS max, and XR. The most remarkable feature Apple included in this new line of devices is their smartest and most powerful chip ever — the A12 Bionic SoC (system on a chip).

Apple claims it has an 8-core Neural Engine dedicated to advanced, real-time machine learning applications. Similarly, Google has improved the Neural Net API in its Android framework in the latest OS: 9.0 Pie. Both of these features are responsible for something called hardware acceleration.

Continue reading “Hardware acceleration for machine learning on Apple and Android devices”

Using Lottie on Android to display dynamic animations in your apps

Articles

There’s a saying that goes like this: A picture is worth a thousand words, while an animation is worth a thousand pictures (which in turn means that it is worth a million words 😉)!

This is especially true in mobile applications, where effective animations can communicate to users what an app (or certain features within an app) is supposed to do. This is always a tough task, but tougher when we only rely on text or static images.

Continue reading Using Lottie on Android to display dynamic animations in your apps

Research Guide for Video Frame Interpolation with Deep Learning

Articles

In this research guide, we’ll look at deep learning papers aimed at synthesizing video frames within an existing video. This could be in between video frames, known as interpolation, or after them, known as extrapolation.

The better part of this guide will cover interpolation. Interpolation is useful in software editing tools as well as in generating video animations. It can also be used to generate clear video frames in sections where a video is blurred.

Continue reading Research Guide for Video Frame Interpolation with Deep Learning