Phân phối chuẩn đa biến Python

Phân phối Gaussian (hoặc phân phối chuẩn) là một trong những phân phối xác suất cơ bản nhất trong tự nhiên. Từ sự xuất hiện của nó trong cuộc sống hàng ngày đến các ứng dụng của nó trong các kỹ thuật học thống kê, đây là một trong những khám phá toán học sâu sắc nhất từng được thực hiện. Bài viết này sẽ hướng tới phân phối nhiều chiều và hiểu trực quan về phân phối chuẩn hai biến

Lợi ích của việc che phủ phân phối hai biến là chúng ta có thể nhìn và hiểu bằng cách sử dụng các biểu đồ hình học thích hợp. Hơn nữa, các khái niệm tương tự đã học được thông qua phân phối hai chiều có thể được mở rộng cho bất kỳ số thứ nguyên nào. Trước tiên, chúng ta sẽ trình bày ngắn gọn các khía cạnh lý thuyết của phân phối và thực hiện phân tích toàn diện về các khía cạnh khác nhau của nó, như ma trận hiệp phương sai và hàm mật độ trong Python

Hàm mật độ xác suất (hoặc hàm mật độ hoặc PDF) của phân phối Gaussian Bivariate

Hàm mật độ mô tả khả năng xảy ra tương đối của một biến ngẫu nhiên 

Phân phối chuẩn đa biến Python
 tại một mẫu nhất định. Nếu giá trị xung quanh một mẫu nhất định cao, điều đó có nghĩa là biến ngẫu nhiên rất có thể sẽ nhận giá trị đó khi được lấy mẫu ngẫu nhiên. Chịu trách nhiệm về "hình chuông" đặc trưng của nó, hàm mật độ của một biến ngẫu nhiên Gauss hai biến nhất định 
Phân phối chuẩn đa biến Python
 được định nghĩa bằng toán học là.

Phân phối chuẩn đa biến Python

Ở đâu

Phân phối chuẩn đa biến Python
là bất kỳ vectơ đầu vào nào 
Phân phối chuẩn đa biến Python
trong khi các ký hiệu 
Phân phối chuẩn đa biến Python
 và 
Phân phối chuẩn đa biến Python
.

Chức năng chính được sử dụng trong bài viết này là scipy. số liệu thống kê. hàm multivariate_normal từ tiện ích scipy cho a biến ngẫu nhiên thông thường nhiều biến .

cú pháp. scipy. số liệu thống kê. multivariate_normal(mean=None, cov=1)

Thông số không tùy chọn

  • nghĩa là. Một mảng Numpy chỉ định giá trị trung bình của phân phối
  • cov. Một mảng Numpy xác định một ma trận hiệp phương sai xác định dương
  • hạt giống. Một hạt giống ngẫu nhiên để tạo ra các kết quả có thể lặp lại

trả lại. Một đối tượng biến ngẫu nhiên bình thường đa biến scipy. số liệu thống kê. _đa biến. đối tượng multivariate_normal_gen. Một số phương thức của đối tượng được trả về hữu ích cho bài viết này như sau

  • pdf(x). Trả về giá trị hàm mật độ tại giá trị 'x'
  • rvs(kích thước). Vẽ số lượng mẫu 'kích thước' từ phân phối Gaussian đa biến được tạo

Một cái nhìn “trực quan” về ma trận hiệp phương sai

Ma trận hiệp phương sai có lẽ là một trong những thành phần linh hoạt nhất của phân phối Gaussian hai biến. Mỗi phần tử của ma trận hiệp phương sai xác định hiệp phương sai giữa mỗi cặp biến ngẫu nhiên tiếp theo. Hiệp phương sai giữa hai biến ngẫu nhiên 

Phân phối chuẩn đa biến Python
 và 
Phân phối chuẩn đa biến Python
 được định nghĩa toán học là  
Phân phối chuẩn đa biến Python
 trong đó 
Phân phối chuẩn đa biến Python
 biểu thị . Nói một cách trực giác, bằng cách quan sát các phần tử đường chéo của ma trận hiệp phương sai, chúng ta có thể dễ dàng hình dung đường viền được vẽ bởi hai biến ngẫu nhiên Gaussian trong 2D. Đây là cách.
Phân phối chuẩn đa biến Python
. Intuitively speaking, by observing the diagonal elements of the covariance matrix we can easily imagine the contour drawn out by the two Gaussian random variables in 2D. Here’s how:

