LLM データ処理アルゴリズムは、データサンプルの変換、低品質コンテンツのフィルタリング、重複の削除に役立ちます。ニーズに基づいてアルゴリズムを組み合わせることで、LLM トレーニング用の高品質なデータを生成できます。このトピックでは、オープンソースの RedPajama arXiv データセットからの小規模なサンプルを使用して、PAI の LLM データ処理コンポーネントが arXiv データをクリーニングおよび処理する方法を説明します。
データセット
Designer の「LLM データ処理 - arXiv (論文データ)」プリセットテンプレートのデータセットは、オープンソースの RedPajama プロジェクトのソースデータから抽出された 5,000 サンプルで構成されています。
パイプラインの作成と実行
Designer ページに移動します。
PAI コンソールにログインします。
左上の隅でリージョンを選択します。
左側のナビゲーションウィンドウで、[ワークスペース] をクリックし、次にワークスペース名をクリックして開きます。
左側のナビゲーションウィンドウで、Model Training > Visualized Modeling (Designer) を選択して Designer ページを開きます。
パイプラインを作成します。
Preset Templates タブで、[ビジネスエリア] > [LLM] を選択し、[LLM データ処理-arXiv (論文データ)] テンプレートカードの Create をクリックします。

パイプラインパラメーターを設定するか、デフォルト設定のままにして、Confirm をクリックします。
パイプラインリストで、新しいパイプラインを選択し、Open をクリックします。
パイプラインの詳細:

パイプラインの主要なアルゴリズムコンポーネント:
LLM-Sensitive Information Mask (MaxCompute)-1
textフィールド内の機密情報をマスクします。例:メールアドレスを
[EMAIL]に置き換えます。電話番号または携帯電話番号を
[TELEPHONE]または[MOBILEPHONE]に置き換えます。ID カード番号を
[IDNUM]に置き換えます。
LLM-Special Content Removal (MaxCompute)-1
textフィールドから URL を削除します。LLM-Text Normalization (MaxCompute)-1
Unicode を使用して
textフィールドのテキストを正規化し、繁体字中国語を簡体字中国語に変換します。LLM-Count Filter (MaxCompute)-1
textフィールドから、指定された英数字の数または比率を満たさないサンプルを削除します。arXiv データセットのほとんどの文字は英数字であるため、このコンポーネントはノイズデータを効果的に削除できます。LLM-Length Filter (MaxCompute)-1
textフィールドの平均行長に基づいてサンプルをフィルターします。平均長は、サンプルを改行文字\nで分割して計算されます。LLM-N-Gram Repetition Filter (MaxCompute)-1
textフィールド内の文字レベルの N-gram 繰り返し率に基づいてサンプルをフィルターします。このプロセスでは、サイズ N のスライドウィンドウを使用して文字フラグメントのシーケンスを作成します。各フラグメントはグラムです。コンポーネントは各グラムの出現回数をカウントします。繰り返し率は、「複数回出現するグラムの総頻度 / 全グラムの総頻度」の比率です。LLM-Sensitive Words Filter (MaxCompute)-1
textフィールドから、プリセットされた禁止用語を含むサンプルをフィルターします。LLM-Length Filter (MaxCompute)-2
textフィールドの最大行長に基づいてサンプルをフィルターします。最大行長は、サンプルを改行文字\nで分割して決定されます。LLM-Perplexity Filter (MaxCompute)-1
textフィールド内のテキストのパープレキシティを計算し、指定されたパープレキシティのしきい値に基づいてサンプルをフィルターします。LLM-Special Characters Ratio Filter (MaxCompute)-1
textフィールドから、指定された特殊文字の比率を満たさないサンプルを削除します。LLM-Length Filter (MaxCompute)-3
textフィールドの長さに応じてサンプルをフィルターします。LLM-Tokenization (MaxCompute)-1
textフィールドのテキストをトークン化し、結果を新しい列に保存します。LLM-Length Filter (MaxCompute)-4
「text」フィールドのサンプルは、デリミタ
" "(スペース) を使用して単語のリストに分割され、その結果のリストの長さ (単語数) に基づいてフィルターされます。LLM-N-Gram Repetition Filter (MaxCompute)-2
textフィールド内の単語レベルの N-gram 繰り返し率に基づいてサンプルをフィルターします。計算前にすべての単語が小文字に変換されます。このプロセスでは、サイズ N のスライドウィンドウを使用して単語フラグメントのシーケンスを作成します。各フラグメントはグラムです。コンポーネントは各グラムの出現回数をカウントします。繰り返し率は、「複数回出現するグラムの総頻度 / 全グラムの総頻度」の比率です。LLM-MinHash Deduplication (MaxCompute)-1
MinHash アルゴリズムを使用して、重複およびほぼ重複したサンプルを削除します。
パイプラインを実行します。
パイプラインの実行が完了したら、[Write To Data Table-1] コンポーネントを右クリックし、View Data > Output を選択して処理済みのサンプルを表示します。

関連リソース
LLM アルゴリズムコンポーネントの詳細については、「LLM データ処理 (MaxCompute)」をご参照ください。