Эмпирическая функция распределения

редактировать
Зеленая кривая, которая асимптотически приближается к высотам 0 и 1, не достигая их, является истинной кумулятивной функцией стандартного нормального распределения. Серая Хеш-метки представляют наблюдения в конкретной выборке, взятой из этого распределения, и горизонтальные шаги синей ступенчатой ​​функции (включая крайнюю левую точку в каждом шаг, но не включая крайнюю правую точку) образуют эмпирическую функцию распределения этой выборки. (Щелкните здесь, чтобы загрузить новый график.) Зеленая кривая, которая асимптотически приближается к высотам 0 и 1, не достигая их, является истинной кумулятивной функцией распределения стандартное нормальное распределение. Серые хеш-метки представляют наблюдения в конкретной выборке, взятые из этого распределения, а горизонтальные шаги синей ступенчатой ​​функции (включая крайнюю левую точку на каждом этапе, но не включая крайнюю правую точку) образуют эмпирическое распределение. функция этого образца. ()

В статистике, эмпирическая функция распределения - это функция распределения, связанная с эмпирической мерой выборки . Эта кумулятивная функция распределения представляет собой ступенчатую функцию , которая увеличивается на 1 / n в каждой из n точек данных. Его значение при любом заданном значении измеряемой переменной представляет собой долю наблюдений измеряемой переменной, которые меньше или равны заданному значению.

Эмпирическая функция распределения - это оценка кумулятивной функции распределения, которая сгенерировала точки в выборке. Согласно теореме Гливенко – Кантелли оно сходится с вероятностью 1 к этому базовому распределению. Существует ряд результатов для количественной оценки скорости сходимости эмпирической функции распределения к лежащей в основе кумулятивной функции распределения.

Содержание
  • 1 Определение
  • 2 Среднее
  • 3 Дисперсия
  • 4 Среднеквадратичная ошибка
  • 5 Квантили
  • 6 Эмпирическая медиана
  • 7 Асимптотические свойства
  • 8 Доверительные интервалы
  • 9 Статистическая реализация
  • 10 См. Также
  • 11 Ссылки
  • 12 Дополнительная литература
  • 13 Внешние ссылки
Определение

Пусть (X 1,…, X n) быть независимыми, одинаково распределенными реальными случайными величинами с общей кумулятивной функцией распределения F (t). Тогда эмпирическая функция распределения определяется как

F ^ n (t) = количество элементов в выборке ≤ tn = 1 n ∑ i = 1 n 1 X i ≤ t, {\ displaystyle { \ widehat {F}} _ {n} (t) = {\ frac {{\ t_dv {количество элементов в выборке}} \ leq t} {n}} = {\ frac {1} {n}} \ сумма _ {я = 1} ^ {n} \ mathbf {1} _ {X_ {i} \ leq t},}{\ displaystyle {\ widehat {F}} _ {n} (t) = {\ frac {{\ t_dv {количество элементов в выборке}} \ leq t} {n}} = {\ frac {1} {n}} \ sum _ {я = 1} ^ {n} \ mathbf {1} _ {X_ {i} \ leq t},}

где 1 A {\ displaystyle \ mathbf {1} _ {A}}{\ mathbf {1}} _ { {A}} - индикатор события события A. Для фиксированного t показатель 1 X i ≤ t {\ displaystyle \ mathbf {1} _ {X_ {i} \ leq t}}{\ displaystyle \ mathbf { 1} _ {X_ {i} \ leq t}} является случайной величиной Бернулли с параметром p = F (t); следовательно, n F ^ n (t) {\ displaystyle n {\ widehat {F}} _ {n} (t)}{\ displaystyle n {\ widehat {F}} _ {n} (t)} является биномиальной случайной величиной с означает nF (t) и дисперсию nF (t) (1 - F (t)). Это означает, что F ^ n (t) {\ displaystyle {\ widehat {F}} _ {n} (t)}{\ displaystyle {\ widehat {F}} _ {n} (t)} является несмещенной оценкой для F (t).

