Рассказываю о Школе данных Билайн, где слушаю курс "Введение в машинное обучение". Делюсь впечатлениями о первом занятии.
Впечатления от первого занятия получил яркие! По-сравнению с теми лекциями, с которыми сталкивался раньше, темп намного выше, не успеваю записывать конспект. Кроме того, лекция - это отнюдь не попытка "надиктовать" некое готовое содержание учащимся. Нет, это частично диалог - когда преподаватель бросает в аудиторию вопрос и хочет немедленно получить на него ответ, а частично трансляция практического опыта применения теоретических сведений, которые (предположительно) уже имеет аудитория.
Занятия проходят в главном офисе Билайна на Садовом с 18 до 20, два раза в неделю - в пнд и пятницу. Удобно, что есть время на домашние задания, их задают и ставят баллы, которые используются для ренкинга всех занимающихся.
Кто и зачем пришел учиться?
Часть тех, кто записался на курс - это сотрудники крупных компаний. Часть людей - "физики", работающие в различных бизнесах, которые отправили себя на учебу самостоятельно и за свой счет. Кому-то освоить тему нужно по-работе, кто-то пришел, поскольку тема интересна и хочется повысить эрудицию. Учатся также люди из Киева - они участвуют в занятиях дистанционно в режиме видеоконференции.
Мне показалась особенно интересной мотивация участников, вот несколько "кейсов", которые я записал, когда участники представлялись друг-другу. Проверьте, не найдете ли вы свой случай?
Занимаюсь автоматизацией, IT-шник в агентстве по ипотечному кредитованию. Профессия немного отличается. Машинное обучение - не моя область, но я этой темой интересуюсь несколько последних лет. Иногда вижу "точки пересечения" с тем, что делаю на работе. Поэтому хотелось бы разобраться в теме глубже, чтобы затем решать свои задачи.
Работаю в дочернем подразделении известного интернет-поисковика. Хотелось бы на практике попробовать решения задач типа прогнозирования показателей оттока, роста числа клиентов.
Продуктовый аналитик в стартапе. Практически нет пересечений с моей работой, машинное обучение интересует в качестве хобби.
Аналитик известной системы онлайн-обучения английскому языку. Мы уже на работе решаем задачи, связанные с машинным обучением, по оттоку, рекомендательные системы. Хочется пройти интересный курс, надеюсь углубить текущие знания.
Новостной интернет-ресурс, отвечая на нем за все digital-активности, включая машинное обучение. Для меня это прямая специальность. Хочется расширить свои знания.
Работаю в операторе сотовой связи. Новый IT-директор ставит задачи внедрения машинного обучения. Будем вплотную этим заниматься. Так что нужны знания для практического их применения.
Работаю в крупном торгово-производственном холдинге. У нас порядка 20 тысяч наименований продуктов. У меня задача поиска скрытых закономерностей в продажах, классификации клиентов. Надеюсь в ходе курса почерпну что-то, что смогу применить.
Занимаюсь аналитикой ценообразования в крупной розничной продуктовой сети. Хотелось бы больше применять методы машинного обучения в моей работе. Поэтому я здесь.
Работаю в крупном зарубежном автопроизводителе. Машинное обучение никак не связано с моей работой. Просто тема очень любопытна.
Работаю в социальной сети. Борюсь там со спамом. Очень много где можно в моей работе применить машинное обучение. Хотелось бы получить практические знания.
Работаю в компании решений для авто навигации, включая автомобильную навигацию, моделирование поведения водителей. Мне кажется в этой области можно будет применить технологии машинного обучения.
Интернет-агентство. Машинное обучение интересно с точки зрения анализа поведения пользователей на сайте во время рекламных кампаний. Поэтому я здесь.
Работаю в интернет-компании аналитиком. Классифицирую различные угрозы, malware и т.д. С машинным обучением познакомился в аспирантуре, сейчас продолжаю применять в областях, необходимых по работе.
Крупный банк. Машинное обучение не является основной специальностью, но может мне упростить решение моих задач, поэтому пришел сюда.
Аналитик телеком-компании. Непосредственно занимаюсь обработкой данных из web-каналов. С машинным обучением пока не работал, но планирую его применять.
Системный администратор хранилища данных телеком-компании. С машинным обучением пока не сталкивался, интересно вникнуть.
Первое занятие
Первое занятие проводил Александр Крот, тема - Введение в теорию машинного обучения.
Не буду вдаваться в подробности курса. Общий подход такой. Между теорией машинного обучения и практикой есть "зазор". Не все теоретические решения практически применимы в реальных ситуациях. Ведущие курса собрали решения, которые показали практическую эффективность, собрали навыки, которые пригождаются в работе и ими делятся. Т.е. это не академический, а прикладной курс, где "машинное обучение" рассматривается как "черный ящик", которым можно и нужно научиться пользоваться. Одна из целей - научиться правильно формулировать задачи на основе реальных жизненных ситуаций реального бизнеса.
По-прикладным задачам, которые решает "машинное обучение", их можно разделить на много сегментов. Мы не будем изучать целый ряд сегментов, например, анализ изображений и видео (computer vision), не уделим время анализу аудиосигналов (signal processing), оставим за бортом обработку естественного языка (natural language processing) тем более, что в этой области применительно к русскому языку пока все слабо развито. В общем в сферу deep learning не пойдем, но поговорим об обработке текстов, анализе соцсетей
На первом занятии начали практически от печки - что делает машинное обучение с объектами на основе признаков, чем отличается обучение с учителем от обучения без учителя (в понятиях машинного обучения). Вспомнили, что такое класификация, регрессия и кластеризация и KMeans.
Поговорили о том, что может быть внутри "черного ящика" машинного обучения - какие методы могут использоваться и для чего. Поговорили о метриках качества алгоритмов классификации.
Немало внимания было уделено инструментам анализа данных. Причем, когда об этом зашла речь, то четко провели разграничение - какие из инструментов и для чего уместно использовать.
Скажем, если речь о хранении и обработки BigData, то это Hadoop и Spark.
А если речь о работе с обучающими выборками (куда меньшими по объемам), то уместны совсем иные продукты, такие, как RapidMiner, Weka, языки программирования Python (с Jupyter и библиотеками scikit-learn) и R (RStudio) - все менее популярный.
Если все же нужно работать с Big Data, то это файловая система HDFS и модель вычислений MarReduce. Для работы с ними есть целый набор инструментария: ZooKeeper, Ooze, Azkaban, Scoop, Flume, Kafka, Hbase, Cassandra, Hive, Pig, NameNode. Про каждый продукт коротко прошлись - чем от других отличается и где уместен.
Конечно упомянули и in-memory, Apache Spark. Поговорили о том, как обойтись без кластера и что делать, если даные не лезут в память - Vowpal Wabbit и доучивание.
Затем подробно говорили о бизнес-процессе разработки продукта.
Поговорили на тему подготовки специалистов в областях Data Science и Big Data. Какая нужна подготовка (математика, мат.статистика, навыки программирования), что затем следует выучить. Навыки программирования нужны минимальные (по крайней мере для аналитиков - им достаточно научиться писать грамотные запросы на Python, SQL, R).
Пояснили почему так важна практика, в частности, практика построения алгоритмов. Важно понимать, какие задачи хорошо решаются, т.к. решаются не все задачи. Что в книгах далеко не все описывается, например, где и как искать обучающую выборку, какие признаки использовать для конкретной задачи, как разбивать данные.
Это все было забито в мой мозг и сверху притоптано за 120 минут времени. На деле пришлось задержаться еще минут на 20, чтобы Александр Крот успел дорассказать все, что планировал дать нам на первом занятии.
Отступление на тему "сколько стоят все эти чудеса"?
Вопрос стоимости почему-то все время поднимается, когда я пишу про Школу данных Билайн. Предупреждая вопросы тех, кто их еще не задал - да, обучение на курсе стоит 100 000 (сто тысяч) российских рублей. С одной стороны, это немалые деньги, а с другой мой MBA-курс в ВШЭ стоил и вовсе $7 тысяч. "Свет знаний" стоит немало... бесплатно можно полежать на диване с бутылочкой пива. Вопрос личного выбора.
О моих впечатлениях от занятия
Абсолютное большинство учащихся в группе с темой на этом уровне уже знакомо, многие хотели бы вводное занятие если не пропустить, то проскроллить намного быстрее. Мне же, даже при том, что знакомство с темой не нулевое, все равно было непросто все усваивать в таком темпе. Конспект потянул на 20 тысяч симоволов! А прочитать не спеша и подробнее "на досуге" - тоже кажется сейчас нереалистичным.
Между тем, домашку действительно задали и при первом взгляде на некоторые вопросы, я пока не знаю, как подойтик к решению. И это мы еще не добрались до тем, требующих программирования! При том, что я не более процентов 40-50% введения в Python прочел/прорешал примитивные задачки.
Ладно, пока рано пугаться, еще есть среда и четверг, чтобы во всем разобраться. :)
+ +
Раньше на эту тему
написал здесь - там есть еще полезные подробности для тех, кого тема заинтересовала.