顧客フィードバック分析にOCI言語を使用

ソーシャル・メディアの投稿、ニュース、調査などのテキスト・データにより、貴重なビジネスおよび顧客インサイトが提供されます。大量のテキストデータを手動で分析するには時間がかかりすぎることが多いため、企業は自然言語処理(NLP)を活用して、効果的かつ大規模のインサイトを獲得します。これらのNLP機能を使用するには、データ・サイエンティストを利用してカスタム機械学習モデルを構築およびトレーニングし、それらのモデルをアプリケーションにデプロイする必要があります。多くの場合、このプロセスには時間とコストがかかります。

Oracle Cloud Infrastructure (OCI) Languageは、主要な言語処理機能を本番対応の事前に訓練されたモデルとして提供することで、非構造化テキストに関するインサイトを発見し、機械学習の専門知識の必要性を排除することで、この時間と労力を軽減します。OCI言語を使用して、大規模なテキスト分析を自動化し、ドキュメントやカスタマ・フィードバックのやり取り、問題やレビューに関するサポート・チケットを把握できます。これにより、顧客体験を向上させ、効率性を高めるためのインサイトを抽出できます。

OCI言語により、開発者は好感分析、キー・フレーズ抽出、テキスト分類、名前付きのエンティティ認識などの機能をアプリケーションに適用できます。開発者は、データ・サイエンティストがカスタマイズされたモデルを作成することなく、トレーニング済のNLP機能をアプリケーションに統合できます。OCI言語には、OCIコンソール、Python、Java、Go、TypeescriptのいずれかのOCI SDKからアクセスできます。Net、REST APIまたはOCI-CLI。

OCI言語を使用すると、次の利点があります。
  • カスタマ・エクスペリエンスの向上:顧客がどのように製品を使用するかを探り、特定の関心分野に関するセンチメントを抽出して、適時に対処するための主要なフラストレーションを特定します。
  • 重要なデータの識別:顧客フィードバックから名前付きエンティティを抽出し、言及された個人、製品および組織を識別します。
  • セキュリティとプライバシの確保: OCI言語は、トレーニング、デバッグ、その他の目的でデータを格納しない言語モデルを使用して、顧客のプライバシを支えます。また、OCI言語を使用して、個人を特定できる可能性のある情報(PII)を特定し、顧客のプライバシを保護できます。

アーキテクチャ

このアーキテクチャは、コアにOCI言語がある一般的なシステム内の様々なコンポーネント間の関係を示しています。

世界のデータの約80%が非構造化形式であり、ほとんどの時間は自然言語で書かれています。このリファレンス・アーキテクチャは、顧客からフィードバックを受け取るシステムを示しています。この具体例では、宿泊施設、飲食サービス、イベント計画、テーマパーク、ホテル、旅行代理店、レストラン、バーなど、ホスピタリティ業界向けの予約アプリケーションを使用します。次の図は、事前構築済のAI機能を使用して、カスタマ・フィードバックを分析、調査、可視化して、カスタマ・エクスペリエンスを向上するためのインサイトを抽出する方法を説明しています。

ホテル・チェーンは、チェックアウト後に顧客にフィードバックを求めます。分析が必要なフィードバックの継続的なストリームがあります。ホテルでは、スプレッドシートを使用して数千のレビューを獲得し、顧客レビューで構成されるすべての行(サービス、ロケーションまたは食品に対する満足または不満)を取得します。この情報は、製品、販売サービス、または業務全体の改善に使用できます。非構造化情報は非常に多いため、データを取り込む必要があり、その情報からインサイトを抽出して分析し、視覚化する必要があります。データ統合サービスは、このリファレンス・アーキテクチャのデータ・フローを調整するために使用します。

次の図は、この参照アーキテクチャを示しています。

oci-ai-language-arch.pngの説明が続きます
図oci-ai-language-arch.pngの説明

oci-ai-language-arch-oracle.zip

