LEFT JOIN
44.7K subscribers
947 photos
28 videos
6 files
1.2K links
Понятно про анализ данных, технологии, нейросети и, конечно, SQL.

Услуги — leftjoin.ru
Курсы по аналитике — https://stepik.org/users/431992492

Автор — @valiotti
Реклама — @valiotti

Перечень РКН: https://tapthe.link/PpkTHavwS
Download Telegram
Процесс обучения на программе OMSA

В опросе большинство высказалось за то, чтобы я продолжил рассказ про магистерскую программу OMSA в Georgia Tech. Начну рассказ с того, как в целом построена программа и какие направления (треки) можно выбрать.

Всего для получения магистерской степени надо набрать 36 credit hours. При этом каждый курс оценивается в 3 credit hours, а за магистерскую диссертацию (master thesis) получаешь 6 credit hours. Счета за программу выставляют каждый семестр, а сумма зависит от того, сколько credit hours вы выбрали в отчетном периоде.

Сама программа разделена на три трека:
1) Analytical Tools — в процессе обучения делается акцент на статистику, эконометрику и методы оптимизации.
2) Business Analytics — представляет собой усредненную бизнес-специализацию. Про этот трек на Reddit шутят, что он для тех, кто хочет просто получить диплом Georgia Tech.
3) Computational Data Analytics — как я понимаю, это направление образовалось на базе программы OMSCS (Master of Science in Computer Science), и фокус сделан на вычислительные методы анализа данных. Именно этот трек обучения я и выбрал.

Однако, прежде чем приступить к основным курсам (majors) каждого трека, надо в обязательном порядке пройти Basic и Advanced междисциплинарные курсы.

BASIC
Три курса, по сути, из каждого направления:
ISYE6501 (Intro to Analytics Modeling) — курс про аналитические инструменты и использование R, который я недавно закончил (скоро расскажу о нем);
CSE6040 (Computing for Data Analysis) — анализ данных с использованием Python;
MGT8803 (Business Fundamentals for Analytics) — какой-то общий бизнес-курс, от которого я отписался.

ADVANCED
CSE6242 (Data and Visual Analytics) — анализ и визуализация данных.
MGT6203 (Data Analytics in Business) — общий курс про применение аналитики в бизнесе.
Два курса по статистике на выбор и один курс из раздела operations research.
А дальше, в зависимости от выбранного трека, можно выбрать курсы из соответствующей колонки на картинке выше.

Возможности Opt-out
От базовых курсов можно отписаться, если соответствующий опыт был получен в вашем предыдущем ВУЗе. У меня такой опыт был, но я посчитал целесообразным оставить курсы ISYE6510 и CSE6040, чтобы посмотреть как они выглядят изнутри. А вот от курса MGT8803 отказался, так как по оценкам студентов он “не очень“.

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

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

#gatech #omsa
ISYE 6501: Intro to Analytics Modeling

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

В целом, курс мне скорее понравился, чем не понравился, но график прохождения курса очень жесткий: одновременно может случиться большая домашняя работа, лекции почти на 2-3 часа и подготовка к Midterm Quiz. При этом первая часть курса была для меня существенно интереснее, чем вторая.

Оценка за весь курс состоит из нескольких частей:
Самый высокий вес имеет Final Exam, а также Midterm Quiz 1, Midterm Quiz 2. Совокупно они составляют 75% общей оценки.
Также предусмотрен курсовой проект — на него приходится 15% итоговой оценки
Оставшиеся 10% — это выполнение домашних заданий, которые, кстати, оцениваются другими студентами (это тоже дополнительная нагрузка, потому что каждую неделю нужно оценивать три работы)

Сами домашние работы занимают от 5 до 10 часов, если уже есть опыт работы с R. Без опыта мне даже страшно представить временные затраты, так как курс начинается с места в карьер: прямо с первой недели надо писать прозрачный функциональный код.

