Включите исполнение JavaScript в браузере, чтобы запустить приложение.
28 окт 2024

Основные модели машинного обучения (MLM): применение, плюсы и минусы

Задачи машинного обучения. Фундаментальные модели и способы машинного обучения. Список алгоритмов моделей Learning Machine. Проблемы обучения моделей искусственного интеллекта и примеры применения — обо всем читайте в нашей статье.

Машинное обучение лежит в основе чат-ботов и интеллектуального ввода текста, приложений для языкового перевода, нейросетей. С его помощью работают различные приборы — например, для диагностики заболевания на основе рентгеновских или других снимков. 

Machine Learning помогает компьютерам учиться на основе данных и прошлого опыта. Так они выявляют закономерности и делают прогнозы с минимальным вмешательством человека. Рассмотрим основные задачи и проблемы ML. 

  1. Что такое машинное обучение
  2. Задачи машинного обучения
  3. Регрессия
  4. Классификация
  5. Кластеризация
  6. Фундаментальные модели машинного обучения
  7. Обучение на большом объеме данных
  8. Самостоятельное обучение
  9. Непрерывное обучение
  10. Обобщение
  11. Способы машинного обучения
  12. Обучение с учителем (supervised learning)
  13. Обучение без учителя (unsupervised learning)
  14. Обучение с частичным участием учителя (semi-supervised learning)
  15. Обучение с подкреплением (reinforcement learning)
  16. Глубинное обучение (deep learning)
  17. Дообучение
  18. Алгоритмы моделей машинного обучения
  19. Байесовские алгоритмы
  20. Логистическая регрессия
  21. Деревья решений
  22. SVM (машина опорных векторов)
  23. Нейронные сети
  24. Проблемы обучения моделей искусственного интеллекта
  25. Как используют машинное обучение

Что такое машинное обучение

Машинное обучение (ML) — это составляющая искусственного интеллекта, которая определяется как способность машины изучать поведение человека и имитировать его. Системы ИИ применяются для выполнения задач аналогично тому, как люди решают проблемы.

Машинное обучение и его компоненты представляют собой концентрические подмножества ИИ. Последний обрабатывает данные для принятия решений и прогнозов. Алгоритмы machine learning позволяют ИИ использовать их для обучения без необходимости программирования. AI называют родителем машинного обучения и других отраслей — например, deep learning и neural networks.

В связи с ростом повсеместного распространения ML его все чаще применяют в работе над разными проектами. Опрос Deloitte, проведенный еще в 2020 году, показал, что 67% компаний используют машинное обучение.  В 2023 году более 80% компаний в мире внедрили машинное обучение в свои рабочие процессы. Оставшиеся 20% пока работают над этим вопросом.

Финансирование венчурного капитала (VC) в сфере искусственного интеллекта и машинного обучения продемонстрировало устойчивость: в первом квартале 2024 года было привлечено 21,6 миллиарда долларов США в рамках 1779 сделок. Такие инвестиции отражают твердую уверенность инвесторов в потенциале роста инноваций в области искусственного интеллекта и машинного обучения. 

Алексей Андреев, управляющий директор Positive Technologies, отметил, что в России большая часть человеческого труда также будет постепенно заменяться технологиями ML и LLM. Случится это в ближайшие 5–10 лет.

В основе ML лежат данные — цифры, изображения или отчеты о продажах. На них будет обучаться MLM. Чем больше качественных данных, тем эффективнее будет работать программа.

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

Задачи машинного обучения 

Задачи machine learning можно разделить на три типа: классификация, регрессия и кластеризация.

Регрессия 

Регрессия — тип контролируемой учебы, при котором выходная переменная всегда непрерывна. Цель регрессии — спрогнозировать непрерывное значение на основе входных переменных. Примеры алгоритмов регрессии включают линейную регрессию, полиномиальную регрессию и регрессию опорных векторов.

Классификация 

Классификация — метод, к которому относятся категоризация данных и объектов в заранее определенные классы или категории. При бинарной классификации данные разбиваются только на две категории, часто — «правда» или «неправда», например, «животное» и «не животное». Многоклассовая классификация распределяет данные более чем по двум категориям.

Цель классификации — разработать модель, которая может отнести новые экземпляры к нужному классу на основе изученных закономерностей. Примеры использования классификации:

  • фильтрация спама в электронной почте — разделение электронных писем на «спам»‎ и «неспам»‎ в зависимости от их содержания;
  • диагностика заболевания — установление диагноза на основе симптомов, истории болезни и результатов диагностических тестов;
  • анализ текста — классификация текстовых данных на положительные, отрицательные или нейтральные на основе эмоциональной составляющей;
  • оценка кредитного риска — оценка кредитоспособности физических лиц на основе их финансовой истории;
  • распознавание изображений — классификация по различным категориям на основе визуальных особенностей.

