見出し画像

結果:“実務に役立てるための”Einstein 活用術

本投稿は、Japan Dreamin' Advent Calendar 2020 11日目の記事です。

Japan Dreamin'といえば、そういえば今年(2020年)の1月に登壇したんです。初めてのJapan Dreamin'登壇で少し緊張しながら話をしてきたと思うのですが、その二ヶ月前に登壇したDreamforce2019のキーノートのおかげで無事に乗り切ったような気がします。それが今年の初めだったとは…隔世の感がありますね。

資料こちら:https://lne.st/jd2020_2

そんなわけで、当noteでは今年一年のEinstein活用の総括をしてみたいと思います。

Einsteinとはなにか

Salesforce社が提供するAIソリューションの総称です。Einsteinという製品はありません。様々なツールの中のここ!という所で活躍できるように配置されています。

資料にも入れてありますが、Einsteinと一言でいっても色んなものがあるんですよね。

これらの中から、必要だなと思うものを選んで実務に役立てていくという形になります。

SalesCloud Einsteinや、SalesCloudの売上予測に付属するEinstein予測みたいにツールとして完成されているものについては活用方法にブレが余り生まれないと思うので今回のnoteでは割愛し、使い方に自由度があるEinstein予測ビルダーについて書いていきましょう。そう言えばEinstein championでもあったのでした。私は予測ビルダー推しです。

Einstein予測ビルダーってなに?

SalesCloudの中にある一つのオブジェクトに収まったデータを使って、Einstein(AI)による、なにがしかのスコアリングを行うツールです。

なにがしか」という所が肝で、Einstein予測ビルダーというツール側から見るとぶっちゃけ何が入ってきても構わないんですよね。それ故に自由度がめちゃくちゃ高いんです。ただし、人類は選択肢が多すぎたり自由度が高すぎると思考停止しがちという特性があるため、使いみちを模索することそれ自体が難しいと捉えられがちなツールなのではないかと思います。ここにデスバレーがあるのですが、死の谷を乗り越えるためには事例の開示が必要で、色々なチャレンジとその結果が共有されることでより良いモデル構築の知見が得られるだろうと考えています。(このnoteも開示の一環ですね、みなさんも是非)

サンプル事例でよく出てくる話で言うと、病院で診察予約を受け付けているとします。患者リストと過去の予約データをEinsteinにくわせる事によって、今ある予約のなかからちゃんと病院に現れる患者と、ドタキャンしてしまう患者をスコアリングしてみましょうというものがあります。

過去の時系列データを予測ビルダーで解析することで、予約データに点数をつけ、ある点数以下の場合は来ないだろうという予測モデルを定義するという使い方です。

相手は当然人間なので、スコアが高くても来ない場合もあるし、低くても来る場合もある。このあたりは「AI、精度、正確性」みたいなキーワードで検索すると理解が促されると思いますので興味があれば調べてみて下さい。

この一年やってきた中で一番当たりだなと思った予測

上述のような予測だったり、それこそ商談が成約するかどうかみたいな予測だったりについてはもちろん作ることは出来ますが、この検証についてはそれなりに時間をかけて行う必要があります。何しろパラメータが多いので、過去の事例だけで100%決まるなんてことはありえない訳です。そういうのはじっくりと考えましょうということで引き続きやっていますが、今回はもっと別の切り口についてのお話をしたいと思います。

弊社リバネスでは、リバネス研究費という研究費の提供プラットフォームを提供しています。ここでは研究者が申請書を締め切りまでに記入して送信してもらう必要があるのですが、中身がテキストデータな為、これまでは記入の進捗状況を把握するには当該レコードを開いて見る必要がありました。数が増えてくると無理なんですよねこれ。

締め切りまでにどの程度の数の申請書が申請されそうかを簡易的に把握することができれば、もっと申請書を集めたいのか、もう十分なので安心して締め切り日を迎えればよいのかが分かります。研究費の原資はお客様からいただく資金ですから、高品質な申請書が多数集まればよりハッピーになれるということです。

何をやったのか

ここまでの流れで分かる人は分かったと思いますが、実はEinstein予測ビルダーにこの申請書のデータを読み込ませました。殆どがテキストなので予測ビルダーには向かないかなと思ってやっていなかったのですが、結果から言えば解釈の使い方次第です。

