出現確率と遷移確率を考慮

 ある行について、出現確率が小さかったり、前の行からの遷移確率が小さかったりする場合に、隠れ状態からの属性決定が信用できないと考え、元の示唆ベクトルから考え直して新たに属性を割り振る、という部分について実装しました。コードは修正部分について以下に示しています。
 まず遷移確率が低い場合は、前の行の隠れ状態をそのまま使う、というようにしました。さらにその後その隠れ状態からの出現確率が低い場合、元の示唆ベクトルから、推定された属性とは別の列に1がたっていないか探し、たっていたらそちらを優先的に採用するという感じにしました。
 このコードで実際に論文レビューを調査してみたところ、前回まで出にくかった「前提」属性の行も探査できるようになっており、その他も属性についてもかなり信頼できる分類ができていることが分かりました。
 次回以降他の論文についても調べてみて、上手くいくかどうか確かめてみたいと思います。