Files
Baysian_Canonical_Identific…/__pycache__/models_and_mcmc.cpython-311.pyc
T

108 lines
10 KiB
Plaintext
Raw Normal View History

§
2025-11-02 20:47:28 +08:00
úûhð&ã
ó8ddlZddlZddlmZddlmZddlZddlm Z
ddl m Z m
Z
mZddlmcmZddlmZddlmZddlmZeejd¬¦«d „¦«Zd
Zd Zdd Zed
kr*ejd¦«ej  !d¦«Z"e#d¦«ej  $e"d¦«\Z%Z&Z'ee(e%d¦«¬¦«\Z)Z*Z+Z,e#d¦«dZ-dZ.dZ/ee)e*e+e,e-e.e/e(e&d¦«¬¦«\Z0Z1ej2e0¦«Z3ej2e1¦«Z4ej  $e'¦«\Z5Z6eee5e3e4e.e/¦«Z7eee6e3e4e.e/¦«Z8e#d¦«e#d¦«e#d¦«dSdS)éN)Úmultivariate_normal)ÚMCMCÚNUTSÚ
Predictive)Úpartial)Úgenerate_ground_truth_system)Úsimulate_lti_data)rééé)Ústatic_argnumsc ó¶‡ ‡
tj¦«} tj¦«dz}
tj¦«Š
 ||df¦«Š
 |df¦«Š ˆˆˆˆˆˆˆ ˆˆˆ
