08. 04. 2012 1 предварительная
Скачать 362.66 Kb.
|
08.04.2012 1 ПРЕДВАРИТЕЛЬНАЯ ОБРАБОТКА ДАННЫХ Технологии анализа данных Предварительноезнаниетого, чтохочешь сделать, даетсмелостьилегкость. Д. Дидро Содержание Технологии анализа данных Понятие и цели предварительной обработки данных Методы предварительной обработки данных © М.Л. Цымблер 2 Зачем нужна предварительная обработка данных © М.Л. Цымблер Технологии анализа данных 3 Неполнота данных Отсутствие значений Место=" ", ГодРождения="n/a" "Шумы" (ошибки или аномалии) в данных Зарплата=-10000 Несогласованность данных Возраст=70 и ДатаРождения="7-Окт-52" В разных записях Категория ∈ {1, 2, 3} или {A, B, C} 08.04.2012 2 Почему данные содержат ошибки © М.Л. Цымблер Технологии анализа данных 4 Неполные данные "n/a" при сборе данных Изменение точки зрения на корректность с момента сбора данных на момент анализа данных Ошибки в программном/аппаратном обеспечении, человеческий фактор "Шумы" в данных Ошибки в программном обеспечении сбора данных, человеческий фактор Сбои при передаче данных Несогласованность данных Много различных источников данных Нарушения ФЗ (например, модификация связанных данных) Дублирование данных Почему предварительная обработка данных важна © М.Л. Цымблер Технологии анализа данных 5 Нет качественных данных – нет качественных результатов их анализа Качественные решения должны быть основаны на качественных данных Хранилище данных нуждается в согласованной интеграции качественных данных Извлечение, очистка и трансформация данных составляют большую часть работы по построению хранилища данных Измерение качества данных © М.Л. Цымблер Технологии анализа данных 6 Общепринятая шкала качества Точность Полнота Согласованность Поддержка времени Правдоподобие Дополняемость Интерпретируемость Доступность Другие категории Привязка к контексту, репрезентативность, доступность 08.04.2012 3 Цели предварительной обработки © М.Л. Цымблер Технологии анализа данных 7 Очистка данных (data cleaning) Заполнить отсутствующие значения, сгладить зашумленные данные, определить или удалить аномалии, исправить несогласованность Интеграция данных Интеграция баз данных, кубов данных, файлов Трансформация данных Нормализация и агрегация Редукция данных Усеченное представление, гарантирующее те же или сходные результаты аналитической обработки Дискретизация данных Часть редукции – для числовых данных Цели предварительной обработки © М.Л. Цымблер Технологии анализа данных 8 Обобщение данных © М.Л. Цымблер Технологии анализа данных 9 Мотивация Лучше понять данные: общая тенденция, вариативность, разброс Характеристики дисперсии медиана, min, max, квантили и др. Численные измерения, соответствующие упорядоченным интервалам Анализ упорядоченных интервалов Анализ разброса вычисленных мер Перевод мер в числовые значения Анализ OLAP-куба 08.04.2012 4 Измерение тенденции данных © М.Л. Цымблер Технологии анализа данных 10 Среднее (mean) арифметическое взвешенное Медиана (median) Мода (mode) значение, которое встречается наиболее часто уни- и мультимодальность эмпирическая формула: Средний уровень (midrange): (max – min)/2 Измерение дисперсии данных © М.Л. Цымблер Технологии анализа данных 11 Среднеквадратичноеотклонение Стандартноеотклонение Разброс: max – min Ящикисусами (box-and-whiskers plot) k-йперцентиль– число, отделяющее сверху k% расположенных в возрастающем порядке значений числового ряда Квартили Q1 – 25-й перцентиль Q2 – медиана, 50-й перцентиль Q3 – 75-й перцентиль Интерквартильныйразмах: IQR=Q3-Q1 Выбросы (аномалии): 1,5*Q3 выше Q3 или ниже Q1. Визуализация дисперсии данных © М.Л. Цымблер Технологии анализа данных 12 08.04.2012 5 Очистка данных © М.Л. Цымблер Технологии анализа данных 13 Важность Очистка данных – одна из основных проблем построения хранилищ данных Основные цели Заполнение отсутствующих значений Определить аномалии и сгладить шумы Исправить несогласованные данные Устранить избыточность данных, вызванную интеграцией Обработка отсутствующих данных © М.Л. Цымблер Технологии анализа данных 14 Игнорировать запись Ввести вручную (часто невозможно) Ввести автоматически значение глобальной константы значения UNKNOWN или N/A – не всегда хорошо Ввести среднее или медиану Ввести среднее или медиану класса (классы должны быть определены) Ввести наиболее ожидаемую величину (используя моду, деревья решений или др.) Зашумленные данные © М.Л. Цымблер Технологии анализа данных 15 Шум – случайное значение измеряемой переменной Причины некорректного значения сбои при сборе данных сбои при вводе данных сбои при передаче данных сбои при преобразовании данных несогласованность имен данных технологические лимиты (на размер записи и др.) Другие проблемы, требующие очистки дублирование записей неполные данные несогласованные данные 08.04.2012 6 Обработка зашумленных данных © М.Л. Цымблер Технологии анализа данных 16 Биннинг (binning) Сортировка набора данных, затем разделение на равномощные поднаборы, затем сглаживание средним , медианой или граничными значениями поднабора Регрессия Сглаживание путем подгонки данных под регрессионную функцию Кластеризация Определение и удаление аномалий Совместная инспекция человека и компьютера Определение подозрительных значений с помощью компьютера для их последующей проверки экспертом Биннинг © М.Л. Цымблер Технологии анализа данных 17 Отсортированные данные: 4, 8, 9, 15, 21, 21, 24, 25, 26, 28, 29, 34 Разделение данных на группы с одинаковой частотой 4, 8, 9, 15 21, 21, 24, 25 26, 28, 29, 34 Сглаживание с помощью среднего арифметического группы 9, 9, 9, 9 23, 23, 23, 23 29, 29, 29, 29 Сглаживание с помощью граничных значений группы 4, 4, 4, 15 21, 21, 25, 25 26, 26, 26, 34 Регрессия © М.Л. Цымблер Технологии анализа данных 18 Регрессия – зависимость среднего значения какой- либо величины от некоторой другой величины или от нескольких величин. X Y y = x + 1 x1 y1 y1’ 08.04.2012 7 Кластеризация © М.Л. Цымблер Технологии анализа данных 19 Кластеризация – разбиение заданной выборки объектов на подмножества (кластеры) таким образом, чтобы каждый кластер состоял из схожих объектов, а объекты разных кластеров существенно отличались. Несогласованность данных © М.Л. Цымблер Технологии анализа данных 20 Верификация вводимых данных (проверка форматов и значений) Корректировка с использованием данных по внешним ссылкам Интеграция данных © М.Л. Цымблер Технологии анализа данных 21 Основные проблемы Идентификация сущностей Как понять, что A.CustCode ≡ B.CustID ≡ C.CustNo ? Избыточность Значение некоторого атрибута выводимо из других атрибутов Несогласованность в именах атрибутов Пути решения проблем Использование метаданных Использование корреляционного анализа статистический анализ взаимосвязи двух или нескольких случайных величин 08.04.2012 8 Корреляционный анализ числовых данных © М.Л. Цымблер Технологии анализа данных 22 Коэффициент корреляции Пирсона r A,B > 0: положительная корреляция A и B r A,B < 0: отрицательная корреляция A и B r A,B = 0: независимость A и B Корреляционный анализ нечисловых данных © М.Л. Цымблер Технологии анализа данных 23 Тест χ 2 Чем больше χ 2 , тем больше связь между величинами Пример Играют вшахматы НЕ играют в шахматы ВСЕГО Любятфантастику 250 (90) 200 (360) 450 НЕ любят фантастику 50 (210) 1000 (840) 1050 ВСЕГО 300 1200 1500 Трансформация данных © М.Л. Цымблер Технологии анализа данных 24 Сглаживание удаление шумов с помощью биннинга, регрессии или кластеризации Агрегация суммирование частичных итогов (например, месячные продажи вместо ежедневных) Обобщение замена частных значений более общими (например, "молодой", "среднего возраста", "пожилой" вместо значения возраста) Нормализация приведение значений к одному заданному промежутку Создание новых атрибутов из имеющихся например, SP.TotalSale=SP.Qty*P.Price 08.04.2012 9 Нормализация данных © М.Л. Цымблер Технологии анализа данных 25 Мин-макс [new_min A ..new_max A ] Z-нормализация Десятичное масштабирование где j – наименьшее целое, что max(|ν’|) < 1 Редукция данных © М.Л. Цымблер Технологии анализа данных 26 Уменьшение количества строк (объектов) Уменьшение количества столбцов (атрибутов) Сжатие Дискретизация Уменьшение количества строк © М.Л. Цымблер Технологии анализа данных 27 Агрегация Использование более высокого уровня иерархии в измерениях (например, день→неделя→месяц→год) Использование моделей Если данные подходят под некоторую модель, оцениваем параметры модели, сохраняем параметры, отбрасываем данные (за исключением аномалий) Использование гистограмм Разделение данных на подгруппы, хранение представления подгрупп (сумма, количество и др.) Кластеризация Разделение данных на подгруппы на основе расстояний между элементами, хранение представителей (центроидов) кластеров и аномалий Сэмплинг Большое множество данных представляется своим существенно меньшим по мощности подмножеством, элементы которого выбираются случайным образом 08.04.2012 10 Уменьшение количества столбцов © М.Л. Цымблер Технологии анализа данных 28 Пошаговый прямой отбор {} {A1} {A1,A3} {A1,A3,A5} Пошаговый обратный отбор {A1,A2,A3,A4,A5} {A1,A3,A4,A5} {A1,A3,A5} Деревья решений {A1,A2,A3,A4,A5} … {A1,A3,A5} A1 ? A3 ? A5 ? Класс 1 Класс 2 Класс 2 Класс 1 Сжатие данных © М.Л. Цымблер Технологии анализа данных 29 Может принести выгоду, если алгоритму интеллектуального анализа не потребуется восстановление сжатых данных Сжатие без потерь LZW, ZIP, DWT, … Сжатие с потерями JPEG, MPEG, … Дискретизация © М.Л. Цымблер Технологии анализа данных 30 Типы атрибутов Номинальные – значения из неупорядоченного множества ( например, Цвет, Профессия) Ординальные – значения из упорядоченного множества ( например, ВоинскоеЗвание) Непрерывные – вещественные или целые числа Дискретизация Разбиение промежутка значений непрерывного атрибута на интервалы Уменьшение размера данных (границы/метки интервала заменяют значения) Введение иерархий 08.04.2012 11 Дискретизация © М.Л. Цымблер Технологии анализа данных 31 Биннинг Гистограммы Кластеризация Дискретизация на основе энтропии Выбор точки разбиения интервала таким образом, чтобы минимизировать функцию энтропии Естественное разбиение Правило 3-4-5 Дискретизация на основе энтропии © М.Л. Цымблер Технологии анализа данных 32 Пусть T – граница интервала S, разделяющая его на интервалы S 1 и S 2 . Тогда Выбирается граница T, которая минимизирует функцию энтропии. Процесс разбиения может повторяться до достижения определенного критерия останова Дискретизация по правилу 3-4-5 © М.Л. Цымблер Технологии анализа данных 33 Если интервал содержит 3, 6, 7 или 9 различных значений (по заданной значащей цифре), разбить его на 3 равных интервала Если интервал содержит 2, 4 или 8 различных значений (по заданной значащей цифре), разбить его на 4 равных интервала Если интервал содержит 1, 5 или 10 различных значений (по заданной значащей цифре), разбить его на 5 равных интервалов 08.04.2012 12 Дискретизация категорийных данных © М.Л. Цымблер Технологии анализа данных 34 Порядок атрибутов на уровне схемы данных Улица < Город < Область < Округ Спецификация иерархии для набора данных { Челябинск, Златоуст, Магнитогорск } < Челябинская область Спецификация частичного порядка атрибутов Улица < Город Автоматическая генерация иерархии из множества атрибутов на основе анализа количества уникальных значений К-во уникальных значений: Округ > Область > Город > Улица Исключения: ДеньНедели, Месяц, Квартал, Год Заключение Технологии анализа данных Предварительная обработка данных – важная задача для построения хранилищ данных и интеллектуального анализа данных. Нет качественных данных – нет качественных результатов их анализа. Предварительная обработка включает в себя Очистка и интеграция данных Редукция данных Дискретизация данных © М.Л. Цымблер 35 |