Логические закономерности, характеризующие заданный класс объектов
Рассмотрим задачу, имеющую более широкий характер, чем те, что были рассмотрены в предыдущих параграфах – задачу описания какого-либо класса объектов.
Предположим, что нас интересует, как в терминах наших признаков нужно описать некоторый класс объектов w. В качестве такого класса может служить любое множество респондентов с изучаемым социологом "поведением" объектов, Например, это может быть класс респондентов, проголосовавших за политического лидера А. Именно этот класс ниже будет рассматриваться в качестве примера.
По существу, говоря о классе w, мы имеем в виду какое-либо из тех множеств, которые выше у нас ассоциировались с выполнением объясняемого выражения. Если объясняемое выражение – формула, то можно сказать, упомянутый класс – это совокупность объектов (респондентов), на которых эта формула выполняется. И задача описания класса – это задача поиска объясняющего выражения. Правда, здесь имеется отличие от тех представлений об объясняющем выражении, которые использовались выше. Предположим, например, что мы выяснили, что все женщины – жители села старше 70 лет голосуют за рассматриваемого кандидата. Тогда соответствующее сочетание значений признаков можно считать объясняющим выражением в смысле ДА, а также алгоритмов THAID или CHAID. Но оно вполне может быть отвергнуто как выражение, описывающее рассматриваемый класс, если окажется, что доля старых жительниц села среди всех проголосовавших за нашего кандидата очень мала. Другими словами, от искомых выше детерминирующих выражений мы в первую очередь требовали точность (интенсивность), а здесь мы даже очень точное выражение отвергнем, если у него малая полнота (емкость). Однако, как мы увидим ниже, соответствующую планку (полноту) в рассматриваемых в настоящем параграфе алгоритмах можно делать как угодно низкой. Поэтому в принципе с их помощью могут быть выявлены любые точные взаимодействия. К обсуждению этого вопроса мы вернемся в конце параграфа, а сейчас приступим к описанию одного из алгоритмов, позволяющих найти описание априори заданного класс объектов.
Будем говорить, что логическая формула выполняется на некотором объекте (объектами у нас чаще всего являются респонденты и в таком случае говорят о выполнении формулы для респондента), если эта формула истинна для этого объекта. Выше мы фактически использовали это определение, не вводя его строго, формально. К примеру, используя фразу: “ 5-е значение 8-го признака часто встречается с 3-м значением 14-го и 1-м значением 2-го”, мы имели в виду то, что выполнение формулы (Х8 = 5) для некоторого респондента часто сочетается с выполнением для него же формулы ((Х14 = 3) & (Х2 = 1)).
Обозначим через v совокупность объектов, не принадлежащих этому классу.
Зададимся некоторыми критериями a и b, изменяющимися от 0 до 1, но разными по величине: a – достаточно большое (скажем, больше 0,8), а b – достаточно малое (скажем, меньше 0,1).
Назовем некоторое суждение s логической закономерностью, характеризующей класс w, если это суждение выполняется для достаточно большой доли элементов этого класса и для достаточно малой доли элементов v. При этом достаточно большой долей будем называть такую долю р, для которой выполняется неравенство
р ³ a,
а достаточно малой – такую долю q, для которой справедливо соотношение
q £ b.
Ясно, что любая закономерность, характеризующая класс w, может служить его описанием. Покажем, как можно искать такие описания. Кратко опишем один из самых простых алгоритмов – алгоритм ТЭМП [Лбов, 1981. С.40-41].
Будем считать, что у нас заданы описанные выше критерии a и b, т.е. определено, какую логическую формулу можно называть закономерностью, а какую – нельзя. Для произвольного высказывания s обозначим через рsw долю тех объектов из w, для которых выполняется s, а через рsv аналогичную долю объектов из v.
В качестве примера при описании алгоритма рассмотрим ситуацию, когда требуется выявить "портрет" респондента, голосующего за кандидата А. Пусть в анкете имеется три вопроса: Х1 – пол (1 – мужчина, 2 – женщина), Х2 - место жительства (1 – крупный город, 2 – небольшой город, 3 – село), Х3 – образование (1 – начальное, 2 – неполное среднее, 3 – среднее, 4 – высшее). Таким образом, в нашем примере w – это класс голосующих за кандидата А, описание класса – это "портрет" составляющих его респондентов в терминах указанных признаков.
Алгоритм ТЭМП представляет собой некий перебор высказываний. При этом в качестве тех логических функций, в виде которых ищется искомая закономерность, используются только конъюнкции. Это существенно для понимания алгоритма. Опишем этапы предусматриваемого алгоритмом перебора суждений.
1. Рассмотрим все элементарные высказывания и их отрицания, т.е. все формулы длины 1. Для каждого высказывания s проверяем выполнение условия рsw ³ a. Если условие не выполняется, то высказывание исключается из дальнейшего рассмотрения. Если выполняется, то проверяем выполнение условия рsv £ b. Если и это условие выполняется, то считаем, что s – одна из искомых закономерностей и выдаем ее на печать. Если рsv > b, то высказывание s запоминается и сохраняется в памяти машины. Такие высказывания далее будем называть отмеченными.
Предположим, к примеру, что, рассмотрев формулы вида (Х1 = 1), (Х1 = 2), …, (Х2 = 1), (Х2 = 2), …, мы выяснили, что среди проголосовавших только доли лиц, обладающих свойствами (Х1 = 1) (т.е. доля мужчин), (Х2 = 3) (т.е. доля жителей села), (Х3 = 3) и (Х3 = 4) (доли лиц с высшим и средним образованием) больше a. Именно эти свойства и служат основанием для дальнейшего поиска закономерностей. Остальные свойства отбрасываем. Ведь если, скажем, доля женщин в рассматриваемом классе меньше установленного нами порога, то таковой будет и доля женщин, проживающих в селе, и доля женщин с начальным образованием и т.д. Другими словами любая конъюнкция, одним из элементов которой будет служить выражение (Х1 = 2), заведомо будет выполняться для очень малого количества объектов нашего класса и, вследствие этого? заведомо не будет закономерностью. Значит, женщины в принципе должны быть исключены из дальнейшего рассмотрения.
Далее проверим, какое количество респондентов, не проголосовавших за А, обладает отобранными свойствами. Предположим, что доля мужчин, т.е. людей со свойством (Х1 = 1) оказалась здесь меньше нашего порога b. Это значит, что указанное свойство – одна из искомых закономерностей: доля мужчин среди проголосовавших за А достаточно велика, а среди непроголосовавших – достаточно мала. Мы это учитываем и далее свойство "быть мужчиной" исключаем из рассмотрения. Это разумно, поскольку в данной ситуации вряд ли нам даст что-то новое отдельное изучение, скажем, мужчин – селян или мужчин со средним образованием. Некоторые из свойств подобного рода вполне могут удовлетворять нашему определению закономерности. Исключая свойство "быть мужчиной" из дальнейшего рассмотрения, мы тем самым обеспечиваем получение закономерностей минимальной длины: ни одно высказывание, получаемое из закономерности путем исключения любого элементарного высказывания, не будет уже закономерностью.
Пусть теперь оказалось также, что доля жителей села среди непроголосовавших больше b. Значит, свойство "быть жителем села", т.е. (Х2 = 3), не является закономерностью. Но оно может стать таковой в сочетании с какими-то другими свойствами. Значит, мы это свойство должны оставить для дальнейшей работы, сделать его отмеченным. Пусть также отмеченными будут и свойства (Х3 = 3) и (Х3 = 4)
2. Второй этап работы состоит в рассмотрении конъюнкций всех суждений, отмеченных на первом этапе. Рассуждения аналогичны описанными выше: если для какого-то суждения s не выполняется условие рsw ³ a (т.е. если рsw < a), то суждение исключается из дальнейшего рассмотрения. Последнее справедливо и для составляющих его элементарных высказываний. Если условие рsw ³ a выполняется, то проверяем справедливость условия рsv£ b. При его справедливости суждение считается одной из найденных закономерностей и выдается на печать. При невыполнении условия рsv £ b (т.е. при рsv > b) оба составляющих s элементарных высказывания отмечаются и оставляются в памяти.
3. Рассматриваются всевозможные конъюнкции длины три с аналогичной проверкой указанных условий и т.д.
Нетрудно видеть, что описанный алгоритм позволяет обнаружить все закономерности, "скрывающиеся" в исходных данных. Более того, как мы уже упоминали, рассматривая первый шаг, найденные закономерности представляют собой высказывания минимальной длины – ни из одной закономерности нельзя выкинуть никакой составляющей ее подформулы без того, чтобы закономерность не перестала быть закономерностью.