Рубрики
Без рубрики

Практический подход к машине обучения для инженеров программного обеспечения

” Если вы сможете применить практические навыки обучения машин для отраслевых проектов, компании не собираются r … с меткой MachineLearning, Python, карьеры.

«Если вы сможете применить практические навыки машинного обучения на проекты отраслевых проектов, компании не придумывают вас, чтобы понять теорию ML внутри и вне». ALLEN LU, CTO & соучредителем AdaptiLab, недавно ML инженер в Google и Microsoft

«Машинное обучение – это то, что каждый разработчик в каждой компании должен знать, сейчас». Кевин Скотт, CTO, Microsoft.

Вот что сегодня будет покрыто:

  • Почему машинное обучение
  • Заблуждения о машинном обучении
  • Практическая VS теория
  • Навыки инженера программного обеспечения должны стать инженером ML
  • Как инженеры программного обеспечения могут начать в своей карьере ML

Почему машина обучения?

Искусственный интеллект (AI) и машинное обучение (ML) являются два самых горячих поля в технологии прямо сейчас, с 71% лидеров Tech Summit Geekwire Cloud Summit, которые говорят Это самая важная технология в течение следующих двух-трех лет Отказ Из здравоохранения и сельского хозяйства до производства, энергии и розничной торговли многие компании по отраслям отрасли используют эти технологии, чтобы опередить. На самом деле, Будущее рабочих мест Опрос обнаружил, что 73% компаний могут принять машину обучения к 2022 году. Итак, если вы в поисках самых востребованных и самых захватывающих карьерных доменов, снабженные себя навыками машинного обучения, – это хороший шаг.

Больше возможностей карьерных возможностей

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

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

Работа на подъеме

Согласно сайту работы действительно, позиции машинного обучения увидели огромный рост за последний год, на 344% на 344% с 2018 года. Работодатели находятся в поисках, но не хватает таланта.

Отсутствие ML таланта

Это сводится к отсутствию количества и качества кандидатов.

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

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

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

Заблуждения о машинном обучении

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

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

  • Вам не нужно изучать невероятно сложную теорию позади всех моделей ML. В отрасли 90% проектов не требуют, чтобы вы строили сложные модели. Эти проекты на самом деле находятся в данной технике, анализу данных и анализ прозвив от моделей, а не процесса фактических моделей наращивания.

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

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

Узнайте практические навыки или изучите теорию? Что вы должны быстрее выбрать вашу карьеру?

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

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

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

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

Практические концепции инженеров программного обеспечения должны стать инженером обучения машин

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

Разработчики должны знать, как использовать отраслевые стандартные Python Frameworks – Numpy, Pandas, Scikit-Survey и Tensorflow для манипулирования и обработкой данных и моделями поездов.

  • Манипулированием данных с Numpy
  • Анализ данных с пандами
  • Предварительная обработка данных/моделирование/кластеризация с помощью Scikit-Learn
  • Глубокое обучение с Tensorflow и Keras

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

Дополнительные концепции для изучения:

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

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

Как разработчики программного обеспечения могут получить их начало в ML

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

Иметь твердый понять на науку о данных

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

Понять каркасы, доступные для вас, и что они используются для

Разработчики программного обеспечения должны быть удобными в рамках, которые доступны для них, такие как Numpy, Scikit-Surrey, Pandas и Tensorflow. Вы также должны знать, что некоторые из этих структур являются открытым исходным кодом, поэтому вы можете использовать проекты, ориентированные на сообщества, созданные крупными технологическими гигантами (Google, Facebook и т. Д.).

Найти отрасль или фокус ты наслаждаешься

Что вас интересует? Узнайте, что вы хотите, чтобы ваш сосредоточиться, чтобы быть (I.E. Распознавание изображения/речи и т. Д.) И затем найдите индустрию, которую вам действительно нравится. Например, если ваше внимание уделяется распознанию изображений и сверточных нейронных сетях, то вы можете обнаружить, что вы хотите работать с автомобилями самостоятельной вождения.

Практические навыки/концепции

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

Чтобы получить опыт работы с рамками и концепциями, упомянутыми на протяжении всего этого поста, то отправляйтесь на «Машина обучения для инженеров программного обеспечения» Отказ Этот курс был создан соотеченью AdaptiLab Allen Lu и James Wu, у которых есть обширный опыт обучения машинным обучением в таких компаниях, как Google и Microsoft и знают, что нужно, чтобы начать этот карьерный путь.

Счастливое обучение!

Дальнейшие чтения

Трек курса: Станьте машинным учебным инженером

Курс: Grokking наука о данных

Статья: Машинное обучение 101 и наука о данных: советы от отрасли эксперта

Статья: Как и зачем стать машинным обучением инженера

Статья: Мой опыт работы с ML в Google и Microsoft

Оригинал: “https://dev.to/educative/the-practical-approach-to-machine-learning-for-software-engineers-g7e”