Because H*H' is always a positive semi-definite matrix, such a 
factorization only makes sense if A is positive semi-definite. That's 
independent of the factors being nonnegative.

On Wednesday, May 6, 2015 at 2:59:39 PM UTC-4, Stefan Karpinski wrote:
>
> Note that since precise non-negative factorization is generally not 
> possible and this would constrain the factorization even further, it will 
> not generally be possible to factorize a matrix like this. Then again, 
> since the W = H' constraint seems to make the problem convex, it may 
> actually make the optimization problem of finding non-negative H that 
> minimizes the norm of the error easier.
>
> On Wed, May 6, 2015 at 2:54 PM, Tim Holy <[email protected] <javascript:>> 
> wrote:
>
>> What you're asking might be called "nonnegative Cholesky factorization." 
>> From
>> a brief search, there seems to be a dearth of literature on that subject. 
>> You
>> could be the first!
>>
>> --Tim
>>
>> On Wednesday, May 06, 2015 09:59:37 AM Lytu wrote:
>> > NMF.jl package can factorize a matrix 3x3 and give two matrix (a 3x2 
>> matrix
>> > H and a 2x3 matrix W), W is the transpose of a matrix H?
>> > A = H * W
>> > E.g:
>> > import NMF
>> > A=[5.0 3.0 6.0;3.0 9.0 12.0;6.0 12.0 17.0]
>> > H, W= NMF.randinit(A, 2)
>> >
>> > this code give me 2 matrix H and W
>> >
>> > I know that NMF.randinit() gives two matrix H(3x2) and W(2x3) but W is 
>> not
>> > the transpose of a matrix H.
>> >
>> > I would like to know there is a function in NMF package that can give 
>> this
>> > such result:
>> > A = H * W with W=H'
>> > Thank you
>>
>>
>

Reply via email to