自然言語処理

うん、人工無脳よりもこっちの方がしっくりくる。

辞書無しで学習するためにはどうしたらよいか。
単語学習は統計的にのみ扱えばよい。
つまり、i番目の文字l_{i}に対してその出現確率P(l_{i})を定義し、同様に文字列l_{i},l_{i+1},\cdot\cdot\cdot,l_{i+n}に対してその出現確率P(l_{i},l_{i+1},\cdot\cdot\cdot,l_{i+n})を定義する。P(l_{i})P(l_{i+1})\cdot\cdot\cdotP(l_{i+n})P(l_{i},l_{i+1},\cdot\cdot\cdot,l_{i+n})を比較し、出現確率が等しくない文字列l_{i},l_{i+1},\cdot\cdot\cdot,l_{i+n}を探す。ここで有意に出現確率が高いとされた文字列(上側1%くらい?)は単語であるとみなしてよい。
論理的には正しいはずだけど、関係無いものも沢山拾ってしまうのが欠点か。

と思ったのだけど、任意の部分文字列の組と比較しなければならないことに気付いた。長さnの文字列に対して任意の部分文字列を求めるには2^{n}-1回の計算が必要なわけで、あまり長い単語を探すことは出来ない。確度の高い部分文字列については探索を中止してもよいのかも。