Если говорить о контенте, то курс состоит из рассмотрения аналитических инструментов (analytical tools) и сквозных концепций (cross-cutting conceptions). Всего курс длится 15 недель, каждую неделю публикуются новые видео и задания. В первой половине курса изучаются основы, а в конце то, как эти основы применяются в конкретных кейсах (последняя часть оказалась очень скучной для меня).

Понедельно программа выглядит так (цифра — номер недели):
1. Классификация (kNN, SVM) и общие определения данных, масштабирование.
2. Валидация, train-test split, кросс-валидация, кластеризация и отличия supervised от unsupervised.
3. Определение выбросов (тема вдохновила на отдельную статью в блоге), модель CUSUM (новое знание для меня).
4. Временные ряды: экспоненциальное сглаживание, ARIMA, GARCH, сезонность, тренд.
5. Линейная регрессия: максимальная правдоподобность, AIC/BIC, causation vs correlation, data transformation (box-cox).
6. Продвинутая подготовка данных: BoxCox, PCA, De-trending.
7. Продвинутая регрессия: CART, Random Forrests, Logistic Regression, Confusion Matrices.
MidTerm Quiz 1.
8. Выбор переменных: Stepwise Regression, Ridge, Lasso, ElasticNet.
9. Design of Experiments, AB-tests, Factorial Design, Multi-arm bandits.
Вероятностные модели: Бернулли, биномиальные распределения, геометрические распределения.
Распределения Пуассона, экспоненциальное распределение, распределение Вейбулла. QQ-plots, симуляции, цепи Маркова.
5 эмоджи типа едет крыша
10. Пропущенные значения. Методы восстановления данных.
Введение в модели оптимизации, функции оптимизации (Часть 1).
11. Оптимизационные модели (Часть 2). Нейронные сети, deep learning, графы, network models (конечно, просто overview).
Модели теории игр.
Midterm Quiz 2.
12. Кейс электрокомпании.
13. Кейс в ритейле.
14. Кейс в области монетизации данных.
15. Курсовой проект.
Final Exam.

Несколько скриншотов из видео, которые мне запомнились, ниже.

#gatech #omsa
🎓Летняя сессия в Georgia Tech
Неделю назад завершил летнюю сессию в Georgia Tech, поэтому продолжу рассказ о курсах, которые в этом семестре удалось завершить.
Как я и писал ранее, я отказался от курса MGT8803, который посвящен базовым понятиям экономики (этого у меня уж точно было предостаточно по основному образованию) и в результате осталось два обязательных курса: CSE6040 и MGT6203. Я решил, что смогу взять их оба единовременно на этот семестр, именно так и поступил.

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

CSE6040
Курс CSE6040 (вот, кстати, его вебсайт) сугубо технический, сделан очень интересно, поскольку позволяет посмотреть на массу прикладных аналитических проблем.
Курс построен по принципу: тема для изучения = выполняемый Jupyter NB (с задачами для решения). Я ожидал увидеть довольно стандартные методы решения задач типа линейной регрессии или SVD-разложения, а в курсе подход реализован через математику (линейную алгебру). То есть фактически, приходится детально разбираться в алгоритме и математическом аппарате вместо использования готовых стандартных библиотек, это было очень интересно. Думаю, что чуть позже про ряд ключевых ноутбуков и решаемых задач еще поделюсь.

Помимо 15 домашних задач в курсе три экзамена: Midterm 1, Midterm 2, Final Exam. Каждый экзамен это порядка 10-15 задач, которые ты должен решить на время (от 3 до 6 часов) под наблюдением HonorLock. При этом разрешается использовать любые материалы и google, однако задачи предполагают полное погружение в контекст.
Конечно, под каждую тему помимо Jupyter ноутбуков есть короткие видео, на которых объясняется суть алгоритма (но не очень погружаясь в детали).
По этому предмету я выполнил все задания и все экзамены сдал на 100%, в результате получив оценку A, скорее по той причине, что это была супер-интересная практика на Python.

