Научная статья на тему 'Модификация алгоритма Sawt c весовыми коэффициентами'

Модификация алгоритма Sawt c весовыми коэффициентами Текст научной статьи по специальности «Математика»

CC BY
143
20
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
АЛГОРИТМЫ НЕЧЕТКОГО ПОИСКА / FUZZY SEARCH ALGORITHMS / РАССТОЯНИЕ ЛЕВЕНШТЕЙНА / LEVENSHTEIN DISTANCE / СТРОКОВЫЕ МЕТРИКИ / STRING METRICS

Аннотация научной статьи по математике, автор научной работы — Спирина А.В.

Рассматривается модификация алгоритма SAWT для вычисления расстояния Левенштейна, основная идея которой заключается в применении весовых коэффициентов для определения фонетической схожести слов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

SAWT ALGORITHM MODIFICATION WITH WEIGHT COEFFICIENTS

SAWT algorithm modification for Levenshtein distance computation is considered. The main idea of this modification is to apply weight coefficients to determine the phonetic similarity of the words.

Текст научной работы на тему «Модификация алгоритма Sawt c весовыми коэффициентами»

In this work, a new self-configuring genetic algorithm for DOP, which combines many DOP strategies and adaptively control their joint work, is proposed.

In previous works, the SelfCOMOGA algorithm for multi-objective (MO) optimization problem was introduced [4]. This algorithm combines some of MO techniques using the hybrid of competitive and cooperative co-evolution schemes. The DOP algorithm idea of different search strategies cooperation is taken from SelfCOMOGA.

The self-configuring DOP algorithm combine all mentioned above search strategies. An additional strategy can be included in the algorithm with no changes in the algorithm structure. The population size defines the amount of candidate solutions, which are summary evaluated in a moment of time.

As a priory information about types, frequencies and strength of environment change is absent, the initial population is distributed equally between strategies. When the environment change occurs and some number of algorithm iterations (or generations) is done, the performance of the search strategies is estimated. The percentage of population that is handled by "efficient" at the current time algorithm should be increased. These individuals are taken from less efficient ones. This step can be viewed as competitive co-evolution. It's important to save some minimum threshold percentage to give every algorithm a chance to prove his search abilities with a next environment changes.

When a new distribution of population is formed, some random migrations of the best individuals are performed. This step can be viewed as cooperative co-evolution.

The fine tuning of the individual search strategies is performed using the self-configuring genetic algorithm idea developed in [5]. In that work the variation of genetic operations implementation is defined by probabilities distribution, which continuously re-estimated according to success of the certain operation result. Therefore, there is no need to control the individual algorithm parameters in co-evolution scheme.

The algorithm efficiency was investigated solving a common DOP test problem (the good survey can be found in [1]). It demonstrates the better performance on average than the average performance over individual strategies. The detailed results will be performed in the conference presentation.

The main advantage of the proposed approach is than the DOP problem is solved with no additional information

УДК 519.6

about problem. The search strategies are adaptively controlled by algorithm and form a kind of an optimal interaction structure at each moment of optimization process. So the algorithm can be named as self-configuring.

Библиографические ссылки

1. Cruz C., González J. R., Pelta D. Optimization in dynamic environments: a survey on problems, methods and measures // Soft Computing. 2012. 15 (7).

2. Nguyena T. T., Yang S., Branke J. Evolutionary dynamic optimization: A survey of the state of the art // Swarm and Evolutionary Computation. 2012. 6.

3. Weicker K. Evolutionary algorithms and dynamic optimization problems // Der Andere Verlag, 2003.

4. Иванов И. А., Сопов Е. А. Исследование эффективности самоконфигурируемого коэволюционного алгоритма решения сложных задач многокритериальной оптимизации // Системы управления и информационные технологии. 2013. № 1.1 (51).

5. Semenkin E., Semenkina M. Self-configuring genetic algorithm with modified uniform crossover operator // ADVANCES IN SWARM INTELLIGENCE (ICSI'2012). LNCS 7331 (PART 1), 2012.

References

1. Cruz C., González J. R., Pelta D. Optimization in dynamic environments: a survey on problems, methods and measures // Soft Computing, 15 (7), Springer-Verlag, 2011.

2. Nguyena T. T., Yang S., Branke J. Evolutionary dynamic optimization: A survey of the state of the art // Swarm and Evolutionary Computation 6, 2012.

3. Weicker K. Evolutionary algorithms and dynamic optimization problems // Der Andere Verlag, 2003.

4. Ivanov I. A., Sopov E. A. Issledovaie effektivnosti samokonfiguriemogo koevolutsionnogo algoritma reshenia slozhnih zadach mnogokriterialnoi optimizatsii (On performance investigation of self-configured co-evolutionary algorithm for complex multi-objective optimization problem) // Control systems and information technologies, 1.1 (51), 2013.

