Все уроки, волнения, неудачи, успехи и события специалиста по машинному обучению собраны в одной статье.

Время летит незаметно, особенно если вы застряли дома на год из-за общенациональных ограничений.

В течение прошлого года я путешествовал по миру глубокого обучения и компьютерного зрения, что также означало, что мне нужно было переключаться между языками программирования, моделями машинного обучения и тратить на StackOverflow больше времени, чем я хотел бы признать.

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

Моя роль и ее развитие

В своей роли я создаю камеру и визуальные эффекты, подобные тем, которые вы наблюдаете в популярных приложениях для социальных сетей, таких как TikTok, Instagram и Snapchat. Например, эффект зеленого экрана (удаление фона). По сути, так я описываю свою роль маме.

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

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

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

В обозримом будущем моя роль может расшириться и на другие области машинного обучения, такие как обработка естественного языка и разработка механизма рекомендаций.

По мере развития флагманского продукта, над которым я в первую очередь работаю, возрастет и потребность во внедрении большего количества методов искусственного интеллекта. Как заядлый специалист по машинному обучению, я склонен исследовать другие аспекты области машинного обучения.

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

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

Еще одна важная составляющая моей роли - исследования. Моя роль в настоящее время разделена на 70% инженеров и 30% исследований. Никогда не думал, что буду читать исследовательские работы вне университета. Тем не менее, область машинного обучения развивается быстрыми темпами, и новые методы, алгоритмы и модели выпускаются часто.

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

Сообщение для вас 🔊: не бойтесь погружаться в неизведанное и совершать ошибки. Страх и совершенство - враги прогресса.

Кривые обучения

После года обучения на степень магистра в области компьютерного зрения, машинного обучения и робототехники я подумал, почему бы не броситься в самый конец и не взять в свои руки усилия по компьютерному зрению в стартапе. Это оказалось отличной идеей. Однако были пробелы в знаниях, которые мне пришлось преодолеть.

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

Изучение Swift

Python, R, JavaScript, Matlab - эти языки программирования являются основными в мире машинного обучения. Но чтобы расширить возможности машинного обучения на устройства, которые используются ежедневно, например смартфоны, интеллектуальные колонки или автомобили, необходимо использовать для мобильных устройств языки программирования для конкретных платформ, такие как Swift и Kotlin.

В прошлом году я интегрировал модели глубокого обучения в мобильные приложения iOS. Это потребовало от меня изучения языка программирования Swift. Мне, как человеку, имеющему опыт работы с Java, JavaScript и Python, мне было довольно легко понять Swift. Хотя есть некоторые сложные концепции, которые, я должен признать, я намеренно проигнорировал - но обязательно вернусь к ним позже.

Swift - универсальный язык программирования, используемый для таких задач, как разработка приложений для iOS и машинное обучение. Это может быть естественный язык, особенно для разработчиков, которые имеют опыт работы с такими языками, как C, Python или другими языками объектно-ориентированного программирования (ООП). Как специалист по машинному обучению вы должны владеть несколькими языками программирования.

Изучение металла

Современные мобильные устройства оснащены графическими процессорами. Последние модели iPhone содержат 64-битный чип Apple A12 Bionic. У Apple также есть API под названием Metal, который абстрагирует сложности получения доступа к низкоуровневым функциям и ресурсам графического процессора мобильного устройства.

Я слишком упрощаю это, но думаю о Metal как о CUDA для устройств Apple. Критическим моментом является то, что и Metal, и CUDA позволяют выполнять вычисления на графических процессорах.

Изучение металла оказалось сложной задачей, но мы не уклоняемся от нее. Фактически, с постоянным изучением и изучением более прагматичного использования Metal для выполнения вычислений обработки изображений, я должен быстро овладеть навыками использования Metal.

Следует отметить, что я почти не встречал опыта или знаний в области металла в описании вакансии в области машинного обучения, а точнее в объявлениях о вакансиях в области компьютерного зрения. Это могло быть связано с тем, что стабильная версия Metal была выпущена в 2019 году. Но чтобы выделиться из пула кандидатов, вы могли бы начать исследовать мир Metal и техники компьютерного зрения на мобильных устройствах.

Алгоритмы, производительность и оптимизация памяти

Большинство практиков машинного обучения знакомы с моделями внедрения, обучения и тестирования. Но следует немного подумать об эффективности алгоритмов и производительности выполнения программ, особенно когда вы углубляетесь в мир периферийных устройств, где память и вычислительные ресурсы ограничены.

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

Обращение к вам 🔊: Стремитесь получить общие знания в области машинного обучения, но есть определенные преимущества, если вы специализируетесь на нескольких нишевых инструментах и ​​библиотеках.

Неожиданные события

Давайте отвлечемся от технических вещей.

Этот раздел включает в себя информацию о моей случайной писательской карьере на базе Medium, о внезапном появлении на популярном канале Data Science на YouTube и о работе с ведущей издательской компанией.

YouTube

Это я или странно слышу твой голос.

Что ж, об этом я подумал, когда смотрел, как прошло интервью с Кеном Джи. Кен Джи - популярный ютубер по вопросам данных, имеющий более 100 тысяч подписчиков на его основном канале.

После месяцев изучения и одновременного выпуска статей, посвященных DS, на Medium, Кен наткнулся на одну из моих статей. Мы соединились и поняли, что у нас много общего. Кен видел в моем путешествии вдохновение, которое могло принести пользу многим. Я согласился записать интервью, которое появилось на YouTube.

Интервью посвящено моему опыту в области машинного обучения и опыту как в академическом, так и в профессиональном аспекте машинного обучения и науки о данных.