過去に申請書の提出まで行ったデータをTRUEとする教師データとし、過去の研究費で下書きのまま残ってしまったものをFALSEとする教師データとして読み込ませて予測モデルを作ります。

新規に作成されたレコードを解析ターゲットと設定することで、Einstein予測ビルダーは現在申請書の記入途中になっているものを解析し、スコアリングをしてくれるのです。

得られた結果

スコアは色の濃さで表しています。
x軸(横軸)は、締切までの日数を表し、y軸は更新回数を表しています。

更新回数が低めのレコードはスコアが低く、締切日に向かって更新回数が増えスコアが上昇していくことが分かります。

スコアが高い部分と低い部分で申請書を開いてみてみると、スコアが低いものはなるほど重要な場所が抜けていたりと確かに書き上げ指数として使えそうな感じになっていました。

あとはしきい値としてのスコアを決定し、それ以上のものについては申請可能性も高いだろうという意思決定の元、提供中のリバネス研究費にどの程度の申請書があつまるのかという数を集計すれば良いということになります。

Einsteinをどこで使うのが良いだろうかという話

AIを何のために使うのかというと、人間がやると時間がかかりすぎてPayしないよという場所に使うべきだと考えます。

人間がやるとやりきれないけど、何らかの方法でやりきることが出来たら売上が上がるとか、業務効率にめちゃくちゃ寄与するとか、そういう場所に適用するのが肝心です。

今回の事例では、中身を見なくてもデータの状況が把握できるため人間でやると莫大な時間がかかってしまう作業を機械に任せることが出来ました。使い所としてはかなり良かったと言えます。

Einstein予測ビルダーの使い所を考える

最初に例示したような商談獲得の可能性が高いか否かのような大きすぎる問いで予測モデルを作るのではなく、もう少し小さな単位で予測を作ると良いかもしれません。課題を分解しましょう。

人の意思が介在しないようなものもおすすめです。例えば、自動車保険会社が事故にあった車の写真をアップするとどの程度の保険金になるのかをAIで自動判定するみたいな事例がありましたが、こういう人の気持ちみたいなものが介在しないものにはとても向いています。Einstein Visionでも事例があったような気がしますね。

人の意志が介在するものであれば、パラメータを絞ったもので予測をしましょう。例えば、アポが取れるかどうかというテーマにしましょう。商談が取れるかどうかについては担当者のみで決済が決まるはずもないので、関連する人数が増えるほどパラメータが増えてカオスになってしまいます。一方、担当者個人の時間を抑えたいということであれば変数がかなり絞られるでしょう。過去に顧客のアポを取ったアクションとその結果とれたか否かというデータが有るのであれば、いつなら次のアポが取れやすいかという予測は作りやすいかもしれません。モデルが完成してスコアリングがされたら、ハイスコアなタイミングを狙って提案をいれてみるという使い方はどうでしょう。

パラメータが多すぎるという事を先程書いたのですが、そのパラメータ一つ一つを予測ビルダーで潰していくという使い方を模索してみるというのはよいのではないかなという気がしています。もし、現在の予測ビルダーの精度があまり良くないという事があれば、一度分解して考えてみると良いかもしれませんね。

まとめ

2018年の私は、AIで何でもやってやるぜ!と息巻いていたのですが、当然そんな魔法のようなものではなく、試行錯誤が必要でした。2019年にDreamforceのEinstein Keynoteに登壇してからも様々な検討をしてきましたが、やっと地に足がついたような気がします。

AIを使って嬉しいのはどこなのかを見極められるようになると、面白くなっていくと思います。

おまけ

実は、リバネス研究費の解析を行ってほしいものは手に入ったのですが、そうなるといよいよ日本語のテキストを解析したくなるんですよね。Salesforce自身は英語圏がメインですから、極東の島国で使われている言語対応はまだまだです。今はSalesforce内に集まったテキストをpythonで自然言語処理をかけて特徴量をSalesforceの関連レコードに蓄積するみたいなことをやっています。これらもEinsteinが使えるようになると面白だろうというただの私の仮設なんですけれども。

ということで、皆さんも是非事例を公開してみてください!
Have a nice Einstein Day!

noteにはこれまでの経験を綴っていこうかと思います。サポートによって思い出すモチベーションが上がるかもしれない。いや、上がるはずです。