Однако в некоторых учебниках определение дается как F ^ n (t) = 1 n + 1 ∑ i = 1 n 1 X i ≤ t {\ displaystyle {\ widehat {F} } _ {n} (t) = {\ frac {1} {n + 1}} \ sum _ {i = 1} ^ {n} \ mathbf {1} _ {X_ {i} \ leq t}}{\ displaystyle {\ widehat {F}} _ {n} (t) = {\ frac {1} {n +1}} \ sum _ {i = 1} ^ {n} \ mathbf {1} _ {X_ {i} \ leq t}}

Среднее

Среднее эмпирического распределения - это несмещенная оценка среднего распределения генеральной совокупности.

E N (X) = 1 N (∑ i = 1 nxi) {\ displaystyle E_ {n} (X) = {\ frac {1} {n}} \ left (\ sum _ {i = 1} ^ {n} {x_ {i}} \ right)}{\ displaystyle E_ {n} (X) = {\ frac {1} {n}} \ left (\ sum _ {i = 1} ^ {n} {x_ {i}} \ right)}

, который чаще обозначается как x ¯ {\ displaystyle {\ bar {x}}}{\ bar {x}}

Дисперсия

дисперсия времен эмпирического распределения nn - 1 {\ displaystyle {\ tfrac {n} {n-1}}}{\ displaystyle {\ tfrac {n} {n-1}}} - несмещенная оценка дисперсии распределения совокупности.

Var ⁡ (X) = E ⁡ [(X - E ⁡ [X]) 2] = E ⁡ [(X - x ¯) 2] = 1 n (∑ i = 1 n (xi - x ¯) 2) {\ displaystyle {\ begin {align} \ operatorname {Var} (X) = \ operatorname {E} \ left [(X- \ operatorname {E} [X]) ^ {2} \ right] \\ [4pt] = \ operatorname {E} \ left [(X - {\ bar {x}}) ^ {2} \ right] \\ [4pt] = {\ frac {1} {n}} \ left (\ sum _ {i = 1} ^ {n} {(x_ {i} - {\ bar {x}}) ^ {2}} \ right) \ end {align}}}{\ displaystyle {\ begin {align} \ operatorname {Var} (X) = \ operatorname {E} \ left [(X- \ operatorname {E} [X]) ^ {2} \ right] \\ [4pt] = \ operatorname {E} \ left [(X - {\ bar {x}}) ^ {2} \ right] \\ [4pt] = {\ frac { 1} {n}} \ left (\ sum _ {i = 1} ^ {n} {(x_ {i} - {\ bar {x}}) ^ {2}} \ right) \ end {выровнено}} }

Среднеквадратичная ошибка

среднеквадратичная ошибка для эмпирического распределения выглядит следующим образом.

MSE = 1 N ∑ я знак равно 1 N (Y я - Y я ^) 2 = Var θ ^ ⁡ (θ ^) + смещение ⁡ (θ ^, θ) 2 {\ displaystyle {\ begin {align} \ имя оператора {MSE} = {\ frac {1} {n}} \ sum _ {i = 1} ^ {n} (Y_ {i} - {\ hat {Y_ {i}}}) ^ {2} \ \ [4pt] = \ operatorname {Var} _ {\ hat {\ theta}} ({\ hat {\ theta}}) + \ operatorname {Bias} ({\ hat {\ theta}}, \ theta) ^ {2} \ end {align}}}{\ displaystyle {\ begin {выровнено} \ operatorname {MSE} = {\ frac {1} {n}} \ sum _ {i = 1} ^ {n} (Y_ {i} - {\ hat {Y_ {i}}}) ^ {2} \\ [4pt] = \ operatorname {Var} _ {\ hat {\ theta}} ({\ hat {\ theta}}) + \ operatorname {Bias} ({\ hat {\ theta}}, \ theta) ^ {2} \ end {align}}}

Где θ ^ {\ displaystyle {\ hat {\ theta}}}\ hat {\ theta} - оценка, а θ {\ displaystyle \ theta}\ theta неизвестный параметр

Квантили

