Моя цель — создать четкое пошаговое руководство для всех, кто интересуется машинным обучением с самого начала. Чтобы стать компетентным инженером по машинному обучению, вам необходимо изучить три основные области: математику, глубокие знания в области машинного обучения и навыки программирования. Хотя это важно, это не единственные аспекты машинного обучения, и важно помнить, что обучение — это непрерывный процесс.
Уровень 1 — информированное лицо, принимающее решения:
На этом уровне сосредоточьтесь на получении базового понимания машинного обучения и его влияния на нашу жизнь. Вот что вы должны знать:
- Математика: вам не нужно быть экспертом по математике, но полезно иметь представление о некоторых математических концепциях, используемых в машинном обучении. Обрати внимание на:
2. Линейная алгебра: узнайте о работе с числами, расположенными в строках и столбцах, что полезно для обработки данных.
3. Вероятность и статистика. Понимание основ вероятностей и статистического анализа, используемых в машинном обучении.
4. Конкретные знания машинного обучения: на этом этапе ознакомьтесь с концепцией машинного обучения, включая его сильные стороны и ограничения. Узнать о:
- Что такое машинное обучение и чем оно не является: понять основную идею машинного обучения и его применения в реальных сценариях.
- Краткосрочное и среднесрочное влияние: узнайте, как машинное обучение влияет на нашу жизнь и его возможные последствия в ближайшем будущем.
- Использование машинного обучения: узнайте, как можно использовать машинное обучение, чтобы принести пользу вам или вашей команде в проектах и целях.
Ресурсы:
- Coursera — ИИ для всех: https://www.coursera.org/learn/ai-for-everyone
- Эндрю Нг — Тоска по машинному обучению (PDF): https://nessie.ilab.sztaki.hu/~kornai/2020/AdvancedMachineLearning/Ng_MachineLearningYearning.pdf
- Coursera — Машинное обучение (первые три недели): https://www.coursera.org/specializations/machine-learning-introduction
- 100-страничная книга по машинному обучению: https://themlbook.com/
Отныне каждый уровень будет посвящен трем областям: математике, конкретным знаниям в области машинного обучения и программированию, чтобы помочь вам в дальнейшем обучении.
Уровень 2 — опытный разработчик: овладение основами AI/ML
Твердое понимание концепций AI и ML имеет решающее значение для того, чтобы стать опытным разработчиком в этой области. Этот уровень направлен на то, чтобы помочь вам понять основные математические принципы, основные алгоритмы машинного обучения, программирование на Python и инструменты обработки данных, снабдив вас навыками построения фундаментальных конвейеров машинного обучения.
Математика:
- Линейная алгебра:
- Погрузитесь в лекции Гилберта Стрэнга из MIT OpenCourseWare, которые предлагают как решения проблем, так и решения, доступные по адресу https://www.youtube.com/playlist?list=PLE7DDD91010BC51F8.
- Получите представление о сути линейной алгебры из увлекательной серии статей 3blue1brown, доступных по адресу https://www.3blue1brown.com/topics/linear-алгебра.
- (Многомерное) исчисление:
- Изучите книгу 3blue1brown Суть исчисления, чтобы углубить свое понимание этой математической области, которую можно найти по адресу https://www.3blue1brown.com/topics/calculus.
- Освойте основы AP/College Calculus AB с помощью специального курса Академии Хана, доступного по адресу https://www.khanacademy.org/math/ap-calculus-ab.
- Разгадайте сложности многомерного исчисления с помощью обширных ресурсов Академии Хана, доступных по адресу https://www.khanacademy.org/math/multivariable-calculus.
- Статистика и вероятность:
- Расширьте свои статистические знания и понимание вероятности, записавшись на хорошо структурированный курс Академии Хана по адресу https://www.khanacademy.org/math/statistics-probability.
Конкретные знания машинного обучения:
- Coursera предлагает введение в специализированное машинное обучение через свои курсы, доступные по адресу https://www.coursera.org/specializations/machine-learning-introduction.
- Погрузитесь глубже в сферу глубокого обучения с помощью специализированной программы глубокого обучения Coursera по адресу https://www.coursera.org/specializations/deep-learning.
- Изучите поучительную серию лекций Дмитрия Кобака о введении в машинное обучение, доступную по ссылке https://www.youtube.com/playlist?list=PL05umP7R6ij35ShKLDqccJSDntugY4FQT.
Программирование:
- Заложите прочный фундамент в программировании на Python с помощью руководств Кори Шафера для начинающих, которые можно найти по адресу https://www.youtube.com/playlist?list=PL-osiE80TeTskrapNbzXhwoFUiLCjGgY7.
- Освойте объектно-ориентированное программирование (ООП) с помощью подробных руководств Кори Шафера по работе с классами, доступных по адресу https://www.youtube.com/playlist?list=PL-osiE80TeTsqhIuOqKhwlXsIBIdSeYtc.
- Ознакомьтесь с Jupyter Notebooks с помощью руководства Кори Шафера на странице https://www.youtube.com/watch?v=HW29067qVWk.
- Погрузитесь в мир обработки и анализа данных с помощью руководств Кори Шафера по Pandas, доступных по адресу https://www.youtube.com/playlist?list=PL-osiE80TeTsWmV9i9c58mdDCSskIFdDS.
- Изучите основы визуализации данных с помощью руководств Кори Шафера по Matplotlib, которые можно найти по адресу https://www.youtube.com/playlist?list=PL-osiE80TeTvipOqomVEeZ1HRrcEvtZB_.
- Запишитесь на микрокурсы Kaggle, чтобы отточить свои практические навыки на https://www.kaggle.com/learn.
- Используйте Streamlit, мощный инструмент для создания приложений для работы с данными, доступный по адресу https://streamlit.io/.
- Обратитесь к справочнику по науке о данных, чтобы получить исчерпывающую информацию для самостоятельного изучения.
WQU — Модуль прикладной науки о данных:
- Запишитесь на курс Applied Data Science I: Scientific Computing & Python по адресу https://www.wqu.edu/programs/applied-ds-lab/, чтобы получить практический опыт.
- Продвигайтесь дальше по курсу Прикладная наука о данных II: машинное обучение и статистический анализ, доступному по адресу https://www.wqu.edu/programs/applied-ds-lab/, для развития навыков машинного обучения и статистического анализа.
Уровень 3 – опытный разработчик
Будучи экспертом-разработчиком уровня 3, вы обладаете математическими способностями, необходимыми для понимания академических работ и учебников по машинному обучению для выпускников. Ваши знания распространяются на широкий спектр алгоритмов машинного обучения, что позволяет вам выбрать подходящий для конкретных задач. Вы можете сформулировать преимущества и недостатки различных алгоритмов и предоставить консультации лицам, принимающим решения.
Кроме того, вы отлично справляетесь с задачами стохастического кода и умеете создавать сложные конвейеры машинного обучения, которые легко интегрируются в более крупные программные инфраструктуры.
Математика:
- Вы хорошо разбираетесь в статистике и вероятности, о чем свидетельствует прохождение следующих курсов:
- MITx — Вероятность — наука о неопределенности и данных — Course Link
- MITx — Основы статистики — Course Link
Широкий спектр тем:
- Вы занимались Математикой машинного обучения Ульрики фон Люксбург, исследуя связь между математикой и машинным обучением — Course Link
Конкретные знания машинного обучения:
- Вы изучили различные концепции машинного обучения на онлайн-лекциях, таких как:
- Килиан Вайнбергер: Машинное обучение для интеллектуальных систем — Ссылка на плейлист
- Андреас Гайгер: Глубокое обучение — Ссылка на плейлист
- Ульрике фон Люксбург: Статистическое машинное обучение — Ссылка на плейлист
Программирование:
- Вы отточили свои навыки программирования благодаря практическому опыту работы с такими библиотеками, как scikit-learn, Keras и TensorFlow, как показано в книге Практическое машинное обучение с помощью Scikit-Learn, Keras и TensorFlow — Book Link.
- Кроме того, вы занимались Python для компьютерного зрения с OpenCV и глубоким обучением Хосе Портильи на Udemy — Course Link
- Вы также изучали обработку естественного языка с помощью Python Хосе Портильи на Udemy — Course Link
- Вы изучили различные ресурсы машинного обучения, такие как fast.ai, d2l, курсы Соледад Галли и шаблоны проектирования гуру рефакторинга, чтобы улучшить свои навыки программирования.
Уровень 4 — кандидат наук. уровень
На уровне 4 вы получили степень доктора философии. уровень знаний в области машинного обучения. Ваше понимание продвинутой математики и специализированных разделов машинного обучения позволяет вам понимать экзотические и теоретические исследовательские работы и потенциально вносить свой вклад в свои теоретические идеи.
У вас есть возможность активно участвовать в проектах с открытым исходным кодом и самостоятельно создавать инновационные программные продукты.
Ресурсы для этого уровня более разнообразны и предназначены для разных специализаций:
Трек — Ссылка документы с кодом — Ссылка код fast.ai первое введение в НЛП — Ссылка fast.ai числовая линейная алгебра — Ссылка
Кроме того, вы приняли участие в следующих курсах и лекциях, чтобы расширить свой опыт:
- AMMI — Курс углубленного изучения геометрии — Ссылка
- Стив Бертон — Машинное обучение и динамические системы — Ссылка на плейлист
- Тюбинген — Вероятностное машинное обучение — Ссылка на плейлист
- Тюбинген — Компьютерное зрение — Course Link
- Пенсильванский университет — Графовые нейронные сети — Ссылка
- Стэнфорд — Обучение с подкреплением — Ссылка на плейлист
- DeepMind — Введение в обучение с подкреплением — Ссылка
- Стэнфорд — Обработка естественного языка с помощью глубокого обучения — Ссылка
- OpenMined — Частная серия ИИ — Ссылка
Чтобы еще больше обогатить свои знания и оставаться в курсе событий, вы также следите за контентом, предоставленным каналом Machine Learning Street Talk на YouTube — Ссылка.