次の項では、このリファレンス・アーキテクチャの顧客フィードバック分析フローについて説明します。
  1. データベースやファイルなど、データ・ソース内の顧客レビュー・データを集計します。この例の目的上、データがオブジェクト・ストレージの.csvファイルに含まれているとします。
  2. データ統合では、データ・ソースからデータを読み取り、顧客レビューごとにサーバーレス機能を使用してOCI言語にコールを送信できます。
  3. OCI言語は、各レコードから側面とそれに関連するセンチメント(正、負、中性)のリストを抽出します。また、OCI言語は、送信されたレコードに記載されているエンティティ(各レビューで言及された個人や組織の名前など)のリストを抽出します。

    例: 「ホテルは美しかったが、スタッフは私にとても親切でしたが、朝食の食べ物はそれほど大きくありませんでした。」OCI言語は「ホテル」、「朝食」「スタッフ」などの側面を抽出し、「ホテル」と「スタッフ」には好感感度があり、「朝食」には否定的な感情があることをお知らせします。

    OCI言語を使用して、個人、事業所、組織、イベントの名前などのエンティティを抽出することもできます。

  4. データ統合によって側面とエンティティが受信されると、この情報はAutonomous Data Warehouseに一連の表として予測されます。3つの異なる表が予測されます。1つはRAWレビュー・データの表、検出された各側面の表、もう1つはエンティティが識別された表です。

    ターゲット・データベースは、MySQLなどの異なるタイプのデータベースでもかまいません。

  5. その後、Oracle Analytics Cloudを使用して抽出したインサイトを視覚化できます。Oracle Analytics Cloudでは、抽出された表からチャートを作成し、データをフィルタ処理できます。たとえば、チャートの経時的にセンチメントをプロットしたり、ワード・クラウドで肯定的または否定的な好感を引き起こす可能性が最も高い側面をビジュアル化できます。

    OCI言語からファイルを変換し、Oracle Analytics Cloudでのインサイトを表示するプロセスは、オブジェクト・ストレージ→データ統合サービス→Oracle Functions→OCI言語→Oracle Functions→データ統合サービス→Autonomous Data Warehouse→Oracle Analytics Cloudです。

