[やったこと]

1. 主要な自立語について Yahoo!J で hit 数を付加

 動詞       : g-dousi            ※終止形で
 形容詞     : g-keiyousi         ※終止形で
 副詞       : g-fuku-keidou
 普通名詞(あ-ぞ) : g-hutuumei-azo
 普通名詞(た-ん) : g-hutuumei-tan
 形容詞名詞化    : g-mei-f-kei   ※形容詞ウ音便を含む
 敬語表現   : g-keigo            ※品詞は名詞
 固有地名   : g-koyuu-cn
 固有団体等 : g-koyuu-kk

 動詞は「...して」の形での hit 数も付加した(第7field)が、
 使ったのは終止形での hit 数(第6field)。
 ほとんどの動詞形容詞は「終止形」と「連体形」の形が同じな
 ので、連体形での用例もカバーしていると思う。
 人名は「...さん」をつけた形での hit 数が付加してあるが、
 色々ややこしいので今回は今までの頻度を使った。

2. hit 数の桁数でランク分け

 上記ファイルについて、桁数での度数分布表(?)を作成
 (info.txt)、"ファイルごとに" A-F のランクに分けた。

 例) 動詞の場合
  file : g-dousi

  桁毎の度数
  9桁以上  : 32 (0%) A
  8桁(千万): 276 (1%) A
  7桁(百万): 1213 (5%) B
  6桁(十万): 3074 (13%) C
  5桁(万)  : 4500 (20%) D
  4桁(千)  : 1438 (6%) E
  3桁(百)  : 4723 (21%) E
  2桁以下  : 6786 (30%) F

  hit 数が 8桁(一千万以上)ならランク「A」、
  100 以上 9999 未満はランク「E」等

3. 各ファイルにランク情報を付加

 例) 動詞の場合
 あ #W5 A 8 会 17800000 13800000

 フィールドの意味は左から順に、
   読み
   品詞コード
   ランク
   並び順調整値
   候補
   hit数(動詞形容詞は終止形での値)
   hit数(「...して」の形) ※動詞のみ

 「ランク」で大まかに分類し、「並び順調整値」で、読みが同じで
 かつ同一ランクのものの並び順を調整する。

 現状では、「こそあど語」など、これまでも頻度を大幅に上げていた
 一部の語のみ並び順調整を行ったが、それ以外はまったく未調整。

4. リリース用辞書作成スクリプト(alt-gendic.sh)変更

 freq.conf に各ファイルの各ランクをいくらの頻度値にするか定義
 (現在の値はまだ取りあえずのものです)。
 それを元に alt-gendic.sh 実行時にランクと調整値を頻度値に直す

 例)
  freq.conf に

    g-dousi  : A=500 B=300 C=250 D=200 E=100 F=10

  とあれば、

    あ #W5 A 8 会 17800000 13800000

  は「A」の「500」と調整値の「8」を足して

    あ #W5*508 会

  になる。

 freq.conf 内の値を変更するだけで頻度が変更できる。
 (頻度を色々変えて試す時に少しでも楽をしたかったのでこうしたが
 、freq.conf を分ければ、頻度を anthy 用と canna 用で別にする
 こともできるようになった)。

 このディレクトリ内で

  $ ./alt-gendic.sh

 とすれば、gcanna.ctd, gcannaf.ctd, gtankan.ctd が作成される
 はずです(大抵の Linux 環境であれば、多分)。
 元からある gcanna.ctd, gcannaf.ctd, gtankan.ctd はどこかへ移動
 しておかないと上書きされます。

 alt-gendic34.sh は jis第3第4水準相当単漢字辞書作成用なので、
 今回は関係ありません。


[備考]
・Yahoo! の hit 数は、数値の小さいものについては信用できる(ほ
　とんど hit しなかったなら、その語は日常的にはほとんど使われ
　ていないと考えてよい)と思う。
・逆に、数値の大きいものについては半分くらいしか信用できない。
　例)
　・「カン」の hit 数には「カントリー」や「クロカン」や「ドカ
　　ン」等他の語も含まれている(他の語の一部であっても hit して
　　しまう)。
　・また、読みは考慮されないため、「しるし」の読みでの「首」も
　　バカ高い hit 数になる。(この点は形態素解析でも同じ)
　・活用語には、「ある活用形でのみよく使われる」というものがあ
　　るが、終止形での hit 数しか考慮していないので、そうした語
　　は極端に低い値になっている、等々
　従って、目で確認して修正する作業が必須。
・ランクの分け方が確定したら、その作業にかかる。
・動詞については、複合語の同語彙異表記を機械的に追加していった
　ため、「すりあわ #S5 F 0 摺りあわ 1 1」のような「用例がほとん
　どない候補」がかなりの数でき、分布がいびつになっている。
　パーセンテージでランク分けするなら、こういう最下位のグループ
　は除外した上で計算した方がいいかもしれない。形容詞ウ音便も同
　じような感じ。
・ランクの分け方を「桁数」にしたのは、主に新語追加時の作業の便
　を考えてのこと。「上位?%」とかだと新語を追加するときにその語
　をどのランクにすればいいのかぱっとは分からないため。(「上位
　?%」とかの分け方でも一回スクリプト書いとけば済むと言えばそう
　なので、あまりこの分け方にこだわるつもりはないです)。
・「億の台と1千万では相当の開きがあるのに同じランクでいいのか」
　という気もするが、上の方のランクはそもそも語数が少ないので、
　細かく分ける必要はないと思う。
・結果的には以下のように感覚的に分けた場合に大体近くなっている
　のではないかと(いう希望的観測)。
　　A : 非常に頻繁に使われる不可欠語
　　B : 日常的によく使われる語
　　C : 頻繁に使われるわけではないが、辞書には入っていて当然
　　D : 時折使われるか、あまり使われない語
　　E : あまりないしほとんど使われない語
　　F : 文語など滅多に使われない語
・また、ランク分けをファイルごとに行ったのは、「活用語はすべて
　の活用形での hit 数を使うべきなのか、その場合、それらの総和
　なのか、平均なのか、またその値を非活用語の hit 数と単純に同
　列に扱ってよいのか」とかを考えるのが面倒だったので。
・今にして思えば、「活用語」と「非活用語」に分けて(まとめて?)
　ランク分けすればよかったかと思う。今回のランク分けにダメ出し
　されたら試してみようと思う。
・しかし、結局ランクの分け方はどのファイルでも同じにしたので、
　「ファイルごとに」というわけでもないことに今気づいた。





