TGTGInsightаналитика telegramLIVE / telegram public index
← DeepSchool
DeepSchool avatar

TGINSIGHT POST

Post #50

@deep_school

DeepSchool

Просмотры3,690Количество просмотров
Опубликован1 июн.01.06.2022, 17:00
Содержимое поста

Содержимое

​​Ответ на вопрос с собеседования💼 Вы могли заметить, что вопрос не предполагает единственно верного ответа🙂 Мне всегда интересно, как кандидат умеет рассуждать, задавать вопросы и “решать вопросики”. Вопросы на знаю/не знаю обычно не задаю. Как по мне, это бесполезно. Да и скучно. Если человек не знает ответ на вопрос типа "чем LayerNorm отличается от GroupNorm", то он, сказав "не знаю", может расстроиться, поплыть и не проявить свои лучшие качества. Вопросы на конкретные знания можно задавать незаметно, между делом, и про себя отмечать, ответил ли кандидат. Например, в задаче про кошек некоторые кандидаты сразу говорят: "а зачем нам для задачи сегментации и таких простых объектов 1000 картинок? Там с претрейна и на 500 хорошо завестись должно!". И это очень хороший поинт! Это означает, что кандидат примерно понимает, сколько картинок хватает для разных задач. В таком случае мы меняем условия на некомфортное для него количество картинок и решаем задачу с новым сетапом. Заметьте, если кандидат не сказал “что-то многовато картинок“, то он от этого не поплывет, и это не помешает ему показать все свои знания😉 Вариантов решения задачи тьма. Опишу один из них, который "принимается": Перед нами задача семантической сегментации с мультилейбл таргетом (пиксель может быть одновременно и кошкой и животным). Поэтому сетку будем учить с BCE-лоссом по каждому каналу. В таком случае лосс считается в каждом пикселе независимо, а затем усредняется. Выберем среди 1000 размеченных картинок с кошками 500 картинок и отдадим их на доразметку класса животных. В итоге получим 500 картинок, на которых размечены оба класса и 500 картинок, на которых только кошки. При обучении сети не будем считать лосс по каналу с животными, если на картинке не размечен этот класс. При таком подходе мы максимально использовали исходную большую разметку (1000 фоток) и новую разметку. Также у нас есть картинки, на которых размечены оба класса. И сделали это всего одним ифом! Кстати, это хорошо работающий подход, когда у вас есть гигантский датасет, и нужно научиться предсказывать на нем что-то новое. И чтобы выучить это новое, вам не нужен весь размеченный миллиард картинок. Размечаем часть и только на этой части прокидываем "новые" градиенты. Профит!🙂 Эта задачка хороший старт, попутно ее можно развивать множеством вопросов, например: * Пусть картинок не 1000 и 500, а 10000 и 100. Что поменяется? * Как можно попытаться ускорить процесс разметки, чтобы успеть получить, скажем, не 500, а 900 размеченных фоток? * А как выбрать из 1000 фоток 500 фоток для доразметки? А как быть, если в исходной выборке из 1000 фоток совсем не было фоток других животных? * Позже заказчик приходит и просит ещё маски для самолетов. До дедлайна совсем немного времени и вы понимаете, что не успеете доразметить и получить новую модель. Ваши действия? И ещё миллион других вариантов вопросов, которыми можно продолжить задачу🙂 Но ими не нужно "пулять" подряд, а вкидывать между делом при диалоге.