Size: a a a

Data Science Kazakhstan (DS/ML kz)

2020 April 06

AS

Ahmad Sumekenov in Data Science Kazakhstan (DS/ML kz)
да, там модели есть но как их грамотно использовать не нашел(
источник

Y

Yerla in Data Science Kazakhstan (DS/ML kz)
Ahmad Sumekenov
да, там модели есть но как их грамотно использовать не нашел(
Что конкретно нужно сделать ?
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Ahmad Sumekenov
да, там модели есть но как их грамотно использовать не нашел(
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Yerla
Вы уже прогоняли их по моделям? Есть результаты?
У меня дома нет всех снимков к сожалению. Пока на небольшом сэмпле код готов
источник

Y

Yerla in Data Science Kazakhstan (DS/ML kz)
Круто круто.CNN?
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Yerla
Круто круто.CNN?
Да, конечно
источник

AS

Ahmad Sumekenov in Data Science Kazakhstan (DS/ML kz)
ооо как раз то что искал, спасибо большое
источник

Y

Yerla in Data Science Kazakhstan (DS/ML kz)
Renat Alimbekov
Да, конечно
Круто, жаль у меня gpu не очень(
источник

I

Iv in Data Science Kazakhstan (DS/ML kz)
Yerla
Вы уже прогоняли их по моделям? Есть результаты?
Есть неплохие результаты))
источник

Y

Yerla in Data Science Kazakhstan (DS/ML kz)
:)
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Ну f1 0.93 на трёх классах😇
источник

A

Aykhan in Data Science Kazakhstan (DS/ML kz)
Ребят, ребят, ребят. Вопрос. Вот какой должен быть миддл в дип лернинге?
источник

AS

Ahmad Sumekenov in Data Science Kazakhstan (DS/ML kz)
была тут ссылка на док типа вопросы для джуна, вопросы для мидла, и вопросы для сениора

вот по ним примерно можно и понять)
источник

B

Birzhan in Data Science Kazakhstan (DS/ML kz)
ml
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Переслано от Renat Alimbekov
1. Стажёр

Время жизни: от нескольких месяцев до года. Хотя бывают "вечные стажеры" - люди, которые ходят по стажировкам каждый год. Например, потому что учатся или двигают науку, но не строят карьеру. Хотя, если это стажировки в Google и Facebook на лето за баксы, а живете вы потом в России за рубли, то это может быть неплохой идеей как работать только несколько месяцев в году, а оставшийся год заниматься чем хотите: отдыхать/путешествовать/стартапить.

ЗП в России по моим ощущениям что-то вроде 30-100к gross за фуллтайм в зависимости от компании. Ориентируйтесь больше на 40-60, остальное - крайние случаи. Можете считать, что первое - 95% доверительный интервал, а второе - 67%, но все числа называю "на глаз". Какие компании я учитываю в этой субъективной оценке? Наверное, IT, телеком, ритейл и даже банки. Но без всяких там трейдеров, у них свой мир (кстати, если кто-то есть из представителей - можете написать в комменты). На тему трейдеров: если вы (конечно, работая уже не стажером, а специалистом) скажете в IT-компании, что переманивайтесь к трейдерам за ЗП, скорее всего деньгами вас не будут пытаться удерживать, т.к. этот бой заведомо проигран. Чтобы удержать - будут рассказывать про высокие светлые цели компании, душевную команду и прочие нематериальные штуки.

Навыки:
Зависит от того, зачем компания берет стажера. Бывает, что вы очень хотите, а им не сложно взять, но прям жесткой заинтересованности нет. Это может показаться необычным, но в этой ситуации стажеров вполне себе могут брать. Тогда в плохом месте будете пить с коллегами кофе/чай и тупить в контактик (сам я такого не видел, но слышал истории), а в неплохом - для вас подыщут задачку на несколько месяцев - скорее всего поставить какие-то эксперименты, проверить гипотезы, собрать прототип чего-нибудь или написать какую-нибудь небольшую статейку по ML.
В хорошем сценарии вам понадобится более-менее знать:
-какие есть стандартные задачи в ML;
-какие методы есть в ML и что в них происходит;
-какие бывают метрики качества;
-как готовить выборку (джойнить таблички в каком-нибудь pandas в случае Python, например) и обучать модельки (первые страницы документации по sklearn)
-если вы уже использовали когда-то XGBoost, LigthGMB, Vowpal Vabbit, Tensorflow, Keras, PyTorch - это будет плюсом.

