Подтвердить что ты не робот

Алгоритмы, помогающие людям выбирать (например, война котенка)

Хорошо, я сталкиваюсь с неизбежным дополнением к своей семье и работаю с выбором имен.

Я подумал о написании программного обеспечения, чтобы отображать имена и заставлял меня выбирать, что мне больше нравится, подобно войне котенка.

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

Итак:

  • Как только у вас есть данные, как обрабатывать граф и ранжировать имена?

В качестве альтернативы:

  • Какие еще полезные алгоритмы могут использоваться для выбора (например, стиль автомобиля, если вы ищете новый автомобиль)?

-Adam

4b9b3361

Ответ 1

Возможно, вам захочется проверить ответы на вопрос, который я задал некоторое время назад: Как ранжировать миллион изображений с краудсорсинговой сортировкой - были хорошие предложения о том, как обрабатывать результаты множества операций сравнения, чтобы достичь ранжирования.

Ответ 2

например, мне нравится майк лучше, чем сам, сам лучше, чем джаред, лучше, чем майк

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

Ответ 3

Я думал, что мы прошли через это, и ответ по-прежнему есть Джон Скит:) Все остальные данные не имеют значения.

EDIT: Поздравляем BTW:)

Ответ 4

Это неправильная реализация: Вы делаете это неправильно. Это точно правильное приложение для алгоритма Она всегда будет выигрывать.

Ответ 5

Я не знаю, насколько масштабируемый этот алгоритм, но я успешно реализовал его на нескольких сайтах, которые я разработал с ранжированием (адаптировано из IMDB рейтинг):

взвешенный рейтинг (WR) = (v / (v+m)) * R + (m / (v+m)) * C

Где:

  • R = среднее значение для котенка (среднее) = (голосов/количество проголосовавших)
  • v = количество голосов за котенок = (голосов)
  • m = минимальные голоса, которые должны быть указаны в Топ-100 (около 25 - безопасный номер)
  • C = среднее голосование по всем котятам = (сумма голосов)/(сумма всех, кто проголосовал)

Алгоритм выше работает для сайта стиля войны котенка, но его не адекватный алгоритм для "экспертной системы" или механизма рекомендации.

Один подход - и я не могу гарантировать хороший - для механизма рекомендаций будет представлять различные варианты в матрице. Допустим, вы хотели выбрать юбку, вы можете представить различные свойства юбки следующим образом:

             Fashionable     Affordable     Colorful     Practical
Miniskirt        10              5              7            5
Cheer skirt      3               1              10           1
Grass skirt      2               7              2            1
Jean skirt       9               5              3            10

Теперь вы спрашиваете у пользователя, какую одежду они хотят носить:

  • [X] Что-то модное?
  • [] Что-то доступное?
  • [] Что-то красочное?
  • [X] Что-то практическое?

Ввод выше показывает, что пользователь ищет что-то модное и практичное, не заботясь о других свойствах, поэтому его достаточно просто, чтобы хруст данных выше:

             Fashionable     Practical     Total
Jean skirt       9               10         19
Miniskirt        10              5          15
Cheer skirt      3               1           4
Grass skirt      2               1           3

Этот очень простой, но эффективный подход работает до тех пор, пока вы знаете свойства каждого объекта, который вы сравниваете.

Ответ 7

Какие другие полезные алгоритмы могут быть используется для выбора [...]?

  • Поставка супружеской единицы с именами детей книга.
  • Ожидание ввода от супружеской единицы о предполагаемых именах детей.

  • Отклонить оскорбительные варианты

  • Повторите пока вы и супружеская единица не договоритесь имя, или ребенок прибывает..., в котором выберите опцию простого выбора в списке, поэтому больница не привинтить свидетельство о рождении

Это сработало хорошо для меня, дважды. И нам даже не нужно было использовать одиннадцатый час простой орфографический вариант!

Ответ 8

Это алгоритм, который мы использовали:

  • Выделите один пол для каждого родителя. Назначьте этому родителю указатель основной для этого пола.
  • Первичное разрешено, но поощряется, создавать список возможных названий потомков в соответствии с какими-либо прихотью или прихотью поражает их воображение в любой конкретный момент времени.
  • Назначьте другому родительскому элементу альтернативный. У альтернатива есть только одна возможность для пола, для которого они не являются первичными, и это вето. Альтернативный вариант может выражать предпочтение одному конкретному варианту над другим, но на самом деле просто шутит. >
  • Вето побеждает. Это не требует оправдания или объяснения (хотя некоторые рекомендуются в тех случаях, когда родители намерены поддерживать свое состояние брачного счастья...).
  • В случаях, когда потенциальный ребенок является итерацией n >= 2, вы можете проконсультироваться с итерацией n = 1 для дополнительных предложений по ранжированию. Для большинства ситуаций эта эвристика должна считаться решающим голосом.

В нашем случае я был главным в обоих случаях (два мальчика), а NumberOneSon был нашим решающим голосом, когда пришло время выбрать обозначение для SecondSon. И вам лучше поверить, что WifeUnit был A-OK, размахивая своим вето вокруг.

Короче, поздравляю. Воспитание - это крик.

Ответ 9

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

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

Как только у вас есть "сливки урожая", отфильтрованные из мусора, вы будете сравнивать лучшие из них напрямую, стиль соревнований, пока не выберете победителя. (Или просто взгляните на них вручную в этот момент)

Ответ 10

Я вполне уверен, что Майк - правильный выбор.