AI導入、ホントのとこ ~失敗しないための心構えと実践ノウハウ~

第4回:自然言語処理

概要

あらゆるところで目にするようになったAI。しかしAIの恩恵を受けるにはテクノロジーへの理解と、正しいアプローチが必要不可欠です。 そこで数々のAI関連プロジェクト・サービスを経験してきた筆者が、AI関連技術に対する基本的な知識と、ビジョンの描き方、導入時のポイントを具体的な事例を交えて各月でお届けします。

目次
「自然言語処理」のシステムを独自で作っては駄目
チャットボットが「人工無能」で何が悪い

「自然言語処理」のシステムを独自で作っては駄目

のっけから飛ばし気味だが、ハッキリ言って「自然言語処理」は難しい。今更、自前で作るのは止めよう。 

求める機能が「文章要約」や「メール振り分け」など、「人間が行っている作業」であることが多いため、「需要予測」や「売り上げ予測」などの一部の専門家や担当者が専用ツールを用いて実施している作業に比べれば、普段自分自身が何気なくやっていることなのでイメージがつきやすく、「自然言語処理」に対する難易度判断基準は実際よりも大幅に低くなっているというのが、筆者の認識である。同じことは、前々回のコラムにて述べた「画像認識」についても言える。

しかしながら、実際問題「自然言語処理」はイメージするほど簡単なものではない。「何を、どのレベルでやりたいのか」に因るところはもちろんあるが、少なくとも「人間と同じような理解」を行うことは、ほぼ不可能といっていい。なぜならば、人間が文章を理解する際には、その前提として一般常識を始めとするデータ化不可能なレベルでの膨大な知識・経験があるわけで、仮にその一部、例えば特定業務知識だけでもシステムで実現するのは大変なことであるからだ。

 それに、なんと言っても「日本語」が難しい。ひらがな、漢字、カタカナ、英数字と4種類の文字が登場する上に、半角全角も入り乱れる。また必ずスペースが入る英語のように単語の区切りが明確ではなく、言い回しも多種多様であり、尊敬語・謙譲語などもある。

英語であれば、そのままの形で「word2vec」などの「AI処理」にかけることができるが、日本語の場合は、単語の並びが前後で入れ替わっても文章として成立するため順序情報が使えない上に、それ以前にまずは半角全角の統一、英数字や固有名詞を置き換え・除去するといったクレンジングをかけた上で、形態素解析により単語レベルに分割し、さらに原型に戻し、名詞・動詞・形容詞以外を除外する、といったような「前処理」が必要になる。この段階で図らずとも落ちてしまう情報も存在するわけで、最終的な「認識精度」低下の要因となってしまう可能性もある。

 もちろん、単純なキーワード抽出レベルの文章タグ付けや検索システム、ちょっとした機械学習機能を持ったメール振り分けシステムであれば自作も可能だろう。だが、そういったものはわざわざ自作しなくても、もっと気の利いたものが世の中に掃いて捨てるほどある。近年の「AIブーム」が到来するもっと前から当然ながら「自然言語処理」は存在し、それを用いたシステムは作られてきており(実際、筆者自身も5年以上前に、とある企業への問い合わせ振り分け+感情分析のシステムを作ったことがある)、そういった意味では「枯れた」領域なのだ。

そして、こういった「自然言語処理」システムの実現においては、教科書に書いてあるようなデジタル的な知識だけではなく、経験に基づいたアナログ的なセンスが必要となる。この点も、「画像認識」と似ているところである。

といったところで今更、ゼロからスクラッチで何かを作る理由はどこにもない。もし身の回りで、「今度、ウチの独自開発で〜〜〜の書類データを分類する検証をやるんだよ」なんていう声が聞こえたら、「え?それって、なにか意味あるんですか?」と某ひ○ゆき氏ばりに止めに入っていただきたい。

 

チャットボットが「人工無能」で何が悪い

「自然言語処理」の最近はやりの利用用途といえば「チャットボット」は外せないだろう。実は本連載の次回テーマは「チャットボット」なのだが、今回は「自然言語処理」に関連する部分のみ、先行で述べることにしよう。

 チャットボットにおける「自然言語処理」の使い所といえば、

・入力文章のクレンジング、正規化

・意図認識

・回答生成

・統計処理・テキストマイニング

 が挙げられるが、この中で「AI」が絡むのは「意図認識」「回答生成」になる。

 現在、筆者はチャットボットサービスの統括をしており、AI関連の展示会などに出展する機会も多い。
ある時、来場者の方とのこんなやりとりがあった。
「これは人工無能ですか人工知能ですか?」
「え?まぁ、シナリオを実装しないといけないので、どちらかといえば人工無能になりますかね…」
「そうですか…(´・ω・`)」

殊の外すごくガッカリした顔をされてしまったのだが、当然ながら「意図認識」については弊社のチャットボットも「AI」にて行っている。

ただ「回答生成」については、シナリオ作成含めて人手にて行う形となっているため、当方としては「無能」と答えるのも嫌だな…と思いつつも、「人工無能です」と答えざるをえないわけだが、正直なところ「『回答生成』を自動で行う『人工知能』のチャットボットが『業務用途』で使えるわけがない」というのが筆者の見解である。某女子高校生チャットボットのように、雑談を目的としたチャットボットであれば多少中身が変でも問題ないが、業務用途ではそうはいかない。それに、某女子高校生チャットボットにしても単語の関連付けを元に回答しているに過ぎず、種々の業務情報を元に「『業務ルールに基づく』質問―回答」のセットを作り出すような技術・製品は、少なくとも今の世の中にはないはずだ。あったとしても非常に限定的かつ、精度の低いものだろう。今思えば、逆に「『人工知能』で良いのですか?」と聞き返したいくらいである。

また、「自動学習」をうたう「人工知能」らしいチャットボットもいろいろとあるが、申し訳ないが実際のところは眉唾ものだと思っている。
というのも、登録されていない「答え」を、業務知識を持たないチャットボットが自律的に生成できるわけがなく、「答え」については人間が登録するより他ないだろう、というのがそう考える根拠の一点目。

次に、とはいえ恐らく大半のものが指す「自動学習」とは、「質問」と「答え」のひもづけを自動で行ってくれるものであり、その方法としては会話終了後のアンケート結果や有人オペレーターの会話履歴などを用いることが考えられるわけだが、さて、「チャットボット」により自動で「ひもづけ」ができたとして、その「ひもづけ」の「正しさ」は一体どこの誰が担保するのだろう?というのが二点目である。

というところで、チャットボットの導入においても、「自然言語処理」に対してなんとなく抱いている期待値と実際のギャップを埋めることが大切である。

連載一覧

コメント

筆者紹介

高田 和弥(たかた かずや)
ブレインズコンサルティング株式会社
AI&RPAサービスグループ こらろぼチーム 統括マネージャー

大手ITコンサルティング会社およびIoTスタートアップでの経験を活かし、プロジェクトマネジメント、新規サービス立ち上げ、多数のプロジェクトへの技術支援、社内開発標準化、等に従事し、現在は同社が展開するAIチャットボットサービス「こらろぼ」のサービス統括を務める。

バックナンバー