Кластеризация 

Кластеризация предполагает группировку похожих экземпляров на основе их внутренних характеристик или сходства. В отличие от классификации, она не опирается на заранее определенные метки классов, а вместо этого обнаруживает закономерности и структуры в данных. 

Алгоритмы кластеризации направлены на поиск естественных групп или кластеров в наборе данных. Она помогает максимизировать сходство элементов внутри группы. Кластеризацию используют, чтобы выявлять скрытые закономерности, выбросы и понимать основную структуру данных. Например, исходя из частоты покупок или сходства, можно выяснить, какие товары должны располагаться рядом в магазине. Еще один пример — группировка пользователей со схожими вкусами для предоставления рекомендаций.

Фундаментальные модели машинного обучения

 Есть и фундаментальные модели ML. Их основное отличие — в том, что их учат на больших объемах информации. Правильный подход к обучению приводит к тому, что эти модели справляются с разными видами задач. Их также легко обучать новому. Отметим важные характеристики, присущие базовым machine learning моделям.

Обучение на большом объеме данных 

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

Самостоятельное обучение 

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

Непрерывное обучение 

Фундаментальные модели могут учиться в течение неограниченного времени. Чем быстрее система понимает, как решить задачу, тем проще ей и дальше обучаться в таком же темпе.

Обобщение 

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

Способы машинного обучения 

Каждый алгоритм относится к одному из следующих базовых способов machine learning. Способ зависит от того, как спроектирована модель и на каких типах данных она обучается.

Обучение с учителем (supervised learning) 

При supervised learning компьютеру предоставляется набор данных, которые люди помечают правильными ответами или классификациями для каждого примера. Затем алгоритм учится прогнозировать новые модели на основе их характеристик (элементов, описывающих модель). 

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

Важное составляющее алгоритмов supervised learning — логистическая регрессия. Она используется для задач двоичной классификации. Такая регрессия помогает строить модели, которые предсказывают, принадлежит ли объект одному или двум классам.

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

Обучение без учителя (unsupervised learning) 

Обучение без учителя — это тип ML, который выявляет закономерности в неразмеченных данных. Он используется для составления прогнозов, поиска корреляций между переменными.

Unsupervised learning можно разделить на три категории: кластеризация, уменьшение размерности и анализ правил ассоциации. Кластеризация предполагает группировку похожих элементов. Уменьшение размерности направлено на уменьшение количества анализируемых переменных путем поиска общих черт между ними. Анализ ассоциативных правил ищет связи между наборами вещей на основе их свойств или характеристик. Например, если один человек покупает товар X, он, скорее всего, купит товар Y.

Обучение с частичным участием учителя (semi-supervised learning)

При semi-supervised learning часть обучающих данных помечается, а остальные точки данных не помечаются.

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

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

Обучение с подкреплением (reinforcement learning)

Обучение с подкреплением обычно используют в робототехнике и играх. Система (агент) может анализировать окружающую среду, выполнять действия и получать вознаграждение или наказание в зависимости от того, как она работает. Основная цель агента — накопить как можно больше вознаграждений. Агент выбирает лучшую стратегию , необходимую для получения наибольшего вознаграждения.

Reinforcement learning— ключевая тема, рассматриваемая в программах профессиональной сертификации и онлайн-руководствах для начинающих инженеров по машинному обучению. Методы критического изучения ML с подкреплением включают Q-обучение, политические градиенты и методы критики субъектов.

Глубинное обучение (deep learning) 

Deep learning — разновидность машинного обучения, в которой используются многослойные нейронные сети. Они созданы для моделирования способности человеческого мозга принимать решения.

«Неглубокие» традиционные MLM используют простые нейронные сети с одним или двумя вычислительными уровнями. Модели deep learning используют три или более слоев (обычно сотни или тысячи слоев) для обучения моделей.

Модели обучения с учителем требуют структурированных, помеченных входных данных для получения точных результатов. Глубинное изучение можно использовать без учителя. Благодаря обучению без учителя алгоритмы могут извлекать характеристики, особенности и взаимосвязи, необходимые для получения точных результатов из массива данных. Deep learning также позволяет лучше оценивать результаты для повышения точности работы.

