Yep something went wrong, most likely with the clustering.  part file is 
empty.  Should look something like this:
 
Key class: class org.apache.hadoop.io.IntWritable Value Class: class 
org.apache.mahout.math.VectorWritable
Key: 0: Value: 
{0:0.06475650422868284,1:0.010728747158503565,2:0.005463535698651016,3:0.023451709705466457}
Key: 1: Value: 
{0:0.01838885430227092,1:0.05068404879399544,2:0.002110418548647133,3:0.005566514441743756}
Key: 2: Value: 
{0:0.018575587065216153,1:1.236602313900785E-5,2:8.654629660837919E-6,3:5.820637306957196E-6}
...
...
 
Key refers to a document id and the Value are topic ids:weights assigned to 
document id.
 
So you need to figure out where things went wrong.  I'm assume folder 
/user/sgeadmin/text_lda also has empty part files?  Assuming parts files are 
there run seqdumper on one.  Should have data like the above except in this 
case the key will be a topic id and the vector will be term ids:weights.
 
You can also check folder /user/sgeadmin/text_vec/tf-vectors to make sure 
sparse vectors were generated for your input to cvb.
 
Dan
 

________________________________
 From: Folcon Red <[email protected]>
To: DAN HELM <[email protected]> 
Cc: Jake Mannix <[email protected]>; "[email protected]" 
<[email protected]> 
Sent: Sunday, July 29, 2012 3:35 PM
Subject: Re: Using Mahout to train an CVB and retrieve it's topics
  

Thanks Dan and Jake,

The output I got from $MAHOUT_HOME/bin/mahout seqdumper -i 
/user/sgeadmin/text_cvb_document/part-m-00000 is: 

Input Path: /user/sgeadmin/text_cvb_document/part-m-00000
Key class: class org.apache.hadoop.io.IntWritable Value Class: class 
org.apache.mahout.math.VectorWritable
Count: 0 

I'm not certain what went wrong.

Kind Regards,
Folcon

On 29 July 2012 18:49, DAN HELM <[email protected]> wrote:

