• Устройства с управлением через веб-интерфейс



      Автор: Николай Хабаров, IoT Google Developer Expert, эксперт по встраиваемым системам, DataArt.

      В этой статье я расскажу, как создать собственное устройство с веб-интерфейсом, которое будет доступно в локальной сети. Веб-интерфейс будет показывать текущие данные с датчика Si7021: температуру и влажность.

      Устройство работает на основе микроконтроллера ESP8266Wi-Fi) и прошивки DeviceHive.
      Читать дальше →
      • +12
      • 5,8k
      • 6
    • Классификация объектов в режиме реального времени



        Автор: Игорь Пантелеев, Software Developer, DataArt

        Распознавание изображений очень широко используется в машинном обучении. В этой области существует множество различных решений, однако потребностям нашего проекта ни оно из них не удовлетворяло. Нам понадобилось полностью локальное решение, которое способно работать на крошечном компьютере и передавать результаты распознавания на облачный сервис. В этой статье описывается наш подход к созданию решения для распознавания изображений с помощью TensorFlow.
        Читать дальше →
      • Управление трафиком с использованием Fiddler

        • Tutorial


        Автор: Ольга Еременко, QA Engineer

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

        В таких случаях можно использовать прокси-сервер Fiddler — промежуточное звено между клиентом (браузер, мобильное приложение и т. д.) и целевым сервером. Скорее всего, этот инструмент вам известен, но обычно говорят о нем вскользь. Мы по шагам разберем, как проверить с помощью Fiddler, что отобразится на UI при изменении запроса к серверу или возвращаемого ответа.
        Читать дальше →
        • +16
        • 5,6k
        • 4
      • Знакомые лица: алгоритмы создания «типичного» портрета


          Автор: Андрей Сорокин, Senior Developer DataArt

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

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



            Авторы: Игорь Трамбовецкий, Developer; Николай Хабаров, Embedded Expert

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

            Читать дальше →
          • Классификация звуков с помощью TensorFlow

            • Tutorial


            Игорь Пантелеев, Software Developer, DataArt

            Для распознавания человеческой речи придумано множество сервисов — достаточно вспомнить Pocketsphinx или Google Speech API. Они способны довольно качественно преобразовать в печатный текст фразы, записанные в виде звукового файла. Но ни одно из этих приложений не может сортировать разные звуки, захваченные микрофоном. Что именно было записано: человеческая речь, крики животных или музыка? Мы столкнулись с необходимостью ответить на этот вопрос. И решили создать пробные проекты для классификации звуков с помощью алгоритмов машинного обучения. В статье описано, какие инструменты мы выбрали, с какими проблемами столкнулись, как обучали модель для TensorFlow, и как запустить наше решение с открытым исходным кодом. Также мы можем загружать результаты распознавания на IoT-платформу DeviceHive, чтобы использовать их в облачных сервисах для сторонних приложений.

            Выбор инструментов и модели для классификации


            Сначала нам нужно было выбрать ПО для работы с нейронными сетями. Первым решением, которое показалось нам подходящим, была библиотека Python Audio Analysis.

            Основная проблема машинного обучения — хороший набор данных. Для распознавания речи и классификации музыки таких наборов очень много. С классификацией случайных звуков дела обстоят не так хорошо, но мы, пусть и не сразу, нашли набор данных с «городскими» звуками.
            Читать дальше →
            • +13
            • 8,1k
            • 5
          • Тестирование глазами разработчика: инструменты, мифы, ситуации

            • Tutorial


            Евгений Сафронов, Senior Developer, DataArt

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


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

            Тестирование — это проверка работоспособности программы, предмета или любой промышленной разработки. Как и в любом деле, здесь есть свои тонкости и своя философия. Она, наверное, ближе тестировщикам, которые на произведенные нами вещи смотрят деструктивно — они с самого начала думают о том, как сломать предложенный разработчиками продукт. Это не очень типично для пользователей, которые более предсказуемы и обычно находят ошибки, случайно пытаясь сделать с нашей программой что-то нетипичное. У разработчиков подход к программам в принципе другой, но мы должны помнить: тестировщики должны ломать то, что мы создали — это их хлеб.
            Читать дальше →
            • +10
            • 9,4k
            • 1
          • Обзор конференции Highload fwdays’17



              14 октября в Киеве прошла конференция Highload fwdays, посвященная высоконагруженным проектам, работе с базами данных и архитектурой, в частности, микросервисами, машинному обучению и Big Data. DataArt был спонсором конференции. А наши коллеги Игорь Мастерной (лидер Java-сообщества DataArt Киев) и Анна Колот (.NET, SharePoint Developer) рассказали о докладах, на которых они побывали.

              Детально с программой конференции можете ознакомиться тут.

              Начнем обзор с доклада Дмитрия Охонько из Facebook про Log Device. “Yet another log storage”, — подумаете вы. Вы бы были правы, но этот Log Storage на общем фоне выделяется своими создателями. Заявленная пропускная способность у Facebook — 1TB/s. И узнать, как они справляются с обработкой такого объема данных, было интересно.
              Читать дальше →
            • GDG-комьюнити на Google Developer Days



                Автор: Елена Федорова, руководитель департамента Human resource marketing, DataArt, Воронеж

                5–6 сентября в Кракове прошла большая конференция GDD — глобальный ивент, аналог ежегодной конференции Google I/O в Сан-Франциско, где анонсируются последние новинки технологий компании Google.

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


                Аззурра Рагоне — Community Specialist, Google — рассказала про развитие сообществ.

                Помимо основной конференции, по всему миру прошли более шестидесяти локальных событий — GDD Extended events, организованных Google Developer группами: прямые видеотрансляции, хакатоны, мастер-классы и т. д.

                Смотреть все видео ключевых докладов можно здесь.

                Мы попросили знакомых разработчиков и лидеров разных комьюнити поделиться впечатлениями о конференции.
                Читать дальше →
              • Машинное обучение в RapidMiner

                • Tutorial


                Дмитрий Соболев, Игорь Мастерной, Рафаэль Зубаиров

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

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

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

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

                Сейчас тройка лидеров в автоматизированном и упрощённом машинном обучении состоит из DataRobot, RapidMiner и BigMl. В этой статье мы подробно рассмотрим RapidMiner — расскажем о том, что он умеет и как может вам облегчить жизнь.
                Читать дальше →
              Самое читаемое