
PyTorch ํ๋ ์์ํฌ์ ์ต์ํด์ง๊ธฐ ์ํด์, kaggle dataset์ ์ด์ฉํ pytorch ๋ ธํธ๋ถ์ ๋ฐ๋ผํ๊ณ ์ฃผ์ ํ ํฝ๋ค์ ํ๊ณ ๋ค๊ธฐ๋ก ํ์๋ค.
์๋๋ ํด๋น ๋ ธํธ๋ถ์ ์ ์ฅํ Repository์ด๋ค.
Toxic comment dataset ๊ฐ์
Dataset ์์
comment_text๊ณผ ๋์ํ๋ 6๊ฐ์ toxicity label์ด ํ ์
Toxic ๋ฐ์ดํฐ์
์ ๋ค๋ฃฐ custom Dataset ํด๋์ค์ธ ToxicDataset์ ์์ฑํ๋ค.
torch.utils.data.Dataset์ ์์๋ฐ๊ณ , method๋ฅผ overrideํ๋ค.
Override Methods... ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ Dataset์์ overrideํ methods์ hint ํ์ธPyTorch๋ dataset์ ๋ ๊ฐ์ง ํ์ ์ผ๋ก ์ง์ํ๋ค. (https://pytorch.org/docs/stable/data.html)
ํด๋น Dataset abstract class๋ map-style dataset์ ๊ตฌํํ ๊ฒฝ์ฐ์ ์์๋ฐ๋๋ค.
์ด ํ์
์ dataset์ ๋ฐ์ดํฐ ์ํ์ key๋ก ์ ๊ทผ ๊ฐ๋ฅํ map ํํ๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
dataset[idx]์ ๊ฐ์ด ์ ๊ทผํ์ฌ idx ๋ฒ์งธ ๋ฐ์ดํฐ ํฌ์ธํธ๋ฅผ ์ฝ์ ์ ์๋ค.
์ด ํ์ ์ dataset์ ๊ตฌ์ฑํ๊ธฐ ์ํด์ ๊ตฌํ์ด ํ์ํ method๋ ์๋์ ๊ฐ๋ค.
DataLoader์์ indice ๋๋ keys๋ก ๋จ์ผ ๋ฐ์ดํฐ์ ์ ๊ทผํ๊ฒ ๋๋ค.Toxic comment dataset์ cuustom dataset ๊ตฌํ์ ์ํ ์ฃผ์์ฌํญ์ ๋ค์๊ณผ ๊ฐ๋ค.
comment_text์ ์ด์ ๋์ํ๋ label์ __getitem__์์ ๋ฐํtensor๋ก ๋ณํํ์ฌ instance ๋ด๋ถ ์๋ฃ๊ตฌ์กฐ์ ์ ์งtokenizer ํ์csv ํํ์ ๋ฐ์ดํฐ ์
์ ์์์, pandas.DataFrame์ผ๋ก load ํ์๋ค.

์ดํ DataLoader์์๋ Dataset์ __getitem__ ๋ฉ์๋๋ฅผ ํธ์ถํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด๋ค์ธ๋ค.

์์์ ๋ณธ Toxic comment dataset์์ 0, 1 label ๋ ๋ค ์๋ 7๋ฒ์งธ ๋ฐ์ดํฐ(index: 6)๋ฅผ ์์๋ก ๋ถ๋ฌ์ ์ถ๋ ฅํ๋ค.

DataLoader์์ __len__ ๋ฉ์๋๋ฅผ ํธ์ถํ์ฌ, ๋ฐ์ดํฐ์
์ ์ ์ฒด ํฌ๊ธฐ๋ฅผ ์๊ณ ์ด๋ฅผ ์ด์ฉํ์ฌ batch๋ฅผ ์์ฑํ ์ ์๋ค.