遅い→起動時

http://d.hatena.ne.jp/pmint/

新しいWikiEngineの自動リンク機能

自動リンクの試作。Wiki内のページ数が増えても使えるかどうかの試作。


ja.wikipedia.orgにある記事名をあらかた登録してあるので、フォームにウィキペディアにありそうな単語を打ち込んで「Preview」を押すと→自動リンクになる。


かかる時間はこの「枕投げ」の過去版をコピペすると解析まで5秒、出力まで含めると15秒でちょっと遅いくらい。

枕投げ - Wikipedia


空のページを登録してあるだけなので、それにリンクしてもつまらない。今はWikipediaの記事にリンクするようにしてる。

プロトタイプ04
X04.2012-05-21.zip
VS2008Proj、C#

稼働中
http://x04.pmint.name/

していること

このプロトタイプでは空のページを78万ほど用意したけど、現実的な時間で自動リンクできそう。
やり方はリンク化されるテキストを分解、bi-gramの集まりにする。存在する全ページ名も同様に分解、両者に共通するbi-gramと関係のあるページ名だけをテキストから探すという方法。
ページが増えても影響が少ないけど、テキストサイズと含まれる文字種類数が増えると処理量増大。

していないこと

bi-gram辞書の保存

保存してあるのはページ名一覧だけ。78万語のbi-gramを毎回生成しているので、無駄。

1文字対応

2文字単位なので、1文字だけのページ名は扱ってない。
日本語は文字が豊富なので1文字ずつ分割しても良さそうだけど、アルファベットも考慮して2文字単位に。
でも2文字単位も数字列には対応しづらい。特に0で桁揃えしたページ名が大量にあるとページの絞り込みが役に立たない。


文字種別に何文字単位にするか切り替える?[A-Za-z_]を1/2文字としてカウントするとか。