Машинное обучение

Машинное обучение используется для создания алгоритмов и моделей, которые могут “учиться” на основе данных, выявлять закономерности и делать прогнозы или принимать решения без явного программирования. Оно представляет собой область искусственного интеллекта, которая изучает методы, использующие алгоритмы и математические модели для анализа и интерпретации данных, с целью автоматизации принятия решений и обучения систем без четкого определения правил. Машинное обучение применяется в таких областях, как распознавание образов, обработка текста, медицинская диагностика, финансовая аналитика, рекомендательные системы и другие, характерной чертой которых является не прямое решение задачи, а обучение за счёт применения решений множества сходных задач.

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

Различают два типа обучения:

  1. Обучение по прецедентам, или индуктивное обучение, основано на выявлении эмпирических закономерностей в данных.
  2. Дедуктивное обучение предполагает формализацию знаний экспертов и их перенос в компьютер в виде базы знаний.

Дедуктивное обучение принято относить к области экспертных систем, поэтому термины машинное обучение и обучение по прецедентам можно считать синонимами.

Многие методы индуктивного обучения разрабатывались как альтернатива классическим статистическим подходам. Многие методы тесно связаны с извлечением информации (англ. information extractioninformation retrieval), интеллектуальным анализом данных (data mining).

Раздел машинного обучения, с одной стороны, образовался в результате разделения науки о нейросетях на методы обучения сетей и виды топологий их архитектуры, с другой стороны — вобрал в себя методы математической статистики.
Указанные ниже способы машинного обучения основаны на применении нейросетей, хотя существуют и другие методы, основанные на обучающей выборке — например, дискриминантный анализ, оперирующий обобщённой дисперсией и ковариацией наблюдаемой статистики, или байесовские классификаторы. Базовые виды нейросетей, такие как перцептрон и многослойный перцептрон (а также их модификации), могут обучаться как с учителем, так и без учителя, с подкреплением и самоорганизацией. Но некоторые нейросети и большинство статистических методов можно отнести только к одному из способов обучения. Поэтому, если нужно классифицировать методы машинного обучения в зависимости от способа обучения, то будет некорректным относить нейросети к определенному виду, правильнее было бы типизировать алгоритмы обучения нейронных сетей.

  • Обучение с учителем — для каждого прецедента задаётся пара «ситуация, требуемое решение»:
  1. Искусственная нейронные сети:
    • Глубокое обучение
  2. Метод коррекции ошибки
  3. Метод обратного распространения ошибки
  4. Метод опорных векторов
  • Обучение без учителя — для каждого прецедента задаётся только «ситуация», требуется сгруппировать объекты в кластеры, используя данные о попарном сходстве объектов, и/или понизить размерность данных:
  1. Альфа-система подкрепления
  2. Гамма-система подкрепления
  3. Метод ближайших соседей
  • Обучение с подкреплением — для каждого прецедента имеется пара «ситуация, принятое решение»:
  1. Генетический алгоритм.
  • Активное обучение — отличается тем, что обучаемый алгоритм имеет возможность самостоятельно назначать следующую исследуемую ситуацию, на которой станет известен верный ответ:
  • Обучение с частичным привлечением учителя (англ. semi-supervised learning) — для части прецедентов задается пара «ситуация, требуемое решение», а для части — только «ситуация»
  • Трансдуктивное обучение — обучение с частичным привлечением учителя, когда прогноз предполагается делать только для прецедентов из тестовой выборки
  • Многозадачное обучение (англ. multi-task learning) — одновременное обучение группе взаимосвязанных задач, для каждой из которых задаются свои пары «ситуация, требуемое решение»
  • Многовариантное обучение (англ. multiple-instance learning) — обучение, когда прецеденты могут быть объединены в группы, в каждой из которых для всех прецедентов имеется «ситуация», но только для одного из них (причем, неизвестно какого) имеется пара «ситуация, требуемое решение»
  • Бустинг (англ. boosting — улучшение) — это процедура последовательного построения композиции алгоритмов машинного обучения, когда каждый следующий алгоритм стремится компенсировать недостатки композиции всех предыдущих алгоритмов.
  • Байесовская сеть

Следует отметить неразрывную связь понятий MLops и “машинное обучение”.

В машинном обучении используются различные программы и инструменты для обработки данных, построения моделей и обучения алгоритмов. Некоторые из наиболее популярных программ в области машинного обучения:
1. Python с библиотеками:
TensorFlow
PyTorch
Scikit-learn
Pandas
NumPy
2. R с библиотеками:
– caret
– mlr
– randomForest
– glmnet
3. MATLAB
4. Weka
5. RapidMiner
6. Orange
7. IBM SPSS Modeler
8. Microsoft Azure Machine Learning Studio
9. Google Cloud Machine Learning Engine
10. Lisp

Эти программы предоставляют различные инструменты и алгоритмы для работы с данными, построения моделей и решения задач машинного обучения. Каждая из них имеет свои особенности и применяется в зависимости от задачи и предпочтений специалиста.

Обсуждение закрыто.