Машинное обучение учит компьютеры делать то, что приходит естественным образом к людям: учиться на опыте. Алгоритмы машинного обучения используют вычислительные методы для «изучения» информации непосредственно из данных, не опираясь на заранее определенное уравнение в качестве модели. Алгоритмы адаптивно улучшают их производительность по мере увеличения количества образцов, доступных для обучения.
Машинное обучение использует два типа методов: контролируемое обучение, которое обучает модель известным входным и выходным данным, чтобы она могла прогнозировать будущие выходы, и неконтролируемое обучение, которое находит скрытые шаблоны или внутренние структуры во входных данных.

Целью контролируемого машинного обучения является построение модели, которая делает прогнозы на основе доказательств при наличии неопределенности. Управляемый алгоритм обучения принимает известный набор входных данных и известных ответов на данные (выходные данные) и обучает модель генерировать разумные прогнозы для ответа на новые данные. Контролируемое обучение использует методы классификации и регрессии для разработки прогностических моделей.
Методы классификации предсказывают категориальные ответы, например, является ли электронное письмо подлинным или спамом, или опухоль раковой или доброкачественной. Классификационные модели классифицируют входные данные по категориям. Типичные приложения включают в себя медицинскую визуализацию, распознавание изображений и речи и оценку кредитов.
Методы регрессии предсказывают непрерывные реакции, например, изменения температуры или колебания потребляемой мощности. Типичные приложения включают прогнозирование нагрузки на электроэнергию и алгоритмическую торговлю.
Неконтролируемое обучение находит скрытые шаблоны или внутренние структуры в данных. Он используется для вывода выводов из наборов данных, состоящих из входных данных без помеченных ответов. Кластеризация является наиболее распространенным методом обучения без присмотра. Он используется для анализа исследовательских данных для поиска скрытых шаблонов или группировок в данных. Приложения для кластеризации включают анализ последовательностей генов, исследования рынка и распознавание объектов.
Выбор правильного алгоритма может показаться непосильным - существуют десятки контролируемых и неподконтрольных алгоритмов машинного обучения, и каждый из них использует свой подход к обучению. Нет лучшего метода или одного размера подходит для всех. Поиск правильного алгоритма частично основан на проб и ошибках - даже опытные ученые не могут сказать, сработает ли алгоритм, не опробовав его. Очень гибкие модели, как правило, перестраивают данные, моделируя незначительные вариации, которые могут быть шумами. Простые модели легче интерпретировать, но могут иметь более низкую точность. Поэтому выбор правильного алгоритма требует от одной выгоды к другой, включая скорость, точность и сложность модели. В основе машинного обучения лежит проб и ошибок - если один подход или алгоритм не работает, пробуешь другой. MATLAB ® предоставляет инструменты, которые помогут вам опробовать различные модели машинного обучения и выбрать лучшие.

Чтобы найти приложения и функции MATLAB для решения задач машинного обучения, обратитесь к следующей таблице. Некоторые задачи машинного обучения упрощаются с помощью приложений, а другие используют функции командной строки.
| Задача | Приложения и функции MATLAB | Продукт | Подробнее |
|---|---|---|---|
| Классификация для прогнозирования категориальных ответов | Используйте приложение Classification Learner, чтобы автоматически обучить выбор моделей и помочь выбрать лучшие. Для работы со сценариями можно создать код MATLAB. Для получения дополнительных параметров можно использовать интерфейс командной строки. | Статистика и машинное обучение Toolbox™ | Обучение классификационным моделям в приложении Classifier Learner |
| Регрессия для прогнозирования непрерывных ответов | Используйте приложение Regression Learner, чтобы автоматически обучить выбор моделей и помочь выбрать лучшие. Для работы со сценариями и другими функциональными опциями можно создать код MATLAB. Для получения дополнительных параметров можно использовать интерфейс командной строки. | Инструментарий для статистики и машинного обучения | Обучайте регрессионные модели в приложении для учащегося регрессии |
| Объединение в кластеры | Используйте функции кластерного анализа. | Инструментарий для статистики и машинного обучения | Кластерный анализ |
| Задачи вычислительного финансирования, такие как кредитная оценка | Используйте инструменты для моделирования анализа кредитного риска. | Финансовые Toolbox™ и управление рисками Toolbox™ | Кредитный риск (набор финансовых инструментов) |
| Глубокое обучение с нейронными сетями для классификации и регрессии | Использовать предварительно обученные сети и функции для обучения сверточных нейронных сетей. | Глубокое обучение Toolbox™ | Глубокое обучение в MATLAB (инструментарий глубокого обучения) |
| Распознавание лица, обнаружение движения и обнаружение объекта | Используйте инструменты глубокого обучения для обработки изображений и компьютерного зрения. | Инструментарий для глубокого обучения и компьютерное видение Toolbox™ | Распознавание, обнаружение объектов и семантическая сегментация (панель инструментов компьютерного зрения) |
Следующий систематический рабочий процесс машинного обучения поможет вам решить проблемы машинного обучения. Весь поток операций можно завершить в MATLAB.

Для интеграции наиболее обученной модели в производственную систему можно развернуть модели машинного обучения Statistics and Machine Learning Toolbox с помощью MATLAB Compiler™. Для многих моделей можно создать C-код для прогнозирования с помощью Coder™ MATLAB.
Используйте приложение Classification Learner для обучения моделей классификации данных с помощью контролируемого машинного обучения. Приложение позволяет изучать контролируемое машинное обучение в интерактивном режиме с использованием различных классификаторов.
Автоматическое обучение выбора моделей, чтобы помочь выбрать лучшую модель. Типы моделей включают деревья решений, дискриминантный анализ, машины опорных векторов, логистическую регрессию, ближайшие соседи, наивные Байес, ансамбль и классификаторы нейронных сетей.
Изучите свои данные, укажите схемы проверки, выберите элементы и визуализируйте результаты. По умолчанию приложение защищает от переоборудования, применяя перекрестную проверку. Кроме того, можно выбрать проверку удержания. Результаты проверки помогают выбрать оптимальную модель для данных. Графики и показатели эффективности отражают проверенные результаты модели.
Экспорт моделей в рабочую область для создания прогнозов с новыми данными. Приложение всегда обучает модель полным данным в дополнение к модели с указанной схемой проверки, а полная модель является экспортируемой моделью.
Создание кода MATLAB из приложения для создания сценариев, обучение с новыми данными, работа с огромными наборами данных или изменение кода для дальнейшего анализа.
Дополнительные сведения см. в разделе Модели классификации поездов в приложении Classification Learner App.

Для получения дополнительных параметров можно использовать интерфейс командной строки. См. раздел Классификация.
Используйте приложение Regression Learner для обучения моделей прогнозированию непрерывных данных с помощью контролируемого машинного обучения. Приложение позволяет исследовать контролируемое машинное обучение в интерактивном режиме с использованием различных регрессионных моделей.
Автоматическое обучение выбора моделей, чтобы помочь выбрать лучшую модель. Типы моделей включают модели линейной регрессии, деревья регрессии, модели регрессии гауссова процесса, машины опорных векторов, ансамбли деревьев регрессии и модели регрессии нейронной сети.
Изучите свои данные, выберите функции и визуализируйте результаты. Аналогично Classification Learner, функция Regression Learner применяет перекрестную проверку по умолчанию. Результаты и визуализации отражают проверенную модель. Используйте результаты для выбора наилучшей модели для данных.
Экспорт моделей в рабочую область для создания прогнозов с новыми данными. Приложение всегда обучает модель полным данным в дополнение к модели с указанной схемой проверки, а полная модель является экспортируемой моделью.
Создание кода MATLAB из приложения для создания сценариев, обучение с новыми данными, работа с огромными наборами данных или изменение кода для дальнейшего анализа.
Дополнительные сведения см. в разделе Обучение регрессионным моделям в приложении для обучения регрессиям.

Для получения дополнительных параметров можно использовать интерфейс командной строки. См. раздел Регрессия.
Deep Learning Toolbox позволяет выполнять глубокое обучение с помощью сверточных нейронных сетей для классификации, регрессии, извлечения признаков и трансферного обучения. Панель инструментов предоставляет простые команды MATLAB для создания и соединения слоев глубокой нейронной сети. Примеры и заранее обученные сети позволяют легко использовать MATLAB для глубокого обучения, даже без обширных знаний о современных алгоритмах компьютерного зрения или нейронных сетях.
Дополнительные сведения см. в разделе Глубокое обучение в MATLAB (Deep Learning Toolbox).