Archives: AI/Machine Learning

webassembly and web audio worklet No ratings yet.

Some notes: web assembly: a cool technology allows you to compile c/c++/rust and other languages into wasm, expose API to javascript world. Web audio worklet/worker: allows developer to intercept audio stream/custom processing A good introduction is at: https://developers.google.com/web/updates/2017/12/audio-worklet Advance pattern: https://developers.google.com/web/updates/2018/06/audio-worklet-design-pattern https://github.com/GoogleChromeLabs/web-audio-samples/tree/master/audio-worklet/design-pattern/shared-buffer/     Combination of wasm and audio worklet can do a fair amount • Read More »


How to learn pytorch from scratch 5/5 (2)

Pytoch is a quite powerful, flexible and yet popular deep learning framework. The learning curve could be steep if you do not have much deep learning background. So what is a good way to learn it? The official pytorch webiste has some great tutorials at: https://pytorch.org/tutorials/ IMHO those materials are tuned to some intermediate level • Read More »


how to prevent nvidia GPU hangup on ( debian 10) 5/5 (4)

debian 10 have nvidia GPU driver, cuda 9 etc, it is a good thing  for deep learning ( keras or pytorch). but  if let it running for some time ( without any interrupt), it hang after the power management kick in. Work around is to turn off the power management by doing: sudo systemctl mask • Read More »


fp-tree and fp-growth in plain english No ratings yet.

The normal use case is to discover interesting relations between variables in large databases, e.g: i(t) 1 ABDE 2 BCE 3 ABDE 4 ABCE 5 ABCDE 6 BCD the above are some transactions, let’s A, B, C … are some products people bought. we want to find which set are frequent set .e.g: BC  is • Read More »


K-means clustering and Bisecting K-means in Plain English No ratings yet.

K-means clustering is unsupervised machine learning algorithm. Wikipedia has a great demo as below on how it works: Demonstration of the standard algorithm 1. k initial “means” (in this case k=3) are randomly generated within the data domain (shown in color). 2. k clusters are created by associating every observation with the nearest mean. The • Read More »


SVM ( support vecotr machine) in Plain English No ratings yet.

(1) Maximum the margin SVM is very easy to understand on the graph,, we just need to find the  a separate plane which maximum the margin. see the graph below: (2) How to calculate/find the max Margin Assuming hard-margin issue for the simplicity of math, the separate plane can be expressed as: w*x -b = 0  where • Read More »


Quadratic programming in plain English No ratings yet.

The big picture is:  a quadratic programming problem can be reduced to be a linear programming problem. Here is how: (1) KTT conditions For any non-linear programming: max: f(x),  s.t: g(x) <=0 It has been proved that it needs to meet Karush–Kuhn–Tucker (KKT) conditions provided that some regularity conditions are satisfied how it is being proved? it is • Read More »


Linear programming in plain English No ratings yet.

Why study the linear programming (LP) ? LP has a lot of use cases, one of them is the SVM ( support vector machine). The SVM ‘s Lagrangian dual can give the lower bound of SVM,  this Lagrangian dual can be solved by quadratic programming. The KKT conditions of this quadratic programming can be solved by • Read More »



Bayes classifier in plain english No ratings yet.

Bayes theorem: where A and B are events and P(B) ≠ 0. P(A) and P(B) are the probabilities of observing A and B without regard to each other. P(A | B), a conditional probability, is the probability of observing event A given that B is true. P(B | A) is the probability of observing event B given that A • Read More »