Telegram Web Link
Работа ML инженера со стороны: "надо запустить jupyter и обучить еще одну сложную нейронную сеть"
Работа ML инженера изнутри: "так, пора бы ебануть еще одну абстрактную фабрику"
У меня может быть confirmation bias, но кажется, что deep learning для компьютерного зрения в 3d вылазит из пещер и потихоньку идет в массы.

На Kaggle запустились два конкурса (1, 2) про 3d картинки (что характерно, оба про беспилотные тачки).

На глаза стали попадаться всякие pytorch библиотеки для работы с 3d объектами: kaolin, torch3d, kornia. Две первые - совсем свежие, последняя зародилась с год назад; примерно тогда же нам в WANNABY пришлось написать что-то такое самостоятельно, подглядывая в учебники и исходный код OpenCV (где большая часть примитивов давно есть, но не для модных DL-пацанчиков).

Наконец, на arxiv по запросу "3d deep learning" тоже явный рост: 170 работ в 2017, 255 работ в 2018, 282 - в незакончившемся 2019. Хотя тут нужно бы отнормировать на общее количество статей: DL хайп еще не закончился, экстенсивное развитие продолжается.
Channel photo updated
Спонсор картинки для канала - tensorboard, в котором я только что увидел такой семпл
Плюсы работы в computer vision: иногда смотришь на смешные картинки и видосы.
Минусы работы в computer vision: иногда смотришь на жуткие картинки и видосы.
Часто это происходит одновременно.
Из вчерашней беседы с Алексеем (@simplestupid):
«если в случайном предложении заменить data scientist на "астролог" или "гомеопат", связность текста обычно не страдает».
Одна из самых важных вещей в профессиональном развитии - поработать с фанатиками. Правильный фанатик должен (1) обладать достаточно глубокими знаниями в некоторой нише, (2) быть нетерпимым к посредственной, по его меркам, работе.

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

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

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

“Уже в 1600 г. Уильям Гильберт жаловался, что интеллектуалы должны ориентироваться в «столь обширном океане книг, которые смущают и утомляют умы занимающихся наукой»” - Дэвид Вуттон, “Изобретение науки. Новая история научной революции”
Большинство статей "топ 10 технологий 2010-ых" или "что нас ждет в 2020-ых" - неинтересный кликбейт, да еще и отражающий значительный bias автора.

В противоположность, статья https://habr.com/ru/post/481844/ выглядит максимально объективной и здравой, без перегибов типа "Мы на пороге сильного ИИ" и "AI winter is coming".
Если новогодние каникулы окончательно вам наскучили, предлагаю такое странное развлечение: программирование на татарском https://github.com/minteemer/ElanTele/blob/master/example.et
Хороший текст о самоидентификации через работу.

Я не согласен ровно с одним тезисом: "нормальный человек не может себя ассоциировать с тем, что он делает на этой работе" - почему бы и нет, иногда получается. Только надо понимать, насколько эта самоидентификация через работу твоя собственная, а насколько - результат пропаганды на тему we're making world a better place.

И, как говорят в ML тусовочке, остерегайтесь оверфита (т.е. диверсифицируйте источники эндорфинов). Чем больше себя вы идентифицируете с модным стартапом, который "помогает миллионам людей…", тем сильнее может ебануть в один не самый прекрасный день.
Пока в Москве шутят про то что стало трудно дышать из-за запаха выгоревших миллениалов, на западе уже во всю тревожатся за психическое здоровье людей из тех-индустрии. Болезни на фоне стресса, депрессия и участившиеся самоубийства - чего только нет. Я в своём кругу друзей и знакомых совсем тяжелых случаев не видел пока, но замечаю, что все чаще люди задают вопрос «а чем я вообще занимаюсь?».

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

Ежедневный поиск продакт маркет фита, написание кода по запросу какой-то обезьяны, организация очередного конкурса по перетягиванию каната на лугу за МКАДОМ, борьба за доли процентов в метриках, погоня за партнерствами и интеграциями - не характеризуют и не описывают вас как человека, не отвечают на вопрос «кто я» и, уж тем более, «зачем».

Если вы, допустим, занимаетесь платежками и считаете, что вы ПОМОГАЕТЕ МИЛЛИОНАМ ЛЮДЕЙ УДОБНЕЕ СОВЕРШАТЬ ПОКУПКИ ОНЛАЕН, то сэкономьте себе время и не читайте дальше. Увидимся лет через 10 у невролога.

В какой-то момент тех-индустрия стала, по сути, работой на заводе. А мы, техножрецы её, стали пролетариатом. Порог входа низкий. Чтобы получить работу достаточно просто иметь температуру тела в районе 36 градусов. Если в начале ХХ века твой дед шел из деревни (где ему не дали работать) на завод, то теперь ты идешь из университета (где тебе не объяснили разницу между фундаментальной и прикладной наукой) в ВЫСОКОТЕХНОЛОГИЧНУЮ отрасль.

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

И тут мне вспоминается один мой товарищ финансист. Задолго до самовозгорания миллениалов, еще где-то в 2005-м, он использовал прием, который тогда мне казался просто забавной причудой. Большую часть времени он занимался финансовой стороной слияний-поглощений и прочих больших проектов, занимая директорские и C-level позиции в банках. А в свободные часы (а с такой работой, скорее, минуты) он писал рассказы. И даже умудрился пару лет отучиться в Горьковском литинституте. На тот момент он ни одной строчки не опубликовал. Так вот. Везде, кроме деловых встреч, он представлялся ПИСАТЕЛЕМ. Когда было хорошее настроение - говорил еще что он «немецкий писатель». Тогда, 15 лет назад, это было просто забавно. Я еще тогда думал, что может быть это проявление скромности, или способ избежать неловкости в компании, где других банкиров нет. А теперь понимаю что это гениальный механизм сохранения психического здоровья. Потому что не может нормальный человек ассоциировать себя с экселем, нормой прибыли и прочей ебитдой. Сколько бы денег не приносила работа по найму, если у тебя есть страсть или мечта, хотя бы микроскопическая, в которой ты никак не преуспел - намного полезнее для здоровья ассоциировать себя с ней.

В самом деле, не считал же молодой Эйнштейн себя клерком патентного бюро, а Цой - кочегаром.
У меня есть порочная слабость - люблю мельком подглядывать в чужие ноутбуки в публичных местах и смотреть, кто чем занимается. Как раз недавно судьба перебрасывала меня в другое полушарие транзитом через два бизнес-зала в аэропортах, дав возможность слегка подсматривать за успешными людьми.

Датасет такой: из 10+ работавших наблюдаемых (тех, кто не работал, а смотрел ютуб, я сразу исключил из выборки), никто не программировал даже близко (т.е. не рыскал по stackoverflow и не читал arxiv). Писали документы в ворде, крутили таблички в экселе, ковырялись в емейлах и powerpoint-презентациях с логотипами компаний большой четверки.

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

Но к тому, что IDE окажется значительно умнее меня, я оказался не готов. Довелось мне влезть в код на некоем малознакомом мне вычурном JVM-языке (знаете, такой, в котором */*-:|-+> может оказаться не только валидным, но и идиоматичным кодом). Вынужден признать: в итоге почти всю работу делала IDE, а я в основном перебирал три-четыре хоткея.
На моем любимом сабреддите CS Career Questions недавно появился пост с многообещающим названием "How do I manage a senior dev who writes junior quality code and wont listen to feedback?". Суть поста проста: очередной программист пришел на старый проект, охуел от свалившейся кодовой базы и начал ныть, что кругом дураки. Т.к. я недавно тоже влез в сложный код, мне близка сама ситуация, а вот этот конкретный повод для нытья - не очень.

Человекам свойственно принимать все непривычное в штыки, считать его чуждым. Лирическое отступление: лет восемь назад я был в баре с коллегой из Парижа (да, у меня была крайне сложная работа!). Коллега говорил по-английски с жутким акцентом, периодически вставляя французские словечки в наивной надежде, что это поможет его понимать. Эта почти французская речь несомненно относилась к категории чуждого для бравого парня за соседним столиком, и после какого-то стакана он пришел к нам с предъявами вида "ты че, француз бля? ща мой кореш поблюет, и мы вам ебальники бля бить будем!" (спойлер: ни один ебальник не пострадал).

Конечно, этот пример суть гипербола. Но суть та же: просто человек остро реагирует на непривычное. Вернемся к программированию: новый для человека код без контекста (а исторический контекст быстро не уловить) иногда вызывает фрустрацию и разные отчасти деструктивные желания от "переписать все к черту" до "надо бы сделать так, чтобы этого тупицу уволили".

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

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

Если бы Маяковский жил лет на 100 позже, он вполне мог бы написать:
«я бы haskell выучил только за то,
чтоб хуярить на нем гороскопы».
Навыки, которыми хорошо козырять перед людьми на data science конференциях:
- всеми правдами и неправдами улучшать метрику на kaggle соревнованиях;
- реализовывать архитектуры и трюки из статей 2019 2020 года;
- обучать GANы и делать клоны thispersondoesnotexist.com;
- добиваться 100% загрузки множества видеокарт.

Навыки, которые на самом деле нужны ML инженеру в обычной работе:
- декомпозировать задачи;
- добывать больше новых данных и обеспечивать чистоту существующих;
- локализовывать сложновоспроизводимые проблемы и разбираться в их причинах всеми доступными инструментами от дебаггера до полного перебора безумных гипотез;
- писать тесты, которые действительно ловят баги, а не просто занимают время на CI сервере.

Навыки, которые есть у тебя:
- ...

Навыки, которые есть у меня:
- пиздеть в интернете.
Machine Learning in Python: Main developments and technology trends in data science, machine learning, and artificial intelligence

Обзорная статья про нынешнее положение дел в машинном обучении; кажется, что уровень детализации отлично подойдет пролетариям гребцам прагматичным инженерам, которые делают какие-то штуки своими руками и не очень подойдет тем, кто предпочитает рассуждать про то, как AI трансформирует общество или, напротив, сразу спускаться на уровень конкретных формул.
Я мало знаю про алготрейдинг. Кажется, что это область для действительно умных или излишне самоуверенных, я ни к одной категории себя не отношу, потому особенно не интересуюсь. Но эта статья мне понравилась: просто и задорно объясняет, почему мамкины трейдеры, которые прошли краткий курс по машинному обучению, обречены на провал. Ссылкой можно тыкать всем четким пацанчикам, которые вздумали наебать систему и заработать на форексе и прочих бинарных опционах.

Для кликабельности приведу цитату:

Хотя искусственные нейронные сети и не являются «электронной моделью человеческого мозга», некоторые свойства «разума» они все же проявляют. В основном это «лень» и «хитрость». Причем одновременно. И это не последствия зарождающегося в паре сотен «нейронов» самосознания. Это последствия того, что за популистским термином «обучение» на самом деле кроется термин «оптимизация».
2025/07/04 06:29:40
Back to Top
HTML Embed Code: