Логический анализ разнородной ин ормации

advertisement
1Т
УДК 004:510.64
А.Е. Ткачев
Национальный технический университет Украины
«Киевский политехнический институт»


Методы поиска логических закономерностей в базах данных завоевывают все большую
популярность среди других методов анализа данных. С помощью логических правил решаются
задачи прогнозирования, классификации, распознавания образов, извлечения скрытых
закономерностей. Результаты алгоритмов поиска логических закономерностей эффективны и
легко интерпретируются. Однако при автоматическом обнаружении правил из баз данных
возникает проблема, связанная с выявлением большого числа случайных, тривиальных и
малозначимых закономерностей, которые мешают воспринимать действительно глубокие знания.
Такого информационного мусора может быть добыто гораздо больше, чем новых полезных
знаний. Потому основная задача логических методов обнаружения закономерностей состоит в
повышении интеллектуальности отбора нужных правил. В данной статье будет рассмотрены
методика нахождения логических закономерностей и принципы отбора из них наиболее
информативных. Также рассматриваются практические аспекты реализации этих принципов и
методов.

В последнее время появились работы, посвященные применению
формальных методов, таких, как ДСМ-метод автоматического порождения
гипотез [2-3] и анализ формальных понятий (АФП) [4], в качестве средств
интеллектуального анализа данных. Рассмотрим особенности метода АФП как
средства ИАД [5].
Определение 1. Пусть G – множество объектов, M – множество
атрибутов и I – отношение, определенное на G x M: для gG, mM, gIm
выполняется в том случае, когда объект g имеет атрибут m. Тройка K=(G, M, I)
называется контекстом. Если AG, BM – произвольные подмножества, тогда
Соответствие Галуа задается следующим образом:
A'  {mM| gIm для всех gA}, B'  {gG| gIm для всех mB}.
(1)
Пара (A, B), где AG, BM, A'=B и B'=A называется концептом (в
контексте K) с объемом A и содержанием B. Множество атрибутов B следует из
множества атрибутов A, то есть AB тогда, когда все объекты из G, которые
имеют все атрибуты из A, имеют также все атрибуты из B, то есть A'B'.
Соответствие Галуа (1) задает частичный порядок на множестве
концептов:
268
«Искусственный интеллект» 2’2002
Логический анализ разнородной информации
1Т
(A1, B1)  (A2, B2), если A1  A2 и B1  B2.
(2)
Этот порядок отражает двойственную связь объема и содержания: чем
шире содержание концепта, тем уже его объем, и наоборот. Все свойства,
рассматриваемые в рамках АФП, являются булевыми, а контекст, который
содержит только такие свойства, называется однозначным. Относительно такого
контекста можно сформировать множество всех концептов, которые затем
однозначно определяются или своим объемом, или содержанием. Суть появления
каузальных зависимостей состоит в том, что для описания объема некоторых
концептов достаточно части их содержания, то есть подмножество свойств
содержания описывает в точности те объекты, которые описываются всеми
свойствами содержания концепта. Говоря формально, если для концепта (A, B)
существует множество свойств СB и C=B=A, тогда С(B\C).
Однако список всех возможных импликаций, которые получаются таким
образом, будет чрезвычайно большим и избыточным, потому что будет содержать
тривиальные импликации, которые вполне могут быть выведены из других
импликаций дедуктивным путем.
Пример 1. Пусть имеется исходный контекст.
Контекст 1
1
2
3
4
5
X1 x2
y1
y2
z
Список всех импликаций которого представлен ниже:
1. {x1}{y1},
2. {x2}{y2},
3. {x1, x2}{y1, y2, z},
3a. {x1, x2}{z}
4. {z}{x1, x2, y1, y2},
4a. {z}{x1, x2}
5. {x1, y2}{y1},
6. {x2, y1}{y1},
7. {x1, x2, y1}{y2, z},
8. {x1, x2, y2}{y1, z},
9. {x1, x2, y1, y2}{z}.
При этом только 4 импликации являются независимыми и могут быть
получены только индуктивным способом, а остальные 5 могут быть получены из
этих четырех по дедукции. Поэтому разумно рассматривать только алгоритмы,
которые находят базис индуктивных импликаций.
Определение 2. Базисом импликаций называется такое множество
импликаций контекста, в котором ни одна импликация не является логическим
следствием остальных, а при добавлении к нему еще хотя бы одной импликации
это свойство теряется.
Определение 3. Минимальный базис – это такой базис, в котором
удаление хотя бы одного свойства из любой его импликации достаточно, чтобы он
перестал быть базисом.
«Штучний інтелект» 2’2002
269
Ткачев А.Е.
1Т
В примере 1 можно взять в качестве базиса импликации 1, 2, 3 и 4.
Однако третью и четвертую импликации можно еще сократить, и минимальный
базис будет состоять из импликаций 1, 2, 3a и 4a.
Алгоритм нахождения не минимального базиса импликаций предлагается
в [6]. Рассмотрим один из способов получения минимального базиса импликаций.
Алгоритм построения минимального базиса импликаций
Инициализация:
Nimpl:=0; // количество импликаций
count:=1; // количество кандидатов на следующий круг
candcurr[1].premise:=; // посылка кандидата
candcurr[1].infer:=; // заключение кандидата
candcurr[1].pos:=0; // позиция добавляемого свойства
Отбор импликаций:
1. for i:=1 to Nprop do begin
2. if count:=0 then exit;
3. candcurr:=candnext; new(candnext);
4. ncurr:=count; count:=0;
5. for j:=1 to ncurr do begin
6. for k:=candcurr[j].pos+1 to nprop do begin
7. if kcandcurr[j].infer then continue;
8. count:=count+1;
9. candnext[count].premise:=candcurr[j].premise+{k};
10. candnext[count].infer:= candnext[count]. premise;
11. candnext[count].pos:=k;
12. if deduction(candnext[count].premise)<>candnext[count].infer then begin
13. nimpl:=nimpl+1;
14. implbase[nimpl].premise:=candnext[count].premise;
15. implbase[nimpl].infer:=candnext[count].inferdeduction(candnext[count].premise);
16. endif;
17. endfor;
18. endfor;
19. endfor;
Завершение:
Clearbase().
Комментарий к алгоритму. Процедура нахождения импликаций состоит
в том, что сначала тестируются все наборы свойств, состоящие из одного
свойства, потом все наборы из двух свойств, затем из трех и т.д. Для каждого
набора проверяется, не образует ли он импликацию. Candcurr[i].premise содержит
такие наборы свойств; Candcurr[i].infer содержит все те свойства, которые
индуктивно выводятся из Candcurr[i].premise. В Candnext[i].premise записываются
следующие наборы свойств, которые образованы из Candcurr[i].premise
добавлением к нему очередного свойства. В начале следующего цикла Сandnext
становится Сandcurr и все повторяется, пока не исчерпаются все доступные
комбинации свойств контекста. Полученные импликации хранятся в массиве
Implbase. Функция deduction (premise) помогает устранить не базисные
импликации. Она возвращает множество свойств, которые получаются
270
«Искусственный интеллект» 2’2002
Логический анализ разнородной информации
1Т
дедуктивным путем из набора свойств premise с помощью импликаций,
находящихся в данный момент в Implbase. Эвристическое предположение состоит
в том, что если импликация не входит в базис, то ее можно дедуктивно вывести из
базисных импликаций с более короткой посылкой. Это не всегда оказывается
верно. Поэтому в конце работы алгоритма Implbase может содержать некоторое
количество не базисных импликаций. Если нужно получить гарантированный базис,
то в завершение алгоритма выполняются процедура Clearbase(), которая использует
функцию Deduction(premise) для каждой импликации и гарантированно отсеивает
импликации, которые выводятся из остальных дедуктивным способом.
Назовем этот алгоритм базовым. Его достоинство в том, что он строит
минимальный базис строгих импликаций, однако не может находить нестрогие
импликации и выбирать из них наиболее существенные. Для этого нужно ввести
критерии оценки импликаций.

