ラベル | 説明 | データ タイプ |
入力フォルダーまたはテーブル | 入力は次のいずれかになります。
| Folder; Feature Layer; Table View; Feature Class |
出力モデル | トレーニング済みモデルが格納される出力フォルダーの場所。 | Folder |
事前トレーニング済みモデル ファイル (オプション) | 新しいモデルの微調整に使用される事前トレーニング済みモデル。 入力には Esri モデル定義ファイル (.emd) またはディープ ラーニング パッケージ ファイル (.dlpk) を指定できます。 類似したエンティティを持つ事前トレーニング済みモデルは、新しいモデルに合わせて微調整することができます。 事前トレーニング済みモデルは、新しいモデルのトレーニングに使用される同じモデル タイプおよびバックボーン モデルでトレーニングされている必要があります。 | File |
住所エンティティ (オプション) | ロケーションとして処理される住所エンティティ。 推論では、このようなエンティティは、指定のロケーターでジオコーディングされ、エンティティ抽出処理の結果としてフィーチャクラスが生成されます。 ロケーターが提供されていないか、トレーニング済みモデルが住所エンティティを抽出しない場合、抽出したエンティティを含むテーブルが代わりに生成されます。 | String |
最大エポック (オプション) | モデルをトレーニングする場合の対象となるエポックの最大数。 最大エポック値を 1 に設定すると、データセットがニューラル ネットワークによって 1 回渡されます。 デフォルト値は 5 です。 | Long |
モデル バックボーン (オプション) | 新しいモデルをトレーニングするアーキテクチャとして使用する、事前構成済みのニューラル ネットワークを指定します。
| String |
バッチ サイズ (オプション) | 1 回に処理されるトレーニング サンプルの数。 デフォルト値は 2 です。 バッチ サイズを大きくすると、ツールのパフォーマンスが向上しますが、バッチ サイズが増加するにつれて、使用されるメモリ量が増加します。 メモリ不足エラーが発生した場合は、より小さなバッチ サイズを使用してください。 | Double |
モデル引数 (オプション) | モデルの初期化に使用される追加の引数。 サポートされるモデル引数は sequence_length です。これは、モデルのトレーニングにおいて考慮されるトレーニング データの最大シーケンス長を設定するために使用されます。 | Value Table |
学習率 (オプション) | トレーニング処理の際に調整されるモデル加重の量を示すステップ サイズ。 値を指定しない場合、最適な学習率が自動的に生成されます。 | Double |
検証率 (オプション) | モデルの検証に使用するトレーニング サンプルの割合。 デフォルト値は、Transformer ベースのモデル バックボーンの場合は 10、Mistral バックボーンの場合は 50 です。 | Double |
モデルの改善が見込めなくなった時点で停止 (オプション) | モデルの改善がなくなった時点でモデルのトレーニングを停止するか、[最大エポック] パラメーター値に達するまでトレーニングを続行するかを指定します。
| Boolean |
モデル バックボーンをトレーニング可能にする (オプション) | 事前トレーニング済みモデルのバックボーン レイヤーを固定するかどうかを指定します。これにより、加重とバイアスが本来の設計どおりになります。
| Boolean |
テキスト フィールド | モデルによって入力として使用されるテキストを含む、入力フィーチャクラスまたはテーブル内のテキスト フィールド。 このパラメーターは、[入力フォルダーまたはテーブル] パラメーター値がフィーチャクラスまたはテーブルである場合は必須です。 | Field |
プロンプト (オプション) | 予測した出力を生成するために、大規模言語モデル (LLM) に与えられる特定の入力または手順。 デフォルト値は、指定テキスト内の指定クラスに属する名前付きエンティティの抽出です。 他のクラスに属するエンティティにはタグを付けないでください。 | String |
使用法
このツールを使用するには、ディープ ラーニング フレームワークがインストールされている必要があります。 ArcGIS Pro のディープ ラーニング フレームワークを使用するようにコンピューターを設定するには、「ArcGIS 用のディープ ラーニング フレームワークのインストール」をご参照ください。
このツールは、既存のトレーニング済みモデルの微調整にも使用できます。
GPU を使用してこのツールを実行するには、プロセッサ タイプ環境を GPU に設定します。 複数の GPU がある場合は、代わりに GPU ID 環境を指定します。
入力には、テキスト フィールドと名前付きエンティティ ラベルを含むフィーチャクラスまたはテーブル、あるいは .json または .csv ファイルのトレーニング データがあるフォルダーを指定できます。
このツールは、NER モデルのトレーニングに Transformer ベースのバックボーンを使用し、Mistral LLM を使用したプロンプト付きコンテキスト内学習をサポートしています。 Mistral バックボーンをインストールするには、「ArcGIS Mistral バックボーン」をご参照ください。
このツールの実行要件および発生する可能性のある問題の詳細については、「ディープ ラーニングに関するよくある質問」をご参照ください。
パラメーター
arcpy.geoai.TrainEntityRecognitionModel(in_folder, out_model, {pretrained_model_file}, {address_entity}, {max_epochs}, {model_backbone}, {batch_size}, {model_arguments}, {learning_rate}, {validation_percentage}, {stop_training}, {make_trainable}, text_field, {prompt})
名前 | 説明 | データ タイプ |
in_folder | 入力は次のいずれかになります。
| Folder; Feature Layer; Table View; Feature Class |
out_model | トレーニング済みモデルが格納される出力フォルダーの場所。 | Folder |
pretrained_model_file (オプション) | 新しいモデルの微調整に使用される事前トレーニング済みモデル。 入力には Esri モデル定義ファイル (.emd) またはディープ ラーニング パッケージ ファイル (.dlpk) を指定できます。 類似したエンティティを持つ事前トレーニング済みモデルは、新しいモデルに合わせて微調整することができます。 事前トレーニング済みモデルは、新しいモデルのトレーニングに使用される同じモデル タイプおよびバックボーン モデルでトレーニングされている必要があります。 | File |
address_entity (オプション) | ロケーションとして処理される住所エンティティ。 推論では、このようなエンティティは、指定のロケーターでジオコーディングされ、エンティティ抽出処理の結果としてフィーチャクラスが生成されます。 ロケーターが提供されていないか、トレーニング済みモデルが住所エンティティを抽出しない場合、抽出したエンティティを含むテーブルが代わりに生成されます。 | String |
max_epochs (オプション) | モデルをトレーニングする場合の対象となるエポックの最大数。 最大エポック値を 1 に設定すると、データセットがニューラル ネットワークによって 1 回渡されます。 デフォルト値は 5 です。 | Long |
model_backbone (オプション) | 新しいモデルをトレーニングするアーキテクチャとして使用する、事前構成済みのニューラル ネットワークを指定します。
| String |
batch_size (オプション) | 1 回に処理されるトレーニング サンプルの数。 デフォルト値は 2 です。 バッチ サイズを大きくすると、ツールのパフォーマンスが向上しますが、バッチ サイズが増加するにつれて、使用されるメモリ量が増加します。 メモリ不足エラーが発生した場合は、より小さなバッチ サイズを使用してください。 | Double |
model_arguments [model_arguments,...] (オプション) | モデルの初期化に使用される追加の引数。 サポートされるモデル引数は sequence_length です。これは、モデルのトレーニングにおいて考慮されるトレーニング データの最大シーケンス長を設定するために使用されます。 | Value Table |
learning_rate (オプション) | トレーニング処理の際に調整されるモデル加重の量を示すステップ サイズ。 値を指定しない場合、最適な学習率が自動的に生成されます。 | Double |
validation_percentage (オプション) | モデルの検証に使用するトレーニング サンプルの割合。 デフォルト値は、Transformer ベースのモデル バックボーンの場合は 10、Mistral バックボーンの場合は 50 です。 | Double |
stop_training (オプション) | モデルの改善がなくなった時点でモデルのトレーニングを停止するか、max_epochs パラメーター値に達するまでトレーニングを続行するかを指定します。
| Boolean |
make_trainable (オプション) | 事前トレーニング済みモデルのバックボーン レイヤーを固定するかどうかを指定します。これにより、加重とバイアスが本来の設計どおりになります。
| Boolean |
text_field | モデルによって入力として使用されるテキストを含む、入力フィーチャクラスまたはテーブル内のテキスト フィールド。 このパラメーターは、in_folder パラメーター値がフィーチャクラスまたはテーブルである場合は必須です。 | Field |
prompt (オプション) | 予測した出力を生成するために、大規模言語モデル (LLM) に与えられる特定の入力または手順。 デフォルト値は、指定テキスト内の指定クラスに属する名前付きエンティティの抽出です。 他のクラスに属するエンティティにはタグを付けないでください。 | String |
コードのサンプル
次の例は、TrainEntityRecognitionModel 関数を使用する方法を示しています。
# Name: TrainEntityRecognizer.py
# Description: Train an Entity Recognition model to extract useful entities such as "Address", "Date" from text.
# Import system modules
import arcpy
arcpy.env.workspace = "C:/textanalysisexamples/data"
# Set local variables
in_folder = "train_data"
out_folder = "test_bio_format"
# Run Train Entity Recognition Model
arcpy.geoai.TrainEntityRecognitionModel(in_folder, out_folder)
ライセンス情報
- Basic: No
- Standard: No
- Advanced: Yes