- •Тема 2 Измерение, сбор, регистрация данных. Подготовка к анализу.
- •Измерительные шкалы Шкалы наименований (номинальные или классификационные)
- •Порядковые (ранговые) шкалы
- •Модифицированные порядковые (ранговые) шкалы
- •Шкалы интервалов
- •Сбор данных
- •Связь через последовательный порт
- •Подготовка данных к анализу. Первичная обработка данных.
- •Выявление и исключение резко выделяющихся наблюдений
- •Сглаживание кривых
- •Исследование данных на однородность
- •Диагностика мультиколлинеарности
- •Масштабирование переменных (данных)
- •Интерполяция и аппроксимация данных
Масштабирование переменных (данных)
Основная цель масштабирования добиться того, что бы в представляющей интерес области переменные имели одинаковые порядки модулей. Для масштабирования применяют линейные преобразования переменных, при этом переходят от переменных отражающих суть явления к переменным удобным для решения определенного класса задач. Используемая замена имеет следующий вид: X = D*Y здесь {Xi} – исходная переменная; {Yi} – преобразованная переменная; D – диагональная матрица, элементами которой служат характерные значения модулей соответствующих переменных.
Масштабирование диагональным преобразованием может приводить к потере точности. Ненадежно оно также в том случае, если при решении задач (например поиска экстремумов), модули переменных существенно меняются. В этом случае элементы матрицы dj пригодные для одной точки не годятся для другой. Пусть известен диапазон значений переменных aj xj bj , тогда новую переменную yj можно ввести по формуле:
Это соответствует линейному преобразованию: DY + c = X
Где D - диагональная матрица, у которой элементы:
Если имеются лишь грубые оценки для aj и bj, тем более отличающиеся на несколько порядков, то этот метод масштабирования применять нельзя. Кроме того, сама процедура масштабирования сильно влияет на вычисление вторых производных, снижая скорость сходимости оптимизирующих процедур.
Интерполяция и аппроксимация данных
Интерполяция – это нахождение промежуточных значений для зависимости представленной в отдельных точках. Интерполяционная формула сопоставляет с функцией y(x) заданной в точках xk , k = 0,… m функцию известного класса, зависящую от параметров: Y (x, a0, a1,…, an). Эти параметры выбираются таким образом, чтобы обе функции совпадали в узлах интерполяции: Y(xk) = y(xk) = yk. Самый простой в использовании полином, имеющий степень 1 создаёт многоугольный путь из отрезков прямых которые проходят через эти точки. Интерполяционная функция имеет вид:
, xk x xk+1
При использовании полиномов более высокой степени число узловых точек определяет степень полинома. Если число узловых точек например k, то на них можно построить полином k-1. Степень полинома n равна n = k-1.
Сформируем матрицу: Xj,i = (xj)i , при этом Xj,0 = 1
Если i=0,1,…,n и j=0,1,…,n то это матрица вида nn и коэффициенты полинома формально представляются в виде вектора: a = X –1y. Формула для самого полинома будет иметь вид: P(x) = amxm , m = n, …, 0. Погрешность полиномиальной аппроксимации резко возрастает с ростом степени полинома, так что степень используемых полиномов обычно не превосходит 5.
Наиболее известна интерполяция полиномом Лагранжа:
Ещё одним методом является объединение фрагментов графиков, полиномов низкой степени и интерполирование между последовательными узлами.
Две части графика соединены в узле (xk+1, yk+1) и совокупность функций Sk(x) формирует кусочно-полиномиальную кривую, которая и определяет S(x). Математически можно построить такие кубические функции Sk(x), на каждом интервале (xk, xk+1), чтобы полученная в результате кривая y(x) = S(x) не имела бы острых углов, а её первая и вторые производные были бы непрерывны на всём интервале от [x0,xN].
Непрерывность первой производной S'(x) означает что S(x) не имеет острых углов. Непрерывность второй производной S'' (x) означает что радиус кривизны определён в каждой точке. Предположим что {(xk, yk)}Nk=0 − это N+1 точка, где a x0 x1 <x2< … < xN = b. Функция S(x) называется кубическим сплайном, если существует N кубических полиномов следующего вида:
S(x) = Sk(x) = Sk,0 + Sk,1(x – x1) + Sk,2(x – x2)2 + Sk,3(x – x3)3
x[xk, xk+1 …], k = 0, …, N-1,
таких, что выполняются следующие 4 условия:
S(xk) = yk , k = 0, … N
Sk(xk+1) = Sk+1(xk+1), для всех k = 0, …N-2 − непрерывность
S'k (xk+1) = S'k+1(xk+1), k = 0, …N-2 − гладкость
S''k(xk+1) = S''k+1(xk+1)
Каждый полином имеет 4 коэффициента, так что всего их 4N. Заданные точки (узлы) интерполяции обеспечивают N+1 условие и каждое из свойств 2, 3 и 4 добавляют ещё N-1 условие, поэтому всего получается N+1+3(N-1)=4N-2 уравнений, которые можно использовать для нахождения коэффициентов сплайна. Нахватает двух уравнений или образуется две степени свободы, это ограничения в крайних точках. Поэтому кубический сплайн требует дополнительной стратегии для двух крайних точек. В связи с этим можно построить следующие типы сплайнов:
смыкающийся сплайн: S'(a) = d0
S' (b) = dN
естественный сплайн. Для него определяются нулевые вторые производные: S''(a) = S''(b) = 0 (сплайн со свободными концами)
экстраполяционный сплайн, для него вторая производная на левом конце ищется по узлам x1 , x2. Производная на правом ищется по xN-1, xN
Сплайн, заканчивающийся параболой, т.е. кубическая кривая на концах вырождается в параболу.
В MathCad имеется возможность линейной и кубической интерполяции сплайными.
Linear Interpolation f(x):=linterp(X,Y,x);
Cubic Spline Interpolation
S:=cspline(X,Y) − вектор коэффициентов
f(x):=interp(S,X,Y,x)