Hatena::ブログ(Diary)

武蔵野日記 このページをアンテナに追加 RSSフィード

2010-01-12

Philipp Koehn の Statistical Machine Translation

Philipp Koehn の Statistical Machine Translationを含むブックマーク Philipp Koehn の Statistical Machine Translationのブックマークコメント

機械翻訳について書いたので、ついでに本の紹介。2007年くらいからずっと in press だった気がするのだが、ようやく先月出版されたので、購入。

Statistical Machine Translation

Statistical Machine Translation

著者の Philipp Koehn は統計的機械翻訳の Pharaoh の開発で有名であり、最近はオープンソース(GPL)の Moses という翻訳ツールの開発で著名である。ちなみに、いずれのツールキットも、機械翻訳の世界ではデファクトスタンダード(数年前までは Pharaoh が使われていて、Moses が開発されてからは Pharaoh の座は Moses に取って変わられた)であり、ベースラインとなる手法として広く使われている。

内容的には基礎から応用までしっかりカバーされていてよい。世界中の研究グループはどこがあって誰が研究していてどんなことしているかなんてのも書いてある。基礎の部分はこの本で勉強しなくても IBM モデルの原論文と Pharaoh のマニュアル(けっこう詳しいチュートリアル的なマニュアルがある)を読めばいいのでは、と思わなくもないのだが、擬似コードやアルゴリズムやサンプルがたくさん書いてあるので、確かに教科書としてはこれを手元に置いて眺めたほうがいいのかもしれない。

最近の統計的機械翻訳の動きは "Advanced Topics" という最後の3章にまとめられている。Discriminative Training, Integrating Linguistic Information, Tree-Based Models という3章なのだが、正直なところ、ちょっと物足りない。2008年の話まで入っているのだが、「あれ、もう終わり?」と思ってしまう。章末に参考文献がそれぞれたくさん入っているので、それをたどって読めばいいという話ではあるが……(自分が2006年にやっていた研究が言及されているのを発見してびっくりした)

機械翻訳だけで1学期授業できるなら、1回の授業でこれを1章ずつ読む感じで進めればちょうどいいのかな。まあ、そんなことはまずないと思うので、自分で適宜読む、という形で利用されるのだろう。とても基本から解説してあるので、研究者の人はちょっとくどく感じてしまうかもしれないが、学部生でも読めるくらい基礎的な用語についても説明してあり、自習用には最適なテキストだと思う。

mowamowamowamowa 2010/01/12 07:06 MSのオンラインマニュアルは大体全部機械翻訳で、アクセス数が特に多いサイトに関して人がケアしている、と聞いたことがあります。

mamorukmamoruk 2010/01/12 08:12 id:mowamowa くん
なるほどー。前と比べるとだいぶよくなりましたね。エンタープライズ向けの翻訳はものすごく需要がある(そしてコスト削減効果も著しい)そうですね。これまでにずっと翻訳してきた資産があるなら、特定の分野に対して作り込めば、すでにかなり実用的なものなんだろうとは思います。要はその作り込みにお金をかけられる企業というのがあまりない、ということなのかなと……。MS はいろんな意味で大きな企業ですねえ。自然言語処理も、規模が大きい企業に対して売り込まないと、BtoC では勝負しにくいのかなと思います(モノやサービスを売るのもそうですが、自然言語処理専門の学生がどのように今後キャリアを築いていくかを考えると)。BtoB であればまだしも……。

竹田竹田 2010/01/12 10:47 そのページは人間が手を入れたものでしょうね。手の入れ方が明らかに足りないようですが…。
素の機械翻訳は、まだまだそこまでのレベルにも達していないはずです。例えば、Microsoft のサイト内では次のようなページが機械翻訳されたものです。
http://msdn.microsoft.com/ja-jp/magazine/dvdarchive/ee336016.aspx

「この記事は Windows 7 関連の連載記事の第 3 弾です。この連載では、開発者が Windows 7 の特徴を生かしたアプリケーションを作成するための、新しいユーザー体験に焦点を当てています。」のような自然な部分もありますが、一方で「Windows 7 で 私たちが追加タッチ、Windows の経験、マウスとキーボードと共に、PC との対話を別の方法として、最上位の市民を修正すること。 近年が、非常に正のユーザー エクスペリエンスを生成する multitouch デバイスのさまざまなきたですが。」のような目も当てられない部分もあります。

人間が手を入れることを前提とした下訳としては徐々に良くなってはいるものの、Google 翻訳や Microsoft ほどの豊富なリソースがあっても、手を入れずに読める機械翻訳はなかなか難しいのでしょう。

黒翼猫黒翼猫 2010/01/12 10:51 こんにちは
IME2010の固有名詞の変換が凄いという人は IME2007に最新語辞書を入れてない人なのかも|・ω・)っ
http://blog.livedoor.jp/blackwingcat/archives/1065317.html

