Preprocessing

Предварительная обработка данных.

Зачем нужна предварительная обработка?

Данные в реальном мире, как правило, Задачи предварительной обработки данных: Различные инструменты для предобработки данных можно найти на веб-сайте Science Hunter.
Одной из важных задач, решаемых при переносе информации в хранилища данных, является их очистка. С одной стороны, данные загружаются постоянно из различных источников, поэтому вероятность попадания "грязных (замусоренных) данных" весьма высока, с другой — хранилища данных используются для принятия решений и "грязные данные" могут стать причиной принятия неверных решений. Таким образом, процедура очистки является обязательной при переносе и сохранении данных. Ввиду большого спектра возможных несоответствий в данных их очистка считается одной из самых крупных проблем в технологии хранилищ данных. Основные проблемы очистки данных можно классифицировать по следующим уровням:

Рассмотрим перечисленные уровни и соответствующие им проблемы более подробно.

Уровень ячейки таблицы. На данном уровне задача очистки заключается в анализе и исправлении ошибок в данных, хранящихся в ячейках таблиц базы данных. К таким ошибкам можно отнести следующие.

  1. Орфографические ошибки (опечатки) — ошибки, возникающие при вводе информации. Они могут привести к неправильному пониманию, а также к искажению реальных данных. Например, при продаже товара вместо количества 1000 было введено 10 000 или вместо названия товара "Водка" было введено название "Вода".

  2. Отсутствие данных — происходят из-за отсутствия у оператора соответствующих данных при вводе информации. Главной задачей OLTP-систем является обеспечение ежедневных операций с данными, поэтому оператор может пропустить ввод неизвестных ему данных, а не тратить время на их выяснение. Как следствие, в базах данных могут оставаться незаполненные ячейки (содержащие значение NULL).

  3. Фиктивные значения — значения, введенные оператором, но не имеющие смысла. Наиболее часто такая проблема встречается в полях, обязательных для заполнения, но при отсутствии у оператора реальных данных он вынужден вводить бессмысленные данные. Например: номер социального страхования 999-99-9999, или возраст клиента 999, или почтовый индекс 99999. Проблема усугубляется, если существует вероятность появления реальных данных, которые могут быть приняты за фиктивные. Например, номер мобильного телефона 000-00-0000 для указания на отсутствие мобильного телефона у клиента или месячный доход в размере 999,999.99 для указания на то, что клиент имеет работу.

  4. Логически неверные значения — значения, не соответствующие логическому смыслу, вкладываемому в данное поле таблицы. Например, в поле "Город" находится значение "Иван" или в поле "температура больного" значение 10.

  5. Закодированные значения — сокращенная запись или кодировка реальных данных, используемая для уменьшения занимаемого места.

Составные значения — значения, содержащие несколько логических данных в одной ячейке таблицы. Такая ситуация возможна в полях произвольного формата (например, строковых или текстовых). Проблема усугубляется, если отсутствует строгий формат записи информации в такие поля.

Уровень записи. На данном уровне возникает проблема противоречивости значений в разных полях записи, описывающей один и тот же объект предметной области. Например: для человека возраст не соответствует году рождения: age = 22, bdate = 12.02.50.

Уровень таблицы базы данных. На данном уровне возникают проблемы, связанные с несоответствием информации, хранящейся в таблице и относящейся к разным объектам. На этом уровне наиболее часто встречаются нижеприведенные проблемы.

Уровень одиночной базы данных. На данном уровне, как правило, возникают проблемы, связанные с нарушением целостности данных.

Уровень множества баз данных. На данном уровне возникают проблемы, связанные с неоднородностью как структур баз данных, так и хранящейся в них информации. Можно выделить следующие основные проблемы этого уровня:

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

В целом, очистка данных включает несколько этапов:

Выявление проблем в данных. Для выявления подлежащих удалению видов ошибок и несоответствий необходим подробный анализ данных. Наряду с ручной проверкой следует использовать аналитические программы. Существует два взаимосвязанных метода анализа: профайлинг данных и Data Mining.

Профайлинг данных ориентирован на грубый анализ отдельных атрибутов данных. При этом происходит получение, например, такой информации, как тип, длина, спектр значений, дискретные значения данных и их частота, изменение, уникальность, наличие неопределенных значений, типичных строковых моделей (например, для номеров телефонов) и др., что позволяет обеспечить точное представление различных аспектов качества атрибута.

Data Mining помогает найти специфические модели в больших наборах данных, например отношения между несколькими атрибутами. Именно на это направлены так называемые описательные модели Data Mining, включая группировку, обобщение, поиск ассоциаций и последовательностей. При этом могут быть получены ограничения целостности в атрибутах. Например, функциональные зависимости или характерные для конкретных приложений бизнес-правила, которые можно использовать для восполнения утраченных и исправления недопустимых значений, а также для выявления дубликатов записей в источниках данных. Например, правило объединения с высокой вероятностью может предсказать проблемы с качеством данных в элементах данных, нарушающих это правило. Таким образом, 99 % вероятность правила:

"итого = количество х единиц" демонстрирует несоответствие и потребность в более детальном исследовании для 1 % записей.

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

На этом этапе необходимо выработать общие правила преобразования, часть из которых должна быть представлена в виде программных средств очистки.

Тестирование правил очистки данных. Корректность и эффективность правил очистки данных должны тестироваться и оцениваться, например, в копиях данных источника. Это необходимо для выяснения необходимости корректировки правил с целью их улучшения или исправления ошибок.

Этапы определения правил и их тестирование могут выполняться итерационно несколько раз, например, из-за того, что некоторые ошибки становятся заметны только после определенных преобразований.

Непосредственная очистка данных. На этом этапе выполняются преобразования в соответствии с определенными ранее правилами. Очистка выполняется в два приема. Сначала устраняются проблемы, связанные с отдельны ми источниками данных, а за тем — проблемы множества баз данных. Над отдельными данными выполняются следующие процедуры.

Расщепление атрибутов — данная процедура извлекает значения из атрибутов свободного формата для повышения точности представления и поддержки последующих этапов очистки, таких, как сопоставление элементе данных и исключение дубликатов. Необходимые на этом этапе преобразования перераспределяют значения в поле для получения возможности перемещения слов и извлекают значения для расщепленных атрибутов.

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

Стандартизация —данная процедура преобразует данные в согласованный и унифицированный формат, что необходимо для их дальнейшего согласования и интеграции. Например, записи о дате и времени должны быть оформлены в специальном формате, имена и другие символьные данные должны конвертироваться либо в прописные, либо в строчные буквы и т. д. Текстовые данные могут быть сжаты и унифицированы с помощью выявления основы (шаблона), удаления префиксов, суффиксов и вводных слов. Более того, аббревиатуры и зашифрованные схемы подлежат согласованной расшифровке с помощью специального словаря синонимов или применения предопределенных правил конверсии.

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

Далее описаны некоторые шаги предварительной обработки данных с точки зрения Data Mining.

Масштабирование (шкалирование) данных

Входные переменные должны масштабироваться (шкалироваться), то есть приводиться к единому диапазону изменения. Необходимость масштабирования объясняется несколькими причинами. После кодирования информации входами и выходами разнородные величины, изменяющиеся в различных диапазонах. Все входные переменные желательно привести к единому диапазону и нормировать (максимальное абсолютное значение входных переменных не должно превышать единицу). В противном случае ошибки, обусловленные переменными, изменяющимися в широком диапазоне, будут сильнее влиять, чем ошибки переменных, изменяющихся в узком диапазоне. Обеспечив изменение каждой входной переменной в пределах одного диапазона, мы обеспечим равное влияние каждой. Поэтому входные переменные, как правило, масштабируют (шкалируют), так чтобы переменные изменялись в диапазоне изменения функции, как правило, \([0, 1]\) или \([-1, 1].\) На практике можно строго не выдерживать единый диапазон входных данных, но масштабирование входных данных упрощает работу. Каждая входная переменная масштабируется независимо от других переменных. Масштабы входных и выходных переменных не связаны. При известном диапазоне изменения переменной целесообразно использовать линейное шкалирование. Например, для каждой входной переменной линейное шкалирование имеет вид \[ t_i=\frac{(x_i-x_\min)(b-a)}{x_\max-x_\min}+a, \] где \(x_i\)– входная переменная, \(t_i\)– преобразованная входная переменная, подаваемая на вход сети, \([a,b]\)– допустимый диапазон входных переменных, например, \([-1, 1]\); \([x_\min,x_\max]\) – диапазон изменения входной переменной. Аналогично масштабируются выходные переменные.
Обратное шкалирование при необходимости производится следующим образом \[ x_i=x_\min+\frac{(t_i-a)(x_\max-x_\min)}{b-a} \] Линейное шкалирование целесообразно применять, когда значения переменной \(x_i\) относительно равномерно заполняют определенный интервал. Но если имеется большой разброс данных, которые нельзя исключить как выбросы, то основная масса шкалированных значений \(t_i\) сосредоточится вблизи нуля, что затруднит работу. В этом случае переменные, рассматриваемые как случайные величины, целесообразно центрировать и нормировать — приводить к нулевому среднему значению и единичному стандартному отклонению \[t_i=\frac{x_i-\bar{x}}{\sigma}, \bar{x}=\frac{1}{n}\sum_{i=1}^nx_i,\] где \(\bar{x}\)– выборочная оценка математического ожидания, \(n\)– количество переменных \(x_i\), \(\sigma^2=\frac{1}{n-1}\sum_{i=1}^n(x_i-\bar{x})^2\) – выборочная оценка дисперсии.
При таком шкалировании основная масса данных будет группироваться около нулевого значения. При этом переменные могут выходить за допустимый диапазон переменных и возникают описанные выше проблемы.
Линейное шкалирование не способно нормировать основную массу данных и одновременно ограничить диапазон возможных значений этих данных. При нормально распределенных данных выходом из этой ситуации является использование мягкого (Softmax) шкалирования. Такое шкалирование производится следующим образом \[ t_i=\left(1+\mathrm{exp}\left(-\frac{x_i-\bar{x}}{\sigma}\right)\right)^{-1}, \] где \(\sigma\)– оценка стандартного отклонения, \(\bar{x}\) – оценка математического ожидания.
Мягкое шкалирование нормирует основную массу данных, гарантируя, что все данные попадут в допустимый диапазон переменных. Такое шкалирование сильнее сжимает переменные, далекие от среднего значения. Причем, чем больше стандартное отклонение, тем больше степень сжатия.
Для некоторых данных характерно логарифмическое распределение: большая часть значений сосредоточена вблизи среднего значения, но имеется небольшое количество больших значений. Логарифмическая функция шкалирования позволяет избежать потерь больших значений \[ t_i=\frac{\log⁡(x_i)-\log⁡(\bar{x})}{\log⁡(\max(x_i))-\log⁡(\min(x_i )) }. \] Следует отметить, что нелинейные методы шкалирования следует применять осторожно, так как они вносят в данные свойства, которых не было в исходных данных, например, неравномерно распределенные данные становятся равномерно распределенными, редко встречающиеся значения становятся равноправными с часто встречающимися значениями.

