• Drop us line:

    info@mdiua.com

  • Visit Our Office:

    Tokyo-Opera-City-Tower 24F, Nishishinjyuku, Shinjyuku-ward, Tokyo, Japan

  • Phone number:

    03-6859-2346

AIのコミュニケーション力「自然言語処理」

AIのコミュニケーション力「自然言語処理」

前回の投稿では、人間の五感・感情、及び行動に対比させながらAIの要素技術に関して解説をさせて頂きました。そちらで、人間の行動をAIに技術要素を照らし合わせると以下になることを解説しました。

  • 見る:画像認識
  • 聞く:音声認識
  • コミュニケーションする:自然言語処理(NLP)

本記事では、コミュニケーションする力である自然言語処理に関して深堀りしてお話をさせて頂きます。なぜ順番を無視して自然言語処理を一番最初に取り上げるかというと、私が自然言語処理がAI技術の中で一番好きだというだけの自己都合的な理由です(笑)。ただ、それだけでなく、コミュニケーションの元になる「思考」の部分をAIでどのように実現しているかについて解説すると、AIについてより理解が深まると思った次第です。

自然言語処理(NLP)の定義

自然言語処理(しぜんげんごしょり、英語natural language processing、略称:NLP)は、人間が日常的に使っている自然言語コンピュータに処理させる一連の技術であり、人工知能言語学の一分野である。「計算言語学」(computational linguistics)との類似もあるが、自然言語処理は工学的な視点からの言語処理をさすのに対して、計算言語学は言語学的視点を重視する手法をさす事が多い[1]データベース内の情報を自然言語に変換したり、自然言語の文章をより形式的な(コンピュータが理解しやすい)表現に変換するといった処理が含まれる。応用例としては予測変換IMEなどの文字変換が挙げられる。

自然言語の理解をコンピュータにさせることは、自然言語理解とされている。自然言語理解と、自然言語処理の差は、意味を扱うか、扱わないかという説もあったが、最近は数理的な言語解析手法(統計や確率など)が広められた為、パーサ(統語解析器)などが一段と精度や速度が上がり、その意味合いは違ってきている。もともと自然言語の意味論的側面を全く無視して達成できることは非常に限られている。このため、自然言語処理には形態素解析構文解析、文脈解析、意味解析などをSyntaxなど表層的な観点から解析をする学問であるが、自然言語理解は、意味をどのように理解するかという個々人の理解と推論部分が主な研究の課題になってきており、両者の境界は意思や意図が含まれるかどうかになってきている。

※日本語Wikipediaより引用

またまたWikipediaより引用文を持ってきました。またまた非常にわかりにくいですね(笑)。パーサやSyntaxや、こんな言葉が出てきたら大抵の方はすぐに嫌になるでしょう(私は萌えますが・・・)。こちらの解説内容をわかりやすく咀嚼していきたいと思います。何やら難しい言葉が並んでいますが、自然言語処理には以下の2つのパートがありそうですね。

  • 自然言語理解(NLU)
  • 自然言語処理(NLP)

Wikipediaの解説では両者の違いは、意思や意図が含まれるかどうかとの記述がありますが、正直それを聞かされてもますます混乱するだけですね。なのであまりそれらの区別について考える事はあまり意味をなさず、どちらも「人間の言葉をコンピュータで扱えるようにする」という目的のために使われるAI技術とみなして頂ければと思います。とはいってもすっきりしない方が多いと思うので、それぞれ少しだけ掘り下げてみる事にします。

自然言語理解(NLU)

まずは自然言語理解の説明からさせて頂きます。上記のWikipediaの説明には「意思や意図が含まれるかどうか」という記述があります。自然言語処理はコミュニケーションを実現するためのものという事を冒頭に記述しましたが、コミュニケーションは相手の話を理解し、その上で自分の話を伝えなければ成り立ちません。つまり言い換えると「相手の話の意思や意図を理解する力」がコミュニケーションにおいて非常に重要で、この部分こそ自然言語理解の役割という事ができます。

自然言語処理(NLP)

それでは次に自然言語処理の解説に移りますが、自然言語処理は自然言語理解の元に成り立っています。この意味をコミュニケーションに当てはめて説明をすると、自然言語理解によって、相手の会話の意思や意図を理解し、それに応じて返答を返しますが、その返答を返す方法こそが自然言語処理の役割と思って頂ければと思います。

まとめ

例えば、あなたが会社の同僚に朝、オフィスで「おはよう」と挨拶をされた場合は「おはよう」とフランクに返すでしょうし、上司から同じく「おはよう」と挨拶をされた場合は、「おはようございます」と経緯をもって返すと思います。このように全く同じ発言に対しても、時と場合や、立場や感情等によって、返答は変化する可能性があり、状況に応じて相手の発言を解釈して、その返答を考える力が自然言語理解。そして実際に返答を返す部分が自然言語処理と考えて頂ければと思います。

 

