Bộ lọc kalman là gì

      20

Bài viết được đăng trên ThetaLog: https://thetalog.com/machine-learning/kalman-filter/

Kalman Filter là một mô hình Linear-Gaussian State Space Model thuộc đội thuật toán dự kiến chuỗi thời gian. Thuật toán được lấy tên theo Rudolf E. Kálmán, một bên khoa học tác động quan trọng trong quá trình cách tân và phát triển thuật toán.Bạn đang xem: cỗ lọc kalman filter là gì, cụ thể về bộ lọc kalman mới nhất 2021


Bạn đang xem: Bộ lọc kalman là gì

*

Xem thêm: Uống Nước Lá Vối Có Tác Dụng Gì, 8+ Công Dụng Tuyệt Vời Bạn Cần Biết!

Lập luận theo cách trên lại sở hữu một ưu chũm nữa, trong vô số bài toán kỹ thuật kỹ thuật, đôi lúc bạn nên biết xác suất xảy ra trong một vùng làm sao đấy, chẳng hạn:

Đôi lúc họ chỉ cân nhắc một vùng nào kia của một đại lượng, ví dụ điển hình từ 95 mang đến 110 độ C thì CPU máy tính xách tay phải tắt vì ánh sáng vượt ngưỡng an toàn, phần trăm để sức nóng độ rơi vào vùng này là bao nhiêu nhỉ? tương tự như với một tập đại lượng, bọn họ quan vai trung phong đến một vùng giá trị nào đó thật sự đặc trưng trong bài toán đang xét.Với hàm mật độ xác suất liên tục p(x_t) chúng ta có thể dể dàng tính xác suất xảy ra vào vùng E bằng tích phân int_E p(x_t) dx_t, thật tiện thể lợi đúng không ạ nào!

Giả định rằng tại thời gian t con thuyền có:

hatx_t = left

Sigma_t = left


*

Giả định trên có thể hiểu y_t được xem như thể "nhiễu quan gần cạnh được tự x_t", y_t là kết quả của tổ hợp tuyến tính từng yếu tắc x_t dựa trên ma trận G_t với bị ảnh hưởng cộng thêm 1 lượng nhiễu môi trường thiên nhiên với vector đột nhiên v_t. Fan ta gọi bí quyết trên là mô hình quan sát, nó thể hiện quy trình x_t chuyển đổi thành y_t đồng thời bị ảnh hưởng nhiễu trường đoản cú môi trường.

Giờ đây, họ có niềm tin của họ về trạng thái phi thuyền qua hàm mật độ xác suất p(x_t) và một sự kiện đã xẩy ra là tin tức thu được tự bộ cảm biến - tâm lý y_t, liệu rằng bạn cũng có thể kết hợp cả nhị thông tin đang có thành một thông tin mới có chân thành và ý nghĩa hơn, giúp họ hiểu rộng về trạng thái hiện tại hệ thống hay không?

Biết y_t đã giúp họ cập nhật lòng tin về x_t như vậy nào? nếu như bạn đang tìm một phương án như trên, chắc hẳn rằng định lý Bayes là một trong những câu trả lời bọn họ đang tìm:

p(x_t | y_t) = frac x_t) p(x_t)p(y_t)

p(x_t) hàm tỷ lệ xác suất tiên nghiệm, lòng tin của họ không phụ thuộc vào vào sự khiếu nại y_t xảy ra.p(y_t | x_t) hàm tỷ lệ xác suất khả dĩ, tỷ lệ xác suất có điều kiện khi biết trạng thái x_t xảy ra, vì chúng ta biết rằng y_t là 1 vector ngẫu nhiên sao để cho y_t = G_t x_t + v_t , lúc biết x_t xảy ra nghĩa là G_t x_t là một vector hằng, vector tự nhiên y_t được màn biểu diễn bằng một vector hằng thêm vào đó một vector ngẫu nhiên gồm phân bố chuẩn nhiều chiều v_t sim mathcalN(0,R_t), hay có thể nói rằng y_t | x_t hiện tại là một phân bố chuẩn chỉnh nhiều chiều. Phân bổ y_t | x_t sim mathcalN(G_t x_t ,R_t).p(y_t) hàm mật độ xác suất biên không phụ thuộc vào vào x_t đóng vai trò như một hằng số chuẩn hóa.