Также в зависимости от вашей задачи может появиться акцент на что-то. Например, если вам надо поставить эксперименты с нейросеточками, то будет желательно иметь какой-то опыт с ними. Но не всегда, некоторые работодатели нормально смотрят на то, что вы чем-то займетесь впервые. Однако в вашей зарплате это вполне может быть учтено.

При этом иногда компании прям целенаправленно охотно берут стажеров, чтобы из них вырастали крутые специалисты внутри компании. Т.к. обычно ЗП внутри одной компании у людей растёт медленнее, чем за счёт внешних переходов, а новые люди с рынка часто оказываются дороже уже имеющихся сотрудников (если только вы работаете не в быстро растущем стартапе и с опционами) - это выгодная стратегия с точки зрения размера выплат одному сотруднику, но надо понимать, что остаются далеко не все стажеры, и экономика вполне может не сходиться. Лично я не знаю ни одного места в России, про которое я бы точно мог сказать, что там посчитана вся экономика образовательных проектов и стажировок так, чтобы это было реально выгодно компании и не было благотворительностью.

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

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

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Переслано от Renat Alimbekov
лайтовый отдел на основе предварительного общения со знакомыми из компании. Если оптимизируете опыт - в самый хардкорный, куда возьмут.

2. Джун - Junior Data Scientist

Время жизни: от нескольких месяцев до полутора лет, в зависимости от того, что в это понятие вкладывается. Имейте ввиду, что иногда внутренние политики компании не позволяют вас апнуть до Middle (следующий левел) в какой-то момент, но вас уже могут воспринимать как мидла или хотя бы топового джуна. Часто при этом вас могут просто больше поощрять чем других джунов - финансово или какими-то внутренними плюшками. В общем, стоит учитывать, что если у вас где-то там написано, что вы джун, это еще не значит, что в компании вас воспринимают как джуна.

Также имейте ввиду, что оставаться навсегда ждуном *зачернуто* джуном - не ок, т.к. нехватка кадров на этом уровне не такая острая, и проще заменить вас более перспективным сотрудником, который хочет получить левел-ап. Так что я бы не советовал сидеть здесь по 2-3 года и испытывать терпение работодателя.

ЗП в России - где-то от 50 до 130к gross. Ориентироваться можно наверно на 70-100к.

Джун в отличие от стажера уже в полном смысле слова шарит и "фильтрует базар" на собеседовании, когда говорит обо всех вещах, которые стажер просто как-то знает. Хороший Джун, например, не только знает, что есть какой-то ROC-AUC или logloss, но и знает, как именно они считаются, где используются, зачем нужны, почему именно такие.
Примерный список навыков напоминает расширенный стажерский:
-стандартные задачи
-стандартные алгоритмы с пониманием, какие где используются, с какими параметрами (в каких диапазонах обычно и в каком порядке настраиваются), как алгоритмы внутри устроены, какое поведение для них возможно, а какое - нет. Пример простого вопроса на эту тему: может ли градиентный бустинг над деревьями, обученный на неотрицательных таргетах в задаче регрессии давать на тестовой выборке отрицательные прогнозы? А случайный лес?
-метрики качества: какие есть, какие когда использовать, почему метрики такие (например, почему log loss подходит для оценки вероятности, MSE для оценки матожидания, MAE - медианы и т.д.)
-(если будет работать на Python) уже применял много раз стандартный набор библиотек - numpy, scipy, matplotlib, pandas, sklearn. Знаком с XGBoost/LigtGBM (чем-то нормальным для бустинга), чем-то для нейросеток и так далее.
-какое-то базовое понимание о том, как применить матстатистику на практике, например - как понять, что один алгоритм работает статзначимо лучше другого
-хороший джун не боится рассуждать о том, как решить прикладную задачу в духе "построить систему персонализированных рассылок пользователям" - что оптимизировать, что прогнозировать, как оценивать качество и дальше о том, как строить модельку или модельки, если их несколько. Делать это может обычно так себе, т.к. опыт работы не предполагается, но в полный ступор впадать все равно не должен, хоть и задачка уже для следующего уровня.