Для любого действительного числа a {\ displaystyle a}a обозначение ⌈ a ⌉ { \ displaystyle \ lceil {a} \ rceil}{\ displaystyle \ lceil {a} \ rceil} (читается как «потолок a») обозначает наименьшее целое число, большее или равное a {\ displaystyle a}a . Для любого действительного числа a запись ⌊ a ⌋ {\ displaystyle \ lfloor {a} \ rfloor}{\ displaystyle \ lfloor {a} \ rfloor} (читается как «пол из a») обозначает наибольшее целое число, меньшее или равное <190.>a {\ displaystyle a}a .

Если nq {\ displaystyle nq}{\ displaystyle nq} не является целым числом, то q {\ displaystyle q}q -й квантиль уникален и равен x (⌈ nq ⌉) {\ displaystyle x _ {(\ lceil {nq} \ rceil)}}{\ displaystyle х _ {(\ lceil {nq} \ rceil)}}

Если nq {\ displaystyle nq}{\ displaystyle nq} является целым числом, тогда q {\ displaystyle q}q -й квантиль не уникален и представляет собой любое действительное число x {\ displaystyle x}x такое, что

x (nq) < x < x ( n q + 1) {\displaystyle x_{({nq})}{\ displaystyle x _ {({nq})} <x <x _ {({nq + 1})}}

Эмпирическая медиана

Если n {\ displaystyle n}n нечетно, то эмпирическая медиана - это число

x ~ = Икс (⌈ N / 2 ⌉) {\ displaystyle {\ tilde {x}} = x _ {(\ lceil {n / 2} \ rceil)}}{\ displaystyle {\ tilde {x}} = x _ {(\ lceil {n / 2} \ rceil)}}

Если n {\ displaystyle n}n четно, тогда эмпирическая медиана - это число

x ~ = xn / 2 + xn / 2 + 1 2 {\ displaystyle {\ tilde {x}} = {\ frac {x_ {n / 2} + x_ {n / 2 + 1}} {2}}}{\ displaystyle {\ tilde {x}} = {\ frac {x_ {n / 2} + x_ {n / 2 + 1}} {2}}}

Как ymptotic properties

Поскольку отношение (n + 1) / n приближается к 1, когда n стремится к бесконечности, асимптотические свойства двух определений, приведенных выше, одинаковы.

Согласно строгому закону больших чисел, оценка F ^ n (t) {\ displaystyle \ scriptstyle {\ widehat {F}} _ {n} (t) }{\ displaystyle \ стиль сценария {\ widehat {F}} _ {n} (t)} сходится к F (t) при n → ∞ почти наверняка для любого значения t:

F ^ n (t) → при F (t); {\ displaystyle {\ widehat {F}} _ {n} (t) \ {\ xrightarrow {\ text {as}}} \ F (t);}{\ displaystyle {\ widehat {F}} _ {n} (t) \ {\ xrightarrow {\ text {as}}} \ F (t);}

таким образом, оценка F ^ n (t) {\ displaystyle \ scriptstyle {\ widehat {F}} _ {n} (t)}{\ displaystyle \ стиль сценария {\ widehat {F}} _ {n} (t)} является непротиворечивым. Это выражение утверждает поточечную сходимость эмпирической функции распределения к истинной кумулятивной функции распределения. Существует более сильный результат, называемый теоремой Гливенко – Кантелли, который утверждает, что на самом деле сходимость происходит равномерно по t:

‖ F ^ n - F ‖ ∞ ≡ sup t ∈ R | F ^ n (t) - F (t) | → a.s. 0. {\ displaystyle \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty} \ Equiv \ sup _ {t \ in \ mathbb {R}} {\ big |} {\ widehat {F}} _ {n} (t) -F (t) {\ big |} \ {\ xrightarrow {\ text {as}}} \ 0.}{\ displaystyle \ | {\ widehat {F}} _ {n} - F \ | _ {\ infty} \ Equiv \ sup _ {t \ in \ mathbb {R}} {\ big |} {\ widehat {F}} _ {n} (t) -F (t) {\ big |} \ {\ xrightarrow {\ text {as}}} \ 0.}

Верхняя норма в этом выражении называется Статистика Колмогорова – Смирнова для проверки согласия между эмпирическим распределением F ^ n (t) {\ displaystyle \ scriptstyle {\ widehat {F}} _ {n} (t) }{\ displaystyle \ стиль сценария {\ widehat {F}} _ {n} (t)} и предполагаемая истинная кумулятивная функция распределения F. Другие нормальные функции могут быть разумно использованы здесь вместо sup-norm. Например, L-норма приводит к статистике Крамера – фон Мизеса.

