Blog posts

2022

Stumbling backwards into np.random.seed through jax.

10 minute read

Published:

Alternative title: PRNG for you and me through (j)np.random.seed. This post aims to (briefly) discuss why I like jax and then compare Jax and numpy vis a vis randomness.

PyTorch Gradient Manipulation 1

10 minute read

Published:

Preface: this notebook is part 1 in a series of tutorials discussing gradients (manipulation, stopping, etc.) in PyTorch. The series of tutorials cover the following network architectures:

2021

2019

MAPE Madness

5 minute read

Published:

**Problem setup:** You want to use the Mean Absolute Precision Error (MAPE) as your loss function for training Linear Regression on some forecast data. Springer: Mean Absolute Precision Error (MAPE)) has found success in forecasting because it has desirable properties:

2018

Fundamentals Part 1: An intuitive introduction to Calculus and Linear Algebra

7 minute read

Published:

As you’ve probably heard, calculus is imperative for Machine Learning. However, there is a definite emphasis on differentiation compared to integration, so this series of posts will build from simple derivatives to Jacobians and Hessians. Ideally, at the end of this series, if you read a paper that mentions one of the topics above, you’ll have a rough idea of why the authors chose to do what they did and what their choice means for the results.

Fundamentals Part 2: Hessians and Jacobians

10 minute read

Published:

This section builds off the last post, Fundamentals Part 1: An intuitive introduction to Calculus and Linear Algebra; if you’re not familiar with calculus or linear algebra, I highly recommend starting there. If this is your first time seeing all of this, know that this section is more involved than the first fundamentals post. Be prepared to feel a little lost, but if you keep at it, I know you’ll get there (it took me a while to wrap my head around)

2012

Ian Quah - Initial post

1 minute read

Published:

Any good story starts with a why so we begin there. I’m not particularly skilled at learning new concepts; I often get lost and have to go back to read even simple things to refresh my memory. So I’m hoping that this blog will serve as: