RoadMap для изучения Machine Learning 2023
Механизмы рекомендаций — это распространенный вариант использования машинного обучения. Другие популярные области применения включают обнаружение мошенничества, фильтрацию спама, обнаружение угроз вредоносного ПО, автоматизацию бизнес-процессов (BPA) и прогнозное обслуживание.
Машинное обучение важно, поскольку оно даёт предприятиям представление о тенденциях в поведении клиентов и моделях ведения бизнеса, а также поддерживает разработку новых продуктов. Многие ведущие современные компании, такие как Facebook, Google и Uber, делают машинное обучение центральной частью своей деятельности. Машинное обучение стало важным конкурентным преимуществом для многих компаний.
Если вы хотите изучить машинное обучение с помощью Python, ожидается, что вы знаете нижеприведённые понятия:
- Переменные
- Математические операторы
- Управляющие инструкции
- Структуры данных (список, набор, словарь и т.д.)
- Работа с файлами
- Функции
- Объектно-ориентированное программирование
Если вы не знакомы с Python, есть несколько способов выучить этот простой язык программирования. Вы можете пройти несколько курсов на Udemy, Coursera и т.д.
- ML использует данные для обнаружения различных закономерностей в автоматически заданный набор данных
- Машинное обучение может извлекать уроки из прошлых данных и автоматически улучшаться
- ML — это технология, основанная на данных
- Это очень похоже на интеллектуальный анализ данных, поскольку также имеет дело с огромным объёмом данных
- Решению сложных проблем
- Принятие решений в различных секторах, включая финансы
- Поиск скрытых закономерностей и извлечение полезной информации из данных
- Быстрое увеличение объёма производства данных
- Самоуправляемые автомобили
- Торговля на фондовом рынке
- Распознавание изображений
- Распознавание речи
- Прогнозирование трафика
- Обнаружение мошенничества в Интернете
- Медицинский диагноз
- Фильтрация спама и вредоносных программ по электронной почте
- Автоматический перевод на другой язык
Первым шагом к началу изучения машинного обучения является выбор языка программирования. На рынке существуют различные языки программирования, но наиболее подходящими для машинного обучения являются Python и R.
Я рекомендую Python. Почему? Потому что он популярен, прост в освоении и имеет перспективы.
С помощью Python вы можете легко переключать домены. Python предлагает такие популярные фреймворки, как Django и Flask для backend-разработки, Tkinter для разработки графического интерфейса, Pygames для разработки игр и т.д.
Если вы используете Python, вы должны изучить sklearn для машинного обучения. Sklearn — это современная библиотека машинного обучения, написанная на Python.
Самое лучшее в sklearn — это то, что большинство алгоритмов машинного обучения уже написаны для вас. В нём есть много полезных классов для предварительной обработки ваших данных для дальнейшего анализа
Если вы хотите изучать машинное обучение на Hindi, вы можете ознакомиться с полным видео-каналом машинного обучения на YouTube, где вас проведут в данную сферу с нуля.
Вам также следует заглянуть в модуль Tensorflow, который может помочь вам построить нейронную сеть без особых усилий!
Вам следует изучить линейную алгебру, если вы хотите освоить машинное обучение и стать профессионалом!
Это важно, потому что, если вы хотите настроить свои модели с максимальной гибкостью, вам нужно знать, как они работают, а знание линейной алгебры для этого просто необходимо!
Когда вы начнёте, вам следует сосредоточиться на шаге 1, и пока вы выполняете шаг 1, вы можете начать изучать линейную алгебру параллельно. Это то, что я называю техникой параллельного завоевания.
Вы начинаете две похожие задачи параллельно, сосредотачиваясь на первой и сохраняя относительно меньший приоритет для других задач. Это может помочь вам сохранить энтузиазм и мотивацию на высоком уровне.
Одним из ресурсов, которые я счёл очень полезными для пересмотра концепций линейной алгебры, были эти заметки в формате pdf.
Базовое понимание вероятности и статистики важно, когда речь заходит об освоении машинного обучения.
Вот один из лучших ресурсов для этого: Statistics Revision Notes by MathBox.
Поскольку в основе концепций машинного обучения лежат статистика и вероятность, знакомство с ними и овладение статистикой и вероятностью во многом помогают в понимании концепций ML. Вы можете изучить их на курсе KhanAcademy. Вы должны знать следующие понятия:
- Категориальные и числовые данные
- Среднее значение, режим и медиана
- Стандартное отклонение и дисперсия
- Ковариация
- Корреляция
- Асимметрия
- Случайные величины
- Распределения
- Классическая вероятность
- Условная вероятность
Как только у вас появится некоторое представление об использовании sklearn после изучения python, вам следует начать изучать, как работают основные алгоритмы машинного обучения.
Чтобы получить представление о том, как алгоритмы машинного обучения работают изнутри, загляните в:
- Градиентный спуск
- Slope
- Контролируемое обучение vs неконтролируемого
- Обучение с подкреплением
- Базовая линейная регрессия
- Работа со всеми похожими моделями
- Кластеризация
Удивительный ресурс, позволяющий узнать обо всем этом — это книга под названием “Hands-on ML with Scikit learn and tensorflow.”.
Попробуйте захватить экземпляр этой книги. Это вам очень поможет.
Есть также несколько других ресурсов, на которые стоит обратить внимание:
- Запланируйте своё время для чтения
- Попробуйте перевернуть страницы и поискать вопросы-упражнения
- Теперь попробуйте найти ответы на эти вопросы во время чтения
- Автор книги хочет, чтобы вы сосредоточились на этих моментах
- Попробуйте использовать функцию чтения вслух в Microsoft Edge. Она работает довольно хорошо
- Изучите Numpy
- Изучайте Pandas
- Всё это будет полезно для отладки кода python/sklearn
Чтобы внедрить свои модели машинного обучения с мощным бэкендом, вам нужно будет изучить такие фреймворки, как Django и Flask.
Docker и Kubernetes могут оказать большую помощь, если вы хотите быстро отправлять и развёртывать свои модели!
Streamlit стоит изучить, если вы хотите создавать пользовательские веб-приложения для ML и Data Science.
Это ресурсы, которые вы можете использовать, чтобы стать инженером машинного обучения. Все ресурсы доступны бесплатно онлайн.
- Step by Step Forwardpropagation and Backpropagation with Numbers
- Full Manual Backward Propagation with TensorFlow
- Reverse Mode Automatic Differentiation with TensorFlow
- Simple Backward Propagation with Python
- Backward Propagation from Scratch with Python
- Нейронные сети, демистифицированные с помощью Python, Welch Labs Part 1: Data and ArchitecturePart 2: Forward PropagationPart 3: Gradient DescentPart 4: Backward PropagationPart 5: Numerical Gradient CheckingPart 6: BFGS Numerical seOptimization AlgorithmPart 7: Overfitting, Testing and Regularization
- Машинное обучение с помощью scikit-learn, Data School Machine Learning with scikit-learnComparing Supervised Learning AlgorithmMachine Learning with text
- Машинное обучение с помощью scikit-learn, Jake Vanderplas Introduction to scikit-learnBasic PrinciplesLinear RegressionSupport Vector MachinesRegression ForestsDimensionality Reductionk-means ClusteringDensity EstimationValidation and Model Selection
- Decision Trees, The Grimm Scientist
- Машинное обучение с помощью scikit-learn, Andreas Mueller Introduction to Machine Learning with PythonScikit-learn tutorialAdvanced scikit-learn
- Свёрточные нейронные сети с использованием Python, Stanford CS231n Convolutional Neural Networks for Visual Recognition
Лично я обнаружил, что книги являются лучшим источником знаний после прохождения курсов. Именно в них вы можете укрепить своё теоретическое понимание концепций, которые вы используете в своих проектах ML.
1 – The Hundred-Page Machine Learning BookОчень короткая книга, содержащая важную информацию. Андрей Бурков сжал все жизненно важные моменты в AI / ML и поместил их в эту 100-страничную книгу [138, если быть точным].
2 – Hands-on Machine Learning with Scikit-Learn, Keras and Tensorflow 2.0 Book by Aurelien Geron — О’РейлиПо моему мнению, эта книга является альтернативой специализациям машинного обучения и глубокого обучения, разработанным deeplearning.ai . Я предпочитаю эту книгу, поскольку в ней есть отличные объяснения, а каждая концепция имеет хороший код, который можно опробовать самому. Вы также можете получить доступ к открытому исходному коду из этой книги по следующей ссылке — https://github.com/ageron/handson-ml2
3 – Deep Learning book — Иэна ГудфеллоуЕсли вы хотите глубже проникнуть в математическую сторону глубокого обучения, то в этой книге есть всё, что вам нужно. Она была опубликована в 2015 году, так что она относительно старая, но всё ещё актуальная.