データを準備し、テキスト分類スキーマを定義する方法

カスタム テキスト分類モデルを作成するには、それをトレーニングするための高品質なデータが必要です。 この記事では、スキーマの定義と共に、データの選択と準備を行う方法について説明します。 スキーマの定義はプロジェクト開発ライフサイクルの最初の手順であり、実行時、モデルにテキストを分類させるクラスを定義します。

スキーマの設計

スキーマには、モデルの実行時にテキストを分類するために必要なクラスが定義されています。

  • 確認と識別: データセット内のドキュメントを確認して、その構造と内容を理解し、データをどのように分類したいかを特定します。

    たとえば、サポート チケットを分類する場合、"ログインの問題"、"ハードウェアの問題"、"接続の問題"、"新しい機器の要求" などのクラスが必要になるかもしれません。

  • クラスのあいまいさを回避する: あいまいさは、指定したクラスが互いに似た意味を共有する場合に生じます。 スキーマがあいまいであればあるほど、より多くのラベル付きデータを使用したクラスの識別が必要になる場合があります。

    たとえば、食べ物のレシピを分類する場合、ある程度似ている可能性があります。 "デザートのレシピ" と "メイン ディッシュのレシピ" を区別するには、モデルで 2 つのクラスを区別できるように、必要に応じてさらに多くの例にラベルを付けます。 あいまいさを回避することで、時間が節約され、より良い結果が得られます。

  • 範囲外のデータ: 運用環境でモデルを使用する場合、どのクラスにも属さないドキュメントが予想される場合は、"範囲外" のクラスをスキーマに追加することを検討してください。 次にいくつかのドキュメントをデータセットに追加して、"範囲外" のラベルを付けます。 無関係なドキュメントを認識し、それに応じてラベルを予測する方法をモデルに学習させることができます。

データの選択

モデルをトレーニングするデータの品質は、モデルのパフォーマンスに大きく影響します。

  • ドメインの問題空間を反映した実際のデータを使用して、モデルを効果的にトレーニングします。 合成データを使用すると、最初のモデル トレーニング プロセスを加速できますが、実際のデータとは異なる可能性が高く、使用したときにモデルから得られる効果が少なくなることがあります。

  • 実際の分布から大きく離れることなく、可能な限りデータ分散のバランスを取ります。

  • モデルのオーバーフィットを回避するために、可能な限り多様なデータを使用します。 トレーニング データの多様性が低いと、実際のデータに存在しない場合がある偽の相関関係をモデルが学習する可能性があります。

  • データ内のドキュメントが重複しないようにします。 重複するデータは、トレーニング プロセス、モデル メトリック、モデルのパフォーマンスに悪影響を及ぼす可能性があります。

  • データの取得場所を検討します。 1 人の人物、1 つの部署、またはシナリオの一部からデータを収集する場合は、モデルが学ぶべき重要な多様性が欠落している可能性があります。

Note

ドキュメントで複数の言語が使われている場合は、プロジェクトの作成[複数言語] オプションを選択し、[言語] オプションをドキュメントの主要な言語に設定します。

データ準備

カスタム テキスト分類プロジェクトを作成するための前提条件として、トレーニング データをストレージ アカウントの BLOB コンテナーにアップロードする必要があります。 トレーニング ドキュメントの作成とアップロードは、Azure から直接行うことも、Azure Storage Explorer ツールを使って行うこともできます。 Azure Storage Explorer を使用すると、より多くのデータをすばやくアップロードできます。

カスタム テキスト分類に使用できるのは、.txt カスタム テキストのドキュメント。 データが他の形式の場合は、CLUtils 解析コマンドを使用してファイル形式を変更できます。

注釈付きデータセットをアップロードするか、注釈の付いていないデータセットをアップロードし、Language Studio でデータにラベル付けすることができます。

テスト セット

テスト セットを定義するときは、トレーニング セットに存在しないドキュメントの例を必ず含めてください。 テスト セットの定義は、モデルのパフォーマンスを計算するための重要な手順です。 また、テスト セットに、プロジェクトで使用されるすべてのクラスを表すドキュメントが含まれていることを確認します。

次のステップ

まだカスタム テキスト分類プロジェクトを作成していない場合は、試してみてください カスタム テキスト分類を初めて使用する場合は、クイックスタートに従ってサンプル プロジェクトを作成することを検討してください。 また、プロジェクトの作成に必要なことの詳細については、プロジェクトの要件に関する記事を参照してください。