Использование квантизации для визуализации данных
2009-03-29 17:31Визуализация подразумевает способ представления данных, который будет не только интуитивно-понятен, но и информативен: т.е. содержать особенности, критичные для принятия решения. В этой статье рассматривается использование метода наилучшей квантизации для улучшения информативности представления в форме гистограммы и "облака тегов".
Использование квантизации для визуализации данных
Визуальное представление это преобразование данных в форму, доступную для восприятия. Такое преобразование может вносить искажения, поэтому хорошая визуализация всегда представляет собой разумный баланс между понятностью и степенью искажений.
Менее очевидно, что визуализация требует отказа от представления части информации: удачная визуализация отсеивает менее ценные данные и сосредотачивается на более ценных. Это может достигаться выбором наиболее важных параметров многомерного распределения или группировкой данных. Так, хорошо известны способы представления многомерных данных на плоскости основанные на выборе главных компонент распределения или на использовании криволинейной двухмерной поверхности вместо плоскости, как это делается в карте признаков Кохонена.
В этой работе основное внимание сосредоточено на другом подходе: выборе наилучшего масштаба представления и наилучшей группировке данных. Проблема хорошо иллюстрируется потерями при отображении данных в меньшем масштабе. "Обычное" отображение данных линейным сокращением масштаба приводит к потере информации: так, для приведеного на рисунке примера, оператор увидит равномерное поле черных точек и никогда не узнает о существовании белых:

Но проблему можно решить внесением нелинейных искажений масштаба, при этом деление поля на черные и белые участки сохраняется, хотя меняется их относительный размер:

Выбор того или иного способа отображения зависит от того, что ценнее: факт наличия различных участков или возможность сравнения размеров. Часто, относительный размер оказывается менее важным, как в случае использования для отображения графиков логарифмической (или другой криволинейной) проекции.
Менее очевидный, но существенно более интересный, пример искажения относительных размеров - схематичное изображение карт городов, когда центральные области города с радиальной застройкой изображаются с существенно большей детализацией, чем окраины. Помимо интуитивного выбора способа изменения масштаба, существует и достаточно строгий математический способ: наилучшая квантизация.
Ниже рассмотрено применение наилучшей квантизации для двух подходов к повышению информативности представления: оптимальное искажение масштаба и оптимальная группировка данных. Оба случая подходят к показанному выше примеру, но использованы в разных способах визуализации.
Адаптивная детализация
Адаптивная детализация - это такое искажение масштаба представления, при котором сохраняется максимальное количество деталей изображения. Одномерный случай адаптивной детализации можно рассмотреть на примере гистограммы: графического представления частоты попадания элементов выборки в несколько интервалов группировки. Обычно, интервалы группировки равны между собой.
Для коррелированных между собой событий (или "событий одной серии"), гистограмма имеет плавную, интуитивно-понятную и информативную форму. Но для более общего случая множественных независимых серий, гистограмма выглядит как множество узких пиков, лишенных подробностей и редко встречающихся среди пустых интервалов группировки.
Приведем пример такой гистограммы:

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

Разумеется, рассматривая такую искаженную гистограмму, нужно концентрироваться не на форме огибающей, пытаясь интуитивно осознать параметры распределения, а сосредоточится на самом факте наличия столбцов: каждый такой столбец - это группа близких между собой событий.
Облако тегов
Популярным способом визуализации численного параметра объектов является изображение их пропорциональным этому параметру размером. Очевидно, что это более общий случай гистограммы и к нему применимо все, сказанное в предыдущем разделе.
Такой подход используется в "Облаках тем": распространенном сейчас в веб способе визуализации популярности тем. В "Облаке тем" все темы перечислены в алфавитном порядке, а их популярность визуализируется размером шрифта. Потери информации при таком подходе возможны из-за ошибок при распределении тем по небольшому количеству (например, семи) групп: два темы близкой популярности могут попасть в разные группы или наоборот. Использование наилучшей квантизации позволяет сгруппировать темы по популярности.
В нижеследующей таблице для каждой темы указана её популярность (целочисленный параметр), группа, с которой соотнесена тема посредством линейного отображения и группа, выбранная методом наилучшей квантизации.
| Тег | Популярность | Линейное отображение | Наилучшая квантизация |
|---|---|---|---|
| Экология человека | 1 | 0 | 0 |
| Документы | 1 | 0 | 0 |
| Экорейтинги предприятий | 1 | 0 | 0 |
| Биоразнообразие | 2 | 0 | 0 |
| Почва | 2 | 0 | 0 |
| Водные ресурсы | 4 | 0 | 1 |
| Мероприятия | 4 | 0 | 1 |
| Проекты | 7 | 1 | 2 |
| Атмосферный воздух | 8 | 1 | 2 |
| Экопсихология | 12 | 2 | 3 |
| Образование | 18 | 3 | 4 |
| Энергетика | 19 | 3 | 4 |
| Смежные науки | 24 | 4 | 5 |
| Зеленый бизнес | 26 | 5 | 5 |
| Экотехнологии | 27 | 5 | 5 |
| Отходы | 30 | 6 | 6 |
Хорошо заметно, что разбивка на группы в первом случае несколько ошибочна: так, темы "Водные ресурсы" и "Мероприятия" лучше вынести в отдельную группу (они близки друг к другу и далеки от соседей), также отдельная группа больше подходит для темы "Экопсихология", а тема "Смежные науки", напротив, выделен в отдельную группу неоправданно. Этих недостатков лишена разбивка на группы при помощи наилучшей квантизации.
Результирующие облака тем приведены на рисунке. Для удобства сравнения, первые два облака отсортированы по популярности, а на третьем рисунке облако тем дано в том же виде, как на веб-сайте.
| Линейное отображение | Наилучшая квантизация | Окончательный вариант |
|---|---|---|
|
|
|
Краткое описание реализации
В этой статье наилучшая квантизация проводилась специальным вариантом алгоритма K-средних, реализованным в модуле pd.lib. При этом:
- Обычная гистограмма строилась подсчетом количества событий, попавших в равные интервалы, ширина которых определялась из соображений компактности представления на веб-странице и разбросе событий;
- Гистограмма, построенная методом наилучшей квантизации, представляет количество точек, ближайших к каждому из оптимальных позиционных векторов, расчитанных функцией pd.lib.linear_quantizator;
- Приведенный пример гистограммы взят из продукта ng.app.quota и показывает распределение размеров объектов в хранилище. Продукт позволяет переключаться между двумя видами гистограмм;
- Облако тегов без квантизации разбивалось на группы линейным отображением на равные последовательные интервалы (осуществлялось масштабирование и округление), такая разбивка реализована функцией pd.lib.round;
- Облако тегов с квантизацией разбивалось на группы, соответствующие позиционным векторам, расчитанных функцией pd.lib.linear_quantizator, номера групп получались порядковым отображением: упорядоченные группы перенумеровывались и номера линейно отображались на равные последовательные интервалы, такое порядковое отображение реализовано функцией pd.lib.elastic;
Реализованные алгоритмы требуют так мало ресурсов, что могут быть использованы в реальном времени.
Заключение
Два приложения наилучшей квантизации к визуализации данных в веб-интерфейсах показывают, как с минимальными усилиями, используя хорошо известные численные алгоритмы, можно заметно улучшить качество визуального представления и снизить вероятность ошибок пользователей, что, несомненно, приведет к повышению ощущения комфортности и чувства удовлетворения от работы с сайтами.



