Структурированные данные (файлы табличных форматов, данные из баз и т.п.) помещаются во внутреннее хранилище в виде плоских таблиц.
Неструктурированные данные (текстовые документы) размечаются и преобразовываются в табличный вид и также помещаются во внутреннее хранилище. Изображения во время загрузки могут быть распознаны при помощи модуля OCR (переведены в текст). Для неструктированных данных возможно сохранить бинарную копию в оригинальном формате в специальном хранилище.
Онтологии (относятся к словарям категории Semantics и содержат информацию о связях между объектами определенной предметной области) и другие виды справочников загружаются и хранятся в виде словарей.
Предусмотренные на платформе PolyAnalyst коннекторы к источникам данных имеют широкий набор опций «затачивания» под специфические наборы данных в рамках целевого формата источника данных. Пользователь без навыка программирования или составления запросов на SQL может выполнить базовые операции по загрузке, например загрузить таблицу из Базы Данных или файла формата CSV, при этом выбрав схему или символ разделителя. При наличии квалификации пользователя коннекторы позволяют вводить отредактированные SQL запросы и получать выборку данных.
Продукт PolyAnalyst постоянно развивается и с каждой новой версией в нем появляются коннекторы к новым источникам данных. Возможна разработка коннектеров к специфичным источникам под заказ.
PolyAnalyst хранит данные в собственном поколоночном хранилище с возможностью обращения к ней только из интерфейса PolyAnalyst. PolyAnalyst не использует СУБД для собственной работы или хранения данных.
Задача разработки собственного хранилища была продиктована приоритетом высокой производительности, которую не выдают SQL базы данных общего назначения.
Практика применения PolyAnalyst показывает, что имеющихся инструментов оказывается достаточно для трансформации и вычисления новых атрибутов и показателей.
Для применения существующих разработок в указанных целях предусмотрен узел Python в палитре PolyAnalyst, который принимает код на языке Python и выполняет его как на встроенном интерпретаторе, так и на интерпретаторе пользователя в случае необходимости.
Сложный джойн можно представить как очередность операций из сортировки (ORDER), фильтрации (WHERE), группировке (GROUP BY) и финального джойна полученных значений. Все операции в PolyAnalyst разлагаются пользователем на соответствующие узлы из палитры: Сортировка строк, Фильтрация строк, Агрегирование и Объединение.
Порог «вхождения» для пользователей PolyAnalyst является достаточно низким. Пользователю для решения задач на платформе PolyAnalyst не требуется квалификация аналитика — достаточно быть экспертом в предметной области решаемой задачи. Для пользователя обладающего навыками работы в Excel не составит труда работать в PolyAnalyst.
Например, специалисты из юриспруденции быстрее и эффективнее составят правила для извлечения информации из правовых документов, потому что они знают, как и что из себя представляет тот или иной юридический материал, из чего он состоит, и какая терминология употребляется. Аналогично в иных областях знаний. Если необходимо спрогнозировать энергопотребление региона, то скорее необходима знания о том, что в первую очередь влияет на объем потребления в регионе, нежели навык настройки алгоритма для разработки модели машинного обучения в PolyAnalyst.
Алгоритмы анализа данных на платформе PolyAnalyst сгруппированы по трем модулям: манипуляции с данными, анализ текстов, анализ данных.
Например, в модуле анализа данных представлены такие алгоритмы как регрессия, адаптивный бустинг, байесовская классификация, нейронная сеть. Для запуска алгоритма необходимо соединить его с источником данных, открыть диалог настройки, выбрать целевую колонку, зависимые колонки, при необходимости отредактировать дополнительные опции алгоритма и нажать кнопку «Выполнить».
Для большинства алгоритмов обучающая выборка требуется, например для классификации. Есть исключения, например при кластеризации. Это соответственно «обучение с учителем» и «обучение без учителя».
PolyAnalyst позволяет производить разметку для табличных и текстовых данных.
Первый метод разметки заключается в назначении категорий в виде табличных данных. Простой и практичный метод для решения некоторых задач машинного обучения. Данный метод используется для работы с числовыми и категориальными данными, например при классификации.
Второй метод позволяет производить разметку текстовых данных вручную и при помощи написания правил нахождения сущностей. Модуль текстового анализа содержит множество таких правил «из коробки», а также средства для составления пользовательских правил. Поиск сущностей, основанный на правилах, подходит для разметки обучающей выборки, на которой пользователь может произвести валидацию результата работы правил т.е. отметить верные результаты такой полуавтоматической разметки. Далее выполняется машинное обучение на размеченном обучающем корпусе.
Визуализации PolyAnalyst имеют гибкие настройки внешнего вида, шрифтов и цветовых палитр в рамках редактора веб-отчетов. При необходимости использовать сторонние библиотеки, собственный код для отображения визуализаций в веб-отчетах PolyAnalyst предусмотрено использование «внешних компонент», что решает данную задачу.
Веб-отчеты PolyAnalyst запускаются в браузере т.е. являются тонким клиентом, потому собственные разработки пишутся на JavaScript и TypeScript.
Доступно несколько типовых учебных программ, отличающихся направлением подготовки:
Базовая программа,
Специалисты нашего учебного центра готовы разработать учебную программу под ваши потребности, ориентируясь на решаемые вами задачи.
PolyAnalyst имеет клиент-серверную архитектуру из вычислительных и логин-серверов и может запускаться как приложение или сервис. Несколько вычислительных серверов PolyAnalyst могут подключаться к одному логин-серверу, образуя кластер для балансировки и хранения на нем информации о пользователе.
Для объединения вычислительных серверов из разных кластеров используется программа Application Builder, которая позволяет доставлять проекты на вычислительные серверы, а потом производить балансировку нагрузки между ними.
На платформе PolyAnalyst предусмотрено создание резервных копий и восстановление из них. В случае ведения разработки на PolyAnalyst отдельно от продакшен сервера проект можно переносить проект с одного сервера на другой для обновления на продакшен сервере.
Система PolyAnalyst является многопользовательской и поддерживает возможность ведения командной разработки. При этом рекомендуется разработать правила командной работы в зависимости от того, какой подход команда хочет распространить на рабочий процесс.
Платформа PolyAnalyst поддерживает работу с системами контроля версий. Данный функционал будет развиваться, и скоро будет доступна более подробная информация по применению СКВ.
Также доступно прежнее решение проблемы с интеграцией через файлы репозитория (Git, SVN…). Для этого в файловой структуре PolyAnalyst заводится репозиторий, например со скриптами Python или правилами XPDL, и система будет автоматически их подгружать с диска в момент выполнения узлов.
Сервер PolyAnalyst поддерживает работу на следующих ОС:
Microsoft Windows 8.1/10/2012(6.2.9200)/2016/2019
Debian Linux 11.6 for 64-bit PC (amd64)
ASTRA LINUX SPECIAL EDITION 1.7 “Орел”
Для обновления дистрибутива предусматривается два канала — обновление сервера из административного клиента по команде или автоматически, и когда пакет обновления скачивается из сети интернет вручную.