コーディングや数学では優秀だが、日常的な質問には適当に答えるモデルに遭遇したことはありますか?
トレーニング中に特定の能力を向上させるには、その種のデータを探す必要があることは周知の事実です。
しかし多くのデータセットは直接のインターネット検索では見つかりにくいです。統一されたダウンロードポータルはトレーナーの労力を大幅に節約します。
例えば、当社の中国語DeepSeek-R1蒸留データセットの生データの多くはModelScopeから直接ダウンロードされました。
モデルのファインチューニングは既存のオープンソースデータセットから始めれば、全体のプロセスを迅速に実行できます。
ModelScopeは4万以上のオープンソースデータセットを統合し、検索・プレビュー・フィールド説明・バージョンを提供しています。
ModelScopeはキーワードタグやタスクカテゴリによる検索をサポートしており、中国語の二値テキスト分類データの検索が可能です。
フィルタリング後、興味のあるデータセットを選んで「データプレビュー」をクリックすると、サンプル内容とフィールド説明をオンラインで確認できます。simpleai/HC3-Chineseなど。
どの列に質問、回答、ラベルがあるか、各レコードがテキストか対話かなど、すべて事前に確認できます。
QAデータの場合、人間の回答とモデルの回答が異なるフィールドにある場合があります。タスクに応じてどのフィールドを読み、どう整理するかを決定してから訓練してください。
データセットファイルとバージョンを確認します。データセットは更新される場合があり、使用したバージョンを記録すれば再現性が高まります。
データセットの説明とライセンスも確認する価値があります。ダウンロードしたデータは研究、訓練、商用製品で異なる要件がある場合があります。
ModelScopeはMsDataset.loadインターフェースを提供し、Pythonでデータセットを読み込めます。インストール後、データセットページの指示に従ってください。
DAMO_NLP/jdを例に、デフォルト設定のデータは次のように読みます。
from modelscope.msdatasets import MsDataset
ds = MsDataset.load(
'DAMO_NLP/jd',
trust_remote_code=True,
)
print(ds)
一部のデータセットはソース、ドメイン、用途別にデータを分けて保存しています。一部のみ必要な場合はsubset_nameで指定します。
例えば、HC3-Chineseのbaikeサブセットを読み込みます。
from modelscope.msdatasets import MsDataset
ds = MsDataset.load(
'simpleai/HC3-Chinese',
subset_name='baike',
trust_remote_code=True,
)
print(ds)
データセットを変更する際は、利用可能なサブセットを確認してください。baikeはこのデータセット固有の名前です。
ログイン ディスカッションに参加
サブセットはデータカテゴリを、splitはデータパーティションを選びます。一般的なのはtrain、validation、testです。
baikeサブセットのトレーニングセットのみを読み込むには、パラメータを追加します。
from modelscope.msdatasets import MsDataset
ds = MsDataset.load(
'simpleai/HC3-Chinese',
subset_name='baike',
split='train',
trust_remote_code=True,
)
print(ds[0])

すべてのデータセットが3つのパーティションを提供するわけではありません。トレーニングセットを取得したら、まずサンプルを印刷して確認してください。
データ更新後、同じコードで異なる内容が読み込まれる場合があります。HC3-Chineseのv1バージョンを例に、versionで明示的に指定できます。
from modelscope.msdatasets import MsDataset
ds = MsDataset.load(
'simpleai/HC3-Chinese',
subset_name='baike',
version='v1',
trust_remote_code=True,
)
print(ds)

実際の操作では、データセットページで利用可能なバージョンを確認してください。バージョンが継続的に更新される場合は、使用したデータファイルやチェックサムを保存してください。
まずサンプルをいくつか確認して、null値、文字化け、明らかなエラーがないか確認し、フィールドがコードの要件を満たしているか確認してください。
トレーニングデータとテストデータは分離してください。テストサンプルをトレーニングセットに混ぜると、スコアは良見えしますが新しい問題でのパフォーマンスが判断できません。