日韓辞書作成における機械処理について開発者に聞いてみました

高電社ホームページをご覧の皆さま、こんにちは!初めまして。高電社の佐竹です。

自社Webサイトのコンテンツの充実を図るため、弊社開発室からも皆様に様々な情報をお伝えしようと「高電社開発室ブログ」を開設いたしました♪

理系が苦手、技術に詳しくない営業アシスタントの佐竹が、弊社の開発者に体当たりで取材をし、対談形式でお送りする「高電社開発室ブログ」。 ぜひお読みください(*^_^*) では、早速ですが本題に入りましょう!!

高電社といえばソフトウェアの開発や人の手を使った人力翻訳・通訳、モバイル・インターネット関連コンテンツ開発やASPサービスなど、翻訳、文字入力に関する様々なサービスを展開していますよね。
実は、上記のサービスの他にも、多様な技術を駆使し日々様々な開発に取り組んでいるんです!!

「開発室ブログ」記念すべき第1回目となる今回は、日韓辞書作成における機械処理について開発4課の川上さんにお話を伺いました~!!
川上さん、よろしくお願いしますっ(`・ω・´)!

自然言語処理を通じて辞書構築が可能!

佐竹:日韓辞書作成における機械処理を開発中ということですが、具体的にはどういった内容なんでしょうか?韓国語大好きな私としては、とてもワクワクする内容になる気がしています!!よろしくお願いいたします!

川上:よろしくお願いします。まず今回担当した業務を簡単にご説明しますと、非常に大量の日本語・韓国語の対訳文から、統計的自然言語処理によって、日韓の辞書を作成するというものです。 コーパスの対訳数が1000万以上あり、そこから対訳となる単語を自動抽出します。そして今回の開発では日韓両言語の高い対応精度が認められました。

佐竹:...初っ端からすみません、基本的な質問で申し訳ないのですが、まず「自然言語処理」とは何なのかというところから教えて頂いてよろしいでしょうか。

川上:自然言語処理とは、日本語や英語、中国語、韓国語など人間が日常的に使っている言語(=自然言語)をコンピュータに処理させるための技術のことです。 弊社おなじみのChineseWriter11などのソフトウェアに搭載されている、IMEの予測変換・漢字変換に、この自然言語処理が応用されているんですよ。

佐竹:なるほど!身近なところでこの自然言語処理は使われているんですね!そして、日韓の対訳文から対訳となる単語を抽出ということですが、これは例えば、
日「私はアニメが好きです」韓「저는 애니메이션을 좋아합니다」
→対訳となる単語を自動抽出すると...「私ㅣ저 / はㅣ는 / アニメㅣ애니메이션 / がㅣ을 / 好きㅣ좋 , 아 / ですㅣ합니다」こうなるということですか?

川上:そうですね。両言語の対応度が高いということは、上記のように1つの単語に対する日本語と韓国語が相互に正しく抽出される精度が高いということを意味します。

佐竹:1000万という対訳数もすごいですし、その中から自動抽出で日韓の辞書を作成できるのはデータ整理をする上で非常に役立ちそうです。

川上:少し話は逸れますが、日本語と韓国語の外来語の読みはかなり違いますよね。上記を例に挙げると、英語で「anime」の場合
日本語「アニメ」韓国語「애니메이션(エニメイション)」になります。

佐竹:そうなんですよ!現地で通じなくて特に驚いたものが「マクドナルド」と「バーガーキング」でした!韓国語では「맥도날드(メッドナルドゥ)」、「버거킹(ボゴキン)」、ちなみにハンバーガーは「햄버거(ヘンボゴ)」と言います。

文字に起こしてみると、そんなに違いを感じないかも知れませんが実際会話の中でポンッと出てくると、本当に全く通じないんです(泣) !外来語でもこんなに発音が違うとは興味深いですよね!

ところで先ほど出た「コーパス」という言葉、よく耳にするのですが、いったいどういったものなんでしょうか?

コーパスとは!?よく耳にする用語「コーパス」について解説します。

川上:コーパスとは、書き言葉や話し言葉を大量に収集し、データベース化した言語リソースのことです。
今回の事例では日本語・韓国語の2言語ですので、こういったものをバイリンガルコーパス(対訳コーパス)といいます。異なる言語間の文と文が対訳(ペア)の形でまとめられたコーパスのことを対訳コーパスと言うんですね。

佐竹:機械翻訳など、自然言語処理における学習データとして利用するためなどに構築されたものが対訳コーパスなんですね。

川上:はい。今回の事例としては、対訳コーパスの中で現れた単語と単語に着目して日韓の対訳語を抽出するという活用の仕方です。
また、自然言語処理・語学教育・人工知能(AI)といった様々な分野でこの対訳コーパスは使用されていて、そのニーズは年々高まりを見せています。特に、大量の対訳コーパスから自動的に翻訳処理を学習するニューラル翻訳や、統計翻訳において非常に重要なものとなっています!

佐竹:本当に様々な分野で応用されているんですね!対訳コーパスを学習させることで、システムの構築や翻訳精度の向上を実現できるということですね。

川上:そうですね。ところで自然言語処理を研究する上で重要なワード「形態素解析」というのはご存じですか?

自然言語処理の分野における主要なテーマ「形態素解析」とは?

佐竹:形態素解析...初めて耳にする用語です!解説をお願いします!! (`・ω・´)