アーキテクチャには次のコンポーネントがあります。

  • リージョン

    Oracle Cloud Infrastructureリージョンは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含むローカライズされた地理的領域です。地方は他の地域から独立し、たくさんの距離(国や大陸など)を分けることができます。

  • 可用性ドメイン

    アベイラビリティ・ドメインは、リージョン内のスタンドアロンで独立したデータ・センターです。各可用性ドメインの物理リソースは、フォルト・トレランスを提供する他の可用性ドメインのリソースから分離されます。アベイラビリティ・ドメインは電源や冷却、内部アベイラビリティ・ドメイン・ネットワークなどのインフラを共有しません。そのため、1つの可用性ドメインで障害が発生しても、リージョン内の他の可用性ドメインには影響しません。

  • 仮想クラウド・ネットワーク(VCN)およびサブネット

    VCNは、Oracle Cloud Infrastructureリージョンで設定する、カスタマイズ可能なソフトウェアで定義されたネットワークです。従来のデータ・センター・ネットワークと同様に、VCNではネットワーク環境を完全に制御できます。VCNには複数の重複しないCIDRブロックを含めることができ、VCNの作成後に変更できます。VCNをサブネットに分割できます。サブネットはリージョンまたは可用性ドメインにスコープ指定できます。各サブネットは、VCN内の他のサブネットと重複しない連続した範囲のアドレスで構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックまたはプライベートにできます。

  • ロード・バランサ

    Oracle Cloud Infrastructure Load Balancingサービスは、1つのエントリ・ポイントから仮想クラウド・ネットワーク(VCN)からアクセス可能な複数のサーバーへの自動トラフィック分散を提供します。このサービスによって、選択したパブリックまたはプライベートのIPアドレスと、プロビジョニングされた帯域幅を備えたロード・バランサが提供されます。ロード・バランサは、リソース使用率を改善し、スケーリングを容易にし、高可用性を実現します。

    ロード・バランサがトラフィックを正常なインスタンスのみに送信するように、複数のロード・バランシング・ポリシーおよびアプリケーション固有のヘルス・チェックを構成できます。ロード・バランサは、メンテナンスのためにサービスからトラフィックを削除する前に、異常なアプリケーション・サーバーからトラフィックを排除して、メンテナンス・ウィンドウを短縮できます。

    Load Balancing Serviceでは、VCN内にパブリックまたはプライベートなロード・バランサを作成できます。パブリック・ロード・バランサには、インターネットからアクセスできます。プライベート・ロード・バランサには、ホストしているサブネットからのIPアドレスがあります(VCN内にのみ表示されます)。専用のサブネットは、将来の要件のためにプライベートまたはパブリックのロード・バランサ用に作成されます。Oracle Cloud Infrastructure WAFを使用したOCIパブリック・ロード・バランサは、インターネットに直接接続されているWebアプリケーション、またはHTTPベースのAPIに対して考慮されます。

  • セキュリティ・リスト

    サブネットごとに、サブネットの内外で許可する必要があるソース、宛先およびトラフィック・タイプを指定するセキュリティ・ルールを作成できます。

  • ルート表

    仮想ルート表には、サブネットからVCN外部の宛先(通常はゲートウェイ経由)にトラフィックをルーティングするルールが含まれます。

  • インターネットゲートウェイ

    インターネット・ゲートウェイによって、VCNのパブリック・サブネットとパブリック・インターネット間のトラフィックが許可されます。

  • VPN接続

    VPN接続では、オンプレミス・ネットワークとOracle Cloud Infrastructure内のVCN間にサイト間IPSec VPN接続が提供されます。IPSecプロトコル・スイートは、パケットがソースから宛先に転送される前にIPトラフィックを暗号化し、到着時にトラフィックを復号化します。

  • アイデンティティおよびアクセス管理(IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM)では、Oracle Cloud Infrastructureでリソースにアクセスできるユーザーおよびそれらのリソースで実行できる操作を制御できます。

  • オブジェクト・ストレージ

    オブジェクト・ストレージは、データベースのバックアップ、分析データ、イメージやビデオなどの豊富なコンテンツなど、あらゆるコンテンツ・タイプの構造化および非構造化データにすばやくアクセスできます。インターネットから直接またはクラウド・プラットフォームから、安全かつセキュアにデータを格納し、取得できます。パフォーマンスやサービスの信頼性が低下することなく、ストレージをシームレスにスケーリングできます。迅速、即時、頻繁にアクセスするために必要な「ホット」ストレージには、標準ストレージを使用します。長期間保持し、ほとんどアクセスできない「コールド」ストレージのアーカイブ・ストレージを使用します。

  • データ統合サービス

    Oracle Cloud Infrastructure Data Integrationは、完全に管理されたサーバーレスのクラウドネイティブ・サービスであり、様々なデータ・ソースからAutonomous Data WarehouseやOracle Cloud Infrastructure Object StorageなどのターゲットOracle Cloud Infrastructureサービスにデータを抽出、ロード、変換、クレンジングおよび再構築します。ETL (抽出変換ロード)は、Sparkで完全に管理されたスケールアウト処理を利用し、ELT (抽出ロード変換)は、データの移動を最小限に抑え、新しく取り込まれたデータの価値実現までの時間を短縮するために、Autonomous Data Warehouseの完全なSQLプッシュダウン機能を利用します。ユーザーは、直感的でコードレスなユーザー・インタフェースを使用してデータ統合プロセスを設計し、最も効率的なエンジンとオーケストレーションを生成するために統合フローを最適化し、実行環境を自動的に割り当ててスケーリングします。Oracle Cloud Infrastructure Data Integrationは、対話的な探索およびデータ準備を提供し、スキーマ変更を処理するルールを定義することで、データ・エンジニアがスキーマのドリフトから保護できるようにします。

    ホテル・レビューの例の場合、データ・フローを作成して非構造化データを読み取り、OCI言語をコールしてテキストからインサイトを抽出し、抽出したインサイトをデータベース内の構造化表に投影できます。詳細は、「詳細情報」セクションのAIサービスを使用して非構造化データからインサイトを抽出する、リンクされたブログ投稿を参照してください。

  • 関数

    Oracle Functionsは、完全に管理されたマルチテナントでスケーラビリティが高くオンデマンドのFunctions-as-a-Service (FaaS)プラットフォームです。Fn Projectのオープン・ソース・エンジンを利用します。関数を使用すると、コードをデプロイし、直接コールするか、イベントに応答してトリガーできます。Oracle Functionsは、Oracle Cloud Infrastructure RegistryでホストされているDockerコンテナを使用します。

  • OCI言語

    OCI言語は、REST APIコールを使用してアクセスできるサーバーレスでマルチテナントのサービスです。頻繁に撤回され、監視されるトレーニング済みのモデルにより、最良の結果が得られます。言語は、非構造化テキスト内の言語を検出するための人工知能および機械学習機能を提供します。また、テキストに関するインサイトをさらに得るのに役立つ他のツールも用意されています。

  • Autonomous Data Warehouse

    Oracle Autonomous Data Warehouseは、データ・ウェアハウスのワークロード用に最適化された、自動運転、自己保護および自己修復が可能なデータベース・サービスです。ハードウェアの構成や管理、ソフトウェアのインストールを行う必要はありません。Oracle Cloud Infrastructureでは、データベースの作成、およびデータベースのバックアップ、パッチ適用、アップグレードおよびチューニングを処理します。

  • Oracle Analytics Cloud

    Oracle Analytics Cloudは、拡張性と安全性に優れたパブリック・クラウド・サービスです。データ準備、ビジュアライゼーション、エンタープライズ・レポート、拡張分析および自然言語処理と生成のための最新のAI搭載のセルフサービス・アナリティクス機能で、ビジネス・アナリストを強化します。Oracle Analytics Cloudには、迅速なセットアップ、容易なスケーリングとパッチ適用、自動ライフサイクル管理など、柔軟なサービス管理機能も用意されています。

    数千もの非構造化レビューを側面表などの構造化形式に変換すると、データ分析、トレーニング・機械学習モデル、検索などのシナリオのデータを使用できます。ホテル・レビューの例の場合、データをOracle Analytics Cloudにロードしてインサイトを視覚化し、対応可能なタスクを識別する方法で情報を確認できます。詳細は、「詳細情報」セクションのAIサービスを使用して非構造化データからインサイトを抽出する、リンクされたブログ投稿を参照してください。

  • フォルト・ドメイン

    フォルト・ドメインは、可用性ドメイン内のハードウェアおよびインフラのグループです。アベイラビリティ・ドメインごとに3つのフォルト・ドメインがあり、独立した電源とハードウェアです。複数のフォルト・ドメインにリソースを分散する場合、アプリケーションは、物理サーバーの障害、システムのメンテナンス、およびフォルト・ドメイン内の電源障害を許容できます。

  • 分析、ML、カスタム・アプリケーション

    データをカタログ化、準備、処理および分析する分析サービスおよびカスタム・アプリケーション。

