Обучение нейронной сети без исторических данных - PullRequest
0 голосов
/ 08 ноября 2018

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

  1. Он действительно любит;
  2. У него нет мнения о;
  3. Он не любит

Затем, основываясь на этих тегах, я могу сопоставить некоторые элементы для групп 1., 2. и 3.

Итак, я думаю о выборке предметов из групп 1., 2. и 3. и назначить им целевые значения 1, 0 и -1 соответственно для обучения моей нейронной сети. После этапа обучения я получал бы нейронную сеть с высокой степенью персонализации для каждого пользователя, что позволило бы мне начать рекомендовать некоторые элементы, которые соответствуют предпочтениям каждого пользователя, несмотря на отсутствие исторических данных.

Конечно, когда пользователь начинает предоставлять отзывы о рекомендованных товарах, я обновляю сеть, чтобы соответствовать его новым предпочтениям.

Учитывая сказанное, имеет ли смысл этот подход, или нейронные сети не лучше всего подходят для этого конкретного случая?

1 Ответ

0 голосов
/ 13 ноября 2018

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

Вы не указали, чего бы вы хотели, чтобы ваша система рекомендаций достигала. Сейчас неясно, на основании чего именно вы планируете давать рекомендации пользователю. Является ли это корреляцией между предпочтением пользователя A и всеми другими предпочтениями пользователя, которые должны предлагать продукты, которые не могут видеть пользователи A, которые ему могут понравиться?

Это наиболее вероятный случай, основанный на описании. Итак, вы ищете какое-то решение для задачи Netflix , обычно называемой совместной фильтрацией . Ваша модель, как описано, намного проще, чем данные Netflix или Amazon, но она все еще не может работать без каких-либо данных, поэтому первоначальные предположения будут полностью отключены и будут раздражать пользователей. Одного из моих друзей постоянно раздражают рекомендации, что другие люди, которым понравился этот фильм, также смотрели это - он говорит, что это всегда неправильно, хотя у Netflix есть много данных и всесторонний механизм рекомендаций. Поэтому ожидайте много разочарований и, возможно, даже вандализма (например, когда пользователи сознательно предоставляют неправильные отзывы из-за низкого качества рекомендаций). Единственный способ избежать этого - сначала собрать данные, запросив обратную связь, и давать рекомендации только после того, как вы собрали достаточное количество образцов.

Мы постепенно подходим к актуальному вопросу, как указано: является ли нейронная сеть хорошим инструментом для работы. Если у вас есть достаточное количество данных, которые могут соответствовать простой модели, как вы описали, с небольшим количеством ложных срабатываний (плохие рекомендации) и большим количеством истинных положительных результатов (правильные рекомендации), это так. Сколько данных вам нужно, зависит от количества продуктов и степени корреляции между ними, которые нравятся и не нравятся. Если у вас есть 2 продукта, которые не имеют корреляции, независимо от того, сколько данных вы соберете, они не принесут пользы. Если вы получили очень похожие продукты вместе, корреляция будет сильной, но в равной степени распределенной между всеми продуктами, поэтому вы не сможете дать полезный совет, пока не соберете очень большой объем данных, которые просто отфильтровываются некоторые плохие товары. В лучшем случае это своего рода сильно коррелированные, но очень разные продукты (что-то вроде высококлассного горного велосипеда и камеры для прокачки). Они должны быть надежно связаны на основе других пользовательских предпочтений.

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

Надеюсь, это поможет.

...