構成された Document Intelligence モデルを作成する
この演習では、異なる納税申告フォームを分析する 2 つのカスタム モデルを作成してトレーニングします。 次に、これらのカスタム モデルを両方とも含む作成済みモデルを作成します。 申告書を送信してモデルをテストし、ドキュメントの種類とラベル付けされたフィールドが正しく認識されていることを確認します。
リソースのセットアップ
スクリプトを使用して、Azure AI Document Intelligence リソース、サンプル フォームを含むストレージ アカウント、リソース グループを作成します。
- Visual Studio Code を起動します。
- パレットを開き (SHIFT+CTRL+P)、Git:Clone コマンドを実行して、
https://github.com/MicrosoftLearning/mslearn-ai-document-intelligence
リポジトリをローカル フォルダーに複製します (どのフォルダーでも問題ありません)。 -
リポジトリを複製したら、Visual Studio Code でフォルダーを開きます。
注:Visual Studio Code に、開いているコードを信頼するかどうかを求めるポップアップ メッセージが表示された場合は、ポップアップの [はい、作成者を信頼します] オプションをクリックします。
注: ビルドとデバッグに必要なアセットを追加するように求めるプロンプトが表示された場合は、[今はしない] を選択します。 Visual Studio Code から他のポップアップがある場合は、それらを閉じても構いません。
-
左側のウィンドウで Labfiles フォルダーを展開し、03-composed-model ディレクトリを右クリックします。 統合ターミナルで開くオプションを選択し、次のスクリプトを実行します。
az login --output none
注:アクティブなサブスクリプションがなく、MFA が有効になっていることを示すエラーが発生した場合は、最初に
https://portal.azure.com
で Azure portal にログインしてから、az login
を再実行する必要がある場合があります。 - メッセージ表示されたら、Azure サブスクリプションにサインインします。 その後、Visual Studio Code に戻り、サインイン プロセスが完了するまで待ちます。
-
統合ターミナルで、次のコマンドを実行してリソースを設定します。
./setup.ps1
重要:スクリプトによって作成された最後のリソースは、Azure AI ドキュメント インテリジェンス サービスです。 そのコマンドが、F0 レベルのリソースが既に存在することが原因で失敗した場合は、そのリソースをこのラボ用に使用するか、Azure portal で S0 レベルを使用して手動で作成します。
1040 Forms カスタム モデルを作成する
作成済みモデルを作成するには、最初に 2 つ以上のカスタム モデルを作成する必要があります。 最初のカスタム モデルを作成するには、次の操作を行います。
- 新しいブラウザー タブで、
https://documentintelligence.ai.azure.com/studio
で Azure AI Document Intelligence Studio を起動します - 下にスクロールし、[カスタム モデル] で [Custom extraction model](カスタム抽出モデル) を選択します。
- アカウントへのサインインを求められた場合は、Azure 資格情報を使用します。
- どの Azure AI Document Intelligence リソースを使用するかを確認されたら、Azure AI Document Intelligence リソースを作成した時に使用したサブスクリプションとリソース名を選択します。
- [マイ プロジェクト] で、 + Create a project を選択します。
- [プロジェクト名] テキストボックスに「1040 Forms」と入力し、[続行] を選択します。
- [サービス リソースの構成] ページの [サブスクリプション] ドロップダウン リストで、Azure サブスクリプションを選択します。
- [リソース グループ] ドロップダウン リストで、作成された [DocumentIntelligenceResources<xxxx>] を選択します。
- [Document Intelligence または Cognitive Service リソース] ドロップダウン リストで、[DocumentIntelligence<xxxx>] を選択します。
- [API バージョン] ドロップダウン リストで、[2024-07-31 (プレビュー)] が選択されていることを確認し、[続行] を選択します。
- [Connect training data source](トレーニング データ ソースの接続) ページの [サブスクリプション] ドロップダウン リストで、Azure サブスクリプションを選択します。
- [リソース グループ] ドロップダウン リストで、[DocumentIntelligenceResources<xxxx>] を選択します。
- [ストレージ アカウント] ドロップダウン リストで、一覧表示されているストレージ アカウントのみを選択します。 サブスクリプションに複数のストレージ アカウントがある場合は、docintelstorage で始まるストレージ アカウントを選択します
- [BLOB コンテナー] ドロップダウン リストで [1040examples] を選択し、[続行] を選択します。
- [確認と作成] ページで、[プロジェクトの作成] を選択します。
- [ラベル付けを今すぐ開始] ポップアップの [レイアウトの実行] で [今すぐ実行] を選択し、分析が完了するまで待ちます。
1040 Forms カスタム モデルにラベルを付ける
次に、フォーム例のフィールドにラベルを付けましょう。
- [Label data](データのラベル付け) ページで、ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「FirstName」と入力し、Enter キーを押します。
- 左側の一覧で f1040_1.pdf という名前のドキュメントを選択し、John を選択し、FirstName を選択します。
- ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「LastName」と入力し、Enter キーを押します。
- ドキュメントで [Doe] を選択し、[LastName] を選択します。
- ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「City」と入力し、Enter キーを押します。
- ドキュメントで [Los Angeles] を選択し、[City] を選択します。
- ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「State」と入力し、Enter キーを押します。
- ドキュメントで [CA] を選択し、[State] を選択します。
- 作成したラベルを使用して、左側の一覧にある残りのフォームについてラベル付けのプロセスを繰り返します。 同じ 4 つのフィールドにラベル (FirstName、LastName、City、State) を付けます。 いずれかのドキュメントに市または州のデータが含まれていないことに注意してください。
重要 この演習では目的上、5 つのフォームの例のみを使用し、4 つのフィールドのみにラベルを付けます。 実際のモデルでは、できるだけ多くのサンプルを使用して、予測の精度と信頼度を最大化する必要があります。 また、4 つのフィールドだけでなく、フォームで使用可能なすべてのフィールドにラベルを付ける必要もあります。
1040 Forms カスタム モデルをトレーニングする
サンプル フォームにラベルを付けたので、最初のモデルをトレーニングできます。
- 画面右上の Azure AI Document Intelligence Studio で、[トレーニング] を選択します。
- [新しいモデルのトレーニング] ダイアログの [モデル ID] テキストボックスに「1040FormsModel」と入力します。
- [ビルド モード] ドロップダウン リストで [テンプレート] を選択し、[トレーニング] を選択します。
- [トレーニングの進行中] ダイアログで、[モデルに移動] を選択します。
1099 Forms カスタム モデルを作成する
次に、例 1099 の納税申告フォームでトレーニングを行う 2 つ目のモデルを作成する必要があります。
- Azure AI Document Intelligence Studio で、[Custom extraction model](カスタム抽出モデル) を選択します。
- [マイ プロジェクト] で、 + Create a project を選択します。
- [プロジェクト名] テキストボックスに「1099 Forms」と入力し、[続行] を選択します。
- [サービス リソースの構成] ページの [サブスクリプション] ドロップダウン リストで、Azure サブスクリプションを選択します。
- [リソース グループ] ドロップダウン リストで、[DocumentIntelligenceResources<xxxx>] を選択します。
- [Document Intelligence または Cognitive Service リソース] ドロップダウン リストで、[DocumentIntelligence<xxxx>] を選択します。
- [API バージョン] ドロップダウン リストで、[2024-07-31 (プレビュー)] が選択されていることを確認し、[続行] を選択します。
- [Connect training data source](トレーニング データ ソースの接続) ページの [サブスクリプション] ドロップダウン リストで、Azure サブスクリプションを選択します。
- [リソース グループ] ドロップダウン リストで、[DocumentIntelligenceResources<xxxx>] を選択します。
- [ストレージ アカウント] ドロップダウン リストで、一覧表示されているストレージ アカウントのみを選択します。
- [BLOB コンテナー] ドロップダウン リストで [1099examples] を選択し、[続行] を選択します。
- [確認と作成] ページで、[プロジェクトの作成] を選択します。
- [レイアウトの実行] のドロップダウン ボタンを選択し、[未分析のドキュメント] を選択します。
- 分析が完了するまで待ちます。
1099 Forms カスタム モデルにラベルを付ける
次に、いくつかのフィールドを含むフォーム例にラベルを付けます。
- [Label data](データのラベル付け) ページで、ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「FirstName」と入力し、Enter キーを押します。
- 左側の一覧で f1099msc_payer.pdf という名前のドキュメントを選択し、John を選択し、FirstName を選択します。
- ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「LastName」と入力し、Enter キーを押します。
- ドキュメントで [Doe] を選択し、[LastName] を選択します。
- ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「City」と入力し、Enter キーを押します。
- ドキュメントで [New Haven] を選択し、[City] を選択します。
- ページの右上にある [+ フィールドの追加] を選択し、[フィールド] を選択します。
- 「State」と入力し、Enter キーを押します。
- ドキュメントで [CT] を選択し、[State] を選択します。
- 左側の一覧にある残りのフォームについてラベル付けのプロセスを繰り返します。 同じ 4 つのフィールドにラベル (FirstName、LastName、City、State) を付けます。 2 つのドキュメントに、ラベル付けする名前データがないことに注意してください。
1099 Forms カスタム モデルをトレーニングする
2 つ目のカスタム モデルをトレーニングできるようになりました。
- Azure AI Document Intelligence Studio で、[トレーニング] を選択します。
- [新しいモデルのトレーニング] ダイアログの [モデル ID] テキストボックスに「1099FormsModel」と入力します。
- [ビルド モード] ドロップダウン リストで [テンプレート] を選択し、[トレーニング] を選択します。
- [トレーニングの進行中] ダイアログで、[モデルに移動] を選択します。
- トレーニング プロセスには数分かかることがあります。 両方のモデルで [成功] 状態が表示されるまで、ブラウザーをときどき更新します。
モデルを使用する
モデルが完成したので、フォーム例を使用してモデルをテストしましょう。
- Azure AI Document Intelligence Studio で、[モデル] ページを選択し、[1040FormsModel] を選択します。
- [Test] を選択します。
- [ファイルの参照] を選択し、リポジトリを複製した場所を参照します。
- 03-composed-model/trainingdata/TestDoc/f1040_7.pdf を選択し、[開く] を選択します。
- Run analysis を選択します。 Azure AI Document Intelligence により、作成済みモデルを使用してフォームが分析されます。
- 分析されたドキュメントは、1040 納税申告フォーム例です。 [DocType] プロパティをチェックして、適切なカスタム モデルが使用されたかどうかを確認します。 また、モデルによって識別された [FirstName]、[LastName]、[City]、[State] の値も確認します。
リソースをクリーンアップする
作成済みモデルの動作を確認したので、Azure サブスクリプションで作成したリソースを削除しましょう。
https://portal.azure.com/
の Azure potal で、[Resource group](リソース グループ) を選択します。- [Resource group](リソース グループ) の一覧で、作成した [DocumentIntelligenceResources<xxxx>] を選択し、[Delete resource groupリ](ソース グループの削除) を選択します。
- [TYPE THE RESOURCE GROUP NAME] (リソース グループ名の入力) テキストボックスにリソース グループの名前を入力し、[削除] を選択して Document Intelligence リソースとストレージ アカウントを削除します。