🚀 Qra - ポーランド語適応型大規模言語モデル
Qraは、国立情報処理研究所(OPI)とグダニスク工科大学(PG)が共同で開発した、ポーランド語に適応した大規模言語モデル(LLM)のシリーズです。これらのモデルは、PGのTASKコンピューティングセンターのインフラを使用し、21枚のNvidia A100カードで訓練されました。公開されているQraモデルのバージョンは、英語のLlama 2のチェックポイントの重みで初期化され、その後、慎重にクリーニング、フィルタリング、重複排除されたポーランド語テキストのコーパス(約900億トークン)でさらに訓練されました。元のコーパスは主にウェブデータで構成され、CommonCrawlのダンプやMADLAD - 400コーパスが含まれています。
⚠️ 重要注意
Qraは、大規模なテキストコーパスで因果言語モデリングの目的で訓練された基礎言語モデルです。したがって、会話や命令追従の目的には適しておらず、このようなタスクに使用するにはさらに微調整する必要があります。
前処理パイプライン
前処理パイプラインには以下のステップが含まれています:
- テキストの正規化とURLの削除。
- 500文字未満のドキュメントの削除。
- 一連のヒューリスティックルールを使用したドキュメント内の文のクリーニング。主に非アルファベット文字で構成される文や、ポーランド語および英語以外の言語の文は削除されます。
- 数千のドキュメントを手動で高品質または低品質とラベル付けしたセットで訓練された品質分類器を使用したドキュメントのフィルタリング。分類器の入力は、ポーランド語の単語の割合、平均単語と文の長さ、単語と文字の重複数、テキスト内の異なる文字クラスの割合などのいくつかの統計情報(「品質信号」)のセットです。
- 軽量なKenLM言語モデルで計算されたパープレキシティ値に基づくドキュメントのフィルタリング。
- 訓練された分類器を使用してドキュメントを18のトピックドメインのいずれかに割り当てる。
- 各トピックドメイン内でMinHashアルゴリズムを使用したファジー重複排除。
ドキュメントの最終的なトピック別の分布は、以下のグラフに示されています:
📚 詳細ドキュメント
モデル詳細
モデルは、4096トークンのシーケンスで1エポック訓練されました。訓練中には、以下のような多くの最新の最適化手法が使用されました:
以下は、Qra - 1Bモデルの概要です:
属性 |
詳細 |
適応元 |
TinyLlama-1.1B |
ライセンス |
Apache 2.0 |
バッチサイズ |
1344 |
コンテキスト長 |
4096 |
学習率 |
2e - 5 |
学習率減衰 |
コサイン |
ウォームアップステップ |
0 |
訓練時間 |
2日 |
評価
このセクションでは、Qraモデルのポーランド語テキストに対するパープレキシティを、他のポーランド語および英語のLLMと比較します。
異なるテキスト分割間のパープレキシティ値は直接比較できないことに注意してください。したがって、Qraと元のLlama / TinyLlamaのように同じトークナイザーを使用するモデル間の比較に基づいてのみ結論を導くことができます。
PolEval - 2018
2018年に、PolEvalコンペティションには言語モデリングタスクが含まれており、合計2000万を超えるポーランド語の文からなる訓練セットとテストセットが提供されました。私たちは、テストセットの最初の10,000文を使用して、最新のニューラル言語モデルを評価しました。パープレキシティを計算するために、HuggingFace Evaluateライブラリのスクリプトを使用しました。
モデル |
パープレキシティ |
英語モデル |
|
meta - llama/Llama - 2 - 7b - hf |
24.3 |
meta - llama/Llama - 2 - 13b - hf |
21.4 |
mistralai/Mistral - 7B - v0.1 |
21.4 |
TinyLlama/TinyLlama - 1.1B |
40.4 |
ポーランド語モデル |
|
sdadas/polish - gpt2 - small |
134.4 |
sdadas/polish - gpt2 - medium |
100.8 |
sdadas/polish - gpt2 - large |
93.2 |
sdadas/polish - gpt2 - xl |
94.1 |
Azurro/APT3 - 275M - Base |
129.8 |
Azurro/APT3 - 500M - Base |
153.1 |
Azurro/APT3 - 1B - Base |
106.8 |
eryk - mazus/polka - 1.1b |
18.1 |
szymonrucinski/Curie - 7B - v1 |
13.5 |
Qraモデル |
|
OPI - PG/Qra - 1b |
14.7 |
OPI - PG/Qra - 7b |
11.3 |
OPI - PG/Qra - 13b |
10.5 |
長文書 (2024)
現在、LLMは数千のトークンのコンテキストをサポートしています。その実用的なアプリケーションでは、通常、長文書の処理も伴います。したがって、PolEval - 2018のような文ベースのデータセットでパープレキシティを評価することは意味がない場合があります。さらに、PolEvalコーパスは過去数年間インターネット上で公開されているため、一部のモデルの訓練セットがこのデータに汚染されている可能性があります。このため、私たちは2024年にのみ公開された長い論文からなる新しいコレクションを用意しました。これにより、訓練時にモデルが利用できなかった新しい知識に対するモデルのパープレキシティをより信頼性高くテストすることができます。コーパスは、数百から約20,000トークンの範囲の5,000のドキュメントで構成されています。セットの半分は2024年2月のポーランドのニュースポータルの報道テキストで、残りの半分は2024年1月以降に公開された科学論文です。ほとんどのドキュメントは、評価対象のモデルのコンテキストサイズを超えています。これらのドキュメントのパープレキシティを計算するために、この例に従って、モデルのコンテキスト長と等しいサイズのチャンクに512トークンのストライドで分割しました。
モデル |
コンテキスト |
パープレキシティ |
英語モデル |
|
|
meta - llama/Llama - 2 - 7b - hf |
4096 |
5.9 |
meta - llama/Llama - 2 - 13b - hf |
4096 |
5.3 |
mistralai/Mistral - 7B - v0.1 |
4096 |
4.9 |
TinyLlama/TinyLlama - 1.1B |
2048 |
9.6 |
ポーランド語モデル |
|
|
sdadas/polish - gpt2 - small |
2048 |
27.3 |
sdadas/polish - gpt2 - medium |
2048 |
20.3 |
sdadas/polish - gpt2 - large |
1536 |
18.0 |
sdadas/polish - gpt2 - xl |
1536 |
16.6 |
Azurro/APT3 - 275M - Base |
2048 |
77.0 |
Azurro/APT3 - 500M - Base |
2048 |
50.5 |
Azurro/APT3 - 1B - Base |
2048 |
19.1 |
eryk - mazus/polka - 1.1b |
2048 |
6.9 |
szymonrucinski/Curie - 7B - v1 |
4096 |
4.8 |
Qraモデル |
|
|
OPI - PG/Qra - 1b |
4096 |
6.1 |
OPI - PG/Qra - 7b |
4096 |
4.5 |
OPI - PG/Qra - 13b |
4096 |
4.2 |
📄 ライセンス
このプロジェクトは、Apache 2.0ライセンスの下で公開されています。