データセットのラベル分布を確認するには collections の Counter が便利

2022/05/20に公開

わざわざメモするほどでもないかもしれないが、有用な気付きだったのでメモ。

何らかのデータセットのラベルの分布を知りたいとき、まずそのデータセットのラベル全体から成るリストを作って、それを collections.Counter(ラベルのリスト) とすれば、すぐに確認できる。


例として、Yelp データセット のラベル分布を確認する。

import collections
from datasets import load_dataset
dataset = load_dataset("yelp_review_full")

print(collections.Counter(dataset["train"]["label"]))
# Counter({4: 130000, 1: 130000, 3: 130000, 0: 130000, 2: 130000})
print(collections.Counter(dataset["test"]["label"]))
# Counter({0: 10000, 2: 10000, 1: 10000, 3: 10000, 4: 10000})

このように、Yelp の場合は train でも test でもラベル 0 から 4 までが均等に格納されていることがわかる。

Discussion