Skip to content

Commit

Permalink
Fix a bug where predictions are always 0.0
Browse files Browse the repository at this point in the history
Signed-off-by: David Celis <david@davidcelis.com>
  • Loading branch information
David Celis committed Oct 24, 2012
1 parent b7202f4 commit c8efb83
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
9 changes: 5 additions & 4 deletions lib/recommendable/helpers/calculations.rb
Expand Up @@ -131,11 +131,12 @@ def predict_for(user_id, klass, item_id)
disliked_by_set = Recommendable::Helpers::RedisKeyMapper.disliked_by_set_for(klass, item_id)
similarity_sum = 0.0

Recommendable.redis.smembers(liked_by_set).inject(similarity_sum) do |sum, id|
sum += Recommendable.redis.zscore(similarity_set, id).to_f
similarity_sum += Recommendable.redis.smembers(liked_by_set).inject(0) do |memo, id|
memo += Recommendable.redis.zscore(similarity_set, id).to_f
end
Recommendable.redis.smembers(disliked_by_set).inject(similarity_sum) do |sum, id|
sum -= Recommendable.redis.zscore(similarity_set, id).to_f

similarity_sum += Recommendable.redis.smembers(disliked_by_set).inject(0) do |memo, id|
memo -= Recommendable.redis.zscore(similarity_set, id).to_f
end

liked_by_count = Recommendable.redis.scard(liked_by_set)
Expand Down
4 changes: 2 additions & 2 deletions lib/recommendable/version.rb
@@ -1,8 +1,8 @@
module Recommendable
MAJOR = 2
MINOR = 0
PATCH = 0
PRE = 20121011
PATCH = 1
PRE = nil

VERSION = [MAJOR, MINOR, PATCH, PRE].compact.join '.'
end

0 comments on commit c8efb83

Please sign in to comment.