2020.05.22 「Einstein AI で Salesforce は進化する:(2) Einstein 予測ビルダーを通じて Einstein AI に触れてみましょう(前編)」
≪ 2020.05.14「Einstein AI で Salesforce は進化する:(1) Salesforce Einstein の概要と諸機能」
2020.05.29 「Einstein AI で Salesforce は進化する:(3) Einstein 予測ビルダーを通じて Einstein AI に触れてみましょう(後編)」 ≫
お世話になっております。
ウフル カスタマーサポート Salesforce 担当の 後藤 でございます。
皆様いかがお過ごしでしょうか。
先週のカスタマーサポート通信配信直前に、北海道及び大都市圏を除く39都道府県の緊急事態宣言が解除され、自宅待機から徐々に出勤生活に戻りつつある方も少なくないかと存じます。
まだまだ予断は許しませんが、少しずつ状況は改善しているはずです、もう少しの辛抱です。
今回は本題に入る前にお知らせがあります。
【Summer '20 Sandbox プレビュー開始】
COVID-19 のため順延になっていた Summer '20 の Sandbox プレビューについて、ようやく日程が確定されました。(連動して必然的に本番リリースの日程もフィックスされました)
Summer '20 Sandbox プレビュー提供期間 5/31 - 7/19
(AP インスタンスの本番組織から生成された CS インスタンス組織)
新規 Sandbox については、5/30 午前4時(日本時間)までに作成されたものが対象となります。
既存 Sandbox については、対象インスタンス外で参加希望の場合は上記時間までに更新を行い、逆に対象インスタンスで参加しない(Spring '20 のまま本リリースまで使用する)場合は 5/30 午前5時(日本時間)以降に更新を行うと対象外インスタンスに再生成されます。(お馴染みの仕様ですね)
対象インスタンスなどの詳細は公式ヘルプをご覧ください。
Summer'20 Sandbox プレビューのお知らせ
https://help.salesforce.com/articleView?id=000321970&language=ja&type=1&mode=1
さて、先週からスタートしました「Salesforce Einstein シリーズ」、第一回は Einstein AI の概要説明と機能の紹介をいたしましたが、今回から数回に分けて、いくつかの機能について実際の画面ショットを交えながらご案内をさせていただきます。
どの機能を最初に取り上げるか考えましたが、いくつかの理由から「Einstein 予測ビルダー」が最適だと判断いたしました。その理由も含めて、実際の設定画面を通じてご案内をしていきたいと思います。
* Einstein 予測ビルダー - Salesforce Einstein の「入口」として最適な理由
先週のおさらいになりますが、Einstein 予測ビルダーとは何かを再度確認しましょう。
Einstein 予測ビルダー
https://help.salesforce.com/articleView?id=custom_ai_prediction_builder.htm&type=5
=============================================================
Einstein 予測ビルダーは、システム管理者向けのカスタム AI です。標準の Einstein アプリケーションが使用事例に適さないときにコードの記述方法がわからなくても、問題ありません。ポイント。クリック。予測するだけです。
=============================================================
上記ヘルプの説明では少々漠然として伝わらないようなので、補足いたしますと、
- Salesforce オブジェクトの特定項目(主にチェックボックス型)の確度を判定してスコアを返す
- Salesforce 標準インターフェース(Lightning Experience)で提供されているため、画面操作上で戸惑うことが少ない
- Apex などのコード記述や、データ分析の専門的な知識は原則として要求されない
これらの点が大きな特徴になっています。
(ヘルプで触れられている「標準の Einstein アプリケーション」は、Einstein Discovery と考えられます。こちらについても後で簡単に触れさせていただきます。)
「標準 UI で完結する」「専門的な知識は不要」という点は、それだけで「初めての Einstein」として推奨する十分な要因になりえますが、Einstein 予測ビルダーには最大の特徴があります。
他の Einstein アプリケーションの殆どは別途ライセンスを購入する必要がありますが、Einstein 予測ビルダーについては、全ての Salesforce 組織に於いて、管理画面の [Einstein を試す] メニューより試用版へのアクセスが可能になっています。
Einstein 予測ビルダーの有料バージョンへのアップグレード
https://help.salesforce.com/articleView?id=custom_ai_prediction_builder_upgrade.htm&type=5
=============================================================
[Einstein を試す] バージョンの Einstein 予測ビルダーでは、最大 10 個の予測を構築し、一度に 1 個の予測を有効化できます。ほとんどの機能にもアクセスできます。
有料バージョンの Einstein 予測ビルダーは、Einstein Predictions および Einstein Analytics Plus ライセンスで使用できます。Einstein Predictions ライセンスでは、最大 20 個の予測を構築し、一度に最大 10 個の予測を有効化できます。Einstein Analytics Plus ライセンスでは、最大 45 個の予測を構築し、一度に最大 35 件の予測を有効化できます。
=============================================================
試用版ライセンスにて有効化できる予測の上限は「1」ですが、機能を評価するにはこれで充分です。
Einstein 予測ビルダーを通じて Salesforce Einstein の有用性を評価できたお客様は有償ライセンスを購入して業務に活用する、でよいかと思われます。
それでは、ご一緒に Einstein 予測ビルダーを通じて Salesforce Einstein に触れてみましょう。
* Einstein 予測ビルダーを使用する前に知っておきたい「予測データ用語」
先ほど「Einstein 予測ビルダーにて、データ分析の専門的な知識は必要ない」と述べましたが、さすがに「予備知識ゼロ」で臨むのは賢明ではありません。
事前に知っておいた方が好ましい「予測データの概念と用語」があり、Salesforce 公式のヘルプでも触れられていますので、ご案内いたします。
まず、分析と予測を行う対象のオブジェクトを選択する必要があります。
例えば、リードが取引開始となるかどうか、商談が成立するかどうか、この場合のリードや商談のオブジェクト自体、およびオブジェクトの全レコードが「データセット」となります。
Einstein 予測ビルダーでは(もちろん予測ビルダーに限定されませんが)、「過去の実績データの分析結果をもとに、現在のデータに予測値を割り当てる」という流れになるので、データセットのうち、分析対象の実績データと、予測を適用する現在のデータを定義する必要があります。
その定義が「区分」(または「セグメント」)となり、区分された分析対象のレコード群が「サンプルセット」、予測を適用するレコード群が「予測セット」となります。
このことをあらかじめ知っておくと、今後の予測ビルダーでの操作がスムーズになるはずです。
予測データ用語
https://help.salesforce.com/articleView?id=custom_ai_prediction_builder_filters.htm&type=5
=============================================================
Einstein 予測ビルダーを使用する場合、データのセットについて使用する用語を理解しておくと役立ちます。
=============================================================
* Einstein 予測ビルダーの準備 - サンプルオブジェクトとデータが予め用意された Trailhead Playground がお勧め
それでは、実際に Einstein 予測ビルダーに触れてみましょう。
とはいえ、先ほど述べた通り、「どのオブジェクトで、どのような定義で分析を行うか」を決めておく必要があり、その準備も実は結構大変だったりします。
そこで、予め分析対象のオブジェクトとデータが用意された環境を入手する方法をご案内いたします。
Trailhead プロジェクト
「 クイックスタート: Einstein 予測ビルダー」
https://trailhead.salesforce.com/ja/content/learn/projects/prediction_builder
まだ Trailhead にサインインしていない方は、是非過去記事をご参照の上サインインしてください。
2020.04.28 「【テレワーク支援企画】 業務の合間に Trailhead でスキルアップしましょう」
https://csminfo.uhuru.jp/hc/ja/articles/900000746746
最初の単元「Trailhead Playground へのサインアップ」に、予測ビルダーのテストに最適な Developer 環境を取得する手順が記載されています。
組織を取得したら、[オブジェクトマネージャ] を見てみましょう。
今回のプロジェクトのシナリオは、 「あなたはレストランの経営者です、予約客がキャンセルをする可能性について、過去実績の分析を基に予測しましょう」 というものです。
そのシナリオに沿う形で、予めオブジェクトが設定され、分析と予測に必要十分なレコードデータが用意されています。
そのオブジェクトが "Reservation" (予約) になります。
この "Reservation" オブジェクトは、取引先責任者と主従関係にあり、顧客情報が取引先責任者に、顧客ごとの予約情報が "Reservation" オブジェクトに格納されています。
予約情報は、予約日を過ぎると必然的に「実際に来店したのか、キャンセルしたのか」の実績情報になります。
今回は、過去の実績情報を基に、予約情報に対して「キャンセルする可能性」のスコア(0~99)を割り当てるのがミッションとなります。
では、どうやって過去の実績情報から「キャンセルしたかどうか」を抽出するのでしょうか。
予測ビルダーのヘルプには以下のように記載があります。
Einstein 予測ビルダーの設定に関する考慮事項
https://help.salesforce.com/articleView?id=custom_ai_prediction_builder_considerations.htm&type=5
=============================================================
サポートされるデータ型
- チェックボックス
- 特別に作成された数式項目
- 数値 (ベータ)
=============================================================
「特別に作成された数式項目」は、具体的には「True / False で返されるデータ型」、つまり「戻り値のデータ型がチェックボックス」のものを指します。
併せて、数値型もサポートされますが、こちらは現在ベータリリースとなっており、正式にサポートされているものではないので、例えば「商談の予測金額を出したい」という場合、興味のある方は各自お試しいただければと存じます。
さて、テスト組織の "Reservation" オブジェクトではどうなっているのでしょうか。
"Status" (状況) 選択リスト型項目にて、「Completed(来店済み)」「No Show(来店せず)」「Upcoming(予約済みで来店待ち)」を選択するようになっています。
予測ビルダーではテキストや選択リスト値は予測対象としてサポートされていないため、サポート対象のデータ型となるように、少々の加工が必要となります。
具体的には、「数式項目を作成し、選択リスト値を参照して True / False を返すように」設定を行います。
戻り値のデータ型は「チェックボックス」で、数式は以下のようにします。
ISPICKVAL (Status__c, "No Show")
これにより、状況が「No Show」の時にフラグが立ちます。
さて、準備が終わりました。
実際に Einstein 予測ビルダーを立ち上げてみましょう。
* Einstein 予測ビルダーの操作 - すべてウィザード形式で完結
Einstein 予測ビルダーを起動するには、設定メニューを開き、ホーム画面の「Einstein 予測ビルダー」をクリックするか、サイドメニューの「Einstein > Einstein プラットフォーム > Einstein 予測ビルダー」をクリックします。
初期画面です。
既に設定済みの場合は、有効な予測数が制限値に抵触しているので、新しく作成した場合は「どれを有効化するか」を一つだけ選択する必要があります。
もちろん、有償ライセンスを購入すれば上限は一気に拡張されます。
新規の場合は「新しい予測」をクリックします。
予測に名前を付けます。
Trailhead の指示通り "No_Show_Prediction" にしてみましょう。
次はオブジェクト選択です。
"Reservation" を選択しましょう。
オブジェクトを指定したら、データセットとして適切なレコード数を持っているかをチェックします。
この作業は必ず行ってください。
サンプルデータは1020件用意されていました。データセットとしての最小ラインである400件を満たしているので、安心して先に進みましょう。
予測のタイプ:「True / False 型(はい / いいえ型)」か「数値型」かを訊かれます。
「キャンセルするかしないか」を予測するので、「はい / いいえ」を選択します。
右側でアインシュタイン博士が説明してくれるので安心ですね。
「予測の質問に回答できる項目」については、「どの項目で予測を行いますか?」となります。
ここでは「項目」を選択します。
(※ 予め数式項目を作らずにも行けるようですが、分析に時間が余計に掛かるようなので、チェックボックス型項目が無い場合は今回のように数式項目を作っておいた方が賢明です。)
予測に使う項目を訊かれるので、先ほど作っておいた "No Show" を選択します。
併せて、どのレコードを「サンプルセット」とするかの条件を設定します。
過去の実績は "Status" が「No Show」か「Completed」のどちらか、現在の予測対象は「Upcoming」に限定されるので、以下のように設定します。
項目: Status
演算子:次の文字列と一致しない
種別: 選択リスト値
値: Upcoming
設定が終わったらここでも「データをチェック」をクリックします。
結果は「サンプルセットが1000件、予測セットが20件」となりました。
(サンプルセットにおいても「はい」「いいえ」それぞれ少なくとも100件が必要なようです。)
次は、どの項目を予測の基準とするかを選択します。
対象となる項目は、予測対象オブジェクト上にあるものに限られます。
"Reservation" オブジェクトは、取引先責任者の従オブジェクトとなっており、取引先責任者には、顧客の属性、例えば「職業」「未婚か既婚か」などの情報があり、これらの情報も、「キャンセルしたかどうか」の傾向を判断するのに活用が可能です。
しかしながら対象項目はあくまでも "Reservation" オブジェクト上にあるものに限定されるため、クロスオブジェクト数式項目を作成して取引先責任者の値を "Reservation" 上で参照できるように設定しておきます。(もちろん既に設定済みです!)
今回は全項目選択しておきます。
先週の「責任ある人工知能の作成」でも述べた通り、「バイアスを排除する」ことが重要になってきますが、そのお話は次週の後編で触れさせていただきます。
予測対象となるレコードにスコアを割り当てる項目を作成します。
ウィザード設定前にあらかじめ作成しておく必要はありません。
その代わり、既存の項目を指定することもできません。
設定を保存する前に最終確認です。
念のためここでも「データのチェック」を行っておきましょう。
予測の構築には、最短で30分、最長で24時間かかるようです。
準備が出来たら通知されるので、気長に待ちましょう。
予測の構築が完了したら、スコアカードが参照できるようになります。
予測モデルの品質がスコア表示されます。
78%を超えると「素晴らしい」と表示されるようです。今回は84%、十分なクオリティでした。
予測ビルダーのホーム画面に戻り、「有効化」を選択すると、予測セットに指定したレコードに対してスコアリングが行われます。
結果はリストビューなどで確認できます。
抽出条件を 【"Status" の値が 「Upcoming」と一致する】 に設定し、表示項目に "Predicted No Show" を追加します。
結果はこちらの通りです。
20件のレコードに対して、すべて一様に「キャンセルの可能性は 30%」と出てしまいました。
期待したようなバラつきはありませんでしたが、操作手順を習得するという点では有意義ではないでしょうか。
ご覧の通り、コードの記述を一切必要とせず、(多少はデータ分析の知識は必要ですが)専門的なスキルを要求されることなく、データ分析と予測が容易に行える Einstein 予測ビルダー、使い方によってはかなり面白いことができると思っております。
次週の後編では、「なぜバラつきが出なかったか、バラつきが出るのはどのような場合か」や「予測基準項目のバイアス」について、「別のデータサンプル」を用いて、少し掘り下げたお話をさせていただく予定です。
(バラつきやバイアスを的確に説明できる格好のデータサンプルがありますので!)
併せて、もう一つの Einstein 予測プログラムである「Einstein Discovery」についても少々触れ、Einstein 予測ビルダーとの違いについて少しだけご案内させていただきます。
=================================================
Einstein 予測ビルダーについての記事、如何でしたでしょうか。
この機能は、インターフェースが Salesforce の Lightning Experience そのままで、かつ無償で試せることもあり、皆様にも是非触れていただきたいと思っております。
Salesforce Einstein の入り口としては実に最適だと思いますので、お時間ございましたら是非お試しいただければ幸いです。
今回の記事は操作に的を絞ったものになりましたので、次回の記事では、バックグラウンドの部分により重点を置いたものにする予定です。
ご質問も多々あるかと存じます、その場合は遠慮なくお気軽にお問合せください。
今後ともウフル カスタマーサポートを引き続きご愛顧いただきますよう、何卒よろしくお願い申し上げます。
コメント