Создание модели данных для mahout

Я пытаюсь создать механизм рекомендаций по сходству элементов с помощью mahout. Набор данных имеет следующий формат (атрибуты представлены в текстовом формате, а не в числовом формате)

name : category : cost : ingredients

x : xx1 : 15 : xxx1, xxx2, xxx3

y : yy1 : 14 : yyy1, yyy2, yyy3

z : xx1 : 12 : xxx1, xxy1

Итак, чтобы использовать этот набор данных для обучения mahout, как правильно преобразовать его в числовой формат (как набор данных CSV Boolean), принятый mahout.


person Sreejithc321    schedule 20.11.2014    source источник


Ответы (1)


При использовании Mahout v1 кодировка может быть в текстовом файле с разделителями/в формате CSV.

name<tab>category-ID<space>cost-range-ID<space>ingredient-ID1<space>ingredient-ID2<space>etc...

Все идентификаторы являются строками, поэтому вы можете указать идентификаторы для диапазонов стоимости вместо использования фактической стоимости в виде числового значения. Также убедитесь, что ни один из столбцов не может содержать один и тот же идентификатор, чтобы идентификаторы диапазона затрат отличались от идентификаторов ингредиентов и идентификаторов категорий.

Запустите mahout spark-rowsimilarity для этих данных, и вы получите файлы в форме:

name<tab>name1:strength<space>name2:strength<space>etc...

Это список похожих элементов для каждого элемента. Список отсортирован, а сила — это оценка LLR (логарифмическое отношение правдоподобия) того, насколько похожи элементы.

Документы здесь: http://mahout.apache.org/users/recommender/intro-cooccurrence-spark.html

person pferrel    schedule 21.11.2014