Дальше включается поправка на крутость команды. Если в команде никто сейчас не шарит машинное обучение, а вы молоды, амбициозны и прочитали документацию sklearn на 10%, то при хорошо подвешенном языке - вы легко устроитесь джуном. Если внешне смотритесь постарше - то может и просто дата саентистом. А если вы придете собеседоваться ко мне или к Эмели Драль - вряд ли мы договоримся даже на стажера, уж простите за наглый выпендреж. Резонное возмущение в этот момент: "ну вы Виктор и зажрались! берете таких крутых ребят джунами, зла на вас не хватает - это же уже полноценный DS!". А вот здесь как раз палка о двух концах - если с вами уже согласилось работать несколько крутых ребят, то команда и обмен опытом становятся вашим конкурентным преимуществом. И люди наоборот лучше пойдут к вам в крутую команду, чем туда, где им будет скучно. Но в крутой команде свои порядки - когда с вами работают звезды, быть джуном среди них не так плохо, особенно с перспективой скоро стать одним из них. Для ребят, которые приходят в такие команды - это наоборот карьерная возможность получить очень быстрый рост по скиллам. А когда вы уже очень скилл
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Переслано от Renat Alimbekov
ованный сотрудник - разговор с вами уже другой.

Топовые айтишные компании, кстати, активно пользуются таким подходом. Раньше я считал это какими-то эксплуататорскими наклонностями, но сейчас знаю, что они вполне готовы хорошо вас оценивать, платить денег и вот это вот всё - просто не тогда, когда вы пришли в компанию джуном на полгода получить строчку в резюме с крутым брендом и свалить, а когда вы уже представляете какую-то серьезную ценность, и с вами можно пробовать строить долгосрочные отношения. Хотя не ждите, что вам все принесут на блюдечке - иногда посматривать на рынок и оценивать, не проигрываете ли вы в деньгах, и по возможности корректировать ситуацию с оплатой вашего труда в текущей компании - вполне себе нужно. А то в один прекрасный день вы поймете, что ваша ЗП в 4 раза меньше чем у тех, кто это делал, и загрустите.

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

3. Data Scientist (Middle)

Время жизни: до бесконечности. Так получается, что уже на этом уровне начинается кадровый голод. Много клёвых джунов выходит из ШАДа и нашей специализации на Coursera (https://www.coursera.org/specializations… если кто еще не видел :), некоторое количество - со специализированных кафедр универов, а также с Data Mining in Action и других таких курсов, и, кроме того, есть постоянно приток людей, которые просто чему-то научились, долго читая туториалы. А вот где брать мидлов? Мидлы обычно - либо щедро оцененные джуны из предыдущего пункта (и это нормальный повод идти в компанию, где бюрократия/некрутая команда/еще какие-то сложности - в общем есть повод накинуть бабок, чтобы компенсировать неудобства), либо прокачавшиеся джуны. Мы, конечно, будем говорить про вторых.

Поработав джуном, вы понимаете, что обучать модельки любой школьник может, даже если надо еще нагенерить признаков. А вот настоящая работа мысли в том, чтобы эти модельки потом были кому-то полезны. А препятствий у вас на пути очень много:
1) можно криво договориться с "заказчиком" задачи (не важно, внутри компании он или вне), например можно не суметь донести ему что-то или наоборот не услышать, что ему нужно,
2) можно не проявить проактивность в понимании, чем ваша работа может быть полезна бизнесу - например, занять позицию "как заказчик сказал, так и делаю - если он попросил что-то глупое, то сам дурак",
3) можно не подумать, что прогнозы вашей модели будут уже не актуальны тогда, когда будут использоваться или вообще ваша модель не встраивается в бизнес-процесс,
4) можно банально выбрать кривую метрику, не имеющую прямого отношения к эффекту от вашей модели для бизнеса,
и так далее.

Когда джун становится мидлом - он уже может нормально договариваться с коллегами, планировать свою работу, и думать о ней не как о построении моделек, а как о принесении пользы бизнесу. Чтобы стать мидлом нужно иметь какой-то опыт работы. Не обязательно в большой компании, возможно даже чисто ресёрчерской, но релевантной тому, что будете делать в компании.