MGT6203
А вот этот курс оказался для меня очень странный. Авторы напихали туда всего подряд: и финансы, и маркетинг, и управление операциями. Разумеется, по всем направлениям необходимо решать аналтические задачи. В курсе предусмотрены три домашних задания, состоящих из двух частей: практика на R и квиз. Все квизы скучные и предполагают тупо поиск ответов по презентациям-материалам. В курсе два экзамена, опять же состоящих из двух частей: задачи, которые надо решить в ноутбуке на R и квиз. Квизы достаточно сложные и не разрешают использовать ничего кроме cheat-sheet (ниже на фотках мои), а вот практическая часть решается без наблюдения и без ограничения по времени, то есть в целом, ее можно легко решить, когда есть свободное время.
Домашние задания предполагали peer review, то есть надо осмотреть ДЗ твоих однокурсников и поставить им оценку. Я нигде не увидел нотификации по этому поводу, в результате никого не оценил, за это мне срезали баллы (около 30%), в результате финальная оценка за этот предмет B. Но если бы можно было его не выбирать, я бы точно от него отказался, в некотором смысле потраченное впустую время.

#gatech #omsa #учеба
Модуль 2. Тема 10. Вычисления с использованием numpy / scipy. Введение в numpy, работа с матрицами, матричные вычисления. Плотное (dense) и разреженное (sparse) хранение матриц, сжатое разреженное хранение и координатное хранение, куча кода и алгоритмов, четыре ноутбука для решения.
Модуль 2. Тема 11. Ранжирование объектов. Цепи Маркова. Наверное, самая офигенная тема из всего курса. Практическая задача по поиску наиболее важного аэропорта в США, который влияет на всю цепочку авиа-перевозок.

Practice Midterm 2. Тут также есть ряд супер-интересных кейсов для практики. На примере последней темы (pagerank), прогноз численности населения в 2046 году в зависимости от миграций людей в штатах.
Midterm 2. Данный экзамен дался мне существенно легче чем предыдущий, наобходимо было прилично поработать с pandas, сводными таблицами, groupby, на экзамен ушло у меня примерно полтора часа из четырех.

Последний блок предлагаемых тем в курсе в большей степени про конкретные алгоритмы, которые используют чаще всего во всех ввводных курсах (101) по машинному обучению, и, честно говоря, я переживал, что тут будет тоже самое: берем такую-то библиотеку, строим модель, оцениваем R² и так далее. Однако, все совершенно иначе, курс построен по принципу изучения алгоритма, лежащего в основе каждой модели, поэтому ноутбуки в бОльшей степени посвящены, например, пониманию метода наименьших квадратов и их реализации в Python, ничего даже близкого к использованию штатных библиотек. Разумеется, они приводятся в конце для сравнения полученого результата.
Модуль 2. Тема 12. Линейная регрессия. Выше базово уже описал, но тут примечателен тот пример про LSD, про который уже рассказывал, он как раз используется как пример для базовой модели линейной регрессии. ДЗ — решение ноутбука в четырех частях.
Модуль 2. Тема 13. Классификация (логистическая регрессия). Подробное погружение в классификацию, описание алгоритма для решения задачи. Ноутбук в качестве домашнего задания.
Модуль 2. Тема 14. Кластеризация с использованием k-средних. Ручное постепенное построение алгоритма k-средних, алгоритм довольно несложный, поэтому все решается внутри небольшого ноутбука.
Модуль 2. Тема 15. Компрессия данных c использованием PCA. Довольно подробное погружение в SVD, собственные числа, матричные вычисления. На данном ноутбуке уже было ощущение, что глубокой математики достаточно :)) Но тут как раз и курс подошел к концу.

Practice Problems for Final Exam. Опять же есть ряд супер-интересных задач на анализ текста песен и кластеризации текстов с использованием DBScan.
Final Exam. А этот экзамен снова оказался трудным, нужно было охватить материалы из всего курса, написать несколько алгоритмов и решить ряд проблем, в итоге истратил 4 часа, получил 16 из 18 баллов, проходной был 12, чтобы получить 100%.


