Openbravo-rus.ru

Образование по русски
4 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Машинное обучение и нейронные сети разница

Искусственный интеллект, машинное обучение и глубокое обучение: в чём различия

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

Мы все знакомы с термином «искусственный интеллект» (ИИ). О нём снято много фильмов — «Терминатор», «Матрица», «Из машины». Но вы, наверное, слышали и о других терминах — машинное обучение (Machine Learning) и глубокое обучение (Deep Learning). Их иногда используют как синонимы искусственного интеллекта, в результате не видно разницы между искусственным интеллектом, машинным обучением и глубоким обучением.

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

Различия между терминами

Американский информатик Джон Маккарти, впервые употребив термин «искусственный интеллект» в 1956 году, понимал под этим компьютеры, способные выполнять характерные для человеческого интеллекта задачи: планирование, понимание языка, распознавание объектов и звуков, умение обучаться и решать задачи.

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

Машинное обучение — это процесс реализации искусственного интеллекта.

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

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

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

Глубокое обучение — один из множества подходов к машинному обучению.

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

Глубокое обучение вдохновлено строением человеческого мозга и взаимодействием нейронов. Появились алгоритмы, имитирующие организацию головного мозга — искусственные нейронные сети (ИНС).

ИНС состоит из искусственных нейронов, которые взаимодействуют между собой. Они расположены слоями — каждый слой реагирует на опредёленные признаки, например, изгибы и границы фигур при распознавании изображения. Именно из-за множества слоёв обучение называется глубоким.

Искусственный интеллект и интернет вещей неразрывно связаны

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

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

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

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

Развитие ИИ также будет способствовать внедрению интернета вещей и приведёт к стремительному росту обеих областей.

С помощью интернета вещей искусственный интеллект совершенствуется. Благодаря искусственному интеллекту интернет вещей становится доступным для человека.

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

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

Объединение технологических достижений

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

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

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

Мнение автора и редакции может не совпадать. Хотите написать колонку для «Нетологии»? Читайте наши условия публикации. Чтобы быть в курсе всех новостей и читать новые статьи, присоединяйтесь к Телеграм-каналу Нетологии.

Машинное обучение и нейронные сети разница

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

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

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

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

Прежде всего, вычислительная машина — это оборудование (процессор, память и т. д.).

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

«Классическая программа» (назовём это так) отличается от нейросети тем, что она создаётся по принципу разделения большой задачи на всё более маленькие отдельные подзадачи до тех пор, пока эти отдельные подзадачи не окажутся настолько простыми, что их можно описать в виде элементарных арифметических и логических действий. Чтобы написать такую программу, программисту нужно самостоятельно осмыслить поставленную задачу, самостоятельно придумать решение и потом аккуратно и максимально точно и безошибочно это решение записать в виде программы. Если просматривать алгоритм этой программы, то легко проследить ход мышления программиста, который этот алгоритм создавал. Эта программа последовательна и понятна: «сперва нужно сделать первое, затем второе, затем, если вот так, то нужно сделать третье, если не так, то нужно сделать четвёртое».

Читать еще:  План обучения английскому языку

Программа, которая предствляет собою нейросеть, выглядит совсем иначе. Если просматривать алгоритм нейросети, то он выглядит как миллионы коротких «циклов» (миллионы повторов, каждый из повторов состоит из небольшого количества простых команд), в которых не прослеживаются никакой конкретной мысли, никакой логики. Невозможно понять ни что должна делать эта нейросеть, ни как она будет это делать, непонятно на чём основывается принятие решений, что именно учитывается во время работы. Даже если потратить десять часов на изучение алгоритма, вряд ли что-то прояснится. То есть, на первый взгляд это просто бессмысленные многократно повторящиеся команды, которые берут какие-то случайные числа, что-то с ними делают (соврешенно непонятно зачем) и совершенно неясно, как из этого получается что-то осмысленное.

