Welcome to Inside Learning Machines! My name is Michael Attard, I’m a data scientist based in Amsterdam, the Netherlands. I have a deep interest in machine learning, and its application to solve real-world problems. My background is in Aerospace Engineering (Bachelors, University of Toronto) and Astrophysics (Masters & PhD, Western University). Please feel free to visit my LinkedIn page.

Throughout my career, I have found an abundance of information online regarding various topics in data science and machine learning. However, I often find the available resources lack deep insight into how machine learning algorithms actually work. This isn’t solely regarding their mathematical foundations, but also in terms of how these algorithms can be implemented in code for practical use. All too often, these algorithms are treated as little more than black boxes. 

The aim of this site is to dive deep into how machine learning algorithms actually work. My pillar articles will cover the inner workings for individual machine learning algorithms. The hope is that the reader will gain a deeper understanding of these algorithms; how they are built and in what circumstances they may be applicable to a given problem. It is my belief that a deep understanding is required to properly use machine learning for specific problems in the real world. Smaller posts covering typical techniques or tools, used in conjunction with machine learning models, will also be covered.  

There are four main types of articles written here:

  1. Pillar articles covering a single machine learning algorithm. These posts will outline the motivation, foundational assumptions, mathematical derivation, and implementation of a given algorithm. The implementations are done in Python 3, with the coding examples available on my GitHub.  Finally the implementations are tested on available data, and the results compared with those obtained from standard ML libraries (i.e. scikit-learn) to verify their functionality.
  2. Coding articles. These posts will cover subjects related to coding best practices, and open-source tools that can be used to help move your machine learning application from concept to implemented reality. The code illustrated in these articles are available on my GitHub.
  3. Articles that focus in on metrics or techniques typically used to evaluate machine learning models. The intent of these posts is to describe these methods, such that the reader will walk away with sufficient knowledge to properly use and understand them. All coding here is also done in Python 3.
  4. Shorter response posts that address specific questions typically raised when working with machine learning models. 

If you have any questions or suggestions regarding the articles, please feel free to leave a comment. I sincerely hope you enjoy, and gain value from, Inside Learning Machines.