非構造化データの構造化:Snowflake Cortex AI Functionsの活用

長年にわたり、生データ → 変換 → キュレーションというマルチレイヤーのデータアーキテクチャは、構造化データをアナリティクス可能なアセットに変換し、データライフサイクルに規律と信頼をもたらすための最善の基準となっています。この確立されたパイプラインでは、「生データ」は元の状態を維持したまま取り込み、「変換」されたデータはクレンジングされ、エンリッチされ、一貫したビューに統合されます。厳選されたデータは、高度にキュレーションされ、最適化された状態で直接ビジネスに利用されます。このアプローチは、データライフサイクルに規律、明確さ、信頼性をもたらします。

では、組織が日々生成している膨大な非構造化データについてはどうでしょうか。貴重な情報は、通話のトランスクリプト、サポートチケット、法的契約、画像や動画の中に埋もれています。その膨大な潜在能力にもかかわらず、こうしたデータは多くの場合、アドホックなスクリプトによって管理される断片化されたサイロに埋もれています。この分断されたアプローチは、一貫性のないインサイト、意思決定の遅れ、本来引き出せるはずの真の価値を逃す結果につながります。

今こそ、非構造化データにも同様の厳格性を適用する必要があります。

Snowflakeは、Snowflake Cortex AI Functionsを活用した、非構造化データの構造化のための強力な新しい方法を導入しています。これは、非構造化データをデータウェアハウスに直接取り込み、構造化された実用的なインサイトへ変換する、反復可能なワークフローです。その中核となるのは、Cortex AI Functionsを使用して生の非構造化データを抽出したエンティティ、センチメントスコア、要約などにSQLで直接変換する、再構築された変換ステージです。ここから、エンリッチされた出力はキュレートされたレイヤーにシームレスに流れ込み、Snowflake Cortex Analystを使用してビジネスインテリジェンス(BI)ダッシュボード、機械学習(ML)パイプライン、自然言語探索を強化できます。

data

非構造化データのための新たな変換レイヤーの導入 

このフレームワークでは、「変換レイヤー」は乱雑な非構造化テキストと構造化された測定可能なアナリティクスの間の重要なリンクとなっています。生テキストは、企業がトレンドを把握し、効果を測定し、行動に移せるように変換されます。

このレイヤーの主な原則:

  • ネイティブの維持:Cortex AI Functionsを使用して、すべての非構造化データをSnowflakeで直接処理できます。自然言語処理のためにデータ転送コストが必要ないため、アーキテクチャが簡素化され、ガバナンスが向上します。

  • ビジネス目標との整合性の確保:ビジネスにとって意味のある概念を抽出することに重点を置きます。たとえば、通話のエスカレーション理由、契約の主な条件、顧客の購入ステージの特定などです。

  • 再利用可能なアセットの作成:BIダッシュボードからMLモデル、運用システムまで、複数のダウンストリームアプリケーションにフィードできる構造化データを作成し、信頼できる唯一の情報源を維持します。

 

変換レイヤーは、テキストデータ自体を変換し、クエリが実行される前に意味のあるコンテキストでエンリッチします。

非構造化データのワークフロー

ワークフローは使い慣れたパターンに従いますが、新たなインテリジェンスレイヤーが組み込まれています。

  • 未加工レイヤー:この初期レイヤーは、Snowflake Openflowを利用して未加工の非構造化データに接続し、あらゆるソースから取り込みます。このレイヤーは、メタデータとともに編集されていない全文を保持し、トレーサビリティと監査の基盤を提供します。

  • 変換されたレイヤー:ここで価値が生成されます。Cortex AI Functionsは、生テキスト、音声、画像データを利用しやすい構造化形式に変換できます。 

  • キュレートされたレイヤー:このレイヤーは、新しく構造化されたデータを他のエンタープライズデータセットと統合します。ここでは、主要パフォーマンス指標(KPI)とビジネスクリティカルなメトリクスを含む、キュレートされたテーブルを作成します。

  • 利用レイヤー:インサイトの最終的な活用レイヤーです。これでデータの準備が整い、BIツール、MLパイプライン、Cortex Analystで自然言語クエリを実行できるようになりました。

Cortex AI Functionsで変革レイヤーを強化

