You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@mahout.apache.org by "Sharma, Avani" <ag...@ebay.com> on 2010/12/01 00:54:43 UTC

DisplayCanopy class

Hello,

I am using Mahout-0.3 to try out various clustering algorithms provided by mahout.
I ran arff converter, kmeans and canopy clustering over my data and used clusterdumper to check out the clusters.
For big file sizes or big data to be clustered and interpreted, the output of clusterdumper needs some kind of visualization.
So, I read https://cwiki.apache.org/confluence/display/MAHOUT/Visualizing+Sample+Clusters
I was able to generate a sample cluster using DisplayClustering class, but none other display classes are working for me. I am pasting the error below.
Besides, are there any other ways to visualize the output from my data?
How will I feed clusters for my data into these classes in display package?
Please point me to any source of information for the same. Thank you.

~/mahout-0.3/trunk hadoop$bin/mahout org.apache.mahout.clustering.display.DisplayCanopy
Running on hadoop, using HADOOP_HOME=/usr/local/hadoop_live/
HADOOP_CONF_DIR=/usr/local/hadoop_live/conf
10/12/01 06:30:34 WARN driver.MahoutDriver: No org.apache.mahout.clustering.display.DisplayCanopy.props found on classpath, will use command-line arguments only
Exception in thread "main" java.lang.IllegalAccessException: Class org.apache.hadoop.util.ProgramDriver$ProgramDescription can not access a member of class org.apache.mahout.clustering.display.DisplayCanopy with modifiers "public static"
        at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
        at java.lang.reflect.Method.invoke(Method.java:588)
        at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
        at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
        at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:175)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:186)

RE: DisplayCanopy class

Posted by "Sharma, Avani" <ag...@ebay.com>.
Thanks. I am using trunk actually(was confused about the versioning) -  will update and build. 

For arbitrary data, what should be the input to DisplayClustering - output from clusterdumper which is anyway dumped in local file system ? 

My basic question is to be able to interpret clustering results better to be able to really start using mahout. Like Weka has a way of showing where your clusters lie in a graphical way and also tying back each data point to an object identifier. Say I have user profile data. In that case, I want to be able to tie back the rows in a cluster to the user-id.


-----Original Message-----
From: Jeff Eastman [mailto:jeastman@Narus.com] 
Sent: Tuesday, November 30, 2010 4:09 PM
To: user@mahout.apache.org
Subject: RE: DisplayCanopy class

The DisplayClustering examples aren't designed to be run on Hadoop as they generate simple Java graphics output. You should also be trying Mahout 0.4 or trunk as much has changed since last spring. You will likely have to make changes to the display routines in order to plot arbitrary data. Other than that I need more information on your data to be able to make better recommendations.

-----Original Message-----
From: Sharma, Avani [mailto:agsharma@ebay.com] 
Sent: Tuesday, November 30, 2010 3:55 PM
To: user@mahout.apache.org
Subject: DisplayCanopy class


Hello,

I am using Mahout-0.3 to try out various clustering algorithms provided by mahout.
I ran arff converter, kmeans and canopy clustering over my data and used clusterdumper to check out the clusters.
For big file sizes or big data to be clustered and interpreted, the output of clusterdumper needs some kind of visualization.
So, I read https://cwiki.apache.org/confluence/display/MAHOUT/Visualizing+Sample+Clusters
I was able to generate a sample cluster using DisplayClustering class, but none other display classes are working for me. I am pasting the error below.
Besides, are there any other ways to visualize the output from my data?
How will I feed clusters for my data into these classes in display package?
Please point me to any source of information for the same. Thank you.

~/mahout-0.3/trunk hadoop$bin/mahout org.apache.mahout.clustering.display.DisplayCanopy
Running on hadoop, using HADOOP_HOME=/usr/local/hadoop_live/
HADOOP_CONF_DIR=/usr/local/hadoop_live/conf
10/12/01 06:30:34 WARN driver.MahoutDriver: No org.apache.mahout.clustering.display.DisplayCanopy.props found on classpath, will use command-line arguments only
Exception in thread "main" java.lang.IllegalAccessException: Class org.apache.hadoop.util.ProgramDriver$ProgramDescription can not access a member of class org.apache.mahout.clustering.display.DisplayCanopy with modifiers "public static"
        at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
        at java.lang.reflect.Method.invoke(Method.java:588)
        at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
        at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
        at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:175)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:186)

RE: DisplayCanopy class

Posted by Jeff Eastman <je...@Narus.com>.
The DisplayClustering examples aren't designed to be run on Hadoop as they generate simple Java graphics output. You should also be trying Mahout 0.4 or trunk as much has changed since last spring. You will likely have to make changes to the display routines in order to plot arbitrary data. Other than that I need more information on your data to be able to make better recommendations.

-----Original Message-----
From: Sharma, Avani [mailto:agsharma@ebay.com] 
Sent: Tuesday, November 30, 2010 3:55 PM
To: user@mahout.apache.org
Subject: DisplayCanopy class


Hello,

I am using Mahout-0.3 to try out various clustering algorithms provided by mahout.
I ran arff converter, kmeans and canopy clustering over my data and used clusterdumper to check out the clusters.
For big file sizes or big data to be clustered and interpreted, the output of clusterdumper needs some kind of visualization.
So, I read https://cwiki.apache.org/confluence/display/MAHOUT/Visualizing+Sample+Clusters
I was able to generate a sample cluster using DisplayClustering class, but none other display classes are working for me. I am pasting the error below.
Besides, are there any other ways to visualize the output from my data?
How will I feed clusters for my data into these classes in display package?
Please point me to any source of information for the same. Thank you.

~/mahout-0.3/trunk hadoop$bin/mahout org.apache.mahout.clustering.display.DisplayCanopy
Running on hadoop, using HADOOP_HOME=/usr/local/hadoop_live/
HADOOP_CONF_DIR=/usr/local/hadoop_live/conf
10/12/01 06:30:34 WARN driver.MahoutDriver: No org.apache.mahout.clustering.display.DisplayCanopy.props found on classpath, will use command-line arguments only
Exception in thread "main" java.lang.IllegalAccessException: Class org.apache.hadoop.util.ProgramDriver$ProgramDescription can not access a member of class org.apache.mahout.clustering.display.DisplayCanopy with modifiers "public static"
        at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
        at java.lang.reflect.Method.invoke(Method.java:588)
        at org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:68)
        at org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:139)
        at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:175)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:186)