
関数を自分でつくることができれば、Exploratoryをはじめ、既存のツールではできない複雑な計算処理でも、自由自在に行うことができます。さらに、自分でモデルを組むことができれば、予測、分類、スコアリングなど、複雑な関数もつくれるようになります。
こうしたことは、これまではプログラミングができる人だけの特権でしたが、Exploratory v14では、そんな壁を打ち破る「AI 関数」 が追加されました!
この「AI 関数」を使えば、誰もが自分の言葉で話しかけるように、自分の「関数」が簡単に作れるようになります。
それだけではありません。世界中の大量データを元に、最先端のAIアルゴリズムによって作られた、世界で最も優秀なAIを使って、自分の要件に合わせた関数が作れるようになります。
AI 関数によって、こんなことが簡単にできるようになります!
これからは、誰もが「自分のAI関数」を使って、自分のデータの価値を高めることができる時代になるということです。
列ヘッダメニューから、「AI 関数を作成」を選択します。

これにより、AI 関数の作成のダイアログが表示されます。

プロンプトを新しく作成して実行することができたり、もしいいプロンプトが見つかった場合はテンプレートとして保存をすることができます。

このノートでは、AI 関数の使用例として3つのユースケースを紹介します。
アンケートによくある質問のタイプの1つが「自由記述」です。
例えば、以下のアンケートデータでは「推奨度の理由」といった自由記述の回答の列があります。

Exploratoryのお客様から、自由記述の回答から「センチメントスコアを求めることはできますか?」といった質問を多く寄せられていました。
しかし、日本語で使えるセンチメントスコアの関数はなく、こういった要望に答えられないと言ったことがありました。
そこで使えるのが、「AI 関数」です。
AI 関数で以下のようなプロンプトを実行します。
提供された各文章に対して、-1.0から+1.0の範囲で極性スコアを算出してください。
スコアの基準:
極めてポジティブ(+0.8 ~ +1.0)
- 強い満足や称賛を表す表現
- 問題が完全に解決された状況
- 卓越した性能や品質の言及
ポジティブ(+0.4 ~ +0.7)
- 明確な利点や長所の言及
- 良好な体験や結果の報告
- 期待以上の成果
軽度のポジティブ(+0.1 ~ +0.3)
- 小さな改善や利点
- 基本的な機能の充足
- 一般的な満足感
中立(-0.1 ~ +0.1)
- 事実の叙述
- 感情を含まない説明
- 単なる状況説明
軽度のネガティブ(-0.3 ~ -0.1)
- 小さな不便や課題
- 軽微な問題点
- 改善の余地がある点
ネガティブ(-0.7 ~ -0.4)
- 明確な問題や不満
- 期待はずれの結果
- 重要な機能の欠如
極めてネガティブ(-1.0 ~ -0.8)
- 深刻な問題や不具合
- 強い不満や否定的感情
- 重大な支障や障害
判定の考慮要素:
- 表現の強さ(「とても」「非常に」等の程度副詞)
- 問題解決の程度(完全解決、部分解決等)
- 期待と結果の関係(期待以上、期待通り、期待以下)
- メリット・デメリットの具体性と重要度
- 全体的な文脈や意図

実行することで、各行に対してAIが判断をしたセンチメントスコアを求めることができました。

このセンチメントスコアを見てみると、センチメントスコアがマイナス1(-1)に近づくにつれて、強いネガティブな内容が目立つようになっています。

逆に、センチメントスコアがプラス1(+1)に近づくにつれて、強いポジティブな内容が含まれていることが確認できます。

AI 関数を使うことによって、自由記述の回答などでのセンチメントスコアを簡単に出せ、さらには文脈に応じて適切なスコアがつけられていることが確認できます。
同じく、「推奨度の理由」といった自由記述の回答の列を対象にしていきます。

