BERT(バート)という言葉を聞いたことがあるでしょうか?
BERTはBidirectional Encoder Representations from Transformersという、NLP(Natural Language Processing:自然言語処理)を助ける機械学習手法のこと。
Google検索におけるBERTはどのように検索を助けているのか、GoogleがショートムービーにしてYoutubeで公開しました。
Googleは人が話す言葉の意味を理解できてきている
人は日常会話をするときに、声色、声のトーン、文脈などから話し言葉の意味を当たり前のように認識しますが、コンピューターにはただの「言葉の羅列」であり、認識は簡単ではありません。
例えば以下のような言葉、
mix the batter with the banana
バナナを入れた生地を混ぜるというごく普通のことですよね。
ミキシングスプーンを使うのか、何か調理器具を使って混ぜるのかは文章内から読み取れないにしても、『バナナを入れた生地を混ぜる』という言葉の意味は理解できます。
でも、この簡単な文章の意味を理解することがコンピューターには難しい。
「バナナをスプーンにして生地をかき混ぜる」と捉えるかもしれません。できないことはないですが…はっきり言って意味のわからない解釈ですよね。
ここで重要なのは、Googleが単語の意味や定義だけでなく単語が特定の順序で並ぶことでどんな意味になるのかを知る必要があり、その意味をAIが認識します。
多義語である”fine”を例にしてみましょう。
- I feel fine.
- I got a 10,000yen fine.
1は「気分がいい」ですが、2は「1万円の罰金を受けた」という意味で、同じ”fine”でも前後の単語によって文章の意味はまったく異なります。
このような単語の並びからAIが正しい意味を認識しようとします。
BERTは、これまでは無視されていた小さな単語も見逃さない
これまでは重要な単語と思われる言葉だけをピックアップして、『for』や 『to』のような小さい言葉は見流されてきましたが、『for』や『to』といった小さな言葉を省くとまったく異なる意味になることがあります。
BERTを用いることで、Googleはそのような小さな単語も見逃しません。
公開されたYoutube内で以下のような例が取り上げられています。
can you get medicine for someone pharmacy
BERTが用いられるまでは『for』を省いて読み取られていたため、「can you get medicine someone pharmacy=薬局で薬をもらえますか?」と言った質問になり、一般的な薬局の処方箋に関する情報がピックアップされてしまいます。
BERTにより『for』が認識されるようになると、「can you get medicine for someone pharmacy=薬局で誰かのために薬をもらえますか?」と言った意味になります。
『for』を見逃すかピックアップするかで大きく意味が異なるため、検索クエリに対する検索結果は変わりますね。
BERTは穴埋め問題で文章の意味を学習する
Googleは、BERTが自然言語を学習する方法も紹介しています。
言語学習の方法としては、あるフレーズのうち単語の約20%を隠して、その隠れた文章の穴埋めをすることで文章の意味を学習させているようです。
Youtube内では以下の例が挙げられており、
Fly Fishers use different bait depending on the season.
上のような文章のうち20%単語を隠して以下のようにします。
Fly Fishers 〇〇 different 〇〇 depending on the 〇〇.
単語を隠した〇〇に対して穴埋めのように単語を当てはめていきます。
Fly Fishers swat different bugs depending on the location.
フライフィッシングをする人は場所によって違う虫を叩く。
英文構成としては成り立っていますが、文章としては意味不明すぎますよね。
Fly Fishers eat different bait depending on the weather.
フライフィッシングをする人は天候によって食べる餌を変えます。
こちらの文章も構成は間違っていませんが、意味不明すぎてもはや状況がどうなっているのかよくわかりません。
Fly Fishers use different bait depending on the season.
フライフィッシングをする人は季節によって餌を使い分けます。
構成も内容も、すごく自然な文章になりましたね。
BERTはこのような穴埋めクイズのようなトレーニングを積み重ねていくことで、前後にどんな単語があるかによって当てはまる単語が異なる意味を持つことを学習するようですね。
文中の単語の並び順や先述した『for』や『to』のような小さな言葉を理解していくため、Googleは複雑な検索クエリに対しても最適な検索結果を返すようになっていきます。
ユーザーは「iPhone 画面修理 格安」と言った“いわゆるキーワード”と呼ばれるような検索方法ではなく、Siriなどを使った音声検索もそうですが、普段の話し言葉のようなクエリで検索するようになっています。
GoogleはBERTだけでなく、MUM(Multitask Unified Mode)と言ったBERTの1,000倍強力と呼ばれる技術を開発しています。これからますます自然言語処理を強化していくでしょう。
キーワードを考えたSEOライティングはこれから淘汰されていき、ユーザーから見てもGoogleから見てもわかりやすいコンテンツを作成することが大切になっていきそうですね。
コメント