Что нового в Loginom 6.2

12 марта 2019
0 комментариев

Вышло большое обновление аналитической платформы Loginom. Появилась поддержка импорта из хранилища данных Deductor Warehouse, добавлены новые и оптимизированы существующие алгоритмы. Для тех пользователей, у которых имеются ранее разработанные на других инструментах алгоритмы, добавлена возможность выполнения кода на JavaScript.

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

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

Новые возможности Loginom 6.2

 

ARIMAX

Для прогнозирования временных рядов наиболее часто используются алгоритмы на основе модели ARIMA. Для решения задачи прогнозирования временных рядов в Loginom была выбрана реализация “Seasonal ARIMA with exogenous variables”, а основное внимание уделялось удобству настройки и применения алгоритма ARIMAX. В большинстве случаев Loginom способен построить достаточно точный прогноз даже с настройками по умолчанию, а для опытного пользователя доступны широкие возможности по детальной настройке параметров работы алгоритма. В итоге можно быстро получить первые результаты и, если потребуется, постепенно улучшать точность работы за счет тонкой настройки.

Пример построения прогноза (диаграмма)

Пример построения прогноза

 

JavaScript

Многие пользователи Loginom — опытные бизнес-аналитики, имеющие большое количество собственных наработок, реализующих специфичные алгоритмы или бизнес-правила. Специально для таких искушенных пользователей мы добавляем поддержку языков программирования и начинаем с JavaScript. Это один из самых популярных и доступных в изучении языков, с ним знакомо огромное количество специалистов. Но одна из самых важных особенностей — JavaScript работает в «песочнице» и может быть безопасно использован при работе на сервере с множеством пользователей.

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

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

Пример использования JavaScript кода

Пример использования JavaScript кода

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

 

Интеграция с Deductor Warehouse

Loginom — наследник аналитической платформы Deductor, с использованием которого были выполнены сотни проектов, большинство из которых продолжает активно работать. В частности, у многих клиентов используются хранилища данных Deductor Warehouse, позволяющие работать с большими наборами данных с использованием привычных бизнес-терминов. Специально для этих клиентов в Loginom появилась возможность импорта данных из Deductor Warehouse — ещё больше людей сможет использовать преимущества Loginom в своей работе.

Получение структуры хранилища данных

Получение структуры хранилища данных

Получение данных из DWH

Получение данных из DWH

 

Loginom Viewer

Результатом работы аналитика нередко является подготовка отчетов, при этом пользователям отчетности либо просто не нужны, либо совсем не должны быть доступны алгоритмы и сценарии построения этих отчетов. В платформе Deductor (предшественнике Loginom) для этих целей существовало отдельное приложение — Deductor Viewer.

Loginom работает в браузере, поэтому отдельного приложения для просмотра отчетов в нём нет, вместо этого добавлена возможность установки пользователям прав «Просмотр отчетов». Для пользователей-аналитиков, которые разрабатывают отчеты добавлена возможность выводить отдельные визуализаторы на «Панель отчетов». На «Панели отчетов» могут размещаться как отдельные предварительно настроенные визуализаторы, так и «папки» с целыми группами визуализаторов.

Настройка панели отчетов

Настройка панели отчетов

Права пользователям устанавливает «Администратор». У пользователя с правами «Просмотр отчетов» есть доступ только к предварительно настроенному набору отчетов.

Настройка прав пользователей

Настройка прав пользователей

 

Куб

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

Детализация выделенной ячейки Куба

Детализация выделенной ячейки Куба

Содержимое кросс-таблицы «Куба» можно экспортировать в Excel или HTML-файл.

Результат экспорта содержимого кросс-таблицы Куба

Результат экспорта содержимого кросс-таблицы Куба

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

Дополнительные варианты фильтрации

Дополнительные варианты фильтрации

 

Вызов REST-сервиса

Работа с веб-сервисами востребована практически в каждом современном проекте. В Loginom уже была поддержка работы с сервисами через SOAP+WSDL. Это отличный способ интеграции — вы получаете не только данные, но и описание их структуры. При таком варианте взаимодействия достаточно просто реализовать интеграцию с сервисом, есть только один недостаток — передается относительно большой объем данных.

К сожалению, не все сервисы предоставляют возможность работы через SOAP+WSDL. Но существует распространенная альтернатива — протокол REST, на базе которого реализовано огромное количество веб-сервисов.

Теперь в Loginom реализован вызов REST-сервиса. Использование REST не требует наличия WSDL-описания, а сам протокол прост в реализации. Но в отсутствии схемы есть существенный недостаток — сложнее подготавливать запросы и требуется самостоятельно отслеживать изменения, которые могут произойти на стороне сервиса.

Формирование XML

Добавлен новый обработчик «Формирование XML», позволяющий сформировать XML из набора данных и отправить его в виде строки в запросе. Такой способ передачи данных нередко встречается при работе с веб-сервисами.

 

Визуализатор «Качество бинарной классификации»

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

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

Визуализатор качество бинарной классификации

Визуализатор Качество бинарной классификации

Линейная регрессия

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

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

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

Отчет по линейной регрессии

Отчет по линейной регрессии

Улучшение существующего функционала

Авторизация

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

Вызов веб-сервиса

В обработчике  «Вызов веб-сервиса» можно определить дополнительные HTTP-заголовки, передаваемые вместе с запросом. Их настройка производится отдельной страницей мастера.

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

Калькулятор

При использовании функции Data в «Калькуляторе» можно получать значения выражений, следующих за вычисляемым, но из предыдущей строки.

Добавлена функция CumulativeSum, возвращающая накапливаемую сумму по столбцу, а также функция Stat, возвращающая набор статистик по столбцу.

