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

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

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

Вы можете найти несколько интересных приложений машинного обучения в этой статье Forbes. Также вы найдете некоторые распространенные приложения машинного обучения в

  • OCR (оптическое распознавание символов)
  • Распознавание речи и обработка естественного языка
  • Распознавание лиц и распознавание лиц
  • веб-поиск
  • Прогноз погоды

и так далее.

Краткая информация?

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

Процесс прогнозирования, используемый в машинном обучении, очень похож на определение функции, называемой функцией гипотезы. Учитывая набор данных, сначала мы должны выяснить, каковы функции в наборе данных. То есть мы должны найти переменные в наборе данных, которые будут использоваться в качестве переменных в функции гипотезы. Затем мы должны выяснить, что является функцией. Это похоже на нахождение a, b и c в уравнении типа z=ax+by+c. , где x и y — мои переменные. В такой функции может быть два типа выходов.

  1. Непрерывный вывод — любое значение в заданном диапазоне
  2. Дискретный вывод — может быть выведен только предопределенный набор значений

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

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

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

Регрессия

Этот метод может выводить любое значение в заданном диапазоне после прогноза. Например, имея набор данных, связанных с арендной платой за дома, их размером (в квадратных футах), количеством комнат в каждом доме и т. д., вы можете создать модель для прогнозирования арендной платы за новый дом, которая может предсказать арендную плату за новый дом, когда значения этих свойств даны. Если мы возьмем Линейную регрессию, в которой только атрибуты рассматриваются как функции без их объединения вместе, мы делаем что-то вроде рисования прямой линии или параболы через эти точки данных наилучшим образом.

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

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

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

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

Цель этой статьи состояла в том, чтобы дать общий обзор машинного обучения. Существует ряд онлайн-ресурсов, доступных для изучения машинного обучения. udacity.com — одно из таких мест. Если вам интересно, это интересный аспект современной информатики, который сейчас используется практически повсеместно. Например, вы можете опробовать ИИ Watson от IBM, который представляет собой продвинутую реализацию машинного обучения. Надеюсь, эта статья дала вам некоторое представление о машинном обучении.