Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

СОИ_Лаба_2

.docx
Скачиваний:
5
Добавлен:
18.12.2019
Размер:
687.35 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

КАФЕДРА № 41

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

доцент

Е.А. Бакин

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №2

Алгоритмы оценивания смещения симметричной случайной величины

по курсу: Статистическая обработка информации

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

4616

А.В.Павлов

подпись, дата

инициалы, фамилия

Санкт-Петербург 2018

Цель работы

Получение навыков реализации и анализа алгоритмов оценивания параметра смещения симметричного распределения.

Вариант 7

7

Нормальный

Коши

Логистический

Рисунок 1- График плотности вероятностей по нормальному закону

Рисунок 2 – График интегральной функции распределения случайной величины по нормальному закону

Рисунок 3- График плотности вероятностей по логистическому закону

Рисунок 4 – График интегральной функции распределения случайной величины по по логистическому закону

Рисунок 5- График плотности вероятностей по Коши

Рисунок 6 – График интегральной функции распределения случайной величины по Коши

Листинг

Импорт библиотек для построение графика и вычислений

Создание фигуры

Создание графика ax1(График 1)

Настройка параметров графика1 (Начальные коорд и лимиты)

Создание графика logx(График 2)

Настройка параметров графика2 (Начальные коорд и лимиты)

Создание графика logsr(График 3)

Настройка параметров графика3 (Начальные коорд и лимиты)

Ввод выбора варианта

Функция normal

Если вариант=1 то расчет моментов по нормальному закону распределение

Если вариант=2 то расчет моментов по логистическому закону распределение

Если вариант=3 то расчет моментов по Коши закону распределение

Подсчет дисперсии D=0.5*(v2-v1)**2

Цикл от 1 до 16

Создание пустых массивов

Цикл от 1 до 100

Если вариант=1 то выборка по нормальному закону распределение с размером от 2**1 до 2**16

Если вариант=2 то выборка по логистическому закону распределение с размером от 2**1 до 2**16

Если вариант=3 то выборка по Коши закону распределение с размером от 2**1 до 2**16

Выборочное среднее= среднее всех чисел в выборке

Квадрат ошибки kv=(aver-v1)**2

Добавление к пустому массиву

Усечение среднее = среднее всех чисел в выборке с отрезанным по краям 10% данными

Квадрат ошибки kv=(usr-v1)**2

Добавление к пустому массиву

Выборчная медиана= среднее между двумя числами по середине

Квадрат ошибки kv=(med-v1)**2

Добавление к пустому массиву

Середина размах= среднее между большим и маленьким числом

Квадрат ошибки kv=(mah-v1)**2

Добавление к пустому массиву

Усреднение всех данных

Отрисовка всех графиков

Запуск функции normal

Листинг программы

import numpy as np

import scipy.stats as st

import matplotlib.pyplot as plt

import math

import statistics as stat

from scipy.stats import norm

from itertools import chain

choose = int(input('Ввод= '))

#рисование фигур

fig = plt.figure()

ax1 = fig.add_axes([0,0,1,1])

ax1.grid(True, color = 'g', lw = 0.2)

ax1.set_xlim(2**1,2**15)

sr_aver=[]

sr_usr=[]

sr_med=[]

sr_mah=[]

sr_dop=[]

def normal():

#Дисперсия

#v1=norm.moment(1, loc=0, scale=1)

#v2=norm.moment(2, loc=0, scale=1)

if choose==1:

v1=st.norm.moment(1, loc=0,scale=1)

v2=st.norm.moment(2, loc=0,scale=1)

elif choose==2:

v1=st.logistic.moment(1, loc=5,scale=1)

v2=st.logistic.moment(2, loc=5,scale=1)

elif choose==3:

v1=0

v2=st.cauchy.moment(2, loc=0)

D = [((v2-v1**2)/q) for q in range(1,2**16 )]

#ax1.loglog(D, lw=2, basex=2, basey=2, color='black', linestyle='dashed')

for i in range (1,16):

kv_med=[]

kv_mah=[]

kv_usr=[]

kv_dop=[]

kv_aver=[]

srr_med=[]

srr_usr=[]

srr_mah=[]