Отойдем от понятия строгой индуктивной импликации, которое было
рассмотрено выше. Впервые анализ эмпирических импликаций как анализ
детерминаций был предложен в [7]. Там вводятся понятия меры точности и
полноты таких импликаций.
Определение 5. Нестрогой импликацией контекста K=(G, M, I) назовем
четверку <X,y,P,C>, где XM – набор свойств, возможно пустой, который
составляет посылку импликации, yM – свойство, являющееся заключением
импликации, P – число, характеризующее точность импликации, C – число,
характеризующее полноту импликации.
Параметры P и C – это характеристики импликации, которые зависят от
ее посылки и заключения и вычисляются на основе заданного контекста.
В дальнейшем для записи импликации будет использоваться
традиционное обозначение Xy. А для точности и полноты – функционалы
P(Xy) и C(Xy).
Точность импликации равна
P(Xy) = |(Xy)|/|X|.
(3)
Она вычисляется как отношение числа общих объектов, на которых
справедливы и посылка, и заключение импликации, ко всем тем объектам, на
которых справедлива ее посылка. Исходя из (2), получаем, что |(Xy)| |X|,
поэтому 0P1.
Другой важной характеристикой импликации является ее полнота, она
равна:
C(Xy)= |(Xy)|/|y|.
(4)
Здесь общее число объектов, которые подтверждают как посылку, так и
заключение, делится на количество объектов, обладающих свойством y. Значения
C также лежат в интервале 0C1.
Точность можно проинтерпретировать как вероятность того, что появится
свойство y при появлении набора свойств X. Чем она больше, тем лучше. Полнота
«Штучний інтелект» 2’2002
271
Ткачев А.Е.
1Т
показывает, сколько процентов заключения объясняется посылкой импликации.
При прочих равных условиях желательно выбирать импликации, имеющие
большую полноту. С увеличением количества свойств в посылке импликации
точность может либо возрасти, либо уменьшиться, либо не измениться. Полнота
же может только уменьшиться.
Кроме этих показателей, введем еще уровень статистической
достоверности импликации R. Его значения соответствуют вероятности
случайного возникновения такой же или более точной импликации. Эта
вероятность равна количеству реализаций, при которых импликация получит
такую же или большую точность, деленных на количество всех возможных
реализаций данной импликации. Пусть |X|=k, |y|=l, |(Xy)|=m. Тогда
достоверность может быть определена по формуле
k
i
k i
R   C l  C n l
i m
k
i
k i
l
n l
C  C
.
(7)
i 0
На практике значительная точность импликации приводит к высокой
достоверности импликации. Однако если количество объектов, подтверждающих
посылку импликации мало, то вероятность случайного появления такой
импликации высока, несмотря на ее большую точность. Например, если количество
объектов в контексте G=100, в заключении импликации |y|=50 объектов, а на
посылку приходится всего |X|=4 объекта, то при таком раскладе случайное
появление импликации с точностью P(Xy)=0.75 будет возможно в 30 % случаев
(R=0.3), а с точностью P(Xy)=1.00 в 6 % случаев (R=0.06). Это довольно большая
вероятность того, что точность импликации может быть результатом случайного
совпадения. Критические значения уровня достоверности выбираются из
эмпирических соображений. Обычно они равны 0.05 или 0.01.
Таким образом, имеет смысл отбирать только импликации с высоким
уровнем достоверности, а также с высокой точностью и полнотой. Однако
понятие высокой точности зависит от конкретного контекста. Например, если
безусловная вероятность появления y, то есть точность импликации P(y),
равна 0,9, а точность импликации P(Xy)=0.8, то вклад посылки X в объяснение
заключения y по сравнению с импликацией y является отрицательным, хотя
сама по себе точность 0.8 является достаточно высокой. Поэтому при отборе
импликаций следует использовать относительные значения точности.
Рассмотрим импликации X1y и (X1X2)y. Вторая импликация
отличается от первой тем, что в ее посылку добавлено множество свойств X2. При
этом точность второй импликации по сравнению с первой может либо возрасти,
либо остаться неизменной, либо уменьшиться. Прирост точности
рассчитывается как:
P=P((X1X2) y) – P(X1y).
(8)
Если он отрицательный или нулевой, то нет нужды рассматривать такую
импликацию, потому что имеется более общая импликация с такой же или
большей точностью, полнота которой заведомо выше. Для достоверности также
следует рассматривать относительные значения. Посылку первой импликации
можно рассматривать как подконтекст (X1, X1, IX1X1) исходного контекста и
272
«Искусственный интеллект» 2’2002
Логический анализ разнородной информации
1Т
затем рассчитывать достоверность второй импликации относительно этого
подконтекста.
Таким образом, можно сформулировать правило отбора нетривиальных
импликаций:
Если получена импликация (X1X2)y и ранее уже была получена
импликация X1y, то если
1. P((X1X2)y) > P(X1y);
2. Достоверность
импликации
(X1X2)
y
в
подконтексте
(X1, X1, IX1X1) выше критического значения, то импликация принимается. А
если хотя бы одно из двух условий не выполняется, то импликация не
принимается.
На основании этого правила в базовый алгоритм вводятся следующие
изменения:
1. Импликации теперь имеют вид Xy, а не XY, и для каждой такой
импликации вычисляется ее точность.
2. Для каждого свойства yM запоминаются импликации y и их
точность. На основании этих импликаций можно будет рассчитывать прирост
точности для других импликаций.
3. В порядке, определенном базовым алгоритмом, формируются все
наборы свойств X, и для каждого простого свойства «y» проверяется возможность
образования импликации Xy. Для этого просматриваются все предыдущие
импликации, в заключении которых стоит свойство «y» и объем которых
охватывает объем тестируемой импликации. То есть все ранее сформированные
импликации вида Vy, где XV.
4. Если найдена хотя бы одна такая импликация с большей точностью или
увеличение точности относительно ее недостаточно достоверно, то тестируемая
импликация не запоминается. В противном случае она заносится в список
значимых импликаций.
Улучшенный алгоритм обладает следующими особенностями:
– находит базис нестрогих импликаций, в котором отсутствуют импликации,
вводимые из остальных дедуктивным способом;
– отсеивает на основе критериев относительной точности и достоверности
малозначимые импликации;
– реализована возможность одновременного поиска импликаций, в которых
заключениями выступают все свойства контекста.
Этот алгоритм был реализован в системе концептуального анализа
данных «Сизид» [8] и показал свою высокую эффективность при поиске
нетривиальных логических импликаций в данных социологических исследований.