. Асимптотическое распределение можно дополнительно охарактеризовать несколькими различными способами. Во-первых, центральная предельная теорема утверждает, что поточечно, F ^ n (t) {\ displaystyle \ scriptstyle {\ widehat {F}} _ {n} (t)}{\ displaystyle \ стиль сценария {\ widehat {F}} _ {n} (t)} имеет асимптотически нормальное распределение со стандартной n {\ displaystyle {\ sqrt {n}}}{\ sqrt {n}} скоростью сходимости:

n (F ^ n (t) - F (t)) → d N (0, F (t) (1 - F (t))). {\ displaystyle {\ sqrt {n}} {\ big (} {\ widehat {F}} _ {n} (t) -F (t) {\ big)} \ \ {\ xrightarrow {d}} \ \ {\ mathcal {N}} {\ Big (} 0, F (t) {\ big (} 1-F (t) {\ big)} {\ Big)}.}{\ displaystyle {\ sqrt {n}} {\ big (} {\ widehat {F}} _ {n} (t) -F (t) {\ big)} \ \ {\ xrightarrow { d}} \ \ {\ mathcal {N}} {\ Big (} 0, F (t) {\ big (} 1-F (t) {\ big)} {\ Big)}.}

Этот результат расширен Теорема Донскера, которая утверждает, что эмпирический процесс n (F ^ n - F) {\ displaystyle \ scriptstyle {\ sqrt {n}} ({\ widehat {F }} _ {n} -F)}{ \ displaystyle \ scriptstyle {\ sqrt {n}} ({\ widehat {F}} _ {n} -F)} , рассматриваемая как функция, индексированная t ∈ R {\ displaystyle \ scriptstyle t \ in \ mathbb {R}}\ scriptstyle t \ in {\ mathbb {R}} , сходится по распределению в пространстве Скорохода D [- ∞, + ∞] {\ displaystyle \ scriptstyle D [- \ infty, + \ infty]}\ scriptstyle D [- \ infty, + \ infty] до нулевого среднего гауссовский процесс GF = B ∘ F {\ displaystyle \ scriptstyle G_ {F} = B \ circ F}\ scriptstyle G_ {F} = B \ circ F , где B - стандартный броуновский мост. Ковариационная структура этого гауссовского процесса:

E ⁡ [G F (t 1) G F (t 2)] = F (t 1 ∧ t 2) - F (t 1) F (t 2). {\ displaystyle \ operatorname {E} [\, G_ {F} (t_ {1}) G_ {F} (t_ {2}) \,] = F (t_ {1} \ wedge t_ {2}) - F (t_ {1}) F (t_ {2}).}{\ displaystyle \ operatorname {E} [\, G_ {F} (t_ {1}) G_ {F} (t_ {2}) \,] = F (t_ {1} \ клин t_ {2}) - F (t_ {1}) F (t_ {2}).}

Равномерную скорость сходимости в теореме Донскера можно количественно оценить с помощью результата, известного как венгерское вложение :

lim sup n → ∞ n ln 2 ⁡ N ‖ n (F ^ n - F) - GF, n ‖ ∞ < ∞, a.s. {\displaystyle \limsup _{n\to \infty }{\frac {\sqrt {n}}{\ln ^{2}n}}{\big \|}{\sqrt {n}}({\widehat {F}}_{n}-F)-G_{F,n}{\big \|}_{\infty }<\infty,\quad {\text{a.s.}}}{\ displaystyle \ limsup _ {n \ to \ infty} {\ frac {\ sqrt {n}} {\ ln ^ {2} n}} {\ big \ |} {\ sqrt {n}} ({\ widehat {F}} _ {n} -F) -G_ {F, n} {\ big \ |} _ {\ infty} <\ infty, \ quad {\ text {as}}}

