自分の作成したテキストの かな の出現頻度を測ろう

自分の作成したテキストで、かなの出現頻度を測ろう!というお話が

で 出ています。


私もやってみました。最初 kakasi と morogram を使用したところ、 kakasi の漢字→ひらがな変換の精度が低いようです。 開発が止まっている kakasi より、MeCab http://mecab.sourceforge.net/ のほうがいいみたいですよ。


MeCab だと

姫踊子草 → ひめおどりこそう

は正しく変換できました。しかし

左上端 → ひだりうえばた (ひだりじょうたん と変換してほしかった)

なのでやっぱり完璧ではないですね。でも精度は高くなっているような気がします。


解析は下記のように実行しました。


手順

  1. 自分の記したテキストをかき集めて一つのファイルにする。ここでは A.txt とする。文字コードMeCab Windows版のために Shift_JIS にしておく。

  2. MeCab を使って 漢字→カナ変換 を実行する。B.txt が できた。
    "c:\Program Files\MeCab\bin\mecab.exe" -Oyomi A.txt -o B.txt


  3. MeCab で作ったファイルは主にカタカナでたまに ひらがな が混じる (品詞解析できなかった語は ひらがな のままになる) ので、
    1. テキストエディタ等でカタカナを ひらがな に変換する。
    2. また、後述の morogram のために文字コードUTF-8 にする。これを C.txt とする。

  4. C.txt には英数字が含まれているので削除する。この PerlスクリプトShift_JIS のファイルには使えませんので気をつけてください。 これを D.txt とする。
    perl -e "while(<>){ s/[!-\~]+/ /g; print; }" C.txt > D.txt


  5. morogram を使う。D.txt が大きいファイルの場合、30 分とか時間がかかります。 最初は小さなファイルで、正常動作するか確かめたほうがいいかもしれません。

    あと注意ですが、morogram が読み込む D.txt にあたるファイルの名前には、 ハイフン - を入れてはならないようです。Windows 版 morogram では - の入った mytext-kana.txt みたいなファイル名だと morogram が動作しませんでした。
    c:\temp\morogram-0.7.1x\morogram-0.7.1xCJKT.exe --f=1 --g=1,1 D.txt > hindo1.txt
    c:\temp\morogram-0.7.1x\morogram-0.7.1xCJKT.exe --f=1 --g=2,2 D.txt > hindo2.txt


参考:

計測結果

私が作成した仕事のメール・ドキュメントと個人ブログの記事、あわせて 359450 文字 (1164KB) を計測しました。

1 2 3 4 5 6 7 8 9 10
11 12 .. という順番で並んでいます。



かなの出現頻度

い う ん し か る と の 。 す

く た に て で を こ っ き ー

な さ り が ょ は ま じ つ 、

ど ら せ れ あ ゅ よ も お め

ち ふ ば だ け え そ ひ み ぷ

ほ ぁ ぶ ろ わ ぱ へ び べ ご

ぐ む 」 「 や ず ぇ ゃ ぎ ね

げ ・ ぃ ぜ ぞ ざ ゆ ぼ ? ぽ

ぉ ぺ ぴ 〜 づ ! ぬ … ぅ ぢ


2語の出現頻度 上位200

ょう いる た。 した よう てい する して ゅう ない
しゅ す。 せい こう いし うし ふぁ ぁい って ます
る。 どう かい しょ った うに こん かん しま ので
じょ さく い。 へん んす ほう んと いか すと くり
ーる さい から んし かく かえ ひょ うさ にし んこ

いん んぱ るの ーす をし でき くせ つか ぱい され
ると です うの しん すく かき たい ーじ りょ るを
まし いの 。の ある とう うせ くし 。こ うか こと
くに ぷと うじ をか いた りぷ うを んか で、 がい
せん めい めー いて とを ょく るど にな いは んを

うで んで にん うす びる つい きの ぶん ちぇ めん
ため らい んの ばん うが っと しよ ーど すう たの
うほ きか があ う。 きょ とき 。し いま うり をつ
っく りま なっ いな ぇっ るよ いれ くす とか いと
とい では くと はい んき て、 そう あい 。で かっ

あっ とり にゅ んに れて いち のか っか さん をさ
とに つく しな とし この んだ は、 ょん いで りー
しゃ かし まで じっ らべ をお だい とお せっ じゅ
との んが くだ だけ っこ げん いい その るか とで
てき かー ん。 いう いに んじ いが には ゅつ けい
つよ れる 。か のふ いこ いよ さぶ てん が、 。を


3語の出現頻度 上位100

'ファイル 表示 設定 コンパイル スクリプト'… 語句が偏ってるなぁ。

ふぁい ぁいる した。 ます。 しゅう ひょう ってい こんぱ んぱい んこう
ぱいる してい ように くせい すくり します くりぷ りぷと ました さくせ
うせい ている へんこ じょう びるど ゅうせ しよう する。 かくに くにん
った。 うほう ちぇっ です。 めーる ょうじ いるを うりょ るよう きょう
せいし うする こうし どうさ にゅう りょく ゅうり ので、 きかえ うして

にした っこう しょう つよう うしん うにし ない。 ちゅう ぎょう いんす
じっこ ひつよ んすう すとー んすと しまし いよう という ばあい とーる
たので めんと かった しゅつ いるち ていし ょうか せって をしゅ りーす
かきか います れてい くする るちぇ きどう すると んきょ ぇっか をさく
っかー できる ないよ れくと ること のふぁ りょう くとり ぃれく くじょ

このデータは日本語入力配列を作る・評価するときに役立ちそうです。

補足

わたしは仕事メールにテキストエディタ Emacs(Meadow) 上で動く Mew を使用しているので、下記のスクリプトでメールを一つのファイルにしました。

get_mailcontent.pl