• Десятки тысяч закупок, прозрачных как стекло: распутываем клубок

      Наводить порядок в закупках крупного банка непросто. Особенно когда они разведены по двум независимым комплексным системам ERP и СЭД. При объединении ВТБ и ВТБ24 у нас также произошло объединение информационных систем, и теперь единый процесс закупок проходит через них. Что делать? На помощь пришел Process Mining — одна из самых интересных технологий исследования, анализа и мониторинга бизнес-процессов. Но при этом и весьма непростая в применении.


      Process Mining — это подход к анализу бизнес-процессов с использованием передовых технологий в области сбора и обработки данных. Мы видели много дорогих, крупных проектов, где за анализы процессов брались с помощью Process Mining. Несмотря на то, что проекты эти доводили до конца, в 80% случаев полученные красивые схемы не работали. Но грустная статистика нас не испугала, и распутывать свой клубок процессов мы тоже решили через Process Mining. Подробности под катом.
      Читать дальше →
    • Лекарей сжигать нельзя беречь сейчас

        TLDR: кому перестановки делают больнее — меряем свёрткой графов.
        Код: RolX и ванильная трёхслойная GCN на мотифах.


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


        image


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


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

        Читать дальше →
        • +22
        • 5.5k
        • 7
      • Советские мечты о будущем, часть 2. Теперь с сепульками



          В предыдущей серии: мы составили подборку советской мультипликационной научной фантастики. Собрали комментарии о тех мультфильмах, которые не вошли в первую часть — и рассказываем о них сейчас.
          Читать дальше →
        • Советские мечты о будущем



            Помните очаровательного котика, которые чихал в заставке советского мультфильма? Мы помним, и нашли его — вместе с ворохом другой рисованной фантастики. В детстве она пугала и обескураживала, поскольку поднимала серьезные, взрослые темы. Настала пора пересмотреть старые мультфильмы, чтобы узнать, о каком будущем мечтали в той стране.
            Читать дальше →
          • Отчёты по состоянию СХД с помощью R. Параллельные вычисления, графики, xlsx, email и всё вот это

            • Tutorial

            В статье приведён код по формированию регулярных отчётов по состоянию дисков СХД EMC VNX с альтернативными подходами и историей создания.


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


            Внешний вид графика

            Читать дальше →
          • Подборка полезных слайдов от Джулии Эванс

            • Translation
            Перевели новую порцию слайдов. Права доступа в Unix, файловые дескрипторы, потоки, магия proc. И на закуску пара советов о том, как общаться, когда ты не согласен. А вдруг пригодятся =)



            Читать дальше →
          • Достаём мастер-пароль из заблокированного менеджера паролей 1Password 4

            • Translation
            Новые инструменты, старые методы. Проводим обратную разработку и находим фатальный недостаток 1Password.

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

            Я свято верил, что заблокированный парольный менеджер надёжно защищён. Если кто-то получит доступ к моему компьютеру, то максимум может рассчитывать на кучку случайных байтов, поскольку информация надёжно вычищается из памяти.
            Читать дальше →
          • Ежедневные отчёты по состоянию виртуальных машин с помощью R и PowerShell


            Вступление


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

            Читать дальше →
          • Умеют ли коты строить регрессию?

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

              Что ж, пожалуй, пора разобраться, умеют ли коты строить регрессию или нет?
            • “Без data engineer-а ценность модели аналитика стремится к нулю” — интервью с дата инженером Николаем Марковым

                Привет, Хабр! Data Engineering становится все более популярным, многие компании постепенно открывают соответствующие вакансии. В связи с этим мы взяли интервью у Senior Data Science Engineer, Aligned Research Group LLC и преподавателя на программах “Специалист по большим данным” и “Data Engineer” Николая Маркова о том, что должны уметь data scientist-ы и data engineer-ы, чего им чаще всего не хватает и как найти свое место в анализе данных.


                Читать дальше →
              • Стратегии по ускорению кода на R, часть 1

                • Translation
                Цикл for в R может быть очень медленным, если он применяется в чистом виде, без оптимизации, особенно когда приходится иметь дело с большими наборами данных. Есть ряд способов сделать ваш код быстрее, и вы, вероятно, будете удивлены, узнав насколько.

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

                Давайте попробуем ускорить код с циклом for и условным оператором (if-else) для создания колонки, которая добавляется к набору данных (data frame, df). Код ниже создает этот начальный набор данных.
                # Создание набора данных
                col1 <- runif (12^5, 0, 2)
                col2 <- rnorm (12^5, 0, 2)
                col3 <- rpois (12^5, 3)
                col4 <- rchisq (12^5, 2)
                df <- data.frame (col1, col2, col3, col4)
                

                В этой части: векторизация, только истинные условия, ifelse.
                В следующей части: which, apply, побайтовая компиляция, Rcpp, data.table.
                Читать дальше →
                • +10
                • 6.9k
                • 3
              • Стратегии по ускорению кода на R, часть 2

                • Translation
                Цикл for в R может быть очень медленным, если он применяется в чистом виде, без оптимизации, особенно когда приходится иметь дело с большими наборами данных. Есть ряд способов сделать ваш код быстрее, и вы, вероятно, будете удивлены, узнав насколько.

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

                Давайте попробуем ускорить код с циклом for и условным оператором (if-else) для создания колонки, которая добавляется к набору данных (data frame, df). Код ниже создает этот начальный набор данных.
                # Создание набора данных
                col1 <- runif (12^5, 0, 2)
                col2 <- rnorm (12^5, 0, 2)
                col3 <- rpois (12^5, 3)
                col4 <- rchisq (12^5, 2)
                df <- data.frame (col1, col2, col3, col4)
                

                В первой части: векторизация, только истинные условия, ifelse.
                В этой части: which, apply, побайтовая компиляция, Rcpp, data.table, результаты.
                Читать дальше →