[pymvpa] SVD did not converge

Swaroop Guntupalli swaroopgj at gmail.com
Wed Apr 2 17:06:05 UTC 2014


As Nick pointed out, lapack library has the svd implementation used by
Matlab which seems more robust.
If you have lapack library and ctypes installed, you can use
hyper = Hyperalignment(ProcrusteanMapper(svd='dgesvd',space='commonspace'))

I have only tested this on linux, so please let me know if you run
into any issues.

Best,
Swaroop

On Wed, Apr 2, 2014 at 8:55 AM, Nick Oosterhof
<nikolaas.oosterhof at unitn.it> wrote:
>
> On Apr 2, 2014, at 5:44 PM, andrea bertana <andrea.bertana1 at gmail.com> wrote:
>
>> I'm trying to use Hyperalignment() procedure to align different subjects' brain.
>> I am mainly referring to the example described in this webpage - http://dev.pymvpa.org/examples/hyperalignment.html
>> However, when I try to compute the common space on the training set (10 participant, single - participant matrix: 301 time-point x 1000 voxels ) I get the following message:
>>
>> LinAlgError, 'SVD did not converge'
>
> Yes, I've had that issue too, and we've had some discussion in the lab. It turns out the blas library provides better SVD support than numpy itself. The issue is reported here
>
> https://github.com/numpy/numpy/issues/1588
>
> and seems still open.
>
> For me this problem occurred using mac os, where numpy did not use other libraries . At some point I tried to use the blas libraries but failed miserably.
> On the positive side, using neurodebian in a virtualbox worked for me.
>
> On what platform are you working? If not neurodebian you might consider trying it (either installed, or through virtualbox).
>
> (in a perfect world the blas or other SVD-supporting libraries would be made to work on any platform, but I don't know how hard that is)
> _______________________________________________
> Pkg-ExpPsy-PyMVPA mailing list
> Pkg-ExpPsy-PyMVPA at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa



More information about the Pkg-ExpPsy-PyMVPA mailing list