[前のメッセージ (日付順)]  [次のメッセージ (日付順)]
[前のメッセージ (スレッド順)]  [次のメッセージ (スレッド順)]
[日付によるインデックス]  [スレッド・インデックス]  [記事検索]

notes on reordering candidates



三田です。



最初に、大変申し上げづらいのですが、登録・削除フォームのログが4-5000ほ
ど消失してしまったようです(2/1時点で7986、現在2889)。
復旧をお願い致します。



前にもお知らせした通り、 L辞書の登録順の見直しを進めております。
フォームからの新規エントリが絶えず末尾に降り積もるのでエンドレスな感じ
ですが、作業していく中である程度パターン化が出来てきました。

> skk/dic/READMEs/committers.txt についてもときどき見ていただいて、L
> 辞書 (その他の辞書も、勿論) の編集規則として追加すべきものがあれば、
> アイディアをいただけますか。

というお話もありましたので、一度ご報告したいと思います。


候補が複数あるエントリについて個々の候補をgooで検索し、ヒット数の大き
い順番にソートした上で、「その見出しを入力する時に欲しい可能性が高い」
ものはどれかを考慮し概ね次のような順序になるよう位置調整しています。

- 一般的な、独立した単語
  - 漢字の多いもの優先
  - okuri-nasiの場合、送りを含まないもの優先
  - 分解・数値入力などで入力しづらいもの優先
  - 専門性の低い(利用者に偏りのなさそうな)もの優先
- 一般的な、独立していない単語(助数詞、連濁した語[の一部]など)
- 企業名などの、一般性のある固有名詞
- 地名
- 人名
- 機能性の低そうな単漢字
- 旧字・異体字
- 疑問のある候補(連想・誤読・誤登録)

どのグループに属するかは人力で確認するしかないのが手間なのですが、将来
的に(XML化などによって)品詞情報が得られるようになればこの部分もある程
度は自動化できるのではないかと期待しています。
;; XMLに「ヒット数」を蓄えておいて、新語追加の際にはこれと品詞を見て
;; 位置を決めさせれば楽が出来るなどと妄想


具体例を挙げてみます。{}内はgooのヒット数です:

-けいし /軽視/罫紙/警視/刑死/継子/継嗣/圭司/景士/圭史/啓示/啓史/桂枝;cinnamon/
+けいし /軽視;{44200}/警視;{9780}/桂枝;cinnamon,{4780}/継子;{2230}/刑死;{1500}/継嗣;{982}/罫紙;{690}/圭司;人名,{14000}/啓史;{4890}/圭史;{4460}/啓示;{25700}/景士;{138}/
「圭司」以下は人名なので一般名詞の後になっています。
「啓示」は高頻度ですが、「けいじ」と読む場合がほとんどと思われるので
順位を下げています。

> せんだい /仙台;{413000}/先代;{33200}/川内;地名,{64500}/千台;{10100}/
「川内」は地名なので、普通名詞の「先代」より下になっています。
「仙台」も地名ですが、圧倒的にヒット数が大きいので先頭。
「千台」は数詞+助数詞なので敢えて順位を上げていません。
;; 結果的には登録順は元のままですね。

> ほらふき /法螺吹き;{530}/ホラ吹き;{1660}/ほら吹き;{1530}/
-やるき /遣る気/やる気/ヤル気/
+やるき /やる気;{481000}/遣る気;{112}/ヤル気;{18200}/
「ほらふき」は3倍程度の開きなので漢字の多いもの優先。
「やるき」は桁が3つ違ったので「やる気」が先頭。
このあたりは最終的には皮膚感覚です。

-ひきあい /引合い/引合/引き合い;-に出す/
+ひきあい /引き合い;-に出す,{17100}/引合;{2690}/引合い;{2420}/
-ひきあて /引当て/引当/引き当て/
+ひきあて /引当;{20600}/引き当て;{3870}/引当て;{1230}/
これらは、ヒット数が「どの表記で良く使われるか」を反映していると考えて
そのまま登録順にしましたが、「引き合い」のような送り仮名を含む表記が先
頭になるのは異論のあるところかもしれません。


なお、単漢字の登録順に関してはこちらの方針に沿っています:
http://news.ring.gr.jp/news/openlab.skk/4910
候補数が3桁に及ぶような単漢字エントリについては、「普通そうは読まない
だろう」というものは削除してもいいのかなという考えに傾きつつあります。


サーチエンジンのヒット数をほぼそのまま登録順にした結果、良くも悪しくも
現代口語で良く使われる語や表記ほど早く出て来るようになったのではと思っ
ています。
;; 副産物として、削除した方が良さそうな語が自然と末尾に下がってくれた
;; りもしているようです。



この先ですが、L辞書の登録順見直しが一段落して余力があれば(楽にやれる方
法を思いつけば?)、調べた頻度を利用して高頻度な人名を人名辞書からL辞書
にコピー、また低頻度な人名をL辞書から人名辞書に移動といった作業をやろ
うかと思っています。


また、

% skkdic-expr2 SKK-JISYO.L ^ SKK-JISYO.ML > SKK-JISYO.ML.new

とすることで、L辞書に加えた登録順の変更をML辞書に反映させることが出来
ますが、これについてはML辞書をご使用の皆様はいかがお考えでしょうか?



もともと微妙な違いである上、ユーザ辞書が育っているとその陰になることも
あり実感しづらい部分はあるのですが、作業方針や結果へのご批判ご要望をお
聞かせ願えれば幸いです。
;; 次の差分を取ることで作業の大体の様子が見えるのではと思います:
% cvs diff -U0 -r 1.415 -r 1.455 SKK-JISYO.L > hoge.diff
(-r 1.454 -r 1.455, -r 1.448 -r 1.449, -r 1.423 -r 1.424, -r 1.415 1.416)



================================================
三田祐介(key/clefs) <clefs@xxxxxxxxxxxxxx>