Как оптимизировать механизм предложения базы данных - PullRequest
0 голосов
/ 17 апреля 2010

Я создаю онлайновый движок для рекомендательных фильмов. Я провел некоторые исследования и думаю, что лучший способ реализовать это - использовать корреляцию Пирсона и создать таблицу с полями item1, item2 и корреляции, но проблема в том, что после каждой оценки товара мне нужно восстановить корреляцию для в худшем случае N записей (где N - количество элементов).

Еще одна мысль, которую я прочитал, - это следующая статья, но я не придумал, как ее реализовать.

Так что вы предлагаете оптимизировать этот процесс? Или какие-либо другие предложения? Спасибо.

Ответы [ 2 ]

0 голосов
/ 23 октября 2011

Текущий подход к такого рода проблемам «корзины покупок» заключается в использовании Singular Value Decomposition (SVD). Все трое участников премии NetFlix Prize использовали SVD. SVD используется для выполнения «уменьшения размерности» на ковариационной матрице огромных продуктов * лиц. Хорошей новостью является то, что существуют инкрементные методы (добавление нескольких наблюдений к набору данных не подразумевает пересчет всей матрицы).

0 голосов
/ 14 марта 2011

Не существует оптимального решения, но вы можете найти множество предложений, посмотрев на теги "совместной фильтрации" или теги "механизма рекомендаций" в переполнении стека.

...