Các giá trị ở đường chéo bên phải thể hiện hiệp phương sai chung giữa hai thành phần của các biến ngẫu nhiên tương ứng. Nếu giá trị là +ve, điều đó có nghĩa là có hiệp phương sai dương giữa hai biến ngẫu nhiên, nghĩa là nếu chúng ta đi theo hướng mà 

Phân phối chuẩn đa biến Python
 tăng thì 
Phân phối chuẩn đa biến Python
 sẽ tăng . Tương tự, nếu giá trị này là âm, điều đó có nghĩa là 
Phân phối chuẩn đa biến Python
 sẽ giảm theo hướng tăng 
Phân phối chuẩn đa biến Python
.

Dưới đây là việc thực hiện ma trận hiệp phương sai

Trong các đoạn mã sau, chúng tôi sẽ tạo 3 phân phối Gaussian bivariate khác nhau với cùng một giá trị trung bình

Phân phối chuẩn đa biến Python
nhưng ma trận hiệp phương sai khác nhau.

  1. Ma trận hiệp phương sai với -ve hiệp phương sai =
    Phân phối chuẩn đa biến Python
  2. Ma trận hiệp phương sai với 0 hiệp phương sai =
    Phân phối chuẩn đa biến Python
  3. Ma trận hiệp phương sai với +ve hiệp phương sai =
    Phân phối chuẩn đa biến Python

con trăn




# Importing the necessary modules

import numpy as np

import matplotlib.pyplot as plt

from scipy.statsimport multivariate_normal

 

 

