ディープ ラーニングを使用したテキスト分類 (Classify Text Using Deep Learning) (GeoAI)

サマリー

トレーニング済みのテキスト分類モデルをフィーチャクラスまたはテーブルのテキスト フィールドで実行し、信頼値を含む各クラスとともに割り当てられたクラス ラベルまたはカテゴリ ラベルを使用して各レコードを更新します。

テキスト分類の仕組みの詳細

使用法

  • このツールを使用するには、ディープ ラーニング フレームワークがインストールされている必要があります。 ArcGIS Pro のディープ ラーニング フレームワークを使用するようにコンピューターを設定するには、「ArcGIS 用のディープ ラーニング フレームワークのインストール」をご参照ください。

  • このツールは、モデル情報を含んでいるモデル定義ファイルを必要とします。 モデルは、[テキスト分類モデルのトレーニング (Train Text Classification Model)] ツールを使用してトレーニングできます。 [入力モデル定義ファイル] パラメーター値には、Esri モデル定義 JSON ファイル (.emd) またはディープ ラーニング モデル パッケージ (.dlpk) を指定することができます。 モデル ファイルはローカルに格納、または ArcGIS Living Atlas of the World 上でホストできます。

  • このツールは、Transformer ベースのバックボーンと Mistral バックボーンを使用してトレーニングされたモデルをサポートしています。 Mistral バックボーンをインストールするには、「ArcGIS Mistral バックボーン」をご参照ください。

  • このツールは、モデル拡張フィーチャを使用して作成されたサードパーティの言語モデルの使用をサポートしています。 モデル拡張フィーチャでは、[テキスト分類モデルのトレーニング (Train Text Classification Model)] ツールを使用して作成されていないカスタム ディープ ラーニング モデル ファイル (.dlpk) を使用するテキスト分類タスクが可能です。 カスタム ディープ ラーニング モデル ファイル (.dlpk) の作成の詳細については、「ArcGIS でのサードパーティの言語モデルの使用」をご参照ください。

  • このツールは、CPU または GPU 上で実行できます。ただし、ディープ ラーニングは計算負荷が高いので、GPU を使用することをお勧めします。 GPU を使用してこのツールを実行するには、プロセッサ タイプ環境を GPU に設定します。 複数の GPU がある場合は、代わりに GPU ID 環境を指定します。

  • このツールの実行要件および発生する可能性のある問題の詳細については、「ディープ ラーニングに関するよくある質問」をご参照ください。

パラメーター

ラベル説明データ タイプ
入力テーブル

分類またはラベル付与するテキストを含む、入力ポイント、ライン、ポリゴン フィーチャクラスまたはテーブル。

Feature Layer; Table View
テキスト フィールド

分類するテキストを含む、入力フィーチャクラスまたはテーブルのテキスト フィールド。

Field
入力モデル定義ファイル

分類に使用されるトレーニング済みモデル。 モデル定義ファイルには、Esri モデル定義 JSON ファイル (.emd)、またはローカルに格納あるいは ArcGIS Living Atlas (.dlpk_remote) でホストされたディープ ラーニング モデル パッケージ (.dlpk) のいずれかを指定することができます。

Mistral バックボーンを使用してトレーニングされた .dlpk ファイルを使用するには、モデルを使用する前にインストールしておく必要があります。 Mistral バックボーンをインストールするには、「ArcGIS Mistral バックボーン」をご参照ください

.dlpk ファイルには、サードパーティの言語モデルを指定することもできます。

注意:

サードパーティの言語モデル .dlpk ファイルには有害なコードが含まれる可能性があります。 ソースを信頼できる場合のみこれらのモデルを使用してください。

File
クラス ラベル フィールド
(オプション)

モデルによって割り当てられたクラスまたはカテゴリ ラベルを含むフィールドの名前。 デフォルトのフィールド名は ClassLabel です。

String
モデル引数
(オプション)

推測の実行中にモデルによって使用される追加の引数。 サポートされているモデル引数には、モデルの出力の調整に使用される sequence_lengthconfidence_threshold が含まれています。 モデル引数 confidence_threshold は複数ラベルのテキスト分類にのみ適用されます。

注意:

サードパーティの言語モデルを使用すると、モデル引数は、.dlpk ファイルで指定されたパラメーターに従って更新されます。 モデル引数の定義の詳細については、「ArcGIS でのサードパーティの言語モデルの使用」の getParameterInfo セクションをご参照ください。

Value Table
すべての予測で説明を表示
(オプション)

SHAP 説明を生成するかどうかを指定します。 説明の生成にかかる時間は、入力の長さによって異なります。

  • オン - SHAP 説明は出力テーブルの行ごとに生成されます。
  • オフ - SHAP 説明は生成されません。 これがデフォルトです。
