Проект 4. Какой из найденных объектов больше похож на исходный?

В этом проекте исполнители будут сравнивать найденную обувь с исходным изображением и определять, какой из вариантов более похож. Для сравнения в проекте вы дополните результаты из второго проекта, подробнее об этом на шаге Подготовьте и загрузите TSV-файл с заданиями.

  1. Создайте проект
  2. Создайте пул
  3. Подготовьте и загрузите TSV-файл с заданиями
  4. Получите результаты

Создайте проект

Чтобы создать проект:

  1. Нажмите кнопку + Создать проект.

  2. В открывшемся окне выберите шаблон Бок-о-боки изображений, для этого наведите указатель на шаблон и нажмите кнопку Выбрать.

  3. В открывшемся окне заполните параметры проекта.

    1. В поле Название проекта введите Найти такую же или похожую обувь в интернет-магазине.

    2. В поле Описание введите Зайдите в интернет-магазин и предоставьте ссылку и изображение такой же или похожей пары обуви..

    3. В поле Инструкция введите инструкцию.

      Текст инструкции:

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

    1. Нажмите кнопку , чтобы переключить графический режим на формат JSON.

    2. В поле Входные данные введите:

      {
        "image": {
          "type": "url",
          "hidden": false,
          "required": true
        },
        "left_link": {
          "type": "url",
          "hidden": false,
          "required": true
        },
        "right_link": {
          "type": "url",
          "hidden": false,
          "required": true
        }
      }
    3. В поле Выходные данные введите:

      {
        "result": {
          "type": "url",
          "hidden": false,
          "required": true
        }
      }

    Подробнее о параметрах Спецификации читайте в разделе Входные и выходные данные.

  5. Подготовьте Интерфейс задания.

    1. Удалите шаблонный код из блока html.

    2. В блок html вставьте следующий код:

      <div class="header">
          <div class="left caption">
              {{button label="Перейдите на сайт" href=left_link size="L"}}
              <p class="url">{{left_link}}</p>
          </div>
          <div class="right caption">
              <p class="url">{{right_link}}</p>
              {{button label="Перейдите на сайт" href=right_link  size="L"}}
          </div>
      </div>
      
      {{img src=image}}
      
      <div class="content clearfix">
          <div class="left page">
              {{iframe src=uploaded_link_left width="100%" height="700px" real-size=true screenshot=true}}
          </div>
          <div class="right page">
              {{iframe src=uploaded_link_right width="100%" height="700px" real-size=true screenshot=true}}
          </div>
      </div>
      
      <div class="footer">
          {{field type="radio" name="result" label="Левое изображение лучше" value=result_left hotkey="1"}}
          {{field type="radio" name="result" label="Правое изображение лучше" value=result_right hotkey="2"}}
      </div>
    3. В блоке js отредактируйте код, добавив следующие строки до строки OnRender.
      Внимание.

      Не удаляйте существующий код.

      getTemplateData: function() {
              var data = TolokaHandlebarsTask.prototype.getTemplateData.apply(this, arguments),
              input = this.getTask().input_values;
              var left_link = input.left_link;
              var right_link = input.right_link;
              var uploaded_link_left = '',
                  uploaded_link_right = ''
              if (Math.floor(Math.random() * 2)) {
                  uploaded_link_left = left_link
                  uploaded_link_right = right_link
              } else {
                  uploaded_link_left = right_link
                  uploaded_link_right = left_link
              }
      	 data.uploaded_link_left = uploaded_link_left;
              data.uploaded_link_right = uploaded_link_right;
              data.result_left = uploaded_link_left;
              data.result_right = uploaded_link_right;
      
              return data;
      
          },
    4. Удалите шаблонный код из блока css.

    5. В блок css вставьте следующий код, отвечающий за установку пропорционального размера изображения.
      .task {
        display: block;
        text-align:center;
      }
      
      .header {
        overflow: hidden;
        background-color: #FFCC00;
      }
      
      .caption {
        width: 50%;
      }
      
      .url {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
      
        max-width: calc(100% - 182px);
      
        display: inline-block;
        vertical-align: bottom;
      }
      
      .button {
        margin: 10px;
        max-width: 182px;
      }
      
      .button__label {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 150px;
      }
      
      .content {
        margin: 10px 0;
      }
      
      .page {
        display: inline-block;
        width: 50%;
      }
      
      .left {
        float: left;
        text-align: left;
      }
      
      .right {
        float: right;
        text-align: right;
      }
      
      .clearfix {
        overflow: hidden;
        width: 100%;
      }
  6. Нажмите кнопку Предпросмотр.

  7. В открывшемся окне проверьте работу опций задания.

    1. Ответьте на вопрос.

    2. В правом нижнем углу нажмите кнопку Отправить.

  8. Выйдите из режима предпросмотра.

    1. В нижнем левом углу нажмите кнопку Выйти.

    2. В открывшемся окне нажмите кнопку Выйти.

  9. В открывшемся окне нажмите кнопку Завершить редактирование.

