Phân phối chuẩn đa biến được định nghĩa trong scipy.stats
là. V=Nd[mean=m, cov=Sigma], trong đó $m=[m[0,], m[1], \ldots m[d-1]]^T$ là vectơ của phương tiện và $\
Đối với các đối tượng trong ảnh được mô hình hóa bằng Gaussian 2D, chúng ta thường muốn các thuộc tính như tâm của đốm màu, chiều rộng và góc. Đối với hình elip thiên văn, chiều rộng không phải là giá trị cho $\sigma$ theo x và y, mà là Toàn bộ chiều rộng ở mức tối đa một nửa [FWHM] Trong tài liệu khoảnh khắc, chúng được gọi là $HW$. Góc của hình elip được đo ngược chiều kim đồng hồ đối với trục +x. Hình elip thiên văn xác định một góc vị trí là góc giữa trục chính của hình elip và trục +y
Chúng tôi rút ra các giá trị áp dụng cho các thuộc tính toán học của hình elip vì chúng quen thuộc và cũng có thể dễ dàng chuyển đổi thành các thuộc tính cho hình elip trong định nghĩa thiên văn
Theo tài liệu khoảnh khắc
\begin{equation}M_0=\sum_j \sum_i I_{j,i}\end{equation}\begin{eqnarray*} \bar{x}&=&\frac1{M_0}\sum_j \sum_i x_i I_{j,
Và trong khoảnh khắc thứ hai, chúng tôi sử dụng các biểu thức. \begin{eqnarray*} M_{xx}&=&\frac1{M_0}\sum_j\sum_ix_i^2I_{j,i}-\bar{x}^2\\ M_{yy}&=&\frac1{M_0 . \end{eqnarray*}
Các hằng số $a$, $b$ và $c$ được tính sau đó với. \begin{equation} a=\frac{M_{yy}}{2[M_{xx}M_{yy}-M_{xy}^2]}\quad b=\frac{M_{xx}}{2[
Điều kiện để $a$, $b$ và $c$ biểu thị hình elip là $\boxed{ab-c^2 > 0}$ và $a>0$ và $b>0$
Ước tính biên độ A Tổng của tất cả các giá trị pixel, cần thiết để chia tỷ lệ thời điểm thứ nhất và thứ hai và để ước tính biên độ của Gaussian
\begin{equation} \boxed{A = M_0 \sqrt{ab - c^2}} \end{equation}Lưu ý rằng ước tính này phải được nhân với diện tích $dx. dy$ của một phần tử lưới dành cho $[N_x, N_y]$ pixel và giới hạn lưới $x_{min}, y_{min}$ và $x_{max}, y_{max}$ bằng
\begin{equation} dx dy = [x_{max}-x_{min}]/N_x. [y_{max}-y_{min}]/N_y \end{equation}Ước tính tọa độ tâm $[x_0, y_0]$. Các tọa độ lưới của vị trí của đỉnh được cho bởi
\begin{eqnarray*} \bar{x}&=&\frac1{M_0}\sum_j \sum_i x_i I_{j,i}\\ \bar{y}&=&\frac1{M_0}\sum_j \sum_i y_jƯớc tính góc quay $\theta$. Góc xoay xác định góc giữa góc chính của hình elip và trục +x, được đo ngược chiều kim đồng hồ
\begin{equation} \boxed{\tan 2\theta = \frac{2c}{a-b}} \end{equation}Ước tính trục chính và trục phụ Với $p = \sqrt{[a-b]^2 + 4c^2}$ [và yêu cầu $p>0$], ước tính cho trục chính và phụ là
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 tập 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
Ở đâu
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
- bần tiện. 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
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à
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
- Ma trận hiệp phương sai với -ve hiệp phương sai =
- Ma trận hiệp phương sai với 0 hiệp phương sai =
- Ma trận hiệp phương sai với +ve hiệp phương sai =
con trăn
# Importing the necessary modules
import
numpy as np
import
matplotlib.pyplot as plt
from
scipy.stats
import
multivariate_normal
# Importing the necessary modules
0____20____21
import
2______23import
4import
5import
6import
7import
8
import
9
numpy as np
0import
5numpy as np
2
numpy as np
3
numpy as np
4
numpy as np
5import
5 numpy as np
7_______38numpy as np
9import
7import
1import
7numpy as np
9import
4
import
5
import
6
import
7_______25 import
9____21import
7import
1matplotlib.pyplot as plt
3
matplotlib.pyplot as plt
4
matplotlib.pyplot as plt
5
matplotlib.pyplot as plt
6 matplotlib.pyplot as plt
7____58 matplotlib.pyplot as plt
9from
0
from
1from
2from
3import
7from
5from
6from
7from
3import
1
from
1
from
1scipy.stats
2
from
1scipy.stats
4import
5 scipy.stats
6from
3scipy.stats
8from
3import
0
from
1
from
1import
3
from
1import
5
from
1import
7import
5 import
9import
5 multivariate_normal
1import
5 multivariate_normal
3
multivariate_normal
4multivariate_normal
5import
5 multivariate_normal
7
from
1
from
1# Importing the necessary modules
00
from
1# Importing the necessary modules
02
________ 61# Importing the necessary modules
04import
5 ________ 106import
5 _______ 108import
1
from
1
from
1import
02
from
1import
04import
1import
06from
3import
08import
09import
10import
5import
12import
7
import
14import
15import
5 import
17import
7
import
14import
20import
5 import
22import
1
from
1import
25import
26import
1
from
1import
29____230import
1
from
1import
33import
34import
1
from
1import
37import
38import
1
from
1
import
41
đầu ra
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.stats
import
multivariate_normal
# Importing the necessary modules
0____20____21
import
2______23import
4import
5import
6import
7import
8
import
61import
5 import
63
import
9
numpy as np
0import
5numpy as np
2
numpy as np
3
numpy as np
4
numpy as np
5import
5 numpy as np
7_______38numpy as np
9import
7import
1import
7numpy as np
9import
4
import
80
import
81
import
7_______25 import
9____21import
7import
1matplotlib.pyplot as plt
3
import
89
import
90
import
91import
5 import
93
import
94
matplotlib.pyplot as plt
6 matplotlib.pyplot as plt
7____58 matplotlib.pyplot as plt
9from
0
from
1
from
1scipy.stats
2
from
1scipy.stats
4import
5 scipy.stats
6from
3scipy.stats
8from
3import
0
from
1
from
1import
3
from
1import
5
from
1import
7import
5 import
9import
5 multivariate_normal
1import
5 multivariate_normal
3
multivariate_normal
4multivariate_normal
5import
5 multivariate_normal
7
from
1
from
1numpy as np
30
from
1numpy as np
32
from
1numpy as np
34import
5 numpy as np
36import
1numpy as np
38from
3import
4
from
1numpy as np
42import
5 numpy as np
44import
1import
7import
1numpy as np
48from
3import
7from
3import
4
from
1
from
1numpy as np
55import
5 numpy as np
57numpy as np
8from
5numpy as np
60numpy as np
61from
5numpy as np
60numpy as np
64import
5numpy as np
66import
1
from
1numpy as np
69import
5 numpy as np
57numpy as np
8from
5numpy as np
60numpy as np
75from
5numpy as np
60numpy as np
78import
5numpy as np
66import
1
from
1____383____25 numpy as np
85
from
1
from
1numpy as np
88
from
1numpy as np
90
from
1____392____25 numpy as np
94
from
1matplotlib.pyplot as plt
6 numpy as np
97_______58 numpy as np
99import
00import
1import
02
import
03matplotlib.pyplot as plt
6 import
05matplotlib.pyplot as plt
8 numpy as np
99import
00from
3import
02
import
11import
12import
5 import
14
from
1
from
1import
17
from
1import
19import
5 import
21from
7import
23
from
1import
25 import
5 ________ 227import
5 ________ 229import
1
from
1import
32import
5 import
34import
1
from
1import
29____238import
1
from
1import
33import
42import
1
from
1import
25import
26import
1
from
1import
49
from
1import
51
import
52
import
41
import
54
matplotlib.pyplot as plt
6 matplotlib.pyplot as plt
7____58 matplotlib.pyplot as plt
9import
59
from
1from
2from
3import
7from
5from
6from
7from
3import
1
from
1import
70____25import
34import
1
from
1import
29____238import
1
from
1import
33import
42import
1
from
1import
25import
84import
1
import
52
import
41
đầu ra
1] Đồ thị của hàm mật độ
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
Đườ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