自然言語処理(自然言語理解)の利用例

それでは自然言語処理(自然言語理解)が世の中で実際に利用されている例を見ていきましょう。読者の皆さまが日常生活で使用しているものであれば、具体的なイメージがしやすいかと思うので、以下に例を紹介していきます。

検索エンジン

※Wikipediaより引用

「検索エンジン」と聞いたら皆さんが思い浮かべるのは、まずはこのGoogleか、もしくはYahooでは無いでしょうか?Googleに関してはもう説明は要りませんね。今や検索エンジンだけでなく、AI分野全体で世界を大きくリードする大企業で、GAFAの一社です。但し、そのGoogleも最初はこの検索エンジンから始まり、今でも検索エンジンがGoogleの核である事には変わりません。

それではなぜ検索エンジンが自然言語処理(自然言語理解)の利用例の代表格なのかと言うことを簡単に説明すると、大抵の読者の皆様は、Googleを使用してスマホやPCでネットサーフィンをしているかと思います。その際に例えば、日本製の格安スマホを探していると仮定すると、「日本製 格安スマホ」等の言葉を入力して、Googleで検索をされると思います。

「日本製 格安スマホ」という言葉が入力されると、Googleはそのキーワードの意図を解釈し、その意図にあったドキュメントをユーザに返却しますが、キーワードの意図解釈の部分が自然言語理解。そしてキーワードを入力してから、ドキュメントを返すまでの一連の処理を自然言語処理という事ができます。

つまり、1990年代にGoogleが世の中に登場した時から、Googleの中核は自然言語処理(自然言語理解)だった。という事は時代に先行してAIを中核の事業にしてきたので、Googleが今のAIを牽引する存在である事は疑う余地も無いですね。Google恐るべしです・・・

自動翻訳

自動翻訳も自然言語処理(自然言語理解)の代表的な利用例です。こちらも例にもれずGoogle翻訳は非常に精度も高く、大活躍しています。皆様も英語の文章を読んだり、書いたりする際によくGoogle翻訳を使用されているのでは無いでしょうか?

Google翻訳においては、例えば日本語の文章を英語に翻訳する例を考えてみると、日本語の文章の入力を受け取って、その内容を理解し、英語に翻訳をする部分が自然言語理解という事ができ、翻訳された英語の文章を返却する部分が自然言語処理という事ができるかと思います。翻訳の用途で使用される場合は、コミュニケーションとはまた趣が異なりますが、こちらも自然言語処理(自然言語理解)の代表的な利用例となります。

近年、Google翻訳の精度は非常に向上していますが、これは最先端のディープラーニング技術である、トランスフォーマーという技術が裏で使用されており、そのおかげで翻訳の精度が格段に向上しました。ディープラーニング、及びトランスフォーマーに関しては、複雑なので別途記事としてわかりやすくまとめさせて頂く予定です。

スマートスピーカー

こちらもまたGoogleの製品になりますが、スマートスピーカーで使われている技術も自然言語処理(自然言語理解)の利用例という事ができます。しかし、自然言語処理(自然言語理解)に関して話をすると、殆どすべてのものにGoogleが絡んでいますね。そしてその市場を握っているので、Googleは不動の世界トップのAI会社となりました。つまり、Googleについて理解を深めていけば、それがAIについて学ぶ事に繋がります。

さて、スマートスピーカーについて話を戻すと、スマートスピーカーを使用する際に、「部屋の明かりを明るくして」等、スピーカーに話かけるかと思いますが、まさにこのユーザの発言をスマートスピーカーが理解し、それに対応したアクションを選定する部分までが自然言語理解に相当し、スマートスピーカーの一連の動作が自然言語処理に対応しております。

スマートスピーカーは、ユーザと対話を通してコミュニケーションを行うため、自然言語処理の利用方法のイメージが掴みやすいと思います。

 

まとめ

AI要素技術の中でも、コミュニケーションを司る自然言語処理、及び自然言語理解に関する解説を行いました。どちらも人間の言葉をコンピュータに理解させる技術ですが、自然言語理解は意思や意図を理解する部分に用いられ、自然言語処理はそれを包含する形で一連のプロセスで用いられることを解説しました。

世の中で、自然言語処理(自然言語理解)が利用される場面は、Googleを始めとした検索エンジンや、自動翻訳、スマートスピーカー等多岐に渡るので、是非生活の中で自然言語処理(自然言語理解)がどのように活用されているか、意識をしながら実感してみてください。

次回からは、自然言語処理(自然言語理解)の代表格である検索エンジンを例にして、自然言語処理(自然言語理解)の各技術を咀嚼してわかりやすく解説を行っていきます。