こういった文章があった時に、それぞれの文章に対してラベルをつけてグループ分けしたいことがあります。
これまでは、アナリティクスビューにある「トピックモデル」を使って文章のグループ分けをしていくのが当たり前でしたが、事前に定義したグループを使ってラベル付けしたいことがありました。
そこで、AI 関数を使うことで「文章のグループ分け」も実現できてしまいます。
プロンプトには、以下のように指定します。「サポートが良い」、「サポートが悪い」のように、サポートだけでも「良い」か「悪い」かをラベル付けの時点で分けると言ったことも可能です。
提供された文章を以下のグループに振り分けるために、ラベルをつけてください。
サポートが良い
サポートが悪い
プロダクトの高評価
プロダクトの低評価
機能面に関する高評価
機能面に関する低評価
競合サービスとの比較
導入に関する内容
価格に関する内容
その他

実行することで、文章のグループ列を作ることができました。

グループの数としては、事前に定義したラベルによってグループ分けされていることが確認できます。

実際に各グループごとにサンプルした行を確認した結果が以下となりますが、サポートの良し悪しについてもうまく分けられていることが確認できます。

アンケートを実施したり、サインアップ時に個人情報について記入していただく際に、人間によって入力されたデータでは「表記揺れ」の問題が付き纏ってしまいます。
例えば、「企業名」などの企業情報について入力をしてもらった場合、人によっては「株式会社」をつけていなかったり、前株、後株を間違っているケースなど、同じ会社を表すのに表記が異なることはよくある問題です。

こういった表記揺れの修正においても、AI 関数が有効です!
AI 関数のプロンプトにて、以下のように指定します。
各組織名について、正式な法人名称を返してください。

実行をすることで、AIによって出力された正式な企業名の列を作ることができます。

AIの賢さと言った観点で、例えば「ユニクロ」や「無印良品」といったお店の中であり会社名が異なる場合でも、AIが正しい企業名称を返してくれるようになっています。

