Fast GMM fitting (diagonal covariances only) with Kmeans initialization and Fisher Vectors computation
Based on the yael package
This toolbox can use BLAS/OpenMP API for faster computation on multi-cores processor.
It accepts dense inputs in single/double precision.
Sebastien PARIS (2021). Fast GMM and Fisher Vectors (https://www.mathworks.com/matlabcentral/fileexchange/38372-fast-gmm-and-fisher-vectors), MATLAB Central File Exchange. Retrieved .
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Create scripts with code, output, and formatted text in a single executable document.
Has anyone successfully built this on Linux? I was able to build after adding the -fopenmp flag, defining min, etc. But the test_yael_gmm script doesn't run, yael_gmm causes a segmentation fault and sample_mvgm has a runtime error. Does anyone have a solution?
Thank you Sebastien, use your method which is mentioned as below, I get the mexw64 finally...
Venkat,
Now matlab is no more accepting compiled mex-files included in the zip file sorry :(.
Do you encounter some pb for linux when compiling it ?. I know that it can working fine when linked with intel MKL or GOTOlib
Hi
Very useful submission.
Can you kindly upload linux mex files if possible. I am failing to compile using gcc on linux.
Thanks in advance
I forgot to mention that it's better to use the ICC compiler from Intel composer instead of MSVC for some linkage problems and/or crash. It's not my fault. Please download the excellent package to setup your intel compiler at :
http://www.mathworks.fr/matlabcentral/fileexchange/38980-mex-setup-for-windows-x64-intel-c-compiler-13-xe
Shen,
For windows plateform, I observed some crashs when using the inshipped BLAS/LACPACK lib. Please download the intel MKL and you shoud mex functions as:
mex -v -DOMP -DBLAS yael_gmm.c "C:\Program Files (x86)\Intel\Composer XE 2013\mkl\lib\intel64\mkl_core.lib" "C:\Program Files (x86)\Intel\Composer XE 2013\mkl\lib\intel64\mkl_intel_lp64.lib" "C:\Program Files (x86)\Intel\Composer XE 2013\mkl\lib\intel64\mkl_intel_thread.lib" -largeArrayDims
Hope will help you.
P.S The main problems occurs usually during linkage and I can't check all configuration systems ..
It's a excellent open source code, but it crashed on my platform when calling the yael_gmm() function. my platform is windows 7, matlab 2010b, compiler is Microsoft Visual C++ 2010. Thank you very much