Добавление новых методов в Apache mahout
Я пытаюсь сделать некоторую работу и исследовать рекомендательные системы. Я хочу использовать Apache Mahout. Тем не менее, я хочу добавить некоторые методы, поскольку для них сейчас нет реализаций. Я пытался сделать это, но исходный код Mahout заблокирован, и я не могу ничего добавить или изменить. Мне интересно, если кто-нибудь знает, как решить эту проблему.
1 ответ
Разместите проект на Gihub в своем собственном хранилище. Сделайте необходимые изменения и, если они достаточно хороши, создайте "запрос на извлечение" обратно в Mahout. Они могут быть включены в основной поток.
Имейте в виду, что Mahout не принимает код "mapreduce" старого стиля Hadoop. Новый Mahout основан на более современных компьютерных бэкэндах, в основном Spark, но совсем недавно Flink. Проект также в основном Scala, хотя это не является обязательным требованием.
Современная поддержка Mahout Recommender предоставляется через SimilarityAnalysis.cooccurrence
а также SimilarityAnalysis.rowsimilarity
, Они предусматривают совместную фильтрацию и основанные на содержании рекомендации, но должны обслуживаться с использованием knn / search engine. См. Документы Mahout здесь и полное руководство здесь: https://templates.prediction.io/PredictionIO/template-scala-parallel-universal-recommendation