2010年3月26日金曜日

英辞郎のデータ形式

英辞郎から用例データを抽出しようと思い、データ形式について調べたところ
http://www.eijiro.jp/kensaku2/files.htm
に情報がありました。
ただ、上記のページには「●」が文例の開始点を示すと書いてあるのですが、Version 116のデータでは「■・」が文例の開始点になっていました。

データ形式がわかったところで、Perlで処理しようとしたのですが、文字コードの扱いに悪戦苦闘。検索・置換の際にこの記号類がちょっと邪魔をします。
いろいろと試行錯誤して時間をとられたのですが、結局今回はエディターの置換で済ませました。

いずれ文字コードの扱いについてよく勉強する必要があるということは分かりました。

2010年3月15日月曜日

英辞郎 on the WEBの整列・頻度集計機能

metal-heartさんの記事で知ったのですが、英辞郎 on the WEBで整列・頻度集計機能が利用できるようになっています。
つまり、英辞郎データに対してKWIC表示や共起語の頻度集計が利用可能だということです。
調べたところどうやら2月初頭から利用できるようになっていたようです。
ちょうど来週話すネタがこういう話だったので、これも紹介することにします。

β 版ということで、将来有料化されたりする可能性もありそうですが、その時はちょうど私が今作っている辞書データKWIC表示CGIを公開して、(当然英辞郎のデータを正当に所持している個人が自分専用に使うという制限は付きますが、)英辞郎データも簡単にKWIC表示できるようにするお手伝いはできそうです。
(まあ「簡単に」とはいってもウェブサーバーでCGIを動かさなくてはいけないので、「簡単」とは言い難いのですが。JAVAとかで作ればスタンドアロンで完結しますが、自分が必要としないのでそこまでのことはしようとも思いませんし・・・。)

2010年3月6日土曜日

kaoiro

朝のテレビで見た顔文字専用スタンプkaoiroが気になりました。
小テストとかで押して返却すると楽しいかも。


2010年3月5日金曜日

シェルでの複数コマンドの連続実行

bashなどでは複数のコマンドを連続して実行するには、;で区切ればいいのですが、これをWindowsのコマンドプロンプトでやろうとしても正しく処理されず、困ってしまいました。
調べたところ、コマンドプロンプトでは&が同等の機能を担うということが分かりました。

こういう細かい違いが結構あるので、LinuxとWindowsの両方を使っているとストレスを感じます。
Windows PowerShellをインストールすると、bash感覚により近づきそうですが、まだ試してはいません。

2010年3月3日水曜日

EFL辞書の定義語彙

現在主要英英辞典の定義語彙データを作ろうとしているのですが、各辞書の定義語彙データの有無についてまとめてみました。

一番簡単なのはOALD7で、データが掲載されています。
http://www.oup.com/elt/catalogue/teachersites/oald7/oxford_3000/oxford_3000_list?cc=global

次に簡単なのはMED2です。
CD-ROMのヘルプに定義語彙データがあります。
アルファベット別になっているので、まとめるのは若干手間がかかりますが、作業は簡単にできます。

ここから先は容易ではないものです。

まずはLDOCE5。Longman Defining Vocabularyの古いバージョンとおぼしきデータはいろいろと見つかりますが、どれも最新のものではありません。(http:// は外してあります。)
www.cs.utexas.edu/~kbarker/working_notes/ldoce-vocab.html
wiki.frath.net/Longman_Defining_Vocabulary/alphabetically
home.earthlink.net/~neilbawd/longman.txt
www.pu-kumamoto.ac.jp/~jay/class/modeng/handouts/ldv.html
www2.cmp.uea.ac.uk/~jrk/conlang.dir/LongmanVocab.html
www.luweixmu.com/home/article.asp?id=33
見つけた中では一番下のものがLDOCE5のデータに一番近いようです。これをもとに書籍版誌面と見比べて修正していくのが一番楽そうです。
なお、LAAD2の定義語彙はでPDFデータで提供されていますが、LDOCE5のものとは品詞の表示なども含めれば結構違います。
http://longmanusahome.com/dictionaries/defining.php

COBUILD6については、定義語彙も書籍版紙面には載っているのですが、データとしては存在しないようです。
約3,000項目あるので、手で入力するよりは、スキャンしてOCR処理をして修正した方が早そうです。

一番問題なのはCALD3で、そもそも定義語彙が明らかにされていないようです。
ただ、定義のデータはあるので、これを見出し語化して、定義の中で定義語以外だと明示されている語を除けば、(想定版)定義語彙データが作れそうです。



その後LDOCE5とCOBUILD6の定義語彙データは作成が完了しました。

2010年3月1日月曜日

テキストファイルからKWICコンコーダンスを生成するCGI

テキストファイルからKWICコンコーダンスを生成するCGIスクリプトを探しました。
そんなものはいくらでもあるだろうと思ったのですが、探し方が悪かったのか、意外にもほとんどありませんでした。
その中で見つけたのがPerlconcです。
まだ一部機能が実装されていないなどの残念な点はありますが、正規表現を使って複数のテキストが自由に選択できて、見やすいですし、割と良さそうな感じです。

ただ、開発が0.3で完全に止まっていますし、今後のアップデートもないでしょう。
また、230行目の「href」の前の二重引用符がエスケープされていないため、そのままではエラーとなります。
この点だけ修正すれば、最低限使うことはできます。

これをベースにいろいろ手を入れていけば使いやすいものにできそうです。
あるいは、この実装を参考にゼロから作り直した方が早いかもしれませんが。



その後さっそく改造して、Unicode対応にして、日本語のファイル名・テキスト・検索キーワードも適切に扱えるようにました。
これでそれなりに使えるようになりました。
いずれ気が向いたら公開するかもしれません。