次の方法で共有


カスタム固有表現認識についてよくあるご質問

Foundry Tools の Azure 言語のカスタム NER に関連する概念とシナリオに関してよく寄せられる質問への回答を見つけます。

サービスの使用を開始するにはどうすればよいですか?

詳細については、クイック スタートまたはプロジェクトの作成方法を参照してください

サービスの制限とは何ですか。

詳細については、「サービスの制限」を参照してください

タグ付けされたファイルはどれくらい必要ですか?

一般に、タグ付けが正確に、一貫して、完全に行われていれば、タグ付けされたデータが多様で代表的であるほど、良い結果が得られます。 モデルが適切に動作するようにタグ付けされたインスタンスの数は設定されていません。 パフォーマンスは、スキーマと、スキーマのあいまいさに大きく依存します。 あいまいなエンティティの種類には、より多くのタグが必要です。 パフォーマンスは、タグ付けの質にも依存します。 エンティティあたりのタグ付けされたインスタンスの推奨数は 50 です。

モデルのトレーニングにはどのくらいの時間がかかりますか?

トレーニング プロセスには長時間かかることがあります。 大まかな見積もりとして、合計の長さが 12,800,000 文字のファイルの予想されるトレーニング時間は 6 時間です。

カスタム モデルをプログラムから作成するにはどうすればよいでしょうか?

現在、モデルの構築に使用できるのは、REST API と Language Studio のみです。

REST API を使用して、カスタム モデルを構築できます。 オーサリング API を呼び出す方法の例については、このクイックスタートに従って、プロジェクトの作成と API を使用したモデルの作成を開始します。

モデルを使用して予測を開始する準備ができたら、REST API またはクライアント ライブラリを使用できます。

Microsoft Foundry 内で実行するアクションの一覧を次に示します。

  • 1 つのプロジェクト内の同じデータセットで複数のモデルをトレーニングします。
  • モデルのパフォーマンスを表示します。
  • モデルをデプロイしてテストし、データにラベルを追加または削除します。
  • データセットをトレーニング セットとテスト セットに分割する方法を選択します。

データはトレーニング セットとテスト セットにランダムに分割できますが、これは、モデルの評価が同じテスト セットに基づいていない可能性があり、結果が比較不可能になる可能性があることを意味します。 独自のテスト セットを開発し、それを使用して両方のモデルを評価し、改善点を正確に測定することをお勧めします。

サービスの制限を確認して、プロジェクトごとに許可されるトレーニング済みモデルの最大数を理解してください。

モデル スコアの高さまたは低さは、実稼働環境でのパフォーマンスの高さや低さを保証しますか?

モデルの評価が常に包括的であるとは限りません。 スコープは、次の要因によって異なります。

  • テスト セットのサイズ。 テスト セットが小さすぎる場合、良いスコアと悪いスコアは、モデルの実際のパフォーマンスを代表するわけではありません。 また、特定のエンティティ型がテスト セットに存在しない場合や、表現が不足している場合は、モデルのパフォーマンスに影響します。
  • データの多様性。 データに、運用環境で予想されるテキストのシナリオまたは例の数が限られている場合は、すべての状況が発生しない可能性があります。 その結果、未知のシナリオに直面した場合、モデルのパフォーマンスが低下する可能性があります。
  • あなたのデータ内における表現。 モデルのトレーニングに使用されるデータセットが、運用環境でモデルに導入されるデータを代表していない場合、モデルのパフォーマンスに大きな影響が及びます。

詳細については、「データの選択とスキーマの設計」を参照してください

モデルのパフォーマンスを向上させるにはどうすればよいですか?

  • モデルの混同行列をご覧ください。 特定のエンティティ型が正しく予測されないことが多い場合は、このクラスのタグ付けされたインスタンスを追加することを検討してください。

多くの場合、2 つの異なるエンティティ型が互いに予測される場合、スキーマに明確さがないことが示されます。 パフォーマンスを向上させるには、これら 2 つのエンティティ型を 1 つの統合型に結合することを検討する必要があります。 予測中に 2 つのエンティティ型が一貫して間違っている場合、この結果はスキーマのあいまいさを示唆します。 それらを 1 つのエンティティ型にマージすると、モデルの全体的な精度を向上させることができます。

  • テスト セットの予測を確認します。 いずれか 1 つのエンティティ型に他のエンティティ型よりもはるかに多くのタグ付けされたインスタンスがある場合、モデルはこの型に偏っている可能性があります。 他のエンティティ型にデータを追加するか、偏りのある型から例を削除します。

  • データの選択とスキーマの設計の詳細をご覧ください。

  • テスト セットを確認します。 タグ付けされたエンティティと共に予測されたエンティティを確認し、モデルの精度をより明確に理解します。 この比較は、スキーマまたはタグ セットの調整が必要かどうかを判断するのに役立ちます。

モデルを再トレーニングしたときに異なる結果が得られるのはなぜですか?

  • モデルをトレーニングするときに、データをトレーニングとテストのセットにランダムに分割するかどうかを決定できます。 続行する場合、モデルの評価が同じテスト セットで実行されるという保証はありません。つまり、結果が直接比較できない可能性があります。 そうすることで、別のテスト セットでモデルを評価するリスクが生じ、結果を確実に比較できなくなります。

  • 同じモデルを再トレーニングする場合、テスト セットは同じですが、モデルによって行われた予測に若干の変化が見られる場合があります。 この問題は、トレーニング済みのモデルに十分な堅牢性がないために発生します。 この結果は、データがさまざまなシナリオをどの程度適切に表しているか、データ ポイントの違い、データタグ付けの全体的な品質によって異なります。 モデルのパフォーマンスに影響を与える要因がいくつかあります。 モデルの堅牢性、データセットの特徴と多様性、データに割り当てられたタグの精度と均一性はすべて重要な役割を果たします。 最適な結果を得るには、データセットがターゲット ドメインを正確に表すだけでなく、一意の例も提供し、すべてのタグがデータ全体で一貫性と精度の両方で適用されるようにする必要があります。

異なる言語で予測を取得するにはどうすればよいですか?

まず、プロジェクトの作成時に多言語オプションを有効にする必要があります。または、後でプロジェクト設定ページから有効にすることもできます。 モデルをトレーニングしてデプロイした後は、複数の言語でモデルのクエリを開始できます。 言語によって結果が異なる場合があります。 任意の言語の精度を向上させるには、その言語でプロジェクトにタグ付きインスタンスを追加して、その言語のさらに多くの構文にトレーニング済みモデルを導入します。

モデルをトレーニングしましたが、テストできません

テストする前に、モデルをデプロイする必要があります。

トレーニング済みのモデルを予測に使用するにはどうすればよいですか?

モデルをデプロイした後、REST API またはクライアント ライブラリを使用して予測 API を呼び出します。

データのプライバシーとセキュリティ

データは、Azure ストレージ アカウントにのみ格納されます。 トレーニング中は、そこから読み取るためのアクセス権だけがカスタム NER に与えられます。 カスタム NER ユーザーは、 Foundry を介して、または REST API を使用してプログラムを使用して、ユーザー コンテンツを表示、エクスポート、または削除するフル コントロールを持っています。 詳細については、「言語のデータ、プライバシー、セキュリティを参照してください

プロジェクトをクローンする方法を教えてください

プロジェクトを複製するには、エクスポート API を使用してプロジェクトアセットをエクスポートし、それらを新しいプロジェクトにインポートする必要があります。 両方の操作については、REST API リファレンスを参照してください。

次のステップ