Итого в курсе решил все задания на 100% из 100%, включая экзамены, заслуженно получил свою первую А. Классно, когда предмет дается интересно и ощущаешь пользу от полученных знаний.

#gatech #omsa #учеба
🎓 Курс MGT-6203 🎓

Честно говоря, данный курс был плохо организован, я был им дико не доволен. Ну, и отзывы на OMSCentral это подтверждают.
В начале курса мы заново проходили линейную регрессию в R (спрашивается для чего, если она уже была в курсе ISYE-6501), затем логистическую регрессию, затем изучали стандартное отклонение и ряд других самых базовых величин из финансовых вычислений (return, compound return), после этого погружались в метрики маркетинга (очень широко и несколько остало от действительности), в конце концов завершили курс управлением очередьми, оптимизацией процессов с использованием статистических критериев.

В курсе три домашних работы с вычислениями на R и два экзамена. Каждый экзамен состоит из теста на время и решения задачек без лимита на время.

Кстати, пока я писал посты про эти два курса начался осенний семестр. И у меня появилась идея о том, чтобы заснять серию видео для Youtube канала (вы же уже подписались?) о поступлении в ВУЗ (какие документы были нужны), о внутренних системах для студента Georgia Tech, о первых трех предметах и о последующих.

Ниже голосование, будет ли интересно вам узнать об этом?

#gatech #omsa
Disclaimer: This course can be very tough for many!
The amounts of time students spend on this class greatly vary, based on their backgrounds, and what they may already know. Some former students told us they spent about 40-60 hours on each homework assignment (we have 4 big assignments, and no exams), and some reported much less.

Именно с такого дисклеймера начался мой очередной курс в Georgia Tech OMSA. Курс назывался CSE-6242 и был посвящен визуализации и обработке данных. Домашние работы и правда отнимали львиную долю времени, но оно того стоило, разумеется. Это была супер-жесть, а не курс! Изначально, я хотел взять два (этот и еще один), но от второго пришлось быстренько отписаться, после того как я увидел программу CSE-6242.

На курсе мы освоили:
1. Обработку данных на Python и построение графа связей
2. Изучение библиотеки d3.js с нуля до вменяемых рабочих графиков (все хочу небольшой интро-курс сделать, но рук не хватает)
3. Облачные масштабируемые вычисления: Databricks, Google Computing, AWS
4. Методы машинного обучения: кластеризацию и классификацию.

Преподаватели Georgia Tech очень любят, чтобы домашние задания представляли собой не простые отработки моделей “fit-predict”, а состояли из алгоритмов, написанных с нуля с использованием самых базовых библиотек.

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

Однако, в курсе было много полезных знаний и картинок (отправляю их вам) + супер полезные видео.
Из интересных результатов работы: кривая Retention из Игры в Кальмара на d3.js, много погружения в Scala, Spark. Короче, прошлись по современному датавизу и клауду “галоппом по европам“.

Итоговый результат: оценка A, клевый опыт, рабочие ноутбуки, остаточные знания d3.js.
P.S. А ниже картинка с напоминанием себе ряда слайдов из обучения.

#omsa #gatech
🔥2👍1
Georgia Tech: Summer Term 2022

Любопытное совпадение: Роман Зыков (автор книги Роман с Data Science) у себя в канале написал про курс Reinforcement Learning от Coursera, а я только что в этом летнем семестре Georgia Tech взял аналогичный курс: CS 7642: Reinforcement Learning.
Будет очень интересно сравнить контент. Мне курс из Georgia Tech пока очень нравится: живой и крайне доступный, даже думаю сюда intro-видео запостить, потому что лекторы умудряются регулярно шутить и вовлекать в весьма не самую простую тему 🥸

#gatech
👍23