No it's really #2, since the first still has data that is not
true/false. I am not sure what eval you are running, but an RMSE test
wouldn't be useful in case #2. It would always be 0 since there is
only one value in the universe: 1. No value can ever be different from
the right value.

On Tue, Jan 22, 2013 at 4:34 AM, Zia mel <ziad.kame...@gmail.com> wrote:
> Hi !
>
> Can we say that both code 1 and 2 below are using boolean recommender
> since they both use LogLikelihoodSimilarity? Which code is used by
> default when no preferences are available ? When using
> GenericUserBasedRecommender in code 1 it gave a score during
> evaluation , but when using it in code 2 it gave 0 , is the score
> given by code 1 correct since in MAI book page 23 said "In the case of
> Boolean preference data, only a precision-recall test is available
> anyway".
>
> //-- Code 1 --
>   DataModel model = new GroupLensDataModel(new File("ratings.dat"));
>   RecommenderBuilder recommenderBuilder = new RecommenderBuilder() {
>       public Recommender buildRecommender(DataModel model) throws
> TasteException {
>           UserSimilarity similarity = new LogLikelihoodSimilarity(model);
>           UserNeighborhood neighborhood = new
> NearestNUserNeighborhood(2, similarity, model);
>           return new GenericUserBasedRecommender(model, neighborhood,
> similarity);
>       }};
>
> //--- Code 2 ---
> DataModel model = new GenericBooleanPrefDataModel(
>         GenericBooleanPrefDataModel.toDataMap(
>         new FileDataModel(new File("ua.base"))));
>
>     RecommenderBuilder recommenderBuilder = new RecommenderBuilder() {
>       public Recommender buildRecommender(DataModel model) throws
> TasteException {
>         UserSimilarity similarity = new LogLikelihoodSimilarity(model);
>         UserNeighborhood neighborhood = new
> NearestNUserNeighborhood(2, similarity, model);
>        return new GenericBooleanPrefUserBasedRecommender (model,
> neighborhood, similarity);
>       }};
>
> Many Thanks !

Reply via email to