You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@mahout.apache.org by Royi Ronen <ro...@gmail.com> on 2012/12/10 16:59:03 UTC

Matrix Factorization with Implicit Feedback

Hi,

I am looking for confirmation regarding my usage of Mahout matrix
factorization with implicit feedback.
The input file is of the form <user,item,1> , as advised in one of the
Mahout forums.
All my usage points are positive (i.e, the user watched the movie).

I changed the MovieLens Example:

$MAHOUT parallelALS --input /tmp/mahout-work-cloudera/input.txt --output
${WORK_DIR}/als/out \
    --tempDir ${WORK_DIR}/als/tmp --numFeatures 20 --numIterations 40
--lambda 0.065 --implicitFeedback true

# compute recommendations
$MAHOUT recommendfactorized --input ${WORK_DIR}/als/out/userRatings/
--output ${WORK_DIR}/recommendations/ \
    --userFeatures ${WORK_DIR}/als/out/U/ --itemFeatures
${WORK_DIR}/als/out/M/ \
    --numRecommendations 10 --maxRating 5


This runs OK and gives recommendations that sometimes seem to be biased
towards popular items.
I would like to verify that this is the right way to run it.

Also - does anyone know which algorithm is used to factorize?

Thanks very much :)

Re: Matrix Factorization with Implicit Feedback

Posted by Sebastian Schelter <ss...@googlemail.com>.
Hi Royi,

If you specify implicitFeedback=true, then another variant of ALS is
used that is described in this paper:

Collaborative Filtering for Implicit Feedback Datasets
www2.research.att.com/~yifanhu/PUB/cf.pdf

/s

On 10.12.2012 17:07, Danny Bickson wrote:
> As far as I know the ALS algorithm is described in the paper:
> 
> 
> Yunhong Zhou, Dennis Wilkinson, Robert Schreiber and Rong Pan.
> Large-Scale Parallel Collaborative Filtering for the Netflix Prize.
> Proceedings of the 4th international conference on Algorithmic Aspects
> in Information and Management. Shanghai, China pp. 337-348, 2008.
> 
> Best,
> 
> Dr. Danny Bickson
> Project Scientist, Machine Learning Dept.
> Carnegie Mellon University
> 
> 
> 
> On Mon, Dec 10, 2012 at 5:59 PM, Royi Ronen <ro...@gmail.com> wrote:
> 
>> Hi,
>>
>> I am looking for confirmation regarding my usage of Mahout matrix
>> factorization with implicit feedback.
>> The input file is of the form <user,item,1> , as advised in one of the
>> Mahout forums.
>> All my usage points are positive (i.e, the user watched the movie).
>>
>> I changed the MovieLens Example:
>>
>> $MAHOUT parallelALS --input /tmp/mahout-work-cloudera/input.txt --output
>> ${WORK_DIR}/als/out \
>>     --tempDir ${WORK_DIR}/als/tmp --numFeatures 20 --numIterations 40
>> --lambda 0.065 --implicitFeedback true
>>
>> # compute recommendations
>> $MAHOUT recommendfactorized --input ${WORK_DIR}/als/out/userRatings/
>> --output ${WORK_DIR}/recommendations/ \
>>     --userFeatures ${WORK_DIR}/als/out/U/ --itemFeatures
>> ${WORK_DIR}/als/out/M/ \
>>     --numRecommendations 10 --maxRating 5
>>
>>
>> This runs OK and gives recommendations that sometimes seem to be biased
>> towards popular items.
>> I would like to verify that this is the right way to run it.
>>
>> Also - does anyone know which algorithm is used to factorize?
>>
>> Thanks very much :)
>>
> 


Re: Matrix Factorization with Implicit Feedback

Posted by Danny Bickson <da...@gmail.com>.
As far as I know the ALS algorithm is described in the paper:


Yunhong Zhou, Dennis Wilkinson, Robert Schreiber and Rong Pan.
Large-Scale Parallel Collaborative Filtering for the Netflix Prize.
Proceedings of the 4th international conference on Algorithmic Aspects
in Information and Management. Shanghai, China pp. 337-348, 2008.

Best,

Dr. Danny Bickson
Project Scientist, Machine Learning Dept.
Carnegie Mellon University



On Mon, Dec 10, 2012 at 5:59 PM, Royi Ronen <ro...@gmail.com> wrote:

> Hi,
>
> I am looking for confirmation regarding my usage of Mahout matrix
> factorization with implicit feedback.
> The input file is of the form <user,item,1> , as advised in one of the
> Mahout forums.
> All my usage points are positive (i.e, the user watched the movie).
>
> I changed the MovieLens Example:
>
> $MAHOUT parallelALS --input /tmp/mahout-work-cloudera/input.txt --output
> ${WORK_DIR}/als/out \
>     --tempDir ${WORK_DIR}/als/tmp --numFeatures 20 --numIterations 40
> --lambda 0.065 --implicitFeedback true
>
> # compute recommendations
> $MAHOUT recommendfactorized --input ${WORK_DIR}/als/out/userRatings/
> --output ${WORK_DIR}/recommendations/ \
>     --userFeatures ${WORK_DIR}/als/out/U/ --itemFeatures
> ${WORK_DIR}/als/out/M/ \
>     --numRecommendations 10 --maxRating 5
>
>
> This runs OK and gives recommendations that sometimes seem to be biased
> towards popular items.
> I would like to verify that this is the right way to run it.
>
> Also - does anyone know which algorithm is used to factorize?
>
> Thanks very much :)
>