• PyMC3 — MCMC и не только

      PyMC3 — МСМС и не только



      Привет, Хабрахабр!


      В этом посте уже упоминался PyMC3. Там можно почитать про основы MCMC-сэмплирования. Здесь я расскажу про вариационный вывод (ADVI), про то, зачем все это нужно и покажу на довольно простых примерах из галереи PyMC3, чем это может быть полезно. Одним из таких примеров будет байесовская нейронная сеть для задачи классификации, но это в самом конце. Кому интересно — добро пожаловать!


      Читать дальше →
      • +36
      • 12,2k
      • 3
    • Безопасность в IoT: Архитектура системы безопасности

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


      Читать дальше →
      • +15
      • 11,2k
      • 4
    • III Международная конференция АI Ukraine, 8-9 октября, Харьков

        Команда FlyElephant приглашает всех c 8 по 9 октября в Харьков на III Международнаю конференцию АI Ukraine, которая посвящена вопросам Data Science, Machine Learning, Big Data и Artificial Intelligence.

        На конференции будут рассмотрены темы из различных областей Data Science и Machine Learning:

        • глубокое обучение нейронных сетей;
        • компьютерное зрение;
        • обработка естественного языка;
        • рекомендательные системы;
        • использование Machine Learning в биоинформатике;
        • Big Data инструменты: Hadoop, Spark и др.

        Я буду рад видеть всех на нашем стенде, а также на докладе, в котором расскажу об инфраструктуре для работы Data Scientist’а.

        Регистрация и все подробности на сайте конференции. Для читателей нашего блога действует скидочный промокод на 7%: flyelephant.
      • Логика сознания. Часть 4. Секрет памяти мозга

          Когда с нами что-то происходит наш мозг фиксирует это, создавая воспоминания. Изменения, которые при этом происходят с мозгом, принято называть энграммами или следами памяти.

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

          Еще большую интригу в загадку памяти вносят исследования по локализации воспоминаний. Еще в первой половине двадцатого века Карл Лэшли поставил очень интересные опыты. Сначала он обучал крыс находить выход в лабиринте, а затем удалял им различные части мозга и снова запускал в тот же лабиринт. Так он пытался найти ту часть мозга, которая отвечает за память о полученном навыке. Но оказалось, что память каждый раз сохранялась, несмотря на временами значительные нарушения моторики. Крысы всегда помнили где искать выход и упорно стремились к нему.
          Читать дальше →
        • Сообщество экспертов, совместная работа над проектами и другие обновления платформы FlyElephant



            Команда FlyElephant рада анонсировать релиз платформы FlyElephant 2.0, в который вошли следующие обновления: внутреннее сообщество экспертов, совместная работа над проектами, публичные задачи, поддержка Docker и Jupyter, новое хранилище данных и работа с HPC кластерами.

            FlyElephant — платформа для исследователей данных, инженеров и ученых, которая предоставляет готовую вычислительную инфраструктуру для проведения высокопроизводительных вычислений и рендеринга, помогает находить партнеров и совместно работать над проектами, а также управлять всеми ресурсами из одного места. Платформа состоит из 3 основных компонентов:
            • Compute. Быстрый доступ к вычислительному кластеру в облаке с нужным программным обеспечением или HPC кластеру, а также автоматизация проведения расчетов.
            • Collaborate. Совместная работа над проектами и сообщество экспертов, где можно найти партнеров, чтобы вместе решить сложную задачу или получить квалифицированную консультацию.
            • Manage. Управление лицензиями, программным обеспечением, вычислительными ресурсами, шаблонами, алгоритмами, данными и результаты в одном месте.

            Среди нововведений отметим следующие:
            Читать дальше →
          • Прием докладов на конференцию по искусственному интеллекту и большим данным AI&BigData Lab



              4 июня в Одессе, наша команда FlyElephant совместно с GeeksLab будет проводить третью ежегодную техническую конференцию по искусственному интеллекту и большим данным — AI&BigData Lab.

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

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

              Отчет с прошлого года — здесь.
            • Видео-туториалы запуска вычислительных задач на Python, R, С++, Octave и Blender во FlyElephant

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

                В качестве вычислительного ресурса сейчас используется облако Azure, а пользователи могут запускать вычислительные задачи, написанные с помощью С++ (с поддержкой OpenMP), R, Python, Octave, Scilab, Java, Julia, OpenFOAM, GROMACS, Blender на серверах с количеством ядер от 1 до 32 и оперативной памятью до 448 ГБ.

                Сегодня мы хотим поделиться видео-туториалсами запуска задач во FlyElephant. Под катом вы найдете видео, как запускать вычислительные задачи, написанные с помощью С++, R, Python, Octave и рендерить изображения с помощью Blender, а также промо-код для получения бесплатных дополнительных часов работы ваших задач.
                Читать дальше →
              • Линейные модели: простая регрессия

                • Tutorial
                В прошлый раз мы подробно рассмотрели многообразие линейных моделей. Теперь перейдем от теории к практике и построим самую простую, но все же полезную модель, которую вы легко сможете адаптировать к своим задачам. Модель будет проиллюстрирована кодом на R и Python, причем сразу в трех ароматах: scikit-learn, statsmodels и Patsy.
                Читать дальше →
              • Работа с приватными репозиториями и другие обновления платформы FlyElephant



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

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

                  В качестве вычислительного ресурса используется облако Azure. Пользователи могут запускать вычислительные задачи, написанные с помощью С++ (с поддержкой OpenMP), R, Python, Octave, Scilab, Java, Julia, OpenFOAM, GROMACS, Blender на серверах с количеством ядер от 1 до 32 и оперативной памятью до 448 ГБ.

                  Среди нововведений можно отметить следующие:
                  Читать дальше →
                • Нечеткий поиск в словаре с универсальным автоматом Левенштейна. Часть 2



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

                    Читать дальше →
                    • +32
                    • 18,1k
                    • 3
                  • Нейросеть в 11 строчек на Python

                    • Перевод

                    О чём статья


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

                    Дайте код!


                    X = np.array([ [0,0,1],[0,1,1],[1,0,1],[1,1,1] ])
                    y = np.array([[0,1,1,0]]).T
                    syn0 = 2*np.random.random((3,4)) - 1
                    syn1 = 2*np.random.random((4,1)) - 1
                    for j in xrange(60000):
                        l1 = 1/(1+np.exp(-(np.dot(X,syn0))))
                        l2 = 1/(1+np.exp(-(np.dot(l1,syn1))))
                        l2_delta = (y - l2)*(l2*(1-l2))
                        l1_delta = l2_delta.dot(syn1.T) * (l1 * (1-l1))
                        syn1 += l1.T.dot(l2_delta)
                        syn0 += X.T.dot(l1_delta)
                    


                    Слишком сжато? Давайте разобьём его на более простые части.
                    Читать дальше →
                  • 51 бесплатная книга о Data Science

                      Смирись, человек 21 века, что твой главный инструмент — это информация, данные, цифры и управление с их помощью. Сегодня мы делимся с вами очень полезным списком литературы о Data Science!

                      Читать дальше →
                    • Титаник на Kaggle: вы не дочитаете этот пост до конца

                        Привет, хабр!

                        #{Data Science для новичков}

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

                        Данная работа описывает мою попытку создать модель для предсказания выживших пассажиров «Титаника». Основная задача — тренировка в использовании инструментов применяемых в Data Science для анализа данных и презентации результатов исследования, поэтому данная статья будет очень и очень длинной. Основное внимание уделено исследовательскому анализу (exploratory research) и работе по созданию и выбору предикторов (feature engineering). Модель создаётся в рамках соревнования Titanic: Machine Learning from Disaster проходящего на сайте Kaggle. В своей работе я буду использовать язык «R».
                        Читать дальше →
                        • +28
                        • 45,6k
                        • 5
                      • Nginx на стероидах — расширяем функционал с помощью LUA

                          Для обеспечения работы всех наших внешних продуктов мы используем популярный nginx. Это быстро и это надежно. Проблем с ним почти нет. Наши продукты также постоянно развиваются, появляются новые сервисы, добавляется новый функционал, расширяется старый. Аудитория и нагрузка только растет. Сейчас мы хотим рассказать о том, как мы ускорили разработку, неплохо увеличили производительность и упростили добавление в наши сервисы этого нового функционала, при этом сохранив доступность и отказоустойчивость затронутых приложений. Речь пойдет о концепции “nginx as web application”.
                          А именно, о сторонних модулях (в основном LUA), позволяющих делать совершенно магические вещи быстро и надежно.
                          image
                          Читать дальше →
                        • Как мы учим машинному обучению и анализу данных в «Билайн»



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

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

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

                            Поэтому у нас главное – это практика. Открываем тетрадки IPython и сразу с ними работаем.
                            Читать дальше →
                          • Big data от А до Я. Часть 3: Приемы и стратегии разработки MapReduce-приложений

                              Привет, Хабр! В предыдущих статьях мы описали парадигму MapReduce, а также показали как на практике реализовать и выполнить MapReduce-приложение на стеке Hadoop. Пришла пора описать различные приёмы, которые позволяют эффективно использовать MapReduce для решения практических задач, а также показать некоторые особенности Hadoop, которые позволяют упростить разработку или существенно ускорить выполнение MapReduce-задачи на кластере.


                              Читать дальше →
                              • +23
                              • 54k
                              • 5
                            • Топ-10 data mining-алгоритмов простым языком

                              • Перевод


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

                              Сегодня я постараюсь объяснить простыми словами принципы работы 10 самых эффективных data mining-алгоритмов, которые описаны в этом докладе.

                              Когда вы узнаете, что они собой представляют, как работают, что делают и где применяются, я надеюсь, что вы используете эту статью в качестве отправной точки для дальнейшего изучения принципов data mining.
                              Читать дальше →
                              • +43
                              • 106k
                              • 8
                            • Лекции Техносферы. 2 семестр. Методы распределенной обработки больших объемов данных в Hadoop

                              • Tutorial
                              Предлагаем вашему вниманию новый курс лекций Техносферы. Он представляет собой введение в Hadoop, фокусируясь на проектировании и реализации распределенных алгоритмов, которые могут применяться в различных сферах: обработка текстов, графов, связанных данных и т.п. Также рассматриваются различные компоненты платформы Hadoop и программные модели. Целью курса является знакомство студентов со стеком технологий Hadoop, применяемых для хранения, доступа и обработки больших объемов данных. Преподаватели курса: Алексей Романенко, Михаил Фирулик, Николай Анохин.

                              Лекция 1. Введение в Big Data и MapReduce


                              Что такое «большие данные». История возникновения этого явления. Необходимые знания и навыки для работы с большими данными. Что такое Hadoop, где он применяется. Что такое «облачные вычисления», история возникновения и развития технологии. Web 2.0. Вычисление как услуга (utility computing). Виртуализация. Инфраструктура как сервис (IaaS). Вопросы параллелизма. Управление множеством воркеров. Дата-центры и масштабируемость. Типичные задачи Big Data. MapReduce: что это такое, примеры. Распределённая файловая система. Google File System. HDFS как клон GFS, его архитектура.


                              Читать дальше →
                              • +34
                              • 30,8k
                              • 3
                            • ExpvarMon — консольный мониторинг сервисов на Go

                                Для Go-программ существует удобнейший стандартный пакадж expvar, позволяющий одной строчкой подключить вывод дебаг информации в JSON-формате. И чтобы максимально быстро и наглядно мониторить текущее состояние, была написана консольная программа Expvarmon, требующая минимум конфигурации для вывода метрик и дебаг-информации для ваших Go-сервисов.

                                Функции:
                                • single- и multi-services режимы
                                • мониторинг локальных и удаленных программ
                                • произвольное количество сервисов и переменных
                                • поддержка значений для памяти, временных интервалов, bool и произвольных чисел/строк
                                • sparkline-графики
                                • отображение максимальных значений
                                • отображение упавших/рестартовавших сервисов
                                • авто-ресайз при изменении размеров шрифта или окна



                                Читать дальше →
                              • RS-анализ (анализ фрактальной структуры временных рядов)

                                Стандартная гауссова статистика работает на основе следующих предположений. Центральная предельная теорема утверждает, что при увеличении числа испытаний, предельное распределение случайной системы будет нормальным распределением. События должны быть независимыми и идентично распределены (т.е. не должны влиять друг на друга и должны иметь одинаковую вероятность наступления). При исследовании крупных комплексных систем обычно предполагают гипотезу о нормальности системы, чтобы далее мог быть применен стандартный статистический анализ.

                                Часто на практике изучаемые системы (от солнечных пятен, среднегодовых значений выпадения осадков и до финансовых рынков, временных рядов экономических показателей) не являются нормально-распределенными или близкими к ней. Для анализа таких систем Херстом [1] был предложен метод Нормированного размаха (RS-анализ). Главным образом данный метод позволяет различить случайный и фрактальный временные ряды, а также делать выводы о наличии непериодических циклов, долговременной памяти и т.д.

                                Алгоритм RS-анализа


                                1. Дан исходный ряд image. Рассчитаем логарифмические отношения:

                                  image
                                2. Разделим ряд image на image смежных периодов длиной image. Отметим каждый период как image, где image. Определим для каждого image среднее значение:

                                  image

                                Читать дальше →
                                • +15
                                • 20,7k
                                • 5