paddleNLP情報抽出モデル戦闘(エンティティ認識、関係性抽出)

固有表現認識

NER 固有表現認識は文内で必要な実体を識別します。
ラベル付けツールは brat
ラベル付け方法を使用します。BIO
トレーニング フレームワークは paddleNLP を使用します。

学習アルゴリズムには、
Baidu がリリースした事前学習モデルである ernie ERINE (Enhanced Representation through Knowledge Integration) を使用します。BERT の単語レベルの MASK を 3 レベルのナレッジ マスキングに拡張することで、モデルがより多くの言語知識を学習できるようになり、複数のタスクの実際的な効果において BERT を上回ります。
ERNIE は、言語知識を単語レベル (Basic-Level)、フレーズ レベル (Phrase-Level)、およびエンティティ レベル (Entity-Level) の 3 つのカテゴリに分類します。これら 3 つのレベルのオブジェクトに対してマスキング (オクルージョン) を実行することで、モデルは言語知識のうちの文法知識と意味知識を学習できます。たとえば、トレーニング文が [長沙は湖南省の首都です] であり、地名エンティティ [長沙] がランダムにオクルージョンされていると仮定すると、モデルは [長沙] と [湖南省] の関係を一定まで学習できます。つまり、モデルはより多くの複数の意味論的な知識を学習できます。

1.具体的な手順は以下の通りです

(1) カスタムデータの読み込み
1. 各学習データには、テキスト文とそのテキスト内の各漢字のラベルが含まれています。次に、単語の分割や語彙 ID のマッピングなど、入力文に対してデータ処理を実行する必要もあります。
(2) データ処理
1. 事前学習モデル ERNIE は中国語データを単語単位で処理します。事前トレーニングされたモデルには、対応するトークナイザーが組み込まれています。対応するトークナイザーをロードするために使用するモデルの名前を指定します。
2. トークナイザーは、元の入力テキストをモデルモデルが受け入れ可能な入力データ形式に変換するために使用されます。
ここに画像の説明を挿入
(3) モデルのトレーニングと評価
モデルのトレーニングのプロセスは通常、次の手順で行われます。

1. データローダーからバッチ データを取得します。
2. バッチ データをフォワード計算のためにモデルにフィードします
。 3. フォワード計算の結果を損失関数に渡し、損失を計算します。順計算結果を評価メソッドに渡し、評価指数を計算します。
4. 損失が逆に返されて、勾配が更新されます。上記の手順を繰り返します。
エポックがトレーニングされるたびに、プログラムは現在のモデルトレーニングの効果を評価するために一度評価されます
(4) モデル
予測 トレーニング後に保存されたモデルは予測に使用できます。ワンクリック予測を行うには、predict() 関数を呼び出します。
モデル出力テスト結果

情報抽出

情報抽出は、非構造化自然言語テキストからエンティティ、関係、イベントなどの構造化知識を抽出することを目的としています。特定の自然言語文について、スキーマ制約を満たすすべての SPO トリプルが、事前定義されたスキーマ セットに従って抽出されます。
つづく。

おすすめ

転載: blog.csdn.net/dream_home8407/article/details/128231568