Подробнее о работе с проектом читайте в разделе Проект.

Создайте пул

Чтобы создать пул:

  1. Откройте страницу проекта с именем Какая обувь выглядит более похоже.

  2. Нажмите кнопку Добавить пул.

  3. Укажите Название пула.

  4. (опционально) Укажите Приватное описание.

    1. Включите опцию Добавить приватное описание.

    2. В поле Приватное описание введите описание пула. Эта информация доступна только вам.

  5. В разделе Цена за страницу заданий в поле Цена в долларах США укажите 0.01.

  6. В разделе Исполнители отфильтруйте исполнителей.

    1. Нажмите Добавить фильтр.

    2. Найдите в списке блок Профиль и выберите навык Языки.

    3. В поле ? укажите =.

    4. Добавьте еще один фильтр. Нажмите Добавить фильтр.

    5. Найдите в списке блок Навыки и выберите навык Выбрать навык.

    6. В поле Выберите навык выберите Found_shoes.

    7. В поле ? укажите =.

    8. Поле Отсутствует оставьте пустым.

  7. В разделе Контроль качества задайте настройки контроля качества для пула:

    1. Нажмите Добавить блок контроля качества.

    2. Найдите в списке блок Правила и выберите пункт Быстрые ответы.

    3. Задайте правило для быстрых ответов: если количество быстрых ответов больше 3, то заблокировать исполнителя на проекте на 10 дней. В качестве причины указать Быстрые ответы.

    Подробнее о контроле качества читайте в разделе Контроль качества.

  8. В разделе Перекрытие в поле Перекрытие укажите 10.

  9. (опционально) В разделе Соотношение скорость/качество укажите какому проценту пользователей с лучшим рейтингом будет доступен указанный пул. Подробнее об это читайте в разделе Соотношение скорости и качества.

  10. В разделе Параметры:

    1. В поле Время на страницу заданий в секундах укажите 300.

    2. Включите опцию Сохранять порядок заданий.

  11. Нажмите кнопку Сохранить.

Подготовьте и загрузите TSV-файл с заданиями

  1. Скачайте TSV-файл, полученный в третьем проекте.

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

    Создавать пары можно вручную с помощью редактора текста или делать это автоматически, например, Python или Jupyter Lab.

    Для примера вы можете использовать наши результаты https://tlk.s3.yandex.net/wsdm2020/SbS_Toloka_prep&aggr_data.ipynb.

  3. Откройте пул Какой объект больше похож?.

  4. Нажмите кнопку Загрузить. В открывшемся окне настройте параметры загрузки файла.

  5. Выберите Указать вручную.

  6. В поле Заданий на странице укажите 1. Вы можете поэкспериментировать с количеством заданий на странице.

  7. Нажмите кнопку Загрузить.

  8. В открывшемся окне выберите TSV-файл с заданиями для загрузки и нажмите кнопку Открыть.

  9. Нажмите кнопку , чтобы запустить пул.

    Внимание.

    Поставленные задачи выполнят настоящие исполнители Яндекс.Толоки. Перепроверьте конфигурацию вашего проекта перед запуском пула.

Получите результаты

Чтобы получить результаты:

  1. Нажмите кнопку Скачать результаты.

    1. В блоке Статус оставьте включенной только опцию Принятые.

    2. В блоке Поля оставьте включенной опции ссылка, id ответа и id пользователя.

  2. Отключите опцию Разделять ответы пустой строкой.

  3. Попробуйте использовать модель Брэдли-Терри на полученных результатах. Для примера используйте наши результаты https://tlk.s3.yandex.net/wsdm2020/SbS_Toloka_prep&aggr_data.ipynb.