==== General ==== **SemanticVectors: Still in development and maintenance. It seems to be a nice possibility. However there are several problems with the compatibility of Lucene and SV.** * Written in Java * Good sponsored! * Uses a Random Projection Algorithm * Doesn't use SVD!! * [[http://groups.google.com/group/semanticvectors|An small community]]: * [[http://semanticvectors.googlecode.com/svn/trunk/doc/index.html|Documentation available]] * [[http://code.google.com/p/semanticvectors/wiki/InstallationInstructions|Installation Guide availabe]] * You NEED [[http://lucene.apache.org/|Lucene3.X]] (a Java library to performe text-search) ==== Installation Instruction ==== **Please read the very last point before starting this tutorial.** This is an installation tutorial for dolts like me, that means, I wrote it after fighting for hours with my lack of intelligence. I hope it helps you to install SemanticVectors quickly. You might need several things before installing SV, in particular a java developer kit, a building tool (ant) and Lucene, a library to search text. Everything is documented in this tutorial. == Install Lucene: == - You will need JDK and ANT: - [[https://jdk6.dev.java.net/|JDK]]: Development kit for java - [[http://ant.apache.org/|Ant]]: A build-tool for java. Similar to make. - You can download both from a repository: sudo apt-get install openjdk-6-jdk sudo apt-get install ant sudo apt-get install ant-doc - You can test your installation with the the following command on your terminal: ant -versionYou should get something likeApache Ant version 1.7.1 compiled on September 8 2010 - [[http://ftp.fernuni-hagen.de/ftp-dir/pub/mirrors/www.apache.org//lucene/java/lucene-3.0.2.tar.gz|Dowload Lucene]] - Untar the gz file in your desired location. - Go to the target directory. - If every thing is allright (if ant is working properly), then run ant in the current directory; it would automatically detect build.xml. ant - You will need to set the appropiate CLASSPATH. CLASSPATH specify the location of Java libraries. To check up if the variable is declared in your system: echo $CLASSPATH - Althought there are (supposedly) several methods to set CLASSPATH the only one which worked for me was the following: You will have to edit //bashrc// gedit .bashrc - At the end of the document add: export {location of lucene}/lucene-3.0.2/lucene-demos-3.0.2.jar:{location of lucene}/lucene-3.0.2/lucene-core-3.0.2.jar" in my case: export CLASSPATH="/home/eduardo/programas/lucene/lucene-3.0.2/lucene-demos-3.0.2.jar:/home/eduardo/programas/lucene/lucene-3.0.2/lucene-core-3.0.2.jar" - Reboot your computer. Now Lucene should be working. - In order to check if everything is all right you should do the following. - [[http://code.google.com/p/semanticvectors/downloads/detail?name=kjbible-corpus.tar.gz&can=2&q=|Download an example corpus]] - Untar the corpus in a desired location. Normally the directory will we: bible_chapters. Go to that directory and run the following command: java org.apache.lucene.demo.IndexFiles {complete bible_chapters path} - In my case:java org.apache.lucene.demo.IndexFiles /home/eduardo/programas/SemanticVectors/bible_chapters - If everything runs ok, you should be done. An index directory will be created in bible_chapters. You should be able to perform some simple test using the demo library included in lucene. == Install SemanticVector== * This is the binary installation method. You could actually built SemanticVector by downloading the appropriate file and using again ant. I don't recommend it. - [[http://semanticvectors.googlecode.com/files/semanticvectors-1.8.jar|Dowload SemanticVector]] .jar file. - Move this file to the desire location - Again open bashrc and add to CLASSPATH the desire file. In my case it looks like: export CLASSPATH="/home/eduardo/programas/lucene/lucene-3.0.2/lucene-demos-3.0.2.jar:/home/eduardo/programas/lucene/lucene-3.0.2/lucene-core-3.0.2.jar:/home/eduardo/programas/SemanticVectors/semanticvectors-1.8.jar" - Reboot your Computer. - By now every thing should be working. Go to the directory where you ran lucene. Run the following command: java pitt.search.semanticvectors.BuildIndex {location in your computer}/bible_chapters/index/ - Now you are ready to use SemanticVectors. In this point I realized that there is a (probably) very serious bug. Since lucene is constantly actualized and SV depends on Lucene, there are several compatibility issues between both. In particular, a class form Lucene has been deprecated in the last version. I checked in the official community and there are not answers to this issue, although others have reported the same problem. Maybe a I get some feedback regarding this problem. Otherwise an older version of the software will be necessary. --- //[[eapontep@uos.de|Eduardo Aponte]] 2010/10/31 13:49//