Snowflake Cortex AI Functionsは、非構造化データ用に「変換されたレイヤー」のエンジンであり、データウェアハウス内のテキストから直接インサイトを引き出すように設計されています。以下に、Cortex AI Functionsの例を示します。詳細については、このブログ記事とSnowflake ドキュメントを参照してください。

  • AI_COMPLETEこの汎用関数は、単一のテキストまたは画像レコードから重要な情報を抽出したり、簡潔な要約を生成したりするために使用します。

  • AI_CLASSIFYコンテンツを、事前定義されたビジネス分類規則(顧客からの電話を「billing_issue」、「technical_support」、「cancellation」などのカテゴリーに分類する)で分けます。

  • AI_FILTER特定のビジネス定義条件を満たす行を迅速に特定できます。この関数は、重要でないデータの排除や、サポートチケットがクレームであるかどうかの検出などの重要なイベントにフラグを付けるのに最適です。

  • AI_SIMILARITY類似のケースやドキュメントを見つけられます。これは、新しい問題と既知の問題を照合して迅速に解決する場合に最適です。

  • AI_AGG/AI_SUMMARIZE_AGG多数のレコードにわたってインサイトを要約し、経営幹部への報告に役立つ概要を生成します。

  • AI_EMBEDテキストや画像のベクトル埋め込みを生成して、高度なセマンティック検索と類似度比較を可能にします。

  • AI_TRANSCRIBE音声ファイルから音声言語をテキストに変換して、Snowflake内で音声データを検索および分析できるようにします。

これらの関数により、単純なキーワード検索から脱却し、一貫性とガバナンスが確保された方法で、テキストデータに対してビジネス目標に整合した高度な分析を実行できます。

実世界の例:コールセンターのアナリティクス

たとえば、何千もの通話のトランスクリプトを持っているカスタマーサービス組織では、次のような重要な質問に対する回答を容易に取得することができません。

  • なぜ顧客は電話をかけてくるのか?

  • どのケースがエスカレーションされますか?

  • お客様のセンチメントはどのように変化していますか?

  • どの既知の問題が繰り返し発生していますか?

アナリティクスレイヤーとCortex AI Functionsを使用することで、こうした質問を繰り返し可能なワークフローに変換できます。最初のステップは、個々の通話のトランスクリプトを構造化された行レベルのデータに変換することです。

元のファイルが音声の場合は、SnowflakeのAI_TRANSCRIBEを使用して、音声ファイルからテキストを直接文字に変換できます。

以下に、複数のCortex AI Functionsを使用してAI_TRANSCRIBEを使用し、音声からテキストに変換された未加工のトランスクリプトテキストを構造化レコードに変換する方法を表した、単一のSQLクエリを示します。

 

-- This query transforms a raw call transcript into a structured, analytics-ready record. It demonstrates row-level extractions using AI_CLASSIFY, AI_FILTER, AI_SIMILARITY, and AI_COMPLETE.

WITH call_transcripts_raw AS (
  SELECT
    'I am calling about a recurring charge on my account that I do not recognize. I am very upset and would like to cancel my service.' AS transcript_txt,
    'CUST-1234' AS customer_id
)
SELECT
    customer_id,
    AI_CLASSIFY(transcript_txt,
      ['billing_issue', 'technical_support', 'cancellation', 'complaint']) AS call_intent,
    AI_FILTER(CONCAT(
      'Does this call contain any strong signs of customer escalation or complaint?:',transcript_txt)) AS is_escalation_flag,
    AI_SIMILARITY(transcript_txt,
      'Customer upset about an unknown billing charge on their statement.') AS known_issue_match_score,
    AI_COMPLETE('claude-3-5-sonnet', 
      CONCAT('Extract the main reason for the customer call and their desired outcome in a single sentence.', transcript_txt)) AS call_summary
FROM call_transcripts_raw;

出力例:

example

AI_AGGを使用したエグゼクティブサマリーの作成

AI_CLASSIFYやAI_FILTERなどの関数は行単位で動作しますが、AI_AGGは多数のレコードにわたるインサイトを統合する集約関数です。フレームワークの「キュレーションレイヤー」に最適なツールです。経営層向けに厳選した高次元の要約を作成できます。

以下に、AI_AGGが一連の通話のトランスクリプトを取得し、主要な問題を一つのまとまったステートメントにまとめる方法を示す簡単な例を示します。

-- This query demonstrates using AI_AGG to create a summary of key issues
-- from a collection of raw call transcripts. This is a common operation
-- for generating curated insights for the Gold layer.

-- Simulate a raw dataset with multiple call transcripts
WITH call_transcripts_raw AS (
  SELECT 'I am having trouble logging into my account after the recent update. The password reset isn''t working.' AS transcript_txt UNION ALL
  SELECT 'My credit card was charged twice for my subscription this month. I need a refund immediately.' AS transcript_txt UNION ALL
  SELECT 'I would like to cancel my subscription, as I no longer use the service.' AS transcript_txt UNION ALL
  SELECT 'The mobile app keeps crashing every time I try to access my profile. This is very frustrating.' AS transcript_txt
)

