Wikipedia から SKK の辞書を生成するスクリプトをかいた。
https://github.com/tokuhirom/jawiki-kana-kanji-dict
SKK-JISYO.L が最近、メンテナンスされてなくて れいわ /令和/
が入ってなかったりして困ってしまう。
そこで、neologd から辞書を生成してみた。 https://github.com/tokuhirom/skk-jisyo-neologd/ しかし、neologd は、形態素解析用の辞書としてはいいと思うのですが、かな漢字変換用として無理矢理使おうとすると誤変換になってしまうケースが多かった。
なので、直接 wikipedia からデータを抽出することにしてみた python で適当に抽出するスクリプトを書いて、github actions で設定した。これで、何もしなくても自動的に辞書がアップデートされていくはず。
工夫したこととかのメモ
- neologd からの抽出のときはデータ量がすくなかったので雑に Perl で書いていた
- Wikipedia を直接読み込む場合には、XML がめちゃくちゃでかいのでナイーブに書いたら時間がえらくかかるようになった
- マルチステップで処理するようにした。
- python の multiprocessing で、処理を並列でするようにしてめちゃくちゃ速くなった
- janome/romkan など利用して、怪しいエントリを除外するようにしてる
- janome、思ったより速くて便利だった。
- github actions でまわりきる時間で終わる必要があるから、速度のチューニングはわりとしっかりめにやった
- 全部で 10分以内に処理が終る。
Published: 2020-08-30(Sun) 09:47