Добра!

Слушатели первого курса «Разработчик BigData» вышли на финишную прямую — сегодня начался последний месяц, где выжившие займутся боевым выпускным проектом. Соответственно, открыли и набор на этот достаточно непростой курс. Поэтому давайте рассмотрим одну интересную статью-заметку по современным трендам в ИИ, которые тесно связаны с BD, ML и прочим.

Поехали.

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



1. Теория глубокого обучения: демистификация работы нейронных сетей

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

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

2. Капсульные сети: имитация мозговой обработки визуальной информации

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

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

3. Глубокое обучение с подкреплением: взаимодействие с окружающей средой для решения бизнес-задач

Что это такое: тип обучения нейронной сети, которая учится, взаимодействуя с окружающей средой посредством наблюдений, действий и вознаграждений. Глубокое обучение с подкреплением (Deep reinforcement learning — DRL) использовалось для изучения игровых стратегий, таким как Atari и Go, включая известную программу AlphaGo, которая победила человека.

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

4. Генеративно-состязательные сети: комбинирование нейронных сетей для стимулирования обучения и облегчения вычислительной нагрузки

Что это такое: Генеративно-состязательная сеть (generative adversarial network — GAN) — это тип системы глубокого обучения без учителя, которая реализуется как две конкурирующие нейронные сети. Одна сеть, генератор, создает поддельные данные, которые выглядят точно так же, как реальный набор данных. Вторая сеть, дискриминатор, обрабатывает подлинные и сгенерированные данные. Со временем каждая сеть улучшается, позволяя паре изучать весь дистрибутив данного набора данных.

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

5. Обучение на неполных (Lean Data) и дополненных данных: решение задачи с маркированными данными

Что это такое: Довольно крупной проблемой в машинном обучении (в частности, в глубоком обучении) является доступность больших объемов маркированных данных для обучения системы. Два общих метода могут помочь решить эту проблему: (1) синтезировать новые данные и (2) перенести модель, подготовленную для одной задачи или области в другую. Методы, такие как перенос обучения (передача знаний, полученных из одной задачи / области в другую) или обучение с первого раза (“экстремальный” перенос обучения, происходящий лишь с одним или без соответствующих примеров) — это техники обучения на “неполных данных”(Lean Data). Аналогично, синтез новых данных посредством моделирования или интерполяции помогает получить больше данных, тем самым дополняя существующие данные для улучшения обучения.

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

6. Вероятностное программирование: языки для облегчения разработки модели

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

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

7. Модели гибридного обучения: объединение подходов к неопределенности модели

Что это такое: Различные типы глубоких нейронных сетей, таких как GAN или DRL, показали большие перспективы с точки зрения их производительности и широкого применения с различными типами данных. Однако модели глубокого обучения не моделируют неопределенность, как делают байесовские или вероятностные подходы. Модели гибридного обучения сочетают в себе два подхода, чтобы использовать сильные стороны каждого из них. Некоторыми примерами гибридных моделей являются байесовское глубокое обучение, байесовские GAN и байесовские условные GAN.

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

8. Автоматическое машинное обучение (AutoML): создание модели без программирования

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

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

9. Цифровой двойник: виртуальные копии за пределами промышленных приложений

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

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

10. Объяснимый ИИ: метод черного ящика

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

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

THE END

Как всегда ждём комментарии, обсуждения вопросы тут или, например, это можно обсудить с Ксенией на открытом уроке.

Комментарии (9)


  1. Dr_Dash
    06.03.2018 18:36
    +1

    Здравствуйте, крайне сильно интересуюсь ML, могли бы Вы мне подсказать какой именно класс задач с точки зрения ML копать:
    Имеются наборы графиков.
    В каждом наборе — 100 графиков, среди них есть монотонные и немонотонные. Монотонные подходят, немонотонные нет, т.е один признак годности налицо. Но не все монотонные подходят, есть ещё не выявленные параметры, влияющие на это, но я имею возможность указывать какие не подходят, мне это известно так сказать «извне» задачи. Кроме того, каждому набору из 100 графиков соответствует некий набор параметров — общий описатель набора, вектор или матрица — 1 на весь набор.
    Это один законченный набор.
    Таких наборов у меня уйма, и предположительно правила влияния общих описателей набора на годность того или иного графика идентичны.
    Требуется установить какие параметры и в какой комбинации влияют на пригодность того или иного монотонного графика
    Будьте добры, посоветуйте — можно ли решить эту задачу при помощи сеток и если можно какой это класс задач, куда копать?


    1. MaxRokatansky Автор
      06.03.2018 18:44

      Ого!
      Передал ваш вопрос нашим спеца по ML. Постараемся ответить как можно скорее.


    1. Rumpelstiltskin
      06.03.2018 18:58
      +2

      не уверен, что до конца понял формулировку, но может быть (1) поможет это scikit-learn.org/stable/_static/ml_map.png (2) попробовать обучить какой-нить простой лог.рег классификатор? есть два класса и набор параметров, которым нужно присвоить веса в зависимости от значимости (3) в крайнем случае, всегда можно попробовать расчехлить какой-нибудь random forest, он, вполне вероятно, чего-то добьется.
      Я, кстати, не «спец по ML», если что ;)


      1. MaxRokatansky Автор
        06.03.2018 19:00

        Конечно, ты ведь просто Бэтмен :) Спасибо, Стас :)


      1. Dr_Dash
        06.03.2018 19:24

        Благодарю за нити ) буду двигаться к выходу из лабиринта


    1. smer44
      06.03.2018 21:38

      сетки тут избыточны, немонотонные можешь сразу выкинуть из задачи, чтоб не замарачиваться можешь применить байесофский классификатор, хочешь замарачиваться — сделай логистическую регрессию, она же один нейрон с входами-параметры и выходом 1-0 (сигмоида)


      1. Dr_Dash
        07.03.2018 06:37

        Ок


  1. roryorangepants
    07.03.2018 09:34

    Простите, но перевод местами выглядит как Google Translate. Местами я понимал материал только из-за того, что и так знал, о чем речь. Несколько ошибок совсем уж плохи (например, "дистрибутив данного набора данных").
    Предполагаю, что переводил человек, который хорошо знает английский, но абсолютно не знает предметной области.


  1. voe
    07.03.2018 21:05

    А какая из ИИ может подойти для анализа сетевого трафика (netflow) для выявления разных аномалий и тенденций? Может есть что из готовых технологий?