ˆ f d}| |
f}tj ||tj|¦«¦«\\}}}tj|¦«S)uv
使用å¡å°”曼滤波器计算 LTI 系统的对数似然。
傿•°:
dx, du, dy, T: 系统的维度和时间
A, B, C, D: LTI 系统矩阵 (JAX 数组)
2025-11-02 20:47:28 +08:00
Q, R: 过程噪声和测é‡å™ªå£°çš„åæ–¹å·® (JAX 数组)
u_data, y_data: è¾“å…¥å’Œè¾“å‡ºæ•°æ® (T x du) å’Œ (T x dy)
返回:
float: 总的对数似然
çð?r
cóš |\}}|}|}| df¦«}||zz
|zz
}|zjzz}tj |¦«\} }
tj ||¦«} |j| z ¦«} tjdtjz¦«}
dz|
zd|
zz
d| zz
}tj ||z¦«j}|||zz}|zz
|z}|z|zz  ¦«}|zjzz}||f|fS)Nr
g@gà¿gà?)
ÚreshapeÚjnpÚlinalgÚslogdetÚsolveÚsqueezeÚlogÚpiÚflatten)ÚcarryÚx_t_tm1ÚP_t_tm1Úu_tÚy_tÚ x_t_tm1_colÚnu_tÚS_tÚsignÚ
logdet_S_tÚS_inv_nuÚ quad_termÚlog_2piÚ log_lik_tÚK_tÚx_t_tÚP_t_tÚx_tp1_tÚP_tp1_tÚI_dxÚdxÚdyÚu_dataÚy_datas €€€€€€€€€€€ú.f:\Papers\Baysian_Inference\models_and_mcmc.pyÚ kalman_stepz&kalman_likelihood.<locals>.kalman_step,swø€ðˆðQŒiˆØQŒiˆð —o’o r¨1 gÑ.ˆ ða˜+&¨!¨c©'Ñ2ˆð'‰k˜AœCÑ #ˆõœ:×-¨cшˆjÝ”:×# C¨Ñ.ˆØ”V˜&×1ˆ Ý”'˜¤™,Ñ'ˆØ˜2I Ñ'¨#°
Ñ*:Ñ:¸SÀ9¹_ÑLˆ õŒj×Ò˜s A¨¡KÑð˜c D™jÑð˜˜a™ 7Ñð u9˜q 3™wÑ&×1ˆðe‘)˜aœc‘/ AÑð˜Ð! ) rÚzerosÚeyerÚjaxÚlaxÚscanÚarangeÚsum)r6Údur7rr/r0r1r2r4r5r8r9Úx_0_m1ÚP_0_m1r;Ú
2025-11-02 20:47:28 +08:00
initial_carryÚlog_likelihoodsr3s` ` ```````` @r:Úkalman_likelihoodrJsøøøøøøøøøøø€õ ŒYr‰]Œ]€FÝ
ŒWR‰[Œ[˜
€FÝ Œ72‰;Œ;€Dð^Š^˜Q  A˜
2025-11-02 20:47:28 +08:00
'€FØ
^Š^˜Q  A˜
'€Fð///////////////-ðf˜$€Mõ"œgŸlšl¨;¸
ÅsÄzÐRSÁ}Ä}ÑF€QˆˆOõ Œ7 #r<cód\}}d}|jd}tjdtjdd¦«¦«}tjdtjd|z
2025-11-02 20:47:28 +08:00
d|z¦«¦«} tjdtjdd¦«¦«}
tjd tjdd¦«¦«} t
jd
d g| | gg¦«} t
jd
gd gg¦«}
t
j|
| gg¦«}t
j||f¦«}t
j |¦«|dzz}t
j |¦«|dzz}t||||| |
||||||¦ « }tj d |¦«d
S)u5
NumPyro 模型 - 规范型 (Canonical Form)
2025-11-02 20:47:28 +08:00
©r r
r
rÚa0éÿÿÿÿÚa1Úb0r Úb1çrÚlog_likelihoodN) ÚshapeÚnumpyroÚsampleÚdistÚUniformÚNormalrÚarrayr=r>rJÚfactor)r8r9Ú
sigma_processÚ
sigma_measurer6rDr7rrMrOrPrQr/r0r1r2r4r5Ú
log_lik_totals r:Úmodel_canonicalr_jsnðF€BˆØ
€BØŒ €Aõ
2025-11-02 20:47:28 +08:00
Œ˜dœl¨2¨qÑ1Ñ 2Ô 2€Bå Œ˜dœl¨2°©7°A¸±FÑ;Ñ <Ô <€Bõ
Œ˜dœk¨!¨QÑ/Ñ 0Ô 0€BÝ Œ˜dœk¨!¨QÑ/Ñ 0Ô 0€Bõ Œ C˜:   b S˜+€AÝ Œ C5˜3˜%!€AÝ Œ 8Ô€AÝ Œ 2rÔ€Aõ Œ Œ Ñ*€AÝ Œ Œ Ñ*€Aõ& b¨"¨b°!°Q¸¸1¸ÀAÀvÈvÑV€Mõ „NÐ# 3r<có2d\}}d}|jd}tjdtjdd¦«¦«}tjdtjdd¦«¦«} tjdtjdd¦«¦«}
tjdtjdd¦«¦«} tjd tjdd¦«¦«} tjd
tjdd¦«¦«}
tjd tjdd¦«¦«}tjd tjdd¦«¦«}t j|| g|
| gg¦«}t j| g|
gg¦«}t j||gg¦«}t j||f¦«}t j|¦«|dzz}t j|¦«|dzz}t||||||||||||¦ « }tj
2025-11-02 20:47:28 +08:00
d
|¦«dS)u4
NumPyro 模型 - 标准型 (Standard Form)
rLr
rÚA11r ÚA12ÚA21ÚA22ÚB1ÚB2ÚC1ÚC2rSN) rTrUrVrWrYrrZr=r>rJr[)r8r9r\r]r6rDr7rrarbrcrdrerfrgrhr/r0r1r2r4r5r^s r:Úmodel_standardriðF€BˆØ
2025-11-02 20:47:28 +08:00
€BØŒ €Aõ Œ.˜¥¤ ¨A¨qÑ 1Ô 1Ñ
2€CÝ
Œ.˜¥¤ ¨A¨qÑ 1Ô 1Ñ
2€CÝ
Œ.˜¥¤ ¨A¨qÑ 1Ô 1Ñ
2025-11-02 20:47:28 +08:00
2€CÝ
Œ.˜¥¤ ¨A¨qÑ 1Ô 1Ñ
2025-11-02 20:47:28 +08:00
2€Cõ
Œ˜dœk¨!¨QÑ/Ñ 0Ô 0€BÝ Œ˜dœk¨!¨QÑ/Ñ 0Ô 0€Bõ
Œ˜dœk¨!¨QÑ/Ñ 0Ô 0€BÝ Œ˜dœk¨!¨QÑ/Ñ 0Ô 0€Bõ Œ C˜:  S˜+€AÝ Œ B4˜"˜Ô€AÝ Œ 8Ô€AÝ Œ 2rÔ€Aõ Œ Œ Ñ*€AÝ Œ Œ Ñ*€Aõ& b¨"¨b°!°Q¸¸1¸ÀAÀvÈvÑV€Mõ „NÐ# 3r<cóÞtd|jd¦«d}d}d} |rTtd¦«d| ¦«D¦«}
tj|
¬¦«} t || ¬ ¦«} ntd
¦«t |¦«} t
| ||| d ¬ ¦«}
|
 |||||¬
2025-11-02 20:47:28 +08:00
¦«td|jd¦«|
 ¦«|
S)u*辅助函数,用于è¿è¡Œ NUTS 采样器u
--- 开始为模型 u è¿è¡Œ MCMC ---i Ni@œéuE--- MCMC 正在使用 'init_to_value' ç­–ç•¥ (从真实值开始) ---có>i|]\}}|tj|¦«ŒS©)rrZ)Ú.0Úvs r:ú
2025-11-02 20:47:28 +08:00
<dictcomp>zrun_mcmc.<locals>.<dictcomp>Ìs&ÐG©4¨1¨aq#œ) A™,œ,ÐGr<)Úvalues)Ú