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

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

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

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

«Подобно тому, как электричество изменило почти все 100 лет назад, сегодня мне действительно трудно думать об отрасли, которую, я не думаю, ИИ изменит в ближайшие несколько лет». — — — Эндрю Нг

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

Некоторые приложения машинного обучения: -

1) Финансовая служба: — Анализ рисков и регулирование

2) Производство: — Диагностическое обслуживание и мониторинг состояния

3) Розничная торговля: — Допродажи и кросс-канальный маркетинг

4) Здравоохранение и наука о жизни: — Идентификация заболеваний и удовлетворение рисков.

5) Путешествия и гостиничный бизнес: -Динамическое ценообразование

6) Логистика и транспорт: — Корневая оптимизация

7) Энергетика: — Оптимизация спроса и предложения энергии.

Краткая история машинного обучения?

Вы можете подумать, что машинное обучение — относительно новая тема, но нет, концепция машинного обучения появилась в 1950 году, когда Алан Тьюринг (да, тот самый из Imitation Game) опубликовал статью, отвечающую на вопрос «Могут ли машины думать? ».

В 1957 году Фрэнк Розенблатт разработал первую нейронную сеть для компьютеров, которую теперь обычно называют моделью персептрона.

В 1959 году Бернард Уидроу и Марсиан Хофф создали две модели нейронных сетей, названные «Аделина», которые могли обнаруживать бинарные паттерны, и «Мадлен», которая могла устранять эхо на телефонных линиях.

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

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

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

Следуйте здесь для подробной истории машинного обучения.

Классификация моделей машинного обучения: -

Модели машинного обучения можно разделить на три типа:

1) Обучение с учителем: — В приложениях обучения с учителем набор обучающих данных (заданный набор данных) состоит из выборок входных векторов {x} вместе с соответствующими им целевыми векторами. Задача здесь состоит в том, чтобы найти функцию f(x), которая берет точку данных x и выдает эквивалентное целевое значение t, такое что f(x) = t
Задачи контролируемого обучения могут быть либо регрессионными, либо классификационными.

а. Регрессия: здесь набор обучающих данных находится в R-мерном реальном пространстве. Здесь вывод будет просто одной или несколькими непрерывными переменными

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

2) Обучение без учителя: обучение без учителя связано с поиском закономерностей или тенденций во входных данных. Неконтролируемое обучение может быть кластеризацией, оценкой плотности или уменьшением размерности.

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

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

Жизненный цикл машинного обучения

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

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

Этот шаг включает в себя следующие задачи:

o Определите различные источники данных

о Собирать данные

o Интегрировать данные, полученные из разных источников

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

Этот шаг можно разделить на два процесса:

o Исследование данных.
Используется для понимания характера данных, с которыми нам приходится работать. Нам необходимо понимать характеристики, формат и качество данных.
Лучшее понимание данных приводит к эффективному результату. При этом мы находим корреляции, общие тенденции и выбросы.

o Предварительная обработка данных
Теперь следующим шагом является предварительная обработка данных для их анализа.

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

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

o Отсутствующие значения

о Дублирование данных

о Неверные данные

о Шум

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

4) Анализ данных: — Теперь очищенные и подготовленные данные передаются на этап анализа. Этот шаг включает

o Выбор аналитических методов

o Построение моделей

о Просмотрите результат

Целью этого шага является создание модели машинного обучения для анализа данных с использованием различных аналитических методов и просмотра результатов. Он начинается с определения типа проблем, где мы выбираем методы машинного обучения, такие как Классификация, Регрессия, Кластерный анализ, Association и т. д., затем постройте модель, используя подготовленные данные, и оцените модель. Следовательно, на этом этапе мы берем данные и используем алгоритмы машинного обучения для построения модели.

5) Обучение модели: — Теперь следующим шагом является обучение модели, на этом этапе мы обучаем нашу модель, чтобы улучшить ее производительность для лучшего решения проблемы. Мы используем наборы данных для обучения модели с использованием различных алгоритмов машинного обучения. Требуется обучение модели, чтобы она могла понять различные шаблоны, правила и функции.

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

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

За и против

Плюсы: -

  • Автоматизация всего
  • Широкий спектр применения
  • Объем улучшений
  • Эффективная обработка данных
  • Лучшее для образования

Минусы: -

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

Сводка

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