June 15, 2016

Get Started with AI: 5 Paths to Machine Learning | Bonsai

Andrew Ng, the Chief Scientist at Baidu Research, joked at a recent industry conference that his hairdresser is the only person he can think of whose job won’t someday be affected by artificial intelligence. 

A few moments later, Mr. Ng. was asked if there was enough machine learning talent in the workforce today. He answered with a categorical “no”.  He’s certainly right about the lack of AI experts. An RJMetrics report found only 11,400 people in the world list Data Scientist as their profession; over half of them work in the United States. 

It’s a stark contrast to the more than18.5 million software developers worldwide, many of whom will presumably want to implement AI technology in their professional and personal projects as it continues to permeate just about every industry.  But where do developers who can code, but are not yet versed in machine learning, begin? Many entrepreneurs and programmers see the winds shifting and want to develop an AI strategy for their own work, but they’re not sure how to get started. Truthfully, the options are rather limited (which is exactly why we started Bonsai). But for those who want to dip their toes into the proverbial AI waters right now, here are 5 paths you can take…

Getting Started

Become an AI expert yourself

When asked how companies could kickstart their AI efforts despite a lack of available talent, Ng urged the audience to turn to Coursera and personally develop the skills needed to build machine learning models. Of course, as a co-founder of Coursera, Ng might be just a bit biased…but it’s not bad advice.  

AI is getting a lot of attention recently, thanks in part to substantial open-sourced efforts by technology giants (we’ll get to those later). It might feel like AI is happening right now and it will take too long to learn it yourself. But these are early days. AI is the biggest opportunity since the advent of the internet; it’s just getting started and it’s not going away. 

Depending on your computer science and math background, you’ll want to brush up on the following:

  • Statistics
  • Calculus
  • Linear algebra
  • Algorithms
  • Convex optimization
  • Graph theory
  • Current programming tools and trends
  • Data analysis

Once you’ve got a handle on those, you should look towards practical skills that will help you understand machine learning at a low level.These skills might include things like:

  • Data wrangling
  • Cross validation
  • Distributed computing
  • Data visualization
  • Database management
  • Feature engineering

Additionally, if you feel like breaking out your stats skills and examining, quantifying, and visualizing your data set to choose features and explore its statistical properties, R is a great tool to familiarize yourself with.  

It might seem like a lot but you don’t have to do it alone. Data science bootcamps like The Data Incubator and Zipfian Academy are a fast, and intense, way to get up to speed on these subjects. It’s also important to note that, of course, the exact role and necessary skill set of a data scientist varies based on the problem they’re trying to solve. A data scientist tasked with building models to predict when sales will slow, for instance, will utilize visualization and communications skills to turn a model’s predictions into actionable and digestible reports.

Hire an AI expert

Harvard Business Review once hailed Data Science as the ‘sexiest job of the 21st century’. Based on demand, HBR may be right. Data scientists’ combined programming, math, stats and analytic skills make them so sought after that a McKinsey report found demand for data scientists may be 60% greater than supply by 2018.  

The data scientists that do exist are typically employed by large research universities or large tech companies like Google and Facebook, and that makes sense; the prospect of building a self-driving car is likely more alluring than building an AI model to help a small company automate insurance forms. But the use cases for AI are getting more intriguing and if you’ve got a cool project, you might just convince one of these mythical data scientist unicorns to join your team. Or if you’ve got millions in the bank, you can go the Uber route and buy up a university robotics department.

Open-source libraries and frameworks

2016 is proving to be a good year for machine learning frameworks. In just the past five months, Microsoft, Baidu and Amazon have all open-sourced their own ML libraries (CNTKWarpCTC, and DSSTNE, respectively), OpenAI released OpenAI Gym and Google has continued to push major updates to Tensorflow. These come in addition to other popular open-source libraries including TheanoTorchCaffeScikit-learn, and libraries with commercial support like Turi or H20.  

