Сравнение алгоритмов бикластеризации
Сравнение алгоритмов бикластеризации проводилось по двум основным направлениям: скорость работы и общий «вклад» найденных алгоритмами бикластеров в исходную матрицу. Для подсчёта «вклада» использовалась бикластерная модель, предложенная Миркиным и Крамаренко вместе с алгоритмом BBox. Также для этой коллекции были загружены ключевые слова, предоставляемые самой библиотекой IEEE Xplore, включая… Читать ещё >
Сравнение алгоритмов бикластеризации (реферат, курсовая, диплом, контрольная)
Сравнение алгоритмов бикластеризации проводилось по двум основным направлениям: скорость работы и общий «вклад» найденных алгоритмами бикластеров в исходную матрицу. Для подсчёта «вклада» использовалась бикластерная модель, предложенная Миркиным и Крамаренко вместе с алгоритмом BBox.
В данной модели матрица «остатков» (residuals) для набора бикластеров и исходной матрицы определяется по следующей формуле:
где — бинарные векторы принадлежности строк к множеству и столбцов к множеству соответственно. Таким образом, для подсчёта элемента матрицы остатков, нужно найти бикластер с наибольшей плотностью, который содержит данный элемент, то есть. Говоря менее формально, мы рассчитываем для каждого элемента исходной матрицы степень его «присутствия» в полученных бикластерах.
Далее, для подсчёта общего «вклада» мы считаем сумму квадратов остатков по всей матрице и делим на сумму квадратов элементов исходной матрицы:
.
1) Время выполнения Время работы алгоритмов бикластеризации сравнивалось на квадратных входных матрицах разного размера.
Как и в случае с мемоизацией, тестовые матрицы генерировались при помощи генератора случайных чисел.
Таблица 3. Сравнение алгоритмов спектрального разложения и жадного алгоритма Greedy BBox. Время представлено в секундах.
Размер матрицы. | Случайная вещественная матрица. | Случайная бинарная матрица. | ||||||
Greedy BBox. | Spectral (10). | Spectral (50). | Spectral (100). | Greedy BBox. | Spectral (10). | Spectral (50). | Spectral (100). | |
50×50. | 0,06. | 0,06. | 0,13. | 0,22. | 0,06. | 0,04. | 0,12. | 0,22. |
100×100. | 0,38. | 0,05. | 0,15. | 0,26. | 0,38. | 0,06. | 0,14. | 0,26. |
150×150. | 1,06. | 0,07. | 0,18. | 0,31. | 1,05. | 0,07. | 0,17. | 0,29. |
200×200. | 2,54. | 0,09. | 0,21. | 0,35. | 2,28. | 0,08. | 0,21. | 0,33. |
250×250. | 5,26. | 0,11. | 0,24. | 0,40. | 4,53. | 0,1. | 0,23. | 0,37. |
300×300. | 9,02. | 0,13. | 0,25. | 0,44. | 8,05. | 0,12. | 0,27. | 0,41. |
350×350. | 13,81. | 0,16. | 0,31. | 0,49. | 12,25. | 0,14. | 0,31. | 0,51. |
400×400. | 22,50. | 0,17. | 0,34. | 0,55. | 18,53. | 0,15. | 0,35. | 0,61. |
450×450. | 30,68. | 0,18. | 0,39. | 0,70. | 25,35. | 0,18. | 0,39. | 0,64. |
500×500. | 41,92. | 0,21. | 0,44. | 0,66. | 34,05. | 0,23. | 0,44. | 0,71. |
550×550. | 60,47. | 0,24. | 0,49. | 0,78. | 46,73. | 0,24. | 0,46. | 0,79. |
В связи с тем, что алгоритм спектральной бикластеризации требует указания количества бикластеров, на которое нужно разбить входную матрицу, в таблице представлены результаты анализа времени работы по выделению 10, 50 и 100 бикластеров данным методом. Из таблицы видно, что время работы жадного алгоритма матрицы растёт намного быстрее времени работы спектрального метода по мере увеличения размера входной. В таблице не приведено время работы алгоритма BBox, так как он значительно проигрывает по скорости конкурентам (обработка матрицы размеров 200×200 занимает около 440 секунд). Также стоит отметить, что алгоритм Greedy BBox работает быстрее на бинарных матрицах, чем на вещественных, чего нельзя с однозначностью сказать про спектральный метод.
Рисунок 2. Время работы алгоритма GreedyBBox в секундах на случайных входных данных.
2) «Вклад» бикластеров.
В данном разделе для экспериментирования с алгоритмами для бикластерного анализа использовалась коллекция аннотаций к научным статьям, содержащая 2971 аннотацию. Данная коллекция была получена при помощи выгрузки аннотаций из электронной библиотеки IEEE Xplore. Для поиска данных аннотаций в электронной библиотеке использовался текстовый запрос «cluster analysis», поэтому данная коллекция связана с темой «кластерного анализа». Ключевые словосочетания из этой коллекции были выделены по гибридному алгоритму (модифицированный TextRank в сочетании с частотным анализом), представленному во второй главе.
Также для этой коллекции были загружены ключевые слова, предоставляемые самой библиотекой IEEE Xplore, включая термины, использованные для индексирования в базе данных Inspec (удалось получить для 2622 статей), и авторские ключевые слова (удалось получить для 1777 статей).
Таблица 4. Сравнение алгоритмов по общему «вкладу».
Тип матрицы. | Эксперимент. | Greedy BBox. | Spectral (10). | Spectral (50). | Spectral (100). | Greedy BBox с фильтрацией. | BBox. |
Матрица схожести. | BM25; 0,15. | 0,74. | 0.89. | 0,91. | 0,96. | 0,73. | 0,74. |
Матрица схожести. | Метод АСД; 0,2. | 0,69. | 0,86. | 0,89. | 0,91. | 0,68. | 0,69. |
Матрица схожести. | Controlled Inspec terms. | 0,83. | 0,98. | 0,95. | 0,94. | 0,77. | 0,68. |
Матрица релевантности. | BM25. | 0,17. | 0,98. | 0,97. | 0,95. | 0,17. | 0,13. |
Матрица релевантности. | Авторские ключевые фразы. | 0,21. | 0,99. | 0,97. | 0,94. | 0,21. | 0,32. |
Для составления таблицы 4 было проведено 5 испытаний с различными параметрами:
- 1) Анализ матрицы схожести между ключевыми фразами, составленной по метрике релевантности Okapi BM25 и пороговым значением релевантности равным 0,15;
- 2) Анализ матрицы схожести между ключевыми фразами, составленной по методу АСД и пороговым значением релевантности равным 0,2;
- 3) Анализ матрицы схожести между ключевыми фразами, полученными из библиотеки IEEE Xplore для коллекции статей по кластерному анализу. Использовались фразы из тезауруса базы данных Inspec — controlled Inpsec terms. Здесь не указано пороговое значение, так как составленные вектора релевантности являются бинарными (фраза релевантна для статьи, если так указано в базе данных Inspec);
- 4) Анализ матрицы релевантности, составленной по метрике Okapi BM25;
- 5) Анализ бинарной матрицы релевантности для авторских ключевых фраз.
Из таблицы 4 можно видеть, что разработанный жадный алгоритм бикластеризации и алгоритм BBox сильно превосходят по точности («вкладу») алгоритм спектрального разложения. В таблице также представлены результаты для бикластеров, найденных по алгоритму GreedyBBox и отфильтрованных на основе схожести между собой (см. раздел 2.5.). Можно видеть, что фильтрация бикластеров не только не ухудшила показателей «вклада», но даже улучшила его в некоторых случаях — фильтрация производилась при пороге схожести по коэффициенту Жаккарда равном 0,7. Это связано с тем, что после фильтрации в итоговой матрице остатков получается меньшее количество отрицательных элементов, чем при учёте всех бикластеров.
Что касается сравнения алгоритмов BBox и GreedyBBox, таблица 4 показывает неоднозначные результаты: в двух случаях BBox заметно опережает жадный алгоритм, в одном лучший показатель у алгоритма GreedyBBox, а в двух других показатели примерно равны. Эти результаты отражают различие в подходах к выделению бикластеров: BBox находит только локально-оптимальные бикластеры, тогда как GreedyBBox находит новые бикластеры практически на каждой итерации, но многие из них могут сильно отличаться от оптимальных, а значит, скорее всего, вносят малый «вклад» в общий результат. Всё же, полученный результат показывает, что новый жадный алгоритм способен конкурировать с BBox, при этом значительно превосходя его по скорости работы.