Package org.grouplens.lenskit.vectors

Examples of org.grouplens.lenskit.vectors.SparseVector.containsKey()


        assertThat(scorer, notNullValue());
        SparseVector scores = scorer.score(5, LongArrayList.wrap(items));
        assertThat(scores, notNullValue());
        assertThat(scores.size(), equalTo(1));
        assertThat(scores.get(7), not(notANumber()));
        assertThat(scores.containsKey(8), equalTo(false));
    }

    /**
     * Check that we score items but do not provide scores for items
     * the user has previously rated.  User 5 has rated only item 8
View Full Code Here


        assertThat(scores, notNullValue());
        assertThat(scores.size(), equalTo(1));
        assertThat(scores.get(7), not(notANumber()));
        assertThat(scores.getChannelVector(ItemItemScorer.NEIGHBORHOOD_SIZE_SYMBOL).
                get(7), closeTo(1.0, 1.0e-5));
        assertThat(scores.containsKey(8), equalTo(false));

        long[] items2 = {7, 8, 9};
        scorer = session.get(ItemItemScorer.class);
        assertThat(scorer, notNullValue());
        scores = scorer.score(2, LongArrayList.wrap(items2));
View Full Code Here

        }
        int n = 0;
        int good = 0;
        for (VectorEntry e : ratings) {
            n += 1;
            if (predictions.containsKey(e.getKey())) {
                good += 1;
            }
        }
        context.addUser(n, good);
        return new Coverage(n, good);
View Full Code Here

        logger.debug("outputting {} predictions for user {}", predictions.size(), user.getUserId());
        for (LongIterator iter = items.iterator(); iter.hasNext(); /* no increment */) {
            long item = iter.nextLong();
            Double rating = ratings.containsKey(item) ? ratings.get(item) : null;
            Double pred = predictions.containsKey(item) ? predictions.get(item) : null;
            try {
                List<Object> row = Lists.<Object>newArrayList(user.getUserId(), item, rating, pred);
                for (Pair<Symbol, String> chan: channels) {
                    SparseVector v = predictions.getChannelVector(chan.getLeft());
                    if (v != null && v.containsKey(item)) {
View Full Code Here

            Double pred = predictions.containsKey(item) ? predictions.get(item) : null;
            try {
                List<Object> row = Lists.<Object>newArrayList(user.getUserId(), item, rating, pred);
                for (Pair<Symbol, String> chan: channels) {
                    SparseVector v = predictions.getChannelVector(chan.getLeft());
                    if (v != null && v.containsKey(item)) {
                        row.add(v.get(item));
                    } else {
                        row.add(null);
                    }
                }
View Full Code Here

        }
        SparseVector user = RatingVectorUserHistorySummarizer.makeRatingVector(history);

        for (VectorEntry e : scores.view(VectorEntry.State.EITHER)) {
            final long predicteeItem = e.getKey();
            if (!user.containsKey(predicteeItem)) {
                double total = 0;
                int nitems = 0;
                LongIterator ratingIter = user.keySet().iterator();
                while (ratingIter.hasNext()) {
                    long currentItem = ratingIter.nextLong();
View Full Code Here

        }
        SparseVector ratings = RatingVectorUserHistorySummarizer.makeRatingVector(history);

        for (VectorEntry e : scores.view(VectorEntry.State.EITHER)) {
            final long predicteeItem = e.getKey();
            if (!ratings.containsKey(predicteeItem)) {
                double total = 0;
                int nusers = 0;
                LongIterator ratingIter = ratings.keySet().iterator();
                while (ratingIter.hasNext()) {
                    long currentItem = ratingIter.nextLong();
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.