AI関数で重要なのは、判定基準を具体的に示し、何を考慮して判定すべきかを明示することです。
良い例(センチメントスコア):
提供された各文章に対して、-1.0から+1.0の範囲で極性スコアを算出してください。
スコアの基準:
極めてポジティブ(+0.8 ~ +1.0)
- 強い満足や称賛を表す表現
- 問題が完全に解決された状況
- 卓越した性能や品質の言及
ポジティブ(+0.4 ~ +0.7)
- 明確な利点や長所の言及
- 良好な体験や結果の報告
- 期待以上の成果
...(中略)...
極めてネガティブ(-1.0 ~ -0.8)
- 深刻な問題や不具合
- 強い不満や否定的感情
- 重大な支障や障害
判定の考慮要素:
- 表現の強さ(「とても」「非常に」等の程度副詞)
- 問題解決の程度(完全解決、部分解決等)
- 期待と結果の関係(期待以上、期待通り、期待以下)
- メリット・デメリットの具体性と重要度
- 全体的な文脈や意図
曖昧な指示ではなく、スコアの範囲や判定条件を明確に列挙し、さらに考慮すべき要素を明示することで、AIが多角的な視点で分析を行い、判断精度が大幅に向上します。
AIにどのような形式で結果を返してほしいかを指定することで、望む形式での結果を返すことができます。
数値のみを返す場合:
提供されたSNS投稿文のバイラル性を0-100のスコアで予測してください。
評価基準:
- 感情を揺さぶる要素
- 話題性・時事性
- シェアしたくなる要素
- 行動を促すCTA
スコアのみを数値で返してください。
カンマ区切りで返す場合:
日本の業界分類ごとに、該当する有名な日本企業を5社ずつリストアップしてください。
その際に、1つの業界において複数の企業名をカンマ区切りで結果を返してください。
企業名は前株、後株に注意して正式名称を返してください。
例: A, B, C, D, E
特定のフォーマットで返す場合:
提供されたメール本文から、顧客の具体的な要望を1文で抽出し、
ビジネスインパクトを1-10でスコア化してください。
出力形式: 要望内容 | スコア
例: 一括請求書発行機能の追加 | 8
プロンプトに実例を含めることで、AIの理解が深まって同じようなパターンでの成功率が上がります。
良い例:
名前とEmailの情報です。
必ず「日本語」かつ「漢字」での正しい「苗字」を名前とEmailの情報をもとに推定して
結果を返してください。元の情報がローマ字だったとしても必ず返す結果は「漢字」での
名字にしてください。
例: Kato Kota -> 加藤
もしわからない場合は、「不明」として返してください。
特に以下のケースでは具体例が効果的です:
不明な場合の処理や特殊ケースの扱いを事前に指定しておきます。
良い例:
あなたは、学校名から地域を特定する専門アシスタントです。
提供された学校名をもとに、その学校名が関東地方(東京都、神奈川県、千葉県、埼玉県、
茨城県、栃木県、群馬県)に所在するかどうかを判定してください。
関東地方の学校名の場合は「関東」、関東地方以外の学校名の場合は「関東外」と回答してください。
学校名が不明確な場合は「NA」と回答してください。
これにより、AIが困った時の「逃げ道」を用意でき、エラーや不適切な推測を防げます。
ラベル分類を行う場合は、すべてのラベル候補を事前に列挙します。
良い例:
提供された文章を以下のグループに振り分けるために、ラベルをつけてください。
サポートが良い
サポートが悪い
プロダクトの高評価
プロダクトの低評価
機能面に関する高評価
機能面に関する低評価
競合サービスとの比較
導入に関する内容
価格に関する内容
その他
「その他」カテゴリを必ず含めることで、どのカテゴリにも当てはまらないケースに対応できます。
企業名や固有名詞を扱う場合は、表記ルールを明確にします。
良い例:
各組織名について、正式な法人名称を返してください。
提供されている投資家のデータから、表記揺れを修正してできる限り同じ会社名に統一してください。
例:
Softbank -> Softbank
Softbank Group -> Softbank
Softbank Corp -> Softbank
Softbank Capital -> Softbank
Sequoia Capital -> Sequoia Capital
Sequoia Capital China -> Sequoia Capital
AI プロンプトは、自然言語でデータ加工の指示を出すと、Rスクリプトを生成してくれる機能です。AI 関数が1行ごとにAIが判断して結果を出力するのに対し、AI プロンプトはRコードを生成することで、条件式や計算式に基づいた処理を効率的に実行できます。
AI プロンプトは、以下のようなルールベースの処理や計算に適しています。
具体例:
例えば、年齢の列から年代の列を作成したいとします。
このようなケースでも、AI 関数でも年代の列を作成することは可能です。

一方で、AI プロンプトを使った方がより高速で、再現性のある形で年代の列を作成できます。

AI プロンプトはRスクリプトを返すため、条件や計算などに基づいてラベルを返すといったことが得意といった特徴があります。一方で、文章や製品名からラベルを返すといった、一つ一つの値をもとに文脈を理解して結果を返したい場合は、AI 関数が適しています。
AI プロンプトを使って条件に基づいたラベル付けや計算を行う際には、以下の点でメリットがあります。
パフォーマンス
Rスクリプトでの実行のため、AI 関数に比べて行数の制限はありません。さらには1つ1つ値を返すわけではないため、実行にかかる時間やコスト面でAI 関数に比べて優れています。
再現性
Rスクリプトでの条件式のため、同じデータに対しては同じ結果を返すことが可能です。AI 関数の場合は、AI によるラベルの判断となるため、データや指示しているタスクによって若干のずれが生じる可能性があります。
AI プロンプトの詳細については、こちらのノートをご覧ください。
Exploratory v14で追加された「AI 関数」は、プログラミングスキルがないユーザーでも、AIを活用して複雑な計算処理やデータ分析を可能にする機能です。この機能により、顧客データからの情報生成、購買履歴に基づくキャンペーンメールの自動作成、アンケート自由回答のカテゴリ分けや感情分析、ラベル付けなどが容易になります。
自身のデータ価値をAIを使って簡単に高めることができるAI 関数の機能を、ぜひお試しください。
AI 関数などの新機能を、ぜひご自身で体験してみてください!
まだExploratoryを使用したことがない方は、30日間無料トライアルをぜひお試しください!