High dimensional space is weird and counter intuitive, and the higher the number of dimensions the weirder it gets.
This is a generalisation of Pythagoras’ theorem to apply to all triangles rather than just right angled ones. The cosine rule reduces to Pythagoras’ Theorem as well as providing the mathematical basis behind the usefulness of the dot product for establishing the extent to which two vectors are going in the same direction.
Euclidean Distance is the ‘ordinary’ straight line distance between two points in Euclidean Space. It can be seen in action as the frustrating difference in distance between how far away something is (the straight line distance) and how far you have to go to get there (the rather disappointingly named distance travelled).
k-Nearest Neighbours is probably the simplest of the classification techniques, it works by looping through the training dataset, checking each point to see how close it is to the sample you are trying to classify. Once it’s gone through all of them it returns a classification based on an arbitrary number of points (k) so if k is 1 it returns the class of the nearest point to the one you’re trying to classify, for values of k greater than 1 however it returns the class that the majority of the points belong to, so if you have two points from class a and one from class b it will assign the new point to class a.
Learning Java at university: life lessons. Sometimes it’s the silly things that have you stuck for longer than you’d like to admit.
My first week at university was somewhat different to the usual structure. I found myself reflecting on why I’m doing this and focusing myself very much on what I want to get out of it and how to get there.
It’s super simple to put your site on lockdown using http basic authorisation and nginx. I mostly use this to allow clients to look at sites “live” without having the general public be able to see them until they’ve been signed off.
wxPython is notoriously difficult to get running inside a VirtualEnv, where instructions exist they focus on Python2 and tend to be (or at least appear) long and complicated. After a lot of fighting this is the simplest solution I came up with.