Наш собеседник сегодня - Макс Пумперла. Макс в настоящее время работает в Skymind в качестве инженера по глубокому обучению. Как многие из вас, возможно, знают, Макс - один из соавторов книги Deep Learning and the Game of Go. Он также является одним из преподавателей специализации Coursera Прикладной искусственный интеллект с глубоким обучением.

Макс - ярый энтузиаст открытого исходного кода. Он является основным разработчиком DL4J и многих других библиотек, включая elephas, распределенную библиотеку глубокого обучения с использованием Spark. Кроме того, он является активным участником библиотек глубокого обучения, таких как Keras, hyperopt и так далее. Он имеет докторскую степень. по алгебраической геометрии Гамбургского университета. Вы можете узнать больше о Максе здесь.

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

Интервью с Максом Пумперла, инженером по глубокому обучению в Skymind

Саяк: Привет, Макс! Спасибо за интервью. Рад видеть вас здесь сегодня.

Макс: Спасибо, что пригласили меня!

Саяк: Может быть, вы могли бы начать с того, чтобы представиться - чем вы сейчас занимаетесь и каковы ваши обязанности там?

Макс: я инженер по глубокому обучению в Skymind, создателе фреймворка Deep Learning DL4J на основе JVM и его экосистемы. Я занимался разработкой совместимости с другими инструментами, такими как Keras и TensorFlow, в течение последних двух лет. Недавно мы запустили новую линейку продуктов под названием Konduit, которое происходит от французского слова «трубопровод». Он основан на идее надежного обслуживания сложных конвейеров машинного обучения в производственной среде. Я отвечаю за создание интерфейсов для пользователей Python.

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

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

Саяк: Это все так красиво, Макс. Сила открытого исходного кода действительно сильна в вас. Когда вы начинали с этого предмета, с какими проблемами вы столкнулись? Как вы их преодолели?

Макс: все начинают с разного опыта. Мне посчастливилось иметь отличное математическое образование, которое помогло мне довольно быстро освоить основы машинного обучения. В начале моей карьеры меня восхищало то, что умные инженеры-программисты без такого образования, например, работающие в роли «инженера по данным», часто оказывались гораздо более продуктивными, чем «специалисты по данным», с точки зрения влияния на бизнес. Последняя группа часто не выполняла обещание выпустить умные алгоритмы на улицу. Я воспринял это как явный признак того, что нужно вкладывать значительные средства в передовой опыт разработки. Это стремление меня не подвело, но это была крутая кривая обучения. Сегодня, как инженер по машинному обучению, специализирующийся на глубоком обучении, я наиболее ценно объединяю группы людей, которым трудно разговаривать друг с другом, что буквально является расплатой за осознание этого в первый год моего обучения в области науки о данных. .

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

Саяк: Это действительно напоминает мне Джоэла Груса. Разумеется, если вы начнете заботиться о передовых инженерных практиках при создании систем машинного обучения, это станет совершенно другой игрой. Вы один из основных участников DL4J. Что побудило вас начать работать над DL4J?

Макс: меня наняли в Skymind из-за того, что я занимаюсь открытым исходным кодом, и только после того, как меня приняли на работу, я начал вносить свой вклад в DL4J. Однако до этого я был пользователем DL4J. Так что это не совпадение, и я все равно мог начать вносить свой вклад в фреймворк.

Саяк: Качественная работа с открытым исходным кодом действительно может принести огромную пользу! Ваша книга в соавторстве «Глубокое обучение и игра в го» уникальна в своем роде. Хотели бы вы поделиться своим мыслительным процессом, когда вы готовили его первые черновики?

Макс: С самого начала моей идеей было написать книгу, которая была бы такой же интерактивной, как классическая печатная книга. Мы выбрали игру Go в первую очередь из-за любви к игре, которую разделяем мы с Кевином, но были очень впечатлены первоначальными результатами AlphaGo и более поздними версиями. Поэтому мы хотели поделиться основами этой невероятной системы машинного обучения, позволив читателям создать ее самостоятельно. Пачкать руки очень важно, чтобы понять, как работают сложные системы, поэтому мы подумали, что автономное руководство для практикующих хорошо послужит сообществу.

Пачкать руки очень важно, чтобы понять, как работают сложные системы […]

Саяк: Мне понравился этот мыслительный процесс. Спасибо, что поделились. Такие области, как машинное обучение, быстро развиваются. Как вам удается отслеживать последние важные события?

Макс: нет, по крайней мере, не настолько, насколько вы могли бы подумать. Если бы я был исследователем машинного обучения, это, вероятно, было бы важнее. Но с практической точки зрения очевидно, что большинство достижений лишь медленно превращаются в полезные бизнес-приложения. Вам не нужно каждый день гнаться за последними и лучшими. Я получаю большинство новостей о машинном обучении из Twitter, и если вы проявите терпение, вы определенно заметите, когда тема становится действительно горячей и ее следует рассматривать более внимательно. Для меня гораздо важнее хорошо разбираться в основах своей области, чем теряться в постоянном потоке новостей. Многие вещи, которые вы считаете важными, в ретроспективе оказываются неуместными. Я стараюсь сосредоточиться на чтении книг и выдающихся статей.

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

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

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

Саяк: Я тоже следую этой практике и стараюсь писать о них в блоге. До сих пор это мне очень помогло. Есть какие-нибудь советы новичкам?

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

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

Макс: Конечно, с удовольствием.

Надеюсь, вам понравилось читать это интервью. Следите за этим местом для следующего, и я надеюсь увидеть вас в ближайшее время. Здесь где можно найти все интервью, сделанные на данный момент.

Если вы хотите узнать обо мне больше, загляните на мой сайт.