Очистка данных

  1. Заполнение пропущенных значений (атрибут или значение класса):
  2. Определение выбросов и сглаживание зашумленных данных:
  3. Исправить непоследовательные данные: использовать информацию домена или экспертное решение.

Восстановление отсутствующих данных.

Подавляющее большинство методов обработки и анализа данных работают только с полными данными. На практике очень часто встречаются ситуации, когда какая-либо часть данных отсутствует. Для того чтобы иметь возможность обрабатывать такие данные, необходимо восстановить отсутствующие. Существуют различные подходы к решению этой задачи. Большинство методов позволяют получить значения пропущенных данных исходя из принципа их максимальной похожести на полные имеющиеся данные.
При работе с пропущенными значениями лучше сначала определить причину их появления в данных, что поможет решить проблему. Наиболее используемые методы обработки пропущенных значений:
  1. Удаление — удаление записей с пропущенными значениями.
  2. Фиктивная подстановка — замена пропущенных значений фиктивными, например подстановка значения unknown (неизвестно) вместо категориальных или значения 0 вместо чисел.
  3. Подстановка среднего значения — пропущенные числовые данные можно заменить средним значением.
  4. Подстановка часто используемого элемента — пропущенные категориальные значения можно заменить наиболее часто используемым элементом.
  5. Подстановка по регрессии — использование регрессионной медели для замены пропущенных значений регрессионными данными.
  6. Использование статистических методов.
Отсутствие данных - это проблема, влияющая на большинство методов обработки информации, особенно это важно для электронных медицинских записей (жизнь и здоровье людей), результатов социологических обследований (принятие правильных социально-политических решений) и пр. Поскольку большинство статистических моделей работают только с набором полных наблюдений за переменными воздействия и их результатами, то, так или иначе, приходится иметь дело с отсутствующими данными. Принять решение можно либо путем удаления неполных наблюдений, либо путем замены любых пропущенных значений оценочным значением на основе другой доступной информации. Оба метода могут существенно повлиять на выводы, которые можно извлечь из обрабатываемых данных.
Идентификация причины отсутствия информации важна, так как это влияет на выбор метода восстановления. Схематически возможны несколько случаев: Необходимо провести важное различие между данными, отсутствующими по идентифицируемым или по неопознанным причинам. В первом случае значения восстановления могут быть неадекватными и добавлять ошибку к набору данных, поэтому данные считаются невосстановимыми. С другой стороны, когда отсутствуют данные по неидентифицируемым причинам, предполагается, что значения отсутствуют из-за случайных и непреднамеренных причин. Этот тип недостающих данных классифицируется как восстанавливаемый.
Общие действия, которые должны выполняться для обработки отсутствующих данных: Говорят, что элемент данных полностью отсутствует в случайном порядке (missing completely at random - MCAR), если вероятность пропуска переменной, полностью не зависит от ее значения и значений любых других переменных. Например, отсутствующие данные из потерянных страниц опроса являются MCAR, потому что вероятность того, что страница была потеряна, никоим образом не связана со значением любой из переменных, изложенных на этой странице, и ни с какими другими возможными переменными, связанными с отсутствующими данными.
Пропущенная переменная отсутствует в случайном порядке (missing at random - MAR), если вероятность того, что переменная отсутствует у данного субъекта, зависит от значения другой переменной для этого объекта, но не от значения самой отсутствующей переменной. Например, если есть дополнительный доход, который, скорее всего, будет отсутствовать у респондентов с более низким уровнем образования, то условное распределение дохода представляет собой распределение для любого определенного уровня образования. То есть, если высшее образование соотносится с более высоким доходом, тогда среднее значение выборки всех доходов в наборе данных будет смещено вниз, поскольку более высокие доходы, связанные с высшим образованием, будут более вероятными.
Существует несколько путей решения проблемы неполных данных:
  1. Исключение некомплектных объектов из исходной выборки. Данный подход для случая MCAR является вполне оправданным, но для случая MAR он некорректный, так как неполные данные несут в себе новую информацию, необходимую для исследования, и поэтому их важно включать в анализ.
  2. Применение специально разработанных математических методов анализа неполных данных, таких как метод взвешивания или метод максимального правдоподобия и ЕМ-алгоритм.
  3. Восстановление пропусков с использованием методов заполнения по среднему или с использованием кокого-нибудь аппроксимационного аппарата, например, по регрессии.
Пусть исходные данные представлены в виде таблицы \(Y_{n\times m}\), строки которой соответствуют \(n\) изучаемым объектам, а столбцы представляют собой данные по \(m\) переменным. Элементы матрицы \(y_{i,j},i=1,...,n;j=1,...,m\) являются или числами (возраст, уровень дохода, результаты анализов и др.) или категориальными переменными (образование, страна проживания и др.). При этом некоторые из элементов \(y_{i,j}\) не определены. Пусть, кроме того \(I_{i,j},i=1,...,n;j=1,...,m\) принимает значение 1 при наличии признака \(y_{i,j}\) и 0 — в случае его отсутствия.
Для данного примера можно изменить имеющиеся данные или внести новые (удалить существующие). В таблице приведены оценки по 12-бальной системе, 0- отсутствие соответствующей оценки.

Метод исключения некомплектных объектов тривиален.

Методы с заполнением.

Заполнение средними.

Вместо отсутствующих значений подставляются средние значения присутствующих данных. Он заключается в оценке отсутствующих значений \(y_{i,j}\) средними \(\bar{y}_j\) по присутствующим значениям переменной: \[ \bar{y}_j=\left(\sum_{i=1}^nI_{i,j}\right)^{-1}\sum_{i=1}^n\left\{y_{i,j}|I_{i,j}=1\right\}. \]
Иногда вместо среднего значения лучше брать значение медианы.

Заполнение по \(k-\)ближайшим соседям.

Этот подход основан на введении метрики \(d\) для измерения расстояния между объектами, определенного в пространстве сопутствующих переменных, и выборе подстановки по объекту с присутствующим значением, ближайшему к объекту с пропуском. Например, обозначим \(x_{i,1},..., x_{i,J}\) - значения \(J\) переменных, измеренных в нормированных шкалах, у \(i\)-го объекта с пропуском. Например, определим расстояние следующим образом \[d(i, l)= \max_j | x_{i,j}- x_{l,j}|\] − между \(i\)-м и \(l\)-м объектами. Найдем объекты у которых:
  1. наблюдаются \(y_k , x_{k,1},..., x_{k,J} \);
  2. \(d(i, k)\) меньше некоторого порога \(d_0\) .
Выберем из них \(k\) элементов. Число «кандидатов» – подходящих \(k\)-x объектов – можно выбирать, изменяя \(d_0\).
Для заполнения отсутствующих значений \(i-\)го элемента можно использовать средние значения полученных \(k-\)ближайших соседей.

Заполнение с помощью регрессии.

Если переменные \(Y_1,..., Y_n\) распределены по многомерному нормальному закону со средним µ и ковариационной матрицей Σ , то регрессия пропущенных значений в данном наблюдении линейна по присутствующим значениям с коэффициентами, которые являются хорошо известными функциями от µ и Σ . Вначале оценивают µ и Σ по полным наблюдениям, а затем используют эти оценки для вычисления линейной регрессии пропущенных переменных по присутствующим для каждого наблюдения. Подставляя значения переменных, присутствующих для данного наблюдения, в регрессионное уравнение, получаем прогноз пропущенных переменных для этого наблюдения.
В рассматриваемом случае имеем:
Тогда таблица с восстановленными потерянными данными будет иметь вид

Bootstrap.

