Машинное обучение и Искусственный Интеллект
Шрифт:
Вместо того, чтобы следовать алгоритмам, основанным на правилах, машинное обучение само строит модели для классификации и прогнозирования на основе данных.
Например, что, если мы хотим определить, может ли возникнуть проблема с нашим сердцем, с помощью машинного обучения?
Можем ли мы это сделать.
И ответ – да.
Допустим, нам даны такие данные, как количество ударов в минуту, вес тела, возраст и пол.
С машинным обучением и этим набором данных, мы можем изучить и создать модель, которая с учетом входных данных будет
Так в чем же разница между этим подходом и просто использования статистического анализа для создания алгоритма?
Алгоритм – это математическая техника.
В традиционном программировании мы берем данные и правила и используем их для разработки алгоритма, который даст нам ответ.
В этом примере, если бы мы использовали традиционный алгоритм, мы бы взяли данные, такие как сердечный ритм, возраст, вес тела и пол и использовали эти данные для создания алгоритма, который определит, будет ли сердце работать нормально или нет.
По сути, это было бы выражение if – else.
Когда мы отправляем входные данные, мы получаем ответы, основанные на том, какой алгоритм мы определили, и этот алгоритм не изменится от данных.
Машинное обучение, с другой стороны, берет данные и ответы и уже потом само создает алгоритм.
Вместо того, чтобы получить ответы в конце, у нас уже есть ответы.
А то, что мы получаем здесь, – это набор правил, определяющих модель машинного обучения.
И эта модель определяет правила и оператор if – else при получении входных данных.
И эта модель, в отличие от традиционного алгоритма, может постоянно обучаться и использоваться в будущем для прогнозирования значений.
Машинное обучение опирается на определение правил путем изучения и сравнения больших наборов данных, чтобы найти общие закономерности.
Например, мы можем создать программу машинного обучения с большим объемом изображений птиц, и обучить модель возвращать название птицы всякий раз, когда мы даем изображение птицы.
Когда для модели отображается изображение птицы, она маркирует изображение с некоторой степенью достоверности.
Этот тип машинного обучения называется контролируемым обучением, где алгоритм обучается на данных, размеченных человеком.
Чем больше примеров мы предоставляем контролируемому алгоритму обучения, тем точнее он производит классификацию новых данных.
Неуправляемое обучение, это еще один тип машинного обучения, которое основывается на предоставлении алгоритму неразмеченных данных и позволяет ему самостоятельно находить шаблоны.
Вы предоставляете просто входные данные, и позволяете машине делать выводы и находить шаблоны.
Этот тип обучения может быть полезен для кластеризации данных, когда данные группируются в соответствии с тем, насколько они похожи на своих соседей и отличаются от всего остального.
Как только данные кластеризованы, можно использовать различные методы для изучения этих данных и поиска шаблонов.
Например, можно создать алгоритм машинного обучения с постоянным потоком сетевого трафика и позволить ему независимо изучать активность в сети – базовый уровень, нормальную сетевую активность, а также выбросы и, возможно, злонамеренное поведение, происходящее в сети.
Третий тип алгоритма машинного обучения, обучение с подкреплением, это алгоритм машинного обучения с набором правил и ограничений и позволяет ему учиться достигать целей.
Вы определяете состояние, желаемую цель, разрешенные действия и ограничения.
И алгоритм выясняет, как достичь цели, пробуя различные комбинации разрешенных действий, и его награждают или наказывают в зависимости от того, было ли решение правильным.
Алгоритм изо всех сил старается максимизировать свои вознаграждения в рамках предусмотренных ограничений.
И вы можете использовать обучение с подкреплением, чтобы научить машину играть в шахматы или преодолеть какие-либо препятствия.
Таким образом, машинное обучение – это широкая область, и мы можем разделить его на три разные категории: контролируемое обучение, неконтролируемое обучение и обучение с подкреплением.
И есть много разных задач, которые мы можем решить с помощью них.
В контролируемом обучении, в наборе данных есть метки, и мы используем их для построения модели классификации данных.
Это означает, что, когда мы получаем данные, у них есть метки, которые говорят о том, что представляют эти данные.
В примере с сердцем, у нас была таблица с метками, это сердечный ритм, возраст, пол и вес.
И каждой такой метке соответствовали значения.
При неконтролируемом обучении у нас нет меток, и мы должны обнаружить эти метки в неструктурированных данных.
И такие вещи обычно делаются с помощью кластеризации.
Обучение с подкреплением – это другое подмножество машинного обучения, и оно использует вознаграждение для наказания за плохие действия или вознаграждение за хорошие действия.
И мы можем разделить контролируемое обучение на три категории: регрессия, классификация и нейронные сети.
Модели регрессии строятся с учетом взаимосвязей между признаками x и результатом y, где y – непрерывная переменная.
По сути, регрессия оценивает непрерывные значения.
Нейронные сети относятся к структурам, которые имитируют структуру человеческого мозга.
Классификация, с другой стороны, фокусируется на дискретных значениях, которые она идентифицирует.