Chris McKelt

.Net developer working across banks, wealth management, insurance, transport, media, lenders,  startups, myself


Currently an Engineering Manager @ Bankwest.



Not a data scientist - just an enthusiast

Machine Learning 101

Machine learning gives computers the ability to learn without being explicitly programmed (Arthur Samuel, 1959).

ML Types

Shallow vs Deep


Tools of choice for ML

What is ML.Net?

OS machine learning framework for .Net developers

Originally developed by MSFT Research

Used in Windows, Bing, PowerPoint, Excel & more

Current preview release is 0.4 (not officially released yet)

Initial release --> 7th May 2018

Why use ML.Net?

Leverage C#/F# capability


Output is .zip file --> easy deployments


C#/F# samples range from basic to end to end apps


eShopDashboardML is a web app with Product Sales Forecast predictions using

What can it do?


Their experiments show faster& more accurate than xgboost

From Microsoft Distributed Machine Learning Toolkit

Accord.Net [todo]

Microsoft Cognitive Toolkit [todo]

TensorFlow [todo]


My bank does not give me an overview of spending categories




My tech itch

Build a model that can predict a category using the transaction description 

Model Building

  1. Retrieve and clean the data
  2. Decide what algorithm to use
  3. Create a ‘Learning Pipeline’ to iterate over the model build process

    • Training

    • Testing
    • Evaluating result metrics
  4. Exploring the output model file

Retrieve the data

Decide what model?

Multiclass classification is the problem of classifying instances into one of three or more classes

Banking  Entertainment Food & Drinks
Groceries Health & Beauty Income
Insurance Kids Transport
Holiday  Miscellaneous Work 

Learning pipeline

  1. Loading the data

  2. Transforming the data

  3. Feature extraction/engineering

  4. Configuring a learning model

  5. Training the model

  6. Using the trained model (e.g. to obtain predictions)


Code time finally...

Naive Bayes

Stochastic Dual Coordinate Ascent




Predicting BS using ML.Net

By chris mckelt

Predicting BS using ML.Net

An overview of

  • 1,589