Boolean
バッチ サイズ
(オプション)

1 回に処理されるトレーニング サンプルの数。 デフォルト値は 4 です。

バッチ サイズを大きくすると、ツールのパフォーマンスが向上しますが、バッチ サイズが増加するにつれて、使用されるメモリ量が増加します。 メモリ不足エラーが発生した場合は、より小さなバッチ サイズを使用してください。

Double

派生した出力

ラベル説明データ タイプ
更新されたテーブル

各クラスの信頼値とともに入力データから生成された分類およびラベル付与済みテキストを含む、出力ポイント、ライン、ポリゴン フィーチャクラスまたはテーブル。

Table View; Feature Layer

arcpy.geoai.ClassifyTextUsingDeepLearning(in_table, text_field, in_model_definition_file, {class_label_field}, {model_arguments}, {explain}, {batch_size})
名前説明データ タイプ
in_table

分類またはラベル付与するテキストを含む、入力ポイント、ライン、ポリゴン フィーチャクラスまたはテーブル。

Feature Layer; Table View
text_field

分類するテキストを含む、入力フィーチャクラスまたはテーブルのテキスト フィールド。

Field
in_model_definition_file

分類に使用されるトレーニング済みモデル。 モデル定義ファイルには、Esri モデル定義 JSON ファイル (.emd)、またはローカルに格納あるいは ArcGIS Living Atlas (.dlpk_remote) でホストされたディープ ラーニング モデル パッケージ (.dlpk) のいずれかを指定することができます。

Mistral バックボーンを使用してトレーニングされた .dlpk ファイルを使用するには、モデルを使用する前にインストールしておく必要があります。 Mistral バックボーンをインストールするには、「ArcGIS Mistral バックボーン」をご参照ください

.dlpk ファイルには、サードパーティの言語モデルを指定することもできます。

注意:

サードパーティの言語モデル .dlpk ファイルには有害なコードが含まれる可能性があります。 ソースを信頼できる場合のみこれらのモデルを使用してください。

File
class_label_field
(オプション)

モデルによって割り当てられたクラスまたはカテゴリ ラベルを含むフィールドの名前。 デフォルトのフィールド名は ClassLabel です。

String
model_arguments
[model_arguments,...]
(オプション)

推測の実行中にモデルによって使用される追加の引数。 サポートされているモデル引数には、モデルの出力の調整に使用される sequence_lengthconfidence_threshold が含まれています。 モデル引数 confidence_threshold は複数ラベルのテキスト分類にのみ適用されます。

注意:

サードパーティの言語モデルを使用すると、モデル引数は、.dlpk ファイルで指定されたパラメーターに従って更新されます。 モデル引数の定義の詳細については、「ArcGIS でのサードパーティの言語モデルの使用」の getParameterInfo セクションをご参照ください。

Value Table
explain
(オプション)

SHAP 説明を生成するかどうかを指定します。 説明の生成にかかる時間は、入力の長さによって異なります。

  • ENABLE_SHAPSHAP 説明は出力テーブルの行ごとに生成されます。
  • DISABLE_SHAPSHAP 説明は生成されません。 これがデフォルトです。
Boolean
batch_size
(オプション)

1 回に処理されるトレーニング サンプルの数。 デフォルト値は 4 です。

バッチ サイズを大きくすると、ツールのパフォーマンスが向上しますが、バッチ サイズが増加するにつれて、使用されるメモリ量が増加します。 メモリ不足エラーが発生した場合は、より小さなバッチ サイズを使用してください。

Double

派生した出力

名前説明データ タイプ
updated_table

各クラスの信頼値とともに入力データから生成された分類およびラベル付与済みテキストを含む、出力ポイント、ライン、ポリゴン フィーチャクラスまたはテーブル。

Table View; Feature Layer

コードのサンプル

ClassifyTextUsingDeepLearning (スタンドアロンのスクリプト)

次の例は、ClassifyTextUsingDeepLearning 関数を使用する方法を示しています。

# Name: ClassifyText.py
# Description: Classify text into multiple classes
#
# Requirements: ArcGIS Pro Advanced license

# Import system modules
import arcpy

arcpy.env.workspace = "C:/textanalysisexamples/data"

# Set local variables
in_table = "TextClassifierData"
pretrained_model_path_emd = "c:\\classifydata\\TextClassifier.emd"

# Run Classify Text Using Deep Learning
arcpy.geoai.ClassifyTextUsingDeepLearning(
    in_table, "Address", pretrained_model_path_emd)

ライセンス情報

  • Basic: No
  • Standard: No
  • Advanced: Yes

関連トピック