自然言語処理技術を用いたシステム開発

AI(人工知能)の重要な技術である自然言語処理を用いたシステム開発について解説します。さらに、自然言語処理の活用例も併せて紹介します。AIの自然言語処理技術は、多くの企業において、今後の発展に欠かせない要素といえます

AI(人工知能)の機能は多くの人々を驚かせていますが、そのなかでも、自然言語を理解する能力と、自然言語を扱う能力は特筆に値するでしょう。
自然言語とは人間が扱う日本語や英語や中国語などのことで、コンピュータが理解できるコンピュータ言語と区別されています。
例えば、企業の公式サイトの問い合わせページで、質問内容を文字で入力すると、文字で返答してくれることがありますが、回答文を書いているのは、自然言語処理技術を搭載したAIかもしれません。
これほど身近になった自然言語処理技術を用いたシステム開発について解説します。さらに、自然言語処理の活用例も併せて紹介します。

自然言語処理のシステム開発の今

自然言語処理技術の実力は、この簡単な英文を読むと理解できるでしょう。

I am a cat. There is no name yet.
I have no idea where I was born.
I remember only crying meow in a dim and damp place.

夏目漱石の「吾輩は猫である」の冒頭です。
Google翻訳の英訳の実力を検証してみましょう。

吾輩は猫である。名前はまだない。
どこで生れたかとんと見当がつかぬ。
何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している。

これは、自然言語処理技術を搭載した、グーグルの「Google翻訳」で、ある日本語を英文に変えたものです。
元の日本語は、これです。

「じめじめ」も「ニャーニャー」もしっかり英訳

Google翻訳は「吾輩」が「私(I)」であることを知っています。また、「どこで生れたかとんと見当がつかぬ」には主語がありませんが、英文では正確に主語「I」を付けています。
そして「とんと」をあえて英語にしないところには、「翻訳家」としてのこだわりすらうかがえます。
さらに「見当がつかぬ」という昔の言葉を「I have no idea」と現代語訳しています。
「じめじめ」を「湿った」という意味のdampに訳せていますし、猫語も「ニャーニャー」から「meow」へと英訳しています。

「日本語→英語→日本語」で見事に原文を再現

Google翻訳の自然言語処理の有能さは、まだあります。
Google翻訳が翻訳した英文を、Google翻訳で日本語に直すと、こうなりました。

吾輩は猫である。まだ名前はありません。
どこで生まれたのかわかりません。
ぼんやりと湿った場所で鳴き声を鳴らしていたのを覚えています。

Google翻訳の開発チームはすでに、「I am a cat.」と「吾輩は猫である」を紐づけているようです。
それ以外の和訳文は、漱石の文体とは違いますが、漱石が伝えたかったことをしっかり、間違えず伝えています。
ただ、漱石は「薄暗い」と書きましたが、Google翻訳は「ぼんやり」と訳しています。また、「鳴き声を鳴らしていた」も、少しおかしな日本語です。
小さな違和感は残りますが、それでも見事に「日本語→英語→日本語」で、漱石の文章を再現しています。

日本語入力技術

自然言語処理は、いくつかの技術によって構築されています。
そのうちのひとつ、日本語入力技術は実は新しい技術ではありません。パソコン以前に、ワープロという文章作成専門の電子機器がありましたが、このころから、ひらがなから漢字に変換する技術が開発されていました。それも日本語入力技術のひとつです。
現代のスマホの日本語入力技術は、それをさらに進化させたものです。

具体的には、同音異義語の判別や、文脈や言い回しからや熟語からの推測といった技術が使われています。また、AIに日本語の構文を理解させたり、言葉の最小単位である形態素を教えたりして、自然言語処理がよりスムーズになるようにしています。

機械翻訳技術

自然言語処理技術が最も消費者に貢献するのは、翻訳でしょう。AI分野では「機械翻訳技術」と呼んでいます。
機械翻訳技術には規則ベース方式とコーパスベース方式の2種類があります。
規則ベース方式の「規則」とは、人が作成した翻訳知識のことで、伝統的な機械翻訳技術です。

コーパスベース方式の「コーパス」とは、「大量の訳文」「大量の文章」という意味で、AIの自動言語処理技術はこちらを使っています。
AIは、大量の訳文や大量の文章から、コンピュータが「自動で」翻訳知識を獲得しています。コンピュータが「勝手に」翻訳スキルを獲得してくれるので、数億本の文章や文脈すら理解できるようになります。

対話システム技術

iPhoneのSiriや、ソフトバンクのペッパーと「会話」体験した人もいるでしょう。コンピュータが、人が話す自然言語を理解する力も驚嘆に値しますが、言葉のキャッチボールができることは、実はさらに「すごいこと」といえます。
会話スキルの元になっている対話システム技術には、ルールベースと自動生成の2種類があります。

ルールベースとは

ルールベースは、あらかじめ会話のシナリオ(スクリプトともいう)をコンピュータに入力しておき、人がそのシナリオのパターンに「はまった」ときだけ、うまく会話が成立する、というものです。
「シナリオのパターンにはまったときだけ」と聞くと、オウム返しをイメージするかもしれませんが、AIを使えばシナリオパターンをほぼ無数につくることができます。そうすることで、シナリオにはまる確率が高くなるので、自然な会話に近くなります。

自動生成とは

自動生成にはシナリオはありません。これはディープラーニングというAI技術を使って、ある単語から別の単語を予測して文章をつくっていきます。
自動生成のほうが「コンピュータと会話している感じ」に近いといえるでしょう。

AIによる自然言語処理技術の活用例

AIによる自然言語処理技術は、すでに身近な生活のなかで活用されています。先ほど触れたGoogle翻訳やSiri、ペッパーは「目立った」事例ですが、目立たないものもあります。

例えば、病院は、患者の病歴や症状や治療方法や入院中の様子などを記載したカルテを、膨大な数、保有しています。例え病院に医師が30人いたとしても、それらをすべて読み込むことはできないでしょう。しかし自然言語処理技術を搭載したAIならできます。
そしてカルテをすべて読み込んだAIに、「歩行困難に関係するワードや報告や治療や薬に関する記述」を探させることができます。そうすれば、歩行困難な患者をピックアップして予防治療をすすめることもできます。また、歩行困難と、特定の病気や特定の生活習慣との関係をみつけることができれば、寝たきりのお年寄りを減らせるかもしれません。

 

人知は超えないが人知の総体は把握できる

日本のAIコンピュータが日本語(自然言語)を理解するということは、日本語で書かれたありとあらゆる文章を読み込めてしまう、ということになります。
人知は人にしか生み出せないので、AIが人知を超えることはないでしょう。しかし、すべての人の人知の総体を、コンピュータが理解することは可能になるかもしれません。
それが自然言語処理技術の価値のひとつです。