ЗП в России - от 100 до 200 gross. И здесь не скажу на что ориентироваться в этом диапазоне, т.к. во-первых - мидл - это самый "широкий" уровень и ваши компетенции на нем могут сильно варьироваться, а во-вторых - есть компании-маргиналы, которые попытаются вас нанять на этом левеле и на 80к, и на 300к. Но их, как мне кажется, не очень много.

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

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Переслано от Renat Alimbekov
бизнесу (если это бизнесовое приложение ML) должны примести результаты работы
-готовность и способность формулировать самостоятельно задачи ML исходя из потребностей бизнеса: если у джуна должна была быть смелость и сообразительность на то, чтобы пробовать это делать, то мидл должен уметь это делать не сильно косячно. Пример: вы предсказываете результаты матча по какому-нибудь виду спорта, чтобы делать на него ставки, джун может предложить оценивать качество по ROC-AUC, т.к. это известная метрика для оценки того, в правильном ли порядке вы расположили объекты. А вот миддл уже должен предложить посчитать, сколько денег вы можете заработать на своих прогнозах порядка команд в общем зачете. И использовать это как метрику качества. Кстати, и миддл и синьор и кто угодно могут предложить AUC "на отвяжись", когда им некогда, когда задача неприоритетна, или когда им достаточно какой-то минимальной пров
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
Наверно, плох тот Junior, который не хочет когда-то стать по навыкам как эксперт или Chief DS. Ситуация усугубляется тем, что в области Data Science всё меняется настолько быстро, что у нас тупо не очень много времени "строить карьеру". Например, когда мы с коллегами записывали первый курс специализации по ML на Курсеру, съемки длились не больше месяца - и все равно некоторые вещи, которые мы говорили в первых видео, успели устареть к концу съемок, приходилось что-то с этим делать. А уже до 30 лет вы можете начать отчетливо ощущать как выпускники вузов уделывают вас в сообразительности и способности знакомиться с новыми подходами и технологиями. Будет хотеться цепляться за свой опыт и выруливать на нем, но правда неотвратима: на всех левелах в Data Science надо много образовываться, практиковаться и знакомиться с новыми штуками, иначе - прощай профессия. В некотором смысле переход на более "менеджерские" роли Lead или Chief DS чуть повышает роль опыта и "бежать" за развитием отрасли становится как бы чуть легче, но область ответственности и круг вопросов, о которых вам нужно заботиться растут настолько, что еще неизвестно, кому проще.

И перед тем, как совсем приступить к следующим левелам, надо начать другую важную тему. До сих пор, говоря об оплате, мы рассматривали только ЗП. Но ведь есть еще всякие премии, бонусы и другие конвертируемые в деньги плюшки. Я не буду пересчитывать в деньги всякие поездки на конференции, страховки и прочие вещи, которые конечно могут быть разными в разных компаниях, но вот то, что знаю про премии и бонусы - постараюсь учесть.

Премии в разных компаниях практикуют разные - где-то за сделанные проекты, где-то квартальные, где-то годовые, где-то все вместе. Кроме того бывает разное отношение к ним. Например, Сбер известен "премиями", которые тебя точно выплатят и их можно смело включать в оценку ЗП, а в известных мне IT-кампаниях размер премии зависит от твоих результатов.

Так или иначе за год уже Junior и Middle DS могут получить в разных компаниях премиями от 50% до нескольких месячных зп. В случае со следующими левелами ситуация чуть веселее, так что приступим.

Да, и сразу предупреждаю: мои оценки основаны исключительно на том, что я знаю про знакомых, людей, у которых я преподавал, и людей, которых я так или иначе помогал нанимать/рекомендовал куда-то. Уровни и вилки из моих текстов не являются вилками в Яндексе или в других компаниях, где я работал, т.к. я их даже не знаю (это сакральное знание только для HR), все может быть субъективным и не соответствовать реальной статистике - я не проводил никакого честного исследования и продолжаю писать "на глаз". Так что соррян, если я где-то ошибусь в два раза.

---

4. Senior

Предположим, из состояния DS вы решаете развиваться не в управление, а в более прокаченного специалиста. Тогда вам дорога в Senior DS.

Особенности:
-все то же, что у DS (Middle)
-больше опыта в постановке задач
-проявляет инициативу - видит, что будет круто сделать для проекта или какой проект будет полезно сделать для бизнеса - предлагает это, делает и доводит до конца. Пример: синьор приходит в команду, где проведение всех А/В тестов происходит часто, но на коленке и не всегда все делается корректно. Синьор скорее всего посмотрит на это все и либо предложит использовать что-то готовое, либо сделает свой инструмент для проведения А/В тестов и оценки статзначимостей и распространит в команде. Результат: вместо зачастую некорректных тестов (с кривым разбиением на группы или без или с некорректной оценкой статзначимости) будут более адекватные, из которых еще можно делать какие-то выводы.
-желательно, но опционально: может похороводить каких-нибудь джунов или миддлов - помочь прокачаться, обсудить с ними задачи и что-то подсказать и т.п.
-крайне желательно, но все же опционально: может представлять результаты своей работы. Не рисует идиотские графики, на которых ничего не понятно - наоборот подписывает внятно все оси, думает что изобразить, рисует для демонстрации коллегам только то, что показывает хоть что-то содержательное. Внятно формулирует, в чем состояла задача и к
источник

