๐ค datasets ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ Image ๊ธฐ๋ฅ ํ์ ์ ์ถ๊ฐํ์ฌ ๋๊ท๋ชจ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ์ ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ ์ผ๋ก ๋ก๋ํ๊ณ faiss ์ธ๋ฑ์ค๋ก ์ด๋ฏธ์ง ๊ฒ์ ๊ธฐ๋ฅ ๊ตฌํ
Image search with ๐ค datasets
AI ์์ฝ
Context
๐ค datasets ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด๊ธฐ์ ํ ์คํธ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ค์ ์ ๋์์ผ๋, ์ค๋์ค ๋ฐ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ๋ํ ์ง์ ์๊ตฌ๊ฐ ์ฆ๊ฐํ๋ค. British Library์ ๋์งํธํ๋ ๋์ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ (์ฝ 10,000๊ฐ ์ํ)์ OCR ๊ธฐ๋ฐ ์ถ์ถ๋ก ๋ฉํ๋ฐ์ดํฐ๊ฐ ์ ํ๋์ด ๊ธฐ์กด ํ๊ทธ ๊ธฐ๋ฐ ๊ฒ์๋ณด๋ค ํ๋ถํ ๊ฒ์ ๊ธฐ๋ฅ์ด ํ์ํ๋ค.
Technical Solution
- ImageFolder ๋ก๋๋ฅผ ํตํ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ๋ก๋: ํด๋ ๊ตฌ์กฐ ๊ธฐ๋ฐ ๋ฐ์ดํฐ์ ์ ์ง์ Dataset์ผ๋ก ๋ณํํ์ฌ image, label ๋ ๊ฐ์ง feature ํ์ ์์ฑ
- Image feature ํ์ ์ค์ : PIL.Image.Image ๊ฐ์ฒด๋ก ๋์ฝ๋ฉํ๊ฑฐ๋ ๋ฐ์ดํธ ๊ธฐ๋ฐ์ผ๋ก ์ฒ๋ฆฌํ๋ ๋ ๊ฐ์ง ๋ชจ๋ ์ง์
- faiss ์ธ๋ฑ์ค ํตํฉ: ๋ฐ์ดํฐ์ ์ faiss "efficient similarity search and clustering of dense vectors" ์ธ๋ฑ์ค๋ฅผ ์ถ๊ฐํ์ฌ ๋ฒกํฐ ๊ธฐ๋ฐ ๊ฒ์ ๊ฐ๋ฅ
- sentence_transformers๋ฅผ ์ด์ฉํ ์๋ฒ ๋ฉ: ์ด๋ฏธ์ง ๋ฐ ํ ์คํธ๋ฅผ ๋์ผ ๋ฒกํฐ ๊ณต๊ฐ์์ ์ธ์ฝ๋ฉํ์ฌ ํ ์คํธ-์ด๋ฏธ์ง ๊ฒ์ ๊ตฌํ
- push_to_hub๋ฅผ ํตํ ๋ฐ์ดํฐ ์ด๋์ฑ: ๋ก์ปฌ ํ๊ฒฝ์์ ์ฒ๋ฆฌํ ๋ฐ์ดํฐ์ ์ ํ๋ธ์ ์ ์ฅํ์ฌ ๋ค๋ฅธ ๋จธ์ /์ธ์ ๊ฐ ๋ฐ์ดํฐ ๊ณต์
Key Takeaway
์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ์ faiss ์ธ๋ฑ์ค๋ฅผ ๊ฒฐํฉํ ๋๋ ์ฌ์ ์ ๋ชจ๋ธ์ ๋ฐฐํฌ ๊ฐ๋ฅ์ฑ๊ณผ ์ ๋ ฅ ๋ฐ์ดํฐ์ ์ค๋ฆฌ์ ํจ์(์๋ฏผ์ง ์๋ ํํ, ํธํฅ๋ ์ด๋ฏธ์ง)๋ฅผ ์ถฉ๋ถํ ๊ฒํ ํด์ผ ํ๋ค. ํนํ CLIP ๊ฐ์ ๋ฉํฐ๋ชจ๋ฌ ๋ชจ๋ธ์ ๊ฒฝ์ฐ model card์ out-of-scope ์ฌํญ์ ๋ฐ๋์ ํ์ธํ๊ณ ๋๋ฉ์ธ๋ณ ์ฑ๋ฅ ํ๊ฐ ์์ด ํ๋ก๋์ ๋ฐฐํฌ๋ฅผ ํผํด์ผ ํ๋ค.
์ค์ฒ ํฌ์ธํธ
์ด๋ฏธ์ง ๊ธฐ๋ฐ ๊ฒ์ ๊ธฐ๋ฅ์ด ํ์ํ ํ์์ ๐ค datasets์ ImageFolder ๋ก๋์ faiss ์ธ๋ฑ์ค๋ฅผ ์กฐํฉํ๋ฉด, ํด๋ ๊ธฐ๋ฐ ์ด๋ฏธ์ง ๋ฐ์ดํฐ์ ์ ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ ์ผ๋ก ๋ก๋ํ๊ณ ํ ์คํธ-์ด๋ฏธ์ง ํฌ๋ก์ค๋ชจ๋ฌ ๊ฒ์์ ๊ตฌํํ ์ ์๋ค. ๋จ, CLIP ๊ฐ์ ๋ฉํฐ๋ชจ๋ฌ ๋ชจ๋ธ ์ฌ์ฉ ์ model card์ ๋ฐฐํฌ ์ ํ์ฌํญ์ ํ์ธํ๊ณ ํน์ ๋๋ฉ์ธ์ ๋ํด ์ฑ๋ฅ ๋ฐ ํธํฅ์ฑ์ ๋จผ์ ๊ฒ์ฆํด์ผ ํ๋ค.