見出し画像

ChatGPTがあれば、BIツールは不要?【データ利活用の道具箱#9】

近年は生成AI、特にChatGPTのようなモデルにもデータ可視化の機能が搭載されたことで、BI(ビジネスインテリジェンス)ツールの代わりになるのではないか?と注目を集めています。

果たして、BIツールは要らなくなるのでしょうか?

現状のChatGPTにできることを確認しながら、データ可視化がどのように変わっていくのか、一緒に考えていきましょう 。


いまのChatGPTにできること

ChatGPTにはデータを取り扱う機能が備わっています。これによりユーザは自然言語で質問をし、ChatGPTは問いの答えを返し、グラフを描画することができます。そのため、BIツールを使いこなさなくてもグラフ化したり、そこから洞察を得たりすることができます。例えば、気象データを渡せば、4月の平均気温をグラフ化することは一瞬でできてしまいます。

ChatGPTによる可視化のイメージ

この記事では、2024年5月13日に発表されたChatGPTの最新版であるGPT-4oを用いてデータを可視化します。以前のChatGPTでもデータを取り扱う機能は備わっていましたが、最新のGPT-4oではどこまでできるか、早速確かめてみましょう。

注意点
以降に示すChatGPTの回答例には、実際とは異なるものが含まれます。
①読みやすさを優先するため、内部エラーの対応などの途中経過を削除し、結果のみを表示しています。
②2024年5月時点ではグラフのタイトルや軸、凡例に漢字が利用できないため、文字化けが発生します。英語で出力した結果に日本語ラベルをつけるなどして加工しています。

ChatGPTのデータ可視化力を確認する

実際にChatGPTがBIツールの代わりになるかどうか確認していきます。

確認のポイント
筆者はこれまで、20年にわたりデータ分析や可視化に関わる仕事をしてきました。その経験を踏まえ、以下がBIツールと同等レベルで実行できれば、代替できる可能性があると考えています。
確認① データを集計できるか?
確認② データを加工できるか?
確認③ 様々なグラフを使って表現できるか?

ここでは、とあるガス販売会社を題材に取り上げます。

 データ可視化対象企業の背景
あるガス販売会社の神奈川支社は、県内に3つの支店を構えています。支社には10人の営業担当がおり、およそ500軒のお客様を担当しています。支社の契約数は増加傾向にあり一見順調ですが、一方で契約解除となるケースも増えています。そこで、データを分析して実態を把握することにしました。

データを用意する
分析対象のデータファイルを用意します。2024年5月現在、ChatGPTが読み込めるファイル形式は、CSV、Excel、JSONとテキストファイルのみです。DB(DWH)に格納されたデータを直接参照することはできません。

今回は、お客様情報、担当部門/営業担当情報、2021年1月~2023年3月の間のガスの月次使用量が記載されたサンプルデータをExcel形式で用意します。
このサンプルデータはダウンロードできるようにしておきますので、皆さんも試してください。

サンプルデータのレイアウト

データを説明する
データファイルが準備できたら、ChatGPTの画面にドラッグアンドドロップしてデータをアップロードします。

その前に、#(ハッシュタグ)を使ってプロンプトから前提条件をいくつか伝えます。前提条件とは、データの成り立ちや言葉の定義のことです。

前提条件を伝えるChatGPTのプロンプト

ChatGPTが前提条件を理解したら、ファイルをアップロードして読み込ませます。

確認① データを集計できるか?

まず、ChatGPTが先ほどのデータを集計できることを確認します。
具体的には、2022年4月時点のお客様数と契約者数を、営業部ごとに集計させ、神奈川支社全体の総計も出してもらいます。
なお、Excelのピボットテーブルで集計した回答はこちらです。

神奈川支社の各営業部の2022年4月のお客様数、契約者数
(Excelで作成)

この表が作れるかを確認します。

各営業部のお客様数と契約者数
(ChatGPTへの問いかけと回答)

