Adventures in AI Part 2 - Which algorithm should I use?

Choosing the right algorithm for your machine learning problem can be quite hard. I’ve had numerous questions about it during the machine learning course. Also I’ve seen many people struggle to find more information about it on the internet. There are of course plenty cheat sheets around. But all of them seem to be focused on the tools that the company behind the cheatsheet delivers.

In this second post of the series “Adventures in AI” I want to show you how you can pick the right algorithm for your machine learning problem. To make things easier on you I’ve put together a mind map with a comprehensive set of machine learning algorithms which I will update regularly.

Adventures in AI part 1: What is a gradient descent algorithm?

When you start out with machine learning and AI you will learn very quickly that there’s a lot of math involved. All this math is very hard to understand, especially if you have a background in software engineering rather than statistics. Most of the stuff you will find on the internet assumes that you know your statistics, which you probably don’t.

In this series I will invite you along on my personal AI trip along some very cool algorithms and seriously hard topics. I will explain them as simple as I can so you too can start to use machine learning and deep learning in your daily work.

Monitor progress of your Keras based neural network using Tensorboard

In the past few weeks I’ve been breaking my brain over a way to automatically answer questions using a neural network. I have a working version, but debugging a neural network is a nightmare.

Neural networks by their very nature are hard to reason about. You can’t really find out how or why something happened in a neural network, because they are too complex for that. Also, there’s a real art to selecting the right number of layers, the right number of neurons per layers and which optimizer you should use.

A modern stack for data analysis in a microservice world

The face of enterprise solutions is changing rapidly. We are making smaller solutions at a larger scale by deploying microservice architectures. This brings many advantages to developers and customers because solutions become more flexible to change and scale better. Microservices also bring a number new of challenges. Especially for companies that want insight in how their business is doing.

Since data is no longer coming from one source, but from many sources and since data is no longer of a uniform shape you need a solution that is up to the challenge. Processing data in a microservice world requires a stack that can process streams, unstructured data and structured data. And it should do it fast.

How-to: Experiment with tensorflow in an interactive notebook

I've always wanted to build something with tensorflow. I have one demo lying around with tensorflow, but never got around to develop something for real with this framework.

Although tensorflow has a lot of samples available and documentation to get you going, it's not that easy to build something real with it. To make it easier for me to experiment with it I've come up with a combination of tools that allow you to experiment with tensorflow using interactive python notebooks. <!-- more -->

A quick lap around Algorithmia, the online algorithm marketplace

Selling algorithms is becoming a thing on the internet. A number of big companies have started to sell access to their algorithms. It's an interesting business model. If you haven't got the smarts to implement an intelligent algorithm yourself, then buying one from Microsoft or Google looks like a really smart plan.

I'm not going to say that you will end up with a great solution. You still need to spend time to tune and integrate everything into a working solution, but it's a great start.