『Language Generation Loss』というものをつくりました
先日(と言っても既に去年だけど)のGunma.webでライトニングトークのネタにさせて頂いたWebアプリ『Language Generation Loss』を公開します。
前のエントリで少し書きましたが、このアプリは文章をくりかえし翻訳することで元の文章を劣化させて楽しむものです。
たとえば、日本語→英語→日本語→英語→日本語というように、間に多の言語を挟み込むことによって、言い回しや単語そのものの欠損が発生し、思いもよらない結果(文章)が生み出されます。これは少し伝言ゲームに似ています。なお、入力する文章は日本語以外の言語にも対応しています。
挟み込む言語は選択できるようになっているので、言語によっては大分違う結果が得られるでしょう。 元にする言語と親和性の高い言語(文法や構造など)であれば、あまり変化が生まれないかもしれません。
以下が実行例。
吾輩は猫である。名前はまだない。
I am a cat. There is no name yet.
私は猫をしています。名前のないはまだありません。
I am a cat. Yet unnamed.
私は猫をしています。まだ無名。
余談ですが、ちょうど今読んでいるオライリーの『入門 自然言語処理』の<1.5.4 機械翻訳>に全く同じ「他言語を挟んでくりかえし翻訳する」という事柄が書かれていて非常に驚きました。
つぎに、これはオマケのようなものですが、Language Generation Lossの副産物で『ZEN mondo』という、チャットボットに似て非なる代物もつくってみました。
これは、くりかえし翻訳の結果を”相手の発言”として出力することで、ちょっと不思議なチャットログを生み出します。
以下は簡単な例(下にいくほど古い発言)。
??? : さようなら。
You : じゃあね。
??? : 早く家に行ってください。
You : そろそろ帰りたい。
??? : 私はジャガイモに乗っている。
You : ジャガイモも丸いからね。
??? : まあ、それは月のように見える
You : まあ、そんなもんだろう。
??? : これは、ジャガイモと同じです。
You : ジャガイモと同等だと。
??? : 小さなジャガイモ。
You : 小さいジャガイモ・・・。
??? : ちなみに、私はこれはかなり小さいジャガイモだと思う。
You : ところで、これはかなりくだらない物だと思うのです。
??? : こんにちは。
You : やあ。