По задаче глобально:
1. Классический object recognition, построенный скажем на deep learning, работает на 20 000 категорий качественно. На вход чисто эмпирически нужно по 1000 примеров на каждый класс, то есть размер сета около 1000 * 20000 = 20 000 000 составляет выборка для обучения такой «машинки» (числа из рисерч статей). Но надо учитывать 2 ограничения (а) у стартапа таких бюджетов скорее всего нет, (б) 20000 категорий это достаточно грубо — существует значительно больше типов объектов.
2. При способе создания обучающего множество посредством множественных проекций получается датасет с сильно мультиколлинеарностью (другими словами он «сидит» в меньшей размерности и повторные изображения того же объекта не добавляют большой пользы). Нужен другой способ генерации обучающего множества, удовлетворяющей 2 ограничениям (а) экономически реализуемый, (б) с хорошей обобщающей силой.
3. Нужно находить шаблоны и разбивать все типы одежды на классы — в подклассах задача решаемая. В общем случае, думаю, пока технологии и край науки не готовы.
Андрей, я на FB добавил во френды. Если есть интерес, можем пообщаться.
Резюме по работе с Amazon Mechanical Turk (AMT) следующее (в общем + именно для проекта по поиску изображений одежды):
1. Работники на AMT маркетплейсе отвечают в 10-20% случаев невпопад. Нужно выстраивать пайплайны по коррекции ошибок. Несколько вариантов: (а) голосование, (б) прайминг на правильные ответы, (с) детектирование «спаммеров» через контрольные вопросы. Есть еще много других.
2. Несмотря на то, что работников на AMT около 400 000 (как описывается в ряде статей), активных работников (ядро/MAU) всего из 10000 — 20000 работников. В итоге latency на ответ при простейших подходах оставляет желать лучшего (20 мин — 6 часов). Задачи очень быстро сваливаются за первые 3 SERPа (search engine result page) и за них никто не берется.
3. Предындексация всей коллекции работниками заранее тоже не пройдет, так как изображений слишком много (особено в e-commerce), поэтому такой вариант тоже не проходит.
4. Мы разработали успешный пайплайн, который позволяет за сумму в $5 полностью отранжировать коллекцию из 1000 картинок с полным проходом и гарантиями или скажем 10000 с вероятностными оценками на уровень ошибок поиска совпадений (работники тоже ошибаются) и с откликом в 1-5 минут. Меньше сделать не получится в реальном времени. Придумали довольно простые, но интересные способы работы с краудом (а) модель резервуара, (б) модель страйка, (в) модель чекина ©.
По задаче глобально:
1. Классический object recognition, построенный скажем на deep learning, работает на 20 000 категорий качественно. На вход чисто эмпирически нужно по 1000 примеров на каждый класс, то есть размер сета около 1000 * 20000 = 20 000 000 составляет выборка для обучения такой «машинки» (числа из рисерч статей). Но надо учитывать 2 ограничения (а) у стартапа таких бюджетов скорее всего нет, (б) 20000 категорий это достаточно грубо — существует значительно больше типов объектов.
2. При способе создания обучающего множество посредством множественных проекций получается датасет с сильно мультиколлинеарностью (другими словами он «сидит» в меньшей размерности и повторные изображения того же объекта не добавляют большой пользы). Нужен другой способ генерации обучающего множества, удовлетворяющей 2 ограничениям (а) экономически реализуемый, (б) с хорошей обобщающей силой.
3. Нужно находить шаблоны и разбивать все типы одежды на классы — в подклассах задача решаемая. В общем случае, думаю, пока технологии и край науки не готовы.
Андрей, я на FB добавил во френды. Если есть интерес, можем пообщаться.