2011年10月15日土曜日

「Onlineアラビア語翻訳」の開発の流れとサンプル2

基礎ができたので、すこしづつ応用。

google翻訳APIを使ったプログラム(テキスト埋め込み形式)
で、順々に翻訳APIに接続することも可能に。

javascriptのsetTimeout機能が大活躍。
これで次の関数処理まで○秒待つという動作が可能に。

これで文章一気に翻訳ではなくて、単語に分解して一つずつ
翻訳することが可能になりそう。翻訳精度の向上に貢献するはず。

アラビア語文章テキストをスペース区切りで格納。
アラビア語のメリットはスペースごとに単語が区切れるところ。
日本語は単語の区切りがないため、こうした機械的な処理ができない。
(*このこともあって日本語→アラビア語のバージョンの開発が遅れてます。)

さらっと言い訳。(笑)

ひとつの単語ずつ、JavaScriptに設置。
順々に接続して翻訳結果読み込み。
処理が終わったら2秒待って、次の翻訳。連番で。

しかし、大量のJavaScript。大丈夫かな。
翻訳制限は500文字だそうです。

「Onlineアラビア語翻訳」の開発の流れとサンプル

 まず、今回の肝となるgoogle翻訳APIのアクセスを復習。

単純な英語と日本語の翻訳ツールを作ってみる。

参考URLはこちら
Googleからの贈り物 - Google AJAX Language APIでカンタンに翻訳サイトを
http://journal.mycom.co.jp/articles/2008/03/21/ajaxlang/001.html

単純にコピペで本当に動きました。

アラビア語と日本語の翻訳も併せて作ってみる。
アラビア語は設定言語が「ar」みたい。

翻訳後の言語を選択して翻訳も正常に動作。
今回は使わなかったけど、応用範囲は広そう。


google翻訳APIを使ったプログラム(テキストボックス自由記入形式)を若干改良して、
google翻訳APIを使ったプログラム(テキスト埋め込み形式)を作成。

これでファイルを自動的に読み込んで、翻訳を開始する機能が作れそう。

「Onlineアラビア語翻訳」の仕様書

Onlineアラビア語翻訳」の仕様書

基本的には、「Twitter(アラビア語)× google(自動翻訳)」サイトを作ったときと同じ流れなので、
このプログラムをベースに作ればいいかなと考えました。

頭の中でこれとこれをつなげて作ればできるだろうなーと思っても
実際動かすとできないことがしばしばあります。

仕様書をどれだけ綺麗に作っても想定どおりに事が運ぶことはまずなく、
ある程度大まかな流れだけ作って(=目標だけ決めて)、
作る過程・プロセスは問わない、解決できればやり方は問わないといった方針で進めました。

1-検索ボックスを設置し、検索したい文章・単語入力して「検索」ボタンをクリック。

2-google翻訳APIに接続して、翻訳結果を取得

3-翻訳結果を検索した文章と併記して表示

この3手順で終了です。

1-はHTMLの基本なので簡単。

2-は、「Twitter(アラビア語)× google(自動翻訳)」サイトでそのしくみを作ったので、簡単。
 今回は単語接続にするので、順々にアクセスするのをどうするか解決しなければ。

3-順々にアクセスするのが解決できれば、表示は簡単。
 
おー、思ったより簡単にできそうだ。さっそく着手。

「Onlineアラビア語翻訳」の作成経緯

Onlineアラビア語翻訳」の作成経緯、
それは今年になってから「アラブの春」という民主化運動が盛んになってきて、
その活動をインターネットメディアが後押ししているという報道があったからです。

twitterやfacebookを軸として若者が連携し、デモを起こす。
では、それが本当だとして、そのtwitterやfacebookでは
何が語られ、情報交換されているのか。
自然とその流れで「Twitter(アラビア語)× google(自動翻訳)」サイトを作成しました。

日本でも爆発的に普及したtwitterやfacebookですが、
話し言葉的なメディアのせいか自動翻訳だと意味不明な日本語になることも多々あり、
また、単語単位ではなく、文章全文を一気に翻訳する手順をとったため
満足のいくような翻訳とはなりませんでした。
(*これはgoogle翻訳の不備ではなく、単純なプログラムの設計ミスです。)

