PHPでタイ語の分かち書きをしてくれるAPIがほしい
たぶん今年になってからだと思うけど、Google翻訳を使って「日本語→タイ語」、又は「タイ語→日本語」翻訳ができるようになっています。
なかなか将来を期待させてくれるサービスなんですが、残念ながら現在の時点ではほとんど使い物にならない程度の翻訳をしてくれます。
つまり、ほとんど役に立たないです。
その原因の1つは、Google翻訳のシステムです。
実は「タイ語」から「日本語」、又は「日本語」から「タイ語」に直接訳しているわけではなく、いったん英語翻訳を間に挟むのです。
つまり、「タイ語」→「日本語」に翻訳する場合
・「タイ語」→「英語」→「日本語」
と2段階を経て日本語に直されるため、もともとの文章からかけ離れた訳が出てくることがしばしばです。
なぜこの様なシステムを採用しているのか正式な理由はわかりませんが、想像するにネットに公開された対訳のボリュームの関係でしょう。
以前何かの記事で読んだのですが、Google翻訳のシステムはネット上に大量の対訳(たとえばタイ語と日本語が1対1に対応する翻訳文)が大量に存在すればするほど、精度が向上するそうです。
つまり、「タイ語」→「日本語」の対訳の絶対量が足りないので、とりあえず
「タイ語」→「英語」を経て「英語」→「日本語」に直さざるを得ないようです。
ちなみに、「英語」を間に挟まないといけないのは、タイ語に限らずGoogleで翻訳できる他の言語でもそうだったはずです。
で、本題なのですが、このGoogle翻訳が登場する以前、自分で、なんちゃってタイ語機械翻訳ツールを作ったことがあります。
この記事です。
残念ながら2点ほど問題があって、公開できませんでした。
問題ってのは
1.辞書データがない
2.タイ語の分かち書きができない
ってことです。
この機械翻訳ツールを作ったときはPDICタイ語の辞書データを使いました。自分で使う分にはいいのですが、公開するのは問題ありありです。
で、それはともかく本当の問題は2の「タイ語の分かち書きができない」ってことです。
分かち書きってのは、タイ語の文章を単語に区切ってくれるツール(API、又はライブラリ)のことです。
例えば「私は日本人です」をタイ語で書くと
・ผมเป็นคนญี่ปุ่น(ポムペンコンイープン)
となります。
タイ文字は単語と単語の間にスペースを空けません。
英語なら
・I am Japanese
と単語と単語の間に必ずスペースが入るので、どれが単語なのかか明白です。
でも、タイ語には単語と単語の間にスペースがないので、いったいどこからどこまでが単語なのか判断するのが難しいのです。
仮に
・ผมเป็นคนญี่ปุ่น(ポムペンコンイープン)
という文章が与えられたときに
・ผม เป็น คน ญี่ปุ่น(ポム ペン コン イープン)
と誰かが単語に区切ってくれるとしたらどれが単語なのか明白ですね。
これが「分かち書き」というものです。
実はタイ語の分かち書きの研究というのは非常に進んでいて、すでにいくつものライブラリが公開されています。
・CTTeX
とか
・swath
とか他にもいろいろあります。
ちゃんとあるんじゃん!
っと思うかもしれませんが、残念ながら存在するのは基本的にLinux(Unix)用のツールばかりです。
たま~にWindows用のツールも存在しますが、このタイリンガルのサイトみたいに格安レンタルサーバーで使う為には、PerlなりPHPなりで使える必要があります。
で、散々探したのですが、残念ながらPerl又はPHPの分かち書きの方法は見つかりませんでした。
以前作った機械翻訳ツールは分かち書きができないので、仕方なく頭から1文字ずつ辞書データと突合せをするというかなり強引な力技で作ったもので、CPUの負荷がすごいし、なにより精度が高くありません。
・japanese2thai.com
という日本語→タイ語翻訳サイト?がずいぶん前からありますが、ここも「日→タイ」翻訳を提供しているのに「タイ→日」翻訳を提供していないのは、「分かち書き」の問題が解決できていない為と思われます。
お金があれば、Linuxが使えるレンタルサーバーを借りたり、あるいは自分サーバーを立ち上げたりして解決できるのかもしれませんが、個人の趣味でやっているサイトにそこまでは無理です。
というわけで、お願いです。
PHP又はPerlでタイ語の分かち書きの方法をしっているぞ!という人は掲示板まで教えてください。
ブログランキングに参加しています
「タイリンガル」本サイトへ戻る
トラックバック(0)
このブログ記事を参照しているブログ一覧: PHPでタイ語の分かち書きをしてくれるAPIがほしい
このブログ記事に対するトラックバックURL: http://www.tlin.jp/MT/MT-4.01-ja/mt-tb.cgi/198

コメントする