Raise exception for sparse inputs in the case of svd solver

Fix for #3709 
Ping @agramfort 
you need to fix the random state here.

    rng = np.random.RandomState(0)
    X = ... sp.csc_matrix(rng.rand(100, 10))