Первоначально этот метод возник как средство преодоления смещения, обусловленного выборкой, затем, начал широко применяться для работы с любыми статистическими задачами: проверка гипотезы о законах распределения случайных величин, регрессия, дисперсионный анализ или многомерная классификация. Основным преимуществом бутстреп-подхода является то, что он не нуждается в априорном знании закона вероятностного распределения исходных данных, а значит подходит для работы с любыми данными. Отличие бутстрепа от традиционных методов заключается в том, что он предполагает многократную обработку различных частей одних и тех же данных, как бы поворот их разными гранями, и сопоставление полученных таким образом результатов.
Пусть имеется некоторая случайная выборка, состоящая из независимых непрерывных случайных величин \(X = \{X_1, X_2 ,..., X_m\}\) и значения отклика \(Y\). Причем выборка такая, что некоторые значения отклика пропущены. Расположим данные в монотонную структуру, тогда присутствующие значения будут \(Y_i ,i =1..k\), пропуски окажутся в \(Y_i ,i = (k +1)..n\). Для каждой из независимых величин \(X_1, X_2,..., X_m\) и отклика \(Y\) возможно получить некоторое выборочное множество полных наблюдений \(H_i= \{X_{i1}, X_{i2} ,..., X_{in_i} , Y_i\}\)
Предположим, чт распределение \(\{X_i\}\) и \(Y\) неизвестно, тогда
  1. Строится матрица полных наблюдений \(H_{(m+1)xk} = \{X_1, X_2 ,..., X_m , Y \}\) , где \(k\) – число присутствующих наблюдений.
  2. Для каждого пропуска выбирают из выборки \(H\) случайным образом наблюдение, которым замещают пропущенное значение \(Y\) и соответствующие ему \(X_1, X_2, …, X_m\). Для этогo генерируется случайное число \(j = Random()\), производится замена наблюдения с пропуском \(\{X_{i1}, X_{i2} ,..., X_{im} , Y_i \}\) , \(i=(k+1)..n\) на \(H_j = \{X_{j1}, X_{j2} ,..., X_{jm} , Y_j\}\)
  3. По полученным данным, строится регрессионная модель, и находятся оценки коэффициентов и свободного члена.
Данный алгоритм повторяется \(r\) раз и после этого находятся средние значения коэффициентов регрессионной модели. И, в конце концов, по регрессионной модели, полученной по усредненным коэфициентам, находим восстановление отсутствующей информации.
Положительным фактором в пользу метода является повторное использование исходных данных, ведь увеличение числа подвыборок позволяет наиболее полно и информативно использовать исходную информацию. С другой стороны, число новой информации уменьшается для каждой новой подвыборки, так как увеличивается вероятность того, что данные элементы выборки были уже выбраны раньше.

Безусловно, рассмотренные приемы не охватывают все множество методов, возволяющих восстановить потерянные (отсутствующие) данные.

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

Unfortunately, your browser is currently unsupported by our web application. We are sorry for the inconvenience. Please use one of the supported browsers listed below, or draw the image you want using an offline tool.

Supported browsers: Opera, Firefox, Safari, and Konqueror.

Исходные данные

xi
yi

Использование линейной регрессии для обнаружения выбросов.

Для исходных данных нужно обнаружить возможные выбросы в предположении линейной зависимости значений у от х: y=a+bx.
Пусть n= – объём выборки (число наблюдений), а k – количество параметров в модели, включая свободный член. В случае использования линейной регрессии k=2, для параболической регрессии (y=a+bx+cx2) k=3 (см. здесь).
Уравнение линейной регрессии Y=.
Ожидаемые (Predicted) значения \(Y_i=a+bx_i\) представляют собой значения регрессионной прямой от независимых предикторов (в нашем случае от \(x_i\)), то есть значения данных, восстановленных по линейной регрессионной модели.
Важно! Если в таблице возникает значение NaN, то в ходе выполнения расчетов возникает вырожденный случай, к примеру, следуя методу наименьших квадратов, расстояние от от точки X(0,0) до прямой x=1 не определено (в асимптотическом смысле равно \(\infty\)). Думаю, читатель может самостоятельно справиться с этой проблемой.

xi
yi
Yi

Значения ошибки восстановления данных по линейной регресионной модели \(E_i=|y_i-Y_i|\).

xi
Ei

Если в наборе данных присутствует один или несколько выбросов, тогда они могут сильно искажать регрессионную зависимость и тем самым препятствовать своему обнаружению. Идея расчета удалённых остатков состоит в том, чтобы получить уравнение регрессии без влияния на него потенциального выброса.
Пусть \(E_{i0}=\max_iE_i\), удалим из множества наблюдений пару \(x_{i0},y_{i0}\) и по оставшимся наблюдениям построим уравнение регрессии, и вновь найдем рассчитывается ожидаемое значение \(Y_{(i)}\) с учетом удаленного \(i_0\)-того наблюдения. Разность между наблюдаемым значением и ожидаемым в отсутствие данного наблюдения значением и является удалённым остатком. По абсолютному значению удалённые остатки всегда больше обычных остатков.
Данные после удаления выброса

xi
yi
Y(i)
Ei

Дисперсия ошибки \(\sigma^2_e=\frac{\sum_{i=1}^nE_i^2}{n-k}\), где \(k=2\) количество параметров модели (в нашем случае модель линейная двупараметрическая), то есть равна .
Стандартное отклонение ошибки регрессии \(\sqrt{\sigma^2_e}\) равно и средние значения \(\bar{x}=\) и \(\bar{y}=\).

Показатель воздействия наблюдения или «разбалансировка» (Leverage) и его центрированный вариант (Centered leverage)

Проведем через точки \((x_i,y_i)\) и \((\bar{x},\bar{y})\) прямую: \[ \frac{x-x_i}{\bar{x}-x_i}=\frac{y-y_i}{\bar{y}-y_i} \Rightarrow y=\frac{\bar{y}-y_i}{\bar{x}-x_i}(x-x_i)+y_i \Rightarrow y=k_i(x-x_i)+y_i \] и построим линейную комбинацию \(b=\sum_{i=1}^nh_ik_i\). Веса \(h_i\) называются показателями воздействия, поскольку именно их величина определяет итоговый наклон регрессии. Чем дальше от центра системы по оси \(х\) находится наблюдение, тем сильнее его вклад в общее уравнение регрессии и тем, следовательно, больше \(h_i\).
Величина показателя воздействия находится между 0 и 1, а сумма всех \(h_i\) равна числу параметров модели, включая свободный член (т.е. для линейной регрессии \(\sum_{i=1}^nh_i = 2\) ). Большими считаются значения \(h_i>2k/n\).
В линейной регрессионной модели показатель воздействия наблюдения \(h_i\) есть \(i-\)й диагональный элемент проекционной матрицы H=X(XTX)-1XT, где X матрица независимых переменных с единичным столбцом в начале. В случае, если в матрице только два столбца (рассматриваемый случай), то \[h_i=\frac{1}{n}+\frac{(x_i-\bar{x})^2}{(n-1)\sigma_x^2},\] где \(\sigma_x^2\)- дисперсия предикторов (независимых переменных).
Иногда полезно использовать центрированный показатель воздействия, величина которого изменяется от \(0\) до \(1-\frac{1}{n}\) \[ h^*_i=\frac{(x_i-\bar{x})^2}{(n-1)\sigma_x^2}=h_i-\frac{1}{n}. \]

xi
hi
hi*

Стандартная ошибка остатка (Standard error of residual)

Стандартная ошибка остатка учитывает как общий разброс наблюдений относительно регрессионной зависимости, так и удалённость конкретного наблюдения от центра системы. В отличие от стандартного отклонения остатков, которое одинаково для всех данных, стандартная ошибка остатка индивидуальна для каждого наблюдения и зависит от его показателя воздействия: чем он больше, тем меньше стандартная ошибка \[ m_i=\sigma_e\sqrt{1-h_i}. \]

xi
mi

Обнаружение выбросов (Outliers).

Выбросами считаются атипичные наблюдения, лежащее в стороне от регрессионной зависимости для большинства других наблюдений. Появление выбросов связано с влиянием на признак редких и/или обычно не учитываемых факторов, а также ошибками на стадии измерения признака. Говоря статистически, выброс не принадлежит данной генеральной совокупности, а потому должен быть исключён из анализа.

Стандартизованный остаток

Стандартизованный остаток равен отношению остатка к его стандартному отклонению. \[ rs_i=\frac{E_i}{\sigma_e} \] Стандартизованные остатки распределены асимптотически нормально. Однако они имеют разную дисперсию и не являются приведёнными к единому масштабу, поскольку не учитывают удалённость наблюдения от центра системы. Поэтому величины \(rs_i\) можно использовать лишь в качестве самых ориентировочных указателей на возможные выбросы. Обычно большими остатками считают \(rs_i >2\).
xi
rsi

Внутренний стьюдентизированный остаток (Internally studentized residual)

Внутренний стьюдентизированный остаток определяется кака отношение остатка к его стандартной ошибке. \[ rt_i=\frac{E_i}{m_i} \] Называется внутренним в связи с тем, что его расчёт проводится по полным данным внутри всей имеющейся системы наблюдений. Внутренний стьюдентизированный остаток изменяется от 0 до \(\sqrt{n-k-1}\) и имеет распределение близкое к t-распределению Стьюдента с числом степеней свободы ν=n-k. Отличие от t-распределения связано с тем, что при внутренней стьюдентизации числитель и знаменатель в формуле расчёта \(rt_i\) не являются независимыми.
Для не слишком малых выборок и небольшого числа параметров регрессии k критические значения t-распределения для 5%-ного уровня значимости близки к 2. На основании этого наблюдения со стьюдентизированными остатками 2 и более являются подозрительными на выброс. Однако для обнаружения выбросов не рекомендуется использовать и этот показатель и следует предпочесть внешний стьюдентизированный остаток.

xi
rti

Внешний стьюдентизированный остаток

