boost/random/normal_distribution.hpp
Joaggi opened this issue · 4 comments
Hi Daniel,
When building frp extension, it seems that the file normal_distribution.hpp does not exist. Do you know why this problem occurs?
It seems that the location of the file in the library right now is ./boost/random/include/boost/random/normal_distribution.hpp
Can you try now? I have the boost headers globally installed, so I didn't notice them being missing for the extension compilation.
Yes, finally 💯 .
Now, I don't know how to used it :(. I will search 👍
The only bindings so far that are available are the JL transform, which is a dimensionality reduction technique that preserves pairwise distances.
You could use it as follows:
import frp
jlt = frp.ojlt(1024, 30) # Create a transform from 1024 dimensions to 30
data = np.random.standard_normal(size=(1000,1024))
jldata = jlt.matrix_apply_oop(data)
assert jldata.shape == (1000, 30)
# Pairwise distances between rows of this transformed matrix
# are approximately preserved;
# np.linalg.norm(data[0] - data[1]) should be close to np.linalg.norm(jldata[0], jldata[1])
Kernel approximation and DCI aren't available via python bindings currently.