Практические аспекты применения логического анализа состоят в том,
что не всегда исходные данные задаются в виде однозначных контекстов.
Реальные свойства могут быть как количественными, так и качественными, с
«Штучний інтелект» 2’2002
273
Ткачев А.Е.
1Т
множеством значений. Поэтому для рассмотренных алгоритмов требуется
преобразовывать такие контексты к виду однозначных контекстов. В случае
количественных свойств такое преобразование будет взаимно-однозначным и
никакой потери информации не произойдет. Для количественных свойств
требуется предварительная сегментация их значений на интервалы, которые уже
можно закодировать при помощи бинарных свойств. Однако здесь присутствуют
два момента. Во-первых, каким образом расставлять границы интервалов? И, вовторых, семейство интервалов представляет собой линейно-упорядоченное
множество, а набор бинарных свойств – неупорядоченное. Можно ли как-то
использовать информацию о порядке интервалов? Рассмотрим подходы к
решению этих проблем.
В простейшем случае границы интервалов можно расставлять на равном
расстоянии друг от друга. При этом мы получим равные интервалы, но не можем
гарантировать однородности объектов по этим интервалам. Более удобно, с точки
зрения анализа данных, получать интервалы с примерно равным количеством
объектов в каждом интервале. В [9] предлагается еще учитывать свойства
распределения количественного признака. То есть выбирать интервалы таким
образом, чтобы близкие значения признака принадлежали одному и тому же
интервалу, а границы интервалов проходили между наиболее удаленными
значениями. Такой подход, видимо, наиболее оправдан при отсутствии какойлибо дополнительной информации.
Рассмотрим теперь способы представления упорядоченных и
неупорядоченных значений свойств набором бинарных признаков. Для этого
вводится понятие шкалы, которая, по сути, является однозначным контекстом, в
котором значения качественного признака или интервалы количественного
выступают в роли объектов, а свойствами являются вновь образованные
бинарные признаки. Таким образом, значения исходного многозначного признака
могут быть закодированы различными способами. После этого многозначный
признак заменяется набором бинарных так, что каждый бинарный признак
охватывает то множество объектов, которое имеет соответствующие значения
многозначного признака. Рассмотрим некоторые шкалы и их применение.
Номинальная шкала. Она имеет вид:
S1
S2
S3
b1
#
b2
b3
#
#
В такой шкале для каждого значения многозначного атрибута отводится
один бинарный признак. Такая шкала подходит для представления номинальных
признаков.
274
«Искусственный интеллект» 2’2002
Логический анализ разнородной информации
1Т
Порядковая шкала
S1
S2
S3
b1
B2
b3
#
#
#
#
#
#
или
S1
S2
S3
с1
с2
с3
#
#
#
#
#
#
дает возможность сохранять некоторую информацию об упорядоченности
интервалов.
Бипорядковая шкала
S
1
S
2
S
3
b1
#
B2
#
b3
#
с1
#
#
#
#
#
с2
#
является объединением предыдущих порядковых шкал. Ее основное достоинство
в том, что комбинации бинарных свойств b1, … , bn, c1, …, cn-1 дают подвыборки,
соответствующие всевозможным объединениям соседних интервалов. Таким
образом, эта шкала сохраняет всю информацию, которую можно получить из
свойства линейной упорядоченности значений признака.
Булева шкала
b1
S1
S2
S3
#
#
b2
#
b3
#
#
#
позволяет учитывать всевозможные комбинации значений исходного признака.
Она может использоваться для номинальных признаков, когда нужно получать
подвыборки, соответствующие объединению некоторых значений признака.
Таким образом, поиск логических закономерностей может проводиться
не только для качественных, но и для количественных признаков.

