Я хотел бы использовать матричное факторинг (с использованием ALS в MLlib, если быть точным) для рекомендаций по продуктам, где у меня нет рейтингов, но используйте количество покупок (неявная информация, разреженная матрица). Перед тренировкой я хотел бы стандартизировать набор данных клиентом (строка в матрице, где столбцы - это продукты, а пересечение - это сумма). Matrix имеет несколько миллионов строк и десятки тысяч столбцов, поэтому я хотел бы использовать RDD как можно больше.Стандартизация значений в разреженной матрице RDD
Мои данные хранятся в списке кортежей:
(int, int, int)
[(Client1, Product1, amount)
(Client1, Product2, amount)
(Client2, Product1, amount)
(Client2, Product3, amount)]
Я хотел бы стандартизировать количество продуктов, купленных клиентом. Я думал о преобразовании groupByKey, но не знаю, куда идти отсюда.
EDIT: Основная проблема с подходом, который я взял было использование в РДУ и ALS реализована работа с РДУ (доступны в пакете mllib) вместо главной библиотеки ML, которая использует DataFrames (доступный в мл). Так как вложенные преобразования недоступны в RDD, использование DataFrames очень помогло.
Какой стандартизации вы хотели бы применить? – jtitusj