Машинное обучение: просто о сложном. Какого типа машинного обучения не бывает

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

Машинное обучение для неспециалистов: как научить программу решать бизнес-задачи вместо себя

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

В последнее время многие люди обсуждают машинное обучение, пишут обзорные статьи, публикуют новости, публикуют исследования и организуют конференции. Такие гиганты рынка, как Google, IBM и Amazon, имеют свои собственные исследовательские платформы, но и более мелкие стартапы также заявляют о применении решений на основе искусственного интеллекта. Методы машинного обучения применяются в маркетинге, медицине, аналитике и менеджменте. Однако мало кто, кроме экспертов, действительно понимает, что это такое, зачем и как его применять. Давайте разберемся в этом вместе.

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

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

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

Иерархия наиболее распространенных терминов из области искусственного интеллекта.

Иерархия наиболее распространенных терминов из области искусственного интеллекта

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

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

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

Попросите программу выделить области с красными картинками

Попросите программу выделить красные области на фотографии

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

Это честно подчеркнет красные яблоки и скроет синие сливы.

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

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

Сначала создается внешний вид бренд-шефа, а затем его

Сначала была создана внешность знаменитого шеф-повара, затем ее «сердце». Источник: she.wrf.su

Как происходит машинное обучение

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

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

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

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

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

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

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

Machine Learning: принципы и задачи

Машинное обучение основано на трех одинаково важных факторах.

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

ПРИМЕЧАНИЯ.

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

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

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

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

  • Регрессия. Предоставляет прогноз на основе выборки объектов с различными признаками.По итогам анализа данных на выходе получается число или числовой вектор. Например, таким образом работает кредитный скоринг — оценка кредитоспособности потенциального заёмщика.
  • Классификация. Выявляет категории объектов на основе имеющихся параметров. Продолжает традиции машинного зрения, поэтому часто можно встретить термин «распознавание образов»: например, идентификация разыскиваемых людей по фото или на основании словесного описания внешности.
  • Кластеризация. Разделяет данные на схожие категории по объединяющему признаку. Например, космические объекты кластеризируют по удаленности, размерам, типам и другим признакам.
  • Идентификация. Отделяет данные с заданными параметрами от остального массива данных. К примеру, участвует в постановке медицинского диагноза по набору симптомов.
  • Прогнозирование. Работает с объемами данных за определенный период и предсказывает на основе анализа их значение через заданный период времени. Примером может служить прогноз погоды.
  • Извлечение знаний. Исследует зависимости между рядом показателей одного и того же явления или события. Например, находит закономерности во взаимодействии биржевых показателей.

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

Как это работает: типы машинного обучения

Для простоты типы машинного обучения обычно делят на три категории

  • обучение с учителем (supervised learning);
  • обучение без учителя (unsupervised learning);
  • обучение с подкреплением (reinforcement learning).

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

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

Обучение с учителем

Этот человек только в том, что роль ребенка заключается только в том, чтобы играть в алгоритм. Поскольку данные, подготовленные для анализа, изначально содержат правильный ответ, цель алгоритма не в том, чтобы ответить на вопрос «Почему?». но чтобы понять Определите взаимоотношения. В результате можно сделать соответствующие прогнозы и модели.

Обучение без учителя

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

Обучение с подкреплением

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

Инструменты machine learning

Инструменты машинного обучения используются на следующих этапах.

  • сбор и подготовка данных;
  • построение модели;
  • обучение и развертывание приложений.

Для выполнения каждого из этих этапов используются специализированные платформы. Существуют различные языки программирования (Python, Cython, C, C ++, Cuda, Java), операционные системы (Linux, Mac OS, Windows) и задачи, которые они могут решать.

Сегодня на рынке представлены десятки программных инструментов.

  • TensorFlow;
  • Shogun;
  • Keras.io;
  • Rapid Miner;
  • Google Cloud ML Engine;
  • Amazon Machine Learning (AML);
  • Accord.NET;
  • Apache Mahout;
  • Microsoft Azure ML;
  • SberCloud ML Space