Внешний стьюдентизированный остаток (Externally studentized residual) или стьюдентизированный удалённый остаток (Studentized deleted residual) \[ rt_{(i)}=\frac{E_i}{m_{(i)}}. \] – отношение остатка к его стандартной ошибке, вычисленной по регрессионной зависимости с удалённым i-тым наблюдением.
Удаление i-того наблюдения позволяет исключить его влияние как потенциального выброса на форму регрессионной зависимости.
Внешним стьюдентизированным остатком он называется потому, что при его расчёте привлекается внешняя оценка дисперсии ошибки регрессии, свободная от влияния потенциального выброса. Вообще говоря, именно такая внешняя стьюдентизация и является собственно стьюдентизацией.
Внешний или удалённый стьюдентизированный остаток имеет t-распределение Стьюдента с числом степеней свободы ν=n-k. Для не слишком малых выборок и небольшого числа параметров регрессии k критические значения t-распределения для 5%-ного уровня значимости близки к 2. На основании этого наблюдения с удалёнными стьюдентизированными остатками 2 и более обычно относятся к выбросам.

xi
rt(i)

Расчёт статистик влияния (Influence Statistics)

Статистики влияния позволяют выразить степень влияния наблюдения на форму и/или положение регрессионной зависимости. Поскольку влиятельные наблюдения в большей мере определяют регрессионную зависимость, даже небольшие ошибки в их оценках приводят к существенному искажению формы и/или положения регрессии, что отрицательно сказывается на её прогностических свойствах. Все меры влияния можно подразделить на общие и специфические.
Общие меры показывают как i-тое наблюдение влияет на положение всей регрессионной зависимости. К ним относят: расстояние Кука, ковариационное отношение и DFFITS. Также к общим мерам влияния относят обычно и расстояние Махаланобиса. Специфические меры влияния, такие как DFBETAS, показвают влияние i-того наблюдения на отдельные параметры регрессионной модели.

Расстояние Махаланобиса (Mahalanobis distance).

Независимые переменные в уравнении регрессии можно представлять точками в многомерном пространстве (каждое наблюдение изображается точкой). В этом пространстве можно построить точку центра. Такая «средняя точка» в многомерном пространстве называется центроидом, то есть центром тяжести. Расстояние Махаланобиса рассчитывается как расстояние от наблюдаемой точки до центра тяжести в многомерном пространстве, определяемом коррелированными (неортогональными) независимыми переменными. Если же независимые переменные некоррелироваиы, расстояние Махаланобиса совпадает с обычным евклидовым расстоянием. Эта мера позволяет, в частности, определить, является ли данное наблюдение выбросом по отношению к остальным значениям независимых переменных.
Подробно расстояние Махаланобиса рассматриваается в разделе, посвященном кластеризации, здесь же эта характеристика используется в качестве одной из наиболее распространённой меры удаления точки от центра системы множества точек наблюдения. Поскольку она не учитывает зависимый или независимый характер переменной и рассматривает их в облаке рассеяния равнозначно, данная мера не является характеристикой регрессионного анализа. Тем не менее, она удобна тем, что очень близка к показателю воздействия \(h_i\) и легко выводится из него и n и может рассматриваться как ещё один тест на выбросы. \[ MD_i=(n-1)\left(h_i-\frac{1}{n}\right). \] Критическое значение MD для для нужного уровня значимости \(\alpha\) рассчитывается следующим образом \[ MD_{[\alpha]}=\frac{k(n-1)^2F_{[\alpha,v1=k,v2=n-k-1]}}{n\left(n-k-1+k\cdot F_{[\alpha,v1=k,v2=n-k-1]}\right)} \] Тогда для введенных данных k=2,n=, имеем значения распределения Фишера (Фишера-Снедекора): F[α=0.05;2;]=, F[α=0.1;2;]= и, соответственно, предельные значения расстояния Махалонобиса будут равны MD[α=0.05]= и MD[α=0.10]= .
Наблюдение, для которого \(MD_i>MD_{[\alpha=0.05]}\) с точностью \(P>0.05\) является выбросом, а, если \(MD_{[\alpha=0.10]}\lt MD_i \lt MD_{[\alpha=0.05]}\) является подозрительным с вероятностью \(0.05\lt P\lt 0.1\).
xi
MDi

Расстояние Кука (Cook’s distance).

Расстояние Кука — это мера влияния соответствующего наблюдения на уравнение регрессии. Эта величина показывает разницу между оценками стандартной ошибки и значениями, которые получились бы при исключении соответствующего наблюдения. В адекватной модели все расстояния Кука должны быть примерно одинаковыми; если это не так, то есть основания считать, что соответствующее наблюдение (или наблюдения) смещает (смещают) оценки коэффициентов регрессии. \[ CD_i=\frac{\sum \left(Y-Y_{(i)}\right)^2}{ks_e^2}=\frac{rt^2_{(i)}}{k}\left(\frac{h_i}{1-h_i}\right), \] где \(Y=a+bx\)- значение линейной регрессии по множеству \(\{(x_i,y_i)\}_{i=1}^n\), а \(Y_{(i)}=a_{(i)}+b_{(i)}x,\) по множеству\( \{(x_1,y_1),(x_2,y_2),...,(x_{i-1},y_{i-1}),(x_{i+1},y_{i+1}),...,(x_n,y_n)\}\).
Критическое значение статистики Кука равно F[α=0.05;2;]=
xi
CDi

Ковариационное отношение (CovRatio)

Это общая мера влияния наблюдения. Представляет собой отношение детерминанта ковариационной матрицы с удалённым i-тым наблюдением к детерминанту ковариационной матрицы для всего набора данных. В двухпеременном случае расчёт удобно проводить по формуле: \[ CR_i=\left(\frac{s^2_{e(i)}}{s^2_e}\right)^2\cdot \frac{1}{1-h_i} \] Влиятельными считаются наблюдения, значимо отличающиеся от 1. Если \(|CR_i-1|\gt \frac{3k}{n}\), то наблюдение считается существенно влияющим на регрессионную зависимость, удаление любого из них исказит регрессионную зависимость и расширит доверительный интервал для предсказания.
xi
CRi

Меры DFFIT и стандартизованное DFFITS