5. Semenkin E., Semenkina M. Self-configuring genetic algorithm with modified uniform crossover operator // ADVANCES IN SWARM INTELLIGENCE (ICSI'2012). LNCS 7331 (PART 1), 2012.

© Сопов Е. А., 2014

МОДИФИКАЦИЯ АЛГОРИТМА SAWT C ВЕСОВЫМИ КОЭФФИЦИЕНТАМИ

А. В. Спирина

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660014, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

E-mail: s_nastia@mail.ru

Рассматривается модификация алгоритма SAWT для вычисления расстояния Левенштейна, основная идея которой заключается в применении весовых коэффициентов для определения фонетической схожести слов.

Ключевые слова: алгоритмы нечеткого поиска, расстояние Левенштейна, строковые метрики.

Решетневскуе чтения. 2014

SAWT ALGORITHM MODIFICATION WITH WEIGHT COEFFICIENTS

A. V. Spirina

Siberian State Aerospace University named after academician M. F. Reshetnev 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660014, Russian Federation E-mail: s_nastia@mail..ru

SAWT algorithm modification for Levenshtein distance computation is considered. The main idea of this modification is to apply weight coefficients to determine the phonetic similarity of the words.

Keywords: fuzzy search algorithms, Levenshtein distance, string metrics.

На сегодняшний день во многих областях применяются строковые метрики: определение плагиата, удаление дубликатов из баз данных, анализ последовательности ДНК, поисковые веб-интерфейсы. Строковая метрика - функция расстояния между двумя текстовыми строками, измеряющая их сходство или различие [1].

Существуют различные строковые метрики: расстояние Хэмминга, расстояние Левенштейна, расстояние Дамерау-Левенштейна, расстояние Нидлмана-Вунша, расстояние Смита-Вотермана и др.

Одним из самых известных строковых метрик является расстояние Левенштейна (редакционное расстояние). Расстоянием Левенштейна между двух строк называется минимальное количество операций редактирования символа (вставка, удаление, замена), необходимых для преобразования одной строки в другую [2]. Расстояние Левенштейна можно вычислить с помощью различных алгоритмов. Одним из таких алгоритмов является алгоритм Вагнера-Фишера.

Распознавание речи является одним из быстрораз-вивающихся направлений. Существуют определенные проблемы, связанные с распознаванием русской слитной речи. Системы распознавания, например, английской слитной речи базируются на модели распознавания слов. Такая модель не применима к распознаванию слитной русской речи из-за большого количества словоформ в русском языке. Так, системы для распознавания английской речи используют словарь, состоящий из 100,000 слов. Для русского языка такой словарь состоит из 2,000,000 слов. В связи с этим для распознавания слитной русской речи используется подход, базирующийся на распознавании слогов [3]. Таким образом, главной задачей распознавания слитной русской речи является объединение слогов в слова. В ходе процесса объединения слогов в слова с помощью, например, генетического алгоритма, необходимо для каждого сформированного слова найти все схожие слова в заранее подготовленном словаре.

На этом этапе применяются алгоритмы нечеткого поиска, базирующиеся на вычислении расстояния между словами. Основной задачей нечеткого поиска является поиск в тексте или словаре всех слов, которые совпадают с исходным с учетом максимум к возможных отличий [4].

Для ускорения процесса поиска по словарю всех, похожих на исходное, слов был разработан алгоритм SAWT. Данный алгоритм описан в статье [1].

Несмотря на то, что алгоритм SAWT в несколько раз вычисляет расстояния Левенштейна быстрее по

сравнению со скоростью вычисления этого расстояния алгоритмом Вагнера-Фишера, у алгоритма SAWT все же имеется недостаток: отсутствие весовых коэффициентов для учета фонетической схожести слова из словаря и произнесенного слова. В связи с чем была разработана модификация алгоритма SAWT, которая позволяет учитывать фонетическую схожесть слов.

Модификация алгоритма SAWT (WSAWT -weighted SAWT) выглядит следующим образом:

Предположим, что:

1. Максимально допустимая ошибка между строками к.

2. S] и S2 - строки длиной n и m соответственно. Причем |n - m| < к .

3. p - значение позиции в исходном слове (изначально p = 0).

4. err - значение ошибки (изначально err = 0).

Алгоритм вычисления расстояния между двумя

строками S] и S2 состоит из следующих шагов:

1. Обозначим i-й символ строки S как S[i], j = 0, i и j - счетчики.

2. Ps =

l - p, если 3l\Wlj =

= min Wij, i e[p, p + к] и Wlj Ф1,

i J J

-1, иначе,

Wj e [0,1]- весовые коэффициенты сходства между символом S\ [i] и S2j].

