TensorFlow Estimators — TFLite and Model Generation

Articles

Building deep learning models for audio classification is pretty common and you will find numerous blogs and articles that describe how to build the standard audio classification models using Keras.

There are numerous use-cases associated with audio processing and deep learning, but the one that amazed me was audio separation library Spleeter — where they split the given audio into various tracks such as vocal, piano, drums, bass, and accompaniment. I was really baffled at the accuracy with which the library splits the tracks and I would give full credit to the authors for building such an amazing library.

One thing I observed while going through the library’s source code is that they have used Tensorflow’s estimator approach to build the model and not the Keras-based approach. That’s when I was intrigued to learn more about what Estimators are and their benefits.

Continue reading “TensorFlow Estimators — TFLite and Model Generation”

Image Classification on Android using a Keras Model Deployed in Flask

Articles

In a previous tutorial titled Image Upload from Android to a Python-based Flask Server, we created a project in which an Android app uploads an image to an HTTP server created using Flask in Python.

This tutorial extends on the previous project to classify that image in the Flask server using a pre-trained multi-class classification model and display the class label in an Android app. The model is a multilayer perceptron (MLP) model created using Keras, which is trained on the MNIST dataset.

Continue reading “Image Classification on Android using a Keras Model Deployed in Flask”

On-Device Video Subtitle Generation in SwiftUI

Articles

Amongst all the cool new tech releases and updates that happened last year, three in particular stood out to me:

SwiftUI — because I’m so over XIBs and Storyboards. SFSpeechRecognizer providing on-device and unlimited usage of transcription ML Kit’s Translation API also providing on-device and unlimited usage of language translation

These three advances inspired a few projects of mine, in which I’ve combined them in various ways. For instance, I’ve created a speech translator that uses zero data, even while traveling internationally.

As pointed out to me by a reader here on Medium, it only makes sense, then, for me to combine them all into one ‘last’ ultimate example: and on-device subtitle generator for video.

Continue reading “On-Device Video Subtitle Generation in SwiftUI”

InstaSaber: Transform a piece of paper into a lightsaber with mobile machine learning and AR

Articles

Machine learning is often viewed through the lens of transformation, whether it’s reshaping an industry, automating tedious tasks, or inspiring immersive experiences.

The latter transformation is front and center in Hart Woolery’s InstaSaber. It’s an ML-powered iOS app that lets users take a rolled up piece of paper and, by holding it in front of the phone’s camera, generate a realistic augmented reality (AR) lightsaber that’s highly-responsive to real-time hand movement.

Continue reading “InstaSaber: Transform a piece of paper into a lightsaber with mobile machine learning and AR”

Winks and Head Turns — Build a Tinder-Swipe iOS App Using ML Kit’s Face Detection API

Articles

With 3D Motion Sense technology already out on Pixel 4, it looks like our way of interacting with phones is going to change soon. Touchless interactions have a promising future for sure, with Apple’s most ambitious product to date— AR glasses—already under development.

Continue reading “Winks and Head Turns — Build a Tinder-Swipe iOS App Using ML Kit’s Face Detection API”

Classification Model Evaluation

Articles
What is Model Evaluation?

Model evaluation is the process of choosing between models, different model types, tuning parameters, and features. Better evaluation processes lead to better, more accurate models in your applications.

In this article, we’ll be discussing model evaluation for supervised classification models. We’ll cover evaluation procedures, evaluation metrics, and where to apply them.

Continue reading “Classification Model Evaluation”

One Bite pizza reviews: Building community trust with mobile machine learning

Articles

People are passionate about pizza. Deep dish, thin crust, traditional pan, flatbread — and those are just styles of crust, to say nothing of topping preferences. Pineapple? Anchovies??

With such a wide variety of styles and preferences to swear by, it’s important for pizza lovers to have an authoritative source for honest and legitimate reviews — and the chance to share their love of pizza with others.

Continue reading “One Bite pizza reviews: Building community trust with mobile machine learning”

Working with WebViews in Android

Articles

WebViews in Android are often seen as a lazy programmer’s tool—Don’t have enough time to build a particular screen for your app? Just use a WebView to display a page from your website instead. Users won’t be able to tell the difference…right?

Jokes aside, while you’ll often hear other developers discouraging the use of WebViews, they’re often necessary. For example, if you want to make a transaction with your bank or credit card, that transaction screen is a WebView.

Custom login screen for apps where security is a concern is often a WebView instead of a native widget. Google Mobile Ads (or Admob) also uses a WebView to display Banner and Interstitial ads on your app.

Continue reading “Working with WebViews in Android”