Thanks Jake here are the files -- https://gist.github.com/1453617
here's the code creating the input data: https://github.com/smarttypes/SmartTypes/blob/master/smarttypes/model/twitter_user.py - def get_adjacency_matrix(self, distance=10): On Fri, Dec 9, 2011 at 5:17 PM, Jacob VanderPlas <[email protected]> wrote: > If you have a github account, you could create a gist: > https://gist.github.com/ > This results in a sort of temporary git repository you can push files to > as with any git repository. > If you push your data file and python code you use to process and plot > it, I can take a look and see if I can figure out what the problem is. > Alternatively, you could just push the plot there, but it would be > harder for me to experiment with. Thanks! > Jake > > Timmy Wilson wrote: >> This was rejected because attachments were > 40K >> >> What's the preferred way to pass random/tmp files? >> >> >> ---------- Forwarded message ---------- >> From: Timmy Wilson <[email protected]> >> Date: Fri, Dec 9, 2011 at 8:57 AM >> Subject: Re: [Scikit-learn-general] RuntimeError: Factor is exactly singular >> To: [email protected] >> >> >> the eigen_solver='dense' option eliminates the error, but the results >> look different >> >> i attached the offending input (an adjacency matrix from twitter), and >> the results of hessian w/ the dense option and standard w/ 30 >> neighbors >> >> >> On Thu, Dec 8, 2011 at 11:19 PM, Jacob VanderPlas >> <[email protected]> wrote: >> >>> Timmy, >>> Interesting... this means that none of the earlier ideas were on the >>> right track, or else we'd see the same error for standard and modified. >>> It turns out that Hessian and LTSA do very similar things. I still >>> haven't wrapped my mind around it intuitively, but what you're seeing >>> probably means that the hessian estimator is identical in two >>> neighborhoods. I'm confused by the fact that adding noise and changing >>> the number of neighbors is not affecting things... >>> >>> Can you try using eigen_solver='dense' (that should get around the >>> problem, though it will be slow) and taking a look at the results to see >>> if they're anywhere close to what standard and modified LLE give you? >>> Jake >>> >>> Timmy Wilson wrote: >>> >>>> 'standard' + 'modified' both work fine >>>> >>>> 'hessian' + 'ltsa' both have issues >>>> >>>> ltsa is printing: >>>> >>>> RuntimeWarning: Diagonal number 2 is exactly zero. Singular matrix. >>>> >>>> and then setting everything to -nan >>>> >>>> i tried adding random noise and increasing n_neighbors -- but no dice >>>> >>>> Fabian's suggestion is still under review -- >>>> https://github.com/scikit-learn/scikit-learn/pull/457 >>>> >>>> >>>> >>>> On Thu, Dec 8, 2011 at 11:39 AM, Fabian Pedregosa >>>> <[email protected]> wrote: >>>> >>>> >>>>> I reduced the problem to a difference of results with eigsh when >>>>> working in shift-invert mode and when not. Notice that the following >>>>> works with sigma=None but not with sigma=0. , thus seems to me that we >>>>> should fall back to non invert-mode for singular matrices (see >>>>> asociated pull request). >>>>> >>>>> ``` >>>>> In [8]: M = sparse.csr_matrix([[1, 1, 1], [1, 1, 1], [1, 1, 1.]]) >>>>> >>>>> In [9]: linalg.eigsh(M, 1) >>>>> Out[9]: >>>>> (array([ 3.]), >>>>> array([[-0.57735027], >>>>> [-0.57735027], >>>>> [-0.57735027]])) >>>>> >>>>> In [10]: linalg.eigsh(M, 1, sigma=0.) >>>>> --------------------------------------------------------------------------- >>>>> RuntimeError Traceback (most recent call >>>>> last) >>>>> /home/fabian/dev/sandbox/<ipython-input-10-f646f5be93ec> in <module>() >>>>> ----> 1 linalg.eigsh(M, 1, sigma=0.) >>>>> >>>>> /home/fabian/envs/p26/lib/python2.6/site-packages/scipy/sparse/linalg/eigen/arpack/arpack.pyc >>>>> in eigsh(A, k, M, sigma, which, v0, ncv, maxiter, tol, >>>>> return_eigenvectors, Minv, OPinv, mode) >>>>> 1484 if OPinv is None: >>>>> 1485 Minv_matvec = get_OPinv_matvec(A, M, sigma, >>>>> -> 1486 symmetric=True, >>>>> tol=tol) >>>>> 1487 else: >>>>> 1488 OPinv = _aslinearoperator_with_dtype(OPinv) >>>>> >>>>> /home/fabian/envs/p26/lib/python2.6/site-packages/scipy/sparse/linalg/eigen/arpack/arpack.pyc >>>>> in get_OPinv_matvec(A, M, sigma, symmetric, tol) >>>>> 1004 def get_OPinv_matvec(A, M, sigma, symmetric=False, tol=0): >>>>> 1005 if sigma == 0: >>>>> -> 1006 return get_inv_matvec(A, symmetric=symmetric, tol=tol) >>>>> 1007 >>>>> 1008 if M is None: >>>>> >>>>> /home/fabian/envs/p26/lib/python2.6/site-packages/scipy/sparse/linalg/eigen/arpack/arpack.pyc >>>>> in get_inv_matvec(M, symmetric, tol) >>>>> 997 if isspmatrix_csr(M) and symmetric: >>>>> 998 M = M.T >>>>> --> 999 return SpLuInv(M).matvec >>>>> 1000 else: >>>>> 1001 return IterInv(M, tol=tol).matvec >>>>> >>>>> /home/fabian/envs/p26/lib/python2.6/site-packages/scipy/sparse/linalg/eigen/arpack/arpack.pyc >>>>> in __init__(self, M) >>>>> 890 """ >>>>> 891 def __init__(self, M): >>>>> --> 892 self.M_lu = splu(M) >>>>> 893 LinearOperator.__init__(self, M.shape, self._matvec, >>>>> dtype=M.dtype) >>>>> 894 self.isreal = not np.issubdtype(self.dtype, >>>>> np.complexfloating) >>>>> >>>>> /home/fabian/envs/p26/lib/python2.6/site-packages/scipy/sparse/linalg/dsolve/linsolve.pyc >>>>> in splu(A, permc_spec, diag_pivot_thresh, drop_tol, relax, panel_size, >>>>> options) >>>>> 171 _options.update(options) >>>>> 172 return _superlu.gstrf(N, A.nnz, A.data, A.indices, A.indptr, >>>>> --> 173 ilu=False, options=_options) >>>>> 174 >>>>> 175 def spilu(A, drop_tol=None, fill_factor=None, drop_rule=None, >>>>> permc_spec=None, >>>>> >>>>> RuntimeError: Factor is exactly singular >>>>> >>>>> In [11]: >>>>> ``` >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> Cloud Services Checklist: Pricing and Packaging Optimization >>>>> This white paper is intended to serve as a reference, checklist and point >>>>> of >>>>> discussion for anyone considering optimizing the pricing and packaging >>>>> model >>>>> of a cloud services business. Read Now! >>>>> http://www.accelacomm.com/jaw/sfnl/114/51491232/ >>>>> _______________________________________________ >>>>> Scikit-learn-general mailing list >>>>> [email protected] >>>>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general >>>>> >>>>> >>>> ------------------------------------------------------------------------------ >>>> Cloud Services Checklist: Pricing and Packaging Optimization >>>> This white paper is intended to serve as a reference, checklist and point >>>> of >>>> discussion for anyone considering optimizing the pricing and packaging >>>> model >>>> of a cloud services business. Read Now! >>>> http://www.accelacomm.com/jaw/sfnl/114/51491232/ >>>> _______________________________________________ >>>> Scikit-learn-general mailing list >>>> [email protected] >>>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general >>>> >>>> >>> ------------------------------------------------------------------------------ >>> Cloud Services Checklist: Pricing and Packaging Optimization >>> This white paper is intended to serve as a reference, checklist and point of >>> discussion for anyone considering optimizing the pricing and packaging model >>> of a cloud services business. Read Now! >>> http://www.accelacomm.com/jaw/sfnl/114/51491232/ >>> _______________________________________________ >>> Scikit-learn-general mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general >>> >> >> ------------------------------------------------------------------------------ >> Cloud Services Checklist: Pricing and Packaging Optimization >> This white paper is intended to serve as a reference, checklist and point of >> discussion for anyone considering optimizing the pricing and packaging model >> of a cloud services business. Read Now! >> http://www.accelacomm.com/jaw/sfnl/114/51491232/ >> _______________________________________________ >> Scikit-learn-general mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/scikit-learn-general >> > > ------------------------------------------------------------------------------ > Cloud Services Checklist: Pricing and Packaging Optimization > This white paper is intended to serve as a reference, checklist and point of > discussion for anyone considering optimizing the pricing and packaging model > of a cloud services business. Read Now! > http://www.accelacomm.com/jaw/sfnl/114/51491232/ > _______________________________________________ > Scikit-learn-general mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/scikit-learn-general ------------------------------------------------------------------------------ Cloud Services Checklist: Pricing and Packaging Optimization This white paper is intended to serve as a reference, checklist and point of discussion for anyone considering optimizing the pricing and packaging model of a cloud services business. Read Now! http://www.accelacomm.com/jaw/sfnl/114/51491232/ _______________________________________________ Scikit-learn-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/scikit-learn-general