RA

Renat Alimbekov in Data Science Kazakhstan (DS/ML kz)
акие исследования были выполнены, как строится модель. Может говорить так, чтобы было понятно не-датасаентистам. Может представлять результаты на какой-нибудь презе.
-не косячит

На тему последнего - уже в описании мидла я упустил одно важное отличие от джуна. Когда косячит джун - это более-менее понятно. Его работу по определению надо постоянно просматривать и помогать ему отлавливать ошибки типа "обучился не на тот таргет" или "нечаянно заглядывал в будущее в обучающей выборке" или "сделал завышенную оценку качества". Но внимательно следить за работой каждого сотрудника - дорогое удовольствие, поэтому рост уровня - это еще и рост доверия к вам. В случае миддла вашу работу уже как минимум не надо постоянно проверять. И все это не отменяет того, что стоит ревьюить поставленные эксперименты в какие-то важные моменты (подготовка чего-то к выкатке в продакшн и старту А/В теста, оглашение каких-то важных для принятия решений про развитие бизнеса результатов).

Так вот миддлы тоже иногда ошибаются, просто реже джунов. А вот синьор - тот, кто проверит свой результат миллион раз как параноик, еще и сам найдет кому дать проревьюить для верности незамыленным взглядом. Потому что на этом уровне уже есть понимание, что результат работы data scientist'а должен быть очень надежным.

Среднемесячный доход в России: 150-600к gross вместе со всякими бонусами. Да, разброс чудовищный. Часто в компаниях разбивают эту стадию на разные подуровни и, условно, те ребята, которые будут получать 500к уже внутри называются как-то пафосней. Но обычно, когда у вас, например 200-250 gross вы уже считаетесь не "рядовым" дата саентистом, а вполне себе "выше среднего" по скиллам. И, если что, распределение как раз сосредоточено где-то в районе этих сумм, но имеет длинный хвост в сторону бОльших чисел. Ну а что насчет 150к - это история про те команды, где все не очень хорошо с деньгами и все сотрудники оцениваются пока по нижней границе (например, когда сейчас это маленький стартап и платить огромные ЗП не готовы, но все может хорошо сложиться и ситуация будет скомпенсирована опционами). Касательно верхних границ - не надо думать что какие-нибудь 400-500к gross среднемесячного дохода это - фантастика в Российской компании или может быть только в каком-нибудь банке. Если вы реально крутой и уникальный сотрудник на рынке - такое может быть много где (ну а в банках уж точно может быть). С другой стороны, про такие доходы люди обычно не болтают и все остается на уровне слухов. Ну а сами подумайте: если у вас доход 500к, а у ваших друзей 80-150к, вы бы стали им говорить? Ок, а если бы было наоборот, вы бы хотели, чтобы вам об этом говорили? :)

Часто топовых синьоров называют внутри какими-нибудь главными/вещудими/альфующими аналитиками или экспертами, но здесь можно обмануться: также экспертами называют тех, кто не работает на фулл-тайме в команде, а консультирует её, т.е. за счет хорошего кругозора и опыта может принести ощутимую пользу просто регулярно общаясь с командой. А про главных и ведущих вообще не всегда разберешься из названия, кто опытней.

5. Lead Data Scientist

Руководитель группы, тимлид. Аналогичный синьору грейд, но более в сторону управления командой. Здесь вам не обязательно быть таким же крутым как синьор в том, чтобы решить какую-то задачу руками, но скиллы и опыт должны как минимум поддерживать ваш авторитет у команды. При этом надо смотреть на себя трезво: если вы в чем-то не самый крутой в команде - просто примите это и используйте свои сильные стороны. Команда оценит и не оценит попытки сделать то, что вы не умеете, с видом, что вы красавчик и вот как надо делать работу.

Итак, по навыкам - все как у нижней границы синьора, плюс:
-то, что у синьора было опциональным навыком представления результатов, для тимлида - must have
-
-может планировать не только свою работу, но и работу команды
-может менеджить команду в процессе работы и помогать DS'ам формулировать задачи внятно и в соответствии с целями бизнеса
-понимает, сколько ресурсов нужно на ту или иную задачу, и когда задач в группе становится многовато и надо бы расшириться
-може
источник