なぜ、翻訳が満足のいく内容にならないのか。
「自動翻訳の限界。結局人間にしかできない。」といってしまえば終わりですが、
それだとアラビア語の膨大な情報にアクセスする手段がなくなってしまいます。

その折衷案として、文章全文を一気に翻訳するのではなく、
単語単位で翻訳(=訳出)をしていけば語順は読む人間が自動的に整理することで
かなりの精度で原文を読むことができるのではないかと考えました。

そんな経緯で出来上がった「Onlineアラビア語翻訳」ですが、
当初頭でイメージしていたものほぼ同じものが何とか出来上がりました。

文章として意味をとれるケースも多いですので、
翻訳の精度はなんとなくですが、7割がたくらいは適切なのではないでしょうか。
リアルタイムの固有名詞や地名・人名がわりと正確に翻訳されることは
文章の理解を助けてくれるので、これはwebの翻訳ツールのメリットの一つでしょう。

ご活用いただければ幸いです。

「Onlineアラビア語翻訳」をリリースしました。

「Onlineアラビア語翻訳」を今回新しく開発し、先日リリースしました。

若干大げさで、過去に他のサイトでつけられたことがあるような名前で
躊躇するタイトルでもありましたが、
今までの「Onlineアラビア語辞書」とは全く毛色の違うサービスになりそうなので
あえて新しい名前をつけてみました。

「Onlineアラビア語翻訳」も同様
皆様のお役に立てれば光栄です。

まず最初に変な話ですが、このサービスを必要としない人、
つまり、今まで同様、「Onlineアラビア語辞書」で十分という方は、

仕事の書類や、授業のテキストなどでわからない単語だけ調べたい方。
最新のブラウザ(IE)を利用されていて、アラビア語単語にカーソルをあてると自動的に
日本語訳が表示される方。

以上の方々には、あまりメリットがないサービスです。

想定している利用者の方は、日々アラビア語のWebサイトをご覧になられていて、
大量のアラビア語の単語の意味を訳出したいという方です。
もちろん文章だけでなく、単語の検索もできますので、
Webサイト中心の利用をされている方にはメリットがあるかと思われます。

1語の単語に対し、1語の訳出となりますのでどの訳語が適切か迷う必要がありません。
(*適切でない訳出がされる場合もありますので、この点もご注意ください。)

ご意見・ご要望ございましたらお気軽にどうぞ。

2011年7月17日日曜日

google newsとOnlineアラビア語辞書の融合の続き

google newsとOnlineアラビア語辞書の融合させまして、
辞書なしでも原文を読みやすくするためのページを作成しましたが、
作成中に重大なことが判明。。

今の新しいパソコン&ブラウザは自動的に単語翻訳してくれるのですね。
アラビア語でも日本語の意味が出てきたので驚きました。

googleツールバーをインストールしていて、
google翻訳の拡張機能をonにしていれば利用可能なようです。

この機能がいいところは、バシッと一語に意味を集約してくれるところ。
いろいろ悩まなくていいです。ただ、その一語の意味で
しっくりこない場合もありますので、
その際はOnlineアラビア語辞書も併せてご利用ください。

今後は、他地域の記事の種類を増やすか、
記事自体の自動翻訳にトライしてみます。

google newsとOnlineアラビア語辞書の融合

ジャスミン革命 Twitter(アラビア語)の自動翻訳
の流れで、世界情勢を「アラブメディアはどう報道しているのだろう?」
といった疑問が自然に沸いてきました。

それで、google newsとOnlineアラビア語辞書の融合をさせまして、
辞書なしでも原文を読みやすくするためのページを作成いたしました。

ダイジェスト記事内の、意味を知りたいアラビア語の単語に
マウスのポインターを乗せていただけますと、日本語の意味が表示されます。
*若干検索に時間がかかるので、完全一致に絞ろうか思案中です。

記事全文はリンク先よりご覧いただけます。
その際も、Onlineアラビア語辞書の文章検索機能をご利用いただければと存じます。

ご要望・ご意見はコメント欄からどうぞ。