DFFIT – разность между ожидаемым значением для данного наблюдения и удалённым ожидаемым значением для него.
Стандартизованное значение DFFITS, как и расстояние Кука объединяет стьюдентизированный остаток и показатель влияния наблюдения. Однако если в расстоянии Кука используется остаток с внутренней стьюдендизаций, то в остатке для DFFITS она внешняя. По этой причине DFFITS имеет преимущество перед расстоянием Кука. \[ DFFITS_i=\frac{DFFIT_i}{s_{e(i)}\sqrt{h_i}}=rt_{(i)}\sqrt{\frac{h_i}{1-h_i}}. \] Для малых и средних объёмов выборок влиятельными наблюдениями признаются значения больше 1, а для больших выборок – более \(2\sqrt{\frac{k}{n}}\).
xi
Yi
Y(i)
DEFITi
DEFITSi
Решение любой технической задачи, связанной с обработкой цифровых данных (сигнала), независимо от их природы, начинается с выделения полезной информации (информативных признаков). Как правило исходная информация предоставляется нам с некоторой погрешностью. Случайные погрешности (шумы) при этом необходимо погасить тем или иным фильтром. Далее, при решении конкретных задач информация, очищенная от помех, используется в виде исходной.
Если природа помех известна, то строятся цифровые фильтры, реагирующие именно на такие помехи. Если же природа помех не известна, т.е. когда на информативный сигнал наложен "белый шум", то используют различные аппараты сглаживания, убирающие резкие изменения входящей информации. В рассматриваемых нами задачах помехи, как правило, случайны, в частности, имеют характер "белого шума". Одним из наиболее распространенных видов снятия информации в машиностроении, является обмер детали копиром. При этом снимаемая информация зашумлена случайными выбросами, что связано с механикой самого копира. Конечно, искажение информации может быть связано и с регулярными изменениями данных, вызванными разбалансировкой механизмов или сбитой градуировкой измерительного инструмента. В этом случае положение может исправить лишь изменение технологической оснастки.
Здесь мы рассмотрим некоторые простейшие алгоритмы сглаживания, которые наиболее эффективны в задачах, когда число единиц информации велико (т.е. когда данные снимаются копиром, сканером и пр.).
Пусть дан набор из \(n+1\) точки \[M_0(x_0,y_0),\,M_1(x_1,y_1),\,\ldots,M_n(x_n,y_n)\] на плоскости, полученных в результате эксперимента или измерения.
Один из самых простых алгоритмов сглаживания данных основан на замене трех последовательных точек центром тяжести треугольника с вершинами в этих точках.
Этот алгоритм изображен на рисунке, где исходные данные - это точки \(M_0\), \(M_1,\ldots,M_n\), а сглаженные точки - \(M_1^*,\ldots,M^*_{n-1}\).
То есть точки \(M_1^*,\ldots,M^*_{n-1}\) это точки пересечения медиан треугольников с вершинами в точках \(M_0\), \(M_1\) и \(M_2\); \(M_1\), \(M_2\) и \(M_3,\ldots\) \(M_{n-2}\), \(M_{n-1}\) и \(M_n\). Ясно, что \[ M_i^*=\frac{1}{3}(M_{i-1}+M_i+M_{i+1})\,\,\,\,\,\,(i=1,2,\ldots,n-1), \] т.е. \begin{equation}\label{eq:(1.31)} x_i^*=\frac{1}{3}(x_{i-1}+x_i+x_{i+1})\,\,\,\,\,\,(i=1,2,\ldots,n-1), \end{equation} \begin{equation}\label{eq:(1.32)} y_i^*=\frac{1}{3}(y_{i-1}+y_i+y_{i+1})\,\,\,\,\,\,(i=1,2,\ldots,n-1). \end{equation} Равенства (\ref{eq:(1.31)}) и (\ref{eq:(1.32)}) можно переписать в эквивалентном виде \begin{equation}\label{eq:(1.33)} x_i^*=x_i+\frac{1}{3}\Delta^2x_i\,\,\,\,\,\,\,(i=1,2,\ldots,n-1), \end{equation} \begin{equation}\label{eq:(1.34)} y_i^*=y_i+\frac{1}{3}\Delta^2y_i\,\,\,\,\,\,\,(i=1,2,\ldots,n-1). \end{equation} В процессе сглаживания количество данных (точек) уменьшилось на две. Как правило, процесс сглаживания повторяют несколько раз. В результате мы теряем часть информации, что приводит к потере точности при описании контура у концов. Чтобы этого не произошло, необходимо пополнить разумным способом исходные данные и пополненные данные сгладить.
Если данные \(M_0,M_1,\ldots,M_n\) описывают замкнутую кривую (в этом случае \(M_0=M_n\)), то достаточно положить \(M_{-1}=M_{n-1}\) и \(M_{n+1}=M_1\) (периодизировать данные). В этом случае будет \[\Delta^2x_0=x_1-2x_0+x_{-1}=x_1-2x_0+x_{n-1},\] \[\Delta^2x_n=x_{n+1}-2x_n+x_{n-1}=x_1-2x_n+x_{n-1}\] и \[\Delta^2y_0=y_1-2y_0+y_{-1}=y_1-2y_0+y_{n-1},\] \[\Delta^2y_n=y_{n+1}-2y_n+y_{n-1}=y_1-2y_n+y_{n-1}\] сглаженные данные определяются с помощью равенств (\ref{eq:(1.33)}) и (\ref{eq:(1.34)}) для всех \(i=0,1,\ldots,n\).
Приведем два способа доопределения данных в случае, когда данные описывают незамкнутую кривую.
Первый способ состоит следующем - точки \(M_{-1}\) и \(M_{n+1}\) определяем из условия \[M_{-1}M_0=M_0M_1,\,\,\, M_nM_{n-1}= M_{n+1}M_n,\] т.е. \begin{equation}\label{eq:(1.35)} x_{-1}=2x_0-x_1,\,\,\,\,\, x_{n+1}=2x_n-x_{n-1}, \end{equation} \begin{equation}\label{eq:(1.36)} y_{-1}=2y_0-y_1,\,\,\,\,\, y_{n+1}=2y_n-y_{n-1}. \end{equation} Второй способ изображен на рисунке
В этом случае точки \(M_{-1}\) и \(M_{n+1}\) мы выбираем из условий \[M_2M_{-1}= M_2M^*_1+ M_2M_0,\,\,\, M_{n-2}M_{n+1}= M_{n-2}M_{n-1}^*+ M_{n-2}M_n,\] или, что то же, \[x_2-x_{-1}=x_2-\frac{1}{3}(x_0+x_1+x_2)+x_2-x_0,\] \[x_{n+1}-x_{n-2}=x_{n-2}-\frac{1}{3}(x_{n-2}+x_{n-1}+x_n)+x_n-x_{n-2}\] и \[y_2-y_{-1}=y_2-\frac{1}{3}(y_0+y_1+y_2)+y_2-y_0,\] \[y_{n+1}-y_{n-2}=y_{n-2}-\frac{1}{3}(y_{n-2}+y_{n-1}+y_n)+y_n-y_{n-2}.\] Находя из этих равенств \(x_{-1}, x_{n+1}\), \(y_{-1}\) и \(y_{n+1}\), получаем формулы пополнения \begin{equation}\label{eq:(1.37)} x_{-1}=\frac{1}{3}(4x_0+x_1-2x_2),\,\,\,x_{n+1}=\frac{1}{3} (4x_n+x_{n-1}-2x_{n-2}), \end{equation} \begin{equation}\label{eq:(1.38)} y_{-1}=\frac{1}{3}(4y_0+y_1-2y_2),\,\,\,y_{n+1}=\frac{1}{3} (4y_n+y_{n-1}-2y_{n-2}). \end{equation} Таким образом, мы пришли к следующему алгоритму сглаживания данных, описывающему незамкнутую кривую.
Вычисляем значения \(x_{-1},y_{-1},x_{n+1},y_{n+1}\) в соответствии с равенствами (\ref{eq:(1.37)}), (\ref{eq:(1.38)}) или (\ref{eq:(1.35)}), (\ref{eq:(1.36)}) и вычисляем сглаженные данные \(x_i^*,y_i^*\) для всех \(i=0,1,\ldots,n\) по формулам \begin{equation}\label{eq:(1.39)} x_i^*=x_i+\frac{1}{3}\Delta^2x_i, \end{equation} \begin{equation}\label{eq:(1.40)} y_i^*=y_i+\frac{1}{3}\Delta^2y_i. \end{equation} Формулы (\ref{eq:(1.39)}), (\ref{eq:(1.40)}) дают хорошие результаты сглаживания в тех ситуациях, когда ошибки измерения велики. В тех случаях когда ошибки очень большие, то используют эти алгоритмы несколько раз. При малых ошибках алгоритм, приведенный выше, может (даже при однократном применении) "перегладить" данные, исказив достоверную информацию. В таких случаях обычно применяют (лучше несколько раз) более "мягкие" алгоритмы сглаживания, которые отличаются от (\ref{eq:(1.39)}), (\ref{eq:(1.40)}) меньшим коэффициентом при вторых разностях.
Точная формулировка такого алгоритма выглядит так: \begin{equation}\label{eq:(1.41)} x_{-1}=\frac{1}{3}(4x_0+x_1-2x_2),\,\,\,x_{n+1}=\frac{1}{3} (4x_n+x_{n-1}-2x_{n-2}), \end{equation} \begin{equation}%\label{eq:(1.42)} y_{-1}=\frac{1}{3}(4y_0+y_1-2y_2),\,\,\,y_{n+1}=\frac{1}{3} (4y_n+y_{n-1}-2y_{n-2}), \end{equation} \begin{equation}%\label{eq:(1.43)} x_i^*=x_i+\alpha\Delta^2x_i\,\,\,\,(i=0,1,\ldots,n), \end{equation} \begin{equation}\label{eq:(1.44)} y_i^*=y_i+\alpha\Delta^2y_i\,\,\,\,(i=0,1,\ldots,n). \end{equation} Ясно, что если \(\alpha=0\), то \(x_i^*=x_i\) и \(y_i^*=y_i\), а если \(\alpha=1/3\), то получим приведенный ранее алгоритм сглаживания (по центрам тяжести). Если же \(0\lt \alpha \lt 1/3\), мы получаем "мостик" между наиболее "мягким" алгоритмом (\(\alpha=0\)) и наиболее "жестким" (\(\alpha=1/3\)).
Можно показать, что при \(\alpha=1/8\) алгоритм (\ref{eq:(1.41)}) - (\ref{eq:(1.44)}) тесно связан со сглаживанием данных с помощью параболических сплайнов, а при \(\alpha=1/6\) с помощью кубических сплайнов. Эти связи мы не будем изучать подробно (их можно найти почти во всех монографиях по сплайнам) и укажем лишь на то, что их можно вывести из результатов последующих параграфов.
На практике обычно поступают так: выбирают параметр сглаживания \(\alpha\) (для задач, связанных со сглаживанием данных снятых с показаний копира, достаточно, как правило, полагать \(\alpha=1/10\)), сглаживают данные с помощью алгоритма (\ref{eq:(1.41)}) - (\ref{eq:(1.44)}) и полученные данные принимают за исходные. Затем сглаживают их тем-же алгоритмом повторно, и т.д.
Hа рисунках приведены примеры сглаживания при \(\alpha=1/3\).

Сглаживание периодических данных при 4 итерациях и\(\alpha=1/3\).

Сглаживание периодических данных при 7 итерациях и \(\alpha=1/3\).

Сглаживание периодических данных при 40 итерациях и \(\alpha=1/3\).

В приведенных примерах хорошо видно, что лучшие результаты получатся в случаях, когда алгоритм сглаживания применяется 4 - 8 раз. Это типичная ситуация в тех случаях, когда уровень ошибок велик.
Аналогичная картина будет и в случае сглаживания непериодических данных, то есть данных, описывающих незамкнутую кривую. Вначале небольшое отличие от предыдущего имеется лишь у концов кривой.

Сглаживание незамкнутой кривой при 5 итерациях и \(\alpha=1/3\).

Сглаживание незамкнутой кривой при 10 итерациях и \(\alpha=1/3\).

Сглаживание незамкнутой кривой при 40 итерациях и \(\alpha=1/3\).
При многократном применении алгоритма сглаживания, в первом случае кривая вырождается в точку, а во втором - в прямую. Примеры таких расчетов приведены на рисунках

Сглаживание периодических данных при 4 итерациях и \(\alpha=1/6\)

Сглаживание периодических данных при 10 итерациях и \(\alpha=1/6\)

Сглаживание периодических данных при 40 итерациях и \(\alpha=1/6\)

Сглаживание кривой при 5 итерациях и \(\alpha=1/6\).

Сглаживание кривой при 10 итерациях и \(\alpha=1/6\).

Сглаживание кривой при 40 итерациях и \(\alpha=1/6\).

Условие окончания сглаживания данных

