この実験で使用されるデータセットは、DpgMedia2019: 党派検出用のオランダのニュース データセットです。
これにはさまざまな部分が含まれていますが、このリポジトリで使用する主要な部分は、元の 104K ニュース記事のサブセットです。各記事には、その記事が党派的かどうか (True/False) を示す「党派」というラベルがあります。党派的な記事と無党派的な記事の量はほぼバランスが取れています。
このデータセットは、たとえば党派ニュース検出器の作成に貢献することを目的として、著者によって作成されました。実験で使用された Python コードでは、特定のデータセット ファイルが自動的にダウンロードされます。
データセットとその構築方法の詳細については、github と論文を確認してください。詳細については、「参考文献」を参照してください。
注記 !! 2023 年 1 月の時点では、データセットの元の github の場所ですべてのファイルが利用できるわけではありません。オリジナルのファイルが必要な場合は、Kaggle データセットからダウンロードしてください。
このリポジトリで使用されるトレーニングと検証のサブセットは、「data」フォルダーで入手できます。
ノートブック「Prepare_Train_and_Validation_Datasets.ipynb」では、完全なデータセットがトレーニングと検証に使用される小さなサブセットに分割されます。
これらのファイルは、このリポジトリの「data」フォルダにあります。
データのより小さなサブセットを作成する主な理由は、GPT (または他の LLM) モデルで微調整を実行するのに必要なサンプルは数千個だけであるためです。データセットが小さいほど、トークンも少なくなり、クレジット カードの請求額も少なくなります ;-)
より小さいサブセットのサンプル量は次のとおりです。
次の通常の Transformer モデルは、ノートブック「Transformer_Model_Training_And_Validation.ipynb」で、より小さなトレーニング データ サブセットと検証データ サブセットでトレーニングおよび検証されています。
PolyLM 1.7B および OpenLLaMA 7B V2 Open LLM モデルは、両方ともオランダ語も含まれる多言語データセットで事前トレーニングされました。
ノートブック「Open_LLM_Training_And_Validation.ipynb」では、Open LLM モデルが 4 ビットに量子化され、GPU メモリのフットプリントを最小限に抑えるために QLoRA セットアップで微調整されています。
LoraConfig はランク 64、アルファ 16 に設定されています。
トレーニング後、PolyLM 1.7B モデルは検証セットで 84.4% の精度を達成し、OpenLLaMA 7B V2 モデルはさらに 89.5% を達成しました。
複数のトレーニングを実行しましたが、さまざまな場面で、両方のモデルのスコアが上記の値と比較して最大 0.5% 高くなったり低くなったりしました。
GPT-3.5 を微調整するためのコードは、ノートブック「Finetune_GPT-3.5.ipynb」にあります。トレーニングと検証の CSV ファイルに基づいて、GPT-3.5 モデルの微調整に使用される特定のファイルが作成され、OpenAI にアップロードされます。ニュース記事は、微調整を通じてモデルに学習させたい分類用に設計された特定のプロンプトにラップされています。
検証コードは、ノートブック「Validate_GPT-3.5.ipynb」で入手できます。検証セット内の各レコードについて、ニュース記事のテキストがプロンプトにラップされ、API を通じて OpenAI が呼び出され、チャット完了からの応答が取得されます。応答はバイナリ ラベルに変換され、グラウンド トゥルース ラベルを使用して最終的な分類レポートが生成されます。
微調整された OpenAI GPT-3.5 モデルは、検証セットで 89.4% の精度を達成しました。
微調整と検証には Azure OpenAI ではなく OpenAI を使用したことに注意してください。
このノートブックの最新バージョン (2023 年 12 月 5 日) では、次の更新を行いました。
3 つの Transformer モデルと GPT-3.5 モデルの検証セットで達成された精度スコアを以下に示します。
GPT-3.5 モデルは、微調整後に高い精度スコアを達成します。
3 つの Transformer モデルのパフォーマンスは少し遅れています。より多くのデータ サンプルを使用してトレーニングすることで利益が得られることは明らかです。
Open LLM PolyLM は最も低いスコアを達成します。ただし、OpenLLaMA 7B V2 モデルは 89.5% という驚くべきスコアを達成しており、これは GPT-3.5 Turbo 微調整モデル (0613 および 1106) が達成するスコアに匹敵します。
(LLM) モデルタイプ | 検証精度 (%) スコア |
---|---|
PolyLM 1.7B (ロラ: r = 64) | 84.4 |
多言語対応の DitilBert | 85.6 |
多言語を話すバート | 86.3 |
マルチリンクォル DeBERTa V3 | 85.8 |
OpenLLaMA 7B V2 (ロラ: r = 64) | 89.5 |
GPT-3.5 ターボ 0613 (微調整) | 90.8 |
GPT-3.5 ターボ 1106 (微調整) | 89.4 |
GPT-3.5 Turbo 1106 (コンテキスト内学習) | 56.0 |
!!マルチリンクォル DeBERTa V3 (完全なデータセット) | 95.2 |
@misc{1908.02322,
Author = {Chia-Lun Yeh and Babak Loni and Mariëlle Hendriks and Henrike Reinhardt and Anne Schuth},
Title = {DpgMedia2019: A Dutch News Dataset for Partisanship Detection},
Year = {2019},
Eprint = {arXiv:1908.02322},
}