ВВЕДЕНИЕ.
Машинное обучение — это сложная предметная область, в которой происходят быстрые и захватывающие изменения во всех отраслях.

Что такое машинное обучение?
Машинное обучение (МО) — это современный метод разработки программного обеспечения и тип искусственного интеллекта (ИИ), который позволяет компьютерам решать проблемы, используя примеры реальных данных. . Это позволяет компьютерам автоматически учиться и совершенствоваться на основе опыта без явного программирования для этого. Машинное обучение является частью более широкой области искусственного интеллекта. Эта область связана со способностью машин выполнять действия, используя человеческий интеллект.

Преимущества машинного обучения:
1. Это двигатель последних достижений в таких отраслях, как автономные транспортные средства, умные часы, смартфоны.
2. Это позволяет более точно и быстрый перевод текста на сотни языков.
3. Он обеспечивает работу помощников ИИ, которые вы можете найти в своем доме и офисе, таких как виртуальные элементы управления, интеллектуальные детекторы.
4. Он может помочь повысить безопасность сотрудников. и предотвращение несчастных случаев.
5. Это может ускорить разработку лекарств.
6. Это может помочь в автоматизации и управлении технологическими процессами на заводах.

Методы машинного обучения.
Я узнал об основах машинного обучения с учителем, без учителя и с подкреплением.
1. При обучении с учителем каждый обучающий образец из набора данных имеет соответствующую метку или выходное значение, связанное с ним. В результате алгоритм учится прогнозировать метки или выходные значения.
2. При обучении без учителя метки для обучающих данных отсутствуют. Алгоритм машинного обучения пытается изучить основные шаблоны или распределения, управляющие данными.
3. При обучении с подкреплением алгоритм выясняет, какие действия следует предпринять в ситуации, чтобы максимизировать вознаграждение ( в виде числа) на пути к достижению конкретной цели.

При обучении с подкреплением (RL) агент обучается достигать цели на основе обратной связи, которую он получает при взаимодействии с окружающей средой.
Он собирает число в качестве награды за каждое действие, которое оно предпринимает. Действия, которые помогают агенту достичь своей цели, поощряются более высокими числами. Бесполезные действия приводят к низкому вознаграждению или отсутствию вознаграждения.
Ставя цель обучения максимизировать общее совокупное вознаграждение, со временем агент учится путем проб и ошибок сопоставлять полезные действия с ситуациями. Чем лучше обучен агент, тем эффективнее он выбирает действия для достижения своей цели.

Его приложение включает в себя:
1. видеоигры
2. дизайн уровней видеоигр
3. оптимизация энергии ветра
4. промышленная робототехника
5. обнаружение мошенничества
6. Торговля акциями
7. Автономное вождение

Компонент машинного обучения
Почти все задачи, решаемые с помощью машинного обучения, включают три основных компонента:
1. Модель машинного обучения: модель представляет собой блок. кода или фреймворка, которые можно модифицировать для решения разных, но связанных задач на основе предоставленных данных.
2. Алгоритм обучения модели: модель и данные — это две части информации, необходимые для создать обученную модель
3. Алгоритм вывода модели — это когда обученная модель используется для создания прогнозов.

Этапы машинного обучения:
1. Определите проблему: определите конкретную бизнес-задачу машинного обучения, которая может быть контролируемой (категоризированная или регрессионная метка) или неконтролируемой (кластеризация).

2. Создайте набор данных: включает сбор данных, проверку данных, сводную статистику и визуализацию данных.

3. Обучение модели: процесс обучения включает в себя ввод обучающих данных в модель, вычисление функции потерь по результатам и
обновление параметров модели в направлении, которое уменьшает потери. Обратите внимание, что вы должны разделить свой набор данных на набор данных для обучения (80% будут обучены) и набор тестовых данных (20% данных, удержанных из модели во время обучения, используемого для тестирования).

4. Оцените модель: после того, как вы собрали данные и обучили модель, вы можете начать оценивать ее работу. Показатели, используемые для оценки, скорее всего, будут очень специфичны для проблемы, которую вы определили.

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

Применение разработки программного обеспечения для машинного обучения
Я также узнал о следующих методах разработки программного обеспечения и о том, как они применяются в машинном обучении.

1. Написание чистого и модульного кода
2. Написание эффективного кода
3. Рефакторинг кода
4. Добавление полезной документации
5. Использование контроля версий
6. Тестирование< br /> 7. Ведение журнала
8. Обзор кода

Наконец, в объектно-ориентированном программировании я узнал о процедурном и объектно-ориентированном программировании, классах, объектах, методах, атрибутах, магических методах, наследовании и использовании объектно-ориентированного программирования для написания пакета Python, ознакомился с исходным кодом scikit-learn. пакет на PyPi.