コンピュータはいかに「言語」を理解するか?

コンピュータ言語,自然言語処理
(写真=PIXTA)

なにげなくわれわれが使っている「言語」。コンピュータにとっては実は、言葉の意味を理解するのは非常に難しい。音声や文章からどの言語なのか判別し、単語のつながりと文法の使い方から意味を明らかにしなければならず、大変複雑な処理が必要だからだ。

コンピュータで人間が使う言葉を扱い、処理させる技術は「自然言語処理」と呼ばれており、より具体的には自動音声認識や機械翻訳がそれに当たる。最近、劇的に研究の進んでいる分野でもある。ただ、コンピュータに言語を理解させるためのアプローチは、どうやら(そしてもちろん)われわれ人間が言語を操るのとは大きく異なるようだ。

コトバの統計処理で導く「確からしさ」

人にとっては意識せず簡単に使っている言葉も、コンピュータにとっては複雑でなかなか意味まで理解するのは難しい。中でも翻訳は、一つの言語(たとえば日本語)から別の言語(英語)の構文に、意味を移し替えるプロセスとされるが、多くの自動翻訳ソフトでは十二分に使える品質ではなかった。

従来、多くの自動翻訳では、異なる言語の構文同士の間で移し替えるアプローチが主流だった。人間が翻訳する過程をコンピュータに模倣させてきたということだ。ただ、単語同士のつながりがおかしくなってしまうことも多かった。

そこに登場したのが、「機械統計」による翻訳だ。簡単に言えば、コンピュータに大量の文章を2つの言語で読み込ませて照合。「どう理解するのが統計的にもっともそれらしいか」というアプローチだ。つまり、2つの言語の対応関係を統計的に解析することで、「最も確からしい」翻訳文を作らせられるというわけだ。

ただ、コンピュータはこの時、言語については理解しておらず、文法規則についても触れることはなく、人間のように言語を理解しているとは言い難い部分もある。

ココにも「Deep Learning」の威力

また最近の自然言語処理の進化には、人工知能の開発への応用などで最近注目を浴びた「Deep Learning」が大きく影響している。Deep Learningとは、脳の神経回路の構造にヒントを得た「ニューラルネットワーク」というモデルを活用したもので、従来は単一処理だったデータの解析を、多層化することでより深い解析を可能にしたものだ。

Deep Learningは画像認識などにも使われているが、言葉の認識への応用も注目されている。自然言語処理への活用にはまだ、難しい点もあるが、Deep Learningの音声認識への応用はある程度進んでおり、一定の成果も出ているという。

具体的な活用例を見ておこう。Facebookが先日発表した「DeepText」だ。同プログラムは、テキストの内容を理解する人工知能エンジンで、Deep Learningを取り入れている。SNS・Facebookは従来から、ユーザーの投稿の内容を判断して、興味を引きそうな内容を上位に表示するアルゴリズムを取り入れており、DeepTextに置き換えることで、処理をより迅速に行うという。加えてスパムやヘイトスピーチなどの迷惑コメントの除去も自動化されるとのことだ。

自然言語処理の最新事情

画像や音声の認識に比べるとまだまだ難しい面はあるとは言え、Facebookの「DeepText」のように自然言語処理の研究や実用化はDeep Learningやビッグデータの活用、ニューラルネットワークによる解析など近年大きな進展を見せている。

現在の自然言語処理の動向と最新事情も見ておこう。自然言語処理については数々の研究が行われているが、日本マイクロソフトが豊橋技術科学大学と共同で行っているのが、災害時などのリアルタイム翻訳だ。

特に、災害情報や医療情報など緊急を要する場合であっても、外国語では十分な情報を提供できなかった。インバウンド需要を見据えれば、旅行者などに十分な情報を提供できるようになる点で大きな意味があるだろう。いつ実現できるのか、注視しておくとよいだろう。(提供:Innovation Hub

【編集部のオススメ Innovation Hub記事】
邦銀初のスタートアップ アクセラレータ・プログラム運営の舞台裏
新しいFinTechか? 「RegTech」が変える金融規制
「機械学習」と「ディープラーニング」は何が違うのか?
イノベーションの1丁目1番地? ブランソン、マスク、ホリエモンが目指す「宇宙」
アナリストと自然言語処理レポートは共存できる MUFG FinTechアクセラレータグランプリ ゼノデータ・ラボ 座談会