推奨

開始点として次の推奨事項を使用します。実際の要件は、ここで説明するアーキテクチャとは異なる場合があります。
  • VCN

    VCNを作成する際、必要なCIDRブロックの数と、VCNのサブネットにアタッチする予定のリソース数に基づいて各ブロックのサイズを決定します。標準のプライベートIPアドレス領域内にあるCIDRブロックを使用します。

    プライベート接続を設定する他のネットワーク(Oracle Cloud Infrastructure、オンプレミス・データ・センターまたは他のクラウド・プロバイダ)と重複しないCIDRブロックを選択します。

    VCNを作成した後、そのCIDRブロックを変更、追加および削除できます。

    サブネットを設計する際は、トラフィック・フローおよびセキュリティ要件を考慮してください。セキュリティ境界として機能する、特定の層またはロール内のすべてのリソースを同じサブネットにアタッチします。

  • セキュリティ

    ポリシーを使用して、会社が所有するOCIリソースにアクセスできるユーザーとそのアクセス方法を制限します。構成ミスまたはセキュアでないアクティビティが検出された場合、クラウド・ガードは修正アクションを推奨し、ユーザーが定義できるレスポンダ・レシピに基づいてそれらのアクションをサポートします。

    最大限のセキュリティが必要なリソースの場合、Oracleではセキュリティ・ゾーンを使用することをお薦めします。セキュリティ・ゾーンは、ベスト・プラクティスに基づいたセキュリティ・ポリシーのOracle定義のレシピに関連付けられたコンパートメントです。たとえば、セキュリティ・ゾーン内のリソースにパブリック・インターネットからアクセスできず、顧客管理キーを使用して暗号化する必要があります。

    セキュリティ・ゾーンでリソースを作成および更新すると、OCIでは、セキュリティ・ゾーン・レシピのポリシーに対して操作が検証され、ポリシーに違反する操作が拒否されます。

  • Autonomous Data Warehouse

    このアーキテクチャは、共有インフラストラクチャ上でOracle Autonomous Data Warehouseを使用します。自動スケーリングを有効にして、データベース・ワークロードを処理能力の3倍まで付与します。

    Autonomous Data Warehouseのハイブリッド・パーティション表機能を使用して、データのパーティションをOracle Cloud Infrastructure Object Storageに移動し、それらを透過的にユーザーおよびアプリケーションに提供します。この機能はあまり使用されないデータ、およびAutonomous Data Warehouseに格納されているデータと同じパフォーマンスが不要なデータに使用することをお薦めします。

    外部表機能を使用して、Autonomous Data Warehouseにレプリケートすることなく、Oracle Cloud Infrastructure Object Storageに格納されたデータをリアルタイムで消費することを検討してください。この機能は、形式(parquet、avro、orc、json、csvなど)に関係なく、Autonomous Data Warehouseに存在するデータを使用して、Autonomous Data Warehouseの外部で曲がっているデータ・セットを透過的にシームレスに結合します。

    オブジェクト・ストレージ・データを消費する際にADW問合せアクセラレータを使用して、ユーザーに対して改善され高速なエクスペリエンスを提供することを検討してください。

  • オブジェクト・ストレージ

    このアーキテクチャでは、標準のOracle Cloud Infrastructure Object Storageストアの処理済出力が使用されるため、他のクラウド・サービスは、さらに分析および表示のために出力にアクセスできます。

  • ロード・バランサの帯域幅

    ロード・バランサの作成時に、固定帯域幅を提供する事前定義済のシェイプを選択するか、帯域幅範囲を設定してトラフィック・パターンに基づいて帯域幅を自動的にスケールさせるカスタム(フレキシブル)シェイプを指定できます。どちらの方法でも、ロード・バランサの作成後いつでもシェイプを変更できます。