Согласно исследованию Barclayhedge, более 50% хедж-фондов используют искусственный интеллект и машинное обучение для принятия инвестиционных решений, а три из двух используют их для создания торговых идей и оптимизации портфелей.

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

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

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

Машинное обучение для 🤖 начинающих: основные понятия, проблемы и сфера применения

Обучение с учителем

Контролируемое обучение — это пример, где «учитель» в идеале определяет правильные ответы, которые модель должна выдавать в каждом случае. Эти ответы называются метками (название происходит от задачи сортировки, где модель почти всегда тренируется с учителем — эти ответы являются метками класса), а метки выделяются.

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

К сожалению, в механической модели обучения все не так просто. Потому что мы сами не знаем, какой ответ «правильный» в каждом конкретном случае! В конечном счете, нам нужна модель, чтобы получить эти ответы. И в большинстве случаев модели нужны в основном для изучения взаимосвязи между результатами и входами, а не для точного воспроизведения эффектов обучающего набора, который в реальной жизни может содержать ошибочные эффекты (шум). Если модель дает правильные результаты на всем обучающем множестве, но часто ошибается на новых данных, то говорят, что это множество переобучено.

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

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

Обучение без учителя

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

Эта стратегия обучения используется, например, компанией Airbnb, которая группирует похожие дома, и Google News, которая группирует новости по темам.

Частичное привлечение учителя

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

Лучшие курсы для изучения машинного обучения

  • Самый популярный курс основ машинного обучения для новичков – бесплатная серия лекций Стэнфордского университета на Coursera от легендарного эксперта в ИИ и основателя Google Brain Эндрю Ына (Andrew Ng). Недавно Эндрю Ын выпустил курс специализации в глубоком обучении, который рассматривает различные архитектуры нейронных сетей и прочие темы машинного обучения.
  • Если вы предпочитаете подход «сверху вниз», при котором вы сначала запускаете обученные модели машинного обучения, и только потом углубляетесь в их внутренности, обратите внимание на курс «Практическое глубокое обучение для кодировщиков» от fast.ai. Этот курс особенно рекомендуется программистам, имеющим не менее года опыта работы на Python. Курс Эндрю Ына предоставляет обзор теоретических основ машинного обучения, а курс fast.ai построен вокруг Python’а – языка программирования, широко используемого в машинном обучении.
  • Еще один курс, высоко оцениваемый не только за уровень преподавания, но и за широкий обзор рассматриваемых тем – «Введение в машинное обучение» от EdX и Колумбийского университета, хотя он и требует знания математики на университетском уровне.
  • На русском языке, пожалуй, лучший курс машинного обучения предлагает факультет искусственного интеллекта GeekBrains. Этот курс занимает целых полтора года и при успешном освоении выведет вас на довольно высокий уровень, достаточный для трудоустройства.

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

Машинное обучение для 🤖 начинающих: основные понятия, проблемы и сфера применения

Машинное зрение

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

  • Выделение сущностей определенных классов в изображении. Например, модель YOLO помечает рамками найденные объекты и выводит метки их классов.
  • Распознавание людей по их лицам (служит для обнаружения преступников, идентификации для безопасного доступа к охраняемым объектам, введения ограничений по возрасту и т.п.)
  • Медицинская диагностика. Современные модели способны распознавать многие виды заболеваний по фотографиям пациентов, особенно если к ним добавляются снимки рентгенографии и МРТ.
  • Автоматическое вождение автомобиля. Эта задача состоит из многих подзадач: идентификация других автомобилей, пешеходов и прочих объектов на дороге, определение скорости и направления движения других объектов, принятие правильных решений в различных ситуациях, и так далее.
  • Воздушная разведка. Современные дроны могут намного больше, чем подчиняться командам человека, передаваемым по радио. Они могут не только распознавать военную технику и направление ее передвижения, но и ее маркировку.
  • Автоматическая генерация изображений – в том числе, человеческих лиц и тел.

Обработка естественного языка

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

Оцените статью
Бизнес блог