Google Cloud (旧GCP)でAI・機械学習を活用してレコメンドエンジンを作ってみよう

Google Cloud (GCP)でAI・機械学習を活用してレコメンドエンジンを作ってみよう

GCP

投稿日:2021/03/13 | 最終更新日:2021/06/04

本記事では、レコメンドエンジンについて説明します。レコメンド(Recommend)とは、「勧める」「推薦する」という意味の英単語で、レコメンドエンジンとは、オンライン・ショッピングサイトにおける顧客ごとの趣味趣向に沿ったお勧め商品を紹介するシステムのことを言います。

たとえば、オンライン・ショッピングサイトの大手、Amazonでも、サイトにログインしている顧客ごとのお勧め商品がトップページに紹介されていますが、これにはレコメンドエンジンが使用されています。

Amazonだけでなく、多くのショッピングサイトがレコメンドエンジンを導入しており、ショッピングサイトの運用にはレコメンドエンジンの存在は必要不可欠といっても過言ではありません。

特に、コロナ禍の昨今では、オンライン・ショッピングでの競売が激化しています。実店舗での売上は減少の一途を辿る一方、オンライン・ショッピングにおける売上の比率は増加傾向にあります。

レコメンドエンジンを導入することにより、顧客が欲しい商品を、顧客が望むタイミングで、かつワンクリックで購入できるような仕組みを提供することが可能となります。

本書では、Google Cloud (GCP)のレコメンドエンジンについて、詳述したいと思います。

キーワード解説

・人工知能

人間が作った、知能を持つコンピューターのこと。人工知能の意味を持つ英熟語、「Artificial Intelligence」の頭文字を取り、「AI」とも呼ばれる。

さらに理解を深めたい方におすすめの記事は以下です。
【徹底解説!】人工知能(AI)の機械学習と深層学習の違いとは?

【あなたは知っている?】AI(人工知能)の仕組み、作り方、活用事例まで徹底解説!

・アルゴリズム

処理の手続きを一般化したもの。

・データベース

データを管理するためのシステム。

・リレーショナル型データベース

現在、主流となっているデータモデルのデータベース。データを2次元の表で表す。Oracle、MySQL、SQL Server、PostgreSQL、SQLiteなどがリレーショナル型データベースの代表的な存在である。

さらに理解を深めたい方におすすめの記事は以下です。
RDB(リレーショナルデータベース)とは?NoSQLデータベースとの違いを徹底解説

・NoSQLデータベース

リレーショナル型データベース以外のデータベース。リレーショナル型データベースの欠点である、大量データの操作を克服するために考案された。

人工知能と機械学習

ここ数年、人工知能がブームです。さまざまなシステムが、「人工知能搭載」などとうたっており、人間のかわりに業務が自動化できるなどと宣伝しています。現在の人工知能ブームは、「第三次人工知能ブーム」と呼ばれています。「第三次」のまえには、「第一次人工知能ブーム」と「第二次人工知能ブーム」が存在しました。

第一次人工知能ブームは、1950年代から1960年代に起きました。第一次人工知能ブームのキーワードは、「推論と探索」です。第一次人工知能ブームは、パズルのような問題を解くためのアルゴリズムが中心で、現実世界の問題を解決するにはほど遠く、「トイプロブレム(Toy Problem)」(おもちゃの問題)を解くためのものだと揶揄(やゆ)され、ブームは過ぎ去りました。

第二次人工知能ブームは、1970年代後半から1980年代前半に起きました。第二次人工知能ブームのキーワードは、「知識表現」です。第二次人工知能ブームの人工知能は、「エキスパートシステム」と呼ばれました。専門家の持つ知識をデータベース化することで、専門家が持つ知識をシステムから利用できるようにすることが目的です。

しかし、データベース化された知識にしか対応することができず、現実世界におけるさまざまな問題点を解決するには至りませんでした。そして、現在の第三次人工知能ブームに至ります。第三次人工知能ブームのキーワードは、「機械学習」です。機械学習とは、機械(人工知能)が持つ学習機能のことを言います。

