データ生成
乱数によってデータを生成する。
gen_w
gen_w (key:Union[jaxtyping.Key[Array,''],jaxtyping.UInt32[Array,'2']], N:int, T:int, G:jaxtyping.Float[Array,'{N}{N}'], w0:jaxtyping.Float[Array,'{N}'])
\(\!\) 潜在変数 \(\{\mathbf w_t\}_{t=0,\ldots,T-1}\) の生成 \[\mathbf w_{t}\sim\mathcal N(\mathbf w_t\mid\mathbf w_{t-1},\boldsymbol\Gamma)\] \(\!\)
Type | Details | |
---|---|---|
key | Union | PRNGKeyArray |
N | int | \(N\) |
T | int | \(T\) |
G | Float[Array, ‘{N} {N}’] | \(\boldsymbol\Gamma\) |
w0 | Float[Array, ‘{N}’] | \(\mathbf w_{-1}\) |
Returns | Float[Array, ‘{T} {N}’] | \(\{\mathbf w_t\}_{t=0,\ldots,T-1}\) |
gen_xy
gen_xy (key:Union[jaxtyping.Key[Array,''],jaxtyping.UInt32[Array,'2']], N:int, T:int, Sigma:jaxtyping.Float[Array,'{N}{N}'], W:jaxtyping.Float[Array,'{T}{N}'])
\(\!\) 観測変数 \(\{\mathbf x_t\}_{t=0,\ldots,T-1}, \{y_t\}_{t=0,\ldots,T-1}\) の生成 \[y_t\sim\text{Bern}(y_t\mid 1/2)\] \[\boldsymbol\Sigma\mathbf w_t=2\boldsymbol\mu_{1,t}\] \[\boldsymbol\mu_{2,t}=-\boldsymbol\mu_{1,t}\] \[ \mathbf x_t\sim \begin{cases} \displaystyle\mathcal N\left(\boldsymbol\mu_{1,t},\boldsymbol\Sigma\right) & (y_t=1) \\ \displaystyle\mathcal N\left(\boldsymbol\mu_{2,t},\boldsymbol\Sigma\right) & (y_t=0) \end{cases} \] \(\!\)
Type | Details | |
---|---|---|
key | Union | RPNGKeyArray |
N | int | \(N\) |
T | int | \(T\) |
Sigma | Float[Array, ‘{N} {N}’] | \(\boldsymbol\Sigma\) |
W | Float[Array, ‘{T} {N}’] | \(\{\mathbf w_t\}_{t=0,\ldots,T-1}\) |
Returns | Tuple | \(\{\mathbf x_t\}_{t=0,\ldots,T-1}, \{y_t\}_{t=0,\ldots,T-1}\) |