It still seems strange to observe such a bottleneck, I'm not sure
what's going on.
You are using an in-memory model like GenericDataModel?
We could look at ways to optimize that method, though it looks reasonably tight.
Where within that method do you see time spent?

2010/7/20 Young <[email protected]>:
> Hi again,
> When I do the itembased recommendation, I find there are some latency in 
> getAllOtherItems(long userID). Because it is calculating the items' neighbors 
> and merge these neighbors together. So I am thinking if I precompute each 
> item's neighbors and store in the database, then when I getAllOtherItems(), I 
> could merge these neighbors directly. Is this useful for reducing the latency?
> Or is there other way to make the online-recommendation much faster?
> Thank you.
>
>
>
>
>>Yes you probably want a new, separate table. You have an extra step of
>>computing some notion of similarity anyway, and you probably want to
>>separate this table from your main data table anyhow for reasons of
>>performance and business logic separation.
>>
>>2010/7/19 Young <[email protected]>:
>>> So my prpblem is that I want to build datamodel based on what user has 
>>> bought or added to their favorite or rated.
>>> You mean I need a table describe all these user behavior. For example, if 
>>> user buys one item, I guess the user preference is 4 and add into this 
>>> table?
>>>
>>>
>>>
>>>
>>>>No, you need one table (or view if you like) containing all data. If
>>>>you can't do this, you could write your own copy of a JDBCDataModel
>>>>that can query multiple tables, or, that changes its SQL queries to
>>>>use UNION statements. I imagine it will slow down a lot.
>>>>
>>>>If you mean, can you use a table with preferences with a model that
>>>>ignores preferences, sure you can. The extra column is ignored.
>>>>
>>>>2010/7/19 Young <[email protected]>:
>>>>> Hi,
>>>>> I have three tables, one is with preference and another two are without 
>>>>> preference. Does mahout have some algorithm to integret these tables into 
>>>>> one datamodel?
>>>>>
>>>>> Thank you
>>>
>

Reply via email to