mburakbozbey / parzen-window-estimation

Parzen window estimation using Gaussian kernels

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Parzen Window Estimation using Gaussian Kernels for Multiclass Classification

Procedure:

The multivariate kernel density estimator is the estimated pdf of a random sample vector. Let π‘₯ be a 𝑑-dimensional random vector with a density function 𝑓 and let 𝑦𝑖 be a random sample drawn from 𝑓 for 𝑖 = 1, 2, … , 𝑛, where n is the number of random samples. For any real vectors of π‘₯, the kernel density estimation is:

where the kernel functions is:

and H is the d-by-d variance matrix. In MATLAB, I used mvksdensity function which uses a diagonal variance matrix and a product kernel. That is, H1/2 is a square diagonal matrix with the elements of vector (h1, h2, …, hd) on the main diagonal. K(x) takes the product form K(x) = k(x1)k(x2)β‹―k(xd), where k(Β·) is a one-dimensional Gaussian kernel function. Then, the multivariate kernel density estimator becomes,

In this part, I used standard multivariate gaussian kernel where H represents the covariance matrix :

For each class, we can compare resulting pdfs’ multiplied by prior probabilities in natural logarithm. While 𝑔𝑖 (π‘₯βƒ—),

                                                𝑔𝑖 (π‘₯βƒ—) = 𝑙𝑛 𝑃(π‘₯βƒ— | 𝑀𝑖 ) + 𝑙𝑛 𝑃(𝑀𝑖 )

After iterating over all classes’ resulting if, 𝑔𝑖 (π‘₯βƒ—) > 𝑔𝑗 (π‘₯βƒ—), then we assign x to the class 𝑀𝑖. On a private dataset, recall and precision for test set:

Note:

For overall comparison of algorithms on same private dataset please visit Hierarchical Clustering with SVM repository.

About

Parzen window estimation using Gaussian kernels


Languages

Language:MATLAB 100.0%