Re: Факторизационные машины в повседневной жизни
От: paul.marx Германия Провести онлайн-опрос
Дата: 23.11.16 18:17
Оценка: 8 (3) :)
Здравствуйте, Gattaka, Вы писали:

G>Коллеги,

G>А а есть ли среди нас пользователи факторизационных машин. Хотелось бы пару вопросов узнать. Писать в форум по алгоритмам как-то рука поднимается, там совсем другие алгоритмы обсуждаются — такого больше нигде нет.
G>В частности как именно они используются в рекомендательных системах. Я так понимаю предсказания берут как предиктор? Или весы как-то используют.


Оба-на!
Наконец-то возможность подвернулась высказаться в теме от первого лица!
Ну и похвастать книжкой: https://www.amazon.com/Providing-Actionable-Recommendations-Paul-Marx/dp/3844102159/


ответ в главе 2.1.1.3


в общих чертах, мы имеем на входе неполную и очень разряженную матрицу. (колонки — объекты, строки — юзеры, ячейки — оценка юзером объекта).
задача рекомендательной системы заполнить в этой матрице свободные места.
факторизационные методы делают разложение неполной матрицы на "латентные" факторы, которые описывают юзерские оценки в неком n-мерном пространстве. имея это n-мерное разложение, восстанавливается "исходная" двумерная матрица, в которой, вуаля, пустые ячейки теперь заполнены.

собственно, способ, как именно делать разложение на факторы, и определяет особенность конкретного факторизационного метода.



G>Потом, я сейчас покрутил LibFM — что-то значения уж сильно прыгают из-за стохастической природы алгоритма, если поставить много итераций — стабильнее, но уже очень не быстро. Как с этим быть?


в общем — точность предсказаний определяют в основном количество факторов (которое должно быть оптимальным для данной матрицы), точность(метод) разложения и масса мелких параметров. быстрый метод раскладывает матрицу в 100млн элементов (скажем 6000х17000) более-менее удовлетворительно в плане точности примерно за час. "ну да и фиг с ним!", — говорят эксперты. бо само разложение не надо делать часто. оно может вызываться периодически, скажем два раза в день/месяц/год. в остальное время для рекомендаций/предсказаний используется уже рассчитанная и сохраненная "восстановленная" матрица.


ПС: а predictor делает predictions, которые и есть предсказания
а весы можно использовать, если есть для этого основания, но как правило используют само значение, округленное и отсеченное в рамках шкалы оценок системы
Провести онлайн-опрос
Online-Umfrage erstellen
Re[3]: Факторизационные машины в повседневной жизни
От: paul.marx Германия Провести онлайн-опрос
Дата: 24.11.16 13:18
Оценка: 1 (1)
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, paul.marx, Вы писали:


PM>>факторизационные методы делают разложение неполной матрицы на "латентные" факторы, которые описывают юзерские оценки в неком n-мерном пространстве. имея это n-мерное разложение, восстанавливается "исходная" двумерная матрица, в которой, вуаля, пустые ячейки теперь заполнены.


E>Старый добрый метод выделения главных компонент, или что-то более умное?


ну, скажем так, principal components и SVD работают только на полной матрице.
мысль в факторизации, однако, та же, вопрос только в том, как выделить компоненты на неполной жутко разреженной матрице непонятно какого ранга.
в этом, наверное, и кроется "что-то более умное".
Провести онлайн-опрос
Online-Umfrage erstellen
Факторизационные машины в повседневной жизни
От: Gattaka Россия  
Дата: 23.11.16 15:50
Оценка:
Коллеги,
А а есть ли среди нас пользователи факторизационных машин. Хотелось бы пару вопросов узнать. Писать в форум по алгоритмам как-то рука поднимается, там совсем другие алгоритмы обсуждаются — такого больше нигде нет.
В частности как именно они используются в рекомендательных системах. Я так понимаю предсказания берут как предиктор? Или весы как-то используют.
Потом, я сейчас покрутил LibFM — что-то значения уж сильно прыгают из-за стохастической природы алгоритма, если поставить много итераций — стабильнее, но уже очень не быстро. Как с этим быть?
Отредактировано 23.11.2016 15:50 Gattaka . Предыдущая версия .
Re[2]: Факторизационные машины в повседневной жизни
От: Gattaka Россия  
Дата: 24.11.16 05:58
Оценка:
Здравствуйте, paul.marx, Вы писали:

