2019 Вычислительные методы в дискретной математике №44
ВЫЧИСЛИТЕЛЬНЫЕ МЕТОДЫ В ДИСКРЕТНОЙ МАТЕМАТИКЕ
УДК 519.7
ДЕКОМПОЗИЦИОННЫЙ ПОДХОД К ИССЛЕДОВАНИЮ ФОРМАЛЬНЫХ КОНТЕКСТОВ
В. В. Быкова*, Ч.М. Монгуш**
* Сибирский федеральный университет, г. Красноярск, Россия ** Тувинский государственный университет, г. Кызыл, Республика Тыва, Россия
Исследуется #Р-полная задача нахождения всех формальных понятий заданного контекста и предлагается декомпозиционный метод её решения. В качестве частей разложения предлагается использовать фрагменты исходного контекста, названные боксами. Доказано, что разделение контекста на боксы «безопасно» относительно формальных понятий: при декомпозиции ни одно формальное понятие не теряется и не появляются новые формальные понятия. Доказано, что число боксов, возникающих на каждой итерации разложения, равно числу единичных элементов 0,1-матрицы, представляющей исходный формальный контекст. Предлагается уменьшать число боксов на каждой отдельной итерации процесса декомпозиции с помощью построения взаимно непересекающихся цепей боксов. Приводятся результаты вычислительных экспериментов, свидетельствующие о существенном повышении производительности алгоритмов нахождения всех формальных понятий при применении предлагаемого декомпозиционного метода.
Ключевые слова: анализ формальных понятий, декомпозиция формального контекста.
DOI 10.17223/20710410/44/9
DECOMPOSITIONAL APPROACH TO RESEARCH OF FORMAL CONTEXTS
V. V. Bykova*, Ch.M. Mongush**
* Siberian Federal University, Krasnoyarsk, Russia ** Tuvan State University, Kyzyl, Tuva, Russia
E-mail: [email protected], [email protected]
The problem of finding all formal concepts of a given formal context is investigated. The problem arises when data mining is presented in the form of a binary object-attribute matrix, i.e. a matrix the rows of which correspond to objects, and the columns correspond to features that take a value from the two-element set {0,1}. Here the value 1 of the element of a matrix is interpreted as the presence of corresponding attribute to the object, and 0 is as its absence. Such a representation of a set of data allows to be used the algebraic approach of R. Wille and B. Ganter, known in the literature as Formal Concept Analysis. Within of this approach the
initial object-attribute matrix is called the formal context, and any of its maximal full submatrix is a formal concept. In the problem of finding all formal concepts, it is required to find the set of all formal concepts for a given formal context. This problem belongs to combinatorial enumeration problems and is #P-complete. The high computational complexity of the problem is due to the fact that in the general case the number of formal concepts exponentially depends on the size of the initial formal context. Currently many algorithms have been developed to solve the problem, among them NextClosure, Close-by-One, Norri. The execution time of these algorithms in the worst case exponentially depends on the dimension of the initial context, and therefore they are unsuitable for practical analysis of contexts of large dimension. We propose a decomposition method for solving the problem under consideration. In this method, some fragments of the initial context defined in a certain constructive way are called boxes. We prove that the division of context into boxes is "safety" relatively of the formal concepts. This means that the formal concepts are not lost and new formal concepts do not arise at decomposition. We prove that the number of boxes arising at each iteration of the decomposition is equal to the number of unit elements of the 0,1-matrix representing the initial formal context. We show how a partial order relation can be defined on a set of boxes. We also show that the number of boxes at each separate iteration of the decomposition process can be reduced by using constructing mutually disjoint chains of boxes. The results of computational experiments are given, indicating that the application of the proposed decomposition method allows significantly to increase the performance of algorithms for finding all formal concepts of a given context.
Keywords: formal concept analysis, formal context decomposition.
Введение
Во многих задачах интеллектуального анализа данных изучаемая предметная область описывается с помощью объектно-признаковой таблицы, в которой каждый столбец соответствует некоторому признаку, а каждая строка определяет признаковое описание отдельного объекта. Подобное представление множества данных позволяет при их обработке применять математический аппарат общей алгебры и теории графов, например, объектно-признаковые таблицы можно исследовать с помощью методов анализа формальных понятий. Анализ формальных понятий (АФП, англ. Formal Concept Analysis — FCA) как прикладное направление теории решеток Г. Биркгофа возникло с появлением работ Б. Гантера и Р. Вилле [1-3]. В АФП объектно-признаковая таблица представляется формальным контекстом, отражающим наличие или отсутствие признаков, характерных для изучаемого множества объектов, и моделируется 0,1-мат-рицей. Каждое формальное понятие определяется парой замкнутых множеств, интерпретируемых как объём и содержание этого понятия. В матричной форме формальному понятию соответствует некоторая максимально полная подматрица 0,1-матрицы, представляющей формальный контекст.
С помощью методов АФП решаются различные прикладные задачи, связанные с классификацией и кластеризацией данных, выявлением зависимостей между данными и семантическим анализом естественно-языковых текстов [4 - 7]. В них формальные понятия трактуются как перекрёстные ассоциации, кластеры или бикластеры. В рамках АФП решение указанных задач сводится к нахождению всех формальных понятий исходного формального контекста с последующим связыванием их в решётку. Полу-
ченная решётка служит концептуальной моделью исследуемой предметной области и основой для решения прикладных задач.
При всей привлекательности методов АФП их практическое применение ограничивается высокой трудоёмкостью процесса извлечения множества формальных понятий из исходного контекста. Задача нахождения всех формальных понятий формального контекста детально изучена в [2-9]. Известно, что данная задача относится к классу #Р-полных задач, поскольку число формальных понятий может экспоненциально зависеть от размера исходного контекста [4]. В настоящее время актуальны исследования по повышению производительности алгоритмов установления всех формальных понятий за счёт параллельных вычислений и применения декомпозиционного подхода [3, 5]. Основная цель этих исследований — сделать более доступными методы АФП для анализа больших данных.
В данной работе рассматривается задача нахождения всех формальных понятий заданного контекста. Предлагается декомпозиционный метод её решения, в котором частями разложения выступают фрагменты исходного контекста, названные боксами. Такая декомпозиция позволяет разлагать контекст без потери формальных понятий и тем самым снижать время выполнения алгоритмов решения рассматриваемой задачи. Исследуется структура боксов с целью оценки числа фрагментов разложения, получаемых на каждой итерации декомпозиции. Устанавливаются правила остановки итерационного процесса разложения. Приводятся результаты вычислительных экспериментов, подтверждающих результативность предложенного метода декомпозиции.
1. Основные положения и обозначения
Рассмотрим основные положения и типовые обозначения АФП [2, 3].
Пусть определены два непустых конечных множества: множество объектов G (нем. Gegenstände) и множество признаков или свойств M (нем. Merkmale). Пусть также задано непустое отношение инцидентности I С G х M. Данное отношение содержит информацию о выполнимости свойств из M на объектах из G, т.е. (g,m) E I означает, что объект g обладает признаком m, и наоборот — признак m присущ объекту g. Тройку K = (G, M, I) принято называть формальным контекстом.
Далее будем полагать, что множества G и M линейно упорядочены (например, лексикографически). В этом случае формальный контекст K = (G,M, I) однозначно задаётся 0,1-матрицей T = (tj): tj = 0 при (gi,mj) EI и tj = 1 при (gi,mj) E I (i =1, 2,..., |G|; j = 1, 2,..., |M |).
Выберем в K = (G, M, I) два произвольных элемента g E G, m E M и определим для них отображения (•}' следующим образом:
g' = {m Е M : (g, m) Е I}, m' = {g E G : (g, m) E I}. (1)
Согласно этому определению, множество g' устанавливает набор признаков, присущих объекту g, а множество m' задает семейство объектов, обладающих признаком m. Отображения (•)' легко обобщаются на множества A С G и B С M:
A' = П g', B' = П m'.
geA meß
Для всякого формального контекста K = (G, M, I) и любых подмножеств Bi, B2 С M верны следующие свойства:
— антимонотонность: если Bi С B2, то (B2)' С (Bi)';
— экстенсивность: В1 С (В^'', где (В^'' = ((В^')' С М.
Аналогичные свойства справедливы для подмножеств множества С. Известно, что отображения (•)' являются соответствиями Галуа и для них верны следующие равенства [1]:
((А')')' = (А")' = А', ((В')')' = (В")' = В'. (2)
Двойное применение (•)' определяет оператор замыкания (•)'' на 2м в алгебраическом смысле. Этому оператору присущи следующие свойства:
— рефлексивность: для любого В С М всегда В С В'';
— монотонность: если В1 С В2 С М, то (В1)'' С (В2)'' С М;
— идемпотентность: для любого В С М всегда (В'')'' = В''.
Множество (В)'' можно трактовать как набор признаков, которые неизменно появляются в объектах формального контекста К = (С, М, I) вместе с признаками из В, причём это множество является наибольшим по включению в пределах этого формального контекста. Если В = В'', то В называется замкнутым множеством относительно оператора (•)''.
Пара множеств (А, В), А С С, В С М, таких, что А' = В и В' = А, называется формальным понятием формального контекста К = (С, М, I) с объёмом А и содержанием В. Далее в ряде случаев определение «формальный» перед словами «контекст» или «понятие» будет опускаться.
Из (2) и определения оператора (•)'' вытекает справедливость следующего высказывания: пара множеств (А, В) является формальным понятием тогда и только тогда, когда А = А'' и В = В''. Очевидно также, что всякое формальное понятие уникально в заданном контексте, т. е. отличается от других формальных понятий объёмом и/или содержанием. Если формальный контекст представлен 0,1-матрицей Т, то при А = 0 и В = 0 формальному понятию (А, В) отвечает максимальная полная подматрица матрицы Т. Строки этой подматрицы соответствуют элементам из А, а столбцы — элементам из В. Здесь под полной подматрицей понимается подматрица, все элементы которой равны 1; полная подматрица является максимальной, если она не содержится в других полных подматрицах.
Обозначим через ^С множество всех формальных понятий формального контекста К = (С, М, I). Пусть (А1,В1) , (А2,В2) € ^С. Множество ^С частично упорядочено отношением
(А1,В1) С (А2,В2)
тогда и только тогда, когда А1 С А2. Отметим, что последнее эквивалентно условию В2 С В1. Каждое формальное понятие (А, В) € ^С определяет для исследуемой предметной области совокупность однородных объектов А со своим специфичным набором признаков В. Если в контексте К = (С, М, I) нет признаков, которые присущи всем объектам из С, то множество ^С содержит формальное понятие (С, 0). Если в контексте нет объектов, обладающих всеми признаками из М, то (0, М) € ^С. Если имеют место оба случая одновременно, то (С, 0) € ^С и (0,М) € ^С. Эти формальные понятия называются тривиальными.
По определению формального контекста К = (С, М, I) отношение I не пустое. Следовательно, отвечающая формальному контексту матрица Т всегда ненулевая, а соответствующее ему множество ^С не является пустым.
Определим на ^С операции пересечения П и объединения и через одноимённые теоретико-множественные операции П и и следующим образом:
(¿1, В1) п (¿2, до = (А П А2, (А1 п ¿2)'), (¿1, В1) и (¿2, В2) = ((д п В2)', д п В2).
Тогда упорядоченное множество (^С, □) образует решётку Ь = (^С, П, и), которая называется решёткой формальных понятий контекста К = (С, М, I). Нулем решётки Ь = (^С, П, и) является формальное понятие (М', М), содержащее все признаки контекста К = (С, М, I), а единицей — формальное понятие (С, С'), в котором объём — множество всех объектов рассматриваемого контекста.
2. О задаче нахождения всех формальных понятий и родственных с ней задачах
В задаче нахождения всех формальных понятий требуется найти множество ^С для заданного контекста К = (С, М, I). Данная задача относится к комбинаторным перечислительным задачам и является #Р-полной [4]. Высокая вычислительная сложность задачи обусловлена тем, что в общем случае число формальных понятий экспоненциально зависит от размера исходного контекста. Например, это имеет место для контекста вида К = (С, С, =). Такому контексту соответствует 0,1-матрица, в которой все элементы равны единице, за исключением диагональных элементов. Легко убедиться, что такой контекст содержит ровно формальных понятий.
На сегодняшний день для определения множества ^С и построения решётки Ь = (^С, П, и) разработано много алгоритмов, в их числе ЫехЮ1о8иге, С1ояе-Ьу-Опе, Ыотв [3-5]. Время их выполнения алгоритмов в худшем случае составляет О(|^С| ■ |С|2 ■ |М|). Поскольку
величина |^С | может экспоненциально зависеть от |С| и |М|, то время выполнения также может быть экспоненциальным. Повысить производительность алгоритмов определения множества ^С и построения решётки Ь = (^С, П, и) можно за счёт параллельных вычислений и применения декомпозиционного подхода [3, 5].
Важно отметить, что задача нахождения всех формальных понятий контекста К = (С, М, I) эквивалентна задаче определения всех максимальных полных подматриц 0,1-матрицы Т, отвечающей этому контексту. Существуют и другие родственные с ней задачи, например задачи, связанные с нахождением биклик в заданном двудольном графе. В самом деле, бинарную матрицу Т можно рассматривать в качестве матрицы смежности двудольного графа, две доли которого соответствуют множествам строк и столбцов матрицы Т. Тогда всякая полная подматрица матрицы Т определяет в заданном двудольном графе полный двудольный подграф, т. е. биклику, а максимальная полная подматрица — максимальную биклику этого графа. К поиску максимальных биклик сводятся следующие теоретико-графовые задачи:
— в заданном двудольном графе найти все максимальные биклики;
— для заданного двудольного графа найти наименьшее покрытие всех рёбер максимальными бикликами;
— в заданном двудольном графе найти наибольшую биклику;
— для заданного двудольного графа найти наименьшее бикликовое разбиение множества его вершин;
— является ли заданный двудольный граф (к, /)-редким? По определению такой двудольный граф не содержит биклик размера к х /.
Все эти задачи относятся к классу #Р-полных или КР-полных задач [10, 11]. Известно, что в общем случае число максимальных биклик графа экспоненциально зависит от числа вершин [12-14]. Доказано, что двудольный граф на п вершинах может содержать до 2п/2 ^ 1,41п максимальных биклик [15, 16]. К родственным можно также отнести перечислительные задачи, связанные с нахождением всех неприводимых покрытий 0,1-матрицы и поиском информативных фрагментов описаний объектов в дискретных процедурах распознавания [17, 18]. Однако большинство известных алгоритмов решения этих задач неприемлемо долго работают на исходных данных большой размерности. Повысить производительность некоторых из них, а также существующих алгоритмов решения рассматриваемой задачи можно путём применения декомпозиционного подхода, излагаемого далее.
3. Метод декомпозиции контекста без потери формальных понятий
Декомпозиционный подход к решению задачи нахождения всех формальных понятий заданного контекста — это сведение её к конечной серии подзадач. Каждая из этих подзадач — уменьшенная копия исходной задачи, которая решается на некоторой части заданного контекста. Процесс декомпозиции направлен на последовательное уменьшение размеров частей контекста. В итоге формируется конечное множество различных частей (в общем случае разного размера и имеющих непустое пересечение). Процесс декомпозиции реализуется итерационно, поскольку рекурсия в подобных случаях более трудоёмка по времени [19]. Для эффективной организации процесса декомпозиции требуется определить правило разложения контекста на части (что является частью и как её выделять в контексте); оценку числа частей, получаемых на каждой итерации разложения; правило остановки процесса разложения. Кроме того, для всякого декомпозиционного метода решения задачи обязательны правила восстановления искомого решения из решений, полученных для подзадач. Полиномиальность по времени процедур разделения исходных данных решаемой задачи на части — требование, при выполнении которого достигается эффект декомпозиции.
Опишем предлагаемый метод декомпозиции формального контекста и докажем, что он позволяет разлагать контекст без потери формальных понятий, а также установим правила эффективной организации процесса декомпозиции.
Пусть К = (С, М, I) — контекст, ^С — множество всех его формальных понятий и Т — соответствующая ему 0,1-матрица. Контекст К1 = (С^М^Д) назовём частью К = (С, М, I), если С1 С С, М1 С М и для любых х € С1, у € М1 отношение (х, у) € Д верно тогда и только тогда, когда (х, у) € I. Заметим, что контексту К1 = (С1, М1, Д) отвечает подматрица матрицы Т, у которой удалены строки, соответствующие объектам из С \ С1, и столбцы, соответствующие признакам из М \ М1. Всякое нетривиальное формальное понятие из ^С можно рассматривать в роли части контекста К = (С, М, I). Части К1 = (С1,М1 ,Д) и К2 = (С2,М2,Д) контекста К = (С, М, I) будем считать различными, если С1 = С2 и/или М1 = М2.
Требуется разложить контекст К = (С, М, I) на конечное множество различных частей так, чтобы выполнялись следующие условия:
1) каждая часть содержит, по крайней мере, одно формальное понятие из ^С;
2) ни одно формальное понятие из ^С не теряется и не возникают новые формальные понятия.
Разложение, удовлетворяющее условиям 1 и 2, назовём «безопасным» относительно формальных понятий. Если 0,1-матрица Т полная, то результирующее множество состоит только из одной части, представляющей сам контекст К = (С,М, I), и эта
часть содержит только одно формальное понятие (С, М). Очевидно, что наибольшее число различных частей, на которые можно «безопасно» разложить контекст, равно числу |^С| формальных понятий контекста К = (С,М, I). Поскольку существуют контексты, для которых число формальных понятий экспоненциально зависит от |С| и | М| , целесообразно оценить число частей, получаемых на каждой итерации разложения, и определить правило остановки для реализации всего процесса разложения за полиномиальное время.
Пусть д Е С и т Е М — произвольные элементы контекста К = (С, М, I). Пары множеств (д'', д') и (т', т'') образуют формальные понятия, первое из которых назовём объектным, а второе — признаковым формальным понятием контекста К = (С, М, I).
Обозначим О = {(д'',д') : д Е С} С ^С множество всех объектных формальных понятий и Б = {(т',т'') : т Е М} С ^С множество всех признаковых формальных понятий контекста К = (С, М, I).
Утверждение 1. Всякое объектное формальное понятие (д'' ,д') формального контекста К = (С, М, I) имеет самое большое по размеру содержание среди других формальных понятий, имеющих в объёме объект д Е С; признаковое формальное понятие (т', т'') обладает самым большим объёмом среди других формальных понятий, имеющих в содержании признак т Е М.
Доказательство. Справедливость утверждения 1 непосредственно следует из свойств оператора (■)'' и определения формального понятия. ■
Пара формальных понятий (д'', д') Е О, (т', т'') Е Б определяет бокс ш = (т', д', 3) как часть контекста К = (С, М, I), если
(д'',д') С (т',т'') , (3)
что эквивалентно д'' С т' (или т'' С д'). Про такой бокс будем говорить, что он образован элементами д Е С и т Е М. Далее вместо ш = (т',д', 3) будем кратко писать ш = (т',д') или (т',д').
Утверждение 2. Для всякого формального контекста К = (С, М, I) и любых (д'',д') Е О, (т',т'') Е Б отношение порядка (д'',д') С (т',т'') выполняется тогда и только тогда, когда (д,т) Е I.
Доказательство. Пусть (д'',д') С (т',т''). Тогда д'' С т', т'' С д'. Согласно рефлексивности оператора (■)'', имеем {д} С д'' С т', {т} С т'' С д'. Из (1) следует (д,т) Е I. Докажем обратное. Пусть (д,т) Е I. Это означает, что {д} С т', {т} С д'. В силу монотонности оператора (■)'' верны включения д'' С (т')'', т'' С (д')''. Отсюда в силу рефлексивности оператора (■)'' и равенств (2) имеем {д} С д'' С т', {т} С С т'' С д'. Следовательно, (д'',д') С (т',т''). ■
Из утверждения 2 следует, что число различных боксов, порождаемых всевозможными элементами формального контекста К = (С, М, I), не превышает веса 0,1-мат-рицы Т, т.е. величины ||Т|| —числа единичных элементов этой матрицы. Очевидно, что 1 ^ ||Т|| ^ |С| ■ |М|.
Будем говорить, что формальное понятие (¿, В) Е ^С вложено в бокс (т',д') контекста К = (С, М, I), и записывать (¿, В) ^ (т', д'), если Л С т', В С д'. Всякий бокс (т',д') не является пустым, поскольку, согласно (3), он всегда содержит формальные понятия (д'',д') Е О и (т',т'') Е Б.
Утверждение 3. Всякое нетривиальное формальное понятие (А, В) контекста К = (С, М, I), которое вложено в бокс (т',д'), образованный элементами д € С и т € М, всегда содержит эти элементы и их замыкания, т.е. если (А,В) ^ (т',д'), то
1) д € А и т € В;
2) д'' С А и т'' С В.
Доказательство. Если (А, В) ^ (т', д'), то А С т', В С д'. В силу антимонотонности отображений (•)' верно т'' С А', д'' С В'. Для формального понятия (А, В) по определению А = В', В = А'. Тогда, т'' С В,д'' С А. В силу рефлексивности оператора (•)'' имеем {т} С В, {д} С А. Отсюда следует справедливость обоих высказываний утверждения 3. ■
Согласно утверждению 3, пару (д'',т'') можно рассматривать в качестве типичного представителя не только бокса (т',д'), но и всех формальных понятий контекста К = (С, М, I), вложенных в этот бокс. Это правомерно, поскольку подматрица, соответствующая боксу (т',д'), во всех строках из д'' и всех столбцах из т'' имеет единичные элементы. Соответствие между боксами и формальными понятиями контекста устанавливает следующая теорема.
Теорема 1. Для всякого формального контекста К = (С, М, I), множества ^С всех его формальных понятий и любой пары множеств (А, В), 0 = А С С, 0 = В С М, справедливы следующие высказывания:
1) если (А, В) € ^С, то всегда в К = (С, М, I) существует бокс ш = (т', д'), д € С и т € М, возможно, не единственный, в который это формальное понятие вложено;
2) если (А, В) — формальное понятие некоторого бокса ш = (т',д') формального контекста К = (С, М, I), то оно также принадлежит ^С.
Доказательство. Пусть (А, В) —произвольное формальное понятие контекста К = (С, М, I) и 0 = А С С, 0 = В С М. По определению для него верны равенства
(А, В) = (В', А') = (А'', В''). (4)
Рассмотрим некоторый объект д € А и найдём соответствующее ему объектное формальное понятие (д'',д'). Поскольку {д} С А, в силу антимонотонности отображений (•)', монотонности оператора (•)'' и равенств (4) справедливы отношения
А' С д', д'' С А'' = А. (5)
Аналогично для произвольного признака т € В и признакового формального понятия (т',т'') верны отношения
В' С т', т'' С В'' = В. (6)
Из (4)-(6) вытекает, что д'' С т' и т'' С д'. Следовательно, пара формальных понятий (д'',д') и (т',т'') определяет бокс ш = (т',д'). Кроме того, А = В' С т', В = А' С С д'. Это означает, что формальное понятие (А, В) вложено в бокс ш = (т',д'). Если выбрать другой объект из А и/или другой признак из В, то получим тот же самый бокс или, возможно, другой бокс, содержащий формальное понятие (А, В). Первое высказывание теоремы 1 доказано.
Докажем второе высказывание. Пусть (А, В) —формальное понятие некоторого бокса ш = (т',д') как части контекста К = (С, М, I). Далее результаты отображений (•)', вычисленные для ш = (т',д'), а не контекста К = (С, М, I) в целом, будем
отмечать символом ш в нижнем индексе. В этих обозначениях имеем
A = В: С т', В = С д'. (7)
Отношения (7) отражают вложенность понятия (¿,В) в бокс ш = (т',д'). Если понятие (¿,В) совпадает с объектным (д'',д') или признаковым формальным понятием (т',т''), по которым образован бокс ш = (т',д'), то второе высказывание тривиальным образом выполняется.
Пусть формальное понятие (¿,В) отлично от (д'',д') и (т',т'') и для него верны отношения (7). Требуется показать, что объём и содержание формального понятия (¿,В) не могут выйти за границы бокса ш = (т',д') при вычислении результатов отображений (■)' применительно к контексту К = (С,М, I), т.е. обязательно верны отношения
в: = В' С т', = ¿' С д'. (8)
Заметим, что по утверждению 3 всегда д Е A и т Е В. Если предположить, что (8) не выполняются, например т' С В', то это будет противоречить утверждению 1, согласно которому формальное понятие (т',т'') обладает самым большим объёмом среди других формальных понятий, имеющих в содержании признак т Е М. Справедливость (8) означает, что (¿, В) является не только формальным понятием бокса ш = (т', д'), но и формальным понятием исходного контекста К = (С, М, I). ■
Согласно теореме 1, разложение контекста К = (С, М, I) на боксы является «безопасным» для любого формального понятия из ^С. В теореме 1 исключены случаи, когда ^С содержит хотя бы одно из тривиальных формальных понятий (С, 0), (0, М). Поскольку всегда верны отношения
(0,М) С (С, 0), (0,М) С (С, С'), (М',М) С (С, 0),
контекст К = (С, М, I) можно рассматривать как бокс (С, М). Следовательно, даже в этих исключительных случаях каждый бокс содержит по крайней мере одно формальное понятие из ^С, при этом ни одно формальное понятие из ^С не теряется.
Из теоремы 1 вытекает важное практическое следствие: искомое множество ^С может быть восстановлено путём объединения множеств формальных понятий, выявленных в боксах контекста К = (С, М, I).
Очевидно, что процесс разложения заданного контекста на боксы может быть организован итерационно, поскольку каждый выявленный на первой итерации бокс можно рассматривать в качестве исходного контекста и вновь подвергать декомпозиции. Оценку числа боксов, получаемых на каждой итерации разложения, устанавливает утверждение 2. Определим правила остановки итерационного процесса разложения. Для этого введём понятие плотности бокса.
Пусть |т'|-|д'| —размер бокса (т',д'), а ||(т',д')|| —число его единичных элементов. Плотностью бокса (т',д') назовём величину
( ' ') ||(т',д')||
а (т,д)= кшт.
Верны естественные границы 0 < а (т',д') ^ 1.
Утверждение 4. Если бокс (т',д'), образованный элементами д Е С и т Е М, имеет плотность а (т', д') = 1, то д'' = т', т'' = д'.
Доказательство. Поскольку а (т', д') = 1, то |т'| • |д'| = || (т', д') ||. Это означает, что для любого объекта д € т' и для всякого признака т € д' верно (д, т) € I. Отсюда д'' = т', т'' = д'. ■
Утверждение 5. Всякий бокс (т',д') с плотностью а (т',д') = 1 содержит ровно одно нетривиальное формальное понятие (А, В) контекста К = (С, М, I), совпадающее с ним, т. е. А = т' и В = д'.
Доказательство. Пусть (А, В) ^ (т',д'), тогда А С т', В С д'. Из утверждения 4 следует, что А С т' = д'' и В С д' = т'', а значит, А С д'' и В С т''. Между тем по утверждению 3 верны обратные включения д'' С А и т'' С В. Следовательно, А = т', В = д'. ■
Из утверждения 5 следует, что бокс (т',д') с плотностью 1 вырождается в нетривиальное формальное понятие и не подлежит дальнейшему разложению.
Заметим, что время построения одного бокса составляет О(|С| • |М|). Согласно утверждению 2, число боксов, возникающих на каждой отдельной итерации процесса декомпозиции, сопоставимо с О(|С| • |М|). Если ограничить число итераций некоторой константой, то процесс разложения исходного контекста на боксы можно осуществить за полиномиальное время. Дополнительно можно установить ограничение на плотность формируемых боксов.
На практике число боксов, возникающих на каждой отдельной итерации процесса декомпозиции, в ряде случаев может быть уменьшено за счёт удаления вложенных и кратных боксов. Рассмотрим для контекста К = (С, М, I) множество боксов
где ш: = (т^, д:'), г = 1, 2,... , ||Т||. Будем говорить, что бокс ш1 = (т^, д') вложен в бокс ш2 = (т'2, д2), и писать ш1 ^ ш2, если верны теоретико-множественные включения
При т1 = т'2 и д' = д2 боксы ш1 и ш2 назовём кратными. Будем считать, что боксы ш1 и ш2 сравнимы между собой, если ш1 ^ ш2 или ш2 ^ ш1, иначе несравнимы. Таким образом, множество П частично упорядочено относительно введённого отношения порядка. С учётом теоремы 1 справедливо
Следствие 1. Для любых ш1 ,ш2 € П, таких, что ш1 ^ ш2, все формальные понятия бокса ш1 также являются формальными понятиями бокса ш2 и контекста
Известно, что в частично упорядоченном множестве всегда можно найти взаимно непересекающиеся цепи [20]. Непустое подмножество {ш:1, ш:2,... , ш:г} множества П является цепью, если все элементы этого подмножества попарно сравнимы между собой и линейно упорядочены: ш:1 ^ ш:2 ^ ... ^ шц. Элемент шц называется максимальным элементом, а величина I —длиной этой цепи. Цепь называется максимальной, если её объединение с любым не принадлежащим ей элементом цепью не является. Две цепи называются взаимно непересекающимися, если они не содержат общих элементов. Число максимальных взаимно непересекающихся цепей и длина самой длинной такой цепи определяются теоремой Дилоурса [20]. Существует алгоритм построения взаимно непересекающихся цепей частично упорядоченного множества, основанный на вычислении максимального паросочетания двудольного графа. В работе [20] доказано, что
т1 С т2, д1 С д2.
К = (С,М^).
время выполнения данного алгоритма полиномиально относительно мощности исходного частично упорядоченного множества и что построенные цепи максимальные и взаимно непересекающиеся.
Согласно следствию 1, максимальный элемент всякой цепи сохраняет все формальные понятия остальных элементов этой цепи. Данные элементы могут быть удалены и тем самым уменьшено число боксов, получаемых на каждой отдельной итерации разложения. Существуют случаи, когда указанный приём не даёт эффекта, например, когда все элементы множества П несравнимы между собой или когда множество П линейно упорядочено. Однако эти случаи крайне редки для реальных контекстов.
4. Вычислительные эксперименты
Для оценки результативности предложенного метода декомпозиции формального контекста были выполнены вычислительные эксперименты. Эксперименты проводились с помощью программы FCACorpus, базирующейся на алгоритме Close-by-One нахождения всех формальных понятий [21]. Использовались формальные контексты, описывающие коллекции тувинских текстов. Для каждого контекста K = (G, M, I) осуществлялось нахождение множества FC без разложения и с разложением на боксы. Результаты приведены в таблице, где |G| —количество объектов; |M| —количество признаков исходного контекста K = (G,M, I); ||T|| —вес матрицы, соответствующей этому контексту; |FC| —число найденных формальных понятий; N — количество образованных боксов: t — время выполнения программы. Эксперименты выполнялись на компьютере с процессором Intel Core i7-720QM Processor (6M Cache, 1.60 GHz) и ОЗУ размером 4 ГБ.
Результаты экспериментов
Случаи |G| |M | l|T || IFC | N t, мс
Без разложения на боксы С разложением на боксы 100 10 480 592 592 470 788 420
Без разложения на боксы С разложением на боксы 500 20 5100 5780 5780 5080 79449 13253
Без разложения на боксы С разложением на боксы 1000 30 14700 14506 14506 13876 394520 180144
Как видно из таблицы, значения | во всех случаях (без разложения и с разложением на боксы) полностью совпадают. Это подтверждает «безопасность» разложения контекста на боксы относительно формальных понятий. Число N боксов, образованных при разложении контекста, не превышает величины ||Т||, что свидетельствует о правильности утверждения 2. Эксперименты показывают, что применение предложенного метода декомпозиции даёт значительный выигрыш по времени: время выполнения программы ЕСАСогриз при разложении контекста на боксы уменьшается в несколько раз.
Заключение
Представленный метод декомпозиции позволяет повысить производительность алгоритмов решения задачи нахождения всех формальных понятий и применять их для предметных областей, описываемых контекстами большой размерности. Данный метод применим также для теоретико-графовых задач, связанных с нахождением биклик в двудольном графе. Возможны другие методы разложения формального контекста на части, однако они неизменно должны быть «безопасными» относительно формальных понятий.
ЛИТЕРАТУРА
1. Биркгоф Г. Теория решеток. М.: Наука, 1984. 568 с.
2. Ganter B. and Wille R. Formal Concept Analyses: Mathematical Foundations. Springer Science and Business Media, 2012. 314 p.
3. Ganter B. and Obiedkov S. A. Conceptual Exploration. Berlin, Heidelberg: Springer, 2016. 315 p.
4. Kuznetsov S. O. and Obiedkov S. A. Comparing Performance of Algorithms for Generating Concept Lattices //J. Experimental and Theoretical Artificial Intelligence. 2002. V. 14. No. 2. P. 189-216.
5. Simon A. A. Best-of-Breed approach for designing a fast algorithm for computing fixpoints of Galois Connections // Inform. Sci. 2015. V.295. No. 2. P. 633-649.
6. Aslanyan L., Alipour D., and Heidari M. Comparative analysis of attack graphs // Mathem. Problems of Computer Sci. 2013. No. 40. P. 85-95.
7. Heydari M., Morales L., Shields C. О., and Sudborough I. H. Computing Cross Associations for Attack Graphs and other Applications // Proc. 40th Ann. Hawaii Intern. Conf. on System Sciences. Big Island, Hawaii, 2007. P. 270.
8. Li J., Liu G., Li H., and Wong L. Maximal biclique subgraphs and closed pattern pairs of the adjacency matrix: A one-to-one correspondence and mining algorithms //J. IEEE Trans. Knowledge and Data Engineering. 2007. No. 19. P. 1625-1637.
9. Bein D., Morales L., Bein W., et al. Clustering and the biclique partition problem // Proc. 41st Ann. Hawaii Intern. Conf. on System Sciences. Big Island, Hawaii, 2008. P. 475-483.
10. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. M.: Мир, 1982. 416с.
11. Дугинов О. И. Сложность задач покрытия графа наименьшим числом полных двудольных графов // Труды Института математики. 2014. Т. 22. Вып. 1. С. 51-69.
12. Prisner E. Bicliques in graphs I: bounds on their number // Combinatorica. 2000. V. 20. P. 109-117.
13. Wood D. R. On the maximum number of cliques in a graph // Graphs and Combinatorics. 2007. No. 23. P. 1-16.
14. Moon J. W. and Moser L. On cliques in graphs //J. Mathematics. 1965. No.3. P. 23-28.
15. Pottosina S., Pottosin Y., and Sedliak B. Finding maximal complete bipartite subgraphs in a graph //J. Appl. Math. 2008. V. 1. No. 1. P. 75-81.
16. Vania M. F. Dias, Celina M. H. de Figueiredo, and Jayme L. S. Generating bicliques of a graph in lexicographic order // Theor. Comput. Sci. 2005. No. 337. P. 240-248.
17. Дюкова Е. В., Журавлев Ю. И. Дискретный анализ признаковых описаний в задачах распознавания большой размерности // Журн. вычислит. матем. и матем. физики. 2000. Т. 40. №8. C.1264-1278.
18. Дюкова Е. В., Инякин А. С. О процедурах классификации, основанных на построении покрытий классов // Журн. вычислит. матем. и матем. физики. 2003. Т. 43. № 12. С.1884-1895.
19. Быкова В. В. Математические методы анализа рекурсивных алгоритмов // Журн. Сибирского федерального университета. Математика и физика. 2008. Т. 3. №1. С. 372-384.
20. Harzheim E. Ordered Sets. New York: Springer, 2005. 390 p.
21. Монгуш Ч. М., Быкова В. В. Программа FCACorpus концептуального моделирования тувинских текстов методами анализа формальных понятий. Свидетельство о государственной регистрации программы для ЭВМ № 2018618907, выдано Федеральной службой по интеллектуальной собственности РФ, 2018.
REFERENCES
1. BirkhoffG. Lattice Theory. AMS, Providence, 1967. 423 p.
2. Ganter B. and Wille R. Formal Concept Analyses: Mathematical Foundations. Springer Science and Business Media, 2012. 314 p.
3. Ganter B. and Obiedkov S. A. Conceptual Exploration. Berlin, Heidelberg, Springer, 2016. 315 p.
4. Kuznetsov S. O. and Obiedkov S. A. Comparing performance of algorithms for generating concept lattices. J. Experimental and Theoretical Artificial Intelligence, 2002, vol.14, no. 2, pp.189-216.
5. Simon A. A. Best-of-Breed approach for designing a fast algorithm for computing fixpoints of Galois Connections. Information Sci., 2015, vol.295, no. 2, pp.633-649.
6. Aslanyan L., Alipour D., and Heidari M. Comparative analysis of attack graphs. Mathem. Problems of Computer Sci., 2013, no. 40, pp. 85-95.
7. Heydari M., Morales L., Shields C. О., and Sudborough I. H. Computing cross associations for attack graphs and other applications. Proc. 40th Ann. Hawaii Intern. Conf. on System Sciences, Big Island, Hawaii, 2007, pp. 270.
8. Li J., Liu G., Li H., and Wong L. Maximal biclique subgraphs and closed pattern pairs of the adjacency matrix: A one-to-one correspondence and mining algorithms. J. IEEE Trans. Knowledge and Data Engineering, 2007, no. 19, pp. 1625-1637.
9. Bein D., Morales L., Bein W., et al. Clustering and the biclique partition problem. Proc. 41st Ann. Hawaii Intern. Conf. on System Sciences, Big Island, Hawaii, 2008, pp. 475-483.
10. Garey M. and Johnson D. Computers and Intractability. N.Y., Freeman and Co, 1979. 340 p.
11. Duginov O.I. Slozhnost' zadach pokrytiya grafa naimen'shim chislom polnykh dvudol'nykh grafov [The complexity of the problems of covering a graph with the smallest number of complete bipartite graphs]. Proc. Institute of Mathematics, 2014, vol. 22, iss. 1, pp. 51-69. (in Russian)
12. Prisner E. Bicliques in graphs I: bounds on their number. Combinatorica, 2000, vol. 20, pp.109-117.
13. Wood D. R. On the maximum number of cliques in a graph. Graphs and Combinatorics, 2007, no. 23, pp. 1-16.
14. Moon J. W. and Moser L. On cliques in graphs. J. Mathematics, 1965, no.3, pp. 23-28.
15. Pottosina S., Pottosin Y., and Sedliak B. Finding maximal complete bipartite subgraphs in a graph. J. Appl. Math., 2008, vol. 1, no. 1, pp. 75-81.
16. Vania M. F. Dias, Celina M. H. de Figueiredo, and Jayme L. S. Generating bicliques of a graph in lexicographic order. Theoretical Computer Science, 2005, no. 337, pp. 240-248.
17. Dyukova E. V. and Zhuravlev Yu. I. Diskretnyy analiz priznakovykh opisaniy v zadachakh ras-poznavaniya bol'shoy razmernosti [Discrete analysis of feature descriptions in high-dimensional recognition tasks]. J. Comput. Mathem. and Mathem. Physics, 2000, vol.40, no. 8, pp. 1264-1278. (in Russian)
18. Dyukova E. V. and Inyakin A. S. O protsedurakh klassifikatsii, osnovannykh na postroyenii pokrytiy klassov [About classification procedures based on classroom construction]. J. Comput. Mathem. and Mathem. Physics, 2003, vol.43, no. 12, pp.1884-1895. (in Russian)
19. Bykova V. V. Matematicheskiye metody analiza rekursivnykh algoritmov [Mathematical methods for analyzing recursive algorithms]. J. Siberian Federal University. Mathematics and Physics, 2008, vol.3, no. 1, pp. 372-384. (in Russian)
20. Harzheim E. Ordered Sets. New York, Springer, 2005. 390 p.
21. Mongush Ch. M. and Bykova V. V. Programma FCACorpus kontseptual'nogo modelirovaniya tuvinskikh tekstov metodami analiza formal'nykh ponyatiy [The program FCACorpus of
conceptual modeling of Tuvan texts by the methods of the formal concepts analysis]. Certificate of state registration of computer programs no. 2018618907, issued by the Federal Service for Intellectual Property of the Russian Federation, 2018. (in Russian)