В качестве альтернативы, скорость сходимости n (F ^ n - F) {\ displaystyle \ scriptstyle {\ sqrt {n} } ({\ widehat {F}} _ {n} -F)}{ \ displaystyle \ scriptstyle {\ sqrt {n}} ({\ widehat {F}} _ {n} -F)} также можно количественно оценить в терминах асимптотического поведения sup-нормы этого выражения. В этом месте есть ряд результатов, например, неравенство Дворецкого – Кифера – Вулфовица обеспечивает ограничение вероятности хвоста n ‖ F ^ n - F ‖ ∞ {\ displaystyle \ scriptstyle {\ sqrt {n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty}}{\ displaystyle \ scriptstyle {\ sqrt {n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty}} :

Pr (n ‖ F ^ n - F ‖ ∞>z) ≤ 2 e - 2 z 2. {\ displaystyle \ Pr \! {\ Big (} {\ sqrt {n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty}>z {\ Big)} \ leq 2e ^ {- 2z ^ {2}}.}{\displaystyle \Pr \!{\Big (}{\sqrt {n}}\|{\widehat {F}}_{n}-F\|_{\infty }>z {\ Big)} \ leq 2e ^ {- 2z ^ {2}}.}

На самом деле Колмогоров показал, что если кумулятивная функция распределения F непрерывна, то выражение n ‖ F ^ n - F ‖ ∞ {\ displaystyle \ scriptstyle {\ sqrt {n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty}}{\ displaystyle \ scriptstyle {\ sqrt {n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty}} сходится по распределению к ‖ B ‖ ∞ {\ displaystyle \ scriptstyle \ | B \ | _ {\ infty}}\ scriptstyle \ | B \ | _ {\ infty} , которое имеет распределение Колмогорова, что не зависит от формы F.

Другой результат, который следует из закона повторного логарифма, заключается в том, что

lim sup n → ∞ n ‖ F ^ n - F ‖ ∞ 2 пер ⁡ пер ⁡ N ≤ 1 2, так как {\ displaystyle \ limsup _ {n \ to \ infty} {\ frac {{\ sqrt {n}} \ | {\ widehat {F}} _ {n } -F \ | _ {\ infty}} {\ sqrt {2 \ ln \ ln n}}} \ leq {\ frac {1} {2}}, \ quad {\ text {a.s.}}}{\ displaystyle \ limsup _ {n \ to \ infty} {\ frac { {\ sqrt {n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty}} {\ sqrt {2 \ ln \ ln n}}} \ leq {\ frac {1} {2}}, \ quad {\ text {as}}}

и

lim inf n → ∞ 2 n ln ⁡ ln ⁡ n ‖ F ^ n - F ‖ ∞ = π 2, a.s. {\ displaystyle \ liminf _ {n \ to \ infty} {\ sqrt {2n \ ln \ ln n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty} = {\ frac {\ pi} {2}}, \ quad {\ text {as}}}{\ displaystyle \ liminf _ {n \ to \ infty} {\ sqrt {2n \ ln \ ln n}} \ | {\ widehat {F}} _ {n} -F \ | _ {\ infty} = {\ frac {\ pi} {2}}, \ quad {\ text {as}}}
Доверительные интервалы
Эмпирические CDF, CDF и графики доверительных интервалов для различных размеров выборки нормального распределения

Согласно Неравенство Дворецкого – Кифера – Вулфовица интервал, содержащий истинную CDF, F (x) {\ displaystyle F (x)}F (x) , с вероятностью 1 - α {\ displaystyle 1- \ alpha}1- \ alpha определяется как

графики эмпирических CDF, CDF и доверительного интервала для различных размеров выборки распределения Коши

F n (x) - ε ≤ F (x) ≤ F n (x) + ε, где ε = ln ⁡ 2 α 2 n. {\ displaystyle F_ {n} (x) - \ varepsilon \ leq F (x) \ leq F_ {n} (x) + \ varepsilon \; {\ text {where}} \ varepsilon = {\ sqrt {\ frac { \ ln {\ frac {2} {\ alpha}}} {2n}}}.}{\ displaystyle F_ {n} (x) - \ varepsilon \ leq F (x) \ leq F_ {n} (x) + \ varepsilon \; {\ text { где}} \ varepsilon = {\ sqrt {\ frac {\ ln {\ frac {2} {\ alpha}}} {2n}}}.}

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

Эмпирические графики CDF, CDF и доверительного интервала для различных размеров выборки распределения треугольников
"" "Эмпирические функции CDF" "" импортировать numpy как np из scipy.interpolate import interp1d def _conf_set (F, alpha = 0.05): nobs = len (F) epsilon = np.sqrt (np.log (2.0 / alpha) / (2 * nobs)) lower = np.clip (F - epsilon, 0, 1) upper = np.clip (F + epsilon, 0, 1) вернуть нижний, верхний класс StepFunction (объект): def __init __ (self, x, y, ival = 0.0, sorted = False, side = "left"): if side.lower () not in ["right "," left "]: msg =" side может принимать значения "right" или "left" "поднять ValueError (msg) self.side = side _x = np.asarray (x) _y = np.asarray (y) if _x.shape! = _y.shape: msg = "x и y не имеют одинаковой формы" вызовите ValueError (msg), если len (_x.shape)! = 1: msg = "x и y должны быть одномерными" поднять ValueError (msg) self.x = np.r _ [- np.inf, _x] self.y = np.r_ [ival, _y], если не отсортировано: asort = np.argsort (self.x) self.x = np.take (self.x, asort, 0) self.y = np.take (self.y, asort, 0) self.n = self.xs hape [0] def __call __ (self, time): tind = np.searchsorted (self.x, time, self.side) - 1 возврат self.y [tind] class ECDF (StepFunction): def __init __ (self, x, side = "right"): x = np.array (x, copy = True) x.sort () nobs = len (x) y = np.linspace (1.0 / nobs, 1, nobs) super (ECDF, self).__ init __ (x, y, side = side, sorted = True) def monotone_fn_inverter (fn, x, vectorized = True, ** keywords): x = np.asarray (x) если векторизовано: y = fn (x, ** ключевые слова) else: y = for _x in x: y.append (fn (_x, ** keywords)) y = np.array (y) a = np.argsort (y) return interp1d (y [a], x [ a]) if __name__ == "__main__": # TODO: Убедитесь, что все правильно выровнено, и выполните # функцию построения из urllib.request import urlopen import matplotlib.pyplot as plt nerve_data = urlopen ("http: //www.statsci.org / data / general / nerve.txt ") nerve_data = np.loadtxt (nerve_data) x = nerve_data / 50.0 # Было за 1/50 секунды cdf = ECDF (x) x.sort () F = cdf (x) plt.step (x, F, где = "post") lower, upper = _conf_set (F) plt.step (x, lower, "r", где = "post") pl t.step (x, upper, "r", где = "post") plt.xlim (0, 1.5) plt.ylim (0, 1.05) plt.vlines (x, 0, 0.05) plt.show ()
Статистическая реализация

Неполный список программных реализаций функции эмпирического распределения включает:

  • В программном обеспечении R мы вычисляем эмпирическую кумулятивную функцию распределения с несколькими методами построения графиков., печать и вычисления с таким объектом «ecdf».
  • В Mathworks мы можем использовать график эмпирической кумулятивной функции распределения (cdf)
  • jmp из SAS, график CDF создает график эмпирической кумулятивной функции распределения.
  • Minitab, создает эмпирическую CDF
  • Mathwave, мы можем подогнать распределение вероятностей к нашим данным
  • Dataplot, мы можем построить эмпирический График CDF
  • Scipy, используя scipy.stats, мы можем построить график распределения
  • Statsmodels, мы можем использовать statsmodels.distributions.empirical_distribution.ECDF
  • Matplotlib, мы можем использовать гистограммы для построить кумулятивное распределение
  • Excel, мы можем построить эмпирический график CDF
См. Также
Ссылки
Дополнительная литература
  • Shorack, GR; Веллнер, Дж. (1986). Эмпирические процессы с приложениями к статистике. Нью-Йорк: Вили. ISBN 0-471-86725-X. CS1 maint: ref = harv (ссылка )
Внешние ссылки
  • СМИ, связанные с Эмпирические функции распределения в Wikimedia Commons
Последняя правка сделана 2021-05-19 09:42:29
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте