HE^OIHÖOPMAraKA TA IHTEЛEKTУAЛЬHI CИCTEMИ
HEИPOИHФOPMATИKA И ИHTEЛЛEKTУAЛЬHЫE CИCTEMЫ
NEUROINFORMATICS AND INTELLIGENT SYSTEMS
УДК 004.023
Е. В. Бодянский, В. В. Волкова, К. В. Коваль
АВТОМАТИЧЕСКАЯ КЛАСТЕРИЗАЦИЯ ТЕКСТОВЫХ ДОКУМЕНТОВ НА ОСНОВЕ ГЕНЕТИЧЕСКОГО АЛГОРИТМА С ИСКУССТВЕННЫМ
ОТБОРОМ
Предложен новый генетический алгоритм с искусственным отбором, в основе которого лежит синтез обычного эволюционного генетического подхода с идеями последовательного комплекс-метода отыскания экстремума произвольных функций многих переменных. Алгоритм используется для кластеризации больших объемов текстовых документов в режиме последовательной обработки.
ВВЕДЕНИЕ
В общей проблеме интеллектуального анализа данных - Data Mining, Exploratory Data Analysis, Text Mining и, особенно, Web Mining важное место занимает задача поиска и классификации информации, содержащейся в текстовых документах, количество которых в Web практически неограниченно и постоянно увеличивается, достигая астрономических значений [1]. Фактически речь идет об очень больших и непрерывно растущих во времени базах данных и знаний, образованных зачастую не связанными между собой текстами самого различного содержания и происхождения, поиск и анализ в которых должен производиться в on-line режиме, обеспечивая эффек-
© Бодянский Е. В., Волкова В. В., Коваль К. В., 2009
тивное автоматическое разбиение обрабатываемых документов на обычно заранее неизвестное число классов [2].
К настоящему времени сложилось достаточно много подходов к решению этой задачи, однако, большинство из них связано с использованием человеческих интеллекта и труда, которые весьма дороги. В связи с этим сегодня упор делается на средства искусственного интеллекта, позволяющие решать задачу в автоматическом режиме при минимальном участии человека. Среди таких средств достаточно высокую эффективность продемонстрировали как ставшие уже традиционными методы кластеризации, так и более современные методы вычислительного интеллекта такие, как искусственные нейронные сети (самоорганизующиеся карты Кохонена, BSB-нейромодели, сети теории адаптивного резонанса и т. д.) и нечеткие системы (fuzzy C-means Бездека, алгоритмы Густафсона -Кесселя, Ягера - Филева, Хёппнера - Клавонна -Крузе и т. д.).
Применение математических методов кластеризации требует предварительного преобразования анали-
зируемых документов в приемлемые для дальнейшей обработки компактные формы такие, как концепты, число которых также может быть велико [1], либо векторы, образованные частотами появления отдельных термов в тексте, размерность которых может быть неприемлемой для эффективного использования как нейронных сетей, так и четких, и нечетких методов кластеризации. Так или иначе, для решения задачи классификации документ должен быть сначала преобразован в векторную форму с числовыми компонентами.
Дальнейшее решение связано с проблемой оптимизации (критерий самообучения нейронной сети, целевая функция кластеризации) функции многих аргументов, число которых очень велико, а сама эта функция, описывающая либо корреляцию между концептами [3-4], либо меру семантического подобия текстов [3], как правило, многоэкстремальна [2] и может иметь сколь угодно сложную форму [1].
Именно это обстоятельство привело в последние годы к использованию в проблеме кластеризации текстов методов третьего основного направления вычислительного интеллекта - эволюционных вычислений и, прежде всего, генетических алгоритмов [1-7] и дало начало направлению, получившему название Genetic Mining [4]. Генетические алгоритмы в общем случае представляют собой методы эвристической оптимизации, чьи механизмы подобны биологической эволюции на основах принципов естественного отбора [8-12]. Такие их свойства, как адаптивность, робаст-ность, возможность распараллеливания вычислений и отыскание глобального экстремума принятой функции приспособленности (fitness function), обеспечили их эффективное использование для решения задач кластеризации в пространствах высокой размерности [3]. При этом каждый документ, подлежащий обработке, кодируется в форме хромосомы (string) с бинарными компонентами, множество документов образует популяцию с изменяющимся числом особей, а в качестве функции приспособленности используется, как правило, та или иная мера семантического подобия анализируемых текстов.
Вместе с тем, холландовские алгоритмы, основанные на идеях естественного отбора, характеризуются низкой скоростью сходимости, не позволяющей им отыскивать решение за приемлемое время. В связи с этим представляется целесообразным ввести в процедуры генетической оптимизации элементы искусственного отбора, отличного от общепринятых стратегий элитизма (пчелиная семья, модель островов и т. д.) и имеющие под собой более строгое математическое обоснование.
ГЕНЕТИЧЕСКИЙ АЛГОРИТМ
С ИСКУССТВЕННЫМ ОТБОРОМ
В основе предлагаемого алгоритма лежит синтез обычного эволюционного генетического подхода с идеями адаптационной оптимизации [13] и, прежде всего, последовательного комплекс-метода отыскания экстремума функций многих переменных [13-15]. При этом в каждый момент времени текущая популяция отождествляется с «облаком» - комплексом точек в пространстве переменных-факторов, а кроме традиционных генетических операторов мутации, кроссовера и инверсии дополнительно вводятся операторы комплекс-поиска такие, как отражение, растяжение и сжатие. При этом в отличие от традиционного комплекс-метода нами предлагается отражать не одну наихудшую вершину комплекса, а целое множество наихудших особей популяции.
В общем случае процедура оптимизации на основе обычного последовательного комплекс-метода выглядит следующим образом: требуется отыскать минимум некоторой функции
E(x) ^ min
x е R
достаточно общего вида, при этом о характере этой функции не делается практически никаких априорных предположений. Работа алгоритма начинается с формирования начального комплекса
х{(0) = (Хц(0), xi2(0), ..., хц(0), ..., xin(0))T, i = 1, 2, ..., N > n + 1,
представляющего собой «облако» (популяцию) точек (векторов), достаточно произвольно расположенных в n-мерном пространстве факторов. Среди множества этих точек находится «наихудшая» xi(1), в которой значение функции E (xH( 0)) максимально, после чего эта точка отражается через центр тяжести всех остальных вершин-точек, формируя новый комплекс xi( 1), i = 1, 2, ..., N. Такое отражение вместе с растяжением и сжатием обеспечивают движение комплекса к экстремуму функции E(x), при этом, благодаря достаточно случайному распределению точек «облака», поиск имеет глобальный характер.
С формальной точки зрения рассмотрим процесс оптимизации на k-й итерации поиска, когда сформирован комплекс xi(k), i = 1, 2,., N. Среди множества точек xi( k) находится «наихудшая» такая, что
E(xH(k)) = max{E(x1(k)),..., E(xH(k))}, i
после чего определяется центр тяжести «облака» без наихудшей точки:
Хс( к) =
1
N - 1
£ х{(к) - хн(к)
\.г = 1
Далее хн(к) отражается через центр тяжести хс(к), формируя новую вершину комплекса хЯ(к), которая теоретически расположена ближе к экстремуму чем хн(к) и хс(к), т. е.
Е(хК(к))< Е(хс(к))< Е(хн(к)).
Операция отражения формально имеет следующий вид:
х»(к) = хс(к) + пд(хс(к) - хн(к)) = = ХГ-Т х1( к) + ■■■ + xN -1( к) + ^ х^ к) + ... + + N»1 хх-1(к) -Пихн(к) = Х(к)Я,
где Пк - параметр шага отражения, часто полагаемый равным единице, Х(к) = (хн(к), х1(к),..., хм-1(к)) -(п х N)-матрица координат вершин комплекса, Я = т
= (-Пя> Ххг}' - (N х 1)-вектор.
В случае, если отраженная вершина хЯ(к) окажется «наилучшей» среди всех остальных точек комплекса, т. е.
Е(хЯ(к))< Е(х{(к))< Е( хн(к)), г = 1, 2,., N - 1,
производится операция растяжения комплекса в направлении от центра тяжести хс(к) до хЯ(к) согласно выражению
хе(к) = хс(к) + Пе(хя(к) - хс(к)) = Х(к)Е,
где пЕ - параметр шага растяжения, часто полагаемый равным двум,
Е = I -ПеПЯ,
1 - п Е (1 - П Я) 1 - п Е ( 1 -п я) N - 1 ""' N - 1
т
Если же хЯ(к) окажется наихудшей среди всех хг(к), комплекс сжимается согласно соотношению
х5(к) = хс(к) + %(хя(к) - хс(к)) = Х(к)S,
При % = 1, ПЕ = 2, % = 0, 5 приходим к простым выражениям
Я = -1
т
Е = -2
N - 1""' N - 1) '
т
11
" N - 1""' N - 1) '
5 = I -0, 5
1
1
' N - 1""' N - 1) '
Таким образом, в процессе своего движения к экстремуму оптимизируемой функции комплекс на каждой итерации теряет одну наихудшую вершину и приобретает одну новую точку так, что на (к + 1)-й итерации новый комплекс также имеет N точек-вершин.
В отличие от комплекс-метода, в генетических алгоритмах в результате селекции из популяции одновременно исключаются несколько особей с наихудшими (максимальными) значениями функции приспособленности. В связи с этим представляется целесообразным ввести алгоритм комплекс-метода с отражением, растяжением и сжатием сразу нескольких вершин.
Итак, пусть на к-й итерации процесса оптимизации имеется комплекс хг(к), г = 1, 2,., N с Р < N наихудшими вершинами хн (к), р = 1, 2,..., Р. Тогда координаты центра тяжести комплекса без вершин хн (к) задаются выражением
хс( к) =
1
N - Р
£ хг(к) - £ хнр(к)
р = 1
а процедура отражения описывается системой уравнений
хя,(к) = хс(к) + Пя(хс(к) -хн1(к)),
х» (к) = хс(к) + Пя(хс(к) -хн„(к)),
хя1(к) = (1 + Пя)хс(к) - П»хн,(к),
х»Р(к) = (1 + Пя)хс(к) -П»хнР(к).
В матричной форме эти системы уравнений могут быть записаны более компактно
где п5 - параметр шага сжатия, обычно полагаемый равным 0,5,
5 = I -ПбПЯ,
1 - 11 5 ( 1 - 11 я ) 1 - п ( 1 - п )
N - 1
N - 1
ХЯ( к) = X (к )ЯР, где Х(к) = (хн^(к),..., хНр (к), х1)к),. .., xN-P(к)) -
(пхР) (пх^-Р))
(п х ^-матрица, Х»( к) = (х»< (к),..., х»( к)) - (п х Р)-
т
т
P
матрица, Rp =
N - P
-vrip
1 + vr N - P
N-P,P
(N x P) -мат-
P
рица, 1р - (P хp) -единичная матрица, IN_рр -
((N - P) х P) -матрица, образованная единицами. В случае, если среди отраженных вершин оказывается Q < P наилучших, комплекс растягивается в их направлении согласно уравнениям
*£,(k) = xc(k) + Ve(xr,(k) -xc(k)),
xeq(k) = xc(k) + Ve(Xrq(k) -Xc(k)),
xe,( k) = ( 1 - Ve )xc( k) + VeXr, (k),
xeq(k) = (1 - VE)XC(k) + VEXRq(k) ,
Xe( k) = X (k) Eq,
где XE(k) = (xE^(k), ..., x^(k)) - (n x Q)-матрица, Eq =
f A
- nEnRIQ
Q\
N - Qi
(1 ve (1 - vr ) r
(1 n-P IN-Q'Q Q
(N x Q )-матрица.
Если, далее, среди отражаемых вершин окажется и < Р наихудших, комплекс сжимается в их направлении согласно уравнениям
Xst(k) = xc(k) + ns(xRt(k) - Xc(k)), Xsv(k) = Xc(k) + Vs(Xru(k) - Xc(k)) , Xs,(k) = ( 1 + Vs)Xc(k) - VrXr,(k), Xs^(k) = (1 + Vs)Xc(k) - VsXr^(k), Xs( k) = X( k) s u,
sTT =
где Xs(k) = (xs (k), xs (k)) - (n x U)-матрица, r f A
N - Ui
- VsVRru
(1 Vs(1 - Vr) r
(1--—-77-rN-i
N-U
N-UU
(N x U)-матрица.
Q
Таким образом, комплекс-метод приобретает черты генетического алгоритма, у которого в результате
селекции на каждой итерации из популяции удаляется несколько наихудших особей.
Объединяя введенную модификацию комплекс-метода с холландовской генетической процедурой, приходим к алгоритму, реализующему идею искусственного отбора, состоящую в данном случае в том, что из популяции не только удаляются наихудшие особи, но и одновременно создаются их «антиподы», обладающие улучшенными свойствами.
Работа такого алгоритма образована последовательностью следующих шагов:
- создание начальной популяции, образованной P(0) особями хромосомами - вершинами комплекса;
- операция кроссовера с увеличением популяции Pcr(0 )> P( 0);
-операция мутации PM( 0) > PCR( 0);
-операция инверсии Pr( 0) > PM( 0);
- первая селекция (определение наихудших особей) без сокращения популяции PsEL1(0) = Pr(0);
- операция отражения с удалением P наихудших особей Pr(0) < Psel 1(0);
- операция растяжения без увеличения популяции
Pe( 0) = Pr( 0);
- операция сжатия без увеличения популяции Pi (0) = Pe( 0);
- вторая селекция с удалением PW(0) наихудших особей Psel2(0) = Pr(0) - PW(0) = P(1) и формирование популяции P(1) для следующей итерации алгоритма. Предлагаемый алгоритм может быть представлен схемой, приведенной на рис. 1.
РЕЗУЛЬТАТЫ ЭКСПЕРИМЕНТАЛЬНЫХ
ИССЛЕДОВАНИЙ
Целью исследования было оценить качество кластеризации стандартными генетическими алгоритмами и разработанным в ходе исследования генетическим алгоритмом с искусственным отбором. Работа предложенного алгоритма оценивалась на выборке новостных статей Reuters-21578, которая является одной из наиболее часто используемых тестовых выборок в Text Mining и информационном поиске. Для эксперимента было выбрано 200 документов из топи-ков coffee, crude, sugar и trade выборки Reuters-21578.
Эксперимент показал, что предложенный генетический алгоритм с искусственным отбором работает быстрее и дает более точные результаты (в среднем 6-8 %) по сравнению со стандартными генетическими алгоритмами и может быть использован для работы с большими массивами текстовых документов.
Таким образом, было установлено, что в задаче кластеризации документов предложенный генетический алгоритм с искусственным отбором дает более точные результаты, чем стандартные генетические алгоритмы.
ВЫВОДЫ
В работе предложен новый генетический алгоритм с искусственным отбором на основе комплекс-метода адаптационной оптимизации, предназначенный для отыскания экстремума произвольных функций большого числа аргументов в условиях существенной неопределенности о характере этих функций. Алгоритм обладает улучшенными характеристиками по сравнению с традиционными генетическими процедурами, прост в реализации и предназначен для использования в Genetic Mining больших массивов текстовых документов в режиме последовательной обработки.
ПЕРЕЧЕНЬ ССЫЛОК
1. Desjardins G. A genetic algorithm for text mining / G. Desjardins, G. R. Godin, R. Proulx // Sixth International Conference on Data Mining, Text Mining and their Business Applications. - 2005. - P. 133-142.
2. Zhang C. Self-adaptive GA, quantitative semantic similarity measures and ontology-based text clustering / C. Zhang, W. Song, C. Li, W. Yu // 2008. - http:// eprints.rclis.org/14909/ (15.12.2008).
3. Othman R. M. Incorporating semantic similarity measure in genetic algorithm: an approach for searching the gene ontology terms / R. M. Othman, S. Deris, R. M. Illias, H. T. Alashwal, R. Hassan, F. Mohamed // International Journal of Computational Intelligence. -2006. - № 3. - P. 257-266.
4. Khalessizadeh S. M. Genetic mining: using genetic algorithm for topic based on concept distribution / S. M. Khalessizadeh, R. Zaefarian, S. H. Nasseri, E. Ardil // Proceedings of World Academy of Science, Engineering and Technology - 2006. - 13. - P. 144-147
5. Mani I. Advances in Automatic Text Summarization / I. Mani, M. T. Maybury // Cambridge : MIT Press, 1999. -442 p.
6. Othman R. M. Automatic clustering of gene ontology by genetic algorithm / R. M. Othman, S. Deris, R. M. Illias, Z. Zakaria, S. M. Mohamad // International Journal of Information Technology. - 2006 - 3.-№ 1. - P.37-46.
7. Rocha F. E. L. A new approach to meaningful learning assessment using concept maps: ontologies and genetic algorithms / F. E. L. Rocha, J. V. da Costa, E. L. Favero // 2004. - http://cmc.ihmc.us/papers/ cmc2004-238.pdf (15.12.2008)
8. Holland J. H. Genetic algorithms and the optimal allocations of trails // SIAM Journal of Computing. - 1973. -2. - P. 88-105.
9. Holland J. H. Adaptation in Natural and Artificial Systems. An Introductory Analysis with Application to Biology, Control and Artificial Intelligence. - London : Bradford Book Edition, 1994. - 211 p.
10. Батищев А. И. Генетические алгоритмы решения экстремальных задач. - Воронеж : Воронежский государственный технический университет, 1995 - 69 с.
11. Курейчик В. М. Генетические алгоритмы. Состояние. Проблемы. Перспективы // Известия РАН. Теория и системы управления. - 1999. - 1. - С. 144-160.
12. Рутковская А. Нейронные сети, генетические алгоритмы и нечеткие системы / Рутковская Д., Пилиньский М., Рутковский Л. - Москва : Горячая линия - Телеком, 2004. - 452 с.
13. Горский В. Г. Планирование промышленных экспериментов / Горский В. Г., Адлер Ю. П. - Москва : Металлургия, 1974. - 264 с.
14. Химмельблау А. М. Прикладное нелинейное программирование / Химмельблау Д. М. - Москва : Мир, 1975. - 534 с.
15. Реклейтис Г. Оптимизация в технике : кн. 1 / Реклейтис Г., Рейвиндран А., Рэгсдел К. - Москва : Мир, 1986. - 349 с.
Надшшла 16.03.2009
Запропоновано новый генетичний алгоритм 3i штучным eiddopoM, в оcновi якого лежить синтез звичайного еволющйного генетичного тдходу з iдеями пocлiдoвнoгo комплекс-методу пошуку екстремуму дoвiльниx функцш багатьох змтних. Алгоритм використовуеться для кла-стеризацп великих обсяглв текстових дoкументiв у ре-жимi пocлiдoвнo'i обробки.
The new genetic algorithm with artificial selection is proposed. The algorithm is based on the synthesis of ordinary evolutional genetic approach with the ideas of sequential complex-method for extremum searching arbitrary multivariable functions. The algorithm is used for a clusterization of large data collection in a data-processing mode.
УАК 519.7:004.93
О. О. Олшник, С. О. Субботш
0ПТИМ13АЦ1Я НА 0СН0В1 КОЛЕКТИВНОГО 1НТЕЛЕКТУ РОЮ ЧАСТОК 3 КЕРУВАННШ 3М1Н0Ю ¡ХНЬ01 ШВИДК0СТ1
Дocлiдженo метод oптимiзацi'i на ocнoвi моделювання пoведiнки рою часток. Розроблено мoдифiкацiю дocлiд-женого методу з керуванням змтою швидкocтi часток. Проведено експерименти 3i знаходження глобального оптимуму багатoвимipнo'i функцИ на ocнoвi запропонова-ноЧ мoдифiкацi'i.
ВСТУП
Град1ентш методи безумовно! оптим1зацп, що тра-дицшно застосовуються при синтез! моделей склад-них об'екив i систем, е високоиеративними та накла-дають певш вимоги (наприклад, ушмодальшсть, без-перервшсть, монотоншсть, диференцшовашсть ташш.)
© Олшник О. О., Субботш С. О., 2009