УДК 519.6
МЕТОД СЕКЦИОНИРОВАНИЯ И ЕГО ПРИМЕНЕНИЕ ПРИ КЛАССИФИКАЦИИ РАЗНОРОДНОЙ ИНФОРМАЦИИ
(Работа выполняется в рамках НИР «Разработка универсального программного комплекса интерактивного отображения, обработки и управления большими массивами данных на основе методик и алгоритмов построения связей между объектами» (ГК 14.514.11.4036), проводимой в ходе реализации ФЦП «Исследования и разработки по приоритетным направлениям развития научно-технического комплекса России
на 2007-2013 годы» при финансовой поддержке Министерства образования и науки Российской Федерации)
А.В. Бурилин, ст. преподаватель; Р.Н. Гордеев, к.ф.-м.н., доцент;
П.А. Борисов, вед. инженер-программист («Интегрированные системы», Тверской государственный университет, ул. Желябова, 33, г. Тверь, 170100, Россия, aburilin@naumen.ru, rgordeev@naumen.ru)
Анализ однородности имеет большой потенциал для эффективной визуализации ансамблей деревьев и аналогичных алгоритмов машинного обучения. Однако существуют как минимум два недостатка этого подхода: в случае очень большого количества учебных наблюдений могут возникнуть вычислительные проблемы и, что более важно, точность прогноза в двухмерных вложениях подчас заметно хуже, чем в оригинальном ансамбле деревьев. Последнее означает, что значимая информация теряется в низкоразмерных вложениях.
Авторы предлагают простое расширение анализа однородности, называемое секционированием, которое зачастую решает указанные проблемы при многоклассовом ранжировании, где Ye{1, ..., K}, и может заметно улучшить точность прогнозирования.
Ключевые слова: метод секционирования, анализ однородности, визуализация графов.
PARTITIONING METHOD AND ITS APPLICATION WHEN CLASSIFYING HETEROGENEOUS INFORMATION BurilinAV., senior lecturer; Gordeev R N., Ph.D., associate professor; BorisovP.A, leading engineer-programmer (Integrated systems, Tver State University, Zhelyabova St., 33, Tver, 170100, Russia, aburilin@naumen. ru, rgordeev@naumen. ru) Abstract. In our previous work we considered the analysis of homogeneity and believe that it has great potential for effective visualization of ensemble of trees and similar machine learning algorithms. However, there are at least two drawbacks to this approach: the computational problems may arise if the number of training observations is very large and, more importantly, the accuracy of prediction in two-dimensional embeddings often much worse than in the original ensemble of trees algorithms, this means that significant information is lost in low-dimensional embeddings.
We present a simple extension analysis of homogeneity called sectioning, which often solves the above mentioned problems in the case of multi-class ranking and can lead to a significant improvement in prediction accuracy. Keywords: partitioning method, homogeneity analysis, visualization of graphs.
Ранее авторы уже анализировали однородность, сначала располагая правила, а затем наблюдения в зависимости от расположения правил (см. стр. 169-174 настоящего выпуска журнала). В данной работе сначала выделим группы, а затем разместим правила, определяющие эти группы. После вычисления расположения правил на плоскости выполним те же действия, как и в случае применения анализа однородности.
Такой подход позволит увеличить скорость вычислений и главное - лучше разделять наблюдения по классам в низкоразмерных вложениях.
Для группировки наблюдений по классам требуется, чтобы и,= и,' для всех /, /'е{1, ..., п}, таких, что Г,=7,'. Пусть ик - позиция к-го класса,
к={1, ..., К}. Пусть также матрица-индикатор G размером Кхт будет агрегатом матрицы G, где агрегирование проводится по К классам,
скт = . (1)
При сделанных предположениях оптимизационная задача анализа однородности примет следующий вид:
Km _
argmin G
U ,R k= 1 j=1
IFk - Rj\\2
(2)
(3)
(4)
Решение можно получить аналогично тому, как это сделано для анализа однородности при помощи метода, основанного на вычислении собственных значений. Введем ряд обозначений. Положим, что Du = diag (GGT), Dr = diagG) и
при ограничениях
Uт diag (GGT )U = 1q
eTKÜ = 0 .
A := D- SK (GD~lGT )SKD,
(5)
Обозначим через V матрицу, состоящую из первых q собственных векторов матрицы А.
Тогда решение (2) будет таким:
и = П-и1П¥, (6)
я = П;1оти. (7)
Выражение (7) определяет расположение правил Я, после чего они запоминаются (фиксируются). Далее можно действовать, как и при вычислении положения наблюдений в анализе однородно-
-1/2
сти, применив выражение U=diag(GG )- GR для вычисления расположения отдельных наблюдений.
Точность предсказания оценивается так же, как и при анализе однородности.
Алгоритм хеширования
Рис. 1. Решение классификации статей по ключевым словам, полученное методом секционирования
Таким образом, алгоритм секционирования можно представить в виде следующей трехшаго-вой процедуры.
1. Обучить исходный метод анализа однородности на обучающей выборке наблюдений и выделить все т используемых правил в бинарную матрицу G. Произвести агрегирование строк матрицы G по признаку классовой принадлежности согласно (1), чтобы получить G .
2. Вычислить д-размерное вложение для правил R согласно (7).
3. Вычислить позиции отдельных наблюдений и (для обучающих или тестовых данных) согласно выражению U=diag(GGT)~lGR.
Пример визуального представления решения отображен на рисунке 1. Все статьи сгруппированы согласно их классовой принадлежности (физи-
ка, математика, информатика, биология и т.д.), а каждый класс представлен одной точкой в двухмерном вложении. Ребра в данном графе являются взвешенными, веса соответствуют частоте появления того или иного ключевого слова в группе (определяется на обучающей выборке).
Если применить метод секционирования к примеру, приведенному авторами при анализе однородности, получим результат, изображенный на рисунке 2. В данном случае точность определения ближайшего соседа составила 17 %, что несколько лучше, чем в случае применения анализа однородности. С другой стороны, существенно улучшена скорость вычислений: теперь разложение по собственным векторам осуществляется для матрицы размером Кхт, где К=8, вместо прежней матрицы размером пхт, п=692. Это также превосходит по скорости метод наименьших квадратов, применяемый в анализе однородности в качестве альтернативного подхода для вычислений.
Серые точки на рисунке 2 обозначают правила (оценки экспертов), которые эксперты, принадлежащие одному из обследуемых научных центров, присвоили той или иной статье.
Напомним, что все эксперты принадлежали одному из восьми научных центров.
Линии, образуемые на рисунке 2 правилами (оценками) между двумя научными центрами (например, первым и пятым или первым и шестым), свидетельствуют о том, что эти правила в основном характерны для экспертов только из этих научных центров, но не для остальных. Кроме того, заметны выбросы, то есть эксперты, которые находятся достаточно далеко от своих центров притяжения, например эксперты, классифицированные как принадлежащие пятому научному центру. Однако при детальном рассмотрении оказывается, что они производили мало оценок, а не проявляли поведение, характерное для другой группы, что сказалось на их расположении. Кроме того, следует отметить, что поведение некоторых экспертов при оценивании статей весьма схоже с поведением экспертов других научных центров.
Силовая укладка на карте
Уникальной особенностью алгоритма секционирования является то, что наблюдения, принадлежащие одному классу, группируются при вычислении положения правил. Это дает свои вычислительные преимущества, но, что более важно, приводит к более хорошему визуальному представлению разделения наблюдений между классами. Тем не менее разделения по классам по-прежнему не так точны, как в случае применения случайного леса, лежащего в основе алгоритма. Основной причиной является частичное перекрытие между классами, возникающее в процессе поиска расположения правил, поскольку дисперсионное ограничение (3) не штрафует перекрытия между классами.
В результате значительно ухудшается геометрическая интерпретация целевой функции (2). Минимизацию суммы квадратов расстояний между наблюдениями и правилами можно рассматривать как присоединение пружин между каждым правилом и наблюдением, которые соединены ребром. Энергия системы в этом случае пропорциональна сумме квадратов расстояний, а минимизация суммы квадратов длин ребер эквивалентна нахождению минимальной энергии и, следовательно, физически стабильного решения.
В то время как целевая функция (2) имеет четкую геометрическую интерпретацию, ограничение (3) - немного менее четкую [1, 2]. Для достижения хорошего разделения между классами дисперсионные ограничения (3) не совсем подходят, поскольку в них нет штрафов для классов, занимающих одинаковое положение в (2).
В большинстве задач отрисовки графа широкое распространение получили так называемые силовые алгоритмы укладки. Они просты в реализации и понятны, поскольку могут рассматриваться как моделирование некоторой физической системы (см., например, [3-5] и ссылки в них). Основная идея этих алгоритмов в том, чтобы выбрать укладку графа, минимизирующую потенциальную энергию системы, состоящей в основном из сил
притяжения (пружины) и отталкивания (электромагнитное взаимодействие). В случае с методом секционирования аналогия очевидна: целевая функция (2) может рассматриваться как потенциальная энергия пружин, соединяющих правила и наблюдения в двудольном графе. В модели (2) с ограничениями (3) и (4) нет сил отталкивания, поэтому предлагается заменить слегка искусственное ограничение (3) на ограничение, моделирующее силы отталкивания между классами. В таком случае потенциальная энергия между позициями ик и ик классов k и К (к^к!) пропорциональна
||ик - и к |.
Таким образом, дисперсионное ограничение (3) заменяется ограничением следующего вида:
Е 1/и - ик,\\2 < 1. к,к':к* к'
(8)
В этом ограничении константа 1 может быть заменена на любое другое значение, поскольку решения изоморфны относительно модуля изменения масштаба. Результаты работы силовой укладки можно видеть на рисунке 3, отражающем более четкое разделение экспертов по научным центрам и высокую предсказательную точность случайного леса.
Таким образом, задачу (2) с ограничениями (8) можно записать в форме Лагранжа:
К т _ ц __ц2 Ц_ _ и
а^тт£ £ Gbи ^ -Я,\\ +1 £ 1 / К - Ц, 2 .
и ^ к=1 ]=1 к ,к ':к *к'
Параметр X не имеет смысловой нагрузки, а лишь масштабирует решения, поэтому произвольно можно задать значение Х=1. В итоге получим следующую задачу оптимизации:
а^шш £ £Оы \ик -Я,||2 + X 1/||и-йк.||2. (9)
и ,Я к=1 ]=\ к,к ':к Фк'
Ограничение (4) может быть применено после решения (9). Приведенную задачу оптимизации можно решить методом наименьших квадратов. Сначала фиксируются позиции правил Я и проводится оптимизация относительно и, затем фиксируются найденные значения и позиций клас-
сов и проводится оптимизация относительно Я. Последняя задача тривиальна, так как Я сразу же определяется формулой Я = diag(ОтG)-1 Gт и .
Задача оптимизации по и при фиксированной Я несколько сложнее, так как целевая функция в (9) не является выпуклой. Однако, поскольку значительно сокращена размерность задачи (в итоге получена Kxq-мерная задача оптимизации), для ее решения вполне подойдут такие простые и хорошо изученные алгоритмы численной оптимизации, как метод наискорейшего спуска и ему подобные.
Сходимость авторского метода определяется следующим условием: считаем, что алгоритм сходится на итерации 1е N тогда и только тогда, когда евклидово расстояние между позициями и на итерациях I и 1+1 менее заданной величины погрешности, определенной на уровне 10-6. Сходимость алгоритма достигается весьма быстро, поскольку, как уже отмечалось ранее, оптимизация проводится на матрице размерности Kxq, где К -количество выделяемых классов, ад- размерность пространства для отображения; обычно оптимизация производится на матрице размером Кх2. В последнем случае имеет смысл применять обычные градиентные методы. Начинаем с решения задачи секционирования (2), далее значения и пересчитываются в направлении градиента, используя шаг в 1/10 квадратного корня среднего расстояния между центрами классов в выражении (2), который постепенно сокращается. После каждого пересчета позиций центров классов и необходимо осуществлять пересчет позиций правил Я, используя выражение Я = diag G)-1 Gг и.
Таким образом, формально метод секционирования можно представить в виде следующих процедур.
1. Обучить исходный метод на обучающей выборке и выделить все т правил/листьев графа в бинарную матрицу-индикатор G. Провести агрегирование матрицы G согласно выражению (1). В результате получим агрегированную матрицу G.
2. Вычислить вложения размерности д (размерность пространства, используемого для отображения) для правил Я, используя выражение (7).
3. Выполнять последовательно следующие два шага, пока алгоритм не достигнет сходимости:
- провести оптимизацию K позиций U центров классов, используя метод градиентного спуска для целевой функции (9), зафиксировав позиции правил R;
- пересчитать позиции правил в соответствии с выражением R = diag (GT G)-1 GT U.
4. Центрировать позиции наблюдений при помощи выражения U ^ SKU и снова пересчитать позиции правил R = diag (GT G)-1 GT U.
5. Вычислить позиции всех наблюдений U при помощи выражения U=diag(GGT)~l GR.
Подытоживая, можно отметить, что предложенный метод секционирования позволяет значительно сократить размерность задачи классификации наблюдений и их визуального представления. Кроме того, авторами разработан комбинированный алгоритм, объединяющий метод секционирования с алгоритмами силовой укладки графов, что позволяет значительно увеличить точность предсказаний первого при отображении графов в пространствах малой размерности, например на плоскостях, и значительно упростить вычислительные процедуры, используемые при разбиении наблюдений на классы и их визуализации.
Литература
1. Michailidis G. and De Leeuw J., The Gifi System of escriptive Multivariate Analysis, Statistical Sc., 1998, no. 13 (4), pp. 307-336.
2. De Leeuw J., Beyond Homogeneity Analysis, Technical Report, UCLA, 2009.
3. Fruchterman T. and Reingold E., Graph Drawing by Force-Directed Placement, Software-Practice and Experience, 1991, no. 21, pp. 1129-1164.
4. Di Battista G., Eades P., Tamassia R., and Tollis I., Graph Drawing: Algorithms for the Visualization of Graphs, Upper Saddle River, NJ, Prentice Hall, 1998.
5. Kamada T. and Kawai S., An Algorithm for Drawing General Undirected Graphs, Information Processing Letters, 1989, no. 31, pp. 7-15.
References
1. Michailidis G., De Leeuw J., Statistical Science, 1998, no. 13 (4), pp. 307-336.
2. De Leeuw J., Beyond Homogeneity Analysis, Technical Report, UCLA, 2009.
3. Fruchterman T., Reingold E., Software—Practice and Experience, 1991, no. 21, pp. 1129-1164.
4. Di Battista G., Eades P., Tamassia R., Tollis I., Graph Drawing: Algorithms for the Visualization of Graphs, Upper Saddle River, NJ, Prentice Hall, 1998.
5. Kamada, T., Kawai S., Information Processing Letters, 1989, no. 31, pp. 7-15.
Вниманию авторов!
Пристатейный список литературы (не менее 3 пунктов) необходимо транслитерировать в соответствии с общепринятыми в мировой практике правилами библиографических описаний на латинице. Новые редакционные требования на сайте журнала www.swsys.ru.