srr_aver=[]

srr_dop=[]

kv_rez=[]

for x in range(100):

if choose==1:

X = np.array(st.norm.rvs(loc=0,scale=1, size=2**i))

elif choose==2:

X = np.array(st.logistic.rvs(loc=5,scale=1, size=2**i))

elif choose==3:

X = np.array(st.cauchy.rvs(0, size=2**i))

#Выборочное среднее

v_aver=np.arange(0,2**i,1)

N = np.arange(1, 2**i+1)

aver=np.mean(X)

kv_aver.append((aver - v1)**2)

srr_aver.append(kv_aver)

#ax1.loglog(v_aver,kv_aver,basex=2,basey=2)

#Усеченное среднее

XX=np.sort(X)

usr=st.trim_mean(XX,0.1)

#usr=XX-us

kv_usr.append(((usr - v1)**2))

srr_usr.append(kv_usr)

#Выборочная медиана

if len(XX)%2==0:

z1=round(len(XX)/2 -1)

z2=round((len(XX)/2))

med= ((XX[z1] + XX[z2])/2)

else:

z1=round(len(XX)/2)

med=XX[z1]

kv_med.append((med - v1)**2)

srr_med.append(kv_med)

#Середина размаха

mah=(XX[0]+XX[-1])/2

kv_mah.append((mah - v1)**2)

srr_mah.append(kv_mah)

#XY.append(len(N))

#Доп оценка

dop=(mah+med)/2

kv_dop.append((dop-v1)**2)

srr_dop.append(kv_dop)

#Усреднение

sr_med.append(np.mean([sum(i)/len(srr_med) for i in zip(*srr_med)]))

sr_usr.append(np.mean([sum(i)/len(srr_usr) for i in zip(*srr_usr)]))

sr_aver.append(np.mean([sum(i)/len(srr_aver) for i in zip(*srr_aver)]))

sr_mah.append(np.mean([sum(i)/len(srr_mah) for i in zip(*srr_mah)]))

sr_dop.append(np.mean([sum(i)/len(srr_dop) for i in zip(*srr_dop)]))

t_sr_usr=[2**v for v in range(1,16)]

ax1.loglog(t_sr_usr,sr_med, basex=2,basey=2,lw=2,color='green',label='выб медиана',alpha=0.8)

ax1.loglog(t_sr_usr, sr_usr, basex=2,basey=2,lw=2,color='black',label='усеч среднее',alpha=0.8)

ax1.loglog(t_sr_usr, sr_aver, basex=2,basey=2,lw=2,color='red',label='выб среднее',alpha=0.8)

ax1.loglog(t_sr_usr, sr_mah, basex=2,basey=2,lw=2,color='blue',label='выб размаъ',alpha=0.8)

ax1.loglog(t_sr_usr, sr_dop, basex=2,basey=2,lw=2,color='purple',label='Новая оценка',alpha=0.8)

ax1.legend(loc=1)

normal()

Результат работы

Рисунок 7 – Нормальное распределение

Рисунок 8 – Логистическое распределение

Рисунок 9 – Распределение коши

Доп. Вопрос

Предложите свою оценку смещения и проведите ее исследование методом моделирования.

Я буду использовать новую оценку “Усеченный размах”, суть которого похож на усеченное среднее, т.е мы берем выборку и выкидываем некоторый процент данных по обоим краям, таким образом мы можем избавиться от выбросов и сделать нашу оценку более эффективной.

Формула для оценки:

Усразмах=

Примеры

Можно увидеть, что при k=0.005 определенном объеме выборки размах и усеченный размах совпадает, но дальше усеченный размах будет уменьшаться, т.к будут отрезаться аномальные выбросы в выборке и оценка будет более эффективной.

Рисунок 10 – Размах и усеченный размах

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

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

Таким образом можно сказать, что размах будет состоятельным при ограниченном интервале, иначе размах будет снижаться до определенного объема выборка, а дальше будет колебаться возле одних значениях и/или минимально убывать. Для решения этой проблемы можно использовать мою новую оценку “усеченный размах”, который будет отбрасывать аномальные выбросы

Вывод:

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

Соседние файлы в предмете Статистика