Phân tía x_t | y_t được tìm như vậy nào? Trên nền tảng Linear Gaussian Systems (LGS - quy mô phân bố chuẩn tuyến tính), lời giải của định lý Bayes cho câu hỏi này như sau:

Định lý Bayes mang lại Linear Gaussian Systems

Giả định có hai vector đột nhiên m in mathbbR^D_m và n in mathbbR^D_n với m là vectơ ẩn, n là vector nhiễu quan cạnh bên được tự m với:

m sim mathcalN(mu_m , Sigma_m ) n | m sim mathcalN(C m + d, Sigma_n ) phân bổ hậu nghiệm m | n khi biết n là m | n sim mathcalN(mu_ y, Sigma_ n) với: Sigma_m = left( Sigma_m^-1 + C^intercal Sigma_n^-1 C ight)^-1 mu_m = Sigma_m left TL;DR: phần chứng minh định lý sẽ không còn được bàn ở đây, vào một lúc nào kia nếu rất có thể mình đã viết về các mô hình phân bố chuẩn chỉnh nhiều chiều, các bạn đọc quan tâm có thể tham khảo thêm tài liệu đính thêm kèm. (Kevin p Murphy phần 6 tài liệu , Chris Bracegirdle tư liệu phần hệ luận Corollary 5) |

Tuy nhiên nếu thống kê giám sát trực tiếp ma trận hiệp phương không đúng Sigma_x_t như trên thì có lẽ bạn vừa bỏ sang 1 vài “điều thú vị” vào đại số đường tính khiến chiến thuật của chúng ta thú vị hơn!

Đồng nhất thức ma trận Woodbury (hay có cách gọi khác matrix inversion lemma)

Cho 4 ma trận A (n imes n), U (n imes k), C (k imes k), V (k imes n)Đồng tốt nhất thức Woodbury nói rằng:

left( A + UCV ight)^-1 = A^-1 - A^-1U(C^-1 + VA^-1U)^-1VA^-1

Trước khi giải thích chân thành và ý nghĩa của đồng bộ thức ma trận Woodbury vào Kalman Filter, chúng ta hãy bên nhau viết lại giải thuật phân tía hậu nghiệm x_t | y_t vừa tìm được, họ gọi đó là “phân cha lọc” (Filtering Distribution):

x^mathttF_t sim x_t | y_t sim mathcalN(hatx^mathttF, Sigma^mathttF)

Với thông số kỳ vọng và ma trận hiệp phương sai của phân bố chuẩn chỉnh nhiều chiều:

colorWildStrawberrySigma^mathttF_t = left( Sigma_t^-1 + G_t^intercal R_t^-1 G_t ight)^-1 = Sigma_t - Sigma_t G_t^intercal left( R + G_t Sigma_t G_t^intercal ight)^-1 G_t Sigma_t

colorWildStrawberryhatx^mathttF_t = hatx_t + Sigma_t G_t^intercal left( G_t Sigma_t G_t^intercal + R_t ight)^-1 (y_t - G_t hatx_t)

Ý nghĩa của nhất quán thức ma trận Woodbury: trong vô số nhiều ứng dụng theo thời hạn thực, thường xuyên thì chỉ có một số ít trạng các bạn nhận được từ bộ cảm biến tại 1 thời điểm, hay nói theo cách khác số chiều của vector hốt nhiên y_t khôn xiết nhỏ, hôm nay chi phí tổn tìm ma trận nghịch hòn đảo của left( R_t + G_t Sigma_t G_t^intercal ight)^-1 kha khá nhỏ, đồng thời các ma trận khác đã tất cả rồi, việc giám sát còn lại chỉ là nhân ma trận sẽ cấp tốc hơn rất nhiều so với vấn đề gốc nhân rồi tính một ma trận nghịch hòn đảo rất lớn!