しばらく研究していたウェザタイの新CPUがなんとなくできた。ニューラルネットワークを使う方法をずっと研究してたんだけど、結局普通にモデル化した。ニューラルネットワークも、Seq2Seqでひらがな-ローマ字変換するところまでは作ったんだけど、そこからコストを反映させて学習させるのが難しいというか、普通にモデル化するのとあまり変わらない感じがして。
モデル化としては、1打鍵ごとに指の配置を決めてコストを計算して最適な指の動きをするようにしてみた。以下の動画のように、勝手にNNの代わりにXNを使うようになったり「ー」を間違えやすかったりでちょっと人間っぽくなってる気がする。もう少し高速化とチューニングすれば、もっと人と対戦してるような感じになるかも。ちなみにコスト計算は「タイピング Professional」の記事をだいぶ参考にさせてもらってます。
てことで、ウェザタイ3~ウェザタイ4で未だレガシーな実装が残っていた部分、文章自動生成とCPU戦をモダンにする目処が立った。これと配信等で分かったUIの問題点を直してバージョンアップって感じかな。
最後の結果表示、結構人間と似たグラフになっているのが面白い。