第三次人工知能ブームを語るにあたっては、「ビッグデータ(Big Data)」の存在が欠かせません。ビッグデータとは、さまざまな種類の大量のデータのことを言います。

人工知能は、この大量データのなかから「ある規則性」を見出すことで、自ら学習します。これを、「深層学習(Deep Learning:ディープラーニング)」と言います。これからお話しするレコメンドエンジンについても、この機械学習を利用した人工知能が利用されています。

レコメンドエンジンとは?

レコメンドエンジンには、機械学習のアルゴリズムが利用されています。レコメンドエンジンの場合、ビッグデータに該当するものは、顧客ごとの商品の購買履歴や検索履歴、閲覧履歴など、オンライン・ショッピングサイト上における行動履歴です。

これらの行動履歴は、データベースに保存されます。その行動履歴は膨大な量のデータ(ビッグデータ)となり、それらはレコメンドエンジンによって解析されます。レコメンドエンジンは、その解析結果をもとに、顧客ごとにお勧め商品を紹介します。これを、「レコメンデーション」と言います。

レコメンドエンジンは、数ある商品のなかから顧客にあった商品を絞り込み、お勧め商品として表示します。この「絞り込み」のことを、「フィルタリング」と言います。「フィルタリング」には、大きく分けて、次の3つの種類があります。

1. 協調フィルタリング

「商品Aを購入した顧客は、商品Bを一緒に購入することが多いため、商品Aを購入した顧客に対し、商品Bをお勧め商品として紹介する」ことを「協調フィルタリング」と言います。

例として、アメリカのマーケット分析の結果によると、「おむつを購入した顧客はビールも一緒に買う」傾向があるそうです。協調フィルタリングでは、レコメンデーションの際に商品情報を必要としないため、「おむつとビール」のような何の関連性もない商品がお勧め商品として紹介することが可能で、利用者にとっても思いがけない新たな商品を発掘するきっかけとなります。

ただ、協調フィルタリングの場合、レコメンデーションに必要なデータ量が少ないと、お勧め商品として掲載される商品の精度が悪いという欠点があります。これを、「コールドスタート」と言います。コールドスタートの欠点を示す例として、ショッピングサイトに新商品を追加した場合、その商品はまだレコメンデーションに関するデータを持っていないため、新商品であるにも関わらず、お勧め商品として紹介されません。

2. コンテンツベース・フィルタリング

「メーカーAのパソコンを購入した顧客には、メーカーAの他の商品を紹介したり、他のメーカーのパソコンを紹介する」ことを「コンテンツベース・フィルタリング」と言います。コンテンツベース・フィルタリングは、商品情報(コンテンツ)と顧客の趣味趣向の関連性をもとにレコメンデーションを行います。商品情報は、その内容によって予めグループ化されており、顧客がどのグループの商品を検索したり購入したかをデータとして蓄積します。

そのデータをもとに、顧客ごとにグループ化された商品をレコメンデーションします。コンテンツベース・フィルタリングの欠点としては、いつも同じような商品がお勧め商品として紹介されてしまうことが挙げられます。また、商品の数が多い場合、商品情報のグループ化に手間がかかります。

3.クラスタ・フィルタリング

カミソリを使うには、カミソリの刃を必要とします。そのため、カミソリを購入された顧客にカミソリの刃をお勧めするように、「クラスタ・フィルタリング」とは、顧客の行動履歴とは一切関係なく、一緒に購入すると良いと思われる商品をお勧めすることを言います。

クラスタ・フィルタリングは、顧客の行動履歴とは一切関係がないため、レコメンデーションエンジンの導入直後からでも利用可能なフィルタリングです。レコメンデーションの例としては、次のようなものがあります。

1.あなたにおすすめの商品

