Articles tagged with

Machine learning

Machine Learning Haikus

Machine learning

Forget "machine learning in plain English". Instead, I present some of the most popular algorithms in haiku form. Consider it "machine learning for the busy".

Visualising Decision Trees in Python

Machine learning

Having an accurate machine learning model may be enough in itself, but in some cases the only way to turn it into a business decision is if you can understand why it's getting the results it's getting. In this short tutorial I want to show a quick way to visualise a trained decision tree in Python.

More on K-means Clustering

Machine learning

In this post I look at a practical example of k-means clustering in action, namely to draw puppies. I also touch on a couple of more general points to consider when using clustering.

Introduction to K-means Clustering

Machine learning

An introduction to the popular k-means clustering algorithm with intuition and Python code.

Markov Chains for Text Generation

Machine learning

Markov chains are a popular way to model sequential data. I want to run through an implementation where I generate new songs based on lyrics by Muse.

Why You Should Reinvent the Machine Learning Wheel

Machine learning

As data scientists we spend a lot of our time using other people's implementations of machine learning algorithms. I suggest that as part of the learning process it's worthwhile to try to implement them ourselves from scratch, in order to fully understand them.

Realistic Machine Learning

Machine learning

As most data scientists quickly realise, there's a difference between the kind of data science you do while learning about it, and the kind you do at a real job. This is equally true of data cleaning/wrangling and machine learning.

"Intuition First" Machine Learning

Machine learning

I've often felt machine learning needs to be taught "intuition first, equations later", but this doesn't seem to be the norm with most learning sources.

Self-Organising Maps: In Depth

Machine learning

In Part 1, I introduced the concept of Self-Organising Maps (SOMs). Now in Part 2 I want to step through the process of training and using a SOM – both the intuition and the Python code. At the end I'll also present a couple of real life use cases, not just the toy example we'll use for implementation.

Self-Organising Maps: An Introduction

Machine learning

When you learn about machine learning techniques, you usually get a selection of the usual suspects. In this post I want to introduce an often-overlooked, but (I think) very interesting and useful idea – a Self-Organising Map.

About David

I'm a freelance data scientist, consultant, and educator with an MSc. in Data Science and a background in software and web development. I'm a generalist; my previous roles have been a range of data science, software development, and software architecting jobs.

Things I also do:

  • I co-host the Half Stack Data Science podcast where we talk about the realities of data science in the business world
  • I've written various articles and tutorials about data science
  • I've given a selection of talks at large conferences and universities, all on similar topics of "real world data science"
  • I occasionally stream some data science over on Twitch, where I take a vague project idea, a dataset, and try to come up with an answer in about an hour, explaining the code and thought process as I go.

Contact me

Please give me a brief idea of what you're looking for help with, and I'll get back to you very soon. If you're having trouble with the form below, you can also email me at

Twitter LinkedIn