Closed NamitaBajpai closed 1 year ago
Hi @NamitaBajpai,
It is difficult to address your issue as is, mainly because I can't reproduce it (templates where suggested when raising this issue) Could you share
k
you use ?One reason might be that the kernel is very ill-conditioned or many eigenvalues are very small which results in some imprecision/instability when evaluating the elementary symmetric polynomials, but that's just a guess.
You could also try to call a different sampling method than "GS"
.
Best,
Thank you for your reply. I am using dppy_0.3.2. The radial basis function is used to compute the kernel, the rank of the kernel is 600, and the size of the kernel matrix is 1000*1000. The value of k is 100.
Could you provide a minimal working example so that I can reproduce your issue ?
Hi @guilgautier I could fix the issue. Thanks
Sounds good ! Could you give more details on how you fixed it ? It may be beneficial to other users :)
I am trying to use sample_exact_k_dpp sampling function to select k elements. I am getting error probability do not sum to 1. I am using with Gram-Schmidt mode and likelihood kernel. However, I encountered the following error:
~/anaconda3/envs/gpu-torch/lib/python3.9/site-packages/dppy/exact_sampling.py in proj_dpp_sampler_eig_GS(eig_vecs, size, random_state) 489 for it in range(size): 490 # Pick an item \propto this squred distance --> 491 j = rng.choice(ground_set[avail], 492 p=np.abs(norms_2[avail]) / (rank - it)) 493 sampl[it] = j
mtrand.pyx in numpy.random.mtrand.RandomState.choice()
ValueError: probabilities do not sum to 1
I have checked the kernel property it satisfies positive semi definite and also the rank of the matrix is larger than the k value. How do I solve this randomstate.choice error? Any guess would be appreciated.
Thank you