Resource-efficient Machine Learning in 2 KB RAM for the Internet of Things

This paper develops a novel tree-based algorithm, called Bonsai, for efficient prediction on IoT devices – such as those based on the Arduino Uno board having an 8 bit ATmega328P microcontroller operating at 16 MHz with no native floating point support, 2 KB RAM and 32 KB read-only flash. Bonsai maintains prediction accuracy while minimizing model size and prediction costs by: (a) developing a tree model which learns a single, shallow, sparse tree with powerful nodes; (b) sparsely projecting all data into a low-dimensional space in which the tree is learnt; and (c) jointly learning all tree and projection parameters. Experimental results on multiple benchmark datasets demonstrate that Bonsai can make predictions in milliseconds even on slow microcontrollers, can fit in KB of memory, has lower battery consumption than all other algorithms while achieving prediction accuracies that can be as much as 30% higher than stateof- the-art methods for resource-efficient machine learning. Bonsai is also shown to generalize to other resource constrained settings beyond IoT by generating significantly better search results as compared to Bing’s L3 ranker when the model size is restricted to 300 bytes. Bonsai’s code can be downloaded from (BonsaiCode).

The 50 Best Public Datasets for Machine Learning

What are some open datasets for machine learning? After scrapping the web for hours after hours, we have created a great cheat sheet for high quality and diverse machine learning datasets.

Forecasting at Uber: An Introduction

This article is the first in a series dedicated to explaining how Uber leverages forecasting to build better products and services. In recent years, machine learning, deep learning, and probabilistic programming have shown great promise in generating accurate forecasts. In addition to standard statistical algorithms, Uber builds forecasting solutions using these three techniques. Below, we discuss the critical components of forecasting we use, popular methodologies, backtesting, and prediction intervals.

Low-Code Development

As organizations work to automate more knowledge-driven business processes, business and IT need to speak the same language. With complex task management passing through multiple stages and decision points, it takes a lot of effort for subject matter experts to explain processes to someone else, particularly a software developer who may or may not have domain knowledge. When requirements are misunderstood, we usually blame the developer for not listening. But in truth, it’s just as common for the business owner to have struggled to properly explain every concept. Learn more about OpenText AppWorks and low-code application development. The low-code application development platform in OpenText AppWorks gives business owners and subject matter experts a direct role in developing digital business automation. It’s an information-centered approach: Business users can think about the policy or workflow from their perspective, defining the information that needs action rather than working around a rigid process.

Deep Learning in the Trenches: Understanding Inception Network from Scratch

This article focuses on the paper ‘Going deeper with convolutions’ from which the hallmark idea of inception network came out. Inception network was once considered a state-of-the-art deep learning architecture (or model) for solving image recognition and detection problems. It put forward a breakthrough performance on the ImageNet Visual Recognition Challenge (in 2014), which is a reputed platform for benchmarking image recognition and detection algorithms. Along with this, it set off a ton of research in the creation of new deep learning architectures with innovative and impactful ideas. We will go through the main ideas and suggestions propounded in the aforementioned paper and try to grasp the techniques within. In the words of the author: ‘In this paper, we will focus on an efficient deep neural network architecture for computer vision, code named Inception, which derives its name from (…) the famous ‘we need to go deeper’ internet meme.’

Must Read Books for Beginners on Machine Learning and Artificial Intelligence

• Machine Learning Yearning
• Programming Collective Intelligence
• Machine Learning for Hackers
• Machine Learning by Tom M Mitchell
• The Elements of Statistical Learning
• Learning from Data
• Pattern Recognition and Machine Learning
• Natural Language Processing with Python
• Artificial Intelligence: A Modern Approach
• Artificial Intelligence for Humans
• Paradigm of Artificial Intelligence Programming
• Artificial Intelligence: A New Synthesis
• Machine Learning Yearning
• The Singularity is Near
• Life 3.0 – Being Human in the Age of Artificial Intelligence
• The Master Algorithm

Time Series Analysis using R

Learn Time Series Analysis with R along with using a package in R for forecasting to fit the real-time series to match the optimal model.

Introduction To GUI With Tkinter In Python

In this tutorial, you are going to learn how to create GUI apps in Python. You’ll also learn about all the elements needed to create GUI apps in Python.

The Main Approaches to Natural Language Processing Tasks

