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

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

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

Курс, на который я пошел, назывался Курс Udacity Intro to Machine Learning. Пока интуиция в пользу выбора этого курса оказывается верной. Я закончил его раньше запланированного графика. На это у меня ушло чуть больше двух месяцев, в основном я учился по выходным и иногда рано утром.

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

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

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

Что дальше? Я рад сообщить, что меня приняли на ИИ-наностепень. Он не начнется до февраля 2017 года, поэтому тем временем я прохожу еще один вводный курс по машинному обучению, на этот раз Стэнфордский курс машинного обучения, который я обсуждал, прежде чем выбрать вариант Udacity. Стэнфордский курс великолепен, но дает гораздо больше теории и немного более сухой, более педантичный. Сейчас я на третьей неделе курса, продвигаясь вперед, насколько это возможно, до недель нейронной сети. Эта область может оказаться очень сложной, поэтому было бы хорошо иметь как можно больше возможностей для викторин и обучения.

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