オンライン・ショッピングサイトのトップページなどにお勧め商品を表示します。その顧客が購入する可能性が最も高い商品を予測し、すぐに購入できる位置に表示します。

2.この商品を見ている人はこんな商品も見ています

商品ページごとにお勧め商品を表示します。複数の顧客の行動履歴より、閲覧中の商品に紐づいたお勧めの商品を表示します。

3.この商品を購入した人は、一緒にこんな商品も購入しています。

商品を購入したあとのページにお勧め商品を表示します。複数の顧客の行動履歴や、商品のコンテンツ情報に基づくお勧め商品を表示します。

レコメンドエンジンでできること

レコメンドエンジンを活用すると、たとえば次のようなことが可能です。

1. ショッピングサイトにお勧め商品を表示する

最も、一般的なレコメンデーションの例です。自社のショッピングサイトにレコメンドエンジンを組み込むことで、顧客により多くの商品を購入していただくきっかけを提供することができます。

また、的確なレコメンデーションは、商品検索の手間を省かせることができ、顧客においてもサイトの利便性が向上する結果が期待されます。

2. Webサイトに広告としてお勧め商品を表示する

ショッピングサイト以外のWebサイトでも、インターネット広告としてレコメンデーションを利用することが考えられます。たとえば、閲覧しているWebサイトのコンテンツに沿った内容の広告を表示することが可能です。

3. 顧客のニーズにあった広告メールを送信

広告メールがブロックされる理由としては、その広告メールの内容が、顧客のニーズに全くあっていないからでしょう。男性に対し、女性専用の化粧品に関するメールを送信しても、たいていはスパムメール扱いされるでしょう。

広告メールを送信する際も、レコメンデーションを利用することで、すべての顧客に同じ内容のメールを送信するのではなく、顧客の趣味趣向にあった内容のメールを送信することが可能となります。

4. 実店舗でもフィルタリングの結果を利用する

収集した顧客の行動履歴から導き出されたフィルタリングの結果を実店舗でも活かすことが考えられます。たとえば、前述の「おむつとビール」の話しのように、実店舗においても、「おむつ」売り場の近くに「ビール」を置くなどの工夫を用いることが考えられます。

このように、レコメンドエンジンは、強力な販売促進ツールとしての効果が期待できます。特にコロナ禍では、実店舗における収益は落ち込み、ショッピングサイトでの売上の比率が伸びてきていますので、効果が薄くなってきた対面営業のかわりとして、レコメンドエンジンに投資するほうが、収益効果に期待が持てます。

また、商品の宣伝だけでなく、サイト閲覧者の趣味趣向に沿ったコンテンツを表示させる際にも、レコメンデーションを利用することができます。たとえば、サイト閲覧者にお勧めの記事を表示することで、サイトからの離脱率を防ぐことができます。

Google Cloud (GCP)のレコメンドエンジンについて

Google Cloud (GCP)のレコメンドエンジンは、「Recommendations AI」というサービスによって提供されます。Recommendations AIは、Googleの機械学習アルゴリズムを利用しています。

サービス導入直後、顧客の行動履歴に関するデータが存在しないため、商品情報に関するデータのみをレコメンドの対象とします。顧客がオンライン・ショッピングサイトを利用するたびに、顧客の行動履歴データはGoogleのストレージサービスに蓄積されますので、そのデータに基づいてRecommendations AIは顧客の趣味趣向を解析し、最適な商品をレコメンドするように学習します。

レコメンドは、自動で定期的に学習することもできますし、手動で学習することもできます。

データの収集(Collection)

レコメンドエンジンは、顧客の行動履歴を収集します。この行動履歴は、顧客が意識しているかそうでないかに関わらず、収集されます。

たとえば、顧客が商品に対して何らかのコメントを残す場合は、顧客は商品に対する評価を意識して行いますが、顧客が商品を検索したりや閲覧した履歴がオンライン・ショッピングストアのデータベースに蓄積されていることは、顧客の意思に関係なく行われています。