mamorukmamoruk 2010/01/12 11:48 竹田さん
ご指摘どうもありがとうございます。あー、もしかして、人手を入れたから「機械翻訳によるものである」と書いていない、ということ、でしょうか。機械翻訳をベースにして人手で編集した、と……。統計ベースのものはかつてさんざんで、ルールベースのものはそこそこよかったのですが、統計ベースのものも最近データが数百万文あればかなりいけることが分かってきた(日英だと特許文書を対象にした研究がなされています)ので、統計でここまでうまく行けているのかな、いったいどういうマジックを、と思っていました(汗)

別の PC メーカーでの話ですが、翻訳がない文書についてはなにも出さなかった場合と、機械翻訳した不十分な結果でも、(人手を介さない)英語からの翻訳結果を載せておいたところ、サポートに対する電話の回数が激減し、サポートコストを1桁どころか2桁縮めることができた、という話を聞きました。人間が「空気を読む」能力ってすごいんだなと思いました。でも、やっぱり人手は入れたほうがいいですよねえ。翻訳メモリ的な使い方に留まらず、もっといい人間と機械の協調の仕方があるんじゃないかなーと思っています。

黒翼猫さん
リンクの紹介どうもありがとうございます。すでに提供されていたものを統合したような形、ということですね。Office IME 2010 では、Microsoft Update を用いた辞書の自動更新機能も入っているそうですね。MS-IME 2003 や Office IME 2007 では最新語辞書は自分で入れないといけない、と。辞書は自動で更新するべきだと思うので、正しい方向に見えます。

Office IME 2007 + 最新語辞書の組み合わせで使ったことはないですが、Office IME 2007 は統計的言語モデルに切り替えた過渡期の産物なので、もしかすると最新語辞書を入れてもあまり変換がよくないかもしれません。Office IME 2010 はそれからチューニングしてきたものでしょうし、きっとよくなっていることでしょう。最新語辞書に関しては、ここまでアグレッシブにインターネット用語を入れる必要もないかもしれませんが(笑)

torotantorotan 2010/06/27 15:30 Atokって結構優秀なんですね。私は使っていて、こんなもんなんだと思って使っていました。
最近は、IME2010が無料公開されたので、DLして使っています。

mamorukmamoruk 2010/06/27 21:37 torotan さん
そうですね、ATOK は結構優秀です。MS-IME 2010 もがんばっていますよ。どの IME でもそうなのですが、使っているうちに変な学習をしてしまい、それで「変換精度が悪い」と思うケースも多いようです。だいたい基本的にはデフォルトで使うのが一番精度よく、学習するにつれて段々悪くなっていきます(学習しないといけないケースも多々あるのですが)。なので、最近変換精度が悪くなってきた、と思ったら、一度学習結果を消してみることをお勧めします。「MS-IME 2010 のほうがいい!」と感じる場合も、もしかすると素の IME を使っているからそう思うだけかもしれません。(MS-IME 2010 も、アルゴリズムを一新してからかなりチューニングしてきているので、とてもよいソフトにしあがってきていると思いますけどね!)

torotantorotan 2010/08/08 02:33 え、驚きです。一度学習結果を消してみるのがいいのですね。使えば使うほど賢くなると思ってました。
GOOGLEのIMEも変換精度がよいと聞きますが、いかがですか?

mamorukmamoruk 2010/08/08 17:52 ええ、一度学習結果を消してみるといいと思います。素の使い勝手が分かります。よく使う表現はまたすぐ学習してくれるでしょうし……。
Google の IME も変換精度いいと思います。Linux で使ったりするのであればお勧めです。ソースも公開されていますし、辞書なんかもそのうち大規模なものを作る人が出てくるでしょう。

とおりがかりとおりがかり 2012/06/13 03:53 Windows 7 のインストラクションのページは恐らく機械翻訳の結果云々の記述ですが、機械翻訳を使っていることは否定しませんが、翻訳結果については、人の手によって校正はかけているかと思います。したがって、翻訳文だけで、前処理段階としての機械翻訳の精度を判断するのは難しいのではないかと

mamorukmamoruk 2012/06/13 07:50 とおりがかりさん
はい、他の方のコメントを見ていただければ、人手の校正がかかっている部分もある、というご指摘を複数の方々からいただいております。機械翻訳は自動評価尺度の普及 (2002年以降) で一気に研究が盛んになった面もありますが、やはり最終的には人間が評価しないといけない点もあり、なかなか難しいですね。

通りすがり通りすがり 2013/12/26 14:07 OfficeIMEの評判を調べるために検索で辿り着きました。
とても有用な記事で興味深く拝見させていただきました。ありがとうございます。

ところで、1文字2バイトならば、12万文字は240kbになるのではないでしょうか?

mamorukmamoruk 2013/12/27 21:16 通りすがりさん
こちらこそありがとうございます! 
計算間違えていたので修正しました(汗)ご指摘ありがとうございました。