1

Я попытался использовать явную функцию поезда для рекомендации продуктов на основе пользовательских настроек (производных настроек) и MSE для этого достаточно хорош для набора учебных и тестовых данных. (Лямбда = 0,01)Spark mllib: Разница между implicitTrain и explicitTrain

Те же самые данные, когда я использую в trainImplicit СКО увеличивается до 20 раз для обоих тест и обучающего набора данных. (Лямбда = 0,01, альфа = 1,0)

Теперь я понимаю, что они отличаются algos, но как я могу судить, если неявное работает лучше, чем явное или нет?

+0

Каковы ваши оценки для явных? Я спрашиваю, потому что если вы не нормализуетесь и, например, у вас есть рейтинги от 1 до 5, ваша квадратная ошибка для заданных оценок будет находиться между 0 и 16. Если с неявной обратной связью она будет между 0 и 1. –

+0

также, как вы переходите от явного к неявному? для меня, с явным, для каждого пользователя у вас много неизвестного (продукт, который они не оценили), тогда рейтинги для некоторого продукта (даже если рейтинги 0-1). Принимая во внимание, что у вас много 0 и пара 1 –

ответ

2

В принципе разница между неявным и явным поездам заключается в том, что подразумеваемый предполагается использовать, когда у вас есть только неявные действия, связанные с этим элементом, чтобы сделать рекомендацию, например. просмотров, кликов, покупок, симпатий, акций и т. д. В то время как явное предположение должно использоваться, когда у вас есть явные ставки относительно предметов, которые вы хотите порекомендовать. Теперь, говоря о применении этого алгоритма в поле, я получил такую ​​же ситуацию, как и при создании системы рекомендаций по воспроизведению фильмов, и я не могу объяснить, почему неявные результаты получили более высокие результаты, чем явные при обучении явным наборам данных. На мой взгляд, MSE является подходящей мерой производительности. И одно, что вы можете сделать, это проверить реализацию искры mllib и попытаться понять, почему :). Извините, если я не ответил вам вообще.

+0

«неявные результаты получили более высокие результаты, чем явные при обучении в явных наборах данных». Как вы оценили это? Также вам нужны оценки/предпочтения между 0-1 для неявного алгоритма? – Shadow

+0

Извините, что вы ping снова, но можете ли вы ответить на это ^ – Shadow