И поначалу необученная нейросеть действительно будет делать что-то практически полностью бессмысленное. Но во время обучения миллионы этих «случайных» чисел начнут обретать какой-то смысл. Причём чаще всего никто (включая создателей нейросети) не знает, какой именно смысл заключён в каком-нибудь конкретном числе.

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

Deep learning & Machine learning: в чем разница?

В чем разница между Deep learning и Machine learning? Насколько они похожи или отличаются друг от друга? Насколько они выгодны для бизнеса? Давайте разберемся!

Machine learning и Deep learning – это 2 подмножества искусственного интеллекта (ИИ), которые активно привлекают к себе внимание уже на протяжении двух лет. Если вы хотите получить простое объяснение их различий, то вы в правильном месте!

Прежде всего, давайте посмотрим на некоторые интересные факты и статистику Deep learning и Machine learning:

  • Оклад AI-специалиста приравнивается к стоимости Roll-Royce Ghost Series II 2017 года (согласно New York Times);
  • Есть ли вероятность потерять работу из-за прогресса AI? Согласно недавнему отчету PwC – возможно. Они предполагают, что примерно к 2030 г. 38% всех рабочих мест в США могут быть заменены искусственным интеллектом и технологиями автоматизации;
  • Первая AI-программа “The Logic Theorist” была создана в 1955 году компанией Newell & Simon (World Information Organization);
  • Исследователи прогнозируют, что к 2020 году 85% взаимодействия с клиентами будет осуществляться без участия человека (Gartner);
  • Рынок искусственного интеллекта или машинного обучения вырастет до 5,05 млрд долларов к 2020 году (Motley Fool);

Любопытно? Теперь попытаемся разобраться, в чем на самом деле разница между Deep learning и Machine learning, и как можно использовать их для новых бизнес-возможностей.

Deep learning & Machine learning

Должно быть, вы имеете элементарное представление о Deep learning и Machine learning. Для чайников представляем несложные определения:

Machine learning для чайников:

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

Deep learning для чайников:

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

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

Deep learning & Machine learning: в каких случаях используется Machine learning

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

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

Deep learning & Machine learning: в каких случаях используется Deep learning

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

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

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

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

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

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

Что мы узнали:

  1. Основное различие между глубоким обучением и машинным обучением обусловлено тем, как данные представляются в систему. Алгоритмы машинного обучения почти всегда требуют структурированных данных, в то время как сети глубокого обучения полагаются на слои ANN (искусственные нейронные сети).
  2. Алгоритмы машинного обучения созданы для того, чтобы «учиться» действовать, понимая помеченные данные, а затем использовать их для получения новых результатов с большим количеством наборов данных. Однако, когда результат получается неверным, возникает необходимость их «доучивать».
  3. Сети глубокого обучения не требуют вмешательства человека, так как многоуровневые слои в нейронных сетях помещают данные в иерархии различных концепций, которые в конечном итоге учатся на собственных ошибках. Тем не менее, даже они могут быть ошибочными, если качество данных недостаточно хорошее.
  4. Данные все решают. Именно качество данных в конечном итоге определяет качество результата.

То, чего не было в примере, но стоит отметить:

  1. Поскольку алгоритмы машинного обучения требуют маркированных данных, они не подходят для решения сложных запросов, которые включают в себя огромное количество данных.
  2. Хоть в данном случае мы увидели применение Deep learning для решения незначительного запроса, — реальное применение нейронных сетей глубокого обучения происходит в гораздо большем масштабе. Фактически, учитывая количество слоев, иерархий и концепций, которые обрабатывают эти сети, Deep learning подходит только для выполнения сложных вычислений, а не простых.
  3. Оба эти подмножества ИИ так или иначе связаны с данными, что позволяет представлять собой определенную форму «интеллекта». Однако следует знать, что глубокое обучение требует гораздо больше данных, чем традиционный алгоритм машинного обучения. Причиной этого является то, что сети Deep learning могут идентифицировать различные элементы в слоях нейронных сетей только при взаимодействии более миллиона точек данных. Алгоритмы машинного обучения, с другой стороны, способны обучаться по заранее запрограммированным заданным критериям.
