Файл: Методическое пособие для курсовой работы санктпетербург 2021 содержание введение 3 общие требования 3.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.01.2024
Просмотров: 86
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Используем функцию Rtsne в цикле для различных значений перплексии и визуализируем результаты.
Листинг 4. Использование алгоритма t-SNE для скоринга
Результатом визуализации будут графики представленные на рис. 7. Хорошо заметна тенденция упрощения представления исследуемых векторов при увеличении значения перплексии.
Рис. 7. Визуализация результатов скоринга
Поскольку перплексия фактически задает число, которое устанавливает обоснованное предположение относительно количества близких соседей для каждой точки данных, то ее назначение состоит в том, чтобы сбалансировать локальные и глобальные аспекты ваших данных.
t-SNE - инструмент для визуализации многомерных данных. Он преобразует аффинитеты точек данных в вероятности. Аффинитеты в исходном пространстве представлены гауссовыми совместными вероятностями, а аффинитеты во вложенном пространстве представлены t-распределениями Стьюдента. Это обеспечивает t-SNE особую чувствительность к локальной структуре и дает несколько других преимуществ над существующими методами [https://www.ibm.com/docs/ru/spss-modeler/SaaS?topic=nodes-t-sne-node ].
-
Алгоритм UMAP
Аппроксимация и проекция однородного многообразия UMAP (UniformManifoldApproximationandProjection) - это метод уменьшения размерности, который можно использовать для визуализации аналогично t-SNE, но также для общего нелинейного уменьшения размерности. Алгоритм основан на трех предположениях о данных:
-
данные равномерно распределены на римановом многообразии; -
метрика Римана локально постоянна (или может быть аппроксимирована как таковая); -
многообразие локально связно.
Исходя из этих предположений, можно смоделировать многообразие с нечеткой топологической структурой. Вложение находится путем поиска низкоразмерной проекции данных, которая имеет наиболее близкую возможную эквивалентную нечеткую топологическую структуру.
Подробности лежащей в основе математики можно найти у авторов этого алгоритма в [https://arxiv.org/pdf/1802.03426.pdf ].
UMAP — это новый алгоритм уменьшения размерности, библиотека с реализацией которого вышла совсем недавно.
Авторы алгоритма считают, что UMAP способен бросить вызов современным моделям снижения размерности, в частности, t-SNE, который на сегодняшний день является наиболее популярным. По результатам их исследований, у UMAP нет ограничений на размерность исходного пространства признаков, которое необходимо уменьшить, он намного быстрее и более вычислительно эффективен, чем t-SNE, а также лучше справляется с задачей переноса глобальной структуры данных в новое, уменьшенное пространство.
-
Пример использования алгоритма UMAP
Рассмотрим пример использования алгоритма UMAP (листинг 5) для анализа набора данных MNIST и сравним его возможности с результатом полученным ранее с использованием методов РСА и t-SNE в листинге 3.
Код листинга 5 максимально идентичен коду листингов 2 и 3, с той лишь разницей, что здесь используется функция umap().
Листинг 5. Анализ MNIST методом UMAP
В результате мы получим следующую визуализацию (рис. 8), которая показывает потенциальные возможности классификации набора.
Рис. 8. Визуализация MNIST по двум компонентам с использованием UMAP
Анализ визуализации рис. 8 позволяет сделать вывод о достижимой точности классификации набора MNIST еще более оптимистичным, чем визуализации рис. 6.
-
Графика в формате SVG
Технология масштабируемой векторной графики SVG (Scalable Vector Graphics) позволяет объединить в одном формате текст, графику, анимацию и интерактивные компоненты и базируется на трех типах графических изображений: векторных формах, рисунках и тексте. Объекты, как это принято в векторной графике, представлены либо прямолинейными и криволинейными контурами, либо графическими примитивами (прямоугольниками, эллипсами и др.), а рисунки представляют собой импортированные растровые изображения. Помимо этого формат SVG поддерживает различные виды анимационных (напоминающих GIF и flash-анимацию) и интерактивных объектов, таких как гиперссылки, реакции на внешние события и прочие элементы навигации. Важно и то, что поскольку данный стандарт основан на языке XML, то SVG-файл наряду с элементами
, предназначенными для визуального отображения, может содержать также различные метаданные. Указанные особенности выдвигают SVG-технологии на лидирующие места в области проектирования и разработки веб-ресурсов.
Для знакомства с SVG-технологией полезно обратиться к одному из лучших веб-ресурсов, расположенного по адресу https://svg-art.ru/. Кроме того, вся информация, необходимая для выполнения третьего задания курсовой работы, приведена в [14-15].
КОМПЛЕКТ ЗАДАНИЙ
Курсовая работа предполагает выполнение трех заданий.
Первое задание относится к изучению технологий понижения размерности анализируемых данных, позволяющих существенно снизить объем обрабатываемой информации. Для выполнения задания №1 следует изучить литературу, посвященную методу главных компонент, например [1-5] и ознакомиться с доступными библиотеками программ, реализующими данный метод.
Второе задание связано с использованием технологий, позволяющих оценить возможности качественной кластеризации исследуемого набора данных. Современными эффективными алгоритмами, позволяющими решить подобную задачу, являются алгоритмы t-SNE и UMAP. Для выполнения задания №2 следует изучить особенности реализации данных алгоритмов, например, с использованием материалов ресурсов [6 – 10].
Третье задание позволить приобрести практические навыки в работе с графической информацией на базе перспективной технологии SVG. Данная технология тесно сопряжена с языком разметки HTML.
Первое и второе задание может выполняться в любой программной среде, с использованием любых языков программирования и библиотек. Тем не менее, рекомендуется использовать среду RStudio и язык программирования R, широко используемых IT-специалистами.
Задание № 1: Понижение размерности данных
Исследовать эффективность методов PCA и SVD для понижения размерности данных.
В качестве исходных данных для анализа следует самостоятельно выбрать изображение в формате jpg. Размер изображения должен быть не менее 400 х 400 пикселей.
В ходе исследования необходимо проделать следующее:
-
выбрать и обосновать количество главных компонент, достаточное для качественной визуализации;
-
оценить выигрыш сжатого изображения по объему, по сравнению с оригиналом; -
оценить количество «утраченной» информации; -
выяснить зависит ли достаточное число компонент для качественной визуализации от характера изображения (если да, то оценить эту зависимость).
Контрольные вопросы
-
Как вычислить матрицу счетов метода РСА исследуемой матрицы Х, используя сингулярное разложение Х? -
Опишите процесс выделения главных компонент в многомерном случае своими словами. -
Что такое собственные значения матрицы счетов метода РСА и что они характеризуют? -
Как связаны между собой сингулярные значения SVD разложения и собственные значения матрицы счетов метода РСА? -
Какие критерии выбора числа главных компонент используются на практике?
Задание № 2: Кластеризация данных
Исследовать возможности классификации данных с использованием алгоритмов t-SNE и UMAP.
Исходные данные для анализа загрузить из ресурса WineQuality (http://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality /) репозитария [10]. Варианты заданий (номер варианта определяется последней цифрой номера зачетки) приведены в табл. 2.
Таблица 2
Варианты задания
Вариант | Обучающая выборка |
Четная цифра | winequality-red.csv |
Нечетная цифра | winequality-white.csv |
Анализируемые данные включают 11 объективных параметров различных сортов вина:
-
фиксированная кислотность; -
летучая кислотность; -
лимонная кислота; -
остаточный сахар; -
хлориды; -
свободный диоксид серы; -
общий диоксид серы; -
плотность; -
pH; -
сульфаты; -
спирт.
Последний, 12-ый параметр является субъективной оценкой качества, проставляемой экспертом и имеет несколько градаций.
Основная задача исследования состоит в определении качества субъективной оценки экспертов и формированию обоснованной кластеризации вин.
Исследование должно содержать:
-
описание исследуемого набора данных, -
подготовку данных для анализа, -
план и решаемые задачи, -
выбор используемых функций и описание их параметров, -
результаты исследования, -
аргументированные выводы.
Программный код должен быть снабжен подробным комментарием.
Контрольные вопросы
-
Как можно интерпретировать назначение и выбирать адекватное значение перплексии при использовании алгоритма t-SNE? -
Как решается проблема скученности точек в пространстве отображения в алгоритме t-SNE? -
Чем распределение Стьюдента отличается от нормального распределения? -
Что пытается сохранить алгоритм UMAP: глобальную структуру анализируемых данных или локальные расстояния между отдельными точками?
Задание № 3: Обработка графической информации
Визуализировать отрывок сказки К.И.Чуковского «Муха-цокотуха» с использованием технологии SVG, соответствующий номеру фрагмента. Номер своего фрагмента определяется последней цифрой номера зачетной книжки:
-
Муха, Муха-Цокотуха,
Позолоченное брюхо!
Муха по полю пошла,
Муха денежку нашла.
Пошла Муха на базар
И купила самовар:
"Приходите, тараканы,
Я вас чаем угощу!"
-
Тараканы прибегали,
Все стаканы выпивали,
А букашки -
По три чашки
С молоком
И крендельком:
Нынче Муха-Цокотуха
Именинница!
-
Приходили к Мухе блошки,
Приносили ей сапожки,
А сапожки не простые -
В них застежки золотые.
Приходила к Мухе
Бабушка-пчела,
Мухе-Цокотухе
Меду принесла...
"Бабочка-красавица.
Кушайте варенье!
Или вам не нравится
Наше угощенье?"
-
Вдруг какой-то старичок
Паучок
Нашу Муху в уголок
Поволок -
Хочет бедную убить,
Цокотуху погубить!
"Дорогие гости, помогите!
Паука-злодея зарубите!
И кормила я вас,
И поила я вас,
Не покиньте меня
В мой последний час!"
-
Но жуки-червяки
Испугалися,
По углам, по щелям
Разбежалися:
Тараканы
Под диваны,
А козявочки
Под лавочки,
А букашки под кровать -
Не желают воевать!
И никто даже с места
Не сдвинется:
Пропадай-погибай,
Именинница!
А кузнечик, а кузнечик,
Ну, совсем как человечек,
Скок, скок, скок, скок!
За кусток,
Под мосток
И молчок!
-
А злодей-то не шутит,
Руки-ноги он Мухе верёвками крутит,
Зубы острые в самое сердце вонзает
И кровь у неё выпивает.
Муха криком кричит,
Надрывается,
А злодей молчит,
Ухмыляется.
-
Вдруг откуда-то летит
Маленький Комарик,
И в руке его горит
Маленький фонарик.
"Где убийца, где злодей?
Не боюсь его когтей!"
Подлетает к Пауку,
Саблю вынимает
И ему на всём скаку
Голову срубает!
Муху за руку берёт
И к окошечку ведёт:
"Я злодея зарубил,
Я тебя освободил
И теперь, душа-девица,
На тебе хочу жениться!"
-
Тут букашки и козявки
Выползают из-под лавки:
"Слава, слава Комару -
Победителю!"
Прибегали светляки,
Зажигали огоньки -
То-то стало весело,
То-то хорошо!
Эй, сороконожки,