Let’s have a look at the main approaches to NLP tasks that we have at our disposal. We will then have a look at the concrete NLP tasks we can tackle with said approaches.

Accelerating Your Algorithms in Production With Python and Intel MKL

Numerical algorithms are computationally demanding, which makes performance an important consideration when using Python for machine learning, especially as you move from desktop to production.
In this webinar, we look at:
• Role of productivity and performance for numerical computing and machine learning
• Python algorithm choice and efficient package usage
• Requirements for efficient use of hardware
• NumPy and SciPy performance with the Intel MKL (math kernel library)
• How Intel and ActivePython help you accelerate and scale Python performance

Adversarial Examples, Explained

Deep neural networks – the kind of machine learning models that have recently led to dramatic performance improvements in a wide range of applications – are vulnerable to tiny perturbations of their inputs. We investigate how to deal with these vulnerabilities.

Flight rules for Git

The hard-earned body of knowledge recorded in manuals that list, step-by-step, what to do if X occurs and why. Essentially, they are extremely detailed, scenario-specific standard operating procedures. What to do after you shoot yourself in the foot in interesting ways with Git.

RStudio 1.2 Preview: Stan

We previously discussed improved support in RStudio v1.2 for SQL, D3, Python, and C/C++. Today, we’re excited to announce improved support for the Stan programming language. The Stan programming language makes it possible for researchers and analysts to write high-performance and scalable statistical models.

Building a Personal Computer for AI and Data Science

This is it. Your build guide for constructing your personal home computer for AI and Data Science. There are already a lot of build guides out there for deep learning. Many for Data Science too. And some here and there for reinforcement learning. But very very few for all of them.That’s why I wrote this guide, for people who were, or may at some point be, interested in all of these fields!

Developing Good Twitter Data Visualizations using Matplotlib

In this article, we will learn about how to collect Twitter data and create interesting visualizations in Python. We will briefly explore about how to collect tweets using Tweepy and we will mostly explore about the various Data Visualization techniques for the Twitter data using Matplotlib. Before that, Data Visualization and the overall statistical process that enables it will be explained.

Review: Artificial Intelligence in 2018

Artificial Intelligence is not a buzzword anymore. As of 2018, it is a well-developed branch of Big Data analytics with multiple applications and active projects. Here is a brief review of the topic.
AI is the umbrella term for various approaches to big data analysis, like machine learning models and deep learning networks. We have recently demystified the terms of AI, ML and DL and the differences between them, so feel free to check this up. In short, AI algorithms are various data science mathematical models that help improve the outcome of the certain process or automate some routine task
However, the technology has now matured enough to move these data science advancements from the pilot projects phase to the stage of production-ready deployment at scale. Below is the overview of various aspects of AI technology adoption across the IT industry in 2018.
We take a look at the parameters like:
• the most widely used types of AI algorithms,
• the way the companies apply the AI,
• the industries where AI implementation will have the most impact
• the most popular languages, libraries, and APIs used for AI development
Thus said, the numbers used in this review come from a variety of open sources like Statista, Forbes, BigDataScience, DZone and other.

Will Models Rule the World?

We reached out to the speakers to ask them about the importance of model-based decision making, how models combine with creativity, and the future of models for the industry.

Build your first chatbot using Python NLTK

A chatbot (also known as a talkbot, chatterbot, Bot, IM bot, interactive agent, or Artificial Conversational Entity) is a computer program or an artificial intelligence which conducts a conversation via auditory or textual methods. Such programs are often designed to convincingly simulate how a human would behave as a conversational partner, thereby passing the Turing test. Chatbots are typically used in dialog systems for various practical purposes including customer service or information acquisition. Some chatterbots use sophisticated natural language processing systems, but many simpler systems scan for keywords within the input, then pull a reply with the most matching keywords, or the most similar wording pattern, from a database.’

Scala for Data Science Engineering – Part 1

Data Science is an interesting field to work in, a combination of statistics and real world programming. There are number of programming languages used by Data Science Engineers, each of which has unique features. Most famous among them are Scala, Python and R. Since I am working with Scala at work, I would like to share some of the most important concepts that I come across and worthy for the beginners in Data Science Engineering.

Scala for Data Science Engineering – Part 2

Hi everyone, lets continue the discussion on Scala for Data Science Engineering. Find the first part here. In this part I will discuss about Partial Functions, Pattern Matching & Case Classes, Collections, Currying and Implicit.