データの保存(Storage)

顧客の行動履歴がレコメンドエンジンに蓄積されるほど、レコメンデーションの精度は向上します。顧客の行動履歴を蓄積するデータベースは、リレーショナル型データベースでもNoSQLデータベースでも可能です。

リレーショナル型データベースの方が一般的に普及しており、扱いやすいですが、大量のデータを操作するには、速度の面において、NoSQLデータベースに軍配があがります。

データの分析(Analysis)

レコメンドエンジンでは、どのタイミングでレコメンドを行うか、またどのような商品をレコメンドするかを設定する必要があります。

たとえば、顧客が商品を閲覧しているタイミングでレコメンドを行うケースや、後日、顧客がサイトを訪れた際にレコメンドをするケースなど、レコメンドのタイミングはさまざまです。

データのフィルタリング(Recommendation)

レコメンデーションのフィルタリングについては、上述のとおりです。Google Cloud (GCP)のレコメンデーションには、そのすべての種類について、利用が可能です。

Recommendations AIのアーキテクチャ

Recommendations AIを利用したシステムのアーキテクチャは、次の図で表すことができます。

Front End ユーザーの行動履歴を記録するためのフロントエンド
Cloud Storage
(機械学習)
ユーザーの行動履歴を記録する、機械学習のためのストレージ
AI Platform Cloud Storageに記録されているユーザーの行動履歴より学習し、レコメンデーションを生成
Cloud Storage(Font End) 生成したレコメンデーションの結果を格納するストレージ。Font Endで利用

Recommendations AIの活用事例

Recommendations AIのサイトには、Recommendations AIを利用したことによって得られた調査結果の例を、次のような図で表しています。

引用元:Recommendation AI

「クリックスルー率」は、以下の計算式によって求めた結果です。

インターネット広告がクリックされた回数 ÷ インターネット広告が表示された回数

また、「コンバージョン」は、レコメンデーションから収益を上げることを言い、「コンバージョン率」は、以下の計算式によって求めた結果です。

インターネット広告から収益を上げることができた回数 ÷ インターネット広告が表示された回数

重要なのが、「収益」の増加です。Googleの調査結果によれば、収益は50%の増加となっています。「すべてのサイト閲覧者からコンバージョンを達成する率」が5%の増加に対し、収益の増加が50%増を達成できた理由は、1顧客からの収益率の増加を意味しています。

これは、的確なレコメンデーションが行われていることを示唆する結果と言えるでしょう。

ZOZOTOWNの活用事例

「技術のトレンドがわかるエンジニア向けメディアサイト」の「ログミーTech」では、ファッション通販サイトの「ZOZOTOWN」におけるRecommendations AIの事例が紹介されています。

参照サイト:ZOZOTOWNにおけるRecommendations AIの事例紹介

ZOZOTOWNの場合、Recommendations AIの活用にて、まず最初に行ったのは、商品データの更新作業です。商品データの更新は、Googleの「Pub/Sub」サービスに対して行います。新しい商品が追加となったり、既存商品のデータを更新する場合は、その差分データをPub/Subサービスに対して反映します。

Pub/Subサービスは、非同期のメッセージ・サービスです「Pub」は「Publisher(出版社)」、「Sub」は「Subscriber(受読者)」の略で、Pub/Subサービスは、メッセージの送信者と受信者が切り離されたメッセージ・サービスのことを言います。

商品データの差分更新は、「Dataflow」サービスを経由し、「Recommendations AI」サービスに取り込まれます。Dataflowサービスは、ストリームデータやバッチデータを処理するサービスです。Dataflowサービスにより、定期的に、あるいは一定のデータ件数に達した時点でRecommendations AIに商品データを送信することが可能です。

