Диссертация (1137241), страница 18
Текст из файла (страница 18)
В этом случаеконтекст является входом для алгоритма построения решётки. Другойпример – порождение ассоциативных правил на основе решётки.Впроцессеанализаданныхисследовательработаетсэкземплярами артефактов, то есть с конкретными данными. Любойэкземпляр артефакта является «неизменяемым» [immutable].
Этозначит, что пользователь не может изменить его после создания, хотяи может визуализировать в различных представлениях, включаяинтерактивные.Имея предопределённый набор артефактов, поддерживаемыхпрограммой, мы можем использовать термины «тип» и «экземпляр»для различения абстрактного типа данных и конкретной порции этихданных. Но в большинстве случаев эти приставки к слову «артефакт»можно опускать без появления неоднозначности.126Коллекция всех экземпляров артефактов, накопленных впроцессеисследования,называется«аналитическойсессией».Артефакты, которые сгенерированы на основе внешних данных,считаются базовыми.5.1.2.2 РешателиАртефакты порождаются (или генерируются) решателями(solvers). Каждый решатель представляет собой реализацию алгоритмапостроения одного набора артефактов на основе другого набора.Именнорешательфактическизадаётотношение«являтьсяисточником данных для» между артефактами.Тип решателя – формальное описание его входов и выходов ввиде двух последовательностей типов артефактов.
Понятно, чтопрограмма может содержать несколько решателей одного типа,отличающихся используемыми алгоритмами, что может приводить кразличиям в вычислительной сложности.Использование методологии «решатель-артефакт» обусловленовполнеконкретнымитехнологическимипричинами.Имеяпредопределённый набор артефактов и решателей, программа можетподдерживать целостность аналитической сессии. Без явного действияпользователя, программа не может удалить экземпляры артефактов.Напротив, для любого артефакта предусмотрена возможность перейтикего«предкам»или«потомкам»:здесьимеетсяввидупоследовательность их генерации.5.1.2.3 ВизуализаторыВизуализатор артефакта – это специальный вид решателя,который создаёт визуальное представление входного экземпляраартефакта заданного типа. С технической точки зрения, визуализаторстроит интерактивное или неинтерактивное окно с некоторой127информациейиэлементамиуправления(интерфейсомспользователем).
В простейшем случае визуализатор генерируеттекстовое представление, отображаемое в стандартном текстовомредакторе (например, с подсветкой синтаксиса).Очевидно, что для одного артефакта может существоватьнесколько визуализаторов. Также очевидно, что решателям можно неподдерживать интерфейс с пользователем (кроме запроса входныхданных, который можно организовать стандартными средствами).Собственно, система запрещает решателям взаимодействовать спользователем в процессе работы.Обычно визуализатор запускается последним в цепочке изнескольких решателей. Но ничто не мешает пользователю в любоймомент получить представление любого из артефактов в сессии.В используемой методологии различается порождение новогоартефакта и создание нового визуального образа для уже имеющегосяартефакта. Это удобно по следующим причинам:1. Явно разделяются решатели, способные запускаться в пакетномрежиме для коллекции артефактов, и средства интерактивнойработы пользователя.2.
Повышается эффективность обработки цепочек решателей.3. Легко организуется исследование вычислительной сложностирешателей.4. Удачно реализуется разделение браузера сессии (показывающеговсе артефакты) и браузера окон (показывающего все активныевизуализаторы и отчёты).1285.1.2.4 ОтчётыОтчёт – это итоговое представление результатов исследования.Полноценная программная среда проведения научных исследованийобязанасодержатьоформленияредакторрезультатов.отчётовОсновнымдляпредварительногоотличительнымпризнакоминтегрированного редактора отчётов является возможность вставлятьв отчёт выбранный элемент аналитической сессии, то есть некоторыйартефакт. При этом вставка артефакта должна по возможностиприводить к появлению как можно более полной информации внаиболеепригодномдлядальнейшегоредактированияформатированном тексте, таблицах или векторной графике.виде:1295.1.3 Программная архитектура комплексаИсточники данныхСтруктурированныеданныеСлужба доступа к даннымSQL-шлюзыНеструктурированныеданные (SQL)Неструктурированныеданные (XML)Служба индексатораПарсер правилXML-шлюзыДиспетчер индексовЯдро системыБазовые инструментыанализа артефактовРешатели(генераторыартефактов)БД ядраРасширение1ПодсистемааннотированияартефактовЯдро XMLтранслятораXSLT-трансляторРедактор отчётов...Диспетчер расширенийРасширениеnИнструментыпреобразования форматовВизуализаторыДиспетчер пользователейРасширение1...ЖурналДиспетчер клиентовРасширениеkКлиент аналитикаКлиентадминистратораДоступ к ядруПользовательЛокальная бизнес-логикаИнструментыадминистратораАдминистраторПлатформозависимыекомпонентыРис.
5.1. Общая архитектура платформы FCARTС архитектурной точки зрения платформа представляет собоймногокомпонентное распределённое приложение с возможностьюрасширения за счёт смены/дополнения компонентов доступа к130данным, решателей и визуализаторов. Рисунок 5.1 иллюстрируетархитектуру системы.Таблица5.1даётпредставлениеоспектререальноиспользованных при построении платформы технологий.Таблица 5.1. Основные технологии, использованные при создании FCART№ НазначениеТехнологииИcточники1 Базовые средыwww.microsoft.com/visualstudio,Microsoft VisualразработкиStudio,www.embarcadero.com/products/rad-studioEmbarcadero RADStudio2 Базовые языкиС++,msdn.microsoft.com/ruразработкиDelphi,ru/visualc/aa336395.aspx,msdn.microsoft.com/enC#us/vstudio/hh388566.aspx,www.embarcadero.com/products/delphi3 ХранилищаBaseX, Sednawww.basex.org, www.sedna.orgданных4 Визуализацияwww.microsoft.com/silverlightMicrosoftданных в WebSilverLightверсии5 СозданиеDelphi Web Script, www.delphitools.info/dwscript,макросов /www.python.orgPythoncкриптовПолнотекстовый Apache Lucenelucene.apache.orgпоискБазовые свойства системы:1.
Поддержка работы как в сети Интернет (web-версия), так и влокальном режиме (локальная версия);2. Расширяемостьфункциональностибезизменениябазовыхкомпонентов (поддержка плагинов [plugins] и макросов [scripts]);3. Ориентация на визуальную интерактивную работу с артефактамианализа данных;4. Встроенныередакторыотчётов,протоколирования и тестирования.локальныеБД,средства1315.1.4 Цикл работы на примере решеток замкнутых описанийМетодологияиспользованияпредусматриваетитеративноепостроения базовых артефактов (контекстов) и изучение прочихартефактов с изменением запросов к данным при получении новыхзнаний об объекте исследования.
Цикл анализа на примере артефактовАФП можно описать следующим образом:1. Сначала создаются или открываются снимки данных (их можетбыть несколько, что требуется, например, при динамическоманализе данных). Снимок представляет собой таблицу, гдестрокамиявляютсяобъектыизXML-хранилища,аполяопределяются профилем (profile). Для работы с профилямисуществует редактор, который может работать в режиме анализапроизвольного XML/JSON описания объекта.2.
Затем на основе снимков по запросу генерируются формальныеконтексты. Запросы строятся при помощи оригинального языка,делящегося на четыре части:2.1простыеправилаобработкиатомарныхполейбезшкалирования;2.2правила обработки атомарных полей с номинальными илипорядковыми шкалами;2.3правила обработки многозначных (векторных) полей;2.4правила обработки неструктурированных текстов (используетсяиндексатор). Оптимальным является генерация запроса путёмвыбора некоторых понятий из исходной структуры и заданиядополнительных параметров.
Редактор предоставляет весьспектр возможностей редактора графов.132Имея набор контекстов, аналитик автоматически получаетрешётки формальных понятий и возможность построения вторичныхартефактов (например, множества ассоциативных правил или базисаимпликаций). Визуализаторрешёток (рисунок 5.2)предлагаетразвитые средства поиска объектов и признаков, сравнения понятий,построения подрешёток по заданным множествам объектов ипризнаков.Рис. 5.2.
Вариант визуализатора решётки формальных понятийМасштабируемость системы позволяет в интерактивном режимеработать с решётками, содержащими более чем 10000 понятий(рисунок 5.3). При этом можно пользоваться дополнительнымиинструментами навигации по решётке, и управлением масштабомизображения,изменятьвнешнийотображаемую информацию.видвершин(понятий)и133Рис.5.3. Проверка масштабируемости визуализатора решётки формальныхпонятийЛюбой артефакт можно экспортировать в различных форматах.Обычноподдерживаетсяпредставлениекакэкспортируемыхтекстовое,данных.такТак,играфическоерешёткуможносохранить в виде графа (в формате XGMML) или картинки (ввекторном форматах EMF или растровых PNG, JPG).Встроенныйредакторотчётов(рисунок5.4)позволяетподготавливать полноценные отчёты с таблицами, иллюстрациями иссылками на результаты вычислительных экспериментов.134Рис.5.4.
Редактор отчётов в FCART версии 0.75.1.5 Использование плагинов и макросовФункциональность FCART расширяется за счет использованиемтак называемых плагинов и макросов. Отметим, что с использованиеммакросов можно существенно изменить поведение существующихрешателей и визуализаторов или добавить новые, не перезапускаяприложение. Встроенный редактор макросов/скриптов поддерживаетподсветку синтаксиса и предоставляет полноценный контроль заошибками, возникающими на этапе компиляции и во времявыполнения программы (рисунок 5.5).135Рис. 5.5.
Редактор макросов в FCART (редактируется алгоритм прорисовкидиаграммы решётки формальных понятий)5.1.6 Основные возможности программного комплекса по работес решетками замкнутых описанийНа данный момент реализована локальная версия FCART. Вэтой версии присутствуют следующие основные возможности поработе с Анализом Формальных Понятий:1. Предобработка данных:1.1Преобразование их в многозначный контекст с помощьюспециализированных запросов.1.2Шкалированиемногозначныхконтекстовпозаранеефиксированным шкалам, преобразование их в формальныйконтекст.1362. Работа с формальными контекстами с помощью визуальныхрешателей:2.1Загрузка, редактирование, сохранение формальных контекстов.2.2Автоматическое построение решеток понятий.3.