Дообучение 

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

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

Иногда проще и дешевле улучшить возможности предварительно обученной базовой модели, чем обучать для этого новую модель с нуля. Это касается моделей глубокого обучения с миллионами или даже миллиардами параметров, таких как модели большого языка (LLM), получившие известность в области обработки естественного языка (NLP), или сложные сверточные нейронные сети (CNN).

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

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

Алгоритмы моделей машинного обучения 

За последние годы разработано множество типов алгоритмов машинного обучения. Алгоритмы автоматизированы, со временем они продолжают совершенствоваться.

Байесовские алгоритмы 

Naive Bayes Algorithm предполагает, что наличие определенного признака в классе не связано с наличием какого-либо другого признака.

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

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

Логистическая регрессия 

Линейная регрессия нужна, когда зависимые переменные непрерывны. Логистическая регрессия выбирается, когда зависимая переменная считается категориальной. Это означает наличие двоичных выходных данных: «истина» и «ложь» или «да» и «нет». Обе модели регрессии направлены на понимание взаимосвязей между входными данными. Логистическая регрессия в основном используется для решения проблем двоичной классификации. Это может быть идентификация спама.

Деревья решений 

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

SVM (машина опорных векторов) 

Алгоритм SVM — это метод алгоритма классификации, в котором программист отображает необработанные данные в виде точек в n-мерном пространстве (где n — количество имеющихся признаков). Значение каждого признака затем привязывается к определенной координате, что упрощает классификацию данных. Линии, называемые классификаторами, можно использовать для разделения данных и построения их на графике.

Нейронные сети 

Нейронные сети обрабатывают входные данные, имитируя взаимосвязь человеческого мозга через слои узлов. Каждый узел состоит из inputs, weights, bias (threshold) и output. Если выходное значение превышает заданный порог, алгоритм «срабатывает» или активирует узел, передавая данные на следующий уровень в сети. Нейронные сети учатся на корректировках, основанных на функции потерь, посредством процесса градиентного спуска. 

Проблемы обучения моделей искусственного интеллекта 

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

 Вот некоторые из проблем машинного обучения:

  • предвзятость и справедливость — системы машинного обучения должны избегать получения предвзятых результатов. Невыполнение этого требования приводит к неточным прогнозам и неблагоприятным последствиям для людей. Поскольку модели машинного обучения могут усиливать искажения в данных, они могут привести к несправедливым результатам и дискриминации определенных групп. Важно изучать, как собирались данные, используемые для обучения этих алгоритмов. А затем анализировать результаты на фактор предвязости;
  • расшифровка — MLM могут принимать решения, которые трудно понять. Человеку не всегда удается выяснить, как они пришли к своим выводам. Наборы данных для изучения доступности зачастую дорогие или к ним трудно получить доступ. Например, в здравоохранении решения, принимаемые с machine learning моделями, могут иметь жизненно важные последствия. Нужно разработать инструменты, которые автоматически проверяют их;
  • конфиденциальность и безопасность данных — обработка и защита данных, используемые для обучения моделей, имеет важное значение. Чтобы обеспечить конфиденциальность данных, компаниям следует внедрять передовые методы: шифрование, контроль доступа и безопасное хранение данных. Кроме того, организации должны установить четкие политики обработки и обмена информацией на протяжении всего процесса машинного обучения.

Как используют машинное обучение 

Машинное обучение иногда лежит в основе бизнес-моделей компаний. Например, алгоритм в Google. Machine learning применяют в разных областях:

  • анализ изображений и видео — использование алгоритмов ML для распознавания объектов, классификации и сегментации изображений привело к разработке беспилотных автомобилей, систем наблюдения и социальных сетей;
  • изучение климата — машины могут анализировать климатические данные для прогнозирования будущих изменений окружающей среды. Они оценивают их влияние на сельское хозяйство,а также анализируют возможность применения альтернативных источников энергии;
  • рекомендации — алгоритмы ML могут анализировать предпочтения пользователей и давать персонализированные рекомендации по продуктам в потоковых сервисах, электронной коммерции и на платформах социальных сетей;
  • безопасность — банки используют машинное обучение для обнаружения мошеннических транзакций. Анализируя закономерности поведения, они могут отмечать подозрительную активность в режиме реального времени;
  • здравоохранение — с помощью MLM можно анализировать рентгеновские снимки и МРТ для диагностики заболеваний и выявления отклонений. Приложения машинного обучения также позволяют врачам прогнозировать результаты лечения пациентов и персонализировать планы лечения на основе данных.