5 выводов из опыта больших данных, Испания, 2017 г.

Недавно у меня была возможность посетить Big Data Spain 2017, одну из трех крупнейших конференций в Европе по большим данным, искусственному интеллекту, облачным технологиям и цифровой трансформации. Он проходил 16 и 17 ноября 2017 года. Со спикерами из Google, Uber, Amazon, Facebook, Spotify и других ведущих компаний обсуждались темы от современных инфраструктур больших данных до глубокого обучения и от блокчейна до байесовского вывода. Поскольку переговоры проходили в 4 параллельных направлениях, я напишу лишь краткое изложение и ключевые моменты тех, на которых я присутствовал. В конце поста вы найдете 5 моих выводов об этой конференции.

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

5 ключевых выводов

TL; DR: для тех из вас, кто любит бегло читать и тратить не более 1-2 минут, вот 5 ключевых выводов из этих двух дней разговоров и разговоров:

  1. Активное обучение (с участием человека) остается здесь, чтобы остаться, когда ИИ выйдет на передний план в повседневных задачах рабочих.
  2. Обучение с подкреплением, применяемое в видеоиграх, - это лишь верхушка айсберга. Вскоре мы увидим, что RL применяется в производстве для решения многих реальных проблем с использованием Deep Learning.
  3. Автоматическое машинное обучение, т. е. создание инструментов машинного обучения, которые могут создавать модели машинного обучения, которые могут решить задачу, является актуальной тенденцией. Специалисты по обработке данных смогут быть более гибкими и сосредоточиться на менее повторяющихся задачах.
  4. Глубокое обучение активно используется в прогнозировании временных рядов. Сочетание различных инструментов демонстрирует очень хорошие результаты для категоризации событий в суммированных / мультимодальных сигналах.
  5. Потоковая передача, похоже, сейчас является реальным делом в инженерии данных, мы почти не слышим о пакетной обработке. Все конвейеры данных в настоящее время построены на потоковой передаче, и все переключаются или недавно перешли на архитектуру каппа, где поток часто является основным элементом / точкой фокусировки.

1 день

Человек в цикле: шаблон проектирования для управления командами, использующими машинное обучение - Пако Натан (директор учебной группы, O’Reilly)

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

За последние несколько десятилетий сочетание больших данных (1997 г.) + больших вычислений (~ 2006 г.) + больших моделей (~ 2009 г.) создало среду, в которой ИИ может быть интегрирован в реальные продукты. Но в уравнении отсутствует компонент: человеческое равенство. Таким образом, вводится Активное обучение (человек в цикле), который, в общем, является частным случаем полууправляемого обучения. Основная идея заключается в том, чтобы получить помощь человека, когда алгоритм не слишком уверен в определенных прогнозах (также называемых крайними случаями). Преимущество активного обучения по сравнению с обучением с учителем состоит в том, что первое требует меньше данных, помеченных вручную, поскольку оно может обрабатывать решения о маршрутизации (автоматизация).

В медиа есть ниша, эта вертикаль не охватывает передовые технологии искусственного интеллекта. Примеры:

  • Расшифровка (обучающих) видеороликов
  • Пополнение знаний искусственно созданными онтологиями.
  • Устранение неоднозначности контекстов

Компании, использующие активное обучение: CrowdFlower (активирует сбор данных для обратной связи с моделями машинного обучения, которые самостоятельно сообщают о точности ниже определенного порога), Stitch Fix (персонализация продукта), Clara Labs (полуавтоматическое назначение ставок), B12 (автоматический бизнес-дизайн , только люди последней мили).

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