Причем W = 0 означает совпадение символов, а W = 1 означает, что символы отличаются. Значения W от 0 до 1 означают различную степень сходства символов.

3. Если Wlj+1 == 0 и j < (m - 1):

Р = l +1;

j = j +1;

I err +1, если ps == 0,

err + 2* min WH +1 - p - 1,если ps Ф 0.

i,ie[ p ,l-1]

4. Если Wj+j ф 0 или j = (m - 1):

f p = l +1,

I err = err + 2* Wj +1 - p.

5. Если err > к, то вычисление расстояния останавливается. Это означает, что строки различны.

6. j = j + 1.

7. Если p < n и j < m, то переходим к шагу 2.

8. err = err + n - p + m - j.

Если err < к, то строки S1 и S2 можно считать схожими с расстоянием err, в противном случае строки различны.

Также как и алгоритм SAWT, WSAWT имеет смысл применять при небольших значениях к.

Безусловно, данная модификация будет работать медленнее самого алгоритма SAWT за счет дополнительных вычислений (сравнений для коэффициентов), тем не менее данная модификация позволяет повысить точность поиска. Таким образом, WSAWT имеет смысл использовать, если целью работы является точность, а не скорость.

Библиографические ссылки

1. Spirina A., Zablotskiy S. G., Sidorov M. Yu. Two-steps system in searching similar words for fast and reliable automatic concatenation of Russian sub-word units // Вестник СибГАУ. 2013. Вып. 4 (50). С. 144-148.

2. Левенштейн В. И. Двоичные коды с исправлением выпадений, вставок и замещений символов // Доклады Академий наук СССР. 1966. Вып. 163 (4). С. 845-848.

3. Speech and Language Resources for LVCSR of Russian / S. Zablotskiy [et al.] // International Conference

УДК 519.87

on Language Resources and Evaluation (LREC). Istanbul, Turkey, 2012.

4. Smetanin N. (2011, March 24). Fuzzy string search. Nikita's blog. Search algorithms, software development and so on. URL: http://ntz-develop.blogspot.ru/ (дата обращения 09.09.2014 г.).

References

1. Spirina A. V., Zablotskiy S. G., Sidorov M. Yu. VestnikSibGAU. 2013, no. 4(50), p. 144-148.

2. Levenshtein V. I. 1966. Binary Codes Capable of Correcting Deletions, Insertions and Reversals. Soviet Physics Doklady, 10, February.

3. Zablotskiy S., Shvets A., Sidorov M., Semenkin E. and Minker W. Speech and Language Resources for LVCSR of Russian. International Conference on Language Resources and Evaluation (LREC), Istanbul, Turkey, 2012. May.

4. Smetanin N. (2011, March 24). Fuzzy string search. Nikita's blog. Search algorithms, software development and so on. Available at: http://ntz-develop.blogspot.ru/2011/03/fuzzy-string-search.html (accessed 09 September 2014).

© Спирина А. В., 2014

ПРИМЕНЕНИЕ САМОКОНФИГУРИРУЕМОГО ЭВОЛЮЦИОННОГО АЛГОРИТМА ПОСТРОЕНИЯ НЕЧЕТКИХ БАЗ ПРАВИЛ ДЛЯ РЕШЕНИЯ ЗАДАЧ КЛАССИФИКАЦИИ С НЕСБАЛАНСИРОВАННЫМИ ДАННЫМИ

В. В. Становов

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660014, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

Е-шаП: vladimirstanovov@yandex.ru

Приводится модификация функции пригодности эволюционного алгоритма, позволяющая принимать в рассмотрение соотношение числа объектов различных классов в выборке при решении задачи классификации. Рассмотренная модификация алгоритма была протестирована на ряде задач классификации. Показано, что в отличие от классической формы функции принадлежности, которая использует только общую точность по выборке, представленный подход позволяет формировать классификаторы на нечетких правилах со значительно меньшим смещением в сторону класса с большим числом объектов.

Ключевые слова: эволюционные алгоритмы, нечеткая логика, несбалансированные данные, классификация.

APPLICATION OF SELF-CONFIGURED EVOLUTIONARY ALGORITHM FOR FUZZY RULE BASES DESIGN FOR SOLVING CLASSIFICATION PROBLEMS WITH IMBALANCED DATA

V. V. Stanovov

Siberian State Aerospace University named after academician M. F. Reshetnev 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660014, Russian Federation E-mail: vladimirstanovov@yandex.ru

A modification of a fitness function for the evolutionary algorithm allowing taking the different classes objects amount in the sample into consideration when solving classification problems is studied. The algorithm modification is tested on a set of complex classification problems. It is shown, that unlike the classical fitness function form, which

i Надоели баннеры? Вы всегда можете отключить рекламу.