Each of these open-source libraries facilitates AI experts in more quickly building intelligent models. Instead of writing your own implementation of a neural network, which takes time and deep math expertise, engineers can code an efficient neural network by stitching together Tensorflow’s ‘building blocks’, saving time and reducing room for error. Other paid options, like Turi or H2O, offer advanced features and improved performance.  

ML libraries are a great resource for machine learning practitioners and give engineers a great deal of control over a model’s outcome as well as the ability to tweak and improve upon it. But they are by no means a turnkey solution for programmers new to machine learning. You’ll need a practical understanding of how to choose between recurrent and convolutional neural nets, how to set parameters and other technical details of machine learning to build a model that best solves your specific problem. It’s also likely that you’ll need to scrap your code every time you start a new project in one of these frameworks as reuse is difficult.

Statistical analysis tools

As software continues to “eat the world”, companies of all sizes are finding themselves with mountains of user data. But data is most useful when you can find the signal in the noise. If you have data but you don’t see the patterns, statistical analysis tools are a great resource to make your data work harder for you.   

Say you run an ice cream shop. You keep spreadsheets recording each day’s sales and conditions: flavors sold, the day’s temperature, the weather, and if there was a baseball game in the park next door. With all that data, you’d like a model to predict how many cones you’ll sell based on the day’s conditions.   

There are quite a few services and tools you can use that each take varied approaches to this problem. A service like BigML or DataRobot can take all of your data, try different machine learning models, and generate one well suited to your specific business problem.   

These black boxes can be a great tool to find patterns in noisy data sets and provide a quick way to get more information from your own data, no machine learning background required. What these don’t give you is much control; if you’re not happy with the model, or you’d like to tweak it over time, you’ll have to go back to the service and generate a new model.


Perhaps the fastest way to integrate AI technology into your product is using an artificial intelligence API; these are common machine learning algorithms optimized for commercial use and wrapped in a REST API. IBM and Google, alongside many new AI startups, have released APIs in areas of artificial intelligence including natural language processing, visual recognition, and semantic analysis.   

APIs are a fantastic tool to quickly sprinkle AI into your app or service. But it’s important to note that each API is built to do just one specific thing. Google’s Cloud Vision API, for example, boasts of its ability to make applications see and does very well at that for certain, specific objects. Using Cloud Vision, an app could recognize human faces, cats, trains and other everyday items that the neural networks have already been trained on. But if you’re a doctor looking for an app that can scan x-rays and identify a very specific anomaly, Cloud Vision won’t solve your problem. For that, you would need to build your own neural network and train it on images of that anomaly so it can learn how to identify it.  

There are now APIs that can determine emotions of tweets, parse text, translate languages, translate text to audio, recognize the emotion of human faces and analyze data. If your problem falls into the wheelhouse of one of these APIs, it’s a great way to boost the intelligence and productivity of your app fast.

But there’s a 6th option…

Our mission at Bonsai is to make intelligence a part of every hardware and software application. To reach a goal that big, every developer in the world needs to be able to easily access AI technology and also customize it to fit every possible use case.  

Just the fact that we can list 5 different ways to use AI in a commercial product shows how far the technology has come, but it barely scratches the surface. There are 18 million developers in the world. The tools currently available are either not realistically usable by all of them, or not broad enough to solve the wide range of possible use cases.   

We need a fundamentally different approach to truly democratize AI technology. Bonsai’s platform — a new programming language, IDE and cloud server — does just that by focusing on how you teach a machine, not how you calculate it. Our platform abstracts away the lowest level details of programming AI so that developers can focus on the actual problem they want to solve rather than the math powering the algorithms. We’re combining the flexibility of a machine learning library and ease-of-use of an API so that anyone who can program, can now program AI.  

Our tools will be available for a private beta soon. Sign up for our beta waitlist and let us know how you’ll use artificial intelligence to change your future.

Always. Be. Learning.

Stay up-to-date on our latest product news, AI industry highlights, and more!