-- Use AI_AGG to summarize the key topics from all transcripts
SELECT
    AI_AGG(transcript_txt, 'Summarize the top three customer issues from these transcripts.') AS weekly_issue_summary
FROM
    call_transcripts_raw;

非構造化データのための構造化フレームワークのメリット

構造化されたマルチレイヤーフレームワークを非構造化データに適用することで、以下が実現します。

  • ガバナンスとリネージ:すべての非構造化処理をSnowflake内に保持し、生テキストから構造化インサイトまで、包括的な監査証跡とリネージを維持できます。

  • 一貫性と再利用性:複数のビジネスチームに対応できる単一のエンリッチメントパイプラインを構築して、データサイロや一貫性のない定義を排除します。

  • スケーラビリティと信頼性:サポートのトランスクリプトから法的契約まで、あらゆるドメインにフレームワークを拡張し、構造化された事実をすべて原文まで遡って辿ることで、データに対する信頼を構築できます。

結論

最終的に、Snowflake Cortex AI Functionsを活用したこの非構造化データへの構造化アプローチは、データ活用の在り方を大きく変えます。最も価値ある未開拓資産である非構造化データを、最終的にデータエコシステムの他の部分と同じレベルの規律、ガバナンス、厳格さで扱えるようになります。

初めの一歩を踏み出す準備はできましたか?

  1. カスタマーサポートチケットやセールスコールなどの高価値の非構造化ソースを特定します。

  2. そのテキストから抽出する具体的な値を定義します。

  3. Cortex AI Functionsを使用して、Snowflakeで非構造化データ用の「変換済みレイヤー」を実装できます。

非構造化データを構造化されたマルチレイヤーのフレームワークへと統合することで、これまでの扱いにくい付随的なデータという位置づけを脱却し、戦略的なビジネス意思決定を支える信頼性の高い推進要因へと変革できます。

eBook

Secrets of Gen AI Success

BayerやSiemens Energyなどのリーダーが、どのように生成AIを使用して収益を増やし、生産性を高め、顧客により良いサービスを提供しているかについてご紹介します。
記事をシェアする

Cortex AISQLの紹介:SQLをマルチモーダルデータのためのAIクエリ言語に再構築

Cortex AISQL(パブリックプレビュー中)は、Snowflake SQLをAIクエリ言語に変換し、ユーザーが使い慣れたコマンドを使用してマルチモーダルデータ全体でAIパイプラインを構築できるようにします。

生成AIのトップユースケース:非構造化データをインサイトに変換する

生成AIが非構造化データを実用的なインサイトに変換する方法とともに、AI駆動のチャットボット、NLP最適化、業界別ソリューションについて紹介します。

金融サービス機関は非構造化データをどう捉えるべきか

金融サービス業界のエンタープライズAI戦略にとって非構造化データが不可欠である理由とともに、AIによって顧客価値を高めるためのデータの処理と活用の方法を紹介します。

Startup Spotlight: How Katalyze AI Transforms Biomanufacturing Data

Snowflakeを利用して非構造化バイオ製造データを構造化インサイトに変換し、製薬会社の生産を最適化するスタートアップ企業、Katalyze AIをご紹介します。

非構造化データのためのSnowpark - Snowflakeのブログ

2021年9月に本機能のパブリックプレビュー提供を開始いたしました。以来、様々な業界の幅広いユースケースにご採用いただいております。

%%title%% %%page%% | ブログ

Snowflakeは、ユーザーが単一のプラットフォームでより多くの使用事例を実現できるよう、非構造化データへのサポートを追加しました。

Cortex Analyst: Paving the Way to Self-Service Analytics with AI

Cortex AnalystがSnowflakeの構造化データへの会話型インターフェースを提供する

Snowflake Copilot(GA):AIを活用した画期的なSQLアシスタント

データ分析を簡素化し、堅牢なガバナンスを維持する、AIを活用した新しいSQLアシスタントです。

SnowflakeのArctic-TILT:高度なドキュメントAIを備えたコンパクトなLLM

Arctic-TILTがDocVQAベンチマークで最高スコアを獲得

Subscribe to our blog newsletter

Get the best, coolest and latest delivered to your inbox each week

Where Data Does More

  • 30日間の無料トライアル
  • クレジットカード不要
  • いつでもキャンセル