チュートリアル:Power BI での Cognitive Services の使用
Power BI で Azure Cognitive Services からの一連の関数にアクセスし、データフロー用のセルフ サービスのデータ準備でデータを強化することが可能です。 現在サポートされているサービスは、感情分析、キー フレーズ抽出、言語検出、および画像のタグ付けです。 変換は Power BI サービス上で実行されます。Azure Cognitive Services サブスクリプションは不要です。 この機能には、Power BI Premium が必要です。
Cognitive Services の変換は、データフロー用のセルフ サービスのデータ準備でサポートされます。 最初に、この記事のテキスト分析および画像のタグ付けに関するステップ バイ ステップの例を使用します。
このチュートリアルで学習する内容は次のとおりです。
- データフロー内にデータをインポートする
- センチメントをスコア付けし、データフロー内のテキスト列のキー フレーズを抽出する
- Power BI Desktop から結果に接続する
前提条件
このチュートリアルを完了するには、次の前提条件を用意しておく必要があります。
- Power BI アカウント。 Power BI にサインアップしていない場合は、無料の試用版にサインアップしてください。
- AI ワークロードが有効な Power BI Premium 容量へのアクセス権。 プレビュー中、既定では、このワークロードはオフになります。 Premium 容量を使用しているのに AI Insights が表示されない場合は、Premium 容量の管理者に連絡し、管理ポータルで AI ワークロードを有効にしてもらってください。
テキスト分析
チュートリアルのテキスト分析の部分を完了するには、このセクションの手順に従ってください。
手順 1: Power BI サービスでセンチメント スコアリングを適用する
最初に、Premium 容量を持つ Power BI ワークスペースに移動します。次に、画面右上の [作成] ボタンを使用して、新しいデータフローを作成します。
データフロー ダイアログには、新しいデータフローを作成するためのオプションが表示されます。[新しいエンティティを追加] を選択して、次に、データ ソースのメニューから [テキスト/CSV] を選択します。
URL フィールドに URL https://pbiaitutorials.blob.core.windows.net/textanalytics/FabrikamComments.csv
を貼り付けて、[次へ] を選択します。
これでデータがテキスト分析に使用できるようになりました。 顧客のコメント列に対してセンチメント スコアリングとキー フレーズ抽出を使用できます。
Power Query エディターで、 [AI Insights] を選択します。
[Cognitive Services] フォルダーを展開し、使用する関数を選択します。 この例では、コメント列のセンチメントをスコア付けしていますが、同じ手順に従って、言語検出とキー フレーズ抽出を試すこともできます。
関数を選択すると、必須フィールドと省略可能フィールドが表示されます。 例のレビューのセンチメントをスコア付けするには、レビュー列をテキスト入力として選択します。 カルチャ情報は省略可能な入力で、ISO 形式で入力する必要があります。 たとえば、テキストを英語として処理する場合は、「en」と入力します。 フィールドを空白のままにした場合、Power BI は、最初に入力値の言語を検出してから、センチメントをスコア付けします。
ここで [Invoke](呼び出し) を選択すると、関数が実行されます。 関数によって、各行のセンチメント スコアを含む新しい列がテーブルに追加されます。 [AI insights] に戻ると、レビュー テキストのキー フレーズを同じ方法で抽出できます。
変換が完了したら、クエリ名を Customer comments に変更して、[完了] を選択します。
次に、データフローを保存して、その名前を Fabrikam に設定します。 データフローを保存した後にポップアップ表示される [今すぐ更新] ボタンを選択します。
データフローを保存して更新した後は、Power BI レポートで使用できます。
手順 2:Power BI Desktop から接続する
Power BI Desktop を開きます。 [ホーム] リボンで [データを取得] を選択します。
[Power BI] を選択し、[Power BI データフロー] を選択します。 [接続] を選択します。
組織のアカウントを使ってサインインします。
作成したデータフローを選択します。 [Customer comments] テーブルに移動して、[読み込み] を選択します。
以上でデータが読み込まれ、レポートの作成を開始できるようになります。
イメージのタグ付け
Power BI サービスで、Premium 容量を持つワークスペースに移動します。 画面右上の [作成] ボタンを使用して、新しいデータフローを作成します。
[新しいエンティティを追加] を選択します。
データ ソースの選択を求められたら、[空のクエリ] を選択します。
クエリ エディターでこのクエリをコピーし、[次へ] を選択します。 URL パスを他の画像に置き換えるか、さらに行を追加します。 "Web.Contents
" 関数は、イメージの URL をバイナリとしてインポートします。 データ ソースにイメージがバイナリとして保存されている場合は、それを直接使用することもできます。
let
Source = Table.FromRows({
{ Web.Contents("https://images.pexels.com/photos/87452/flowers-background-butterflies-beautiful-87452.jpeg") },
{ Web.Contents("https://upload.wikimedia.org/wikipedia/commons/5/53/Colosseum_in_Rome%2C_Italy_-_April_2007.jpg") }}, { "Image" })
in
Source
資格情報の入力を求められたら、 [匿名] を選択します。
次のダイアログが表示されます。
Power BI では、各 Web ページの資格情報の入力を求められます。
クエリ エディターで [AI Insights] を選択します。
次に、組織のアカウントでサインインします。
Tag Images 関数を選択し、列フィールドに「[Binary]」と入力し、カルチャ情報フィールドに「en」と入力します。
Note
現在、ドロップダウンを使用して列を選択することはできません。 この問題は、プライベート プレビュー中にできるだけ早く解決されます。
関数エディターで、列名を囲む引用符を削除します。
注意
引用符を削除することが一時的な回避策です。 この問題は、プレビュー中にできるだけ早く解決されます。
この関数では、コンマ区切り形式のタグと json レコードとしてのタグの両方を含むレコードが返されます。 展開ボタンを選択すると、その一方または両方を、列としてテーブルに追加できます。
[完了] を選択し、データフローを保存します。 データフローを更新すると、データフロー コネクタを使用して Power BI Desktop からそれに接続できます。
リソースをクリーンアップする
このチュートリアルの使用が完了したら、Power Query エディターでクエリ名を右クリックし、[削除] を選択して、クエリを削除します。
制限事項
ゲートウェイの Cognitive Services での使用には、いくつかの既知の問題があります。 ゲートウェイを使用する必要がある場合は、まずゲートウェイを使って必要なデータをインポートするデータフローを作成することをお勧めします。 その後、最初のデータフローを参照する別のデータフローを作成して、これらの関数を適用します。
AI のデータフローの操作が失敗した場合は、データフローでの AI の使用時に高速結合を有効にする必要がある場合があります。 テーブルのインポートが完了したら、AI 機能の追加を開始する "前" に、[ホーム] リボンから [オプション] を選択し、表示されるウィンドウで [複数のソースからデータを結合できるようにします] の横にあるチェックボックスをオンにして機能を有効にしてから、[OK] を選択して選択内容を保存します。 その後、データフローに AI 機能を追加できるようになります。
関連するコンテンツ
このチュートリアルでは、Power BI のデータ フロー上でセンチメント スコアリングおよびイメージのタグ付け関数を適用しました。 Power BI での Cognitive Services について詳しくは、以下の記事を参照してください。
次の記事にも興味をもたれるかもしれません。