You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@mahout.apache.org by Nick Katsipoulakis <po...@gmail.com> on 2012/12/11 17:29:18 UTC

FileItemSimilarity issue

Dear list,
I am currently working on a project that involves exporting item 
similarities from a database and writing them to a
file. I am using the FileItemSimilarity class in order to read the 
similarities, but i get the following:

Exception in thread "main" java.lang.IllegalArgumentException: Illegal 
value: 3.0
     at 
com.google.common.base.Preconditions.checkArgument(Preconditions.java:119)
     at 
org.apache.mahout.cf.taste.impl.similarity.GenericItemSimilarity$ItemItemSimilarity.<init>(GenericItemSimilarity.java:264)
     at 
org.apache.mahout.cf.taste.impl.similarity.file.FileItemItemSimilarityIterator$1.apply(FileItemItemSimilarityIterator.java:48)
     at 
org.apache.mahout.cf.taste.impl.similarity.file.FileItemItemSimilarityIterator$1.apply(FileItemItemSimilarityIterator.java:44)
     at com.google.common.collect.Iterators$9.transform(Iterators.java:845)
     at 
com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48)
     at 
com.google.common.collect.ForwardingIterator.next(ForwardingIterator.java:48)
     at 
org.apache.mahout.cf.taste.impl.similarity.GenericItemSimilarity.initSimilarityMaps(GenericItemSimilarity.java:153)
     at 
org.apache.mahout.cf.taste.impl.similarity.GenericItemSimilarity.<init>(GenericItemSimilarity.java:72)
     at 
org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity.reload(FileItemSimilarity.java:124)
     at 
org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity.<init>(FileItemSimilarity.java:94)
     at 
org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity.<init>(FileItemSimilarity.java:73)
     at engineclient.EngineClient.main(EngineClient.java:35)
Java Result: 1

and the Java code that produces the above stack is:

import java.io.File;
import javax.xml.namespace.QName;
import javax.xml.transform.Source;
import javax.xml.ws.Dispatch;
import javax.xml.transform.stream.StreamSource;
import javax.xml.ws.Service;
import java.io.StringReader;
import org.apache.mahout.cf.taste.impl.model.file.FileDataModel;
import org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity;
import org.apache.mahout.cf.taste.similarity.ItemSimilarity;

public class EngineClient {

     public static void main(String[] args) throws Exception {
         FileItemSimilarity simModel = new FileItemSimilarity(new 
File("/home/administrator/Desktop/test_sim.csv"));
     }
}

I am working with Mahout version 0.8 SNAPSHOT. Any suggestions?

Thank you

Re: FileItemSimilarity issue

Posted by Sean Owen <sr...@gmail.com>.
Looking at the source answers this pretty directly: 3.0 is not a valid
similarity since they must be in [-1,1].

On Tue, Dec 11, 2012 at 4:29 PM, Nick Katsipoulakis <po...@gmail.com> wrote:
> Dear list,
> I am currently working on a project that involves exporting item
> similarities from a database and writing them to a
> file. I am using the FileItemSimilarity class in order to read the
> similarities, but i get the following:
>
> Exception in thread "main" java.lang.IllegalArgumentException: Illegal
> value: 3.0
>     at
> com.google.common.base.Preconditions.checkArgument(Preconditions.java:119)
>     at
> org.apache.mahout.cf.taste.impl.similarity.GenericItemSimilarity$ItemItemSimilarity.<init>(GenericItemSimilarity.java:264)
>     at
> org.apache.mahout.cf.taste.impl.similarity.file.FileItemItemSimilarityIterator$1.apply(FileItemItemSimilarityIterator.java:48)
>     at
> org.apache.mahout.cf.taste.impl.similarity.file.FileItemItemSimilarityIterator$1.apply(FileItemItemSimilarityIterator.java:44)
>     at com.google.common.collect.Iterators$9.transform(Iterators.java:845)
>     at
> com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48)
>     at
> com.google.common.collect.ForwardingIterator.next(ForwardingIterator.java:48)
>     at
> org.apache.mahout.cf.taste.impl.similarity.GenericItemSimilarity.initSimilarityMaps(GenericItemSimilarity.java:153)
>     at
> org.apache.mahout.cf.taste.impl.similarity.GenericItemSimilarity.<init>(GenericItemSimilarity.java:72)
>     at
> org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity.reload(FileItemSimilarity.java:124)
>     at
> org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity.<init>(FileItemSimilarity.java:94)
>     at
> org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity.<init>(FileItemSimilarity.java:73)
>     at engineclient.EngineClient.main(EngineClient.java:35)
> Java Result: 1
>
> and the Java code that produces the above stack is:
>
> import java.io.File;
> import javax.xml.namespace.QName;
> import javax.xml.transform.Source;
> import javax.xml.ws.Dispatch;
> import javax.xml.transform.stream.StreamSource;
> import javax.xml.ws.Service;
> import java.io.StringReader;
> import org.apache.mahout.cf.taste.impl.model.file.FileDataModel;
> import org.apache.mahout.cf.taste.impl.similarity.file.FileItemSimilarity;
> import org.apache.mahout.cf.taste.similarity.ItemSimilarity;
>
> public class EngineClient {
>
>     public static void main(String[] args) throws Exception {
>         FileItemSimilarity simModel = new FileItemSimilarity(new
> File("/home/administrator/Desktop/test_sim.csv"));
>     }
> }
>
> I am working with Mahout version 0.8 SNAPSHOT. Any suggestions?
>
> Thank you