Читать еще:  Специалист рся обучение бесплатно

Надеемся, приведенный пример и его объяснение позволили вам понять различия между Machine learning и Deep learning. Т.к. это объяснение для чайников, то здесь не употреблялись профессиональные термины.

Теперь пришло время забить последний гвоздь. Когда следует использовать глубокое обучение или машинное обучение в своем бизнесе?

Когда использовать Deep learning в бизнесе?

  • Если у вас огромное количество данных;
  • Если вам приходится решать задачи, слишком сложные для машинного обучения;
  • Если у вас есть достаточно вычислительных ресурсов и возможность на управление оборудованием и программным обеспечением для обучения нейронных сетей Deep learning.

Когда использовать Machine learning в бизнесе?

  • Если у вас есть данные, которые можно структурировать и использовать для обучения алгоритмов Machine learning;
  • Если вы хотите использовать преимущества ИИ, чтобы обогнать конкурентов;
  • Лучшие решения Machine learning могут помочь автоматизировать различные бизнес-операции, включая проверку личности, рекламу, маркетинг и сбор информации, а также использовать большие возможности в будущем.

Подведем итоги:

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

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

Как работают нейронные сети и что такое машинное обучение

Машинное обучение — путь к искусственному интеллекту

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

Machine Learning — новый инструмент, новый путь инженерии. Мы занимаемся машинным обучением в двух направлениях: улучшаем свои продукты — например, поисковик, краеугольный камень нашего бизнеса, — и строим совершенно новые продукты, которые раньше были просто невозможны. Есть несколько методов машинного обучения, которые сегодня применяются на практике».

3 метода

«Supervised Learning — один из важнейших типов. Представьте, если бы вы учились играть в шахматы, а за вашей спиной стоял бы гроссмейстер и нашептывал, как ходить. Конкретный пример: автоматическая сортировка спама в вашей почте. Раньше программисты задавали определенные правила, например, если в тексте слово viagra написанно со странными символами — это на 99 процентов спам. Теперь же алгоритм изучает архив писем, которые были помечены как спам и не спам. Он делает это снова и снова и медленно, но верно становится лучше и лучше, определяет спам все точнее. Это очень успешная техника — и костяк многих систем».

Reinforcement Learning основывается на отрицательном и положительном отклике, или, иначе говоря, на опыте. Если приводить пример с шахматами: представьте, если бы вы учились играть, каждый раз проигрывали, но делали из этого выводы.

Метод спонтанного обучения (Unsupervised Learning) работает без вмешательства со стороны экспериментатора. Машина производит анализ структур данных, вычленяя из них какие-то общие паттерны. Мы, люди, владеем всеми тремя обозначенными способами. Но машины пока освоили неплохо только первый, и постепенно мы стараемся научить двумя другим.

Как именно учатся машины

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

Вообще, вся задача вписывается в линейный график Wx + B — это и есть искомая модель. Мы можем подставлять под значения W и B любые числа, которые берем из наблюдений: например, студент занимался два с половиной часа и получил оценку 80; затем мы обращаемся к другому наблюдению и будем продолжать заносить данные, сокращая ошибку прогноза. По прошествии времени с накоплением опыта мы получим график, который будет отображать общую тенденцию».

«Такая очень упрощенная система и есть суть программы машинного обучения. Одна ее часть — это входящие данные, математическая модель и набор параметров (чаще просто набор чисел); вторая — алгоритм, который сравнивает входящие данные и постоянно уточняет прогноз. Чтобы система совершенствовалась, она должна пройти этот путь миллионы и миллиарды раз. Поэтому мы только недавно пришли к ее созданию: компьютеры стали для нее достаточно мощными. И все равно они по-прежнему очень медленные ученики.

Другая проблема машинного обучения: мы должны иметь миллионы и миллионы примеров, тех самых входящих и исходящих данных. Сама система — это что-то вроде ракеты: умники вроде меня могут часами говорить о том, какая у нее должна быть форма, но она никуда не полетит без топлива. Эти данные — как раз оно и есть».

