torch.cov
-
torch.cov(input, *, correction=1, fweights=None, aweights=None) → Tensor -
Оценивает ковариационную матрицу переменных, заданных матрицей
input, где строки — это переменные, а столбцы — наблюдения.Ковариационная матрица — это квадратная матрица, дающая ковариацию каждой пары переменных. Диагональ содержит дисперсию каждой переменной (ковариация переменной с самой собой). По определению, если
inputпредставляет одну переменную (скаляр или одномерный вектор), то возвращается её дисперсия.Выборочная ковариация переменных и задаётся следующим образом:
где и — простые средние значения и соответственно, а —
correction.Если
fweightsи/илиaweightsуказаны, вычисляется взвешенная ковариация, которая определяется следующим образом:где обозначает
fweightsилиaweights(fиaдля краткости) в зависимости от того, что предоставлено, или , если оба значения предоставлены, и — взвешенное среднее значение переменной. Если не указаны,fи/илиaмогут быть представлены как вектор соответствующего размера.- Parameters
-
input (Tensor) – Матрица 2D, содержащая несколько переменных и наблюдений, или скаляр или одномерный вектор, представляющий одну переменную.
- Keyword Arguments
-
-
correction (int, optional) – разность между размером выборки и степенями свободы выборки. По умолчанию используется поправка Бесселя,
correction = 1которая возвращает несмещённую оценку, даже если обаfweightsиaweightsуказаны.correction = 0вернёт простое среднее. По умолчанию1. -
fweights (tensor, optional) – Скаляр или одномерный тензор частот наблюдения, представляющий количество раз, которое каждое наблюдение должно повторяться. Его numel должен равняться количеству столбцов
input. Должен иметь целочисленный тип данных. Игнорируется, еслиNone. По умолчаниюNone. -
aweights (tensor, optional) – Скаляр или одномерный массив весов наблюдения. Эти относительные веса обычно велики для наблюдений, считающихся «важными», и меньше для наблюдений, считающихся менее «важными». Его numel должен равняться количеству столбцов
input. Должен иметь тип с плавающей точкой. Игнорируется, еслиNone. По умолчаниюNone.
-
correction (int, optional) – разность между размером выборки и степенями свободы выборки. По умолчанию используется поправка Бесселя,
- Returns
-
(Tensor) Ковариационная матрица переменных.
См. также
torch.corrcoef()нормированная ковариационная матрица.- Пример::
-
>>> x = torch.tensor([[0, 2], [1, 1], [2, 0]]).T >>> x tensor([[0, 1, 2], [2, 1, 0]]) >>> torch.cov(x) tensor([[ 1., -1.], [-1., 1.]]) >>> torch.cov(x, correction=0) tensor([[ 0.6667, -0.6667], [-0.6667, 0.6667]]) >>> fw = torch.randint(1, 10, (3,)) >>> fw tensor([1, 6, 9]) >>> aw = torch.rand(3) >>> aw tensor([0.4282, 0.0255, 0.4144]) >>> torch.cov(x, fweights=fw, aweights=aw) tensor([[ 0.4169, -0.4169], [-0.4169, 0.4169]])
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.cov.html