Канал Виктора Кантора про Data Science, образование и карьеру в сфере анализа данных. По вопросам сотрудничества: @mariekap РКН: 5140322136
Выводы из опроса и интервью о курсах по ML
Итак, прошлый пост собрал намного больше 150 реакций, поэтому кратко раскрываю наблюдения на основе опроса. Тезисно, т.к. первая версия не влезла даже в два лимита символов на пост.
🦾Очень многие, с кем общались, чётко делят курсы по ML на «Skillfactory, Skillbox и всё такое», которые не воспринимают всерьёз, и «нормальные курсы». Нормальными являются Karpov Courses и ряд вузовских курсов. Кроме Жени Соколова и Deep Learning School, которых я уже упоминал выше, рассказывают про AI Talent Hub в ИТМО, в котором, к слову, замечательный курс по RecSys читает Даня Потапов и другие выходцы из Big Data МТС при нашей посильной поддержке.
😨При этом есть люди, которые проходят различные курсы, но так и не начинают работать ML-специалистами. Они отмечают, что обещания, что в ML можно вкатиться «с нуля» сильно оптимистичные. Это подогревает общее недоверие к курсам.
🤯Есть группы с противоположными потребностями: одни обучающиеся хотят разбираться с задачей до потери пульса самостоятельно (им так лучше запоминается), а другие хотят максимально разложенную информацию, чтобы не приходилось получать знания через боль. Как ни странно, совсем несложно давать возможность выбора и удовлетворять оба запроса.
⛏Все хотят практики, разборы кейсов обязательны. Причём хорошо бы разбавить избитые датасеты и задачи чем-то новеньким.
📚От тех, кто уже работает в ML, часто встречается запрос на «обучение для мидлов и сеньоров». При этом наши собеседники чётко понимают, что «научить на мидла» нельзя и это вопрос опыта, поэтому запрос не на «сделайте меня на уровень круче», а на «дайте мне интересный на моём уровне контент».
🥷 Многим на senior-позиции и выше интересно учиться профессиональному управлению и построению команды.
🧪 В отношении базовых курсов есть запрос на более глубокое изложение: как алгоритмы устроены, как их реализовать.
⌛️Изменилось отношение к образованию: если ещё лет десять назад те, кто не был готов выучиться сам по туториалам, книгам и статьям, считались изгоями, то теперь профессиональное сообщество признаёт, что наличие всех знаний в открытом доступе не отменяет экономии времени с помощью курсов.
🔥При этом стремление обучаться по-прежнему очень высокое. Многие готовы выделять по 15–20 часов в неделю на одно только обучение при наличии основной работы. Представьте, чего можно достичь, скажем, за год, если это время тратится на уже готовые курсы, а не на поиск релевантного контента в интернете.
В действительности мы выявили более 20 важных инсайтов о том, чего не хватает обучающимся для более эффективного достижения поставленных перед собой целей. Обо всех рассказывать не буду, попробуем сначала сделать, а потом уже хвастаться.
А если этот пост наберёт больше 250 реакций, обещаю выложить распределение возраста, образования, опыта и зарплат среди участников опроса :)
Как обучать крутых исследователей. Вопрос подписчика
Честно? Не знаю. Дело в том, что у меня не было такого опыта. Да, я занимаюсь обучением, но более прикладным — для создания сильных кадров.
Однако у меня есть на этот счёт наблюдения — спасибо Физтеху. Университет давно готовит сильных учёных в физике. И помогают ему в этом, как мне кажется, две вещи.
✒️ Первая — сильные отцы-основатели, Пётр Леонидович Капица и Лев Давидович Ландау. Нобелевские лауреаты, которые обучали новое поколение крутых специалистов. При этом, если говорить совсем честно, я немного сомневаюсь, что они были сильными методистами.
Про Льва Давидовича, например, рассказывают такую историю: однажды он за лекцию прочитал полсеместра теоретической физики одному из первых наборов Физтеха. Мало того, что студенты были к такому не готовы — среди них были в том числе и фронтовики. И они пожаловались ректору. Ректор поговорил с учёным и убедил, что таким образом обучать всё-таки не стоит.
Про сильных учёных редко говорят, что они были хорошими лекторами. Тот же Андрей Николаевич Колмогоров сделал безумное количество важных вещей для математики и крайне плохо вёл лекции. Но зато как сильный учёный придумывал изящные доказательства теорем.
✒️ Вторая вещь — это с первых дней обучения вовлекать студентов в научную работу.
Совмещать учёбу и исследования, успевая везде, сложно, но на Физтехе об этом шутят: суть системы в том, что отсутствие наказания является поощрением. В этом есть доля правды. Многие состоявшиеся учёные признавали, что невозможно воспитать сильного исследователя без перегрузок.
А что насчёт machine learning?
Я считаю, что опыт Физтеха помог бы и тут. У нас уже есть крутые специалисты, которые могут стать отцами-основателями. В качестве базовых организаций (как на Физтехе) можно привлечь компании с сильными ресёрч-отделами. Главное - суметь собрать всех вместе и договориться о большом совместном проекте.
#вопросподписчика
Карьера вместо карьера. Часть 1.
Я родился в городе Губкине (в честь того же академика Губкина называется РГУ нефти и газа) в недалёком 92-м году. Градообразующее предприятие — Лебединский горно-обогатительный комбинат, где многие губкинцы работают на одном из самых больших железорудных карьеров в России.
Меня же в карьер с детства не особо тянуло, а тянуло к «высокому». Стоит заметить, что в родном городе я бываю часто и труд горняков очень уважаю, но вот у меня были слегка другие увлечения.
В детстве я окончил с отличием художку, играл на фортепиано, ходил несколько лет на айкидо. Классе в седьмом моего отца обеспокоила моя математическая подготовка (я не справлялся с задачками, которые, по его мнению, должен был в состоянии решить). И так началось моё более плотное знакомство с математикой, а затем и с физикой.
Однако в 9-м классе я делал ставку на гуманитарные предметы, участвовал в олимпиадах по литературе и английскому, хотел поступить в МГИМО и стать дипломатом. Помогали сформировать такое видение будущего и учителя, в один голос говорившие, что у меня гуманитарный склад ума :)
Но у гуманитарных наук есть проблема, которую я быстро понял, — необъективность. То есть ты написал сочинение, но с твоей позицией не согласился учитель — теряешь баллы. А в математике отсутствует такой критерий, как «настроение проверяющего», — ты либо решил задачу, либо нет (хотя, как выяснилось позже, всё чуточку сложнее, но общее направление мысли было верным).
Так я пошёл по олимпиадам по физике и поступил в заочную школу при МФТИ. Со школой большую роль сыграл мой дядя. Он в своё время учился в Бауманке, поэтому, во-первых, знал, что такое Физтех (который в городах вроде Губкина не пиарится вообще). А во-вторых, не только помог с учёбой, но ещё и открыл для меня красоту этого мира.
Ты не просто пишешь циферки. Тебе, как загадку, задают задачу на другом языке, языке физики, и ты, предполагая, как устроен наш мир, решаешь её, открываешь ответ и видишь то же самое число. Это меня завораживало.
В итоге я очень удачно написал олимпиады и экзамены в 11-м классе и поступил на Физтех (он же МФТИ). О Физтехе я расскажу в следующих постах.
#мойпуть
Kantor.AI
Анкета для текущих и будущих ML специалистов
Как и обещал, выкладываю опрос: https://forms.gle/XKARpWpgm57mAGTa7
На основе результатов опроса и интервью с теми, кто оставит свой контакт, буду решать, запускаю ли какие-то курсы, и если да, то какие. Также это поможет мне приоритизировать образовательный контент в канале. Буду очень признателен всем, кто пройдет опрос!
#опрос
Почему не делаете что-то свое? Часть 1. Вопрос подписчика
На самом деле мой путь в анализ данных начался с двух стартапов. В первом у меня была доля, во втором я сам все устроил, т.е. была и доля, и лидерская функция. В первом все свелось к поднятию инвестиций и честному их пропрограммированию, т.к. мы еще не умели толком в data science, а уже взялись стартапить. Второй был больше не стартапом, а попыткой реабилитироваться и собрать что-то рабочее после опыта первого стартапа. Кстати, получилось, это был сервис для автоматической суммаризации текстов и плагин для браузера, делающий это по кнопке прямо на сайте (происходило все лет 10 назад). Но красивой коммерческой истории типа покупки Summly за сколько-то миллионов долларов из этого не вышло.
Дальше я подумал, что было бы неплохо прежде чем стартапить хоть чему-то научиться, и пошел получать опыт в больших компаниях. В процессе я посмотрел и на разные роли в команде, и на разные сферы бизнеса, и понял две вещи:
1) Свой бизнес, занимающийся Data Science консалтингом я точно не хочу
2) Свой стартап мне пока скучно делать, потому что для успешного стартапа нужна очень четкая фокусировка на максимально узком продукте, решающем максимально конкретную боль, а мне все еще интересно на работе образовываться «в ширь».
В стартапе, конечно, можно выполнять сразу много разных функций, и это тоже развитие «в ширь», но я про развитие именно в сфере работы с данными. Я не хочу на несколько лет подписаться делать только рекомендательные системы или только мониторинг качества чего-нибудь, мне хочется видеть как можно больше применений анализа данных в бизнесе и участвовать в них. Ближе всего к этому из «своего» - консалтинг, но этим я готов заниматься только внутри большой группы компаний, потому что уровень неопределенности и рисков в этой деятельности (когда их все знаешь и видел, как реализовываются) такой, что мало не покажется. Если у вас маленький DS консалтинг, все эти проблемы могут закрываться навыком продать снег зимой и спихнуть неудачный проект так, чтобы еще и заплатили, но мне это наперсточничество вот совсем не заходит.
#вопрос_подписчика
Как мы с завкафом не поняли друг друга
Однажды заведующий кафедрой алгоритмов и технологий программирования МФТИ обратился ко мне с просьбой — прочитать курс по анализу изображений. Тогда свёрточные нейросетки ещё не были популярны, это была классическая обработка картинок + немного машинлёрнинга: всякие SIFT-дескрипторы, SURF-дескрипторы и поверх них ML-модели.
А я никогда не занимался изображениями. Мой максимум — это курс в ШАДе. Но заведующему кафедрой в личной просьбе сложно отказать, поэтому решил воспользоваться случаем погрузиться в тему. Ведь лучший способ узнать что-то новое — объяснить это новое другому.
В итоге курс я прочитал. Было сложно, к каждой теме приходилось готовиться по нескольку дней. Тут отдельное спасибо Антону Конушину, у которого есть замечательный авторский курс на тему. Он тогда разрешил воспользоваться своими материалами.
И не писал бы я этот пост, если бы не одно но. В конце семестра я подошёл к заведующему и спросил: «А почему, собственно, я?» Всё оказалось просто. Заведующий кафедрой перепутал, чем я занимаюсь — текстами или изображениями.
И за весь год ни он, ни я ни разу не решились об этом поговорить. Однако вывод позитивный. Из-за того, что меня по ошибке приняли за эксперта в изображениях, за год я круто прокачался в теме.
Поэтому не бойтесь браться за новые возможности. Если они приходят — очень вероятно, что вы готовы.
Kantor AI
Как получать удовольствие от решения рутинных задач. Вопрос подписчика
У меня будет три совета.
Первый — придумайте поводы для маленьких радостей. Нарезайте большой проект на части, их — на более мелкие и отмечайте то, что сделали. Я предлагаю отмечать хотя бы просто в списке задач или завершенных дел за день, но конечно в преддверии Нового года можно и бокалом игристого.
Кроме шуток, придумать себе награду после каждого этапа вполне жизнеспособная идея.
Пример: вы преподаватель и проверяете работы студентов. После каждой десятой/двадцатой разрешите себе сходить выпить чай или кофе. Во-первых, приятно. Во-вторых, отдых. В-третьих, вы отметите прогресс и, возможно, будете лучше себя чувствовать. Это уже внесёт удовольствие во всю работу. Несомненный плюс рутинных задач в том, что это понятная работа с понятным прогрессом. После нарезания на небольшие шаги цикл обратной связи короткий, а значит рутина будет давать много поводов порадоваться выполненным задачам.
Второй совет. Превращайте рутинные задачи в привычку. Тогда они перестанут напрягать и органично встроятся в ваш день, как чистка зубов. Привычка формируется периодичностью. Например, несколько лет назад я решил делать значительную часть рутинных дел в последние часы рабочего дня. В итоге привык, что вечером уже можно немного расслабить мозг и заняться понятными вещами, а заканчивать на приятной ноте, когда кучу дел переделал. Раньше у меня для этого был утренний слот, чтобы к обеду уже чувствовать, что день прошел не зря (тоже очень мотивирует), но последние годы на утро в календарь встает много встреч, и пришлось поменять подход.
Очень важно, что периодичность не в том, чтобы делать что-то в одно и то же время по часам, а в том, чтобы делать что-то с одним и тем же настроем: подумайте, что помогает вам создать какое-то определенное настроение (время дня важный фактор, но не единственный) и восполнить запас сил, если его не хватает, и делайте это перед тем, как приступать к периодичному действию.
Третий. Рутина хороша медитативностью. Ты отключаешь мозг и занимаешься монотонной работой — это отдых. Обращайте на свое состояние до и после рутины. Частый пример - наведение порядка (как в комнате, так и в коде, в оргструктуре, в рабочих договоренностях). Обычно после этого становится чуточку спокойнее на душе. Помните про этот эффект и цените его. Часто нам сложно начать, но в процессе затягивает, а в конце становится легче и радостнее.
И напоследок бонус: секретный прием, как справляться с рутиной, включающий все данные выше советы. Находите в себе ребёнка, который пытается идти, не наступая на стыки плиток. Каждый шаг для него это маленький успех, он играет в эту игру регулярно и полностью ей отдается. Когда начинаешь играть, мозг легко заменяет минусы на плюсы.
#вопрос_подписчика
Как меня не хотели пускать на контрольную
Или почему полезно быть вежливым.
Как-то, когда я был еще юным семинаристом, мы с коллегами проводили у студентов контрольную. И так получилось, что я на нее слегка опаздывал. Но я знал, что коллеги раздадут варианты, поэтому не сильно переживал. Но при этом мы с некоторыми из них ни разу не виделись.
Вот я захожу в аудиторию, тишина, все пишут. У доски сидит коллега-семинарист, я подаю ему руку, и тут надо было видеть его лицо. Он принимает очень возмущенный вид и говорит: «Молодой человек, вы в своём уме? Почему опаздываете?» Всё это показательно громким тоном. Студенты разом перестают писать и начинают посмеиваться.
Я отхожу от наглости и отвечаю: «Да я вообще-то препод». Тут уж коллега начинает смущаться вперемежку со смехом, а студенты совсем уже не стесняются ржать в голос. Надо сказать, что я был в тот день не последним опоздавшим, и новые приходящие в аудиторию люди уже получали на входе вопрос: «Ты препод или студент?».
В целом с молодыми преподавателями это стандартная история: однажды, когда я был студентом, преподаватель кафедры высшей математики пытался заставить нашего замдекана (пришедшего нас проведать) сдавать экзамен по матану или удалиться из аудитории. И ходил красный как рак, когда ему объяснили, до кого он докопался :)
Можно ли тут придумать какую-то мораль? Конечно можно, например такую: нас красит культура, друзья. Будьте вежливыми, чтобы не быть дураками. И не обижайтесь, если кто-то по лицу не понял, какой вы важный куриц :)
Отличный пост вышел недавно у Тани Савельевой: как масштаб ошибок показывает масштаб задач и реальную ответственность.
Вопрос для собеседований реально классный и работает. Еще минуту назад человек рассказывал, как он был главным боссом по всем вопросам, а через мгновение уже оправдывает фиаско тем, что оказывается это начальство решало :)
Что касается меня, тут уж извините, не так устроена российская корпоративная культура, чтобы я в своем канале гордо рассказывал о потерях компании из-за своих неверных решений. Даже если следом оправдаюсь, что положительные эффекты от команды составили десятки миллиардов рублей в год.
Но говоря о личном, мне тема ошибок особенно близка в контексте людей. Например, сейчас, когда Таня сделала карьеру в Яндексе, поработала СЕО и круто вырастила пару стартапов и вообще излучает уверенность в себе, нереально представить, что когда я Таню собеседовал 6 лет назад в Яндекс, она достаточно сильно нервничала. Мне это было понятно: она на 5 курсе, учит ML и программирование всего год, вчера я ей лекции читаю, и она смотрит меня на Курсере, а сегодня собеседование. И мы с коллегой (Ильей Ирхиным, тоже моим бывшим студентом, с недавних пор CDO Яндекс.Еды) решили дать Тане еще одно тестовое задание.
С тестовым Таня отлично справилась, мы взяли её в команду, и с тех пор ни одного дня не было, чтобы я пожалел об этом решении.
Не было бы его - конечно никто не знает, что бы было, но скорее всего Яндекс не запустил бы Support AI, EVA AI не нарастила бы выручку в 10 раз и не попала бы в топ СМИ так быстро. Поэтому, принимая решение по каждому человеку (отказ, найм, увольнение, повышение), я постоянно думаю, где и как именно этот человек раскроется лучше.
Но что касается фейлов, не переживайте, я не слился. Рубрика с фейлами продолжит жить в канале, ждите новых постов :)
Что бы я делал, если бы начинал карьеру в ML с нуля. Вопрос подписчика
Давайте порассуждаем о пути начинающего специалиста. Итак, начиная карьеру в 2023 году, я бы:
1. Поступил в университет на факультет с сильным направлением больших данных или машинного обучения. Если бы мне хотелось боли, страданий и превозмогания — МФТИ, а если в приоритете учеба полайтовее и сбалансированное развитие — ВШЭ.
И не надо думать, что «полайтовее» это значит, что вы будете меньше знать. На старте не стоит жестить. Адская учёба приучает пахать на износ, но не учит работать в обычном регулярном режиме. А в жизни нужно как раз это. Так что во всем есть свои плюсы и минусы.
2. После вуза пошёл в магистратуру писать научную работу.
Сейчас, к сожалению, основные центры науки по ML сосредоточены не у нас в стране. Но к выпуску из университета всё может поменяться. Мы всегда славились математиками и программистами. Даже если у нас будут определённые трудности с вычислительными мощностями, уж с алгоритмами и математикой мы точно можем справляться лучше всех.
3. Особо инвестировал в научную карьеру. На Западе уже давно самые дорогие Chief Data Scientist’ы в первую очередь хорошие учёные. Хотя в России другая турбулентность и горизонт планирования, однажды это к нам тоже придёт.
4. Параллельно знакомился с большими языковыми моделями и с темой мультимодальных моделей. После базовых курсов устроился на работу в этих направлениях.
5. Дальше двигался в область этичности AI. С этим нас явно ждёт много развлечений: нужно будет придумывать инженерные методы, как задавать нейросетям определенные рамки.
6. А затем — по ситуации, на основе кругозора и нетворка из университета и с работы.
А как бы вы сегодня делали карьеру в нашей сфере? Поделитесь в комментариях своими советами начинающим: что стоит делать, а чего лучше избегать?
#вопрос_подписчика
ML-тренировки МТС х ФКН ВШЭ
Вчера вместе с Никитой Зелинским и великолепным Сашей Абрамовым @dealerAI открыли тренировки по ML от МТС и ВШЭ. Первое соревнование, которое будем решать с ребятами, посвящено распознаванию сгенерированных LLM текстов (будем отличать их от человеческих).
Я даже наивно надеюсь успеть и сам поучаствовать - всегда хотел поучиться решать каггл. Особенно приятно, что когда-то Саша учился у нас на Data Mining in Action, а теперь и у меня есть возможность поучиться у него :)
Btw, многие, наверно, подумали: "А как же private sharing?". Для тех, кто не знает, на kaggle можно делиться своими наработками по соревнованию: внутри своей команды или на всех участников соревнования. Третьего не дано, за передачу и использование "втихую" могут быть проблемы. Из фото вы видите, что для одной команды у нас многовато людей, поэтому все наработки и идеи, которые мы будем обсуждать в классе, будут собираться вместе, а затем публиковаться в открытом доступе на форуме соревнования. Так что если кто-то хочет к нам присоединиться в удаленном и асинхронном режиме - милости просим, материалы будут.
Спасибо коллегам из ВШЭ, с которыми у нас уже много совместных активностей, а в следующем году будет еще больше. И, конечно, спасибо Саше, что согласился поучаствовать в роли тренера.
P.S.: На фото есть пасхалка: подсказка, с кем еще мы сейчас обсуждаем грядущие образовательные активности (и может быть, до чего-то договоримся). Кто первый догадается? :)
CoolGraph от Big Data МТС
Если вы немного в теме нейросетей, то знаете, что к данным с разной структурой применяются изначально разные архитектуры. В компьютерном зрении — на базе свёрток, в работе с текстами — вдохновлённые рекуррентными сетями и, конечно, трансформеры.
Резонный вопрос: а какие сети могли бы обобщить работу с произвольной структурой в данных (чтобы все перечисленное выше было их частным случаем)? Ответ есть: графовые. Если вы можете по своим данным построить граф, отражающий взаимосвязь их отдельных частей (в компьютерном зрении пиксель связан с соседними пикселями, в тексте слово связано с другими словами), то дальше встаёт вопрос построения нейросети на основе этого графа.
Кроме того, бывают и совсем очевидные ситуации, когда граф возникает сам собой. Например, социальный граф — граф социальных взаимодействий между пользователями, или двудольный граф пользователи-товары в e-commerce и пользователи-фильмы в стриминговых сервисах.
Более того, часто компании, имеющие данные в виде графа, выжимают не всю пользу из этих данных. Просто потому, что придумывать табличные фичи по графу — это тоже отдельная объёмная работа. И здесь тоже помогают графовые нейросети: с ними можно построить граф-эмбеддинги, которые снимут вопрос построения hand-crafted графовых фичей. Именно с графовыми нейросетями и связана новая open source библиотека Big Data МТС.
Сегодня я представляю вам библиотеку CoolGraph, с помощью которой вы сможете построить первые графовые нейросети буквально в несколько строк кода. Задача библиотеки — популяризовать GNN и радикально снизить порог входа в них. Надеюсь, так же, как RecTools и Ambrosia, CoolGraph скоро прорастёт в код других компаний, начнёт попадать в описание стека в вакансиях и, вообще, всячески станет популярной и востребованной в DS-сообществе :)
Тролль или нет
Один очень уважаемый (но способный на довольно едкие высказывания) человек, когда Яндекс выпустил библиотеку CatBoost для градиентного бустинга, сказал:
«Вот видно отставание отечественных компаний. Когда кто-то выпускает TensorFlow для современного deep learning, Яндекс релизит градиентный бустинг, которому сто лет».
Высказывание, конечно, то ещё передёргивание: алгоритм может быть старым, а современные версии будут продолжать появляться. Тот же самый LightGBM от Microsoft появился не намного раньше CatBoost. И был далеко не «ванильным» градиентным бустингом, а очень полезной на практике реализацией, используемой всеми до сих пор.
Но рациональное зерно в этом замечании всё же есть. Делать простые и понятные инструменты для устоявшихся задач и подходов — это важно и нужно, но всегда остаётся вопрос: а что-нибудь более «прорывное» сможем?
А вы как думаете: герой моего поста всё же зелёный жирный тролль или дело говорит?
Метод ALS. Как устроен и когда его используют. Вопрос подписчика
ALS’ом иногда по ошибке называют любое матричное разложение в задаче коллаборативной фильтрации. Ну или не по ошибке, а просто жаргон такой сложился. Но давайте разберёмся в деталях.
Матричное разложение возникает, когда мы для рекомендации пользователю айтемов — товаров, фильмов, музыки — смотрим на матрицу с историей взаимодействия. А затем пробуем её приблизить произведением матрицы пользователей и матрицы айтемов.
В этом подходе для пары пользователь-айтем всегда есть два вектора чисел. Один от пользователя: он содержит в себе информацию о том, что тот полайкал, что не полайкал, что дослушал, что не дослушал. Второй — вектор айтема. Например, если это фильм, то здесь будет отражаться жанр, режиссёр, актёры и т. п. Цель — чтобы скалярное произведение этих чисел давало оценку из матрицы как можно точнее.
Важно понимать, что выше я привёл только примеры информации про пользователя и айтем: алгоритм оптимизации в процессе построения матричного разложения сам подберёт числа, и они не обязаны быть интерпретируемы и понятны человеку (наверняка не будут!). Их задача лишь хорошо прогнозировать числа из исходной матрицы.
А вот дальше уже начинается ALS. Мы настраиваем эти векторы для каждого пользователя и каждого айтема с помощью определённого метода оптимизации. ALS на самом деле и есть метод оптимизации.
Итак, нам нужно минимизировать ошибку в прогнозах. Давайте мы сначала будем подбирать вектор юзера, потом вектор айтема. Так по очереди для случайных пар юзер-айтем. Обычно используются квадратичные потери, а оптимальный выбор означает, что нам нужно производные потерь по искомым векторам приравнять к нулю. В выражении уходит квадрат, и всё сводится к решению системы линейных уравнений. Но при этом мы помним, что данные всегда будут с погрешностью.
Так что тут в дело вступает метод наименьших квадратов. Мы выбираем решение, которое с наименьшей погрешностью похоже на решение этой системы.
Работает, кстати, не только с квадратичными потерями. Мы почти всегда можем приблизить потери квадратичными рядом с точкой минимума (для математиков — разложением по Тейлору до второго порядка).
Как вы догадались, ALS часто используется в рекомендательных системах, потому что он даёт более быструю сходимость. Ведь альтернатива ALS — метод стохастического градиентного спуска (SGD) — для большого числа пользователей и айтемов будет сходиться дольше. Я, конечно, видел случаи, когда ALS обучался медленнее SGD. Но, скорее всего, дело было в руках в подборе параметров алгоритма.
Ещё есть iALS (implicit ALS). Он использует пропуски в матрице оценок. То есть, раз мы оценку не знаем, есть вероятность, что айтем пользователю не нравится. Но вес у этих данных меньше: пользователь мог айтем просто не увидеть.
Из небольших инсайдов. Ходят слухи, что долгое время и в ИВИ, и в яндексовских медиасервисах рекомендации строились на базе ALS. Сейчас, разумеется, системы намного сложнее. Но iALS остаётся обязательным к построению бейзлайном, если уж вы взялись за разработку рекомендательной системы.
В сервисах МТС мы используем iALS в рекомендациях, если данных уже достаточно много, чтобы не ограничиваться простым бейзлайном с популярными айтемами, но ещё недостаточно для более сложных нейросетевых моделек. Вроде тех, которые мы сейчас используем в KION (там уже давно вовсю работают сетки).
Также иногда прогноз от iALS хорошо бустит качество более сложных моделей. Векторы из iALS как фичи, как правило, заходят хуже, чем их произведения.
#вопрос_подписчика
Застрял на N лет на уровне мидла — как выбраться из застоя в карьере? Вопрос от подписчика
Большинство людей даже не задаются этим вопросом. Поэтому вы уже на полпути к успеху.
Здесь важно понимать одну печальную мысль — никто, кроме вас, в вашей карьере не заинтересован. Человек, который не растёт профессионально, невероятно удобен: не нужно думать, кем его заменить, как его мотивировать и т. п. Поэтому первый шаг — перестать ждать, что кто-то за руку поведёт вас выше.
Далее изучите свое отношение к работе. Люди, застрявшие в карьере, могут встать на путь «тихого увольнения». Иногда неосознанно. Это когда человек думает: «На меня не обращают внимания. Значит, буду халявить и выжимать максимум денег и льгот с минимумом усилий, пока не уволят». Так точно не появится навыков и достижений, которые увеличат вашу ценность.
Если подобного нет, подумайте: чего вы хотите? Стать экспертом? Или управлять командой? От этого будет зависеть следующий шаг.
Хотите развиваться как специалист, помните: ключевая ценность крутого спеца в том, что он на отлично соблюдает базовую гигиену. За ним не нужно переделывать. Возможно, ваша проблема как раз в нехватке знаний, либо непонимании каких-то основ, либо банальной невнимательности. Это лечится прокачкой хардов: лекции, книги и практика.
А хотите в тимлиды — предлагайте новые инициативы и доводите их до конца. Последнее очень важно. В здоровой рабочей среде насочинять и не сделать закопает вас хуже, чем вообще ничего не предлагать.
Также важно помнить, что результаты можно получить, только умея долго работать без положительной обратной связи. Как в спорте. Вы же не ждёте, что после двух тренировок получите тело греческой статуи?
Про себя могу сказать, что тоже регулярно сталкивался и сталкиваюсь с затыками в карьере. Оглядываясь назад, могу сказать, что с проблемой всегда можно было справиться изменив поведение. Рано или поздно понимаешь, какие ошибки создают твой "потолок" в карьере, меняешь поведение и внезапно обнаруживаешь, что потолка больше и нет.
Поэтому, коллега, не унывайте. Берите карьеру в свои руки и двигайтесь в той сфере, где хотите развиваться, но обязательно запаситесь терпением и готовностью анализировать свои шаги.
#вопрос_подписчика
Кастдев перед запуском курсов ML
Как и грозились в опросе, мы с моей командой начали проводить интервью с прошедшими опрос подписчиками. Для этого мы выбрали по несколько человек из основных кластеров:
1) тех, кто уже работает в ML, но пока не обсеньорился;
2)тех, кто уже вкатывался в курсы, но пока не вкатился в карьеру в ML;
3) тимлидов и сеньоров, которые уже смотрят на всё происходящее с высоты своего опыта.
Совсем новичков в опросе оказалось экстремально мало, что было для меня неожиданностью. Я думал, будут в основном аналитики и немного менеджеров, а оказалось, что 50% аудитории уже работают ML’щиками.
Ещё одна вещь, насчёт которой я переживал, — это то, как много людей будут делиться в опросе контактами и диапазоном доходов. Но оказалось зря: почти 100% не боялись рассказать про деньги и около 80% делились своими контактами.
Из первых наблюдений: многие называют в числе хороших примеров курсов моих любимых Женю Соколова и Karpov.Courses, что для меня очень приятно. Часто упоминают Игоря SeeAll, постоянного комментатора в этом канале и автора собственного с абсолютно безумным количеством подписчиков. Вспоминают и физтеховскую Deep Learning School. Но что больше всего отзывается теплом в моём сердце — ещё не забыли нашу специализацию на Coursera и Data Mining in Action :)
В общем, пока полон энтузиазма и получаю очень много удовольствия от общения с подписчиками. А если пост соберёт 150 реакций, напишу здесь основные выводы из интервью и опроса.
Пост для гуманитариев
Если вы хотите поучаствовать в текущей ИИ-революции — есть возможность. Один из способов — вопросы права в сфере искусственного интеллекта и данных.
Совсем недавно в Сети появилось новое видео выступления Джорджа Карлина. Старик молод душой, до сих пор юморит. Ладно, шучу, это видео было сгенерировано с помощью AI.
Всем понравилось, все посмеялись. Все, кроме наследников Карлина. Они подали в суд на авторов, так как это была попытка заработать на имени Карлина без их разрешения. И таких ситуаций будет появляться всё больше.
Представьте, какая благодатная почва. Возможно, именно вы сможете построить карьеру в сфере интеллектуальных прав и AI-generated content.
Тема данных тоже заиграет новыми красками. Одна история, когда AI использует общедоступные данные для обучения или fine-tuning, и совсем другая — когда дело касается личных видео и украденных изображений.
Поэтому не верьте мемам про гуманитариев: мы ещё все будем просить их помочь :)
Kantor AI
Три ошибки молодых AI-стартапов. Вопрос подписчика
Какое-то время я ревьюил стартапы перед тем, как им давали или не давали инвестиции (этот процесс называется due diligence, и в него входит как анализ бизнеса и его перспектив, так и техническое ревью). У многих стартапов повторялись одни и те же ошибки, перечислю их в порядке нарастания драматичности.
Первая — команда ничего не умеет. Популярная история: набирают смелых студентов или даже людей вообще без знаний. Основатель, который не понимает в технике, смотрит на их работу, радуется послушанию и выдаёт кривой результат за прорыв в AI. Денег поднять реально, но стабильный бизнес построить невозможно.
Вторая — отсутствие менторов. Скорее всего, стартап не потянет топового ML-спеца, они нынче дорогие. Но можно привлечь их как менторов: даже светила сферы порой согласны помочь. Мотивацией для ментора, помимо удовольствия от помощи людям, могут быть деньги, небольшая доля в компании или даже большое человеческое спасибо.
Третья проблема — это стандартный приговор стартапов с фаундерами-технарями. Стартап вряд ли взлетит, если вы делаете то, что интересно, а не то, на что есть спрос. Тут, понятное дело, есть две крайности. В одной вы делаете красивую пустышку, вроде компаний из Кремниевой долины, которые втупую штампуют обертки вокруг апишки ChatGPT. В другой вы тратите кучу времени на немонетизируемые исследования, надеясь, что рано или поздно они принесут успех.
Мораль: заботьтесь о прокачке команды и балансируйте между интересом и коммерцией. А лучше ищите их пересечение.
И пожалуйста, не делайте компанию по генерации промтов к ChatGPT. Ну пожалуйста!
#вопрос_подписчика
Почему не делаете что-то свое? Часть 2. Вопрос подписчика
Впрочем, если «своим» считать то, где есть доля в выручке, то даже наша с коллегами специализация по Data Science на Coursera уже подходит под такое определение. И с учетом того, что специализации на Coursera больше нет, коммерческих онлайн-курсов у меня сейчас тоже больше нет, то запустить что-нибудь на замену нашей специализации это основной кандидат в моем short-листе «что бы сделать своего».
Вы резонно спросите: «зачем в 2023 году очередной курс по DS?». Да ни за чем, художник пишет картины так, как он видит. Если звезды примут правильное положение, картины становятся востребованы. Образование это мой формат творчества, а различные метрики - это способ оценить востребованность.
Сейчас я больше сконцентрирован на вузовском преподавании (МФТИ, Вышка) и на образовательных проектах МТС (Школа аналитиков данных, факультет ВШПИ в МФТИ совместно с Яндексом, кафедра по Gen AI в Вышке и еще пара секретных проектов, о которых позже будет известно). Там основные метрики - это количество активных слушателей, процент дохождения до конца курсов, распределение оценок на экзаменах и, что немаловажно, результат внешней валидации - какие оценки ставят студентам внешние преподаватели и успешно ли потом студенты проходят собеседования и работают. Последнее измерять очень долго, часто остается просто субъективным впечатлением «вот там и там работают наши ребята», но я работаю над этим и в какой-то момент буду понимать примерные числа.
В случае коммерческого образования все те же метрики остаются, но добавляется выручка. Можно скатиться в научпоп или инфоцыганство, и поднять метрики дохождения и выручку, но при этом уронить метрики востребованности выпускников, а можно наоборот - ценой выживаемости и выручки сделать хардкорный эксклюзив, который даже себя не окупит. Сейчас я в поиске оптимального варианта для себя, и буду очень признателен, если вы, дорогие подписчики, мне поможете. Пишите в комментариях свои мысли, а на днях я опубликую опрос для тех, кто уже работает в Data Science или пока только хочет туда попасть.
#вопрос_подписчика
Три преподавателя ML, которые меня вдохновляют
Это наши соотечественники, их можно потрогать увидеть, познакомиться и пообщаться.
Один из них — мой коллега, замечательный преподаватель ВШЭ Евгений Соколов. Мы работали с ним в Yandex Data Factory, после чего он перешёл в «Дзен». В какой-то момент Женя поразил всех. Вдумайтесь: человек, который был руководителем всего DS «Дзена», предпочёл работе в одной из лучших компаний России любимое дело. Преподавать. «Это было не просто смело, это было капец, как смело».
Мне на такое не хватало духа. Был момент, когда я ушёл из «Яндекса» в преподавание, но это была коммерция. А так, чтобы уволиться и пойти в вуз, — ребят, это мегасмело.
Другой человек, который меня вдохновляет, — это Алексей Драль. Лёша успел поработать в Amazon и «Яндексе». Исключительный профи во всём, что касается Big Data. Но в какой-то момент он понял, что ему надоело быть в найме, и он организовал свою образовательную компанию. В итоге у него дело по душе и по деньгам не прогорел.
И третий — это Анатолий Карпов. Его karpov.courses в прошлом году пробили 300 млн выручки. Я не проходил их, но уверен, что, если мы сравним DS-курсы на рынке, karpov.courses будут одними из самых качественных. Толя для меня второй пример того, что можно не только заниматься любимым делом, но и построить на этом рентабельный бизнес.
Я к чему. У нас преподаватель ассоциируется либо с голодным профессором в жилетке, либо с инфоцыганами и дыханием маткой. А Женя, Лёша и Толя показывают, что тут можно и нести людям свет, и прилично зарабатывать.
Поэтому, если вы хотите преподавать, но боитесь стереотипов выше, пост для вас. Можно вполне успешно организовать свою жизнь в этой сфере.
Kantor.AI
Дорогие друзья!
Этот год был очередным испытанием для нас всех, но жаловаться сейчас не приходится, потому что на каждые трудности найдется много людей, перенесших гораздо больше невзгод. Поэтому для начала давайте поблагодарим свою судьбу за то, что имеем. По крайней мере, мы с вами пережили еще один год, что уже неплохо.
В то же время, Новый Год - это пора надежд, а в нашей жизни, пока она продолжается, всегда есть то, на что мы можем влиять лично. Поэтому я хочу пожелать вам в новом году три важные вещи.
Во-первых, понимать, что вы хотите от этой жизни, и всегда находить силы идти к этим целям.
Во-вторых, окружать себя людьми, с которыми вы хотите прожить свою жизнь.
А в-третьих, оставлять в своей жизни место для любви, тепла и непосредственности, а не только лишь шагать навстречу желаемому. Порой идти медленнее сейчас значит идти быстрее в горизонте десятка лет или всей жизни. Всему свое время, место и люди, с которыми у вас все получится. Не торопите события так, чтобы не успевать их проживать.
Пусть Новый год не только превратит всё задуманное в реальность, но и оставит место для того, что случается как-то само, но дарит вам тепло, радость и счастье.
С наступающим! С Новым 2024м годом. 🎄🎉🎇
Необходимо ли быть магистром математики, чтобы работать в ML? Вопрос подписчика
Вопрос планки. Если её понизить, то в целом и без сильных знаний в математике, и без какого-либо развития можно обойтись.
Но для серьёзного ML research однозначно нужен базовый институтский курс. Причём не столько магистратура, сколько бакалавриат. Оффтоп — если вы ещё в институте, не игнорируйте какие-либо разделы математики полностью. Они могут пригодятся вам дальше, а будет поздно.
Начнём с того, что погружение в математику поможет не выполнять бестолковую работу.
Пример. Человек пытается с помощью логарифмирования признаков добавить что-то качеству ансамблей деревьев. Но он не понимает, что деревья работают на основе отсечений по пороговым значениям признака. И т.к. логарифм это монотонное преобразование, ничего он вам as is не добавит. Пример специально максимально простой, можем в комментариях собрать и более требовательные к математике. Все же понять, как работают деревья, можно и из документации, а логарифмам учат и в школе.
Чем дальше выходим за рамки банального перебора различных действий с данными и моделью, тем сильнее нужны математические знания. Если вы хотите разрабатывать собственные алгоритмы, тут даже программы топового вуза может не хватить (как минимум, не каждого топового вуза). В течение жизни нужно быть готовым постоянно открывать для себя новые области.
Конечно, можно сделать карьеру и без глубокого погружения в математические нюансы. Сейчас, например, много инженерного research, когда мы собираем много слоёв в нейросетях и применяем на понятных задачах. Но хорошая математическая база всегда будет хорошей инвестицией в long term.
#вопрос_подписчика
Размер ваших ошибок определяет ваш масштаб и реальную ответвенность.
Вопрос про самые большие ошибки для меня на собесе один из главных. И я супер всем советую подумать над этим вопросом.
Помимо очевидных вещей типо «посмотреть как человек процессит свой опыт» есть еще более важная сторона этого вопроса. А именно, что размер ваших ошибок, а не то, что вы делали во многом определяет масштаб вашей работы и вашу реальную ответсвенность.
Расскажу на примере.
У меня как то был опыт найма и просмотра большн 20 человек в маркетинг (да, в последнее время я много работала с маркетингом)
Приходит кандидат, который говорит что он отвечал за направление маркетинга в небольшом стартапе - прям за весь маркетинг. Описывает, как он участвовал в разных брейнштормах и митингах по тому, как мы привлекаем юзеров, про продукт и про коммуникацию бренда. Потом спрашиваешь про самую большую ошибку. И человек говорит, что он случайно неправильно настроил рекламные кампании в кабинете фейсбука. При более подробных вопросах вокруг этой темы выясняется, что решения о обьемах закупки трафыика, гипотезы про эффективность, юнит экономика, послание бренда, связка маркетинг и продукт были на CEO. А чувак руками делал то, что ему говорили, предварительно это обсуждая.
Короче по этому ответу можно с уверенностью сказать, что чел не CMO.
Короче если масштаб ваших файлов малекий и очень конкретный задумайтесь. Возможность лажать по крупному - одна из лучших вещей для карьеры и если есть простор и такая потенциальная возможность это повод благодарить судьбу, а не грустить. Про условии конечно, что вы учитесь на ошибках и делаете это быстро.
Если этот пост наберёт 200 огонечков поделюсь своими самыми большими ошибками.
Как перебор победил метод наименьших квадратов
Контент про мои фейлы стал лидером в опросе. Вспомнил одну давнюю и поучительную историю, делюсь.
На старте моей карьеры в больших компаниях я работал в компании ABBYY. Моя коллега занималась распознаванием определенных удостоверений, имеющих свой формат в разных регионах. Удостоверения могли быть отсканированы в разных масштабах и качестве, поэтому чтобы понять, какой шаблон подходит, скан растягивали на нужное число процентов, сопоставив края удостоверения с шаблоном, и перебирали шаблоны всех регионов «в лоб». После выбора шаблона делалось распознавание.
Юный и бодрый я на это посмотрел и подумал: «Да это ж какое-то топорное решение! Я же знаю ML, в университетах учился. Надо сначала сделать классификатор сканов по регионам (на мешке визуальных слов, если кому-то это о чем-то говорит в конце 2023), т.к. у каждого региона есть своя уникальная картинка на удостоверении, затем подобрать правильное преобразование картинки, дающее совпадение ключевых точек. Обычная задача с системой уравнений, решаемой методом наименьших квадратов».
Ну что же, реализовал я такое решение, полный гордости за свои познания в анализе изображений.
В итоге оказалось, что мой «умный» метод решал задачу сильно медленнее, чем «грубый» перебор шаблонов всех регионов.
Мораль: не задирайте нос раньше времени и не относитесь к машинному обучению с какой-то уж совсем наивной фанатичностью.
#факап
Как внедрить в бэклог научный research? Вопрос подписчика
Ответ универсальный — как внедрить в бэклог любую непрофильную историю.
Есть два пути, выберите свой по темпераменту.
Первый — это культурные методы. Когда вы берёте и договариваетесь, что есть такой бюджет, мы закладываем его на науку, бюджет регулярно перезащищаете. А если нужно уменьшить расходы — что-то сокращаете.
Второй путь потребует больше воли. Ведь придётся постоянно доносить команде, что обычные задачи теперь нужно решить, ещё написав статью или, например, выпустив open source либу. А затем доказать это заказчикам, которые платят за задачи. Если воли не принимать здесь отказ не хватит, то подойдёт только первый путь, когда вы всё аккуратно забюджетировали.
Правда, чтобы забюджетировать, тоже нужно отстоять точку зрения. И убедить коллег, что наука и публикации важны и, вообще, необходимо выходить на солидные конфы.
Расскажу свой пример. Когда я пушил развитие open source у себя в Big Data МТС, моей главной болью было убедить коллег, что для нас должно быть важно создавать опенсорсные инструменты. Когда никто не видит работу, человек расслабляется и думает:
«Это я для себя так плохо написал, никто не заметит. Ну, коллеги увидят, поругают чуть, и всё».
Не всё. Мне было важно, чтобы команда чувствовала ответственность. Что есть люди, которые наблюдают и в любой момент могут написать: «А это у меня не работает». Поэтому долгими днями, ночами, а иногда и по утрам, на куче встреч так или иначе продавалась идея нашего вклада в open source. Спустя время начало получаться.
Я исключил вариант, что open source библиотек у нас просто не будет. Любые меры, сколько угодно организационных изменений и административных рычагов — всё применимо. Звучит страшно, но либо вы готовы всех задолбать, либо не так уж вам оно и надо :)
Так что выбирайте ваш путь. Но будьте готовы, что после изменений в бэклоге к вам постучатся и скажут:
«Слушай, а эти деньги мы же планировали на бизнесовые задачи». И надо доказать, что научный research, open source или что-то другое не просто необходимо, но все ещё должны быть рады, что вы до этого додумались.
#вопрос_подписчика
Погубит ли человечество машинное обучение или принесёт всеобщее благо? Вопрос подписчика
Недавно я считал разговоры на подобные темы уделом людей, которые не имеют отношения к нашей области. Но любят поговорить и сделать на этом репутацию. Зачастую такие люди ничего не делали руками. Но, к сожалению, моя практика и появление на рынке ChatGPT показали, что это серьёзный вопрос.
Есть такая вещь, называется surge pricing. Это множитель цены в разных сервисах, например такси. Допустим, вы делаете приложение, где surge pricing балансирует спрос и клиент всегда может получить машину. Пусть и за дорого.
И вот представьте, что в вашем городе произошло трагическое событие. Бездушный алгоритм расценит это как идеальную возможность озолотиться — люди готовы заплатить любые деньги.
С одной стороны, зарабатывать на чужом горе возмутительно. С другой, surge pricing решает проблему доступности — и с ним водитель всегда найдётся (что в критической ситуации очень важно). Где этическая граница?
Ещё хуже — огромная языковая модель. Какова вероятность, что она не научится распространять фейки и вбросы?
Для решения этой задачи нужно не столько играть в Азимова, разрабатывая новые законы роботехники, сколько понять, как инженерно заложить в алгоритм рамки морального поведения.
В тех же моделях ценообразования можно ставить максимальные и минимальные ограничения на повышение стоимости. Алгоритм не сможет радикально влиять на ситуацию.
А вот как научить нейросети не обучаться на определённых картинках, не рассказывать какие-то вещи — серьёзное направление исследований. Это задача с большой инженерной и математической составляющей, которой сейчас люди только учатся.
Так вот, принесёт ли машинное обучение всеобщее счастье? Если мы пересмотрим приоритеты, начнём серьёзно относиться к этике, научимся её закладывать в модели, есть шанс, что ML будет работать во благо человечества.
Если же мы пустим всё на самотёк, рано или поздно алгоритмы начнут обрушивать финансовые рынки, зарабатывать на трагедиях и делать другие опасные вещи.
А что думаете вы?
#вопрос_подписчика
Open source data tools
Как кто-то из вас знает, я уже несколько лет пушу свои команды в МТС делать вклад в open source инструменты для ML и работы с данными в целом. Пробираться в большой корпорации через согласование выкатки в открытый доступ кода — это одна часть этого удовольствия, другая часть — убедить людей, что либы делать нужно. Вы бы знали, сколько я выслушал отговорок от коллег и сотрудников, что, например, RecTools (нашу библиотеку для рекомендательных систем) делать не надо, и ей не будут пользоваться. Как бы не так, пользуются и благодарят команду.
Ещё у нас внутри команды возникла своя ETL-библиотека OnETL. Она даёт разработчику интерфейсы, более удобные, чем то, что есть из коробки в Spark, и её мы тоже недавно заопенсорсили. Казалось бы, простая и безобидная вещь, а многие сотрудники, даже уже переходящие в другую компанию из Big Data МТС, отмечают удобство работы у нас благодаря OnETL. Конкуренты, берите на вооружение. Нам не жалко :)
И всё же, возвращаясь к мотиву из предыдущего поста и теме нетривиальных библиотек, теперь на этот счёт нам тоже есть что сказать.
Подробнее расскажу в следующем посте.
Люблю, когда работу можно совместить с удовольствием. Прижать спамеров или мошенников к стенке - всегда в радость.
Что мы сделали: вместо того, чтобы заниматься одним только кредитным скорингом, как это годами принято у телекомов, мы расширили скоуп до скоринга мошенников на маркетплейсах. Это те самые ребята, которые как будто вам что-то продают, а на самом деле хотят кинуть на деньги. Теперь наши данные позволят крупным маркетплейсам быстрее пресекать эти темные делишки.
https://safe.cnews.ru/news/line/2023-11-24_tsentr_big_data_mts_razrabotal
Выпускники МФТИ, пост для вас
Наш любимый институт 25 ноября организует конференцию выпускников. А ещё в этот день ему исполняется 77 лет, поэтому будут торт, концерт и настолки. В целом, уже неплохо и пост можно заканчивать.
Но программа будет гораздо насыщеннее:
— Ректор Дмитрий Ливанов расскажет о стратегии развития Физтеха.
— Пройдут профильные секции: «Физтех учёным», «Физтех предпринимателям», «Альтернативные профессии физтехов». Покажут, как МФТИ развивается в этих направлениях.
— Ну а уже в конце, собственно, торт, настолки, концерт, интересные лекции и прочие активности.
Итак, 25 ноября, кампус в Долгопрудном, регистрируйтесь тут. Увидимся!
P. S. Регистрация закроется 23 ноября 2023 года в 23:59!
Всем привет! 👋
Сохранили этот канал в том числе и для анонсов интересных активностей - используем его прямо по назначению и приглашаем всех на соревнования по Machine Learning - MTC ML Cup!
Это турнир по определению пола/возраста владельца cookie от МТС Digital. Призовой фонд MTC ML Cup – 650 000 рублей: победитель получит 350 000 рублей, обладатель серебра – 200 000 рублей, а третий призер станет богаче на 100 000 рублей.
Регистрация уже открыта, простая анкета для участников и все подробности – на сайте. Стартуем 30 января.
Лайк, шер, репост, как говорится. Увидимся на соревновании!