本實驗所使用的資料集為 DpgMedia2019: A Dutch News Dataset for Partisanship Inspection 資料集。
它包含各個部分,但我在此存儲庫中使用的主要部分是原始 104K 新聞文章的子集。每篇文章都有一個「黨派」標籤,說明該文章是否有黨派傾向(正確/錯誤)。黨派/無黨派文章數量大致平衡。
該數據集由作者創建,旨在為創建黨派新聞檢測器等做出貢獻。在實驗中使用的 python 程式碼中,會自動下載特定的資料集檔案。
查看 github 和論文,以了解有關資料集及其建構方式的更多資訊。請參閱參考資料以獲取資訊。
筆記 !截至 2023 年 1 月,並非所有文件都在資料集的原始 github 位置中可用。如果您需要原始文件,請從 Kaggle 資料集下載它們。
此儲存庫中使用的訓練和驗證子集可在「資料」資料夾中找到。
在筆記本「Prepare_Train_and_Validation_Datasets.ipynb」中,完整資料集將被分割成用於訓練和驗證的較小子集。
這些檔案位於此儲存庫的「資料」資料夾中。
創建較小資料子集的主要原因是 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 位,並使用 QLoRA 設定進行微調,以最大限度地減少 GPU 記憶體佔用。
LoraConfig 的等級設定為 64,alpha 為 16。
訓練後,PolyLM 1.7B 模型在驗證集上的準確率達到 84.4%,而 OpenLLaMA 7B V2 模型甚至達到 89.5%。
我進行了多次訓練,在不同的情況下,兩個模型的得分與上述值相比最高或低於 0.5%。
微調 GPT-3.5 的程式碼可以在筆記本「Finetune_GPT-3.5.ipynb」中找到。根據訓練和驗證 CSV 檔案建立特定檔案並將其上傳到 OpenAI,用於微調 GPT-3.5 模型。新聞文章被包裝在一個特定的提示中,該提示是為我們希望模型透過微調來學習的分類而設計的。
驗證代碼可在筆記本「Validate_GPT-3.5.ipynb」中找到。對於驗證集中的每筆記錄,新聞文章的文字都包含在提示中,並透過 API 呼叫 OpenAI 以取得聊天完成的回應。回應被轉換為二進位標籤,並使用真實標籤產生最終的分類報告。
經過微調的 OpenAI GPT-3.5 模型在驗證集上的準確率達到 89.4%。
請注意,我使用 OpenAI 進行微調和驗證,而不是 Azure 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)所獲得的分數相當。
(法學碩士) 模型類型 | 驗證準確度 (%) 分數 |
---|---|
PolyLM 1.7B(洛拉:r = 64) | 84.4 |
多語言 DistilBert | 85.6 |
多語言伯特 | 86.3 |
多語言 DeBERTa V3 | 85.8 |
OpenLLaMA 7B V2(洛拉:r = 64) | 89.5 |
GPT-3.5 Turbo 0613(微調) | 90.8 |
GPT-3.5 Turbo 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},
}