Карим Искаков прошел стажировку в команде компьютерного зрения «Яндекса», где работал над улучшением изображений с помощью нейронных сетей. Для рубрики «Карьеристы» Карим рассказал Rusbase, чем занимался в компании, что более сексуально – программист или дата-сайентист, и за кем в индустрии стоит следить.
Примечание: С начала сентября Карим Искаков перешел на работу в Центр искусственного интеллекта Samsung, чтобы заниматься научными исследованиями в области компьютерного зрения. На момент интервью он стажировался в «Яндексе», поэтому далее в тексте мы говорим о его работе в этой компании в настоящем времени.
Что ты делаешь в «Яндексе»?
Я уже полгода стажируюсь в команде компьютерного зрения. Мы сейчас делаем технологию Deep HD, которую представили на последней конференции «Яндекса». Это технология по улучшению изображений и видео с помощью нейронных сетей.
Где она будет использоваться?
Сейчас «Яндекс» ее использует в «Яндекс.Картинках» и в телевизионных эфирах (на главной странице «Яндекса» можно смотреть программы разных телеканалов — например, РБК ТВ, «Дождь» и так далее). «Яндекс», пропуская их через свою технологию, улучшает качество. А 9 мая был спецпроект, когда мы с помощью Deep HD улучшили качество изображения многих советских фильмов.
В чем смысл этой нейронной сети?
Если ты увеличиваешь изображение в два раза естественным методом, у тебя всегда будут присутствовать нечеткие части из-за недостатка информации. А если это сделать с помощью нашей технологии, то нейронная сеть сделает интеллектуальное увеличение, так как она обучена на большом количестве картинок.
А ты конкретно чем занимаешься в этом проекте?
Я занимался моделями и экспериментами по улучшению изображения.
Изображение: Telegram-канал @loss_function_porn Карима Искакова. В нем он собирает изображения, которые генерируют нейронные сети, и красивые графики, связанные с анализом данных.
Можешь объяснить, в чем состоит суть твоей профессии?
Для того чтобы увеличить изображение, мы используем технологию глубинного обучения, то есть нейронные сети. Собственно, мой рабочий день состоит из того, что я сначала собираю данные для обучения, то есть составляю пары плохих и хороших изображений, и какую-то часть времени трачу на эксперименты с обучением нейронных сетей.
Как происходят эти эксперименты?
Сначала пишется код. Для того чтобы весь этот пайплайн обучения запустить, мы используем свой внутренний инструмент под названием Nirvana.
А как ты понимаешь, что это хороший результат?
Тут интересная история. На данный момент в мире толком еще не придумали хороший способ для автоматической оценки качества изображения. В «Яндексе» мы измеряем этот показатель еще одной нейронной сетью. Она выдает число от нуля до единицы, где 0 – это очень хорошее изображение, 1 – очень плохое. С помощью такого автоматического мерила мы можем быстро определять, насколько хорошо нейросеть справилась с задачей. Но часто бывает, что эта оценка обманывает, и нужно смотреть самому, сравнивать с предыдущими результатами, искать какие-то артефакты.
И второе, это главный эксперимент, после которого мы решаем, отдать готовую модель в продакшн или нет. С помощью сервиса Яндекс.Толока мы спрашиваем у людей, какое из изображений им нравится больше, и, собственно, сравниваем результаты. Так мы можем оценить, какова доля побед у нашей текущей модели, и понять, что она, например, выиграла, а предыдущая проиграла.
Как долго обучается нейронная сеть?
Обучение происходит в три стадии, потому что у нас сейчас такая архитектура сетей. Каждая стадия обучается примерно неделю. То есть, чтобы полностью хорошо обучить одну модель, у нас уходит порядка двух-трех недель. Но так как есть возможность запускать обучение параллельно, мы можем за это время протестировать несколько моделей. Для этого мы используем дата-центры «Яндекса», у которых есть видеокарты и мощное железо.
Ты до этого тоже занимался распознаванием изображений?
Да, я почти все время своей профессиональной карьеры занимался компьютерным зрением, то есть задачи у меня были связаны с изображениями. Это уже моя вторая стажировка в «Яндексе». До этого я еще стажировался в Яндекс.Погоде.
А там что ты делал?
В Яндекс.Погоде есть такой классный продукт, называется Nowcasting. Там можно смотреть за движением облаков. Например, если ты выходишь из метро и вдруг начался дождь, ты в приложении можешь посмотреть, через сколько минут он закончится, и решить, стоит ли тебе переждать его под крышей или в этом нет никакого смысла. Для предсказаний используются нейронные сети. Этим я и занимался.
Карим Искаков. Фото из личного архива
В «Погоде» я стажировался три месяца и после этого еще где-то четыре месяца работал как полноценный сотрудник, но было сложно совмещать учебу на Физтехе и в Школе анализа данных Яндекса с работой, поэтому решил, что лучше поучусь пока. Сейчас я совмещаю стажировку с учебой. Я договорился, что буду работать по половине рабочего дня, то есть 20 часов в неделю. Мне этого вполне хватало.
Как ты попал в «Яндекс»?
Я учился в бакалавриате на факультете радиотехники и кибернетики и на четвертом курсе, летом 2016 года, поступил в Школу анализа данных от «Яндекса» (ШАД). После этого я отучился четвертый курс и решил перейти на факультет информационных технологий, где, собственно, и была кафедра «Яндекса».
Карим Искаков. Фото из личного архива
Можешь назвать неочевидные факты о профессии дата-сайентиста?
Об этом знают, наверное, все дата-сайентисты: примерно 80% своего времени ты будешь не обучать нейронные сети или какие-то другие алгоритмы. Ты скорее всего будешь возиться с данными: собирать, чистить, подготавливать. Данные — это топливо для твоих алгоритмов, поэтому ты очень много времени, порядка 80%, действительно тратишь на них.
Сколько платят дата-сайентистам? В прошлом году, по-моему называли цифры от 80 тысяч рублей в Москве начинающему специалисту до 180 тысяч, а в Питере, соответственно, тысяч на 10 меньше.
По моей оценке, начинающий специалист может просить 80-100 тысяч рублей. Сейчас, закончив ШАД и имея какой-то опыт, мне можно рассчитывать на зарплату от 100 до 200 тысяч рублей.
А дата-сайентист — это круче, чем программист? Что более сексуально?
Мне кажется, что программист, который умеет в data science, круче, чем дата-сайентист, который умеет в программирование, потому что если ты дата-сайентист, ты, понятно, тратишь много времени на обработку данных, на построение моделей. Но часто в твои обязанности еще входит написание кода, который будет стабильно работать и применять твои модели. И часто вот здесь идет провал в знаниях у дата-сайентистов. Потому что многие приходят в анализ данных не из программирования, а из других областей, напрямую с ним не связанных.
Можешь назвать проекты в России или в мире, к которым ты хотел бы присоединиться?
Читайте по теме: Искусственный интеллект обыграл лучших игроков в Dota 2 – почему это важно для нас с вами?В последнее время появились очень классные компании, которые занимаются исследованиями в области искусственного интеллекта. Это OpenAI, которую основал Илон Маск. Она занимается в большей степени обучением с подкреплением. Это такая область машинного обучения, с помощью которой можно, например, научить компьютер играть в игры. Сейчас разрабатывают систему, которая будет играть в Dota 2.
Ее задача максимум – победить на чемпионате мира по Доте – The International. Точно так же два года назад гугловский Alpha Go победил лучшего в мире игрока в го. Сейчас такая же задача в Доте, но Дота кажется еще сложнее, чем го, хотя бы потому, что это командная игра. (В 2017 году искусственный интеллект обыграл лучших игроков в Dota 2. В этом году бот от OpenAI сумел победить одну из топовых любительских команд, но проиграл профессионалу – прим. ред.).
Хотелось бы поучаствовать в проекте вместе с OpenAI и Deep Mind – это как раз часть Google, в которой родилась Alpha Go, – потому что они сейчас самые передовые в своем деле. Есть еще Facebook AI Research (FAIR), но про них я чуть меньше знаю.
А есть ли у тебя идея собственного продукта, связанного с машинным обучением?
Читайте по теме: Бесплатный сервис по созданию «копии» человека в виде чат-бота Replika привлек $6,5 млнДа, у меня есть план на пять лет. Я мечтаю оцифровать человеческую личность, как в сериале «Черное зеркало». Мне кажется, что технологии пока что не позволяют это сделать, но все так стремительно развивается, что в горизонте 5-10 лет мы, вероятно, сможем оцифровать человека по всем его метаданным: по личной переписке, по телефонным разговорам, по его страничке в Facebook. И, оцифровав человека, мы сможем с ним переписываться.
Но это же сделал стартап Luka.
Да, Replika действительно делает что-то похожее, но это пока далековато от настоящей оцифровки личности. Хочется сделать похожий продукт, который какое-то время собирает о тебе данные и после этого может, например, общаться в чате с любым человеком от твоего лица, как будто это ты. Например, ты сидишь с начальником и не можешь ответить друзьям, которые тебе в это время пишут. Но можешь дать полномочия своему боту просто отвечать на их сообщения, только это будет в твоем стиле.
Назови трех самых крутых людей в своей профессии.
Есть такой классный чувак, его зовут Ян Гудфеллоу. Он, по-моему, сейчас в Google работает. Этот человек придумал генеративно-состязательные сети (Generative adversarial network). Популярные СМИ на Западе называют его человеком, который дал нейронным сетям воображение. Он придумал такую архитектуру для нейронных сетей, с помощью которой решается много разных задач – от генерации котиков до умения перерисовывать изображение. В нашем проекте в «Яндексе» мы тоже используем эти генеративно-состязательные сети, для того чтобы получать лучшие результаты.
Второй специалист, которого бы я назвал, – Андрей Карпати (Andrej Karpathy). Он сейчас, насколько я знаю, – глава AI в Tesla. Карпати сделал большой вклад в популяризацию искусственного интеллекта. Например, у него есть очень классный пост о рекуррентных нейронных сетях. Он обучал нейронные сети генерировать текст в стиле художественных произведений, например, в стиле Шекспира. Или представлял ноты в виде текста и заставлял нейронную сеть генерировать музыку. Или брал исходный код Linux и заставлял нейронку генерировать исходный код. Большое ему спасибо за то, что он популяризирует эту нишу.
И еще назову одного российского ученого из Сколтеха: это Дмитрий Ульянов. Благодаря его исследованиям появилось на свет приложение Prisma. Была проблема: люди умели переносить стиль известных изображений на фотографии, но это всегда был очень длительный процесс, и непонятно было, как это завернуть в работоспособный продукт. А Дима Ульянов смог этот процесс ускорить и написал об этом статью. И, собственно, его метод применили к Prisma, получился классный продукт.
Материалы по теме:
5 уроков из летней стажировки в качестве дата-сайентиста
Как попасть на стажировку в «Яндекс», поучаствовать в разработке «Алисы» и остаться в штате
Кто ты в анализе данных? Десять ролей в команде дата-аналитиков
Что такое data science и как это работает?
«Надо по-настоящему болеть этим». Дата-сайентист – о своей работе
Что нужно знать начинающему дата-сайентисту
Исследование: какие IT-специалисты зарабатывают в России больше всего
Нашли опечатку? Выделите текст и нажмите Ctrl + Enter
Материалы по теме
- Пройти курс «Как самозанятому стать ИП»
- 1 Наташа, ты куда: как удержать операционного директора
- 2 Как проходит рабочий день инженера данных в крупной технологической компании
- 3 «Некоторые собирали марки, а мы — офферы от компаний»: программист из Молдавии о работе и жизни в США и Англии
- 4 Работа и жизнь в Италии: «На собеседовании смотрят не только на технические навыки»
ВОЗМОЖНОСТИ
28 января 2025
03 февраля 2025
28 февраля 2025