PM>Здравствуйте, Gattaka, Вы писали:


PM>Оба-на!

PM>Наконец-то возможность подвернулась высказаться в теме от первого лица!
PM>Ну и похвастать книжкой: https://www.amazon.com/Providing-Actionable-Recommendations-Paul-Marx/dp/3844102159/
PM>

PM>ответ в главе 2.1.1.3

PM>в общих чертах, мы имеем на входе неполную и очень разряженную матрицу. (колонки — объекты, строки — юзеры, ячейки — оценка юзером объекта).
PM>задача рекомендательной системы заполнить в этой матрице свободные места.
PM>факторизационные методы делают разложение неполной матрицы на "латентные" факторы, которые описывают юзерские оценки в неком n-мерном пространстве. имея это n-мерное разложение, восстанавливается "исходная" двумерная матрица, в которой, вуаля, пустые ячейки теперь заполнены.

PM>собственно, способ, как именно делать разложение на факторы, и определяет особенность конкретного факторизационного метода.


PM>в общем — точность предсказаний определяют в основном количество факторов (которое должно быть оптимальным для данной матрицы), точность(метод) разложения и масса мелких параметров. быстрый метод раскладывает матрицу в 100млн элементов (скажем 6000х17000) более-менее удовлетворительно в плане точности примерно за час. "ну да и фиг с ним!", — говорят эксперты. бо само разложение не надо делать часто. оно может вызываться периодически, скажем два раза в день/месяц/год. в остальное время для рекомендаций/предсказаний используется уже рассчитанная и сохраненная "восстановленная" матрица.



PM>ПС: а predictor делает predictions, которые и есть предсказания

PM>а весы можно использовать, если есть для этого основания, но как правило используют само значение, округленное и отсеченное в рамках шкалы оценок системы

Ага, т.е. "аппроксимируют" матрицу с пропущенными значениями, а потом дают на вход какому-нибудь GBM? Это типа лучше работает, чем GBM на исходных данных? И еще вопрос в случае если у меня нет оценок продуктов, а нужно просто предсказать что клиент купит продукт или нет. По факту бинарная оценка 0- не покупал и 1 — покупал. В данном случае имеет смысл применять факторизационные машины? Возможен профит?
Re[2]: Факторизационные машины в повседневной жизни
От: Erop Россия  
Дата: 24.11.16 09:25
Оценка:
Здравствуйте, paul.marx, Вы писали:

PM>факторизационные методы делают разложение неполной матрицы на "латентные" факторы, которые описывают юзерские оценки в неком n-мерном пространстве. имея это n-мерное разложение, восстанавливается "исходная" двумерная матрица, в которой, вуаля, пустые ячейки теперь заполнены.


Старый добрый метод выделения главных компонент, или что-то более умное?
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[3]: Факторизационные машины в повседневной жизни
От: Erop Россия  
Дата: 24.11.16 09:26
Оценка:
Здравствуйте, Gattaka, Вы писали:

G>Ага, т.е. "аппроксимируют" матрицу с пропущенными значениями, а потом дают на вход какому-нибудь GBM? Это типа лучше работает, чем GBM на исходных данных? И еще вопрос в случае если у меня нет оценок продуктов, а нужно просто предсказать что клиент купит продукт или нет. По факту бинарная оценка 0- не покупал и 1 — покупал. В данном случае имеет смысл применять факторизационные машины? Возможен профит?


Наверное очень зависит от того, что продаёшь.
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[3]: Факторизационные машины в повседневной жизни
От: paul.marx Германия Провести онлайн-опрос
Дата: 24.11.16 13:27
Оценка:
Здравствуйте, Gattaka, Вы писали:

G>Ага, т.е. "аппроксимируют" матрицу с пропущенными значениями, а потом дают на вход какому-нибудь GBM? Это типа лучше работает, чем GBM на исходных данных?


под GBM я знаю только Gesellschaft für Biochemie und Molekularbiologie.
поэтому на этот вопрос про GBM ответить не могу.

G>И еще вопрос в случае если у меня нет оценок продуктов, а нужно просто предсказать что клиент купит продукт или нет. По факту бинарная оценка 0- не покупал и 1 — покупал. В данном случае имеет смысл применять факторизационные машины? Возможен профит?


теоретически так можно делать.
практически профит будет не на всех задачах/матрицах.
Провести онлайн-опрос
Online-Umfrage erstellen
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.