Естественно возникает вопрос: "Какое количество итераций будет достаточно для завершения процесса сглаживания?" То есть, до каких пор проводить процесс сглаживания?
Приведенные результаты наглядно демонстрируют, что многократное применение алгоритма сглаживания может существенно исказить исходную информацию вплоть до потери формы исходного контура.
Ясно, что это зависит от точности задания исходных данных или, что то же, от уровня ошибок (шумов). Чем больше уровень ошибок, тем больше необходимо операций сглаживания. С другой стороны, если число итераций слишком велико данные "разгладятся" в отрезок прямой (если данные описывают незамкнутую кривую) или стянутся в точку (в случае замкнутой кривой).
Алгоритм остановки сглаживания основан на следующем факте: если данные сглажены не достаточно, то длины ломаных, последовательно соединяющих точки до и после сглаживания, существенно различны (после сглаживания длина ломаной уменьшается), а если данные сглажены достаточно - длины этих ломаных почти совпадают.
Формулировка этого факта такова:
Пусть \(M_0,M_1,\ldots,M_n\) - исходные данные, а \(M_0^*,M_1^*,\ldots,M^*_n\) - сглаженные и \[\Theta_n=\sum_{i=1}^{n}{|M_iM_{i-1}|},\] \[\Theta_n^*=\sum_{i=1}^{n}{|M^*_iM^*_{i-1}|}.\] Тогда математическое ожидание величины \(|\Theta_n-\Theta_n^*|\) пропорционально величине \(\alpha\cdot n\cdot \varepsilon\cdot \Theta_n\), где \(\varepsilon\) - уровень ошибки.
Если же \[x_i=x(a+ih),\,\,y_i=y(a+ih)\,\,\,\,(i=0,1,\ldots,n;\,\,\,\,\,h=(b-a)/n),\] и, функции \(x(t)\) и \(y(t)\) четырежды непрерывно дифференцируемы на отрезке \([a,b]\) (т.е. если данные снимаются равномерно с гладкой кривой), то \begin{equation}\label{eq:(1.45)} \Delta l_n=|\Theta_n-\Theta_n^*|\le A\alpha h^2+O(h^3), \end{equation} где \[A=\int_{a}^{b}{|\theta(t)|dt}\] и \begin{equation}\label{eq:(1.46)} \theta(t)=\frac{1}{2}\,\frac{x'(t)x'''(t)+y'(t)y'''(t)} {\sqrt{(x'(t))^2+(y'(t))^2}}, \end{equation} т.е. величина \(|\Theta_n-\Theta_n^*|\) стремится к нулю пропорционально \(1/n^2\).
На рисунках приведен пример поведения длин ломаных в процессе сглаживания. Сглаживание данных в этом случае достаточно провести 6 - 7 раз.

\(\alpha=1/3\)

\(\alpha=1/6\)
Можно указать и критерий остановки процесса сглаживания. Для этого достаточно записать дискретный аналог неравенства (\ref{eq:(1.45)}) (с константой \(2A\) вместо \(A\) , чтобы пренебречь погрешностью дискретизации, и величиной \(O(h^3)\)). Пусть \[M_{i,k}(x_{i,k},y_{i,k})\,\,\,(i=0,1,\ldots,n)\] - набор точек, полученных в результате \(k\)-го сглаживания, \[\Theta_{n,k}=\sum_{i=1}^{n}{|M_{i,k}M_{i-1,k}|}\] - длина ломаной, соединяющей точки, полученные в результате \(k\)-го сглаживания, т.е. \[\Theta_{n,k}=\sum_{i=1}^{n}\sqrt{\left(\Delta x_{i-1/2,k}\right)^2+ \left(\Delta y_{i-1/2,k}\right)^2}.\] Если неравенство \begin{equation}%\label{eq:(1.47)} \Delta l_n=|\Theta_{n,k}-\Theta_{n.k-1}|\le2\alpha\Theta_{n,k}^2 \end{equation} не выполняется, то сглаживание продолжаем, если выполняется - прекращаем.
Приведем доказательство основного в этом параграфе неравенства (\ref{eq:(1.45)}). Для упрощения выкладок ограничимся случаем, когда данные описывают замкнутую кривую. Для незамкнутой кривой добавляются лишь технические трудности, связанные с доопределением точек у концов.
Итак, пусть \(x(t)\) и \(y(t)\) четырежды дифференцируемые на периоде \([0,T]\) функции, \(h=T/n\) и \[x_i=x(ih),\,\,\,y_i=y(ih)\,\,\,\,(i\in Z),\] \[x^*_i=x_i+\alpha \Delta^2x_i,\,\,\,\,y^*_i=y_i+\alpha \Delta^2y_i.\] Кроме того, пусть \[\theta_{n,i-1/2}=\sqrt{(x_i-x_{i-1})^2+(y_i-y_{i-1})^2},\] \[\theta^*_{n,i-1/2}=\sqrt{(x^*_i-x^*_{i-1})^2+(y^*_i-y^*_{i-1})^2}\] и\[\Theta_n=\sum_{i=1}^{n}{\theta_{n,i-1/2}},\,\,\,\,\,\,\,\,\, \Theta^*_n=\sum_{i=1}^{n}{\theta^*_{n,i-1/2}}.\] Тогда \[(\theta^*_{n,i-1/2})^2=(x_i-x_{i-1}+\alpha(\Delta^2x_i-\Delta^2x_{i-1}))^2+ (y_i-y_{i-1}+\alpha(\Delta^2y_i-\Delta^2y_{i-1}))^2= (\Delta^1x_{i-1/2}+\alpha\Delta^3x_{i-1/2})^2+ (\Delta^1y_{i-1/2}+\] \[+\alpha\Delta^3y_{i-1/2})^2= (\Delta^1x_{i-1/2})^2+(\Delta^1y_{i-1/2})^2+ \alpha^2\bigl((\Delta^3x_{i-1/2})^2+(\Delta^3y_{i-1/2})^2\bigr)+ \alpha\left(\Delta^1x_{i-1/2}\Delta^3x_{i-1/2}+ \Delta^1y_{i-1/2}\Delta^3y_{i-1/2}\right).\] Таким образом, при \(h\to 0\) равномерно по \(i\) выполняется соотношение \[(\theta^*_{n,i-1/2})^2=(\Delta^1x_{i-1/2})^2+(\Delta^1y_{i-1/2})^2+\alpha\left(x'_{i-1/2}x'''_{i-1/2}+y'_{i-1/2}y'''_{i-1/2}\right)h^4+O(h^6),\] т.е. \begin{equation}\label{eq:(1.48)} (\theta^*_{n,i-1/2})^2=(\theta_{n,i-1/2})^2+\alpha\phi_{i-1/2}h^4+O(h^6), \end{equation} где \[\phi(t)=x'(t)x'''(t)+y'(t)y'''(t)\] и \[\phi_{i-1/2}=\phi((2i-1)h/2).\] Кроме того, \[(\theta_{n,i-1/2})^2=((x'_{i-1/2})^2+(y'_{i-1/2})^2)h^2+O(h^4).\] Отсюда и из (\ref{eq:(1.48)}) имеем \[(\theta^*_{n,i-1/2})^2= (\theta_{n,i-1/2})^2\left(1+\alpha\,\,\phi_{i-1/2}h^2/(\theta_{n,i-1/2})^2+O(h^4)\right)=\] \[=(\theta_{n,i-1/2})^2\left(1+\alpha\,\,\psi_{i-1/2}h^2+O(h^4)\right),\] где функция \(\psi(t)\) определена равенством \[\psi(t)=\frac{\phi(t)}{(x'(t))^2+(y'(t))^2}.\] Таким образом \[\theta^*_{n,i-1/2}=\theta_{n,i-1/2}\sqrt{1+\alpha\,\,\psi_{i-1/2}h^2+O(h^4)}.\] Кроме того, при \(\beta\to 0\) \[\sqrt{1+\beta}=1+\frac{\beta}{2}+O(\beta^2).\] Поэтому \[\sqrt{1+\alpha\,\,\psi_{i-1/2}h^2+O(h^4)}= 1+\frac{1}{2}\alpha\,\,\psi_{i-1/2}h^2+O(h^4).\] Из этого и полученных ранее соотношений следует, что при \(h\to 0\) равномерно по \(i\) выполняется асимптотическое равенство \[\theta^*_{n,i-1/2}=\theta_{n,i-1/2} \left(1+\frac{1}{2}\alpha\,\,\psi_{i-1/2}h^2+O(h^4)\right)=\theta_{n,i-1/2}+\alpha\,\,\theta_{n,i-1/2}\psi_{n,i-1/2}h^2+O(h^4).\] Используя теперь равенство (\ref{eq:(1.46)}), получим \[\theta^*_{n,i-1/2}-\theta_{n,i-1/2}=\alpha\,\,\theta_{n,i-1/2}h^3+O(h^4)\] и, следовательно, \[\Theta^*_n-\Theta_n=\alpha\,\, h^2 \left(h\sum_{i=1}^{n}{\theta_{n,i-1/2}}\right)+O(h^3).\] Остается учесть, что \[h\sum_{i=1}^{n}{\theta_{n,i-1/2}}=\int_{a}^{b}{\theta(t)dt}+O(h^2).\] В заключение приведем формальный алгоритм сглаживания.
Даны массивы: \[x_0,x_1,\ldots,x_n,\,\,\,\,\,\,\,y_0,y_1,\ldots,y_n.\] Выбираем \(\alpha\,\,\in[0,1/3]\), и вычисляем величины \[x_{-1}=\frac{1}{3}(4x_0+x_1-2x_2),\,\,\,\,\,\,\,x_{n+1}=\frac{1}{3} (4x_n+x_{n-1}-2x_{n-2}),\] \[y_{-1}=\frac{1}{3}(4y_0+y_1-2y_2),\,\,\,\,\,\,\,y_{n+1}=\frac{1}{3} (4y_n+y_{n-1}-2y_{n-2}),\] \[\Delta^2x_i=x_{i+1}-2x_i+x_{i-1}\,\,\,\,\,\,\,(i=0,1,\ldots,n),\] \[\Delta^2y_i=y_{i+1}-2y_i+y_{i-1}\,\,\,\,\,\,\,(i=0,1,\ldots,n).\] Найдем сглаженные данные \[x_i^*=x_i+\alpha\,\, \Delta^2x_i\,\,\,\,\,\,\,(i=0,1,\ldots,n),\] \[y_i^*=y_i+\alpha\,\, \Delta^2y_i\,\,\,\,\,\,\,(i=0,1,\ldots,n),\] и вычислим величины \[l_i=\sqrt{(x_i-x_{i-1})^2+(y_i-y_{i-1})^2}\,\,\,\,\,\,\,(i=1,2,\ldots,n),\] \[l^*_i=\sqrt{(x^*_i-x^*_{i-1})^2+(y^*_i-y^*_{i-1})^2}\,\,\,\,\,\,\,(i=1,2,\ldots,n)\] и\[L=\sum_{i=1}^{n}{l_{i}},\,\,\,\,\,\,\,\,\,\,L^*=\sum_{i=1}^{n}{l^*_{i}}.\]
Для того, чтобы определить достаточно ли сглажены данные, вычислим \[qx_i=x_i-x_{i-1}\,\,\,\,\,\,\,\,\,\,\,(i=1,2,\ldots,n)\] и \[px_i=qx_{i+1}-2qx_i+qx_{i-1}\,\,\,\,\,\,\,\,\,(i=1,2,\ldots,n)\] и аналогичные величины для \(qy_i\) и \(py_i\). Тогда дискретным аналогом функции \(\theta(t)\) является набор чисел \[T_i=(qx_i\cdot px_i+qy_i\cdot py_i)/(2l^*_i),\] а дискретным аналогом \(A\) - число \[A=\sum_{i=1}^{n}{l^*_i\,\,T_i}.\]
Если будет выполняться условие \[|L-L^*|\le A\alpha\,\,\left(\frac{L^*}{n}\right)^2,\] то процесс сглаживания можно считать законченным. В противном случае все нужно повторить, взяв в качестве исходной информации массивы \[x^*_0,x^*_1,\ldots,x^*_n,\,\,\,\,\,\,y^*_0,y^*_1,\ldots,y^*_n.\]