Folcon,
>  
>I'm still using Mahout 0.6 so don't know much about changes in 0.7.
> 
>Your output folder for "dt" looks correct.  The relevant data would be in  
>/user/sgeadmin/text_cvb_document/part-m-00000 which is what I would be passing 
>to a "-s" option.  But I see it says size is only 97 so that looks 
>suspicious.  So you can just view file (for starters) as: mahout seqdumper -s 
>/user/sgeadmin/text_cvb_document/part-m-00000.  And the vector dumper 
>command (as Jake pointed out) has a lot more options to post-process the data 
>but you may want to first just see what is in that file. 
> 
>Dan
>
> 
> From: Folcon Red <[email protected]>
>To: Jake Mannix <[email protected]> 
>Cc: [email protected]; DAN HELM <[email protected]> 
>Sent: Sunday, July 29, 2012 1:08 PM
>Subject: Re: Using Mahout to train an CVB and retrieve it's topics
>  
>
>
>Hi Guys,
>
>
>Thanks for replying, the problem is whenever I use any -s flag I get the error 
>"Unexpected -s while processing Job-Specific Options:" 
>
>
>Also I'm not sure if this is supposed to be the output of -dt 
>
>
>sgeadmin@master:~$ dumbo ls /user/sgeadmin/text_cvb_document -hadoop 
>starcluster
>Found 3 items
>-rw-r--r--   3 sgeadmin supergroup          0 2012-07-29 16:51 
>/user/sgeadmin/text_cvb_document/_SUCCESS 
>drwxr-xr-x   - sgeadmin supergroup          0 2012-07-29 16:50 
>/user/sgeadmin/text_cvb_document/_logs
>-rw-r--r--   3 sgeadmin supergroup         97 2012-07-29 16:51 
>/user/sgeadmin/text_cvb_document/part-m-00000 
>
>
>Should I be using a newer version of mahout? I've just been using the 0.7 
>distribution so far as apparently the compiled versions are missing parts that 
>the distributed ones have.
>
>
>Kind Regards,
>Folcon
>
>
>PS: Thanks for the help so far!
>
>
>On 29 July 2012 04:52, Jake Mannix <[email protected]> wrote:
>
>
>>
>>
>>On Sat, Jul 28, 2012 at 6:40 PM, DAN HELM <[email protected]> wrote:
>>
>>Hi Folcon,
>>> 
>>>In the folder you specified for the –dt option for cvb command
>>>there should be sequence files with the document to topic associations (Key:
>>>IntWritable, Value: VectorWritable).  
>>
>>
>>Yeah, this is correct, although this:
>>
>>
>>You can dump in text format as: mahout seqdumper –s <sequence file>
>>>
>>
>>
>>is not as good as using vectordumper: 
>>
>>
>>   mahout vectordump -s <sequence file> --dictionary <path 
>>to dictionary.file-0> \ 
>>       --dictionaryType seqfile --vectorSize <num entries per topic you want 
>>to see> -sort  
>>
>>
>>This joins your topic vectors with the dictionary, then picks out the top k 
>>terms (with their 
>>probabilities) for each topic and prints them to the console (or to the file 
>>you specify with 
>>an --output option).
>>
>>
>>*although* I notice now that in trunk when I just checked, VectorDumper.java 
>>had a bug 
>>in it for "vectorSize" - line 175 asks for cmdline option 
>>"numIndexesPerVector" not  
>>vectorSize, ack!  So I took the liberty of fixing that, but you'll need to 
>>"svn up" and rebuild
>>your jar before using vectordump like this. 
>>
>>So in text output from seqdumper, the key is a document id and the vector 
>>contains
>>>the topics and associated scores associated with the document.  I think 
>>>all topics are listed for each
>>>document but many with near zero score.
>>>In my case I used rowid to convert keys of original sparse
>>>document vectors from Text to Integer before running cvb and this generates 
>>>a mapping file so I know the textual
>>>keys that correspond to the numeric document ids (since my original document 
>>>ids were file names and I created named vectors).
>>>Hope this helps.
>>>Dan
>>>
>>>
________________________________
>>>
>>> From: Folcon <[email protected]>
>>>To: [email protected]
>>>Sent: Saturday, July 28, 2012 8:28 PM
>>>Subject: Using Mahout to train an CVB and retrieve it's topics
>>>
>>>
>>>Hi Everyone,
>>>
>>>I'm posting this as my original message did not seem to appear on the mailing
>>>list, I'm very sorry if I have done this in error.
>>>
>>>I'm doing this to then use the topics to train a maxent algorithm to predict 
>>>the
>>>classes of documents given their topic mixtures. Any further aid in this
>>>direction would be appreciated!
>>>
>>>I've been trying to extract the topics out of my run of cvb. Here's what I 
>>>did
>>>so far.
>>>
>>>Ok, so I still don't know how to output the topics, but I have worked out 
>>>how to
>>>get the cvb and what I think are the document vectors, however I'm not having
>>>any luck dumping them, so help here would still be appreciated!
>>>
>>>I set the values of:
>>>    export MAHOUT_HOME=/home/sgeadmin/mahout
>>>    export HADOOP_HOME=/usr/lib/hadoop
>>>    export JAVA_HOME=/usr/lib/jvm/java-6-openjdk
>>>    export HADOOP_CONF_DIR=$HADOOP_HOME/conf
>>>on the master otherwise none of this works.
>>>
>>>So first I uploaded the documents using starclusters put:
>>>    starcluster put mycluster text_train /home/sgeadmin/
>>>    starcluster put mycluster text_test /home/sgeadmin/
>>>
>>>Then I added them to hadoop's hbase filesystem:
>>>    dumbo put /home/sgeadmin/text_train /user/sgeadmin/ -hadoop starcluster
>>>
>>>Then I called Mahout's seqdirectory to turn the text into sequence files
>>>    $MAHOUT_HOME/bin/mahout seqdirectory --input /user/sgeadmin/text_train --
>>>output /user/sgeadmin/text_seq -c UTF-8 -ow
>>>
>>>Then I called Mahout's seq2parse to turn them into vectors
>>>    $MAHOUT_HOME/bin/mahout seq2sparse -i text_seq -o 
>>>/user/sgeadmin/text_vec -
>>>wt tf -a org.apache.lucene.analysis.WhitespaceAnalyzer -ow
>>>
>>>Finally I called cvb, I believe that the -dt flag states where the inferred
>>>topics should go, but because I haven't yet been able to dump them I can't
>>>confirm this.
>>>    $MAHOUT_HOME/bin/mahout cvb -i /user/sgeadmin/text_vec/tf-vectors -o
>>>/user/sgeadmin/text_lda -k 100 -nt 29536 -x 20 -dict
>>>/user/sgeadmin/text_vec/dictionary.file-0 -dt 
>>>/user/sgeadmin/text_cvb_document -
>>>mt /user/sgeadmin/text_states
>>>
>>>The -k flag is the number of topics, the -nt flag is the size of the 
>>>dictionary,
>>>I computed this by counting the number of entries of the dictionary.file-0
>>>inside the vectors(in this case under /user/sgeadmin/text_vec) and -x is the
>>>number of iterations.
>>>
>>>If you know how to get what the document topic probabilities are from here, 
>>>help
>>>would be most appreciated!
>>>
>>>Kind Regards,
>>>Folcon
>>
>>
>>
>>-- 
>>
>>
>>  -jake
>>
> 
>
>   

Reply via email to