川上:「形態素解析」とは、文を「意味を持つ最小限の単位(=形態素)」に分解して、それぞれに品詞タグをつける技術のことです。文章やフレーズを形態素に分解することで、文法や意味を解析するのに役立ちます。
例えば、「私は公園で運動します」という文章の場合、「私(代名詞)/は(副助詞)/公園(名詞)/で(助詞)/運動(名詞)/し(動詞)/ます(助動詞)」
というように文章を分割していきます。
例えるとするなら、どこかに行こうとして目的地までの道が、「文」だとすると、その道が通る地区ごとに道に区切りを入れて、それぞれに地区名(町名)をつける作業が、形態素解析ですかね。
この形態素解析技術、どこかで習ったような気がしてきませんか?

佐竹:どこだろう...あっ!!なるほど、昔国語で習った品詞分解と同じですね!

川上:実はこの形態素解析は、私たちがよく使う様々なツールに使用されているんですよ。
例えばインターネットの検索エンジンなどで「大阪の観光地」と検索した場合、上記で説明した形態素解析の働きによって「大阪/の/観光地」とまず単語に分割されます。そしてその単語について検索されます。

佐竹:普段使っている検索エンジンにも「形態素解析」が使われているとは...驚きです。

川上:そうですね。機械翻訳や人工知能(AI)などにこの形態素解析は使われています。

佐竹:様々なところでこの形態素解析は活用されているんですね。最初は「形態素解析」という言葉のみを聞くと難しそう、複雑そうだなと思っていたんですが、応用例を聞いてなんだか馴染みやすさ、親近感を感じ始めています!

韓国語特有の分かち書き情報を再現しました!

佐竹:今回のコーパスの形態素解析にあたり何か工夫した点はありますか?

川上:形態素解析の際、韓国語特有の分かち書き情報が失われるため、 それを元に戻す処理を入れています。

佐竹:ここで言う分かち書きとは、文章の中に適宜、区切りを入れて文を読みやすくする正書法のことですよね。
어제 친구와 밥을 먹었습니다. / 昨日友達とご飯を食べました。
  ↑このようにスペースを入れます。

佐竹:今回のような機械処理による辞書作成は、初めての取組みでしたか?

川上:実はこれまでにも、中日の辞書作成作業を行ったことがありまして、その技術が今回の下地になっています。 一例として以下のような業務にも携わりました。 詳しくはこちらの報告書をご覧ください。
(参考)平成27年度の辞書作成に関する調査事業
・中国語特許文献の機械翻訳のための辞書整備及び機械翻訳の品質評価に関する調査

佐竹:この時の経験が今回の開発に繋がったんですね! 両言語の対応精度も高いということで、今後の更なる開発にも期待が高まります!

川上:弊社の対訳コーパス作成においては、自然言語処理技術と人の手による翻訳という 2つの強みが有機的に結びつく形で作業が進められております。

いかがでしたか?
今回は膨大なデータの中から、統計的な処理を行い 辞書を構築する技術について開発者に取材をしました。

「自然言語処理?」「コーパス?」「形態素解析?」と、 技術用語も分からない状態での体当たり取材だったのですが、 用語の説明や、応用例を聞き興味が湧いてきました!

普段の生活で何気なく使っているサービスにも実は こうした様々な技術が集約されているのを改めて知ることができ 大変勉強になったのと同時に、ソフトウェア開発会社の社員として 自分の勉強不足を反省した次第であります...(・ω・` )

今後もこちらの開発ブログを通し、皆さまに開発情報をお伝えしながら 私自身も学習していければいいなと思います♪

今回ご紹介した対訳コーパスはアプリやシステム、研究開発など、 様々な用途で活用いただけます。
対訳コーパスや、自然言語処理に関するご相談がございましたら是非お問い合わせください。

自然言語処理に関するご相談はこちらからお願い致します >

次回の「開発室ブログ」もお楽しみに!
ご意見・ご感想もお待ちしております。