注意事項

このリファレンス・アーキテクチャをデプロイする際には、次の点を考慮してください。

  • リソース制限

    テナンシのベスト・プラクティス、サービス別の制限およびコンパートメント割当てを検討します。

  • 接続性

    オンプレミスとOCI間に専用のプライベート接続が必要な場合は、FastConnectの使用を検討してください。それ以外の場合はVCN Connectを使用してください。

  • OCIモニタリング

    OCIモニタリング・サービスを使用すると、メトリックおよびアラーム機能を使用してクラウド・リソースをアクティブまたは受動的にモニターできます。

  • コスト

    フレキシブル・シェイプを使用して、インスタンスで実行されるワークロードに必要なCPU数およびメモリー量を選択します。この柔軟性により、ワークロードに一致するVMを構築できるため、パフォーマンスを最適化し、コストを最小限に抑えることができます。OCIモニタリング・サービスを使用すると、メトリックおよびアラーム機能を使用してクラウド・リソースをアクティブまたは受動的にモニターできます。

  • リアルタイムのセンチメント分析によるチャットボット

    今後のプロジェクトとして、このアーキテクチャはチャットボットを使用するために適応できます。センチメント分析は、リアルタイムのナラティブ・マッピングを組み込んでおり、チャットボットは文内の重要な言葉を調べ、それらに正、中性または負の相対値を割り当て、会話のテノール全体を理解させることができるようになりました。

確認

  • 作成者: Gabriel Grigorie
  • コントリビュータ: Hassan Ajan、L Luis Cabrera-Cordon、Mari Messinger

変更ログ

このログには、重要な変更がリストされます。