- Регистрация
- 21.07.20
- Сообщения
- 40.408
- Реакции
- 1
- Репутация
- 0
Привет, Хабр! Меня зовут Дмитрий Браженко. Разработка продуктов и сервисов регулярно сталкивает нас с необходимостью выбрать лучший вариант: какая иконка красивее? Какая кнопка удобнее? Краудсорсинг – отличный способ учесть мнение потенциальных пользователей, проведя несложные UX-тесты.
Делюсь готовым решением – пайплайном для ранжирования данных. Код на гитхабе
Выбрать метод ранжирования
Существует три основных подхода к обучению и оцениванию моделей ранжирования:
Подробнее про подходы к ранжированию можно прочитать, например, в
Подготовить шаблон к работе с данными
Перед тем как приступить к запуску пайплайна, понадобится:
На последнем пункте на всякий случай остановлюсь поподробнее:
Полный флоу расчётов с пояснениями – на
Ранжировать объекты
Что бы вы ни сравнивали – поисковые выдачи, интерфейсные решения, иконки, картинки и даже видео – суть метода не меняется: для наглядности покажу, как он работает, на конкретном примере.
Часто встречающаяся задача – выбрать вариант дизайна чего-либо. В таком случае есть хотя бы два варианта: новый и старый. Чтобы выбрать самый удачный, можно провести опрос, какой вариант лучше и почему. Вот так мы выбирали карточку для приложения Яндекса:
Чтобы взаимное расположение картинок не влияло на выбор, половине опрашиваемых покажем их в порядке (A|B), другой – (B|A).
После запуска эксперимента получим результаты в полусыром виде. В моём
Выполним несложные математические преобразования, чтобы понять, за какой цвет кнопки именно проголосовало больше людей.
Число выбравших красную кнопку: 18 + 17 = 35
Число выбравших белую кнопку: 7 + 8 = 15
Теперь представим результаты красивой табличкой, заодно подтянем примеры комментариев, которые оставляли наши респонденты (тоже есть в
Делюсь готовым решением – пайплайном для ранжирования данных. Код на гитхабе
You must be registered for see links
! Под катом расскажу, как запустить, на что обратить внимание, покажу несколько примеров использования.Выбрать метод ранжирования
Существует три основных подхода к обучению и оцениванию моделей ранжирования:
- поточечный (pointwise): на вход для сравнения подаются пары «запрос-документ», каждой из которых соответствует оценка краудсорсеров. Качество модели = точность оценки, полученной для пары «запрос-документ»;
- попарный (pairwise): документы, соответствующие одному запросу, сравниваются между собой парами. Задача ранжирования – уменьшать число инверсий для пар документов, т.е. чтобы то, что было оценено хуже, не оказывалось в топе ранжирования;
- списочный (listwise): асессор составляет список – «идеальную выдачу» – сравнение идёт с ней.
Подробнее про подходы к ранжированию можно прочитать, например, в
You must be registered for see links
или в
You must be registered for see links
. Для пайплайна выбрал самый популярный – попарные сравнения. Всё-таки ответить на вопрос «Что хочется больше: яблоко или апельсин?» респондентам оказывается проще, чем оценить по шкале от 1 до 10, насколько хочется именно яблоко.Подготовить шаблон к работе с данными
Перед тем как приступить к запуску пайплайна, понадобится:
- Зарегистрироваться в Толоке как заказчик.
- Получить OAuth-токен по
You must be registered for see links(подробнее – вYou must be registered for see links).
- Выбрать способ хранения файлов, задействованных в задании.
На последнем пункте на всякий случай остановлюсь поподробнее:
- Если планируете размечать большой объём данных, удобно использовать произвольное постоянное S3-хранилище файлов. Например,
You must be registered for see links.
- Подойдёт и любое другое хранилище, которое позволяет получить URL на картинку (графический объект) вида
You must be registered for see links
Полный флоу расчётов с пояснениями – на
You must be registered for see links
. Весь приведённый код должен воспроизвестись, если указать свой токен заказчика (тем не менее, что-то может устареть и потребовать доработок). В статье я постараюсь сосредоточиться на содержательной стороне вопроса.Ранжировать объекты
Что бы вы ни сравнивали – поисковые выдачи, интерфейсные решения, иконки, картинки и даже видео – суть метода не меняется: для наглядности покажу, как он работает, на конкретном примере.
Часто встречающаяся задача – выбрать вариант дизайна чего-либо. В таком случае есть хотя бы два варианта: новый и старый. Чтобы выбрать самый удачный, можно провести опрос, какой вариант лучше и почему. Вот так мы выбирали карточку для приложения Яндекса:
Чтобы взаимное расположение картинок не влияло на выбор, половине опрашиваемых покажем их в порядке (A|B), другой – (B|A).
После запуска эксперимента получим результаты в полусыром виде. В моём
You must be registered for see links
прописано как оформить их в виде таблички:Группа людей | Число проголосовавших “лево” | Число проголосовавших “право” |
---|---|---|
Слева красная кнопка (A|B) | 18 | 8 |
Слева белая кнопка (B|A) | 7 | 17 |
Выполним несложные математические преобразования, чтобы понять, за какой цвет кнопки именно проголосовало больше людей.
Число выбравших красную кнопку: 18 + 17 = 35
Число выбравших белую кнопку: 7 + 8 = 15
Теперь представим результаты красивой табличкой, заодно подтянем примеры комментариев, которые оставляли наши респонденты (тоже есть в
You must be registered for see links
):Красная кнопка | Белая кнопка |
---|