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

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

Могут ли компьютеры учиться?

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

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

Например, умные колонки, такие как Amazon Echo и Google Nest, могут слышать наши голосовые инструкции, интерпретировать звуки как слова, извлекать значение слов и затем пытаться выполнить наш запрос. Мы можем попросить его включить музыку, ответить на вопрос или приглушить свет.

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

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

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

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

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

Нейронные сети и глубокие нейронные сети

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

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

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

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

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

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

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

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

Различные типы обучения

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

Контролируемое обучение

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

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

Неконтролируемое обучение

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

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

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

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

Это требует обратной связи от людей, которые «оценивают» усилия системы в зависимости от того, оказывает ли её поведение положительное или отрицательное влияние на достижение поставленной цели.

Практическая сторона искусственного интеллекта

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

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

Torch — это фреймворк машинного обучения с открытым исходным кодом, известный своей скоростью.

Scikit-Learn — это набор инструментов для машинного обучения, особенно для использования с Python.

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

Keras — это фреймворк для глубокого обучения с интерфейсом Python.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

wp-puzzle.com logo