Сведения об авторах
Алина Владимировна Катаева, инженер-программист
Сибирский федеральный университет Эл. почта: [email protected] Россия, Красноярск Жанна Андреевна Бахтина врач-хирург
Красноярская краевая клиническая больница Эл. почта: [email protected] Россия, Красноярск
Information about authors
Kataeva Alina Vladimirovna
software engineer
Krasnoyarsk Regional clinical hospital E-mail: [email protected] Russia, Krasnoyarsk Bakhtina Janna Andreevna
Surgeon
Krasnoyarsk Regional clinical hospital E-mail: [email protected] Russia, Krasnoyarsk
УДК 004.21 Г.М. Рудакова, О.В Корчевская
Сибирский государственный университет науки и технологий имени академика М.Ф. Решетнева
РАЗРАБОТКА СИСТЕМЫ ПО ОБРАБОТКЕ НАРРАТИВНЫХ ДАННЫХ
Разработана система поддержи принятия решений по кластеризации нарративных данных на основе модифицированного метода с учетом специфики обрабатываемых данных. Ключевые слова: нарративные данные, интеллектуальный анализ, разработка системы, искусственный интеллект, кластерный анализ.
G.M. Rudakova, O.V. Korchevskaya
Reshetnev Siberian State University of Science and
Technology
DEVELOPMENT OF A SYSTEM FOR PROCESSING NARRATIVE DATA
The system of decision support on clustering of narrative data based on the modified method taking into account the specifics of the processed data is developed.
Keywords: data narrative, intelligent analysis, develop a system of artificial intelligence, cluster analysis.
Введение
В социальных и исторических науках данные, как правило, имеют нарративную форму: тексты, дневники, литературные произведения, показания свидетелей и т.д. Под нарративом понимают любой повествовательный текст, функция которого - информирование о событиях.
Для нарративного анализа установление исторической истинности индивидуального объяснения не является главной задачей. Главное - это истолкование смысла, которым люди наделяют переживаемые события.
При этом сложность и объем организации таких данных зачастую не позволяет эффективно применять традиционные технологии извлечений знаний из неструктурированной информации
В системах интеллектуального анализа данных особое место занимает проблема кластеризации - обучение без учителя с целью выявления внутренней структуры, на основе которой эксперт сможет более детально осмыслить события, сделать заключения и выводы.
На сегодняшний день не разработано универсальных методов кластерного анализа. Следует отметить, что применение различных методов к одному и тому же набору объектов может привести к получению отличающихся результатов. Это связано с различными функциями близости, алгоритмами оптимизации, метриками, количеством выбранных кластеров и т.п., заложенными в различные методы.
В связи с этим возникает необходимость в разработке высокоэффективных методов для повышения обоснованности и адекватности принимаемых выводов и решений с учетом специфики предметной области.
Методом обработки нарративов было принято решение использовать метод кластерного анализа без учителя (k-средних) в связи с тем, что:
• кластерный анализ не требует априорных предположений о наборе данных т.е. не нужна обучающая выборка;
• позволяет анализировать показатели различных типов данных;
• не накладывает ограничения на представление исследуемых объектов;
• кластерный анализ позволяет сокращать размерность данных.
Кластерный анализ
В отличие от классификации и прогнозирования, которые анализируют объектов по известным меткам класса, кластерный анализ анализирует объекты, у которых метки классов неизвестны. Кластеризация как раз генерирует эти метки. Объекты кластеризуются или группируются на основе принципа максимизации внутриклассовой близости. Таким образом, кластеры объектов формируются так, что объекты одного кластера похожи друг с другом, а объекты разных кластеров непохожи. Существуют также методы иерархической кластеризации, которые позволяют организовать множество наблюдений в иерархию классов
В области классификации без учителя сложилась не такая благоприятная среда для сравнительного анализа экспериментов, как в области классификации с учителем. В первую очередь это связано с высокой трудоёмкостью формирования тестовых данных. Необходимо, чтобы эксперт заранее оценил ( ( ( || Z*X|| - 1 Z Z/2 Z пар документов, что является непосильной задачей для реальных коллекций документов, содержащих десятки тысяч документов и более. Неизвестны готовые наборы данных для экспериментов, и большинство коллективов проводят эксперименты на собственных данных и применяют собственные методики для оценки, что затрудняет сравнительный анализ разных алгоритмов по результатам из различных публикаций. Таким образом, главным основанием для выбора алгоритма кластеризации является знание о его теоретических характеристиках и оценка пригодности для решения частной задачи разбиения текстов.
Алгоритмы, применяющие теоретико-графовый подход, к ним относятся рассмотренные иерархические агломеративные алгоритмы, имеют как минимум квадратичную сложность вычислений. С другой стороны, этот вид алгоритмов может приносить выигрыш в эффективности, то есть в качестве классификации, поскольку имеет глобальную сходимость, детерминирован и частично лишен таких недостатков многих плоских алгоритмов как, например, необходимость заранее знать число кластеров.
Итеративные алгоритмы, пытающиеся улучшить изначальное разбиение массива документов путем оптимизации некоторой целевой функции, к ним относятся алгоритм k-средних и его модификации, имеют линейную вычислительную сложность, что делает их привлекательными для реализации в составе программной системы. И не смотря на их теоретическую локальную сходимость, нередко показывают приемлемый уровень эффективности системы. Однако эти алгоритмы чувствительны к шуму. Если известно, что массив документов содержит большой процент шума, то следует применять либо модификации k-средних, либо иерархические алгоритмы, либо алгоритмы, специально спроектированные для борьбы с шумом, например, плотностный алгоритм DBSCAN. У последнего имеется ещё одно преимущество относительно k-средних -это распознавание кластеров произвольной формы. Но достичь этого возможно только при удачном подборе параметров плотности, что на практике не всегда удаётся.
В вопросе количества настроечных параметров и важности способа их инициализации самыми неприхотливыми являются иерархические агломеративные алгоритмы, которые в общем случае не используют никаких дополнительных параметров. Нечёткие алгоритмы, относящие документы к нескольким кластерам одновременно, имеют преимущество над чёткими в тех приложениях, где природа данных подразумевает такую нечёткость. Они имеют те же недостатки. И, наконец, если приложение требует визуализировать полученные кластеры, то имеет смысл обратить внимание алгоритмы, специально на это нацеленные, к ним в первую очередь относится алгоритм самоорганизующихся карт, и в некотором смысле можно отнести иерархические алгоритмы. Однако не следует ожидать, что такие карты будут востребованы широкой аудиторией пользователей.
Программные системы интеллектуального анализа данных
GATE (General Architecture for Text Engineering - основная архитектура для обработки текста) - масштабный программный продукт с открытым кодом, который включает в себя инструменты для поддержания всего жизненного цикла ПО - от проектирования и разработки до совместного использования множеством серверов в целях аннотации документов.
KNIME - система интеллектуального анализа данных содержит плагин для обработки текста. Плагин, как и вся система, имеет открытый код и поддерживает шестиступенчатый процесс обработки текста - от чтения и синтаксического анализа через распознавание сущностей,
фильтрации и манипуляции до подсчета количества слов, выделения ключевых понятий и, наконец, визуализации. Интерфейс программного продукта изображен на рисунке 2.
Orange инструмент для интеллектуального анализа данных Orange включает в себя расширение для работы с неструктурированными массивами данных - в том числе, с текстами. При этом широкие возможности визуализации Orange используются в целях text mining. Расширения подобного толка удобны тем, что можно не отказываться от привычного ПО, когда появляются новые задачи.
RapidMiner-расширение для работы с текстами известного инструмента RapidMiner понравится консерваторам. Оно отличается широкими возможностями в решении задач text mining. Упор делается на статистический анализ, а данные выгружаются из множества популярных форматов - в том числе, PDF.
LPU (Learning from Positive and Unlabeled Examples - обучение на основе положительных и неопределенных примеров) - система текстового обучения и классификации, использующая технологии SVM (Support Vector Machines) и EM (Expectation Maximization - максимизация ожиданий). Система обучается только на положительных и неопределенных примерах, тогда как классические алгоритмы классификации/обучения подразумевают использование как положительных (верных), так и отрицательных (неверных) примеров.
Представленные программные продукты могу лишь разбить данные по кластерам и предоставить информацию в «голом виде» (как часто и какие слова встречаются), без учета специфики обрабатываемое ими области знаний. В разработанном же продукте учитывается эта область для этого используются ключевые слова. В отличии от остальных программ предложения обрабатываются как набор словосочетаний, связанных друг с другом, а не как набор бессвязных слов.
Модифицированный алгоритм k-средних с учетом специфики предметной области
Для анализа данных используется изменённый алгоритм k-средних. Изменение заключается в том начальные центы кластера k берутся исходя из места положения «ключевых слов», а не случайным образом. При заранее известном числе кластеров k алгоритм k-средних начинает с некоторого начального разбиения документов и уточняет его, оптимизируя целевую функцию - среднеквадратичную ошибку кластеризации как среднеквадратичное расстояние между документами и центрами их кластеров:
где №j - центр, или центроид, кластера
вычисляющийся по формуле:
где сj - количество документов.
Обычно действие алгоритма начинается с выбора k начальных центров кластеров, но они у нас уже известны. Затем каждый документ присваивается тому кластеру, чей центр является наиболее близким документу, и выполняется повторное вычисление центра каждого кластера как центроида, или среднего своих членов. Такое перемещение документов и повторное вычисление центроидов кластеров продолжается до тех пор, пока не будет достигнуто условие остановки.
Условием остановки может служить следующее:
а) достигнуто пороговое число итераций;
б) центроиды кластеров больше не изменяются;
в) достигнуто пороговое значение ошибки кластеризации.
На практике используют комбинацию критериев остановки, чтобы одновременно ограничить время работы алгоритма и получить приемлемое качество. В общем случае алгоритм k-средних достигает локального минимума целевой функции, что приводит к субоптимальному
разбиению документов. Поэтому важен способ выбора начальных значений центроидов. Для этого известны различные эвристические правила, например, получить начальные центры с помощью другого алгоритма - детерминированного, например, иерархического агломеративного.
Алгоритм в общем виде.
Вход: множество проиндексированных документов D, количество кластеров k.
Шаг 1. Инициализация центров кластеров / = 1« к-
Шаг 3. Для каждого &Т>
Шаг 5. Cr := Cr + {dj
Шаг 6. Для каждого С, £ С
Шаг 7.
Шаг 8. Если не достигнуто условие остановки, то повторить с шага 2.
Выход: множество центров кластеров и | множество самих кластеров.
Разработка системы
В качестве примера были взяты данные с сайта бессмертного полка (http://www.moypolk.ru/) в количестве 100 случайных нарративов и сохранены в текстовом формате. На 08.06.2015 в летопись полка записано 276837 имен, что позволяет расширять выборку до очень больших размеров. На рисунке 6 изображен одна из историй с сайта.
Предварительная обработка данных включала в себя:
1. очистку текста от стоп-слов. Стоп-слова - вспомогательные слова, которые несут мало информации о содержании документа («так как», «кроме того»);
2. удаление имен, фамилий и отчеств (для этого используется база фамилий и имен с сайтов vse-familii.com и vse-imena.com соответственно);
3. исправление ошибок в орфографии.
Небольшая модификация алгоритма морфологического анализа может помочь распознавать слова, написанные с ошибками. Для этого используется расстояние Левенштейна - минимальное количество ошибок, исправление которых приводит одно слово к другому. Считается, что существуют ошибки трех видов: ошибка вставки, ошибка замены и ошибка пропуска. Ошибка вставки -это случай, когда в слово вставлена лишняя буква; ошибка пропуска - когда буква была пропущена; и ошибка замены - когда одна буква заменена другой. При поиске слова со шибкой нам придется поочередно пытаться пропускать буквы то во входном слове (в случае ошибки вставки), то в дереве (в случае ошибки пропуска), или и там, и там (в случае ошибки замены). При этом если пропуск буквы во входной строке является действием тривиальным, то пропуск вершины в дереве ведет тому, что мы не знаем, какого именно потомка данной вершины следует выбрать. В связи с этим приходится осуществлять перебор всех потомков и отбирать все успешные варианты.
4. удаление предложений при дублировании.
Для преобразования данных использованы:
1. стемминг - отсечение от слова окончаний и суффиксов, чтобы оставшаяся часть, называемая stem, была одинаковой для всех грамматических форм слова;
2. лемматизация - для этого используется динамическая библиотека лемматизации lemma-tizator.dll (lemmatizator.so) собирается для 32х и 64х битных платформ Windows и Linux, а также Mac OS X. Для платформы .NET в состав SDK включена обертка lemmatizator_fx.dll и пример использования на C#. В лемматизатор входит вероятностная модель морфологии - обучаемая по специально размеченному корпусу числовая база данных. При первом обращении к функции sol_LemmatizePhrase[W,A,8] программа подгружает эту модель в оперативную память и затем использует ее для выбора более вероятной леммы. Увеличение точности, привносимое этой моделью, полностью определяется процессом обучения и ограничениями самой модели. В
Р}' ~ |С-| CltECjdl
лабораторных условиях вероятностная модель морфологии позволяет улучшить точность примерно до 98-99%. На рисунке 7 представлен пример работы лемматизатора;
3. предложения разбиваются на отдельные блоки, для удобства их обработки.
Разработанное программное средство позволяет обрабатывать большие массивы наррати-вов, добавлять и настраивать ключевые слова, определять процентное соотношение найденных слов в выборке.
Так же в приложении предусмотрены функции сохранения и загрузки полученных результатов. Все сохраненные результаты можно загрузить в MS Office Excel и без дополнительной обработки и построить диаграммы для удобства дальнейшего анализа.
Заключение
В качестве области применения была выбрана историческая среда, потому что способность создавать содержательные нарративы исторических ситуаций выступает важнейшим условием построения параллелей в истории, выявления в ней как повторяющегося, инвариантного, так и уникального, своеобразного. Синхронность фактов, раскрывающаяся в ситуационном анализе, лишь одно из проявлений темпорального единства в истории. Гораздо интереснее и насыщеннее смыслами синхронность процессов, которую можно наблюдать при сопоставлении исторических описаний.
Разработанная система, так же может быть использована и в других научных областях.
Также был усовершенствован метод кластеризации k-средних. Особенность метода заключается в использование ключевых слов, задаваемых пользователем.
Исследована зависимость влияния одиночных слов и словосочетаний на точность кластеризации. Наилучшие результаты были получены при использовании словосочетаний, состоящих из 2 и 3 слов.
Разработана высокоэффективная система поддержки принятия решений для обработки нарративных данных, позволяющая провести анализ и сделать выгрузку обработанных данных для дальнейших исследований и статистической обработки.
Список использованных источников
1. Стризое А.Л. Исторический текст как научный нарратив [Текст] // Критика и библиография. 2012. № 2. С. 172-178.
2. Пузанова Ж.В. Нарративный анализ: понятие или метафора? [Текст] // Социология,
2003. № 17. С. 56-82.
3. Большакова Е.И. Автоматическая обработка текстов на естественном языке и компьютерная лингвистика: учеб. Пособие [Текст] / Большакова Е.И., Клышинский Э.С., Ландэ .В., Носков А.А., Пескова О.В., Ягунова Е.В. - М.: МИЭМ, 2011. 272 с.
4. Степанов Р.Г. Технология Data Mining: Интеллектуальный Анализ Данных [Текст] // Казанский Государственный Университет им. В.И. Ульянова-Ленина, 2008. 57 с.
5. Data mining [Электронный ресурс] / Режим доступа: https://ru.wikipedia.org/wiki/Data_mining
6. Хорошевский В.Ф. Управление знаниями и обработка ЕЯ-текстов. [Текст] // Девятая Национальная конференция по искусственному интеллекту с международным участием КИИ-
2004. - М.: Физматлит, 2004. С. 565-572.
7. Баранов М.А. Составные ключевые термы в задаче кластеризации текстовых документов [Текст] // Информационные технологии, 2014. № 1. С. 3-8.
8. Мохов А.С. Разработка методов высокоточной кластеризации двуязычных текстовых библиографических документов [Текст] // Информационные технологии. 2014. № 5. С. 8-13.
9. Методы интеллектуального анализа данных [Электронный ресурс] / Режим доступа: http://www.ibm.com/developerworks/ru/library/ba-data-mining-techniques/
10.Т0П-5 инструментов для Text Mining [Электронный ресурс] / Режим доступа: http://datareview.info/article/top-5-instrumentov-dlya-text-mining/
11.Text Mining [Электронный ресурс] / Режим доступа: http://www.statsoft.ru/home/textbook/modules/sttextmin.html#textmin_2
12.Рафикова С.А. «Живая история» (или, какой же слон на самом деле?) [Текст] // European Social Science Journal, 2011. № 12. С.301-309.
13. Лемматизатор в грамматическом словаре [Электронный ресурс] / Режим доступа: http ://www .solarix.ru/for_developers/api/lemmatizator-api.shtml
14. Кластерный анализ [Электронный ресурс] / Режим доступа: http ://www .statsoft.ru/home/textbook/modules/stcluan.html
Сведения об авторах
Галина Михайловна Рудакова
канд. физ.-мат. наук, профессор
Сибирский государственный университет науки
и технологий имени академика М. Ф. Решетнева
Эл. почта: [email protected]
Россия, Красноярск
Оксана Валериевна Корчевская
канд. техн. наук., доцент
Сибирский государственный университет науки и технологий имени академика М.Ф. Решетнева Эл. почта: [email protected]
Information about authors
Galina Mikhailovna Rudakova
Professor, Ph.D. in Technical Sciences Reshetnev Siberian State University of Science and Technology
Е-mail: gmrfait@gmail. com
Russia, Krasnoyarsk
Oksana Valerievna Korchevskaya
Associated Professor, Ph.D in Technical Sciences Reshetnev Siberian State University of Science and Technology
Е-mail: okfait@gmail. com Russia, Krasnoyarsk
УДК 519.642.2, 519.683 Е.В. Кучунова, А.С. Керп, Е.С. Мальцева
Институт математики и фундаментальной информатики СФУ
ПОЛУЛАГРАНЖЕВЫЙ МЕТОД ДЛЯ УРАВНЕНИЯ НЕРАЗРЫВНОСТИ И УРАВНЕНИЯ АДВЕКЦИИ-ДИФФУЗИИ
В работе представлен вычислительный алгоритм численного решения одномерных уравнений неразрывности и адвекции-диффузии. Метод основан на точном тождестве двух пространственных интегралов на соседних слоях по времени. В работе представлены две модификации метода: первого и второго порядка сходимости.
Ключевые слова: уравнение неразрывности, уравнение адвекции-диффузии, полулагранжевый метод, численное решение.
H. Kuchunova, H. Maltseva, A. Kerp
Institute of Mathematics and Fundamental Informatics Siberian Federal University
A SEMI-LAGRAGIAN ALGORITHM FOR ADVECTION EQUATION AND ADVECTION-DIFFUSION EQUATION
The paper presents a computational algorithm for the numerical solution of one-dimensional equations of continuity and advection-diffusion. The method is based on the exact identity of two spatial integrals on neighboring layers in time. Two modifications of the method are presented: the first and second order of convergence.
Keyword: semi-Lagramgian method, integral balance equation, numerical solution, advection equation, advection-diffusion equation.
Введение
Полулагранжевый метод является способом численного решения дифференциальных уравнений в частных производных, описывающих процесс переноса. Данный подход начал активно развиваться [1,2] с 1960-х годов и является продолжением развития метода характеристик. Суть полулагранжевого метода состоит в том, что он учитывает лагранжевую природу процесса переноса, т.е. вдоль характеристик уравнение неразрывности можно переписать в виде обыкновенных дифференциальных уравнений. Взяв за начало первые предположения в метеорологической литературе о переносе вихря в упрощенных моделях крупномасштабного подхода, метод был преобразован в законченный метод дискретизации для полных уравнений атмосферных потоков. Полулагранжевый метод связан с аналогичными методами, разработанными в других сферах моделирования, такими как, например, модифицированный метод характеристик, метод Эйлера-Лагранжа и характеристический метод Галеркина. Исчерпывающий обзор полулагранже-вого метода в метеорологической литературе представлен в [3].