Кластеризация

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

Копирование и вставка узлов сценария

Стало возможным копировать и вставлять узлы с содержащимися внутри них визуализаторами.

Кросс-таблица

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

Рассмотрим на примере небольшого набора данных о клиентах: идентификатор клиента, Имя, Фамилия, номер телефона и номера карты.

Набор данных о клиентах в формате «ключ-значение»

Набор данных о клиентах в формате «ключ-значение»

По умолчанию для новых полей будут генерироваться имена состоящие из “С_” и уникального номера.

Работа «Кросс-таблицы» с настройками по умолчанию

Работа «Кросс-таблицы» с настройками по умолчанию

При включении настройки «Уникальные значения как имена полей» — можно контролировать имена новых полей.

Работа «Кросс-таблицы» при включении настройки «Уникальные значения как имена полей»

Работа «Кросс-таблицы» при включении настройки «Уникальные значения как имена полей»

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

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

Работа «Кросс-таблицы» при отключении настройки «Скользящие уникальные значения»

Работа «Кросс-таблицы» при отключении настройки «Скользящие уникальные значения»

Логирование

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

В случае возникновения «необработанных» исключений сохраняется подробная информация о возникшей проблеме.

Назначение полей

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

Нейронные сети

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

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

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

Нормализация

Для компонентов «EM Кластеризация» и «Самоорганизующиеся сети» включено использование нормализованных источников. Добавлена возможность выбрать поля с видом данных «Дискретный». Они могут быть выбраны в качестве «Используемых». Для таких полей по умолчанию будет назначаться вид нормализации «Индикатор (без опорной категории)».

Доступные виды нормализации:

  1. Для непрерывных полей — «Масштабирование [0, 1]», «Масштабирование [-1, 1]», «Абсолютное масштабирование», «Стандартизация». Значение по умолчанию — «Стандартизация» (также будет использовано для конвертации старых пакетов).
  2. Для дискретных полей — только «Индикатор (без опорной категории)».

Относительные пути пакетов

Для пакета добавлена настройка «Использовать относительные пути базового пакета в производных узлах», определяющая, как интерпретируются относительные пути в узлах, производных от узлов, принадлежащих текущему пакету. Если флаг установлен, то у производных узлов пути рассчитываются относительно «базового» пакета, а в противном случае — относительно пакета, содержащего производный узел.

Пакетное выполнение

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

Подключение к веб-сервисам и наборам XSD-схем

Для подключения к веб-сервисам и наборам XSD-схем значения подключаемых переменных могут использоваться для имен XSD и WSDL файлов.

Разгруппировка

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

Более подробную информацию о проблемах разгруппировки можно узнать из записи доклада о прогнозировании в разрезе SKU.

Слияние

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

Совместный доступ к пакетам

Нередко возникают случаи, когда пакет нельзя открыть для редактирования из-за блокировки другим пользователем. Для таких случаев добавлена возможность открытия пакетов в режиме «только для чтения». Такая ситуация может возникнуть, если пользователь поделился ссылкой на сценарий, и другой пользователь перешёл по этой ссылке, или если несколько пользователей одновременно попытаются открыть один и тот же пакет.

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

Пример сообщения при открытии пакета в режиме «только чтение»

Пример сообщения при открытии пакета в режиме «только чтение»

Сохранение визуализаторов внутренних узлов подмодели при наследовании

При создании производного компонента на основе подмодели сохраняется информация о визуализаторах вложенных узлов. При создании нового узла на основе такого производного компонента наследуются все внутренние визуализаторы. При добавлении новых визуализаторов или удалении старых отнаследованные подмодели также обновляются.

Страница пакетов

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

Таблица

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

Содержимое «Таблицы» можно экспортировать в Excel или HTML-файл.

Элементы пользовательского интерфейса

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

На странице визуализаторов больше не отображаются визуализаторы, которые не совместимы с текущим узлом.

При копировании через «Ctrl+C» значения ячеек таблицы, содержащие двойные кавычки, попадают в буфер обмена без модификации. Ранее такие значения копировались с экранированными двойными кавычками.

При настройке «Фильтра строк» можно выбирать поля через ввод части наименования (быстрый поиск).

Варианты агрегации в «Группировке» и «Таблице в переменные» теперь можно задавать для нескольких полей сразу.

Оптимизация работы

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

Увеличена скорость работы «Квантования».

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

Изменения в дизайне

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

В боковом меню изменена иконка «Файлового хранилища» на более соответствующую (сетевое хранилище вместо облака), в меню пакетов вместо создания «Временного пакета» теперь можно создать «Черновик», а также теперь можно сохранить или закрыть все открытые пакеты.

Демонстрация изменений в меню

Демонстрация изменений в меню

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

Изменения в режиме сопоставления полей

Изменения в режиме сопоставления полей

Помимо этого многие иконки переработаны с целью повышения информативности. Например: в обработчике «Слияние» иконки типов слияний (левое, правое, внутреннее и т.д.) стали более различимыми за счет увеличения размера и контраста; переключатели теперь отображают оба состояния — активное и неактивное, иконки типов и видов данных стали более различимы, а узлы сценариев и порты узлов стали более чёткими.

Узлы сценариев и порты узлов стали более чёткими

Узлы сценариев и порты узлов стали более чёткими

Материалы с прошедшей презентации

26 сентября в рамках мероприятия «Loginom Day 2018» Алексей Арустамов рассказал об основных изменениях, подготовленных к релизу. Ниже доступна видеозапись выступления и слайды к докладу. Бесплатная версия Loginom 6.2 Academic уже доступна для загрузки.

pdfLoginom 6.2 – обзор нововведений

#loginom#release notes#6.2

Смотрите также