カスタム・モデル・データセット

カスタム・モデルのサポートされているデータセット、およびデータセットをサポートされている形式に変換する方法を確認します。

Label Studioの統合

Oracleのデータ・ラベリング・サービスは非推奨です。オプションとして、ラベル付きデータセットを、オープン・ソースおよびマーケットプレイスでサポートされているラベリング・ツールであるLabel Studioに移行することをお薦めします。

次のステップに従って、データ・ラベリング・スナップショットのエクスポートをLabel StudioのインポートおよびLabel StudioのRAW JSONエクスポート形式に変換します。これらの形式は、Label Studioまたは直接モデルのトレーニングでさらに注釈を付けるために使用します。

カスタム・テキスト分類に許可されるデータセット

カスタム・テキスト分類モデルのラベル付きデータは、次の2つの方法で提供できます。

  • データ・ラベリング・プロジェクト
  • カンマ区切り値(.csv)ファイル
CSVファイルの要件
  • 最初の行は、次の2列の名前を含むヘッダーである必要があります。
    • text: 分類するテキストを取得します。
    • labels: 1つ以上の割り当てられたクラスを取得します。マルチラベル分類データセットの場合、複数のクラス名を |記号で結合することによって指定できます。
  • ヘッダー行の後の全ての行に研修レコードが含まれます。
  • ファイルに2つ以上の列がある場合、モデルのトレーニングにはtext列およびlabels列のみが使用されます。
  • CSVファイルのエンコーディングには、UTF-8を使用します。Excelを使用する場合は、ファイルをCSV UTF-8 (カンマ区切り)(.csv)として保存します。

  • デリミタには、カンマ(,)を使用します。
  • エスケープ文字の場合は、二重引用符(")を使用します。これは、Unicode文字U+0022でも知られています。

    たとえば、Excelで次のテキストを入力するとします。

    This is a "double quote" sentence

    前述の文は、次のようにCSVに格納されます。

    "This is a ""double quote"" sentence"

単一ラベルのテキスト分類用のCSVファイルの例:

text,labels
Windows OS -unable to print,Network Printer Failure
Citrix Account frequently locking,Account (Password reset)
Pull print queue not working ,Application Component Disconnect
wifi disable and lan is disconnected at the desktop,Hardware Device Failure
マルチ・ラベル・テキスト分類のCSVファイルの例:
Windows OS -unable to print,Network Printer Failure
Pull print queue not working ,Application Component Disconnect|Network Printer Failure
wifi disable and lan is disconnected at the desktop,Hardware Device Failure|Network Connection Issue

カスタムNERに許可されるデータセット書式

カスタムNERモデルのラベル付きデータは、次の2つの方法で提供できます。

  • Label Studioプロジェクト
  • JSON行形式(.jsonl)。
JSONファイルの要件

JSONファイルにはトレーニング・データは含まれません。代わりに、JSONファイルは、ラベルとラベルなしデータを含むファイルへのポインタ(相対パス)を含むマニフェストファイルです。

JSON形式はJSON行(JSONL)形式であり、各行は単一のJSONオブジェクトです。

  • オブジェクトの最初の行は、ラベルまたはクラスのセットと注釈ファイルのタイプを示します。
  • 後の行はすべて、研修レコードの説明です。
  • すべてのテキスト・ファイルをマニフェスト・ファイル(.jsonl)と同じディレクトリに保存し、トレーニング・レコードにファイル名を付けます。

スキーマの定義
  1. 最初の行はヘッダー行です。これには、ファイル・タイプを記述するJSONオブジェクトが含まれます。
  2. 後の行には、ラベル付きレコードを表すJSONオブジェクトが含まれます。
ヘッダー明細書式
フィールド タイプ 説明
labelsSet オブジェクトの配列です。

注釈でサポートされているエンティティのセットを示す文字列メンバー"name"を持つオブジェクト。ここにすべてのエンティティをリストします。

annotationFormat 文字列 NERデータセットには"ENTITY_EXTRACTION"を使用します。
datasetFormatDetails オブジェクト 注釈付けされるデータのタイプを示す文字列メンバー"formatType"を持つオブジェクト。LanguageのformatTypeの値を"TEXT"に設定します。
JSONスキーマの例:
{
    "labelsSet": [
      {
        "name": "Label1"
      },
      {
        "name": "Label2"
      },
      {
        "name": "Label3"
      },
      {
        "name": "Label4"
      }
    ],
    "annotationFormat": "ENTITY_EXTRACTION",
    "datasetFormatDetails": {
      "formatType": "TEXT"
    }
  }
ラベル付きレコード形式
フィールド タイプ 内容
sourceDetails オブジェクト

注釈を付けるファイルを指す文字列メンバーpathを持つオブジェクト。

ファイル・パスは、jsonファイルの場所に対する相対パスです。

annotations オブジェクト 注釈を記述する複合オブジェクト。
entities 配列(オブジェクト) レコードで識別されるエンティティのリスト。
entityType 文字列 エンティティ注釈のタイプ。値には、NERに"TEXTSELECTION"を使用します。
labels 配列(オブジェクト) 配列内の各オブジェクトには、識別されるエンティティのタイプを表すメンバー"label_name"があります。
textSpan オブジェクト テキスト・スパンを表すオブジェクト。"offset"および"length"の2つの必須数値メンバーが含まれます。
ラベル付きレコード形式の例のJSONスキーマ:
{
    "sourceDetails": {
      "path": "Complaint3.txt"
    },
    "annotations": [
      {
        "entities": [
          {
            "entityType": "TEXTSELECTION",
            "labels": [
              {
                "label_name": "Label1"
              },
              {
                "label_name": "Label2"
              }
            ],
            "textSpan": {
              "offset": 0,
              "length": 28
            }
          },
          {
            "entityType": "TEXTSELECTION",
            "labels": [
              {
                "label_name": "Label1"
              }
            ],
            "textSpan": {
              "offset": 196,
              "length": 11
            }
          }
        ]
      }
    ]
  }