Ресурсы:

  • Nbtransom (https://github.com/ceteri/nbtransom) - это инструмент для программного чтения / записи ячеек в записных книжках Jupyter, который предвосхищает будущие совместные функции в Jupyter. Используется O’Reilly для записных книжек, используемых для управления конвейерами машинного обучения.
  • prodigy (https://prodi.gy/) - это инструмент аннотации, основанный на активном обучении и помогающий пометить примеры, связанные с распознаванием сущностей, обнаружением намерений или классификацией изображений.

Идея на вынос:

Активное обучение (с участием человека) придет сюда, чтобы остаться, как только ИИ выйдет на передний план в повседневных задачах рабочих. Это не означает замену персонала, а использование ИИ благодаря человеческому опыту. Вот почему большая команда становится частью формулы Big Data + Big Compute + Big Models.

Совместная игра: большие данные за пределами JVM со Spark и т. Д. - Холден Карау, Committer Apache Spark, Google

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

Холден делится прагматическим наблюдением за текущим состоянием экосистемы больших данных и тем фактом, что большинство инструментов обработки данных построено на JVM, тогда как библиотеки наук о данных обычно реализованы на Python. Обычно используется PySpark, но он имеет серьезные проблемы с производительностью из-за конструкции.

Итак, как преодолеть разрыв между этими двумя мирами? Apache Arrow на данный момент является наиболее многообещающим решением для извлечения данных из JVM. Некоторые другие проекты, такие как Apache Beam или Dask, заслуживают внимания.

Идея на вынос:

Пользователи PySpark, такие как мы, должны следить за Apache Arrow, обещая улучшения производительности в будущем. Во-вторых, узнайте, как использовать Dask как можно скорее.

Глубокое обучение с подкреплением: среда обучения Starcraft - Хема Парреньо Пикерас, специалист по данным, BBVA

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

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

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

Мы должны думать о совместной работе людей и машин.

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

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

Цель обучения с подкреплением - максимизировать политику, называемую поведением, путем обучения из окружающей среды. Чем глубже вы идете, тем больше политики. Starcraft II был выпущен как среда RL. Довольно сложно представить агентам сложные политики. Atari-net была первой базовой версией, простой адаптацией архитектуры, успешно использовавшейся для сред эталонного тестирования Atari и DeepMind Lab вместо мини-игр. Сетевые сети необходимы из-за огромного количества возможных действий, которые можно предпринять. Вводятся пространственные политики, которые представляют собой совершенно другую парадигму: больше не принимать решения типа «иди направо, поднимись, сделай что-нибудь».

Джема внесла свой вклад в семинар StarCraft II AI 2017 (Blizzard + DeepMind), представив сценарий агента, работающего на карте HallucinIce SC2 с юнитами Archon, изощренно исследуя карту и как можно раньше испытывая галлюцинации, что привело к состоянию партитуры по искусству:

Интересный ресурс: https://github.com/soygema. Gema создает сообщество о курируемом сообществом сообществе мини-игр pySC2.

Идея на вынос:

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

Реляционные - это новые большие данные - Мигель Анхель Фахардо и Даниэль Домингес, Geoblink

Этот доклад начался с четкого и подробного напоминания об истории баз данных, теоремах и том, как мы к ним пришли, почему появился NoSQL, что именно он означает и что решает. Затем утверждал, что благодаря улучшениям, внесенным в распространение СУБД в последние годы, SQL догнал и теперь является серьезной альтернативой для решения тех же проблем, что и проблемы, решаемые с помощью NoSQL. Такие новые проекты, как Citus или PostgresXL, которые позволяют распространять PostgreSQL, заслуживают рассмотрения.

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

Интересные ресурсы: https://www.citusdata.com/ и https://www.postgres-xl.org/

Создание Google ML Engine с нуля на AWS с помощью графических процессоров, Kubernetes, Istio и TensorFlow - Крис Фрегли, основатель и инженер-исследователь, PipelineAI

PipelineAI сосредотачивается на конце конвейера обработки данных, который направлен на перенос математических моделей в производство. Крис утверждает, что «полностью меняет систему Google Cloud ML, которая запускает модели в производство», чтобы предложить «Стандартное время выполнения для каждого прогнозирования в реальном времени на предприятии». Они не являются сторонними сервисами, они могут развернуть свои сервисы в любой облачной системе. Их технология основана на популярных ныне Kubernetes и istio.io.

Крис Фрегли предлагает мышление сначала производство / обслуживание: непрерывное развертывание с ноутбуков. Он отметил, что последние исследования можно найти здесь, в TensorFlow Lite и Nvidia Tensor-RT.

Предлагаемые решения очень разнообразны в зависимости от потребностей клиента, но основная идея состоит в том, чтобы записать bin в докер все необходимое, чтобы сделать модель исполняемой. Это позволяет легко изменить тип среды выполнения (графический процессор может не работать так быстро, как центральный процессор). Модели могут потреблять данные из тем Kafka. Возможно развертывание непосредственно из записной книжки, что сокращает время итерации команды. Откатиться очень просто. Расходы тоже важны: они предлагают автоматический переход между облаками (с AWS на GC, наоборот), чтобы в любой момент получить лучшее предложение среди них.

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

Идея на вынос:

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

На пути к биологически правдоподобному глубокому обучению - Николай Манчев, специалист по данным @ IBM

Николай обращается к исследованию производительности на уровне человека. Вопрос в том, работает ли человеческий разум как AI NN или нет. Рабочая лошадка NN - обратное распространение, но в человеческом мозге происходит нечто совершенно иное: синаптические изменения в ранних слоях должны зависеть от связей в нижележащих слоях. Но нет никаких свидетельств того, что подобный процесс происходит в неокортексе. «Процедура обучения в ее нынешнем виде не является правдоподобной моделью обучения».

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

Были предложены некоторые исправления, чтобы мозг научился улучшать современные нейронные сети. В некоторых примерах используется локальное обратное распространение путем удаления синаптического переноса веса [LCTA14] и с использованием многосекционных нейронов [GLR17]. Во-первых, сетевые сети обычно работают с большим объемом помеченных данных, но мозг почти постоянно обучается без учителя и нуждается в очень небольшом количестве примеров для хорошего обобщения. Во-вторых, передача знаний позволяет решать невидимые проблемы, используя решения из похожих видимых проблем. Что касается этого второго пункта, было проведено некоторое исследование с использованием НС, обучающихся у людей, играющих в игры в течение короткого времени, а затем позволяющих машине продолжать играть (актерский подход); результаты намного лучше, чем у Deep Q-Networks.

Очень интересные примеры того, как ИИ ужасно терпит неудачу в задачах, которые люди берут очень быстро: игра Frostbite от Atari (ИИ испытывает проблемы, когда требуется расширенный во времени план, чтобы агент мог выполнить промежуточную цель) и The Characters Challenge (огромное количество примеров необходимы для хорошей работы).

Вы можете найти еще много интересных механизмов, заимствованных нейробиологией, таких как воспроизведение опыта, рабочая память, эффективное обучение, галлюцинации, планирование и т. Д. Вам следует взглянуть на HKSB17, ИИ, вдохновленный нейробиологией http: // www .cell.com / нейрон / pdf / S0896-6273 (17) 30509-3.pdf и Создание машин, которые учатся и думают, как люди https://arxiv.org/pdf/1604.00289. pdf

Идея на вынос:

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

Большие данные, большое качество? - Ирен Гонсалвес, технический менеджер по продукту в Spotify

Ирен рассказывает о том, как они обеспечивают качество данных в Spotify, узнав, насколько важен этот «трудный путь» (тяжелое лето 2015 года, полное инцидентов). Они достигли пределов Kafka и Hadoop, и данные приходили с опозданием почти на 1 день.

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

  1. Своевременно: данные доступны для использования в указанном SLO.
  2. Правильность: данные верны в отношении некоторых спецификаций.
  3. Полнота: доступны все данные, необходимые для решения определенного бизнес-кейса.
  4. Согласованность: все данные в разных системах синхронизированы.

Есть несколько инструментов, которые Spotify создали для управления качеством данных:

  1. DataMon: предупреждает владельцев конвейеров и инженеров, когда данные не соответствуют указанным SLO. Он контролирует конечные точки (хранилище, в котором производимые данные сохраняются и из них потребляются), компоненты (метаданные, серверные части, библиотеки…) и системы (группа из двух предыдущих). Это помогает обнаруживать восходящие зависимости, задерживающие данные. Он предоставляет информацию об инцидентах с данными, к кому обращаться, дополнительные документы…

2. Счетчики данных: собирают метрики, поступающие из различных сред обработки данных (таких как DataFlow или Hadoop). Это помогло им перейти на Google Cloud. В обе системы добавлены метрики для определения согласованности (одинаковый подсчет данных на обеих платформах). Это может помочь обнаружить мошенников (одновременное воспроизведение большего числа плейлистов).

3. МетриЛаб. правила поверх счетчиков данных (если количество воспроизведенных списков воспроизведения увеличивается на X%…). Этот инструмент позволяет очень просто обнаруживать аномалии. Они отказываются от использования машинного обучения, потому что хотели использовать объяснимые алгоритмы и снизить частоту ложных срабатываний.

Что дальше у специалистов по обработке данных Spotify? Создайте библиотеку алгоритмов для обнаружения аномалий (ML4ALL). Обеспечьте инфраструктуру для «plug & play» большего количества алгоритмов. Предоставьте рекомендации по параметрам для настройки алгоритмов. Стратегия на стороне Spotify: 1. Иметь метрики, чтобы понять, когда набор данных считается «хорошим» качеством. 2. Определите, какие наборы данных хорошего качества.

Идеи на вынос:

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

К 2025 году объем данных увеличится в 10 раз (163ZB / год). Критические данные 20% и 10% сверхкритические данные.

Основы потокового SQL - полюбите теорию потоков и таблиц - Тайлер Акидау, старший инженер-программист в Google

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

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

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

Идея на вынос:

Таблицы и потоки во многом похожи и могут использоваться взаимозаменяемо.

Наука о данных для ленивых, автоматизированное машинное обучение - Диего Уэлтес, Python Engineer @ RavenPack

В этом выступлении Дж. Диего Уэлтес представляет некоторые инструменты, которые помогают специалистам по анализу данных не тратить свое время и энергию на повторяющиеся задачи. Обычно повторяющиеся задачи происходят между очисткой данных и проверкой модели. Существуют тысячи функций и параметров, которые необходимо изменить, и их нужно попытаться найти наилучшую их комбинацию, которая максимизирует оценку модели. Есть некоторые инструменты, которые могут помочь автоматизировать часть этого конвейера, такие как TPOT, Auto-Sklearn, Auto-Weka, Machine-JS и DataRobot среди других.

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



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

В FindHotel мы кратко опробовали один из этих инструментов в прошлом. Они действительно полезны, когда предоставляется небольшой набор данных, проблема четко определена и данные чистые (например, Kaggleish csv). Эта идеальная среда далека от нашей при выявлении возможностей: наши данные очень редки, у нас их много, и очистка данных важна, прежде чем даже думать об оценщиках. Мы внимательно следим за этими технологиями, так как уверены, что в какой-то момент мы примем их использование.

Интересные ресурсы: http://rednuht.org/genetic_walkers/and« http://rednuht.org/genetic_cars_2/

Идея на вынос:

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

День 2:

Пример использования Deep Learning для обнаружения конечного потребления воды - Роберто Диас, руководитель исследования Data Science @ Treelogic и Хосе Антонио Санчес, исследователь @ Treelogic

Роберто и Хосе Антонио представляют интересную задачу, для решения которой они использовали нейронные сети. Их клиент, Canal de Isabel II, крупнейший дистрибьютор воды в Испании, хотел понять спрос на воду, чтобы разработать более эффективную политику управления. Датчики измерения можно установить в любое устройство, но это будет очень дорого и сложно. Решение основано на установке одной основной системы учета (в большинстве домов она уже есть) и использовании математических моделей для моделирования потребности в воде на всех устройствах.

Источник данных, который им был предоставлен, состоит из 15 миллионов часов за 9 лет, что в сумме составляет 35 миллионов событий. Данные были помечены гибридным способом: вручную операторами, которые классифицируют события, связанные с водой, с одной стороны, и специальный алгоритм - с другой. Это было сделано потому, что оператор может пометить данные только за 1 неделю за 1 час. Чтобы преобразовать импульсы счетчика воды временного ряда в события, они использовали скользящие средние скользящие средние. Затем они построили модели машинного обучения, чтобы классифицировать эти события. Для этой задачи были оценены SVM и нейронные сети. Они не могли использовать предварительно обученные сети, поскольку никто никогда не публиковал данные о весах сетей, обученных для этой же цели.

Как видно из рисунка, они пришли к выводу, что NN превосходит SVM по каждой из 8 возможных меток. В среднем для счетчиков точности 1L SVM дает точность 67,41%, тогда как NN имеет точность 81,78%. Для счетчиков 0,1 л результаты составляют 84,78% и 91,19% соответственно.

Интересные ресурсы: https://www.canaldeisabelsegunda.es/es/galeria_ficheros/comunicacion/documentacion/publicaciones/Cuaderno25_IDi.pdf

Идея на вынос:

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

Подробное объяснение распределенного обучения Apache MXNet - Вячеслав Ковалевский, инженер-разработчик программного обеспечения в Amazon Deep Learning

Я процитирую только одно предложение из этого замечательного выступления: «Распределенное обучение похоже на параллельное программирование. Если можешь обойтись без, обойди и без! » Но если вам это абсолютно необходимо, потому что вы наверняка столкнулись с узким местом, Apache MXNet с режимом кластера с несколькими машинами может быть вашим решением, и эта презентация станет отличной отправной точкой.

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

MXNet поддерживает только параллелизм данных и имеет 3 основных логических компонента:

  1. Планировщик: логическая сущность, отвечающая за раскрутку самого кластера и обеспечение того, чтобы кластер мог начать обучение. Не планирует работу, а просто настраивает кластер.
  2. Рабочие: хранит модель и отвечает за ее обучение и отправку обновлений на серверы. Ожидается 2 или более, если мы хотим обучаться с использованием распределенных вычислений.
  3. Серверы: также известные как ps-lite / KVStore / серверы параметров… Его основная функция - хранить саму модель целиком. Обычно 1 более чем достаточно, если только модель не очень большая.

Процесс взаимодействия между компонентами для раскрутки кластера: сервер запрашивает планировщик для добавления в кластер. Планировщик подтверждает получение сообщения. Рабочий запрашивает планировщика для добавления в кластер. Когда все серверы и рабочие запросили добавление в кластер, планировщик подтверждает агрегирование. Каждая логическая сущность говорит: «Я достиг барьера»; когда это происходит, значит, все компоненты готовы. Затем планировщик объявит, что обучение можно начинать. Планировщик засыпает во время тренировки.

Интересные ресурсы: https://github.com/blog-kovalevskyi-com/distributed_training_presentation

Идея на вынос:

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

Современный анализ временных рядов с помощью глубокого обучения - Хавьер Ордоньес, ведущий специалист по данным @ StyleSage

С моей точки зрения, этот доклад был одним из самых интересных в этом году в Испании по большим данным. Хавьер представил свое исследование общей глубокой структуры для распознавания активности, основанной на сверточных и повторяющихся модулях LSTM. Ему удалось продемонстрировать преимущества глубокой архитектуры, основанной на сочетании сверточных и повторяющихся слоев LSTM, для распознавания активности с носимых датчиков. Эта новая структура превзошла предыдущие результаты в наборе данных ВОЗМОЖНОСТИ классификации повседневной деятельности.

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

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

Базовый подход CNN имеет тенденцию делать больше ошибок и испытывает трудности с принятием четких решений о границах жестов. У него проблемы с определением, где жест начинается или заканчивается. В целом предлагаемая модель DeepConvLSTM работает примерно на 5% лучше, чем базовая модель.

Интересные ресурсы: https://github.com/sussexwearlab/DeepConvLSTM

Идея на вынос:

CNN - довольно хорошие автоматические создатели функций, которые фиксируют определенный характерный образец и действуют как детектор особенностей. Рекуррентные слои, такие как LSTM, могут изучать временную динамику функций, извлеченных из CNN. Таким образом, сочетание Deep CNN и LSTM обеспечивает передовую производительность в задачах мультимодальных временных рядов, таких как распознавание носимых устройств.

Посмотреть все записанные разговоры, которые происходили на Big Data Spain 2017, можно в следующем плейлисте YouTube: https://goo.gl/DdeQYQ

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