OMSCS CS7641 (Machine Learning) Review and Tips
Юджин Ян (Ziyou Yan) делится отзывом о курсе CS7641 «Machine Learning» программы OMSCS Технологического института Джорджии, который он прошёл, параллельно работая в графике 9-9-6 в Ханчжоу при интеграции с Alibaba. Курс читают Charles Isbell и Michael Littman; он охватывает supervised и unsupervised learning, рандомизированную оптимизацию и обучение с подкреплением, делая упор на анализ эффективности алгоритмов, а не на их написание с нуля. Структура: 50% оценки — четыре трудоёмких задания (по 40-60 часов каждое), плюс промежуточный и финальный экзамены по 25% (медианы 51 и 59). Около 40% студентов отсеиваются, но из оставшихся примерно 60% получают A. Автор отмечает, что обрёл большую строгость в анализе алгоритмов, планирует применить это в работе в Lazada и в следующем семестре взять курс по reinforcement learning.
Начните отсюда Статьи Выступления Прототипирование Об авторе
OMSCS CS7641 (Machine Learning) Review and Tips
Обзор и советы по курсу OMSCS CS7641 (Machine Learning)
[ omscs learning machinelearning python ] · чтение на 4 мин
You might also be interested in this OMSCS FAQ I wrote after graduation. Or view all OMSCS related writing here: omscs.
Вам также может быть интересен OMSCS FAQ, который я написал после выпуска. Или посмотрите все материалы, связанные с OMSCS, здесь: omscs.
I haven’t had time to write the past few months because I was away in Hangzhou to collaborate and integrate with Alibaba. The intense 9-9-6 work schedule (9am - 9pm, 6 days a week) and time-consuming OMSCS Machine Learning class (CS7641) left little personal time to write.
Последние несколько месяцев у меня не было времени писать, потому что я был в Ханчжоу, занимаясь сотрудничеством и интеграцией с Alibaba. Напряжённый график 9-9-6 (с 9 утра до 9 вечера, 6 дней в неделю) и отнимающий много времени курс OMSCS по машинному обучению (CS7641) почти не оставляли личного времени для письма.
Thankfully, CS7641 has ended, and the Christmas holidays provide a lull to share my thoughts on it.
К счастью, CS7641 закончился, а рождественские каникулы дают передышку, чтобы поделиться мыслями о нём.
Why take this class?
Зачем брать этот курс?
Why take another machine learning course? How will it add to my experience in applying machine learning on real world problems?
Зачем проходить ещё один курс по машинному обучению? Что он добавит к моему опыту применения машинного обучения к реальным задачам?
Truth be told, I am victim to imposter syndrome. Most of my machine learning knowledge and skills are self-taught, based on excellent MOOCs including those by Andrew Ng and Trevor Hastie and Rob Tibshirani. CS7641 provided an opportunity to re-visit the fundamentals from a different perspective (focusing more on algorithm parameter and effectiveness analysis).
Честно говоря, я страдаю от синдрома самозванца. Большая часть моих знаний и навыков в машинном обучении получена самостоятельно, на основе превосходных MOOC, включая курсы Andrew Ng и Trevor Hastie и Rob Tibshirani. CS7641 дал возможность вернуться к основам с другой точки зрения (с большим акцентом на анализ параметров и эффективности алгоритмов).
Impact of the C parameter on SVM's decision boundary
Влияние параметра C на разделяющую границу SVM
Additionally, CS7641 covers less familiar aspects of machine learning such as randomised optimisation and reinforcement learning. These two topics were covered at an introductory, survey level, and provided sufficient depth to understand how these algorithms work, and how to apply them effectively and analyse outcomes.
Кроме того, CS7641 охватывает менее знакомые аспекты машинного обучения, такие как рандомизированная оптимизация и обучение с подкреплением. Эти две темы рассматривались на вводном, обзорном уровне и давали достаточную глубину, чтобы понять, как работают эти алгоритмы, как эффективно их применять и анализировать результаты.
Effectiveness of randomised optimisation algorithms on the travelling salesman problem (randomised hill climbing, simulated annealing, genetic algorithm, MIMIC)
Эффективность алгоритмов рандомизированной оптимизации на задаче коммивояжёра (рандомизированное восхождение к вершине, имитация отжига, генетический алгоритм, MIMIC)
What’s the class like?
Каков курс на практике?
There are 2 - 3 hours of lectures weekly, largely consisting of Charles Isbell and Micheal Littman taking turns to “teach” each other various machine learning topics. Lectures are interspersed with occasional jokes and word puns, keeping them humorous (if you’re a geek like me).
Еженедельно проходит 2-3 часа лекций, в основном состоящих из того, как Charles Isbell и Michael Littman по очереди «обучают» друг друга различным темам машинного обучения. Лекции перемежаются редкими шутками и игрой слов, что делает их забавными (если вы такой же гик, как и я).
There are four assignments covering: (i) supervised learning, (ii) unsupervised learning and dimensionality reduction, (iii) randomised optimisation, and (iv) reinforcement learning. Peers complained about the lack of clarity on assignment requirements. Those without machine learning background felt they were thrown into the deep end and had no inkling how to start. Expectedly, assignment grades averaged around 40 - 60, though it improved slightly with each assignment. Assignments made up 50% of the overall grade. Expect to spend 40 - 60 hours per assignment.
Есть четыре задания, охватывающие: (i) supervised learning, (ii) unsupervised learning и снижение размерности, (iii) рандомизированную оптимизацию и (iv) обучение с подкреплением. Сокурсники жаловались на недостаточную ясность требований к заданиям. Те, у кого не было опыта в машинном обучении, чувствовали, что их бросили на глубину, и не имели ни малейшего понятия, с чего начать. Ожидаемо, средние оценки за задания были около 40-60, хотя с каждым заданием они немного улучшались. Задания составляли 50% общей оценки. Будьте готовы потратить 40-60 часов на каждое задание.
Exam-wise, there is a mid-term and a (non-cumulative) final, each 25% of overall grade. These were difficult and required one to have an in-depth and intuitive understanding of the material to do well. The median for the mid-term was 51 and 59 for the final. We had 90 minutes for the mid-term (which was barely sufficient) and 180 minutes (and fewer questions) for the final—most people finished the final early.
Что касается экзаменов, есть промежуточный и (некумулятивный) финальный, каждый по 25% общей оценки. Они были сложными и требовали глубокого и интуитивного понимания материала, чтобы хорошо сдать. Медиана за промежуточный экзамен составила 51, а за финальный — 59. На промежуточный экзамен у нас было 90 минут (чего едва хватало), а на финальный — 180 минут (и меньше вопросов); большинство людей закончили финальный экзамен раньше времени.
Across previous semesters, about 40% of students dropped out. Of the remaining, about 60% received an A, while most of the rest received a B. If you’re planning to take CS7641, persevere past the mid-term and you should receive a passing grade. Assignments are 50% of the overall grade—start on them early to do well. They require more research, analysis, visualisations, and writing than a regular paper. Assignments focused more on demonstrating understanding and in-depth analysis of algorithm effectiveness, and less on coding up algorithms from scratch.
За предыдущие семестры около 40% студентов отсеялись. Из оставшихся около 60% получили A, а большинство остальных — B. Если вы планируете брать CS7641, продержитесь до промежуточного экзамена, и вы должны получить проходной балл. Задания составляют 50% общей оценки — начинайте их выполнять рано, чтобы хорошо справиться. Они требуют больше исследований, анализа, визуализаций и письменной работы, чем обычная статья. Задания были сосредоточены больше на демонстрации понимания и глубоком анализе эффективности алгоритмов, а не на написании алгоритмов с нуля.
What did I learnt?
Чему я научился?
For supervised and unsupervised learning, I gained deeper fundamental understanding of how each type of algorithm worked. This included why each performed better on different datasets, why some overfit less, why some require more data, etc. Much of the learning came from visualising algorithm effectiveness across varying amounts of data, parameters, types of problems, etc. I gained increased rigour in analysing algorithm effectiveness, and how to thoughtfully apply different algorithms to different problems.
В отношении supervised и unsupervised learning я получил более глубокое фундаментальное понимание того, как работает каждый тип алгоритма. Это включало понимание того, почему каждый из них лучше работает на разных наборах данных, почему некоторые меньше переобучаются, почему некоторым требуется больше данных и так далее. Большая часть обучения пришла из визуализации эффективности алгоритмов при разном количестве данных, параметрах, типах задач и так далее. Я обрёл большую строгость в анализе эффективности алгоритмов и научился вдумчиво применять разные алгоритмы к разным задачам.
CS7641 also provided good exposure to randomised optimisation and reinforcement learning techniques. These were new to me and the class provided sufficient depth to determine whether to invest additional time on them. Personally, I enjoyed reinforcement learning, its temporal nature, and how learns on new data points in the “exploration” (vs “exploitation”) phase.
CS7641 также дал хорошее знакомство с методами рандомизированной оптимизации и обучения с подкреплением. Они были для меня новыми, и курс дал достаточную глубину, чтобы решить, стоит ли вкладывать в них дополнительное время. Лично мне понравилось обучение с подкреплением, его временная природа и то, как оно обучается на новых точках данных в фазе «исследования» (в противовес «эксплуатации»).
Effectiveness of reinforcement learning algorithms on a simple grid world
Эффективность алгоритмов обучения с подкреплением в простом мире-сетке (grid world)
What’s next?
Что дальше?
With the increased rigour gained in analysing algorithm effectiveness, I aim to apply it to my work in Lazada, to do more analysis and gain greater intuition on algorithm outcomes. I will also share the knowledge gained, to help the team improve on their understanding and analysis on algorithm effectiveness.
С возросшей строгостью в анализе эффективности алгоритмов я намерен применить её в своей работе в Lazada, чтобы проводить больше анализа и обретать более глубокую интуицию в отношении результатов алгоритмов. Я также поделюсь полученными знаниями, чтобы помочь команде улучшить понимание и анализ эффективности алгоритмов.
In addition, I aim to reinforce my learning on reinforcement learning (haha), and take the reinforcement learning class (CS7641, also by Charles and Micheal) next term. I’ve heard many good reviews about it—can’t wait!
Кроме того, я намерен закрепить (reinforce) свои знания по обучению с подкреплением (ха-ха) и взять курс по reinforcement learning (CS7641, также от Charles и Michael) в следующем семестре. Я слышал о нём много хороших отзывов — не могу дождаться!
If you found this useful, please cite this write-up as:
Если этот материал оказался полезным, пожалуйста, цитируйте эту заметку так:
Yan, Ziyou. (Dec 2017). OMSCS CS7641 (Machine Learning) Review and Tips. eugeneyan.com. https://eugeneyan.com/writing/omscs-cs7641-machine-learning/.
Yan, Ziyou. (Dec 2017). OMSCS CS7641 (Machine Learning) Review and Tips. eugeneyan.com. https://eugeneyan.com/writing/omscs-cs7641-machine-learning/.
or
или
@article{yan2017machine,
title = {OMSCS CS7641 (Machine Learning) Review and Tips},
author = {Yan, Ziyou},
journal = {eugeneyan.com},
year = {2017},
month = {Dec},
url = {https://eugeneyan.com/writing/omscs-cs7641-machine-learning/}
}
@article{yan2017machine, title = {OMSCS CS7641 (Machine Learning) Review and Tips}, author = {Yan, Ziyou}, journal = {eugeneyan.com}, year = {2017}, month = {Dec}, url = {https://eugeneyan.com/writing/omscs-cs7641-machine-learning/} }
Join 11,800+ readers getting updates on machine learning, RecSys, LLMs, and engineering.
Присоединяйтесь к 11 800+ читателям, получающим новости о машинном обучении, RecSys, LLM и инженерии.