В данной работе рассмотрен логический подход к анализу данных. Его
преимущество перед традиционными статистическими методами состоит в том,
что он позволяет напрямую обрабатывать качественные данные, а результаты
получаются конкретными и хорошо интерпретируемыми. Он может
использоваться в таких слабо формализованных областях знания, как медицина,
экономика, социология, геология и др. для поиска логических закономерностей.
Вместе с тем формальный поиск логических закономерностей приводит не только
«Штучний інтелект» 2’2002
275
Ткачев А.Е.
1Т
к выявлению значимых правил, но и правил, которые рассматриваются человеком
как тривиальные. На основании рассмотренных в статье критериев эмпирических
правил – точности, достоверности и полноты удалось построить алгоритм,
который эффективно распознает и отсеивает малозначимые импликации.
Применение механизма шкалирования исходного контекста позволяет
использовать этот же алгоритм для анализа любых типов данных: как
качественных, так и количественных.

1.
2.
Piatetsky-Shapiro G., Frawley W. Knowledge discovery in Databases. – Menlo Park (California):
AAAJ Press. – 1991.
Финн В.К. Правдоподобные рассуждения в интеллектуальных системах типа ДСМ // Итоги
науки и техники. Сер. информатики. – 1991. – Т. 15. – С. 54-101.
Финн В.К. Об особенностях ДСМ-метода как средства интеллектуального анализа данных //
НТИ. Сер. 2. – 2001. – № 5. – С. 1-4.
Wille R. Knowledge Acquisition by methods of Formal Concept Analysis: Prepr. / Tech. Hochschule
Darmstadt; 1238. – 1989. – 16 p.
Wille R. Restructuring Lattice Theory: an approach based on hierarchies of concept / Edit. by I.
Rival. – Reidel, Dordrecht-Boston, 1982. – P. 445-470.
Guigues J.L., Duquenne V. Famillies minimales d’implications informatives resultant d’un tableau
de donnees binaires // Math. Sci. Humaines-95. – 1986. – P. 5-18.
Чесноков С.В. Детерминационный анализ социально-экономических данных. – М.: Наука, 1982.
Таран Т.А., Евтушенко С.А., Ткачев А.Е. Приобретение знаний методом концептуального
анализа данных: алгоритмы и программные реализации // Искусственный интеллект. – 2000. –
№ 2. – С. 200 – 206.
Лбов Г.С. Методы обработки разнотипных экспериментальных данных. – Новосибирск:
Наука, 1981.
3.
4.
5.
6.
7.
8.
9.
The work is devoted to the problems of the logic rules revealing in databases. By formal revealing of the
logic implications the large number of irrelevant rules on the one hand turns out, and on the other hand
there are no means of detection of not strict rules admitting exception. In given work the concept of not
strict implication for method of formal concept analysis (FCA) is proposed. The procedure of selection
most informative implications based on parameters of accuracy and reliability not strict implications is
offered. Some attention to the practical usage of this procedure is paid.
Материал поступил в редакцию 17.04.02.
276
«Искусственный интеллект» 2’2002
Download