mahout-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Manuel Blechschmidt <Manuel.Blechschm...@gmx.de>
Subject Re: HELP for implicit data feed back - beginner
Date Sat, 23 Nov 2013 17:36:49 GMT
Hello Pavan,
the following project is preconfigured using maven, m2eclipse and a normal eclipse project
layout:

https://github.com/ManuelB/facebook-recommender-demo

https://raw.github.com/ManuelB/facebook-recommender-demo/master/docs/EclipseWorkspace.png

When you execute the maven goal "mvn install" followed by "mvn embedded-glassfish:run" it
will generate a war and deploy it on an embedded glassfish.

If you have a lot of data you should build a model e.g. similarities or a matrix factorization
on hadoop and then deploy this model in a live environment.

Here is an excellent blog post by Sebastian:
http://ssc.io/deploying-a-massively-scalable-recommender-system-with-apache-mahout/

Hope that helps
    Manuel


On 23.11.2013, at 07:49, Sebastian Schelter wrote:

> You can use it in a standard Java program, no need for JavaEE. There is
> no special perspective for Mahout in Eclipse.
> 
> The easiest way to setup up a project is to configure a maven project
> and use mahout-core as dependency.
> 
> 
> On 23.11.2013 13:43, Pavan K Narayanan wrote:
>> Hi Sebastian
>> 
>> Pardon my ignorance but how do you suggest we use this o.a.m.cf.taste.impl.
>> recommender.GenericBooleanPrefItemBasedRecommender? Can we use it by coding
>> in Java? - if yes, do we need Java EE? Is there a Mahout perspective for
>> Eclipse IDE? Is it possible to use these in Mahout CLI? There are mentions
>> of java programs in MiA but I am unsure how to setup Mahout in Java .
>> Please can you clarify this part .
>> 
>> Sincerely,
>> Pavan
>> 
>> 
>> 
>> 
>> On 23 November 2013 04:59, Sebastian Schelter <ssc.open@googlemail.com>wrote:
>> 
>>> Antony,
>>> 
>>> You don't need numeric ratings or preferences for your recommender. I
>>> would suggest you start by using
>>> 
>>> o.a.m.cf.taste.impl.recommender.GenericBooleanPrefItemBasedRecommender
>>> 
>>> which has explicitly been built to support scenarios without ratings. I
>>> would further suggest to use
>>> 
>>> o.a.m.cf.taste.impl.similarity.LogLikelihoodSimilarity
>>> 
>>> as similarity measure.
>>> 
>>> Best,
>>> Sebastian
>>> 
>>> 
>>> On 22.11.2013 22:37, Antony Adopo wrote:
>>>> ok, thank you so much. I will start like this and after do some tricks to
>>>> increase accuracy
>>>> 
>>>> 
>>>> 2013/11/22 Manuel Blechschmidt <Manuel.Blechschmidt@gmx.de>
>>>> 
>>>>> Hallo Antony,
>>>>> you can use the following project as a starting point:
>>>>> https://github.com/ManuelB/facebook-recommender-demo
>>>>> 
>>>>> Further you can purchase support for mahout at many companies e.g. MapR,
>>>>> Apaxo or Cloudera.
>>>>> 
>>>>> For implicit feedback just use a 1 as preference and the
>>>>> LogLikelihoodSimilarity.
>>>>> 
>>>>> Hope that helps
>>>>>    Manuel
>>>>> 
>>>>> On 22.11.2013, at 16:22, Antony Adopo wrote:
>>>>> 
>>>>>> thanks.
>>>>>> I've already seen this but my question is Mahout propose some
>>>>> collaborative
>>>>>> filtering function not based on preference? or how modelize these
with
>>>>>> purchases?
>>>>>> 
>>>>>> Thanks
>>>>>> 
>>>>>> 
>>>>>> 2013/11/22 Smith, Dan <Dan.Smith@disney.com>
>>>>>> 
>>>>>>> Hi Anthony,
>>>>>>> 
>>>>>>> I would suggest looking into the collaborative filtering functions.
>>> It
>>>>>>> will work best if you have your customers segmented into similar
>>> groups
>>>>>>> such as those that buy high end goods vs low end.
>>>>>>> 
>>>>>>> _Dan
>>>>>>> 
>>>>>>> On 11/22/13 11:04 AM, "Antony Adopo" <saius1er@gmail.com>
wrote:
>>>>>>> 
>>>>>>>> Ok. thanks for answering very quickly
>>>>>>>> 
>>>>>>>> I forgot that to mention in the customer table there is a
"job"
>>>>> variable
>>>>>>>> and implicitly, I thought taht this variable will be also
need for
>>>>>>>> accurate
>>>>>>>> recommendations. anyway
>>>>>>>> 
>>>>>>>> I have around 200 000 customers
>>>>>>>> My order table is around 12 000 000 orders
>>>>>>>> and I have around 2 000 000 distincts (customerid,itemid)
tuples
>>>>>>>> About (customerID,itemID) tuples, when I read Mahout or recommender
>>>>>>>> system
>>>>>>>> litterature, they use
>>>>>>>> (customerID,itemID,*preference*) and I don't have *preference.*
>>>>>>>> So exist an Mahout method or class that handle only
>>> (customerID,itemID)
>>>>>>>> data?
>>>>>>>> And it is possible to use external data as job or (RFM )
analysis to
>>>>> get
>>>>>>>> something more accurate?
>>>>>>>> 
>>>>>>>> Sorry (it's about 2 weeks, I have headache how organize all
of this
>>> to
>>>>>>>> build a great system). Propose your solutions and after,
we'll see
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> about
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 2013/11/22 Sebastian Schelter <ssc.open@googlemail.com>
>>>>>>>> 
>>>>>>>>> Hi Antony,
>>>>>>>>> 
>>>>>>>>> I would start with a simple approach: extract all customerID,itemID
>>>>>>>>> tuples from the orders table and use them as your input
data. How
>>> many
>>>>>>>>> of those do you have? The datasize will dictate whether
you need to
>>>>>>>>> employ a distributed approach to recommendation mining
or not.
>>>>>>>>> 
>>>>>>>>> --sebastian
>>>>>>>>> 
>>>>>>>>> On 22.11.2013 19:21, Antony Adopo wrote:
>>>>>>>>>> Morning,
>>>>>>>>>> 
>>>>>>>>>> My name is Antony and I have a great recommender
system to build
>>>>>>>>>> 
>>>>>>>>>> I'm totally new on recommender systems. After reading
all
>>> scientific
>>>>>>>>> files,
>>>>>>>>>> I didn't find relevant information to build mine.
>>>>>>>>>> 
>>>>>>>>>> ok, my problem:
>>>>>>>>>> 
>>>>>>>>>> I have to build a recommender systems for a retail
industry which
>>>>> sold
>>>>>>>>>> Building products
>>>>>>>>>> 
>>>>>>>>>> I don't have Explicit data (ratings)
>>>>>>>>>> 
>>>>>>>>>> I have only data about purchases and all transactions
and order and
>>>>>>>>> dates.
>>>>>>>>>> as
>>>>>>>>>> 
>>>>>>>>>> Orders table
>>>>>>>>>> 
>>>>>>>>>> CustomerID
>>>>>>>>>> Sales_ID
>>>>>>>>>> Item_ID
>>>>>>>>>> Dates
>>>>>>>>>> Amount
>>>>>>>>>> quantity
>>>>>>>>>> channel_type (phone, mail,etc.)
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> I have also specific informations about users
>>>>>>>>>> 
>>>>>>>>>> Users table
>>>>>>>>>> CustomerID
>>>>>>>>>> Group (engaged, frequent,buyer, newyer, etc.)
>>>>>>>>>> 
>>>>>>>>>> ... and product
>>>>>>>>>> 
>>>>>>>>>> Item_ID
>>>>>>>>>> Item_name
>>>>>>>>>> Iteem_parent (hierarchy)
>>>>>>>>>> 
>>>>>>>>>> I don't know how to use all these informations with
mahout (or
>>> others
>>>>>>>>> tools
>>>>>>>>>> or method) to do a good recommendation system (all
presents are
>>> based
>>>>>>>>> on
>>>>>>>>>> ratings and all mahout systems I have seen are also
based on
>>> ratings
>>>>>>>>> or
>>>>>>>>>> preference)
>>>>>>>>>> 
>>>>>>>>>> At beginning, I thought that I have to use classical
datamining
>>>>>>>>> methods
>>>>>>>>> as
>>>>>>>>>> Clustering or association rules but accurately recommanding
n
>>>>> products
>>>>>>>>>> between  2000 products  clustering in about 300 hierachical
>>>>>>>>> parents(not
>>>>>>>>>> linked to domain) become difficult with classical
data mining
>>>>>>>>>> It is the reason that I turn myself to recommender
system
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> please Help
>>>>>>>>>> thanks
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>> 
>>>>> --
>>>>> Manuel Blechschmidt
>>>>> M.Sc. IT Systems Engineering
>>>>> Dortustr. 57
>>>>> 14467 Potsdam
>>>>> Mobil: 0173/6322621
>>>>> Twitter: http://twitter.com/Manuel_B
>>>>> 
>>>>> 
>>>> 
>>> 
>>> 
>> 
> 

-- 
Manuel Blechschmidt
M.Sc. IT Systems Engineering
Dortustr. 57
14467 Potsdam
Mobil: 0173/6322621
Twitter: http://twitter.com/Manuel_B


Mime
View raw message