Лабораторна робота №11, Використання інструментів highlight exceptions і scenario analysis, Виділення винятків
Код роботи: 2515
Вид роботи: Лабораторна робота
Предмет: Інтелектуальний аналіз данних
Тема: №11, Використання інструментів highlight exceptions і scenario analysis, Виділення винятків
Кількість сторінок: 15
Дата виконання: 2017
Мова написання: українська
Ціна: 250 грн (+ програма)
Як випливає з назви, інструмент дозволяє виявити дані, що виділяються серед наявного набору. Це може бути корисно в ряді випадків. По-перше, це можуть бути помилкові дані (наприклад, результати помилки оператора при введенні якихось значень). По-друге, виключення можуть представляти окремий інтерес (як, наприклад, у разі виявлення шахрайських дій з банківськими картами і т.д.). Крім того, аналіз винятків може розглядатися як попередня частина інтелектуального аналізу даних за допомогою інших методів. Зокрема, це дозволяє прибрати нетипові приклади з навчальної вибірки.
У ході роботи інструмент Highlight Exceptions створює тимчасову модель інтелектуального аналізу з використанням алгоритму Microsoft Clustering. Для кожної аналізованої рядки оцінюється ступінь приналежності виявленим кластерам. Значення, що знаходяться далеко від усіх кластерів, позначаються як винятки.
При запуску інструменту можна відзначити стовпці, що не враховуються при аналізі. У рекомендаціях з використання [1,3] вказується, що бажано виключити з аналізу стовпці з унікальними значеннями (імена, ідентифікатори), а також містять багато порожніх значень або довільний текст. На малюнку 5.33 видно, що при аналізі набору даних «Клієнти» інструмент пропонує виключити з розгляду поле ID.
За підсумками роботи формується звіт (рис. 5.34), а у вихідному наборі даних винятку виділяються кольором (рис. 1).
Рис. 1 - Исключения выделяются цветом, что позволяет произвести сортировку
На рис. 5.34 видно, что инструмент позволяет указать порог отклонения от нормы (Exception threshold), измеряемый в процентах (оценка вероятности того, что выделенное значение относится к исключениям). Уменьшение порога приведет к тому, что больше записей будет рассматриваться как исключения, увеличение – наоборот.
При значении по умолчанию равном 75 %, в нашем наборе данных обнаружено 34 исключения. Отчет показывает, в каких столбцах сколько исключений было обнаружено.
Перейдем на лист Excel с данными. Рассматриваемые как выбросы значения выделяются в таблице цветом: вся строка – коричневым, конкретное значение – желтым. Чтобы сгруппировать нужные строки можно воспользоваться функциями Excel, позволяющими провести сортировку по цвету.
Также можно воспользоваться инструментами вкладки «Вид», чтобы создать новое окно и расположить рядом с окном с отчетом и данными (рис.5.36). Пусть в отобранном наборе записей мы обнаружили ошибку. Скажем расстояние до работы у некоего клиента из США, обладающего двумя машинами, не «0-1 км», а «5-10 км»(именно поэтому ему нужно в семье 2 машины). Если мы изменим значение, будет произведен автоматический пересчет. В случае, представленном на рис.5.36, новое значение уже не рассматривается как выброс.
Обратите внимание, что не только изменилась раскраска строки таблицы, но и произошли изменения в отчете, показывающем теперь наличие 33 исключений. Автоматический пересчет работает только в том случае, если сессия работы с аналитическими службами SQLServer остается открытой. Если таблица Excel была закрыта и снова открыта, то автоматического пересчета не будет (нужно снова провести анализ).
Также в описаниях отмечается, что инструмент реагирует только на изменение данных в диапазоне ячеек, использовавшемся при обучении. Если после начала работы инструмента в конец таблицы добавить новые строки, то они оцениваться не будут.
Как уже отмечалось выше, если нужно рассматривать только наиболее сильные выбросы, можно увеличить значение порога отклонения и инструмент изменит оценки в соответствии с заданным значением (рис.5.37).
Рис.5.37. Увеличение порога отклонения уменьшает число исключений
Повторный запуск инструмента удалит результаты предыдущего анализа. Учитывая, что проводимые инструментом изменения достаточно сложны (раскраска строк таблицы и т.д.), если нужно удалить результаты работы, рекомендуется запустить повторный анализ, согласиться с удалением результатов и потом в окне, аналогичном представленному на рисунке 5.33, нажать кнопку Close (отказаться от анализа данных).
Задание 1. Проведите анализ исключений для набора данных «Клиенты» и значения порога в 90%. Предложите интерпретацию полученных результатов.
Задание 2. Проведите анализ исключений для набора данных «Прогнозирование» (продажи по месяцам в разных регионах). Предложите интерпретацию полученных результатов.
Анализ сценариевИнструмент Scenario Analysis позволяет моделировать влияние, оказываемое изменением одного из параметров (значений одного столбца) на другой, связанный с первым. В основе работы инструмента лежит использование алгоритма Microsoft Logistic Regression. Для формирования временной модели требуется обучающая выборка, содержащая не менее 50 записей [3].
Инструмент Scenario Analysis включает две составные части – «Анализ сценария поиска решений» (Goal Seek) и «Анализ возможных вариантов» («What-If»).
«Анализ сценария поиска решений» (Goal Seek)
Использование инструмента Goal Seek позволяет оценить, сможем ли мы достичь желаемого значения в целевом столбце, меняя значения выбранного параметра. С его помощью можно провести анализ как для одной записи, так и для всей таблицы. Используя этот инструмент надо быть готовым, что не для всех вариантов запроса может быть получен ответ. Это может быть связано с тем, что в исходных данных нет интересующих нас сочетаний. Также могут быть проблемы из-за типов данных.
Кроме того, нельзя забывать, что запрос нужно формировать с учетом знаний о предметной области. Например, можно запросить систему, если человек хочет увеличить годовой доход на 20 процентов, надо ли ему приобретать велосипед. И даже получить какой-то ответ. Но понятно, что в такой постановке сам вопрос является бессмысленным.
Пусть мы хотим узнать, как будет влиять образование на уровень достатка человека. Сначала проведем анализ для одной записи.
Например, нас интересует клиент с идентификатором 12496 (первая запись в наборе данных). Откроем набор данных «Клиенты» и на вкладке Analysis выберем Scenario Analysis- >Goal Seek (рис.5.38).
Рис.5.38. Выбор инструмента Goal Seek
В окне параметров (рис.5.39) укажем целевой столбец – «Доход», а также желаемое значение – 125% от текущего. В этом случае, инструмент считает успешным результат, который не меньше заданного (в нашем примере 40000 × 1,25 = 50000 и более). Если задаваемое значение меньше 100%, то успешным считается результат, который не больше заданного.
Также можно указать точное значение и диапазон (выбрав ―Inrange¾). Для значений, не являющихся числовыми, варианты ―Percent-age¾ и ―In range¾ будут неактивны. Для достижения искомого значения будем менять столбец «Образование».
Перейдя по ссылке ―Choose columns to be used for analysis¾, отметим, что при анализе в рассмотрение не берем столбцы «ID», «Дети», «Расстояние до работы», «Приобрел велосипед». После закрытия окна ―Advanced Columns Selection¾ стоит еще раз проверить настройки в секции ―Goal to seek¾ – иногда при переходе между окнами переключатель между ―Exactly¾, ―Percentage¾ и ―In range¾ сбрасывается в значение по умолчанию (―Exactly¾). Рис.5.40. Результат анализа для одной строки – решение найдено
Результат анализа, выполненного по нажатию кнопки Run, представлен на рисунке 5.40. Для выбранной строки найден шаблон, рекомендующий для параметра «Образование» значение
«Неоконченное высшее». При этом уровень достоверности – Confidence (иногда верхняя часть надписи затирается, как на рисунке), оценивается как очень низкий (―Very low¾).
Если переместиться на следующую строку и снова нажать Run, получим результат для новых данных (рис.5.41). В этом случае, подходящего решения не было найдено, и был предложен наиболее близкий вариант.
Рис.5.41. Результат анализа для одной строки – решение не найдено Рис.5.42. Анализ для всей таблицы
Если в секции ―Specify Row or Table¾ установить переключатель в ―Entire table¾, то сценарии будут посчитаны для всех строк (рис.5.42). Результаты будут указаны в двух столбцах, добавленных в исходную таблицу. Для тех строк, которые отмечены крестиком в красном круге, соответствующего желаемому сценарию шаблона найдено не было.
Задание 3. Проведите анализ для отдельной строки и таблицы, аналогичный описанному выше. Прокомментируйте результаты.
Примечание. Запуск процедуры анализа для ряда других комбинаций столбцов (например – целевой столбец «покупка велосипеда» = «да», независимая переменная – «расстояние до работы») приводит к ошибке «Query (1, 50) Синтаксический анализатор: Неверный синтаксис "value".», видимо связанной с некорректной обработкой некоторых типов данных.
«Анализ возможных вариантов» («What-If»)Инструмент What-If позволяет решить обратную по отношению к Goal Seek задачу: оценить значение целевой переменной при определенном изменении заданного параметра.
Например, можно оценить, как изменился бы уровень дохода человека, если бы повысился его уровень образования. Перейдем на запись с идентификатором 12697 и запустим инструмент: ScenarioAnalysis->What-If. Укажем параметры сценария: образование меняется на
«Высшее» и целевой столбец «Доход». Полученный для строки результат показывает, что при изменении уровня образования доход может несколько вырасти (исходное значение 90000, среднее значение для нового шаблона 104448). Но степень уверенности в прогнозе не слишком высокая (рис.5.43).
Аналогично предыдущему инструменту, подобный анализ сценария можно сделать и для всей таблицы целиком. В этом случае к исходной таблице добавляются два столбца – один показывает новое значение целевого параметра, второй – оценку достоверности (рис.5.44). Достоверность оценивается числом от 0 до 100: 100 – максимальная достоверность (абсолютная уверенность в прогнозе), 0 – минимальная.
Рис.5.43. Работа инструмента What-If для отдельной строки Рис.5.44. Прогноз What-If для всей таблицы
Для того чтобы удалить результаты работы с таблицей инструментов What-If и Scenario Analysis, достаточно удалить добавленные столбцы. При работе с отдельными строками, никаких дополнительных действий не требуется.
Задание 4. Проведите анализ данных, аналогичный описанному выше.