Machine learning SVM – the usefulness of kernels

If you’ve read through how Support Vector Machines work, you probably know the linear simple SVM might not work in all cases… but how does it fail? Let’s take a look at an example I tried like to my simple example… but change it to be a larger space than just 4, and separated with a region in the middle, and the region around it (positive, negative labelled areas to learn):

Continue reading “Machine learning SVM – the usefulness of kernels”

Human pose estimation with Python and Gluoncv

Human pose estimation is something useful for robotics/programming as you can see what position a person is in a picture. For last weekend’s Hackrithmitic I did an experiment for fun using computer vision pose estimation. To start with I found several possibilities with available libraries:

  • Tensorflow js has been used to say, don’t touch your face, but it takes a massive amount of cpu.
  • Openpose is a popular one, only licensed for noncommercial research use, and there is a Opencv example for it that doesn’t quit show how to use it.
  • AlphaPose is supposedly faster and has a more clear license and possibility for commercial use – if you want that as a possibility. I checked out the install instructions and worked but for “python3” instead of “python”. It also misses obvious step of installing cuda for your Nvidia system before running.
  • GluonCV is another, which seems more user friendly. This one I was able to get running in a few minutes with their example:
Continue reading “Human pose estimation with Python and Gluoncv”

Slide rule enters the 21st century

Some time ago I came across this online tool in a newsletter article – this is a very cool slide-rule-emulator that will not just let you move two slides, but actually slide it for you as you run an equivalent digital calculator calculation to the right!

If you haven’t ever used a slide rule before, it works on properties of logarithms, and the principle that log(a)+log(b) = log(a*b). Now it wouldn’t be very interesting to just have two normal rulers together, as sliding and adding would just let you do problems like 5+5 = 10 or 50+50 = 100 if you scale the numbers. With logarithmic scale, the spacings are off and it allows you to do multiplication in adding the numbers.

Continue reading “Slide rule enters the 21st century”

Microsoft Math Solver review

Years ago if you wanted a program to explain steps in mathematics, algebra or other complex math as a tutor would, you would have to buy a specialized software package built for some specific operating system (I forget the name… it may still be around?) Of course there was always open source software like Maxima to do powerful symbolic (or numeric, or graphing) math, but to know what to do one almost needs a manual, and while extremely powerful it was not helpful for beginners. I recently found a similarly useful free math solver on Microsoft’s site, https://mathsolver.microsoft.com:

Continue reading “Microsoft Math Solver review”

Fixing Ubuntu Python-Pip

After you’ve upgraded your Ubuntu machine a few times, you might find that free disk space is low and some Python commands have issues. Programs like Bleachbit can help you clear old packages or cache that you don’t need, but sometimes you need a minor manual fix as documented here. As you may know, Pip is the main package management you’ll use to install packages you use, so this can be problematic.

After upgrading 16.04 to 18.04, I got an error on command line “pip”:

Continue reading “Fixing Ubuntu Python-Pip”