Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Re: Fuzzy matching to user's tastes?

by tilly (Archbishop)
on Jun 27, 2003 at 15:36 UTC ( [id://269625] : note . print w/replies, xml ) Need Help??

in reply to Fuzzy matching to user's tastes?

It sounds to me like you want to read Building a Vector Space Search Engine in Perl.

However one tip. Take a look at Amazon. The key to what they do is they look at purchase patterns. If someone buys X and Y, and someone else has just bought X, then recommend Y to them. The words in the name are unlikely to be a good indicator of what else they might like. But odds are that their tastes are similar to someone else who just bought the same thing.

I haven't thought about how to implement that, but were I you I would let the idea sit, and start thinking about what I need to track about people to do that.

Replies are listed 'Best First'.
Re: Re: Fuzzy matching to user's tastes?
by Seumas (Curate) on Jun 27, 2003 at 16:54 UTC
    The vector space search looks like it could possibly handle what I need, although if it keeps everything in-memory, it's going to eat up a ton of resources (it would have to parse the entire group of documents each and every time the script is run). Perhaps using the Storables method above along with this would be a good solution.

    The other difficulty (and why the amazon-method would not work) is that this is an auction site. It is very unlikely that two people would ever purchase (ie, win) the same item with the exact same title. And because it's an auction site, those 5,000 or more items will not always be the same 5,000 items. In fact, the turnover rate would be in the hundreds-per-day.

    Also, these "documents" would of course be contained in a database. I'm not sure how much that throws things off. I suspect it doesn't from my reading of the article you linked to.

      If you are worried about only one person getting any specific item, look at who bids instead. Then use some kind of classifier on the bidding patterns to find each user's k nearest neighbors for some k. When a user bids on something, message his neighbors (unless they've been messaged already).

Re: Re: Fuzzy matching to user's tastes?
by Seumas (Curate) on Jun 28, 2003 at 00:30 UTC
    Tilly, do you know of any implementation of this using a database? I'm sure I could manage to move things around so that I could use it with Postgresql, but if that's already been done, why reinvent the wheel. I've dug around and have not found such an example, though.

    Just taking my chances and asking. Never know . . . :)
      Sorry, I don't. But from there you should get some names of people who do this stuff, and you might get something better from asking them.

      What I tend to do is remember various useful resources. When I see a question I can often pair it with something which is likely to be a useful starting point. But my ability to do that just means that I saw and remembered that something relates - I don't necessarily know much about the topic in question (nor would I claim to).

      And so it is in this case...