Алгоритмы сглаживания повышенной точности

Приведенный в предыдущем параграфе алгоритм сглаживания является весьма эффективным в случаях, когда данных много, например, когда они снимаются с показаний копира или сканера. Однако, при неумелом использовании его, в случае, когда число данных невелико, мы можем перегладить данные в отрезок прямой, когда кривая незамкнутая и стянуть в точку, если кривая замкнута. В этом параграфе мы приведем более точный (но и более сложный) алгоритм сглаживания. В основе его лежит формула \begin{equation}\label{eq:(1.49)} M_i^*=M_i-\beta\Delta^4M_i. \end{equation} Для того, чтобы алгоритм работал, необходимо выполнение следующий требований:
  1. обосновать равенство (\ref{eq:(1.49)}) и выбор \(\beta\);
  2. доопределить точки \(M_{-2}\), \(M_{-1}\), \(M_{n+1}\) и \(M_{n+2}\) (чтобы было возможно найти величины \(\Delta^4M_0\), \(\Delta^4M_1\), \(\Delta^4M_{n-1}\), \(\Delta^4M_n\)) и повторять сглаживание;
  3. найти критерий остановки алгоритма сглаживания.
Для того, чтобы ответить на первый вопрос, приведем сначала другой подход к обоснованию алгоритма, описанного в предыдущем параграфе.
Пусть дан набор из \(n+1\) точки \(M_i(x_i,y_i)\) \((i=0,1,2,\ldots,n)\) на плоскости. Этому набору поставим в соответствие два набора точек \[(0,x_0), (1,x_1),\ldots,(n,x_n)\] и \[(0,y_0), (1,y_1),\ldots,(n,y_n).\] Для каждой тройки чисел \((i-1,x_{i-1})\), \((i,x_i)\) и \((i+1,x_{i+1})\) определим коэффициенты \(a\) и \(b\) прямой \(at+b\) так, чтобы сумма квадратов ошибок \[\Phi(a,b)=(x_{i-1}-(a(i-1)+b))^2+(x_{i}-(ai+b))^2+(x_{i+1}-(a(i+1)+b))^2\] была минимальной.
Пусть \(a^*\) и \(b^*\) решение этой задачи на минимум. Тогда мы полагаем \[x_i^*=a^*i+b^*.\] Необходимое и достаточное условие минимума в нашей задаче таково \[ \cases{\partial \Phi/\partial a=0,\cr\cr \partial \Phi/\partial b=0,} \] или, что то же, \[\cases{a((i-1)^2+i^2+(i+1)^2)+b(i-1+i+i+1)=\cr\cr \,\,\,\,\,\,\,\,=x_{i-1}(i-1)+x_ii+x_{i+1}(i+1),\cr\cr a(i-1+i+i+1)+3b=x_{i-1}+x_i+x_{i+1}.}\] Отсюда следует, что \[a^*=\frac{x_{i+1}-x_{i-1}}{2},\,\,\,\,\,\,b^*=\frac{x_{i+1}+x_i+x_{i-1}}{3}- \frac{x_{i+1}-x_{i-1}}{2}\,i\] и, следовательно, \[x_i^*=\frac{x_{i+1}+x_i+x_{i-1}}{3}.\]
Применив ту же процедуру к данным \((i,y_i)\) \((i=0,1,\ldots,n)\), мы придем к алгоритму сглаживания по "центрам тяжести треугольников".
Перейдем к построению алгоритма повышенной точности. Для каждой пятерки чисел \[(i-2,x_{i-2}),\,\,(i-1,x_{i-1}),\,\,(i,x_{i}),\,\,\,\, (i+1,x_{i+1}),\,\,(i+2,x_{i+2})\] определим коэффициенты \(a\), \(b\) и \(c\) параболы \(at^2+bt+c\) из условия минимума суммы квадратов ошибок \[\sum_{k=i-2}^{i+2}{(x_k-(ak^2+bk+c))^2}\,\,\,\,(i=2,3,\ldots,n-2).\] Если \(a^*\), \(b^*\) и \(c^*\) - решение этой задачи на минимум, то полагаем \begin{equation}\label{eq:(1.50)} x_i^*=a^*i^2+b^*i+c^*. \end{equation} Проведя необходимые в этом случае вычисления (находим и приравниваем к нулю частные производные по \(a\), \(b\), \(c\,\) и решая полученную при этом систему трех линейных уравнений с тремя неизвестными), находим значения \(a^*\), \(b^*\) и \(c^*\). Затем, подставляя эти значения в (\ref{eq:(1.50)}), получаем \begin{equation}\label{eq:(1.51)} x^*_i=x_i-\frac{3}{35}\Delta^4x_i\,\,\,\,(i=2,3,\ldots,n-2). \end{equation} Аналогично получаем \begin{equation}\label{eq:(1.52)} y^*_i=y_i-\frac{3}{35}\Delta^4y_i\,\,\,\,(i=2,3,\ldots,n-2). \end{equation} Итак, алгоритм сглаживания повышенной точности состоит в том, что новые значения \(x_i^*\) и \(y^*_i\) для всех \(i=0,1,2,\ldots,n\) вычисляются по формулам \[ \cases{x_i^*=x_i-\beta\Delta^4x_i,\cr\cr y_i^*=y_i-\beta\Delta^4y_i,}, \] где \(0\lt\beta\lt3/35\).
Для того, чтобы алгоритм работал, необходимо доопределить точки \[M_{-2}(x_{-2},y_{-2}),\,\,\,M_{-1}(x_{-1},y_{-1}),\,\,\,M_{n+1}(x_{n+1}, y_{n+1}),\,\,\,M_{n+2}(x_{n+2},y_{n+2}).\] К задаче доопределения недостающих точек мы подойдем с тех же позиций.
Определим коэффициенты \(a\), \(b\) и \(c\) из условия минимума суммы квадратов ошибок \[\Phi(a,b,c)=\sum_{i=0}^{4}{(x_i-p(i))^2},\] где \begin{equation}%\label{eq:(1.53)} p(t)=at^2+bt+c \end{equation} и положим \begin{equation}\label{eq:(1.54)} x_{-1}=p(-1),\,\,\,x_{-2}=p(-2). \end{equation} Необходимые и достаточные условия экстремума имеют вид \[\cases{\partial\Phi/\partial a=0;\cr\cr \partial\Phi/\partial b=0;\cr\cr \partial\Phi/\partial c=0}\] или\[\sum_{i=0}^{4}{p(i)i^2}=\sum_{i=0}^{4}{x_i i^2},\] \[\sum_{i=0}^{4}{p(i)i}=\sum_{i=0}^{4}{x_i i},\] \[\sum_{i=0}^{4}{p(i)}=\sum_{i=0}^{4}{x_i}.\] Решая эту систему, и, подставляя найденные значения \(a\), \(b\), \(c\) в (\ref{eq:(1.54)}), получим \begin{equation}\label{eq:(1.55)} x_{-1}=\frac{1}{70}(126x_0-56x_2-42x_3+42x_4), \end{equation} \begin{equation}%\label{eq:(1.56)} x_{-2}=\frac{1}{35}(105x_0-14x_1-63x_2-42x_3+49x_4). \end{equation} Аналогично находим \begin{equation}%\label{eq:(1.57)} x_{n+1}=\frac{1}{70}(126x_n-56x_{n-2}- 42x_{n-3}+42x_{n-4}), \end{equation} \begin{equation}\label{eq:(1.58)} x_{n+2}=\frac{1}{35}(105x_n-14x_{n-1}-63x_{n-2}- 42x_{n-3}+49x_{n-4}). \end{equation} Точно также доопределяем и значения \(y_{-1}\), \(y_{-2}\), \(y_{n+1}\), \(y_{n+2}\).
Таким образом мы пришли к следующему алгоритму сглаживания повышенной точности:
  1. доопределяем точки \((x_i,y_i)\) для \(i=-2,-1,n+1,n+2\), исходя из равенств (\ref{eq:(1.55)}) - (\ref{eq:(1.58)}) и аналогичных равенств для \(y_i\);
  2. выбираем \(0\lt\beta\lt3/35\).
  3. После этого вычисляем новые точки \((x_i^*,y_i^*)\) в соответствии с равенствами (\ref{eq:(1.51)}) - (\ref{eq:(1.52)}).