Середина

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

6 января 2020 года я получил электронное письмо от Medium, в котором я поздравлял меня с тем, что я стал ведущим писателем в области искусственного интеллекта. Сначала я был сбит с толку, но, изучив подробнее, что нужно, чтобы стать ведущим писателем, я понял, какое это было достижение.

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

Работа с Packt

С тех пор, как я решил выйти за рамки программ «привет, мир», я всегда покупал технические учебники. Я покупал книги Manning Publications, O’Riley и Packt Publishing. Само собой разумеется, что объем информации, которую вы получаете из старого доброго традиционного учебника, бесспорен.

В середине 2020 года редакторы Packt Publishing обратились ко мне, поскольку они увидели, что у меня есть опыт в компьютерном зрении; видимо, LinkedIn рекомендовал меня как эксперта по резюме - спасибо LinkedIn. В конце концов я закончил просмотр содержания Книги по компьютерному зрению.

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

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

Сообщение для вас 🔊: создавайте личный бренд, выставляя на всеобщее обозрение и себя, и свою работу, вы не знаете, что из этого выйдет.

Предприятия

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

Я также являюсь советником по ИИ в нескольких стартапах, Genten и Readable Tech. Genten специализируется на создании анимированной рекламы на основе письменных сценариев, в то время как Readable Tech создает инструмент, который может революционизировать традиционный метод обнаружения дислексии у детей.

И Genten, и Readable Tech работают над подрывом своих отраслей. Моя роль заключается в том, чтобы предоставлять информацию и советы о том, какие методы и инструменты искусственного интеллекта доступны для использования для реализации функций в рамках предлагаемых ими основных продуктов.

В 2020 году казалось, что мир закрылся, и мы все были прикованы к четырем стенам наших комнат . Тем не менее, благодаря инновационным интерактивным коммуникационным технологиям (Zoom) мир стал меньше.

Сообщение для вас 🔊: прилагайте усилия не только к обычной работе. Решайте проблемы с помощью интуитивно понятных и творческих решений.

Будущие устремления и планы

Сертификаты

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

Итак, в 2021 году я хочу получить как минимум три сертификата по машинному обучению. Я сейчас смотрю на Сертификацию TensorFlow. Переход на сертификацию TensorFlow был легким выбором, поскольку я ежедневно использую несколько библиотек TensorFlow. Я, вероятно, пройду сертификацию по машинному обучению Google, а затем посмотрю на сертификаты Amazon.

По сути, «надо всех их поймать».

Если серьезно, то я стремлюсь к сертификации, чтобы дать себе повод исследовать области машинного обучения, к которым я бы не обязательно подталкивал себя. он помогает визуализировать доступные сертификаты - это стимулы, которые ставятся на контрольно-пропускных пунктах на пути к тому, чтобы стать экспертом в области ИИ.

Со щитом или на щите

Подзаголовок выше не имеет ничего общего с тем, что находится в этом разделе. Мне всегда хотелось написать эту фразу в статье. Но если говорить масштабно, у меня есть большие надежды построить фирму по искусственному интеллекту, что-то вроде Palantir, Dataiku.

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

Я также понял, что стартапы с ограниченными деньгами ограничены объемом вычислений и кадрового резерва искусственного интеллекта, к которому они могут получить доступ. Они не могут предложить столько нулей, сколько крупные технологические гиганты, пожирающие таланты прямо из университетов.

Моя будущая компания в области ИИ сосредоточится на обеспечении доступа к талантам и ресурсам ИИ по доступной цене для стартапов и малых и средних компаний. Я не вдавался в подробности, но над этим мы работаем.

Электронная книга (и)

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

Первая электронная книга, которую я планирую выпустить в ближайшее время, будет посвящена реализации архитектуры глубокой сверточной нейронной сети. Я планирую подробно рассказать об архитектурах, таких как AlexNet, GoogLeNet и т.д.

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

Помимо ИИ

Какую роль ИИ должен играть в освоении космоса?

Мне известно, что НАСА и SETI в настоящее время используют методы искусственного интеллекта для усиления своих инструментов и усилий по исследованию космоса. Но я вижу, что в ближайшее время ИИ будет играть более активную роль в исследовании космоса и других планет.

В настоящее время марсоходы на Марсе в основном управляются автоматизированными системами. В течение десяти лет мы, скорее всего, увидим появление более интеллектуальных вездеходов и возможности помощника ИИ на борту космического корабля Space X.

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

Заключение

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

Я все еще новичок в этой области, поэтому приветствую любые советы практикующих ML. Просто используйте раздел комментариев, и мы можем начать диалог.

Ниже приводится сводка сообщений, разбросанных по этой статье:

  • Не бойтесь погружаться в неизведанное или совершать ошибки. Страх и совершенство - враги прогресса.
  • Стремитесь иметь общие знания в области машинного обучения, но есть определенные преимущества, если вы специализируетесь на нескольких нишевых инструментах и ​​библиотеках.
  • Создайте личный бренд, выставив на всеобщее обозрение себя и свою работу. Вы не знаете, что из этого выйдет.
  • Не ограничивайтесь обычной работой. Решайте проблемы интуитивно и творчески.

Спасибо за внимание.

Почему бы не связаться со мной? Вы уже зашли так далеко.

  1. Следуйте за мной в Twitter
  2. Подпишитесь на мой Список рассылки для получения еженедельных информационных бюллетеней.
  3. Следуйте за мной на Medium
  4. Свяжитесь со мной и свяжитесь со мной в LinkedIn