Excelのピボットテーブルレベルの集計を正しく回答できています。

確認② データを加工できるか?

次に、読み込んだデータを加工して表示できることを確認します。
具体的には、以下のような契約者数の対前月比を営業部門ごとに比較できる表を作ってもらいます。

契約者数の対前月比
(Excelで作成)

ChatGPTがこの表を作れるか確認します。

契約者数の対前月比
(ChatGPTへの問いかけと回答)

このように、ChatGPTでも欲しい情報を手に入れることができました。

しかし、この結果は実は一度で手に入ったわけではなく、裏では試行錯誤があり苦労しました。
例えば・・
・2022年4月の対前月比を0.00%と回答したので、2022年3月の契約者数と比較した値を計算するように伝えて修正させた
・集計期間を2022年4月から2023年3月までと指定したが、2023年2月までの結果しか出力しなかったので、対象となる期間をもう一度伝えた
などです。

次に、営業担当ごとの成績を可視化します。具体的には、2022年4月から2023年3月までに、誰が何件の新規契約をとり、何件の解約があったのかを分かりやすい形で示せるかどうか確認します。可視化したいのはこちらの表です。

2022年4月と2023年3月の営業担当ごとの契約者数および
この期間の新規契約者数と解約者数
(Excelで作成)

こちらも数回の試行錯誤をして正しい結果を得ることができました。

新規契約者数と解約者数
(ChatGPTへの問いかけと回答)

確認③ 様々なグラフを作ることができるか?

最後に、加工したデータを使って、表現したい情報に合った様々なグラフを作ることができるかを確認します。

さきほど作成した新規契約者数と解約者数のデータを元にプロット図を作成します。

営業担当ごとの新規契約者数と解約者数の図示
(ChatGPTへの問いかけと回答に日本語のラベルを付与)

右下にいる一宮さんや四ツ谷さんは、新規契約の数が多く解約がほとんどないので非常に優秀な営業担当と言えます。一方、十合さんは新規契約が多いものの解約の数も多く、新規獲得の際に無理な契約をしていたり、既存顧客のフォローができていないなどの可能性があり、更なる深掘りが必要となります。
ただし、これらはあくまでも期間を絞って可視化しているだけなので、このグラフを見ただけで評価するのは危険です。例えば、営業担当たちが持っている既存の契約者に対し、解約された割合を見ると注意すべき人が変わる可能性があります。評価のためには更に詳しく分析していく必要があります。

次に、少し違う角度から分析してみます。営業担当ではなく、担当エリアに課題がある可能性もあります。そこで、営業担当および担当エリアと解約率の関連性がわかる可視化を行います。
次の例では解約率の定義を定め、「ヒートマップで見たい」とグラフ形式を指定して指示をしていますが、単に「営業担当と担当エリアで解約率を見たい」とグラフ形式を指定せずに指示をしてもヒートマップが描画されました。

営業担当×エリアごとの解約率
(ChatGPTへの問いかけと回答に日本語のラベルを付与)

このヒートマップでは左上ほど解約率が高く、何らかの課題があることを示しています。
藤沢市や茅ヶ崎市を担当している3名の営業担当の全員に解約が発生していることからエリアに課題がある可能性が見えてきます。もしかしたら競合がいたり、何らかの地域特性があるのかもしれません。一方、エリアに関係なく解約率の高い十合さんや九谷さんは、営業担当自身に課題がある可能性がありそうです。このように、データを分析する際には様々な切り口を使って深掘りをしていきます。

実は、このヒートマップの結果を得るまでにもかなりの試行錯誤が必要でした。一見正しそうなヒートマップが作成されるものの、解約率が正しくないことが何度も起こり、間違いを正していく必要がありました。

確認結果から分かること

データを用意し、データの背景や意味を伝えれば、グラフなどで可視化することは容易にできるので、ChatGPTをBIツールの代わりに使うことも可能です。ここまで確認した3つのポイントを私なりに5点満点で評価します。