Остался невыясненным вопрос сколько раз можно повторить процесс сглаживания без ущерба для качества информации. Ответить на этот вопрос нам поможет следующее утверждение, доказательство которого аналогично доказательству приведенному в предыдущем параграфе. Иллюстрацией этого утверждения является рисунок:

\(\alpha=-3/35\)
Пусть \(l_n\) - длина ломаной соединяющей точки \((x_i,y_i)\,\,\) \((i=0,1,\ldots,n)\), а \(l_n^*\) - длина ломаной соединяющей точки \((x_i^*,y_i^*)\,\,\) \((i=0,1,\ldots,n)\). Тогда математическое ожидание разности \(|l_n-l_n^*|\) пропорционально величине \(n\,\,\beta\,\,\sigma \,\,l_n\). Если же \(x_i=x(\alpha+ih)\), \(y_i=y(\alpha+ih)\) \((i=0,1,\ldots,n)\), где функции \(x(t)\) и \(y(t)\) имеют пять непрерывных производных на отрезке \([a,b]\), то \[ \Delta l_n=|l_n-l_n^*| \le B \beta h^4+O(h^6), \] где \[B=\int_{a}^{b}{|\Psi(t)|dt}\] и \[\Psi(t)=\frac{1}{2}\frac{x'(t)x^{(5)}(t)+y'(t)y^{(5)}(t)} {\sqrt{(x'(t))^2+(y'(t))^2}}.\] Если исходные данные совсем редки (к примеру, если они снимаются с опорных точек с помощью измерительной головки), то применять рассмотренные выше алгоритмы не целесообразно.
В этих случаях применяют другие методы сглаживания исходных данных, например, методы сплайн - сглаживания или способы сглаживания данных базирующиеся на различных модификациях метода наименьших квадратов.
Возможна и другая крайность, когда при снятии информации погрешность превышает длину звена ломаной между двумя соседними точками на снимаемой кривой. В этом случае может получиться так, что большое значение параметра сглаживания \(\alpha\) или \(\beta\) нельзя брать из- за вносимых при этом искажений, а малое значение параметра не подходит ввиду необходимости в этом случае многократного использования алгоритма сглаживания. В таком случае используются либо алгоритмы, основанные на методах спектрального анализа (методы анализа Фурье), либо алгоритмы, построенные на основе интерполяционных или почти интерполяционных в среднем сплайнов.
В тех случаях, когда на исходную информацию налагаются регулярные знакопеременные частоты (наведенные колебания), как правило применяют методы анализа Фурье и различные демпферы.

Полезная литература. Книги.

  1. Cardinali С. Data Assimilation. Observation influence diagnostic of a data assimilation system / С.Cardinali .— Shinfield Park, Reading, RG2 9AX, England: European Centre for Medium-Range Weather Forecasts, 2013 .— 24 p.
  2. Davey A. Statistical Power Analysis with Missing Data. A Structural Equation Modeling Approach / A.Davey, J.Savla .— NY: Routledge Taylor & Francis Group, 2010 .— 386 p.
  3. Enders C. Applied Missing Data Analysis / C.Enders .— New York, London: Thr Guilford Press, 2010 .— 401 p.
  4. Ganti V. Data Cleaning. A Practical Perspective / V.Ganti, A.Sarma .— Waterloo: Morgan & Claypool, 2013 .— 72 p.
  5. García S. Data Preprocessing in Data Mining / S.García, J.Luengo, F.Herrera .— Switzerland: Springer, 2015 .— 327 p.
  6. Markov Z. Data-mining the Web : uncovering patterns in Web content, structure, and usage / Z.Markov, D.T.Larose .— Hoboken, New Jersey: John Wiley & Sons, Inc., 2007 .— 227 p.
  7. Osborne J. Best Practices in Data Cleaning /Jason W. Osborne .— London: SAGE Publications, Inc., 2013 .— 293 p.
  8. Han J. Data Mining Concepts and Techniques / J.Han, M.Kamber, J.Pei; Third Edition .— 225 Wyman Street, Waltham, MA 02451, USA: Morgan Kaufmann Publishers is an imprint of Elsevier, 2012 .— 740 p.
  9. Sing-Tze Bow . Pattern Recognition and Image Preprocessing / Sing-Tze Bow .— NY: Marcel Dekker Inc., 2002 .— 698 p.
  10. Stef van Buuren. Flexible Imputation of Missing Data / Stef van Buuren .— Leiden: Chapman & Hall/CRC, 2012 .— 326 p.
  11. Барсегян А.А. Анализ данных и процессов: учеб. пособие / А.А.Барсегян, М.С.Куприянов, И.И.Холод, М.Д.Тесс, С.И.Елизаров. — СПб.: БХВ-Петербург, 2009. — 512 с.
  12. Лигун А.А. Асимптотические методы восстановления кривых / А.А.Лигун, А.А.Шумейко .— К.: Изд. Института математики НАН Украины, 1997 .— 358 с.
  13. Литтл Р. Статистический анализ данных с пропусками / Р.Литтл, Д.Рубин .— М: Финансы и кредит, 1991 .— 336 с.
  14. Ллойд Э. Справочник по прикладной статистике / Э.Ллойд, У.Ледерман; Том 1 .— М.: Финансы и статистика, 1989 .— 510 с.
  15. Ллойд Э. Справочник по прикладной статистике / Э.Ллойд, У.Ледерман; Том 2 .— М.: Финансы и статистика, 1990 .— 526 с.

Полезная литература. Статьи.

  1. Cheema J.R. Some General Guidelines for Choosing Missing Data Handling Methods in Educational Research / J.R.Cheema // Journal of Modern Applied Statistical Methods .— 2014 .— №2(13) .— P.53-75.
  2. Cook D. Detection of Influential Observation in Linear Regression / D.Cook // Technometrics .— 1977 .— №1(19) .— C.15-18.
  3. Imputing Missing Data: A Comparison of Methods for Social Work Researchers / [J.A.Saunders, N.Morrow-Howell, E.Spitznagel та ін.] // Social Work Research .— 2006 .— №1(30) .— P.19-31.
  4. Gimpy. Estimation of Missing Values Using Decision Tree Approach /Gimpy, R.Vohra, Minakshi // International Journal of Computer Science and Information Technologies .— 2014 .— №5(4) .— P.5216-5220.
  5. Kazlauskas K. Missing Data Restoration Algorithm / K.Kazlauskas, R.Pupeikis // Informatica .— 2014 .— №2(25) .— P.209–220.
  6. Kotsiantis S.B. Data Preprocessing for Supervised Leaning / S.B.Kotsiantis, D.Kanellopoulos, P.Pintelas // International Journal of Computer and Information Engineering .— 2007 .— №12(1) .— P.4104-4109.
  7. Losarwar V. Data Preprocessing in Web Usage Mining / V.Losarwar, M.Joshi // International Conference on Artificial Intelligence and Embedded Systems (ICAIES'2012) .— Singapore, July 15-16, 2012 .— P.1-5.
  8. Pigott T. A Review of Methods for Missing Data / T.Pigott // Educational Research and Evaluation .— 2001 .— №4(7) .— P.353-383.
  9. Honaker J. What to Do about Missing Values in Time-Series Cross-Section Data / J.Honaker, K.Gary // American Journal of Political Science .— 2010 .— №2(54) .— P.561-581.
  10. Ramoni M. Robust Learning with Missing Data / M.Ramoni, P.Sebastiani // Machine Learning .— 2001 .— №45 .— P.147–170.
  11. Severson K.A. Principal Component Analysis of Process Datasets with Missing Values / K.A.Severson, M.C.Molaro, .Braatz // Processes .— 2017 .— №5(38) .— C.1-18.
  12. Statistical Information Recovery from Multivariate Noise-Multiplied Data, a Computational Approach / Y.Lin, L.Mazur, R.Sarathy, K.Muralidhar // Ttansactions on Data Privacy .— 2018 .— №11 .— P.23-45.
  13. Tamilselvi R. An efficient preprocessing and postprocessing techniques in Data Mining / R.Tamilselvi, B.Sivasakthi, R.Kavitha // International journal of rsesearch in computer application and robotics .— 2015 .— №4(3) .— P.80-85.
  14. Tang N. Big Data Cleaning. In: Chen L., Jia Y., Sellis T., Liu G. (eds) Web Technologies and Applications. APWeb 2014. Lecture Notes in Computer Science, vol 8709. Springer
  15. Злоба Е. Статистические методы восстановления пропущенных данных / Е.Злоба, И.Яцкив // Computer Modelling & New Technologies .— 2002 .— №1(6) .— C.51-61.
  16. Коляда Ю.В. Біннінг у нейромережевих скорингових моделях / Ю.В.Коляда, В.А.Бондар // Нейро-нечіткі технології моделювання в економіці .— 2016 .— №5 .— C.62-80.
  17. Нохрин Д.Ю. Обнаружение выбросов и влиятельных наблюдений в регрессионном анализе (на примере линейной регрессии).
  18. Очистка персональных данных. BaseGroup Labs.
  19. Процесс Data Mining. Начальные этапы. Интуит.

Вопрос-ответ.

Задать вопрос: