Alibaba’s Mobile Neural Network: A deep learning framework for mobile and embedded devices

Articles

Supporting deep learning inference on mobile and edge devices has gained popularity more than ever and we have a greater number of options to choose from when carrying out AI-related development tasks on our little companions than we could have guessed.

Not only is implementing machine learning models—the standard for tasks such as computer vision—faster and easier on mobile devices these days, but the renewed competition between the developers of frameworks supporting them also seems to have ensured that the process itself reaches new heights in terms of performance, flexibility and adaptability.

Continue reading Alibaba’s Mobile Neural Network: A deep learning framework for mobile and embedded devices

Beginner’s Guide to NativeScript: Creating Your First Cross-Platform App

Android Articles iOS

Last month, I was asked to create Android and iOS versions of an app for a product. And here’s what happened…

Being a JavaScript developer, I always find it difficult to design Android and iOS apps to provide a native experience to the users. I asked my friend—a great Android developer—for some help. But after some time, we realized we still needed to look for someone who could help us design an iOS app.

Continue reading “Beginner’s Guide to NativeScript: Creating Your First Cross-Platform App”

Image Recognition for Android with a Custom TensorFlow Lite Model

Articles

Thanks to TensorFlow Lite (TFLite), we can build deep learning models that work on mobile devices. In fact, models generated by TFLite are optimized specifically for mobile and edge deployment for that purpose. After a deep learning model is created in TensorFlow, developers can use the TensorFlow Lite converter to convert that model to a format that runs in mobile devices.

Continue reading Image Recognition for Android with a Custom TensorFlow Lite Model

Evaluating Unsupervised Sentiment Analysis Tools Using Labeled Data

Articles

Sentiment analysis is one of the most popular natural language processing (NLP) applications in the business world. Also known as opinion-mining, it’s a subfield of NLP that analyzes texts and attempts to classify them as positive or negative.

In supervised learning, this would be called a classification problem, wherein the texts have already been labeled and we use these labels to train machine learning models in order to generalize and classify unseen datasets successfully.

Continue reading Evaluating Unsupervised Sentiment Analysis Tools Using Labeled Data

Xcode Build Settings in Depth

Articles

If you’ve ever done any MacOS or iOS development, you’ve also eventually had to deal with Xcode build settings.

So what are those and what do we know about them?

For a standard iOS project, there are roughly 500 build settings grouped into around 50 categories. These build settings control virtually every single aspect of how your app is built and packaged. At the very least, build settings are what make Debug build so different from Release build.

Continue reading Xcode Build Settings in Depth

The 7 NLP Techniques That Will Change How You Communicate in the Future (Part II)

Articles

In part 1, I introduced the field of Natural Language Processing (NLP) and the deep learning movement that’s powered it. I also walked you through 3 critical concepts in NLP: text embeddings (vector representations of strings), machine translation (using neural networks to translate languages), and dialogue & conversation (tech that can hold conversations with humans in real time). In part 2, I’ll cover 4 other important NLP techniques that you should pay attention to in order to keep up with the fast growing pace of this research field.

Continue reading The 7 NLP Techniques That Will Change How You Communicate in the Future (Part II)

Writing Native Java Code in Flutter for Android

Articles

Flutter has a rich pool of packages and widgets. You can achieve most things by either using the rich widget pool that Flutter offers or by using a package.

However, sometimes you might find yourself in situations that demand you write native Java code*.

In this fourth installment of our Flutter series, we’ll look at how you can write Java code that communicates with your Flutter application.

Continue reading Writing Native Java Code in Flutter for Android

Understanding Tree-Based Machine Learning Methods

Articles

Tree-based machine learning methods are among the most commonly used supervised learning methods. They are constructed by two entities; branches and nodes. Tree-based ML methods are built by recursively splitting a training sample, using different features from a dataset at each node that splits the data most effectively. The splitting is based on learning simple decision rules inferred from the training data.

Continue reading Understanding Tree-Based Machine Learning Methods

Text Classification Using Long Short Term Memory & GloVe Embeddings

Articles

Preparing textual data for machine learning is a little different than the preparation of tabular data. What makes text data different is the fact that it’s majorly in string form.

Therefore, we have to find the best way to represent it in numerical form. In this piece, we’ll see how we can prepare textual data using TensorFlow. Eventually, we’ll build a bidirectional long short term memory model to classify text data.

Continue reading “Text Classification Using Long Short Term Memory & GloVe Embeddings”