Hi everyone again Can anyone confirm this? Is The V matrix persisted by the Lanczos algorithm already scaled by (1/eigenvalues)?
Thanks in advance, Fernando. El 2 de diciembre de 2010 17:54, Fernando Fernández < [email protected]> escribió: > Hi again, > > > > I have a question regarding the output of the solver. Is it really the V > matrix or is it already V*S(-1). Jake said that I needed to scale the > vectors by (1/eigenvalue), but when I do this programatically and serialize > the output to the hdfs and check the results, I see that the V*S(-1) vectors > that I built and the V that the solve method (or mahout svd command) > persists has almost the same values, so it seems to be already scaled by > (1/eigenvalues). Is this true? > > For example: > > Eigenvectors persisted by the solve method to the hdfs (A portion): > > 2 elts: {00:0.00969523384177557, 01:-0.1509405313358042, > 02:-0.15402428299469786, > > Eigenvalue asociated: 0.35597101584493984 > > > When I take the V matrix from the solve method at execution time and scale > by (1/eigenvalue): > > 2 elts: {00:0.009036918423663949, 01:-0.15711902318788887, > 02:-0.14878245692981582 > > If I multiply the first element by the eigenvalue (re-scale to obtain V > again) I would obtain something like 0.00321688, very far from the > 0.00969523384177557 that is persisted to the hdfs by the solve method. > > Can someone throw some light on this? > > > Best, > Fernando. > > El 26 de noviembre de 2010 09:49, Fernando Fernández < > [email protected]> escribió: > > Yes, I'm checking the error today with some colleagues and seems that we >> broke something trying to fix other errors... now SVD doesn't work even on >> the command line, I'll write again if I get back to the situation where the >> command line worked and I got ClassNotFoundExceptions... >> >> Thanks!! >> >> 2010/11/26 Ted Dunning <[email protected]> >> >> Ahh... the problem is not that classes are missing. It is that the code >>> that is reading the >>> matrix wants to see a LongWritable for the row number and is getting an >>> IntWritable instead. >>> >>> I think that your file containing your matrix was somehow created >>> incorrectly. This isn't necessarily >>> your error, but I think that the error exists. >>> >>> 2010/11/25 Fernando Fernández <[email protected]> >>> >>> > java.lang.IllegalStateException: java.io.IOException: wrong key class: >>> > org.apache.hadoop.io.IntWritable is not class >>> > org.apache.hadoop.io.LongWritable >>> > >>> >> >> >