Что такое глубинное обучение

«Иметь дело с простыми уравнениями — это одно, но как, например, определить, что изображено на картинке? Нужна намного более сложная математическая модель. И тут на помощь приходит Deep Learning — специфический тип машинного обучения. По сути, это то, что называется искусственной нейронной сетью. Концепцию придумали еще в 1930-х, но важные математические расчеты для нее провели только в 1980-х. Главная особенность глубинного обучения в том, что оно основано не на одной функции, а на большом наборе.

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

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

В нейронной сети Google вместо отдельных клеток-нейронов крошечные математические функции — может быть, чуть сложнее, чем Wx + B. Каждая из них ориентируется на множество вокруг. Миллионы и миллиарды математических функций работают вместе, и чем лучше они натренированы на это, тем сильнее система.

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

Как это применяется на практике

Мы не просто говорим о том, что нас ждет в будущем. Мы вовсю внедряем эти технологии. Например, распознавание речи в Google Now основано на Machine Learning, и за последнее время оно очень серьезно улучшилось. Мы также научились определять, что изображено на картинках, чтобы вам не приходилось вручную расставлять теги под фото в Google Drive. Мы используем эту технологию в машинном переводе: если раньше он по большей части основывался на правилах грамматики, то теперь на опыте — так же, как учат язык дети. По похожему принципу работает функция Smart Reply, которая составляет автоматические короткие ответы, если во входящем письме обнаруживается вопрос. Сейчас до 10% ответов в Gmail приходятся на эту функцию.

В ноябре 2015 года мы запустили TensorFlow — бесплатный софт, выпущенный под свободой лицензией Apache 2.0, который прекрасно подходит для машинного обучения и для проектов, связанных с Deep Learning. Мы хотели, чтобы эта система была бы достаточно гибкой как для исследований, так и для внедрения в продукты. Часто бывает, у кого-то появляется классная идея, как использовать машинное обучение для улучшения продукта, но чтобы ее внедрить, придется переписывать все с нуля. А этот инструмент позволяет улучшать продукты, не переделывая все полностью.

Читать еще:  Обучение в компании яндекс

Машинное обучение и нейронные сети разница

Об авторе: Андрей Беляев, технический директор (CTO) исследовательской компании Neurodata Lab.

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

В чем разница между этими названиями?

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

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

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

Получается, что машинное обучение — это обучение ИИ

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

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

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

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

Такие алгоритмы можно научить решать задачи любой сложности?

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

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

А что насчет глубокого обучения? Чем оно отличается от машинного?

Как машинное обучение является подвидом искусственного интеллекта, так и глубокое обучение является подвидом машинного (см. картинку в начале статьи). В глубоком обучении используются те же подходы: алгоритму дают много данных и «ругают» его за ошибки. Разница здесь в том, что сами алгоритмы глубокого обучения устроены гораздо сложнее и часто используют более серьезные математические модели. Сейчас под алгоритмами глубокого обучения практически всегда подразумевают нейронные сети.

Нейронные сети? Как те, что в мозгу у человека?

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

И все же можно как-то сравнить процессы внутри нейросети с деятельностью мозга?

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

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

А как происходит процесс обучения?

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

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

Что значит «поощрять» и «штрафовать» нейросеть?

С математической точки зрения нейросеть — это функция с большим количеством параметров. Штрафование этой функции за неверное определения лица — это когда мы, упрощенно говоря, корректируем работу функции таким образом, чтобы в будущем она меньше ошибалась. Соответственно, поощрение нейросети — это когда мы ее просто не штрафуем.

Во всех примерах вы рассказываете про конкретные задачи. А можно ли нейросеть научить думать, как человек?

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

Подписывайтесь и читайте нас в Яндекс.Дзене — технологии, инновации, эко-номика, образование и шеринг в одном канале.

Ссылка на основную публикацию
Adblock
detector