plt.style.use(import0import1

import2import3import4_______1_______5_______1_______6import7import8

 

import9

numpy as np0import5_______2_______2

 

numpy as np3

numpy as np4

numpy as np5_______1_______5 numpy as np7numpy as np8_______2_______9import7import1import7numpy as np9import4

 

import5

import6

import7import5 import9import1import7import1matplotlib.pyplot as plt3

 

matplotlib.pyplot as plt4

matplotlib.pyplot as plt5

matplotlib.pyplot as plt6 matplotlib.pyplot as plt7matplotlib.pyplot as plt8 matplotlib.pyplot as plt9from0

from1_______5_______2from3_______1_______7_______5_______5from6from7from3_______1_______1

from1

from1_______6_______2

from1_______6_______4_______1_______5 scipy.stats6from3scipy.stats8from3import0

from1

from1_______1_______3

from1______1_______5

from1_______1_______7import5 import9import5 multivariate_normal1import5 multivariate_normal3

multivariate_normal4multivariate_normal5import5 multivariate_normal7

from1

from1____9_______0

from1_______9_______2

from1_______9_______4_______1_______5 plt.style.use(6import5 plt.style.use(8import1

from1

from1______1_______02

from1_______1_______04import1_______1_______06from3import08import09import10import5import12import7

import14import15import5 import17_______1_______7

import14import20import5 import22_______1_______1

from1_______1_______25import26import1

from1_______1_______29import30import1

from1_______1_______33import34import1

from1_______1_______37import38import1

from1

import41

đầu ra

Phân phối chuẩn đa biến Python

Các mẫu được tạo cho các ma trận hiệp phương sai khác nhau

Chúng tôi có thể thấy rằng đầu ra của mã đã đáp ứng thành công các bằng chứng lý thuyết của chúng tôi. Lưu ý rằng giá trị 0. 8 được thực hiện chỉ vì mục đích thuận tiện. Người đọc có thể thử nghiệm với các cường độ hiệp phương sai khác nhau và mong đợi kết quả nhất quán

Chế độ xem 3D của hàm mật độ xác suất

Bây giờ chúng ta có thể chuyển sang một trong những khía cạnh đặc trưng và thú vị nhất của phân bố Gaussian hai biến, hàm mật độ. Hàm mật độ chịu trách nhiệm cho hình dạng chuông đặc trưng của phân phối

con trăn




# Importing the necessary modules

import numpy as np

import matplotlib.pyplot as plt

from scipy.statsimport multivariate_normal

 

 

plt.style.use(import0import1

import2import3import4_______1_______5_______1_______6import7import8

import61import5 import63

 

import9

numpy as np0import5_______2_______2

 

numpy as np3

numpy as np4

numpy as np5_______1_______5 numpy as np7numpy as np8_______2_______9import7import1import7numpy as np9import4

 

import80

import81

import7import5 import9import1import7import1matplotlib.pyplot as plt3

 

import89

import90

import91_______1_______5 import93

 

import94

matplotlib.pyplot as plt6 matplotlib.pyplot as plt7matplotlib.pyplot as plt8 matplotlib.pyplot as plt9from0

from1

from1_______6_______2

from1_______6_______4_______1_______5 scipy.stats6from3scipy.stats8from3import0

from1

from1_______1_______3

from1______1_______5

from1_______1_______7import5 import9import5 multivariate_normal1import5 multivariate_normal3

multivariate_normal4multivariate_normal5import5 multivariate_normal7

from1

from1_______2_______30

from1_______2_______32

from1_______2_______34_______1_______5 numpy as np36import1numpy as np38from3_______1_______4

from1_______2_______42import5 numpy as np44_______1_______1import7import1numpy as np48_______5_______3import7from3import4

from1

from1_______2_______55import5 numpy as np57_______2_______8from5numpy as np60numpy as np61_______5_______5numpy as np60numpy as np64import5numpy as np66import1

from1_______2_______69import5 numpy as np57numpy as np8from5numpy as np60numpy as np75_______5_______5numpy as np60numpy as np78import5numpy as np66import1

from1_______2_______83import5 numpy as np85

from1

from1_______2_______88

from1____2_______90

from1_______2_______92import5 numpy as np94

from1_______4_______6 numpy as np97_______4_______8 numpy as np99import00import1_______1_______02

import03_______4_______6 import05_______4_______8 numpy as np99import00_______5_______3_______1_______02

import11import12_______1_______5 import14

from1

from1_______1_______17

from1_______1_______19import5 import21_______5_______7import23

from1_______1_______25import5 import27_______1_______5 import29import1

from1_______1_______32import5 import34_______1_______1

from1_______1_______29import38import1

from1_______1_______33import42import1

from1_______1_______25import26import1

from1_______1_______49

from1_______1_______51

 

import52

import41

 

import54

matplotlib.pyplot as plt6 matplotlib.pyplot as plt7matplotlib.pyplot as plt8 matplotlib.pyplot as plt9import59

from1_______5_______2from3_______1_______7_______5_______5from6from7from3_______1_______1

from1_______1_______70import5import34_______1_______1

from1_______1_______29import38import1

from1_______1_______33import42import1

from1_______1_______25import84import1

import52

import41

đầu ra

1) Đồ thị của hàm mật độ

Phân phối chuẩn đa biến Python

Các hàm mật độ tương ứng với các ma trận hiệp phương sai khác nhau

2) Vẽ đường nét

Phân phối chuẩn đa biến Python

Đường viền của các hàm mật độ

Như chúng ta có thể thấy, các đường viền của hàm mật độ hoàn toàn khớp với các mẫu mà chúng ta đã vẽ trong phần trước. Lưu ý rằng ranh giới 3 sigma (kết thúc từ 68-95-99. 7) đảm bảo phạm vi bao phủ mẫu tối đa cho phân phối đã xác định. Như đã đề cập trước đó, người đọc có thể chơi xung quanh với các ranh giới khác nhau và mong đợi kết quả nhất quán

Phần kết luận

Chúng tôi đã hiểu những điểm phức tạp khác nhau đằng sau phân phối hai biến Gaussian thông qua một loạt các sơ đồ và xác minh kết quả lý thuyết với những phát hiện thực tế bằng Python. Người đọc được khuyến khích chơi xung quanh với các đoạn mã để có được trực giác sâu sắc hơn nhiều về phân phối kỳ diệu này

Đa biến bình thường có nghĩa là gì trong Python?

Phân phối chuẩn đa biến, đa chuẩn hoặc Gaussian là sự tổng quát hóa của phân phối chuẩn một chiều cho các chiều cao hơn . Một phân phối như vậy được chỉ định bởi ma trận trung bình và hiệp phương sai của nó.

Công thức cho phân phối chuẩn đa biến là gì?

Phân phối chuẩn đa biến được chỉ định bởi hai tham số, giá trị trung bình μi = E[Xi] và ma trận hiệp phương sai có các mục nhập là Γ . Trong phân phối chuẩn chung, Γij = 0 đủ để ngụ ý rằng Xi và X j là các biến ngẫu nhiên độc lập. = Cov[Xi, Xj]. In the joint normal distribution, Γij = 0 is sufficient to imply that Xi and X j are independent random variables.

Ý nghĩa của phân phối chuẩn đa biến là gì?

Phân phối chuẩn nhiều biến là sự tổng quát hóa nhiều chiều của phân phối chuẩn một chiều . Nó biểu thị phân phối của một biến ngẫu nhiên nhiều biến được tạo thành từ nhiều biến ngẫu nhiên có thể tương quan với nhau.