顧客の行動履歴の収集に関しては、「Tag Manager」サービスで行います。Tag Managerサービスは、Webサイトやアプリケーションに含まれる「タグ」(トラッキングコードや関連するコードの総称)の更新を管理する、タグ管理システムです。Tag Managerサービスで取得した顧客の行動履歴に関するタグ、つまり商品の購入や検索、閲覧などの行動履歴に関するタグを、Recommendations AIに対してデータ送信します。

商品データと顧客の行動履歴をRecommendations AIにデータ送信できるようにすることで、レコメンデーションのモデルを生成できます。モデルの生成は、自動で行う方法と手動で行う方法があります。生成したモデルは、どのようなタイミングでレコメンデーションを行うかによって、個々に紐づけします。

たとえば、ショッピングサイトのトップページにお勧め商品を表示するレコメンデーションと、商品ページを閲覧した際にお勧め商品を表示するレコメンデーションで、モデルを分けて生成することができます。

その他の活用事例

その他の実績としては、Recommendations AIのサイトでも閲覧することができます。

たとえば、Hanes Australasia社は、Recommendations AIの導入により、セッションあたりの収益が2桁増加したことが実証されたことが上記URLには記載されています。

Recommendations AIの料金について

Recommendations AIを利用するにあたり、まずは600米ドル相当の無料クレジットを利用することができます。無料クレジットの有効期限は、Recommendations AIの登録後、6ヶ月間です。Recommendations AIは、レコメンドエンジンのチューニングを行ったとき、またレコメンドする商品を予測するコマンドをリクエストしたときに料金が課金されます。

1 か月あたりの予測リクエストの数 予測 1,000 件あたりの料金
20,000,000 件目まで $0.27
次の 280,000,000 件 $0.18
300,000,000 件目以降 $0.10
機能 料金
トレーニングとチューニング 1 ノード、1 時間あたり $2.50

引用元:料金 – Recommendations AI

まとめ

パソコンでもスマートフォンでも、閲覧するほとんどのWebサイトには、インターネット広告が表示されます。先程までショッピングサイトで閲覧していた商品やその類似品を何度も目にするうちに、ついついクリックして購入してしまった経験は、誰にでもあるのではないでしょうか?

レコメンドエンジンは、顧客にとっても非常に有益なサービスとなり得ます。ショッピングサイト上で欲しい商品を検索する手間も省けますし、今まで知らなかった魅力的な商品を知るきっかけにもなります。コロナ禍によって、実店舗での売上が下落するかわりに、オンラインでのショッピングサイトでの売上に期待が持たれます。

このような状況において、ショッピングサイトでもっとも効果的な営業戦力となるレコメンドエンジンは、一刻も早く導入するのが良いのではないでしょうか?

ぜひとも、こちらの記事が、御社のショッピングサイトにレコメンドエンジンを導入するきっかけとなれば幸いです。弊社トップゲートでもあなたの会社にレコメンドエンジニア導入をはじめ、データ分析基盤の構築などなどのお手伝いできますので、お気軽にご連絡ください。

ご相談はこちら



弊社トップゲートでは、 Google Cloud (GCP)、または Google Workspace(旧G Suite) 導入をご検討をされているお客様へ「Google Meet で無料個別相談会」を実施いたします。導入前に懸念点を解決したい方、そもそも導入した方がいいのかをお聞きしたい方はお気軽にお申し込みください!

トップゲート経由でGoogle Cloudをご契約いただけるとGoogle Cloudの利用料金はずっと3%オフとお得になります!

お申込みはこちら



また、弊社トップゲートでは、Google 技術を利用したアプリケーション開発に関するコンサルティングサービスを行っております。まだ形になっていないアイディアも実現できるような形へ具現化するお手伝いもしておりますので、お気軽にお問い合わせください。ぜひ詳細はリンク先にて!
コンサルティングの詳細はこちら

記事を探す

GCP のメリットを最大限に活用しよう!

GCP・Google Workspace のご相談・
お見積り依頼はお気軽に
お問合せフォーム