{"id":924,"date":"2021-12-27T15:49:36","date_gmt":"2021-12-27T06:49:36","guid":{"rendered":"https:\/\/www.avelio.co.jp\/math\/wordpress\/?p=924"},"modified":"2022-09-07T16:27:48","modified_gmt":"2022-09-07T07:27:48","slug":"%e8%b3%ad%e5%8d%9a%e9%bb%99%e7%a4%ba%e9%8c%b2%e3%82%ab%e3%82%a4%e3%82%b8%e3%80%8c%e9%9a%a0%e3%82%8c%e3%83%9e%e3%83%ab%e3%82%b3%e3%83%95%e3%83%a2%e3%83%87%e3%83%ab%e7%b7%a8%e3%80%8d","status":"publish","type":"post","link":"https:\/\/www.avelio.co.jp\/math\/wordpress\/?p=924","title":{"rendered":"\u96a0\u308c\u30de\u30eb\u30b3\u30d5\u30e2\u30c7\u30eb\u3067\u30a4\u30ab\u30b5\u30de\u3092\u66b4\u304f"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">1. \u306f\u3058\u3081\u306b<\/h1>\n\n\n\n<p>\u300e \u8ced\u535a\u7834\u6212\u9332\u30ab\u30a4\u30b8 \u300f\u3068\u3044\u3046\u4f5c\u54c1\u306e\u4e2d\u3067\u3001\u5730\u4e0b\u30c1\u30f3\u30c1\u30ed\u30ea\u30f3\u3068\u3044\u3046\u8ced\u3051\u4e8b\u304c\u767b\u5834\u3057\u307e\u3059\u3002\u305d\u306e\u8ced\u3051\u306e\u4e2d\u3067\u4e3b\u4eba\u516c\u3067\u3042\u308b\u30ab\u30a4\u30b8\u306f\u3001\u5927\u69fb\u73ed\u9577\u3068\u3044\u3046\u4eba\u5fc3\u638c\u63e1\u8853\u306b\u9577\u3051\u305f\u30bf\u30cc\u30ad\u306b\u30a4\u30ab\u30b5\u30de\u3092\u3057\u304b\u3051\u3089\u308c\u3066\u3057\u307e\u3044\u307e\u3059\u3002\u305d\u306e\u30a4\u30ab\u30b5\u30de\u306b\u4f7f\u7528\u3055\u308c\u305f\u4e0d\u6b63\u306a\u30b5\u30a4\u30b3\u30ed\u304c\u3001\u304b\u306e\u6709\u540d\u306a\u300c<strong>\u56db\u4e94\u516d\u8cfd<\/strong>\u300d\u3001\uff14\u30fb\uff15\u30fb\uff16\u306e\u9762\u3057\u304b\u51fa\u306a\u3044\u3068\u3044\u3046\u4ee3\u7269\u3067\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/stat.ameba.jp\/user_images\/20100219\/23\/mori-arch-econo\/f0\/42\/j\/o0423028210421190056.jpg?caw=800\" alt=\"\u30ab\u30a4\u30b8\u306e\u5730\u7344\u30c1\u30f3\u30c1\u30ed\u306b\u95a2\u3059\u308b\u7d4c\u6e08\u7684\u8003\u5bdf \uff17\u6700\u7d42\u7ae0 | \u5efa\u7bc9\u30a8\u30b3\u30ce\u30df\u30b9\u30c8 \u68ee\u5c71\u9ad8\u81f3\u300c\u30d6\u30e9\u30bf\u30ab\u30b7\u8857\u6b69\u304dBlog\u300dPowered by Ameba\"\/><figcaption><strong>\u300e\u8ced\u535a\u7834\u6212\u9332\u30ab\u30a4\u30b8\u300f(c)\u30d5\u30af\u30e2\u30c8\u30d7\u30ed\/\u798f\u672c\u4f38\u884c<\/strong><\/figcaption><\/figure>\n<\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>\u4e3b\u4eba\u516c\u30ab\u30a4\u30b8\u306f\u3001\u985e\u3044\u7a00\u306a\u6d1e\u5bdf\u529b\u3092\u99c6\u4f7f\u3057\u3066\u3001\u305d\u308c\u307e\u3067\u306e\u51fa\u76ee\u306e\u8a18\u9332\u304b\u3089\u30a4\u30ab\u30b5\u30de\u30b5\u30a4\u30b3\u30ed\u306e\u4e0d\u6b63\u3092\u66b4\u304d\u307e\u3057\u305f\u3002\u51e1\u4eba\u306e\u79c1\u306b\u306f\u6c17\u3065\u3051\u305d\u3046\u3082\u306a\u3044\u306e\u3067\u3001\u6570\u5b66\u306e\u529b\u3092\u304a\u501f\u308a\u3057\u3066\u3001\u5927\u69fb\u73ed\u9577\u306e\u30a4\u30ab\u30b5\u30de\u3092\u66b4\u3044\u3066\u3044\u3053\u3046\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h1 class=\"wp-block-heading\">2. \u96a0\u308c\u30de\u30eb\u30b3\u30d5\u30e2\u30c7\u30eb\uff1aHidden Markov model<\/h1>\n\n\n\n<p>\u307e\u305a\u306f\u3001\u3053\u306e\u5927\u69fb\u73ed\u9577\u306e\u30a4\u30ab\u30b5\u30de\u884c\u52d5\u3092\u96a0\u308c\u30de\u30eb\u30b3\u30d5\u30e2\u30c7\u30eb (Hidden Markov model: HMM) \u3068\u3044\u3046\u30e2\u30c7\u30eb\u3092\u4f7f\u3063\u3066\u3001\u30e2\u30c7\u30ea\u30f3\u30b0\u3057\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u96a0\u308c\u30de\u30eb\u30b3\u30d5\u30e2\u30c7\u30eb\u306f\u3001\u6642\u7cfb\u5217\u30c7\u30fc\u30bf\u306e\u30d1\u30bf\u30fc\u30f3\u8a8d\u8b58\u306b\u4f7f\u7528\u3055\u308c\u308b\u3053\u3068\u304c\u591a\u304f\u3001\u97f3\u58f0\u8a8d\u8b58\u30fb\u5f62\u614b\u7d20\u5206\u6790\u30fb\u30d0\u30a4\u30aa\u30a4\u30f3\u30d5\u30a9\u30de\u30c6\u30a3\u30af\u30b9\u30fb\u91d1\u878d\u30c7\u30fc\u30bf\u306e\u5206\u6790\u306a\u3069\u306e\u591a\u304f\u306e\u5206\u91ce\u3067\u5fdc\u7528\u3055\u308c\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u65e9\u901f\u3067\u3059\u304c\u3001\u30e2\u30c7\u30ea\u30f3\u30b0\u3057\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\\( t \\) \u56de\u76ee\u306e\u30ed\u30fc\u30eb ( = \u30b5\u30a4\u30b3\u30ed\u3092\u632f\u308b\u3053\u3068 ) \u3067\u5927\u69fb\u73ed\u9577\u304c\u4f7f\u7528\u3057\u3066\u3044\u308b\u30b5\u30a4\u30b3\u30ed\u306e\u7a2e\u985e\u3092 \\( x_t \\) \u3068\u8868\u3059\u3053\u3068\u306b\u3057\u307e\u3059\u3002 \u4f5c\u4e2d\u3067\u306f\u3001\u901a\u5e38\u306e\u30b5\u30a4\u30b3\u30ed\u3068\u56db\u4e94\u516d\u8cfd\u306e\uff12\u7a2e\u985e\u306e\u30b5\u30a4\u30b3\u30ed\u304c\u4f7f\u7528\u3055\u308c\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u3053\u3053\u3067\u306f\u4e00\u822c\u5316\u3057\u3066\u3001\\( M \\) \u7a2e\u985e\u306e\u30b5\u30a4\u30b3\u30ed \\(s_1,&#8230;,s_M \\) \u304c\u4f7f\u7528\u3055\u308c\u3066\u3044\u308b\u3068\u3057\u307e\u3059\u3002\u307e\u305f\u3001 \\( t \\) \u56de\u76ee\u306e\u30ed\u30fc\u30eb\u306e\u51fa\u76ee\u3092 \\( y_t \\) \u3068\u8868\u3059\u3053\u3068\u306b\u3057\u307e\u3059\u3002\u30b5\u30a4\u30b3\u30ed\u306f \\(6\\) \u9762\u3067\u3059\u304c\u3001\u3053\u308c\u3082\u4e00\u822c\u5316\u3057\u3066\u3001\\( N \\) \u9762\u30b5\u30a4\u30b3\u30ed\u3001\u3064\u307e\u308a\u51fa\u76ee\u306e\u7a2e\u985e\u304c \\( o_1, &#8230;, o_N \\) \u3067\u3042\u308b\u3068\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\\( t \\) \u56de\u76ee\u306b\u5927\u69fb\u73ed\u9577\u304c\u4f7f\u7528\u3057\u3066\u3044\u308b\u30b5\u30a4\u30b3\u30ed\u306e\u7a2e\u985e\uff1a\\( x_t \\)<\/li><li>\\( t \\) \u56de\u76ee\u306e\u51fa\u76ee\uff1a\\( y_t \\)<\/li><li>\u30b5\u30a4\u30b3\u30ed\u306e\u7a2e\u985e\uff1a\\( s_1,&#8230;,s_M\\)<\/li><li>\u30b5\u30a4\u30b3\u30ed\u306e\u9762\u306e\u7a2e\u985e\uff1a\\( o_1,&#8230;,o_N \\)<\/li><\/ul>\n\n\n\n<p>\u8a18\u8ff0\u3092\u7c21\u4fbf\u306b\u3059\u308b\u305f\u3081\u306b\u3001\\( x_{t|t^\\prime} := \\{x_t,&#8230;,x_{t^\\prime}\\},~ y_{t|t^\\prime} := \\{y_t,&#8230;,y_{t^\\prime}\\} \\) \u3068\u3044\u3046\u8a18\u6cd5\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3053\u3053\u3067\u5927\u69fb\u73ed\u9577\u306f\u30de\u30eb\u30b3\u30d5\u30e2\u30c7\u30eb\u306b\u5f93\u3063\u3066\u3001\u30b5\u30a4\u30b3\u30ed\u3092\u9078\u629e\u3059\u308b\u3068\u3057\u307e\u3059\u3002\u3059\u306a\u308f\u3061\u3001\u4e00\u56de\u524d\u306b\u4f7f\u7528\u3055\u308c\u305f\u30b5\u30a4\u30b3\u30ed\u306e\u7a2e\u985e\u306b\u3088\u3063\u3066\u3001\u6b21\u306e\u30b5\u30a4\u30b3\u30ed\u306e\u7a2e\u985e\u304c\u78ba\u7387\u7684\u306b\u6c7a\u307e\u308b\u3068\u3044\u3046\u4eee\u5b9a\u3092\u7f6e\u304d\u307e\u3059\u3002(\u304b\u306a\u308a\u4e71\u66b4\u306a\u4eee\u5b9a\u3067\u3059\u304c\u3001\u8a31\u3057\u3066\u306d\uff01)<\/p>\n\n\n\n<p>\\(t-1\\) \u56de\u76ee\u306b\u30b5\u30a4\u30b3\u30ed\\( s_i \\)\u306b\u4f7f\u7528\u3055\u308c\u305f\u4e0b\u3067\u3001\\( t\\) \u56de\u76ee\u306b\u30b5\u30a4\u30b3\u30ed\\(s_j\\) \u304c\u4f7f\u7528\u3055\u308c\u308b\u78ba\u7387\u3092<\/p>\n\n\n\n<p>$$ a(s_i, s_j) := P(x_t = s_j | x_{t-1} = s_i)$$<\/p>\n\n\n\n<p>\u3068\u8868\u3057\u307e\u3059\u3002\\( a(s_i, s_j)  \\) \u306f\u72b6\u614b \\(s_i\\) \u304b\u3089\u72b6\u614b\\( s_j \\) \u3078\u306e<strong>\u9077\u79fb\u78ba\u7387<\/strong> (transition probability) \u3068\u3044\u3044\u3001\\( a(s_i, s_j)  \\) \u3092 \\( (i,j)\\) \u6210\u5206\u306b\u3082\u3064\u884c\u5217 \\(A\\) \u3092<strong>\u9077\u79fb\u884c\u5217<\/strong> (transition matrix) \u3068\u3044\u3044\u307e\u3059\u3002 <\/p>\n\n\n\n<p>\\( t\\) \u56de\u76ee\u306b\u30b5\u30a4\u30b3\u30ed\\(s_j\\) \u304c\u4f7f\u7528\u3055\u308c\u305f\u4e0b\u3067\u3001\u51fa\u76ee\u304c \\( o_k\\) \u3068\u306a\u308b\u78ba\u7387\u3092<\/p>\n\n\n\n<p>$$ b(s_j, o_k) := P(y_t = o_k | x_t = s_j) $$<\/p>\n\n\n\n<p>\u3068\u8868\u3057\u307e\u3059\u3002\u3053\u308c\u306f<strong>\u51fa\u529b\u78ba\u7387<\/strong> (emission probability)\u3068\u547c\u3070\u308c\u3001\u3053\u308c\u3092 \\( (j,k)\\) \u6210\u5206\u306b\u3082\u3064\u884c\u5217 \\( B\\) \u3092<strong>\u51fa\u529b\u884c\u5217<\/strong> (emission matrix)\u3068\u547c\u3073\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u901a\u5e38\u306e\u30b5\u30a4\u30b3\u30ed\u3092 \\( s_1 \\) \u3068\u3059\u308b\u3068\u3001<\/p>\n\n\n\n<p>$$ b(s_1, o_1) = b(s_1, o_2) = b(s_1, o_3) = b(s_1, o_4)  = b(s_1, o_5)  = b(s_1, o_6) = \\frac{1}{6}$$<\/p>\n\n\n\n<p>\u3068\u306a\u308a\u3001\u56db\u4e94\u516d\u8cfd\u3092 \\( s_2 \\) \u3068\u3059\u308b\u3068<\/p>\n\n\n\n<p> $$ b(s_1, o_1) = b(s_1, o_2) = b(s_1, o_3) = 0,~~b(s_1, o_4)  = b(s_1, o_5)  = b(s_1, o_6) = \\frac{1}{3}$$ <\/p>\n\n\n\n<p>\u3068\u306a\u308a\u307e\u3059\u3002\u3057\u304c\u305f\u3063\u3066\u3001\u51fa\u529b\u78ba\u7387\u884c\u5217\u306f<\/p>\n\n\n\n<p>$$B = \\begin{bmatrix}1\/6&amp; 1\/6&amp;  1\/6&amp;  1\/6&amp;  1\/6&amp;  1\/6\\\\ 0&amp;0&amp;0&amp;1\/3&amp;1\/3&amp;1\/3\\end{bmatrix}$$<\/p>\n\n\n\n<p>\u3068\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\\( a(s_i, s_j) , b(s_j, o_k) \\) \u306f\u9069\u5b9c\u3001\\( a_{ij}, b_{jk} \\) \u3068\u7565\u8a18\u3059\u308b\u306e\u3067\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002  <\/p>\n\n\n\n<p>\u6700\u5f8c\u306b\u3001\u5927\u69fb\u73ed\u9577\u304c \\(1 \\) \u56de\u76ee\u306b\u30b5\u30a4\u30b3\u30ed \\( s_i \\) \u3092\u4f7f\u7528\u3059\u308b\u78ba\u7387\u3092 \\(\\pi_i \\) \u3067\u8868\u3057\u3001\u3053\u308c\u3089\u3092\u8981\u7d20\u306b\u3082\u3064\u30d9\u30af\u30c8\u30eb \\( \\boldsymbol{\\pi} = (\\pi_1,&#8230;,\\pi_M) \\) \u3092<strong>\u521d\u671f\u72b6\u614b\u78ba\u7387\u30d9\u30af\u30c8\u30eb<\/strong> (initial probability vector) \u3068\u547c\u3073\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3044\u307e\u898f\u5b9a\u3057\u305f\u9077\u79fb\u884c\u5217 \\(A\\)\u30fb\u51fa\u529b\u884c\u5217 \\( B \\)\u30fb\u521d\u671f\u72b6\u614b\u78ba\u7387\u30d9\u30af\u30c8\u30eb \\( \\boldsymbol{\\pi} \\) \u306fHMM\u3092\u898f\u5b9a\u3059\u308b\u30d1\u30e9\u30e1\u30fc\u30bf\u306a\u306e\u3067\u3001\u3053\u308c\u3089\u306e\u7d44\u3092 \\(\\boldsymbol{\\theta}= (A, B, \\boldsymbol{\\pi})  \\) \u3068\u8868\u3057\u3001<strong>HMM\u30d1\u30e9\u30e1\u30fc\u30bf<\/strong> ( \u3082\u3057\u304f\u306f\u5358\u306b\u30d1\u30e9\u30e1\u30fc\u30bf ) \u3068\u547c\u3076\u3053\u3068\u306b\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u6211\u3005\u304b\u3089\u306f\u3001\u5927\u69fb\u73ed\u9577\u304c\u3069\u306e\u30b5\u30a4\u30b3\u30ed\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u304b\u77e5\u308b\u8853\u306f\u3042\u308a\u307e\u305b\u3093\u3002\u3053\u306e\u3088\u3046\u306b\u3001&#8221;<strong>\u30de\u30eb\u30b3\u30d5\u904e\u7a0b<\/strong>&#8221; \u306b\u5f93\u3063\u3066\u3044\u308b\u30b5\u30a4\u30b3\u30ed\u306e\u72b6\u614b \\( x_i \\) \u304c\u89b3\u6e2c\u8005 (= \u8ced\u3051\u306e\u76f8\u624b) \u304b\u3089 &#8220;<strong>\u96a0\u308c\u3066\u3044\u308b&#8221; <\/strong>\u3053\u3068\u304c &#8220;<strong>\u96a0\u308c\u30de\u30eb\u30b3\u30d5&#8221;<\/strong> \u30e2\u30c7\u30eb\u3068\u3044\u3046\u540d\u306e\u7531\u6765\u3067\u3059\u3002<\/p>\n\n\n\n<p>\u307e\u305f\u3001\u96a0\u308c\u30de\u30eb\u30b3\u30d5\u30e2\u30c7\u30eb\u306f\u3001<strong>\u72b6\u614b\u5909\u6570\u304c\u96e2\u6563\u5024\u3067\u3042\u308b\u72b6\u614b\u7a7a\u9593\u30e2\u30c7\u30eb<\/strong>\u3068\u8a00\u3048\u307e\u3059\u3002\u89b3\u6e2c\u5024\u306f\u96e2\u6563\u30fb\u9023\u7d9a\u5024\u306e\u3069\u3061\u3089\u3067\u3082\u69cb\u3044\u307e\u305b\u3093\u304c\u3001\u4eca\u56de\u306f\u89b3\u6e2c\u5024\u5074\u3082\u96e2\u6563\u5024\u3067\u3042\u308b\u5834\u5408\u306b\u3064\u3044\u3066\u8b70\u8ad6\u3092\u9032\u3081\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-\u30a2\u30d9\u30ea\u30aa\u30b7\u30b9\u30c6\u30e0\u30ba-mathx wp-block-embed-\u30a2\u30d9\u30ea\u30aa\u30b7\u30b9\u30c6\u30e0\u30ba-mathx\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"HAwl3UIK54\"><a href=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/?p=605\">\u3010\u72b6\u614b\u7a7a\u9593\u30e2\u30c7\u30eb\u3011\u30ab\u30eb\u30de\u30f3\u30d5\u30a3\u30eb\u30bf\u3092 Python\u3067\u5b9f\u88c5\u3057\u3066\u307f\u305f<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8220;\u3010\u72b6\u614b\u7a7a\u9593\u30e2\u30c7\u30eb\u3011\u30ab\u30eb\u30de\u30f3\u30d5\u30a3\u30eb\u30bf\u3092 Python\u3067\u5b9f\u88c5\u3057\u3066\u307f\u305f&#8221; &#8212; \u30a2\u30d9\u30ea\u30aa\u30b7\u30b9\u30c6\u30e0\u30ba mathX\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/?p=605&#038;embed=true#?secret=LYYirRkzjO#?secret=HAwl3UIK54\" data-secret=\"HAwl3UIK54\" width=\"500\" height=\"282\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">2.1. \u5b66\u7fd2\u554f\u984c\uff1aLearning problem<\/h2>\n\n\n\n<p>\u3044\u307e\u6211\u3005\u306f\u3001\u5927\u69fb\u73ed\u9577\u304c\u4e00\u756a\u521d\u3081\u306b\u3069\u306e\u30b5\u30a4\u30b3\u30ed\u3092\u4f7f\u3046\u50be\u5411\u304c\u3042\u3063\u305f\u306e\u304b ( = \u521d\u671f\u72b6\u614b\u78ba\u7387\u30d9\u30af\u30c8\u30eb \\( \\boldsymbol{\\pi} \\) ) \u3001\u30b5\u30a4\u30b3\u30ed\u306e\u4f7f\u3044\u5206\u3051\u306b\u3069\u3093\u306a\u50be\u5411\u304c\u3042\u3063\u305f\u306e\u304b ( = \u9077\u79fb\u884c\u5217 \\( A \\) ) \u3001\u305d\u3057\u3066\u5404\u30b5\u30a4\u30b3\u30ed\u306f\u3069\u306e\u3088\u3046\u306a\u76ee\u304c\u51fa\u3084\u3059\u304b\u3063\u305f\u306e\u304b ( = \u51fa\u529b\u884c\u5217 \\( B \\) ) \u3001\u4f55\u3082\u77e5\u308a\u307e\u305b\u3093\u3002\u3044\u3064\u30a4\u30ab\u30b5\u30de\u304c\u884c\u308f\u308c\u3066\u3044\u305f\u304b\u8abf\u3079\u308b\u305f\u3081\u306b\u306f\u3001\u51fa\u76ee\u306e\u8a18\u9332\u3092\u57fa\u306b\u3057\u3066\u3001\u5927\u69fb\u73ed\u9577\u306e\u884c\u52d5\u30d1\u30bf\u30fc\u30f3 ( \\(A, \\boldsymbol{\\pi} \\) ) \u3084\u5404\u30b5\u30a4\u30b3\u30ed\u306e\u6027\u8cea ( \\(B\\) ) \u3092\u63a8\u6e2c\u3059\u308b\u3053\u3068\u304b\u3089\u59cb\u3081\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002\u3059\u306a\u308f\u3061\u3001\u5f97\u3089\u308c\u3066\u3044\u308b\u89b3\u6e2c\u7d50\u679c \\(y_{1:T}\\) \u304b\u3089\u672a\u77e5\u306e\u30d1\u30e9\u30e1\u30fc\u30bf \\(  \\boldsymbol{\\theta} = (A,B,\\boldsymbol{\\pi}) \\) \u3092\u63a8\u6e2c\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b\u3068\u3044\u3046\u3053\u3068\u3067\u3059\u3002\u3053\u306e\u3088\u3046\u306a\u554f\u984c\u3092<strong>\u5b66\u7fd2\u554f\u984c<\/strong>\u3068\u547c\u3073\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u3055\u3066\u3001\u89b3\u6e2c\u3067\u304d\u306a\u3044\u5909\u6570 ( = \u6f5c\u5728\u5909\u6570 ) \u3092\u542b\u3080\u3088\u3046\u306a\u30e2\u30c7\u30eb\u306e\u672a\u77e5\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u6c42\u3081\u308b\u306b\u306f\u3001<strong>EM\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong>\u304c\u3088\u304f\u4f7f\u308f\u308c\u307e\u3059\u3002\u4eca\u56de\u306f\u3001EM\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306eHMM\u30d0\u30fc\u30b8\u30e7\u30f3\u3067\u3042\u308b<strong>Baum-Welch\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong>\u3092\u7528\u3044\u3066\u3001\u672a\u77e5\u306e\u30d1\u30e9\u30e1\u30fc\u30bf \\(  \\boldsymbol{\\theta} = (A,B,\\boldsymbol{\\pi}) \\) \u3092\u63a8\u5b9a\u3057\u307e\u3059\u3002(EM\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306e\u6982\u8981\u3084Baum-Welch\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306e\u5c0e\u51fa\u306f\u5272\u611b\u3057\u307e\u3059\u3002)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>\u25a0 Baum-Welch \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong><\/h4>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>\u521d\u671f\u5316<\/strong><br>\u3000\u30d1\u30e9\u30e1\u30fc\u30bf \\( A, B, \\boldsymbol{\\pi} \\) \u306b\u9069\u5f53\u306a\u521d\u671f\u5024\u3092\u8a2d\u5b9a<\/li><li><strong>\u53ce\u675f\u3059\u308b\u307e\u3067\u4ee5\u4e0b\u3092\u7e70\u308a\u8fd4\u3059<\/strong><ol><li><strong>E\u30b9\u30c6\u30c3\u30d7<\/strong>\uff1a\u4e0b\u8a18\u306e\u5024\u3092\u8a08\u7b97\u3059\u308b<br>\\(~~~ \\gamma_t(j) := P(x_t = s_j | y_{1:T}),~~~\\forall t, j \\)<br>\\(~~~ \\xi_t(i, j) := P(x_t = s_i, x_t = s_j | y_{1:T}),~~~\\forall t, i,  j \\)<\/li><li><strong>M\u30b9\u30c6\u30c3\u30d7<\/strong>\uff1a\u4e0b\u8a18\u306e\u5024\u3092\u8a08\u7b97\u3059\u308b<br>\\( ~~~\\hat{a}_{i,j} := \\sum_{t=1}^{T-1} \\xi_t(i, j) \\bigl\/ \\sum_{t=1}^{T-1} \\gamma_t(i) \\)<br>\\( ~~~\\hat{b}_{j,k} := \\sum_{t=1}^{T} \\delta(y_t, o_k) \\gamma_t(j) \\bigl\/ \\sum_{t=1}^{T} \\gamma_t(j) \\)<br>\\(~~~\\hat{\\pi}_i := \\gamma_1(i) \\)<\/li><li><strong>\u30d1\u30e9\u30e1\u30fc\u30bf\u66f4\u65b0<\/strong><br>\\(~~~a_{i,j} \\leftarrow \\hat{a}_{i,j}, ~~b_{j,k}\\leftarrow \\hat{b}_{j,k},~~ \\pi_i\\leftarrow \\hat{\\pi}_i\\)<br><\/li><\/ol><\/li><\/ol>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<p>\u3053\u306e\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u901a\u308a\u8a08\u7b97\u3057\u3066\u3044\u3051\u3070\u3001\u30d1\u30e9\u30e1\u30fc\u30bf\u306e\u63a8\u5b9a\u5024\u304c\u5f97\u3089\u308c\u307e\u3059\u3002\u3057\u304b\u3057\u3001E\u30b9\u30c6\u30c3\u30d7\u3067\u6c42\u3081\u308b\u5fc5\u8981\u304c\u3042\u308b \\( \\gamma_t(j), \\xi_t(i,j) \\) \u304c\u89e3\u6790\u7684\u306b\u8868\u73fe\u3055\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u3001\u3053\u306e\u307e\u307e\u3067\u306f\u8a08\u7b97\u3067\u304d\u305a\u4e0d\u5b8c\u5168\u3067\u3059\u3002<\/p>\n\n\n\n<p>\\( \\gamma_t(j), \\xi_t(i,j) \\) \u3092\u89e3\u6790\u7684\u306b\u8a08\u7b97\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\uff12\u3064\u306e\u78ba\u7387\u3092\u5b9a\u3081\u307e\u3059\u3002<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u524d\u5411\u304d\u78ba\u7387\uff1a\\( \\alpha_t(j) := P(x_t = s_j , y_{1:t}) \\)<\/li><li>\u5f8c\u308d\u5411\u304d\u78ba\u7387\uff1a\\( \\beta_t(j) := P(y_{t+1:T}|x_t = s_j) \\)<\/li><\/ul>\n\n\n\n<p>\\( \\gamma_t(j), \\xi_t(i,j) \\) \u3092\u5f0f\u5909\u5f62\u3059\u308b\u3068\u3001\u4eca\u307b\u3069\u5b9a\u7fa9\u3057\u305f\u524d\u5411\u304d\u78ba\u7387\u3068\u5f8c\u308d\u5411\u304d\u78ba\u7387 (\u305d\u308c\u3068\u9077\u79fb\u78ba\u7387\u3001\u51fa\u529b\u78ba\u7387) \u3067\u8868\u73fe\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>$$<br>\\begin{align}<br>\\gamma_t(j) &amp;= P(x_t=s_j | y_{1:T}) \\\\<br>&amp;= \\frac{P(x_t = s_j, y_{1:T})}{P(y_{1:T})} \\\\<br>&amp;= \\frac{P(x_t = s_j, y_{1:t}) P(y_{t+1:T} | x_t=s_j)}{\\sum_{i=1}^M P(x_T=s_i, y_{1:T})} \\\\<br>&amp;= \\frac{\\alpha_t(j) \\beta_t(j)}{\\sum_{i=1}^M \\alpha_T(i)} \\\\<br>\\\\<br>\\xi_t(i,j) &amp;= P(x_t = s_i, x_{t+1} = s_j | y_{1:T}) \\\\<br> &amp;= \\frac{P(x_t = s_i,  x_{t+1}=s_j ,y_{1:T})}{P(y_{1:T})} \\\\ <br>&amp;= \\frac{P(x_t = s_i, y_{1:t})  P( x_{t+1}=s_j  | x_t=s_i)  P(y_{t+1} | x_{t+1}=s_j)  P(y_{t+2:T} | x_{t+1}=s_j)  }{\\sum_{i=1}^M P(x_T=s_i, y_{1:T})} \\\\ <br>&amp;= \\frac{\\alpha_t(i) a_{ij} b(s_j, y_{t+1})\\beta_{t+1}(j)}{\\sum_{i=1}^M \\alpha_T(i)} \\\\ <br>\\end{align}<br>$$<\/p>\n\n\n\n<p>\u3068\u3044\u3046\u3053\u3068\u3067\u3001\u5929\u4e0b\u308a\u7684\u3067\u306f\u3042\u308a\u307e\u3057\u305f\u304c\u3001\\( \\gamma_t(j), \\xi_t(i,j) \\) \u3092\u5f97\u308b\u306b\u306f\u3001\u524d\u5411\u304d\u78ba\u7387\u3068\u5f8c\u308d\u5411\u304d\u78ba\u7387\u304c\u6c42\u3081\u308c\u3070\u3088\u3044\u3053\u3068\u304c\u5206\u304b\u308a\u307e\u3057\u305f\u3002\u3053\u306e\u524d\u5411\u304d\u78ba\u7387\u3068\u5f8c\u308d\u5411\u304d\u78ba\u7387\u3092\u8a08\u7b97\u3059\u308b\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3092\u305d\u308c\u305e\u308c <strong>Forward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong>\u3001<strong>Backward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong> \u3068\u3044\u3044\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u3001Baum-Welch\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306f\u5225\u540d <strong>Forward-Backward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong> \u3068\u3082\u547c\u3070\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>\u25a0 Forward \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong><\/h4>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>\u521d\u671f\u5316<\/strong><br>\\(~~~ \\alpha_1(i) = \\pi_i b(s_i, y_1),~~~\\forall i =1,&#8230;,M \\)<\/li><li><strong>\u53cd\u5fa9<\/strong>\uff1a\\(t=2 \\) to \\( T \\)<br>\\(~~~ \\alpha_t(j) = \\Bigl(\\sum_{i=1}^M a_{ij}\\alpha_{t-1}(i)\\Bigl)b(s_j, y_t),~~~\\forall j =1,&#8230;,M \\)<\/li><\/ol>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<p>\u53cd\u5fa9\u51e6\u7406\u3067\u7528\u3044\u3089\u308c\u308b\u6f38\u5316\u5f0f\u306e\u5c0e\u51fa\u306f\u8a18\u3057\u307e\u305b\u3093\u304c\u3001\u4e0b\u56f3\u306e\u30c8\u30ec\u30ea\u30b9\u30c0\u30a4\u30a2\u30b0\u30e9\u30e0 ( = \u72b6\u614b\u306e\u9077\u79fb\u306e\u69d8\u5b50\u3092\u6642\u9593\u3092\u8ffd\u3063\u3066\u898b\u3084\u3059\u304f\u3057\u305f\u3082\u306e ) \u304b\u3089\u76f4\u89b3\u7684\u7406\u89e3\u304c\u5f97\u3089\u308c\u308b\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"836\" height=\"519\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/wp-content\/uploads\/2021\/12\/image-26.png\" alt=\"\" class=\"wp-image-1068\"\/><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>\u25a0 Backward \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong><\/h4>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>\u521d\u671f\u5316<\/strong><br>\\(~~~ \\beta_T(i) = 1,~~~\\forall i = 1,&#8230;.,M \\)<\/li><li><strong>\u53cd\u5fa9<\/strong>\uff1a\\(t=T-1 \\) to \\( 1 \\)<br>\\(~~~ \\beta_t(i) = \\sum_{j=1}^M a_{ij}\\beta_{t+1}(j)b(s_j, y_{t+1}),~~~\\forall i =1,&#8230;,M \\)<br><\/li><\/ol>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<p>Backward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3082\u53cd\u5fa9\u51e6\u7406\u3067\u7528\u3044\u3089\u308c\u308b\u6f38\u5316\u5f0f\u90e8\u5206\u3082\u5148\u7a0b\u3068\u540c\u3058\u3088\u3046\u306b\u3001\u30c8\u30ec\u30ea\u30b9\u30c0\u30a4\u30a2\u30b0\u30e9\u30e0\u3067\u76f4\u89b3\u7684\u306b\u7406\u89e3\u3067\u304d\u308b\u3068\u601d\u3044\u307e\u3059\u3002\u30c8\u30ec\u30ea\u30b9\u30c0\u30a4\u30a2\u30b0\u30e9\u30e0\u3092\u898b\u6bd4\u3079\u308b\u3068\u4e00\u76ee\u77ad\u7136\u3067\u3059\u304c\u3001\u524d\u5411\u304d\u78ba\u7387\u306f\u6642\u9593\u306b\u3064\u3044\u3066\u3001<strong>\u201d\u524d\u5411\u304d\u201d<\/strong> \u306b\u8a08\u7b97\u3055\u308c\u3066\u3044\u304f\u306e\u306b\u5bfe\u3057\u3066\u3001\u5f8c\u308d\u5411\u304d\u78ba\u7387\u306f <strong>\u201d\u5f8c\u308d\u5411\u304d\u201d<\/strong> \u306b\u8a08\u7b97\u3055\u308c\u3066\u3044\u304d\u307e\u3059\u3002\u3053\u308c\u304c\u540d\u524d\u306e\u7531\u6765\u3067\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"833\" height=\"521\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/wp-content\/uploads\/2021\/12\/image-27.png\" alt=\"\" class=\"wp-image-1069\"\/><\/figure>\n\n\n\n<p>\u305d\u308c\u3067\u306f\u3001Baum-Welch\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306e\u4e0d\u5b8c\u5168\u3060\u3063\u305f\u90e8\u5206\u3092\u4fee\u6b63\u3057\u305f\u3082\u306e\u3092\u8a18\u3057\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>\u25a0 Baum-Welch \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong><\/h4>\n\n\n\n<ol class=\"wp-block-list\"><li><strong>\u521d\u671f\u5316<\/strong><br>\u3000\u30d1\u30e9\u30e1\u30fc\u30bf \\( A, B, \\boldsymbol{\\pi} \\) \u306b\u9069\u5f53\u306a\u521d\u671f\u5024\u3092\u8a2d\u5b9a<\/li><li><strong>\u53ce\u675f\u3059\u308b\u307e\u3067\u4ee5\u4e0b\u3092\u7e70\u308a\u8fd4\u3059<\/strong><ol><li><strong>E\u30b9\u30c6\u30c3\u30d7<\/strong>\uff1a<ol><li><strong>Forward \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong>\uff1a\\(  \\alpha_t(j),~~~\\forall t, j \\)\u3000\u3092\u8a08\u7b97<\/li><li><strong>Backward \u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong>\uff1a\\(  \\beta_t(j),~~~\\forall t, j \\)\u3000\u3092\u8a08\u7b97<\/li><li><strong>\u4e0b\u8a18\u306e\u5024\u3092\u8a08\u7b97\u3059\u308b<\/strong><br>\\(~~~ \\gamma_t(j) :=\\alpha_t(j) \\beta_t(j) \\bigl\/ \\sum_{i=1}^M \\alpha_T(i) ,~~~\\forall t, j \\)<br>\\(~~~ \\xi_t(i, j) := \\alpha_t(i) a_{ij} b(s_j, y_{t+1}) \\beta_{t+1}(j) \\bigl \/ \\sum_{i=1}^M \\alpha_T(i),~~~\\forall t, i,  j \\)<\/li><\/ol><\/li><li><strong>M\u30b9\u30c6\u30c3\u30d7<\/strong>\uff1a\u4e0b\u8a18\u306e\u5024\u3092\u8a08\u7b97\u3059\u308b<br>\\( ~~~\\hat{a}_{i,j} :=  \\sum_{t=1}^{T-1} \\xi_t(i, j) \\bigl\/ \\sum_{t=1}^{T-1} \\gamma_t(i) \\)<br>\\( ~~~\\hat{b}_{j,k} := \\sum_{t=1}^{T} \\delta(y_t, o_k) \\gamma_t(j) \\bigl\/ \\sum_{t=1}^{T} \\gamma_t(j) \\)<br>\\(~~~\\hat{\\pi}_i := \\gamma_1(i) \\)<\/li><li><strong>\u30d1\u30e9\u30e1\u30fc\u30bf\u66f4\u65b0<\/strong><br>\\(~~~a_{i,j} \\leftarrow \\hat{a}_{i,j}, ~~b_{j,k}\\leftarrow \\hat{b}_{j,k},~~ \\pi_i\\leftarrow \\hat{\\pi}_i\\)<br><\/li><\/ol><\/li><\/ol>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity is-style-wide\"\/>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">2.2. \u8a55\u4fa1\u554f\u984c\uff1aEvaluation problem<\/h2>\n\n\n\n<p>Forward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0 \u3068 Backward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0 \u306b\u95a2\u9023\u3057\u305f\u3001\u88dc\u8db3\u3092\u5165\u308c\u3066\u304a\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u73fe\u8c61\u306b\u5bfe\u3059\u308b\u30e2\u30c7\u30eb\u306e\u8aac\u660e\u529b\u3092 &#8220;\u8a55\u4fa1&#8221; \u3059\u308b\u306b\u306f\u3001AIC (\u8d64\u6c60\u60c5\u5831\u91cf\u57fa\u6e96) \u3084BIC (\u30d9\u30a4\u30ba\u60c5\u5831\u91cf\u57fa\u6e96) \u306a\u3069\u306e\u8a55\u4fa1\u57fa\u6e96\u3092\u7528\u3044\u307e\u3059\u3002\u3069\u306e\u8a55\u4fa1\u57fa\u6e96\u3092\u4f7f\u7528\u3059\u308b\u306b\u3057\u3066\u3082\u3001\u5927\u524d\u63d0\u3068\u3057\u3066\u5c24\u5ea6\u304c\u5f97\u3089\u308c\u3066\u3044\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u3057\u305f\u304c\u3063\u3066\u3001\u300c\u30d1\u30e9\u30e1\u30fc\u30bf\u304c\u4e0e\u3048\u3089\u308c\u305f\u4e0b\u3067\u3001\u5c24\u5ea6\u3092\u6c42\u3081\u308b\u554f\u984c\u300d\u306f<strong> \u8a55\u4fa1\u554f\u984c<\/strong> \u3068\u547c\u3070\u308c\u307e\u3059\u3002\u4e0a\u8ff0\u3057\u305f\uff12\u3064\u306e\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306f\u524d\u5411\u304d\u78ba\u7387\u3068\u5f8c\u308d\u5411\u304d\u78ba\u7387\u3092\u6c42\u3081\u308b\u305f\u3081\u306e\u624b\u6cd5\u3068\u3057\u3066\u8aac\u660e\u3057\u3066\u304d\u307e\u3057\u305f\u304c\u3001\u4ed6\u65b9\u3067\u3053\u306e\u8a55\u4fa1\u554f\u984c\u3092\u89e3\u6c7a\u3059\u308b\u305f\u3081\u306e\u624b\u6cd5\u3067\u3042\u308b\u3068\u3082\u8a00\u3048\u308b\u308f\u3051\u3067\u3059\u3002\u5b9f\u969b\u3001\u524d\u5411\u304d\u78ba\u7387\u3092\u7528\u3044\u3066\u3001<\/p>\n\n\n\n<p>$$<br>\\begin{align*}<br>P(y_{1:T}) &amp;= \\sum_{i=1}^M \\alpha_T(i) \\\\<br>\\end{align*}<br>$$<\/p>\n\n\n\n<p>\u3082\u3057\u304f\u306f\u3001\u5f8c\u308d\u5411\u304d\u78ba\u7387\u3092\u7528\u3044\u3066\u3001<\/p>\n\n\n\n<p>$$  P(y_{1:T}) = \\sum_{i=1}^M \\pi_i b(s_i, y_1) \\beta_1(i) $$<\/p>\n\n\n\n<p>\u3092\u8a08\u7b97\u3059\u308b\u3053\u3068\u3067\u5c24\u5ea6\u3092\u6c42\u3081\u3089\u308c\u307e\u3059\u3002<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">2.3. \u5fa9\u53f7\u5316\u554f\u984c\uff1aDecoding problem<\/h2>\n\n\n\n<p>\u3055\u3066\u3001\u6211\u3005\u306fBaum-Welch\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3092\u7528\u3044\u3066\u3001<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u5927\u69fb\u73ed\u9577\u304c\u4e00\u756a\u521d\u3081\u306b\u9078\u3076\u30b5\u30a4\u30b3\u30ed\u306e\u50be\u5411 ( = \u521d\u671f\u72b6\u614b\u78ba\u7387\u30d9\u30af\u30c8\u30eb \\( \\boldsymbol{\\pi} \\) )<\/li><li>\u5927\u69fb\u73ed\u9577\u304c\u30b5\u30a4\u30b3\u30ed\u3092\u4f7f\u3044\u5206\u3051\u308b\u50be\u5411 ( = \u9077\u79fb\u884c\u5217 \\( A \\) ) <\/li><li>\u5404\u30b5\u30a4\u30b3\u30ed\u306e\u51fa\u76ee\u306e\u50be\u5411 ( = \u51fa\u529b\u884c\u5217 \\( B \\) ) <\/li><\/ul>\n\n\n\n<p>\u3092\u63a8\u5b9a\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3057\u305f\u3002\u3053\u308c\u3089\u306e\u60c5\u5831\u3068\u51fa\u76ee\u306e\u7d50\u679c\u3092\u57fa\u306b\u3001\u3044\u3064\u30a4\u30ab\u30b5\u30de\u304c\u884c\u308f\u308c\u3066\u3044\u305f\u306e\u304b\u3092\u66b4\u3044\u3066\u3044\u304d\u307e\u3059\u3002\u3088\u308a\u5177\u4f53\u7684\u306b\u3044\u3046\u3068\u3001\u300c\u5927\u69fb\u73ed\u9577\u304c\u53d6\u308a\u5f97\u305f\u30b5\u30a4\u30b3\u30ed\u306e\u9078\u629e\u9806\u5e8f\u306e\u3046\u3061\u3001\u6700\u3082\u53ef\u80fd\u6027\u304c\u9ad8\u3044\u9806\u5e8f\u3092\u898b\u3064\u3051\u51fa\u3059\u300d\u3068\u3044\u3046\u3053\u3068\u3067\u3059\u3002<\/p>\n\n\n\n<p>\u3059\u306a\u308f\u3061\u3001\u89b3\u6e2c\u7d50\u679c \\( y_{1:T} \\) \u3068\u30d1\u30e9\u30e1\u30fc\u30bf \\( \\boldsymbol{\\theta} = ( A, B, \\boldsymbol{\\pi}) \\) \u304c\u4e0e\u3048\u3089\u308c\u305f\u4e0b\u3067\u3001\u78ba\u7387 \\( P(y_{1:T} | x_{1:T} ) \\) \u3092\u6700\u5927\u306b\u3059\u308b\u3088\u3046\u306a\u30d1\u30b9 \\(x_{1:T} \\) \u3092\u6c42\u3081\u308b\u554f\u984c\u3068\u8a00\u3048\u307e\u3059\u3002\u3053\u306e\u554f\u984c\u306f<strong>\u5fa9\u53f7\u5316\u554f\u984c<\/strong>\u3068\u3044\u3044\u3001\u5fa9\u53f7\u5316\u554f\u984c\u3092\u52b9\u7387\u7684\u306b\u89e3\u304f\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3068\u3057\u3066\u3001<strong>Viterbi\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/strong> \u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>Viterbi\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3067\u306f\u307e\u305a\u3001\u300c\u89b3\u6e2c \\( y_{1:t}\\) \u304c\u5f97\u3089\u308c\u3001\u304b\u3064\u6642\u523b \\( t \\) \u306b\u72b6\u614b \\( s_i \\) \u306b\u9077\u79fb\u3059\u308b\u6700\u3082\u9ad8\u3044\u78ba\u7387 \u300d<\/p>\n\n\n\n<p>$$<br>\\omega_t(i) = \\underset{x_{1:t-1}}{\\max} p(x_{1:t-1}, x_t = s_i, y_{1:t})<br>$$<\/p>\n\n\n\n<p>\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002\u3053\u308c\u306f\u4ee5\u4e0b\u306e\u5f0f\u3092\u7528\u3044\u3066\u3001\u52d5\u7684\u8a08\u753b\u6cd5\u306e\u8981\u9818\u3067\u518d\u5e30\u7684\u306b\u6c42\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n\n\n\n<p>$$ \\omega_{t+1}(j) = \\underset{i=1,&#8230;,M}{\\max}\\Bigl(\\omega_t(i)a_{ij}\\Bigl) \\cdot b(s_j, y_{t+1})  $$<\/p>\n\n\n\n<p>\u4e0b\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e\u8d64\u7dda\u304c\u5f15\u304b\u308c\u3066\u3044\u304f\u69d8\u5b50\u304c\u3001\u5404\u56de\u306e\u5404\u72b6\u614b \\( \\omega_{t}(j) \\) \u3092\u518d\u5e30\u7684\u306b\u6c42\u3081\u3066\u3044\u304f\u30a4\u30e1\u30fc\u30b8\u3092\u8868\u3057\u3066\u3044\u307e\u3059\u3002 \u3053\u306e\u3088\u3046\u306b\u3001\u5404\u56de\u306e\u5404\u72b6\u614b\u306b\u5bfe\u3057\u3066\u3001\u305d\u3053\u306b\u9077\u79fb\u3059\u308b\u6700\u5927\u78ba\u7387\u30d1\u30b9 (\u8d64\u7dda) \u3092<strong>\u751f\u5b58\u8005\u30d1\u30b9 <\/strong>( survivor path ) \u3068\u8a00\u3044\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u6642\u523b \\(t=3 \\) \u306b\u72b6\u614b \\(s_3\\) \u306b\u9077\u79fb\u3059\u308b\u751f\u5b58\u8005\u30d1\u30b9\u306f\u3001\\( \\underset{(t=1)}{s_3} \\rightarrow  \\underset{(t=2)} {s_1} \\rightarrow  \\underset{(t=3)} {s_3} \\) \u3068\u306a\u308a\u307e\u3059\u3002 <\/p>\n\n\n\n<p>\u307e\u305f\u3001\u3069\u306e\u7d4c\u8def\u3092\u901a\u3063\u3066\u304d\u305f\u304b\u3092\u8a18\u61b6\u3057\u3066\u304a\u304f\u305f\u3081\u306b\u3001\u5404\u751f\u5b58\u8005\u30d1\u30b9\u306e\u30b4\u30fc\u30eb\u306e\u4e00\u3064\u524d\u306e\u72b6\u614b\u3092\u4fdd\u5b58\u3057\u3066\u304a\u304d\u307e\u3059\u3002\u3059\u306a\u308f\u3061\u3001<\/p>\n\n\n\n<p>$$ \\sigma_{t+1}(j)  = \\underset{i=1,&#8230;,M}{\\arg\\max} \\Bigl( \\omega_t(i)a_{ij} \\Bigl) $$<\/p>\n\n\n\n<p>\u3092\u53d6\u5f97\u3057\u3066\u304a\u304f\u3068\u3044\u3046\u3053\u3068\u3067\u3059\u3002\u4f8b\u3048\u3070\u3001\u4e0b\u306e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306e \\( t=2\\) \u56de\u76ee\u306b\u304a\u3044\u3066\u3001\u72b6\u614b \\(s_1\\) \u306b\u9077\u79fb\u3059\u308b\u751f\u5b58\u8005\u30d1\u30b9\u306e\u30b4\u30fc\u30eb\u306e\u4e00\u3064\u524d\u306e\u72b6\u614b ( \\(t=1\\) \u56de\u76ee\u306e\u72b6\u614b ) \u306f \\(s_3 \\) \u3067\u3059\u3002\u3057\u304c\u305f\u3063\u3066\u3001\\( \\sigma_2(1) = 3 \\) \u3068\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"853\" height=\"480\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/wp-content\/uploads\/2021\/12\/Viterbi1.gif\" alt=\"\" class=\"wp-image-1159\"\/><\/figure>\n\n\n\n<p>\\( T\\) \u56de\u76ee\u307e\u3067\u306e\u518d\u5e30\u51e6\u7406\u3092\u7d42\u3048\u305f\u3089\u3001<\/p>\n\n\n\n<p>$$ q_T = \\underset{i=1,&#8230;,M}{\\arg\\max} \\Bigl( \\omega_T(i) \\Bigl)  $$<\/p>\n\n\n\n<p>\u3092\u6c42\u3081\u307e\u3059\u3002\u3064\u307e\u308a\u3001\\( T \\) \u56de\u76ee\u306b\u6700\u3082\u5c24\u3082\u3089\u3057\u304b\u3063\u305f\u72b6\u614b\u3092\u53d6\u5f97\u3059\u308b\u308f\u3051\u3067\u3059\u3002\u305d\u3057\u3066\u3001\\(T\\) \u56de\u76ee\u306b\u304a\u3051\u308b\u6700\u3082\u5c24\u3082\u3089\u3057\u3044\u72b6\u614b\u304c\u5206\u304b\u308c\u3070\u3001\u305d\u306e\u751f\u5b58\u8005\u30d1\u30b9\u304c\u6700\u3082\u5c24\u3082\u3089\u3057\u3044\u30d1\u30b9\u3068\u306a\u308b\u308f\u3051\u3067\u3059\u3002\u3055\u304d\u307b\u3069\u3001\u751f\u5b58\u8005\u30d1\u30b9\u306e\u76f4\u524d\u72b6\u614b\u306e\u60c5\u5831\u3092 \\( \\sigma_{t}(j) \\) \u306b\u683c\u7d0d\u3057\u3066\u304a\u3044\u305f\u306e\u3067\u3001<\/p>\n\n\n\n<p>$$ q_t = \\sigma_{t+1}(q_{t+1}) $$<\/p>\n\n\n\n<p>\u3092\u518d\u5e30\u7684\u306b\u7528\u3044\u3066\u3001\u76ee\u7684\u306e\u30d1\u30b9\u3092\u5fa9\u5143\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u3053\u306e\u3088\u3046\u306b\u5f97\u3089\u308c\u305f\u6700\u3082\u5c24\u3082\u3089\u3057\u3044\u7d4c\u8def\u306f<strong> Viterbi\u30d1\u30b9<\/strong> (Viterbi path) \u3068\u547c\u3070\u308c\u307e\u3059\u3002\u3053\u3061\u3089\u306e\u51e6\u7406\u3082\u30a4\u30e1\u30fc\u30b8\u3092\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u306b\u3057\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"853\" height=\"480\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/wp-content\/uploads\/2021\/12\/Viterbi2.gif\" alt=\"\" class=\"wp-image-1160\"\/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h1 class=\"wp-block-heading\">3. Python\u306b\u3088\u308b\u5b9f\u88c5<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">\u30e9\u30a4\u30d6\u30e9\u30ea<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>import numpy as np<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Forward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>def forward(observations,\n            transition_matrix,\n            emission_matrix,\n            initial_distribution):\n    n_timesteps = observations.shape&#91;0]\n    n_states = transition_matrix.shape&#91;0]\n    forward_prob = np.zeros((n_timesteps, n_states))\n    \n    forward_prob&#91;0, :] = initial_distribution * emission_matrix&#91;:, observations&#91;0]]\n    \n    for t in range(1, n_timesteps):\n        for j in range(n_states):\n            forward_prob&#91;t, j] = (\n                forward_prob&#91;t-1]\n                @ transition_matrix&#91;:, j]\n                * emission_matrix&#91;j, observations&#91;t]]\n            )\n            \n    return forward_prob<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Backward\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>def backward(observations,\n             transition_matrix,\n             emission_matrix):\n    n_timesteps = observations.shape&#91;0]\n    n_states = transition_matrix.shape&#91;0]\n    backward_prob = np.zeros((n_timesteps, n_states))\n    \n    backward_prob&#91;n_timesteps-1] = np.ones((n_states))\n    \n    for t in reversed(range(0, n_timesteps-1)):\n        for j in range(n_states):\n            backward_prob&#91;t, j] = (\n                (backward_prob&#91;t+1]\n                 * emission_matrix&#91;:, observations&#91;t+1]]\n                ) @ transition_matrix&#91;j, :]\n            )\n            \n    return backward_prob<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Baum-Welch\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>def baum_welch(observations,\n               transition_matrix,\n               emission_matrix,\n               initial_distribution,\n               n_iter=100):\n    n_timesteps = observations.shape&#91;0]\n    n_states = transition_matrix.shape&#91;0]\n    \n    for n in range(n_iter):\n        # E-step\n        forward_prob = forward(\n            observations,\n            transition_matrix,\n            emission_matrix,\n            initial_distribution\n        )\n        backward_prob = backward(\n            observations,\n            transition_matrix,\n            emission_matrix\n        )\n        \n        xi = np.zeros((n_states, n_states, n_timesteps-1))\n        \n        for t in range(n_timesteps-1):\n            xi_denominator = (\n                forward_prob&#91;t, :].T\n                @ transition_matrix\n                * emission_matrix&#91;:, observations&#91;t+1]].T\n                @ backward_prob&#91;t+1, :]\n            )\n            for i in range(n_states):\n                xi_numerator = (\n                    forward_prob&#91;t, i]\n                    * transition_matrix&#91;i, :]\n                    * emission_matrix&#91;:, observations&#91;t+1]].T\n                    * backward_prob&#91;t+1, :].T\n                )\n                xi&#91;i, :, t] = xi_numerator \/ xi_denominator\n                \n        gamma = np.sum(xi, axis=1)\n        \n        # M-step\n        transition_matrix = np.sum(xi, axis=2) \/ np.sum(gamma, axis=1).reshape((-1, 1))\n    \n        gamma = np.hstack((gamma, np.sum(xi&#91;:, :, n_timesteps-2], axis=0).reshape((-1, 1))))\n        n_symbols = emission_matrix.shape&#91;1]\n        denominator = np.sum(gamma, axis=1)\n        \n        for i in range(n_symbols):\n            emission_matrix&#91;:, i] = np.sum(gamma&#91;:, observations == i], axis=1)\n \n        emission_matrix = np.divide(emission_matrix, denominator.reshape((-1, 1)))\n \n    return (transition_matrix, emission_matrix)<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Viterbi\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>def viterbi(observations,\n            transition_matrix,\n            emission_matrix,\n            initial_distribution):\n    n_timesteps = observations.shape&#91;0]\n    n_states = transition_matrix.shape&#91;0]\n    \n    omega = np.zeros((n_timesteps, n_states))\n    omega&#91;0, :] = np.log(initial_distribution * emission_matrix&#91;:, observations&#91;0]])\n \n    prev = np.zeros((n_timesteps-1, n_states))\n \n    for t in range(1, n_timesteps):\n        for j in range(n_states):\n            prob = (\n                omega&#91;t-1] \n                + np.log(transition_matrix&#91;:, j])\n                + np.log(emission_matrix&#91;j, observations&#91;t]])\n            )\n            prev&#91;t-1, j] = np.argmax(prob)\n            omega&#91;t, j] = np.max(prob)\n \n    viterbi_path = np.zeros(n_timesteps)\n    \n    last_state = np.argmax(omega&#91;n_timesteps-1, :])\n    viterbi_path&#91;n_timesteps-1] = last_state\n    \n    for t in reversed(range(0, n_timesteps-1)):\n        viterbi_path&#91;t] = prev&#91;t, int(last_state)]\n        last_state = prev&#91;t, int(last_state)]\n \n    return viterbi_path<\/code><\/pre>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h1 class=\"wp-block-heading\">4. \u5927\u69fb\u73ed\u9577\u3092\u6210\u6557\u3057\u3066\u307f\u305f<\/h1>\n\n\n\n<p>\u771f\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u3092<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>\u9077\u79fb\u884c\u5217 \\( A= \\begin{bmatrix}0.99 &amp; 0.01 \\\\ 0.05 &amp; 0.95\\end{bmatrix}\\)<\/li><li>\u51fa\u529b\u884c\u5217 \\( B= \\begin{bmatrix}1\/6 &amp; 1\/6&amp; 1\/6&amp; 1\/6&amp; 1\/6&amp; 1\/6 \\\\ 0 &amp; 0&amp; 0&amp; 1\/3&amp; 1\/3&amp; 1\/3\\end{bmatrix}\\)<\/li><li>\u521d\u671f\u72b6\u614b\u78ba\u7387\u30d9\u30af\u30c8\u30eb \\( \\boldsymbol{\\pi}= \\begin{bmatrix}1\\\\0 \\end{bmatrix}\\)<\/li><\/ul>\n\n\n\n<p>\u3068\u3057\u3066\u3001\u30b5\u30a4\u30b3\u30ed\u3092300\u56de\u632f\u308a\u3001\u72b6\u614b\u9077\u79fb\u306e\u30d1\u30b9\u3068\u51fa\u76ee\u306e\u89b3\u6e2c\u5024\u3092\u5f97\u307e\u3057\u305f\u3002\u4e0b\u56f3\u306f\u771f\u306e\u72b6\u614b\u9077\u79fb\u306e\u69d8\u5b50\u3067\u3059\u3002\u7dd1\u304c\u901a\u5e38\u306e\u30b5\u30a4\u30b3\u30ed\u3092\u4f7f\u7528\u3057\u3066\u3044\u305f\u671f\u9593\u3001\u8d64\u304c\u56db\u4e94\u516d\u8cfd\u3092\u4f7f\u7528\u3057\u3066\u3044\u305f\u671f\u9593\u3067\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1153\" height=\"273\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/wp-content\/uploads\/2021\/12\/image-35.png\" alt=\"\" class=\"wp-image-1204\"\/><\/figure>\n\n\n\n<p>\u89b3\u6e2c\u5024\u3092\u57fa\u306b\u63a8\u5b9a\u3057\u305fViterbi\u30d1\u30b9\u304c\u4e0b\u56f3\u3067\u3059\u3002\u6982\u306d\u7684\u4e2d\u3055\u305b\u308b\u3053\u3068\u304c\u3067\u304d\u3066\u3044\u307e\u3059\u3002\u9752\u7dda\u306f\u3001\u300c\u56db\u4e94\u516d\u8cfd\u304c\u4f7f\u7528\u3055\u308c\u3066\u3044\u308b\u300d\u4e8b\u5f8c\u78ba\u7387\u3092\u8868\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1153\" height=\"273\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/wp-content\/uploads\/2021\/12\/image-36.png\" alt=\"\" class=\"wp-image-1205\"\/><\/figure>\n\n\n\n<p>\u771f\u306e\u72b6\u614b\u9077\u79fb\u3068Viterbi\u30d1\u30b9\u306e\u7d50\u679c\u304c\u7570\u306a\u308b\u533a\u9593\u3060\u3051\u3092\u7070\u8272\u3067\u56f3\u793a\u3057\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1153\" height=\"273\" src=\"https:\/\/www.avelio.co.jp\/math\/wordpress\/wp-content\/uploads\/2021\/12\/image-34.png\" alt=\"\" class=\"wp-image-1203\"\/><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. \u306f\u3058\u3081\u306b \u300e \u8ced\u535a\u7834\u6212\u9332\u30ab\u30a4\u30b8 \u300f\u3068\u3044\u3046\u4f5c\u54c1\u306e\u4e2d\u3067\u3001\u5730\u4e0b\u30c1\u30f3\u30c1\u30ed\u30ea\u30f3\u3068\u3044\u3046\u8ced\u3051\u4e8b\u304c\u767b\u5834\u3057\u307e\u3059\u3002\u305d\u306e\u8ced\u3051\u306e\u4e2d\u3067\u4e3b\u4eba\u516c\u3067\u3042\u308b\u30ab\u30a4\u30b8\u306f\u3001\u5927\u69fb\u73ed\u9577\u3068\u3044\u3046\u4eba\u5fc3\u638c\u63e1\u8853\u306b\u9577\u3051\u305f\u30bf\u30cc\u30ad\u306b\u30a4\u30ab\u30b5\u30de\u3092\u3057\u304b\u3051\u3089\u308c\u3066\u3057\u307e\u3044\u307e\u3059\u3002\u305d\u306e\u30a4\u30ab\u30b5 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,6],"tags":[],"class_list":["post-924","post","type-post","status-publish","format-standard","hentry","category-5","category-6"],"_links":{"self":[{"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/924","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=924"}],"version-history":[{"count":341,"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/924\/revisions"}],"predecessor-version":[{"id":1891,"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/924\/revisions\/1891"}],"wp:attachment":[{"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=924"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=924"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.avelio.co.jp\/math\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=924"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}