確認① データ集計を行うことができるか?(5/5点)
問いかけに対する認識違いが生じたり、間違った結果が返ってくるケースはほぼなく、正しく応答できていました。

確認② データを加工できるか?(2/5点)
指標の意味は正しく伝わっているものの、計算を間違えることが良く起こりました。ケアレスミスレベルの間違いが起き、指摘すると容易に正しい回答が得られることも多かったです。
同じ問いかけに対する回答の再現性がなく、前に正解した問いかけを、同じように試しても間違えることがありました。

確認③ 様々なグラフを作ることができるか?(3/5点)
折れ線グラフ、棒グラフ、プロット、ヒートマップなど様々なグラフを作ることができました。また、具体的なグラフ形式を指定しなくとも見たい指標を伝えれば、情報に合ったグラフを提示できていました。
しかし、確認②と同様に、回答に再現性がなく、一度正しく書けたグラフの再作成を試みると、同じグラフを出力できないことが起こりました。
精度の問題はありますが、良い感じにグラフを作ってくれるところを評価したいと思います。

ChatGPTがあればBIツールは要らなくなるか?

結論として、現時点においては、ChatGPTのデータ可視化機能を使うことでBIツールが不要になるとは言えません。これまでの確認結果を踏まえると、現在のChatGPTのデータ可視化機能には、精度に課題があります。正解を出せる確度が高くないため、正しいかどうかの確認が都度必要となり、かなりの手間もかかります。何度もやりとりを重ねたとしても、プロンプトからの指示をうまくやらないと正解に辿りつけない可能性もありそうです。

こうした精度の問題は、日々改善されています。実際、GPT-4と比較してGPT-4oは精度が大きく向上していました。今後も精度が向上していく可能性は高いですが、正答率100%の回答を得られるようになるのはいつになるかわかりません。

では、現在のChatGPTをどうすれば業務に活かせるのか、考えてみます。
例えば、ChatGPTとBIツールをうまく組み合わせることで業務の生産性を上げることはできると考えます。現在のChatGPTでも、見たい情報を伝えると情報に合った指標を選択し、グラフを描画する能力は期待以上でした。
こうした能力を活かせば、データから全体像を掴み、使う指標を決めてラフなイメージをグラフ化するところまでをChatGPTでできるようになります。

データから作成するアウトプットのイメージをChatGPTで固め、決まったアウトプットイメージをもとにBIツールで正式版を作成するという共存方法は検討しても良いと思います。

これまで見てきた通り、ChatGPTはデータ可視化の世界においても業務を大きく変える可能性を持つツールです。その強みと弱みを理解して利用することで、誰もが簡単にデータを扱えるようになり、これまで以上にデータ利活用が進んでいくようになります。
この記事を参考に、読者の皆さんもChatGPTを使ったデータ可視化を体験して頂けると嬉しいです。

サンプルデータはこちら

この記事で使用しているサンプルデータはこちらです。参考としてご覧ください。

※サンプルデータは、架空のガス販売会社を題材に作成しています。

📋サンプルデータの利用規約はこちらを参照してください。

おわりに

今回はChatGPTを使ったデータ可視化についてご紹介しました。
今回のこの記事が、皆さんの理解の一助となりましたら、幸いです。もし少しでもお役に立てたのであれば「スキ」を押してください。私たちのモチベーションになります。

この「データ利活用の道具箱」では、データ利活用を推進したり、データをもっと活用したいと奮闘している皆さんに役立つ情報をnoteで発信しています。ぜひ他の記事もご覧ください!

ウルシステムズでは「現場で使える!コンサル道具箱」でご紹介したコンテンツにまつわる知見・経験豊富なコンサルタントが多数在籍しております。ぜひお気軽にご相談ください。


この記事が参加している募集

#AIとやってみた

27,805件