今更ながら,NTT永田さんによる形態素解析のためのA*アルゴリズムを使ったN-best論文を読みました.というか,前にも読んで分かった気になっていたのだけど,忘れていたのでメモっておきます.統計的言語モデルとN-best探索を用いた日本語形態素解析法 そもそもA*アルゴリズムは最適解探索アルゴリズムであり,なぜこれでN-best探索ができるのか疑問でした.A* - Wikipedia論文の5ページ目には「最適解が得られたら,そのノードを取り除き,さらに探索を続けることにより次の最適解が得られる.」と書かれています.しかし,実際に擬似コード(図3)を読むとノードを削除するのではなくclosedリストに移しているだけで,しかもclosedリストに移されたノードは条件によってopenリストに戻される場合がある,というあたりがわかりづらかったです.これはラティス上では最適パスとそれ以下のパスがノー