Amazon EC2 を使ってウェブコーパスを作成中

概要

最近,Amazon EC2 を利用してウェブコーパスを作成しています.

収集対象は Yahoo! ウェブ検索 Web API により得られる検索結果(上位 1000 件)に含まれるウェブページで,検索のクエリには ipadic 2.7.0 の見出し語(217,550 語)を用いています.取得したウェブページからリンクを辿るというようなことは一切していません.

現在の進捗状況から最終的なコーパスの規模を予想すると,1.2 億 〜 1.5 億ページの範囲に収まりそうです.ただし,規模が当初の予想より大きくなりそうので,途中で打ち切ることになるかもしれません.予算の問題があるので,悩みどころです.

Amazon EC2 の利用について

以前にウェブコーパスを作成したときは,研究室で余っているリソースを投入できたため,それほど困ることもありませんでした.でも,今回は個人の思いつきによるプロジェクトで,手元で使える通信路・計算機がともに貧弱なことから,Amazon EC2 を使っています.つまり,コーパスの規模が費用に反映されます.お金が….

※ 研究室のリソースを使っていたときは,通信路の使用について,それなりに遠慮していました.後,計算機については,故障しているものが多くて難儀しました.

今のところ,c1.medium のインスタンスを 3 台ほど Spot Instances として確保し,1 台をウェブページの取得に,残りをウェブページからのテキスト切り出しに使っています.

※ Spot Instances にすると,インスタンスの費用を 35% 程度(US East, c1.medium の場合)に抑えることができます.日本のレンタルサーバと比べれば安いのでしょうが,コーパスの完成までにかかる費用を考えると….

今後の予定

今後の方針として,それなりにウェブページが集まったタイミングで,とりあえず文字 N-gram形態素 N-gram の集計でもしてみようと思っています.他にもいろいろ試してみたいところですが,予算の問題に加えて技術的な問題もあり,まだ考えているだけという状態です.

ウェブコーパスの共有について

作成途上ではありますが,もし「そのコーパスを使いたい」というアレゲな方がいらっしゃいましたら…,どうしましょうか.コーパスは研究を目的として共有できればよいのですが,bzip2 により圧縮した状態で 1TB 前後になる予定なので,どうやって渡すのかが問題になります.

※ HTML 文書の文字コードUTF-8 に統一して,テキストの切り出しと正規化までおこなったものは,半分くらいのサイズ(500GB 前後)になります.元データと併せると 1.5TB になります.

統計情報(語の出現頻度など)は Amazon CloudFrontBitTorrent などを利用して配布できるかもしれませんが,元データ(HTML 文書やテキスト)については,HDD の輸送がもっとも妥当な手段になると思います.しかし,これは面倒です.

何か良い方法をご存知の方がいらっしゃいましたら,コメントで教えていただけると幸いです.

追記(2010-06-29):Data Transfer In(EC2 のインスタンスでダウンロードする場合)の費用は 6 月末までタダということになっていたのですが,さきほど確認したところ,11 月の始めまでタダ(Free until Nov 1, 2010 - Amazon EC2)に変わっていました.圧縮して 1TB 前後になるようなデータをダウンロードするつもりなので,この延長はとても助かります.

※ Account Activity のページでは「6 月末まで」という表示になっています.