Week 13-14 ํ์ต ์ ๋ฆฌ
Data-centric AI์ DMOPs: ์ข์ ๋ฐ์ดํฐ๊ฐ AI ์ฑ๋ฅ์ ํต์ฌ์ด๋ค
AI ์์คํ
์ ๋ชจ๋ธ(์๊ณ ๋ฆฌ์ฆ)๊ณผ ๋ฐ์ดํฐ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์ ํต์ ์ธ AI ๊ต์ก์ด๋ ์ฐ๊ตฌ์์๋ ๊ณ ์ ๋ ๋ฐ์ดํฐ์
๊ณผ ํ๊ฐ ๋ฐฉ์์ ๋ฐํ์ผ๋ก ๋ชจ๋ธ์ ์ฑ๋ฅ์ ํฅ์์ํค๋ ๋ฐ ์ด์ ์ ๋ง์ถฅ๋๋ค. ๊ทธ๋ฌ๋ ์ค์ ํ์
์์๋ "์์์ฆ ๋ฐ์ดํฐ ์์ง ์๋ํ"์ ๊ฐ์ด ์๊ตฌ์ฌํญ๋ง ์ฃผ์ด์ง๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ผ๋ฉฐ, ์ ์ฒด AI ๊ฐ๋ฐ ์
๋ฌด ์ค ์ค์ ์๋น์ค์ ์ ์ฉ๋๋ ๋ถ๋ถ์ ๋ฐ์ดํฐ์
์ค๋น์ ์ ์ ์ ํฐ ๋น์ค(~80%)์ ์ฐจ์งํฉ๋๋ค.
์ด๋ฌํ ๋งฅ๋ฝ์์ Data-centric AI๋ ์ข์ ํ์ง์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๊ณ ๊ด๋ฆฌํ๋ ๊ฒ์ด AI ์ฑ๋ฅ ํฅ์์ ๊ฒฐ์ ์ ์ธ ์์ธ์
๋๋ค.
1. Data-centric AI์ ์ค์์ฑ
-
๋ชจ๋ธ vs. ๋ฐ์ดํฐ:
์ฐ๊ตฌ์์๋ ๋ชจ๋ธ๋ง์ด ์ฃผ๋ ๊ด์ฌ์ฌ์ผ ์ ์์ผ๋, ์ค์ ์๋น์ค์์๋ ๋ฐ์ดํฐ ์ค๋น์ ์ ์ ๊ฐ ๋ชจ๋ธ ๋ณ๊ฒฝ๋ณด๋ค ํจ์ฌ ํฐ ๋น์ฉ๊ณผ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. -
์๋น์ค ์ถ์ ์ดํ:
์ผ๋จ ๋ชจ๋ธ์ด ๋ฐฐํฌ๋๋ฉด, ๋ชจ๋ธ ์์ฒด๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐ ๋๋ ๋น์ฉ์ด ๋งค์ฐ ์ปค์ง๋ฏ๋ก, ์ฑ๋ฅ ๊ฐ์ ์ ์ฃผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ ํ๊ฑฐ๋ ์ถ๊ฐํ๋ ๋ฐฉํฅ์ผ๋ก ์งํ๋ฉ๋๋ค.
๋ฐ๋ผ์ AI ์์คํ ์ ์ฑ๋ฅ์ ๊ทน๋ํํ๋ ค๋ฉด, ๋์ ํ์ง์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ ๊ฒ์ด ํ์์ ์ ๋๋ค.
2. DMOPs (Data Management OPerations & Recipes)
DMOPs๋ ์์ง์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๊ธฐ ์ํ ๋ฐฉ๋ฒ๋ก , ๋๊ตฌ, ํ๋ ์์ํฌ๋ฅผ ํฌ๊ดํ๋ ๊ฐ๋ ์ ๋๋ค. DMOPs์ ์ฃผ์ ๊ตฌ์ฑ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- Data Annotation Tool:
๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฃผ์ ์ฒ๋ฆฌํ ์ ์๋ ๋๊ตฌ - Data Software Tool:
๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ ๋ฐ ์ ์ , ๋ถ์์ ๋์์ ์ฃผ๋ ์ํํธ์จ์ด - Data Labeling Tool:
๋ฐ์ดํฐ์ ์ฌ๋ฐ๋ฅธ ๋ผ๋ฒจ์ ๋ถ์ฌํ๊ธฐ ์ํ ๋๊ตฌ - Crowd Sourcing:
์ธ์ ์ด๋์๋ ๋๊ตฌ๋ ์จ๋ผ์ธ ํ๋ซํผ์ ํตํด ๋ฐ์ดํฐ ๋ผ๋ฒจ๋ง ์์ ์ ์ฐธ์ฌํ ์ ์๋๋ก ํ๋ ๋ฐฉ์
์ด์ ๊ฐ์ DMOPs ์ ๊ทผ๋ฒ์ ํตํด, ์ข์ ๋ฐ์ดํฐ๋ฅผ ๋ง๋๋ ์์ ์ ์ฒด๊ณ์ ์ด๊ณ ํจ์จ์ ์ผ๋ก ์ํํ ์ ์์ต๋๋ค.
3. ์ข์ ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค๊ธฐ ์ํ ๋ผ๋ฒจ๋ง ๊ฐ์ด๋
์ข์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ ๊ฒ์ ์ฝ์ง ์์ ๋ฌธ์ ์ ๋๋ค. ๋ฐ์ดํฐ ์์ง๋์ด ์ถฉ๋ถํ์ง ์๊ฑฐ๋, ๋ผ๋ฒจ๋ง ์์ ์ ๋ช ํํ ์ ๋ต์ด ์๊ณ , ๋น์ฉ๋ ๋ง์ด ์์๋๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด์ ๋ฐ๋ผ, ์ผ๊ด๋ ๊ณ ํ์ง ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค๊ธฐ ์ํด ๋ช ํํ ๋ผ๋ฒจ๋ง ๊ฐ์ด๋๋ฅผ ์์ฑํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
๋ผ๋ฒจ๋ง ๊ฐ์ด๋๋ ๋ค์๊ณผ ๊ฐ์ ์์๋ฅผ ํฌํจํด์ผ ํฉ๋๋ค.
-
์ผ๊ด์ฑ:
๋ชจ๋ ๋ฐ์ดํฐ์ ๋ํด ๋์ผํ ๊ธฐ์ค๊ณผ ์ ์ฐจ๋ก ๋ผ๋ฒจ๋งํ์ฌ, ๋ชจ๋ธ์ด ํผ๋ ์์ด ํ์ตํ ์ ์๋๋ก ํฉ๋๋ค. -
ํน์ด ์ผ์ด์ค ํฌํจ:
์ผ๋ฐ์ ์ธ ์ฌ๋ก๋ฟ ์๋๋ผ, ์์ธ์ ์ธ ์ผ์ด์ค๋ค๋ ํฌํจํ์ฌ ๋ชจ๋ธ์ด ๋ค์ํ ์ํฉ์ ์ ๋์ํ ์ ์๋๋ก ํฉ๋๋ค. -
High Quality:
๋ฐ์ดํฐ ์์ฒด์ ํ์ง์ด ๋์์ผ ํ๋ฉฐ, ๋ ธ์ด์ฆ๋ ์ค๋ฅ๊ฐ ์ต์ํ๋์ด์ผ ํฉ๋๋ค. -
๊ท ํ ์กํ ๋ถํฌ:
๋ฐ์ดํฐ๊ฐ ํน์ ํด๋์ค๋ ํน์ฑ์ ์น์ฐ์น์ง ์๋๋ก ๊ณจ๊ณ ๋ฃจ ๋ถํฌ๋์ด ์์ด์ผ ํฉ๋๋ค. ํธํฅ๋ ๋ฐ์ดํฐ๋ ๋ชจ๋ธ์ ์ผ๋ฐํ ๋ฅ๋ ฅ์ ์ ํ์ํฌ ์ ์์ต๋๋ค.
๊ฒฐ๋ก
์ค์ AI ์๋น์ค ๊ฐ๋ฐ์์๋ ๋ชจ๋ธ๋ง๋ณด๋ค ๋ฐ์ดํฐ ์ค๋น์ ์ ์ ๊ฐ ํจ์ฌ ํฐ ๋น์ค์ ์ฐจ์งํฉ๋๋ค. ์ข์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๊ณ , ์ด๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํ DMOPs์ ๋ช ํํ ๋ผ๋ฒจ๋ง ๊ฐ์ด๋๋ฅผ ํตํด, ๋ชจ๋ธ ์ฑ๋ฅ์ ์์ ์ ์ผ๋ก ๊ฐ์ ํ ์ ์์ต๋๋ค. Data-centric AI ์ ๊ทผ๋ฒ์ AI์ ์ฑ๋ฅ ํฅ์์ ์ํ ํต์ฌ ์ ๋ต์ด๋ฉฐ, ์ฑ๊ณต์ ์ธ ์๋น์ค ์ด์์ ํ์ ์์์ ๋๋ค.
OCR๊ณผ ์ต์ ๊ธฐ์ : ์ด๋ฏธ์ง์์ ํ ์คํธ๋ฅผ ์ฝ์ด๋ด๋ ํ์
OCR (Optical Character Recognition) ์ ์ด๋ฏธ์ง ๋ด์ ๊ธ์๋ฅผ ์ธ์ํ์ฌ ํ ์คํธ๋ก ๋ณํํ๋ ๊ธฐ์ ์ ๋๋ค. ๋จ์ํ ์ข ์ด์ ์ ํ ๊ธ์๋ฅผ ์ฝ๋ ๊ฒ์ ๋์ด, ๊ธธ๊ฑฐ๋ฆฌ ๊ฐํ์ด๋ ๋ค์ํ ์์ฐ ํ๊ฒฝ์์์ ํ ์คํธ๋ ์ธ์ํ ์ ์๋ STR (Scene Text Recognition) ์ ๋ฐ์ ์ผ๋ก, OCR์ ์ค์ํ์ ํญ๋๊ฒ ์ ์ฉ๋๊ณ ์์ต๋๋ค.
1. OCR์ ํต์ฌ ๊ณผ์
OCR์ ๋จ์ํ ๊ฐ์ฒด ๊ฒ์ถ(object detection)๊ณผ ๋ฌ๋ฆฌ, ํ ์คํธ ์์ญ์ ์์น๋ฅผ ๊ฒ์ถํ ํ ๊ทธ ์์ญ ๋ด์ ๊ธ์๋ฅผ ์ ์ฌํ๋ ๋ ๋จ๊ณ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. OCR๋ง์ ํน์ด์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ๋ฐ๋๊ฐ ๋์: ํ ์คํธ ์์ญ์ ๊ธ์๊ฐ ์ด์ดํ๊ฒ ๋ฐฐ์ด๋จ
- ๊ทน๋จ์ ์ข ํก๋น: ๊ฐ๋ก, ์ธ๋ก ๊ธธ์ด๊ฐ ํฌ๊ฒ ์ฐจ์ด๋ ์ ์์
- ํน์ด ๋ชจ์: ๊ตฌ๊ฒจ์ง๊ฑฐ๋ ํ์ด์ง ํ ์คํธ, ์ธ๋ก์ฐ๊ธฐ ๋ฑ ๋ค์ํ ํํ
2. ํ ์คํธ ์์ญ ํํ๋ฒ
OCR ์์คํ ์ ํ ์คํธ ์์ญ์ ๋ค์ํ ๋ฐฉ์์ผ๋ก ํํํ ์ ์์ต๋๋ค.
- RECT:
(x1, y1, height, width)
๋๋(x1, y1, x2, y2)
- RBOX:
(x1, y1, height, width, ฮธ)
๋๋(x1, y1, x2, y2, ฮธ)
- ํ์ ์ ๋ณด๋ฅผ ํฌํจํ์ฌ ๊ธฐ์ธ์ด์ง ํ ์คํธ ์์ญ์ ํํ
- QUAD:
- Bounding box์ ์ข์๋จ๋ถํฐ ์๊ณ ๋ฐฉํฅ์ผ๋ก 4๊ฐ์ ์ขํ:
(x1, y1, x2, y2, x3, y3, x4, y4)
- Bounding box์ ์ข์๋จ๋ถํฐ ์๊ณ ๋ฐฉํฅ์ผ๋ก 4๊ฐ์ ์ขํ:
- Polygon:
- ๋ค๊ฐํ ํํ๋ก, ์์์ N๊ฐ์ ์ ์ผ๋ก ์์ญ์ ์ ์
3. OCR์ ์ฃผ์ ๋ชจ๋
ํจ๊ณผ์ ์ธ OCR ์์คํ ์ ๋ค์ ๋ค ๊ฐ์ง ๋ชจ๋๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
- Text Detector:
- ์ด๋ฏธ์ง ๋ด ํ ์คํธ ๋ฐ์ค์ ์์น๋ฅผ ๊ฒ์ถํฉ๋๋ค.
- Text Recognizer:
- ๊ฒ์ถ๋ ํ ์คํธ ์์ญ์์ ์ค์ ๊ธ์๋ฅผ ์ธ์ํ๊ณ ์ ์ฌํฉ๋๋ค.
- ์ด๋ Computer Vision๊ณผ NLP ๊ธฐ์ ์ ๊ฒฐํฉ ์์ญ์ ๋๋ค.
- Serializer:
- ์ธ์๋ ํ ์คํธ๋ฅผ ์์ฐ์ด ์ฒ๋ฆฌํ๊ธฐ ์ฝ๊ฒ ์ ๋ ฌํฉ๋๋ค.
- ๋จ๋ฝ์ ๋ฌถ๊ณ ์ข์๋จ๋ถํฐ ์ฐํ๋จ์ผ๋ก ์ ๋ ฌํ๋ฉฐ, ๊ธ์น์ด ์ฒ๋ฆฌ๋ ์์ฝ ๋ฑ์ ํ์ฒ๋ฆฌ๋ ๊ฐ๋ฅํฉ๋๋ค.
- Text Parser:
- ์ ๋ ฌ๋ ํ ์คํธ๋ฅผ ๋ฏธ๋ฆฌ ์ ์๋ ํค(์: ์ด๋ฆ, ์ ํ๋ฒํธ, ์ด๋ฉ์ผ ๋ฑ)์ ๋งคํํฉ๋๋ค.
- ์ด ๊ณผ์ ์์๋ BIO tagging์ ํ์ฉํ์ฌ ๋จ์ด๋ณ ์์(B), ๋ด๋ถ(I), ์ธ๋ถ(O)์ ํ๊น ํฉ๋๋ค.
4. ์ต์ OCR ๋ชจ๋ธ
์ต๊ทผ์๋ Transformer์ ๊ฐ์ ์ต์ ๋ชจ๋ธ ๊ตฌ์กฐ๋ฅผ ์ ์ฉํ OCR ์์คํ ์ด ๋ฑ์ฅํ์ต๋๋ค.
TrOCR
- ๊ตฌ์ฑ:
- ์ฌ์ ํ์ต๋ Transformer ๋ชจ๋ธ์ Encoder๋ก, ์ฌ์ ํ์ต๋ Language Model์ Decoder๋ก ์ฌ์ฉ
- ํน์ง:
- ๋ณต์กํ ์ ์ฒ๋ฆฌ๋ ํ์ฒ๋ฆฌ ์์ด ์ฐ์ํ ์ฑ๋ฅ์ ๋ณด์
DTrOCR
- ๊ตฌ์ฑ:
- ์ด๋ฏธ์ง Encoder ์์ด ์ด๋ฏธ์ง ์๋ฒ ๋ฉ์ ๋ฐ๋ก ๋ ํฐ Text Decoder์ ๋ฃ์ด ์ฒ๋ฆฌ
- ํน์ง:
- ํ๋ผ๋ฏธํฐ ์๋ ์ ์ผ๋ฉด์๋, ๋ ํฐ ์ฌ์ ํ์ต ๋ฐ์ดํฐ์ ์ ํ์ฉํ์ฌ ์ฑ๋ฅ ํฅ์
MATRn (Multi-modAl Text Recognition Network)
- ๋ฌธ์ ํด๊ฒฐ:
- ๊ธ์๊ฐ ๊ฐ๋ ค์ง๊ฑฐ๋ ์๋ ค ๋์จ ์ด๋ฏธ์ง, ๋ฎ์ ํด์๋ ๋ฑ์์ ์ ํ๋ ํฅ์์ ์ํด multi-modal ์ ๊ทผ ์ ์ฉ
- ๊ตฌ์ฑ:
- Feature Extractor: ๊ธฐ๋ณธ ํน์ง ์ถ์ถ
- Multi-modal Feature Enhancement: ๋ค์ํ ๋ชจ๋ฌ๋ฆฌํฐ๋ฅผ ๊ณ ๋ คํ ํน์ง ๊ฐํ
- Output Fusion: ์ฌ๋ฌ ์ถ๋ ฅ์ ๊ฒฐํฉํด ์ต์ข ์ธ์ ๊ฒฐ๊ณผ ์์ฑ
๊ฒฐ๋ก
OCR์ ๋จ์ํ ํ ์คํธ ์ธ์์ ๋์ด, ๋ค์ํ ํ๊ฒฝ์์ ํ ์คํธ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ์ฝ์ด๋ด๊ธฐ ์ํ ๊ธฐ์ ์ ๋๋ค.
- ํ ์คํธ ์์ญ ํํ๋ฒ: RECT, RBOX, QUAD, Polygon ๋ฑ ๋ค์ํ ๋ฐฉ์์ผ๋ก ํํ ๊ฐ๋ฅ
- ๋ชจ๋ ๊ตฌ์ฑ: Text Detector, Recognizer, Serializer, Parser๋ฅผ ํตํด ํ ์คํธ๋ฅผ ์ธ์ํ๊ณ ํ์ฒ๋ฆฌ
- ์ต์ ๋ชจ๋ธ: TrOCR, DTrOCR, MATRn ๋ฑ Transformer ๊ธฐ๋ฐ ๋ชจ๋ธ์ด ๋์ ์ฑ๋ฅ์ ๋ฌ์ฑํ๊ณ ์์ต๋๋ค.
์๋น์ค ํฅ AI ๋ชจ๋ธ ๊ฐ๋ฐ ์ ๋ฐ์ดํฐ ์ ๊ฒ๊ณผ OCR ๋ฐ์ดํฐ์ ํ๋ณด ์ ๋ต
AI ์ฑ๋ฅ์ ์ข์ ๋ชจ๋ธ๋ฟ ์๋๋ผ ์์ง์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ ๋ฐ ํฌ๊ฒ ์ข์ฐ๋ฉ๋๋ค. ํนํ ์ค์ ์๋น์ค์ ์ ์ฉ๋๋ AI ๋ชจ๋ธ์ ๊ฐ๋ฐํ ๋๋, ๋จ์ํ ๋ชจ๋ธ ์ํคํ
์ฒ๋ฅผ ๊ฐ์ ํ๋ ๊ฒ๋ณด๋ค ๋ฐ์ดํฐ์ ํ์ง์ ์ฒด๊ณ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ๊ฒ์ด ๋์ฑ ์ค์ํฉ๋๋ค.
์๋น์คํฅ AI ๋ชจ๋ธ ๊ฐ๋ฐ ์, ์๋์ ๊ฐ์ ์ง๋ฌธ๋ค์ ํตํด ํ์ฌ ์ํฉ์ ์ง๋จํ๊ณ , ์ต์ ๋ชจ๋ธ์ ํ๊ณ์ ์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ, ๊ทธ๋ฆฌ๊ณ outlier ์ผ์ด์ค๋ฅผ ํ์
ํ ์ ์์ต๋๋ค.
- ๋ช ์ฅ์ ๋ฐ์ดํฐ๋ฅผ ํ์ต์์ผฐ์ ๋ ์ด๋ ์ ๋ ์ฑ๋ฅ์ด ๋์ค๋์ง?
- ์ด๋ค ๊ฒฝ์ฐ๊ฐ ์ผ๋ฐ์ ์ด๊ณ , ์ด๋ค ๊ฒฝ์ฐ๊ฐ outlier๋ก ๋ํ๋๋์ง?
- ์ต์ ๋ชจ๋ธ์ด ๊ฐ์ง๋ ํ๊ณ๋ ๋ฌด์์ธ์ง?
์ด๋ฌํ ์ง๋ฌธ๋ค์ ๋ต์ ์ป๊ธฐ ์ํด, ๊ณต๊ฐ๋ ๋ฐ์ดํฐ์ ๊ณผ ์ต์ ๋ชจ๋ธ์ ํ์ฉํด ์คํํด๋ณด๋ ๊ฒ์ด ํจ๊ณผ์ ์ ๋๋ค.
1. ์๋น์คํฅ AI ๋ชจ๋ธ ๊ฐ๋ฐ ์ ์ ๊ฒํด์ผ ํ ์ฌํญ
1-1. ์ฑ๋ฅ ๊ธฐ์ค ๋ฐ ๋ฐ์ดํฐ ๋ถํฌ
- ํ์ต ๋ฐ์ดํฐ ์ ๋๋น ์ฑ๋ฅ:
์ถฉ๋ถํ ๋ฐ์ดํฐ๋ก ํ์ต ์ ์ผ๋ฐ์ ์ธ ์ฑ๋ฅ๊ณผ ํ์ต ๊ณก์ ์ ํ์ธํ์ฌ, ์ด๋ ์์ ์ ์ฑ๋ฅ์ด ํฌํ๋๋์ง ํ์ ํฉ๋๋ค. - ์ผ๋ฐ ์ผ์ด์ค vs Outlier:
์ ์ฒด ๋ฐ์ดํฐ ๋ถํฌ์์ ํํ ๋ฐ์ํ๋ ๊ฒฝ์ฐ์, ํน์ดํ๊ฑฐ๋ ๋๋ฌธ ์ผ์ด์ค๋ฅผ ๊ตฌ๋ถํ์ฌ ํ๊ฐํฉ๋๋ค. - ์ต์ ๋ชจ๋ธ์ ํ๊ณ:
์ต์ ๋ชจ๋ธ๋ค์ด ํด๊ฒฐํ์ง ๋ชปํ๋ ๋ฌธ์ ์ (์: ๋ณต์กํ ํ๊ฒฝ, ๋ ธ์ด์ฆ, ๋ค์ํ ํฐํธ ๋ฐ ์คํ์ผ ๋ฑ)์ ์คํ์ ํตํด ์๋ณํฉ๋๋ค.
1-2. ๋ฐ์ดํฐ ์ค์ฌ AI(Data-centric AI) ์ ๊ทผ๋ฒ
- ๋ฐ์ดํฐ ์ ์ ์ ๋ณด๊ฐ:
์๋น์ค ์ถ์ ์ดํ ๋ชจ๋ธ ๋ณ๊ฒฝ ๋น์ฉ์ด ํฌ๋ฏ๋ก, ์ฑ๋ฅ ๊ฐ์ ์ ์ฃผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ , ์ถ๊ฐํ๋ ๋ฐฉํฅ์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ค. - ๋ฐ์ดํฐ์ ๋ค์์ฑ:
๋ค์ํ ์ํฉ์ ๋ฐ์ํ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ์ฌ, ๋ชจ๋ธ์ด ์ค์ ์๋น์ค ํ๊ฒฝ์์ ์์ ์ ์ธ ์ฑ๋ฅ์ ๋ฐํํ ์ ์๋๋ก ํฉ๋๋ค.
2. OCR ๋ฐ์ดํฐ์ ํ๋ณด ๋ฐฉ๋ฒ
OCR (Optical Character Recognition)์ ์ด๋ฏธ์ง ๋ด์ ํ ์คํธ๋ฅผ ๊ฒ์ถํ๊ณ ์ธ์ํ๋ ํ์คํฌ์ ๋๋ค. OCR ๋ฐ์ดํฐ์ ์ ์ผ๋ฐ ํ ์คํธ ๋ฐ์ดํฐ์ ๊ณผ ๋ฌ๋ฆฌ, ๊ธ์์ ๋ชจ์, ์ธ์ด, ๋ฐฐ๊ฒฝ ๋ฑ ๋ค์ํ ์์๋ฅผ ํฌํจํฉ๋๋ค. ๋ค์์ OCR ๋ฐ์ดํฐ์ ์ ํ๋ณดํ ์ ์๋ ์ฃผ์ ๋ฐฉ๋ฒ์ ๋๋ค.
- Kaggle:
๋ค์ํ OCR ๊ด๋ จ ๊ฒฝ์ง๋ํ์ ๋ฐ์ดํฐ์ ์ด ๊ณต๊ฐ๋์ด ์์ต๋๋ค. - RRC (Robust Reading Challenges):
2๋ ๋ง๋ค ์ด๋ฆฌ๋ OCR ์ ๋ฌธ ๋ํ๋ก, ์ต์ OCR ๋ฐ์ดํฐ์ ๊ณผ benchmark๊ฐ ์ ๊ณต๋ฉ๋๋ค. - ๋
ผ๋ฌธ:
Arxiv, CVPR, ICCV, AAAI, ICDAR ๋ฑ์์ ๊ณต๊ฐ๋ ๋ฐ์ดํฐ์ ์ ์ฐธ๊ณ ํ ์ ์์ต๋๋ค. - Google Datasearch:
๊ตฌ๊ธ์์ ์ ๊ณตํ๋ ๋ฐ์ดํฐ์ ๊ฒ์ ์๋น์ค๋ฅผ ํตํด ๋ค์ํ ๊ณต๊ฐ ๋ฐ์ดํฐ์ ์ ์ฐพ์ ์ ์์ต๋๋ค. - Zenodo.org:
์ฐ๊ตฌ ์ปค๋ฎค๋ํฐ์์ ๊ณต์ ํ๋ ๋ค์ํ ๋ฐ์ดํฐ์ ์ด ๊ณต๊ฐ๋์ด ์์ต๋๋ค. - Datatang:
์ ๋ฃ ๋ฐ์ดํฐ ๊ตฌ๋งค ์ฌ์ดํธ๋ก, ํนํ๋ OCR ๋ฐ์ดํฐ์ ์ ํ๋ณดํ ์ ์์ต๋๋ค.
3. OCR ๋ฐ์ดํฐ์ ํ์ ์ ๊ณ ๋ คํด์ผ ํ ํน์ฑ
OCR ๋ฐ์ดํฐ์ ์ ๋ถ์ํ ๋๋ ๋ค์๊ณผ ๊ฐ์ ์์๋ค์ ์ฃผ์ ๊น๊ฒ ์ดํด๋ด์ผ ํฉ๋๋ค.
- ์ธ์ด:
๋ฐ์ดํฐ์ ์ ํฌํจ๋ ์ธ์ด์ ์คํฌ๋ฆฝํธ ์ข ๋ฅ (์์ด, ํ๊ธ, ์ผ๋ณธ์ด ๋ฑ) - ์ฉ๋:
- Detection: ํ ์คํธ ์์ญ ๊ฒ์ถ์ ์ํ ๋ฐ์ดํฐ
- Recognition: ํ ์คํธ ์ธ์์ ์ํ ๋ฐ์ดํฐ
- End-to-End: ํ ์คํธ ๊ฒ์ถ๊ณผ ์ธ์์ ๋ชจ๋ ํฌํจํ๋ ๋ฐ์ดํฐ์
- ๋ฐ์ดํฐ ์๋:
์ถฉ๋ถํ ์์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ์ฌ ๋ค์ํ ์ผ์ด์ค๋ฅผ ํฌ๊ดํ ์ ์๋์ง - ๋ผ์ด์ผ์ค ์ข
๋ฅ:
๋ฐ์ดํฐ ์ฌ์ฉ์ ์ ์ฝ์ด ์๋์ง, ์์ ์ ํ์ฉ์ด ๊ฐ๋ฅํ์ง ๋ฑ ๋ผ์ด์ผ์ค ์กฐ๊ฑด ํ์ธ - ๋ฐ์ดํฐ ์ ์ฅ ํฌ๋งท:
์ด๋ฏธ์ง ํ์ผ ํ์(JPEG, PNG, TIFF ๋ฑ), ์ด๋ ธํ ์ด์ ํ์(XML, JSON ๋ฑ) - ํน์ด์ฌํญ:
- ๊ธ์ ๋ฐ๋, ์ข ํก๋น
- ํ ์คํธ์ ํํ(๊ตฌ๊ฒจ์ง, ํ์ด์ง, ์ธ๋ก์ฐ๊ธฐ ๋ฑ)
- ๋ฐฐ๊ฒฝ์ ๋ณต์ก๋์ ๋ ธ์ด์ฆ ์์ค
๊ฒฐ๋ก
์๋น์ค ํฅ AI ๋ชจ๋ธ์ ๊ฐ๋ฐํ ๋๋ ๋ชจ๋ธ ์ฑ๋ฅ๋ฟ๋ง ์๋๋ผ ๋ฐ์ดํฐ์ ํ์ง๊ณผ ๋ค์์ฑ์ด ๊ฒฐ์ ์ ์ธ ์ญํ ์ ํฉ๋๋ค.
- ๋ชจ๋ธ ์ ๊ฒ: ํ์ต ๋ฐ์ดํฐ ์, ์ผ๋ฐ ์ผ์ด์ค์ outlier ๊ตฌ๋ถ, ์ต์ ๋ชจ๋ธ์ ํ๊ณ๋ฅผ ํ์ ํฉ๋๋ค.
- ๋ฐ์ดํฐ์ ํ๋ณด: Kaggle, RRC, ๋ ผ๋ฌธ, Google Datasearch, Zenodo, Datatang ๋ฑ์ ํ์ฉํ์ฌ ๋ค์ํ OCR ๋ฐ์ดํฐ์ ์ ์์งํฉ๋๋ค.
- ๋ฐ์ดํฐ์ ํน์ฑ ํ์ : ์ธ์ด, ์ฉ๋, ๋ฐ์ดํฐ ์๋, ๋ผ์ด์ผ์ค, ์ ์ฅ ํฌ๋งท, ํน์ด์ฌํญ ๋ฑ ์ธ๋ฐํ๊ฒ ๊ฒํ ํ์ฌ, ๋ฐ์ดํฐ ์ค์ฌ AI ์ ๊ทผ๋ฒ์ ํจ๊ณผ์ ์ผ๋ก ์ ์ฉํฉ๋๋ค.
์ด๋ฌํ ์ ๊ทผ๋ฒ์ ์๋น์ค์ ์ ์ฉ๋๋ AI ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๊ทน๋ํํ๊ณ , ํฅํ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ์ ๋๋นํ ์ ์๋๋ก ๋์์ค ๊ฒ์ ๋๋ค.
OCR ์ฑ๋ฅ ํ๊ฐ: Bounding Box ๊ด์ ์์์ ํ๊ฐ Metrics
OCR (Optical Character Recognition) ์์คํ
์ ์ด๋ฏธ์ง ๋ด ํ
์คํธ ์์ญ์ ์ ํํ๊ฒ ๊ฒ์ถํ๊ณ , ๊ทธ ์์ญ ๋ด์ ๊ธ์๋ฅผ ์ธ์ํ๋ ๊ฒ์ด ํต์ฌ์
๋๋ค. ์ฌ๊ธฐ์๋ OCR์ ํ
์คํธ ๋ฐ์ค(๊ฒฝ๊ณ ์์, bounding box) ๊ฒ์ถ ์ฑ๋ฅ์ ํ๊ฐํ๋ ๋ฐฉ๋ฒ์ ๋ํด ๋ค๋ฃน๋๋ค.
์ผ๋ฐ์ ์ธ object detection ํ๊ฐ ์งํ์ ์ ์ฌํ์ง๋ง, OCR ํน์ฑ์ ๋ง์ถฐ ๋ช ๊ฐ์ง ์ถ๊ฐ ์งํ์ ํ๋ํฐ๊ฐ ์ ์ฉ๋ฉ๋๋ค.
1. Area Recall & Area Precision
Area Recall
- ์ ์:
Ground Truth (GT) bbox์ ๋ํด, ์์ธกํ predicted bbox์ ๊ฒน์น๋ ์์ญ์ ๋น์จ์ ๋๋ค. - ์์: Areaย Recall=๋ย bbox์ย ๊ต์งํฉย ์์ญGroundย Truthย bbox์ย ์์ญ\text{Area Recall} = \frac{\text{๋ bbox์ ๊ต์งํฉ ์์ญ}}{\text{Ground Truth bbox์ ์์ญ}}
- ํด์:
์ค์ ํ ์คํธ ์์ญ ์ค ์ผ๋ง๋ ์์ธก bbox๊ฐ ํฌํจ๋์๋์ง๋ฅผ ๋ํ๋ด๋ฉฐ, ๋๋ฝ๋ ์์ญ์ด ์ ์์๋ก Recall์ด ๋์ต๋๋ค.
Area Precision
- ์ ์:
Predicted bbox์ ์์ญ์ ๋ํด, ์ค์ ๋ก GT์ ๊ฒน์น๋ ๋ถ๋ถ์ ๋น์จ์ ๋๋ค. - ์์: Areaย Precision=๋ย bbox์ย ๊ต์งํฉย ์์ญPredictedย bbox์ย ์์ญ\text{Area Precision} = \frac{\text{๋ bbox์ ๊ต์งํฉ ์์ญ}}{\text{Predicted bbox์ ์์ญ}}
- ํด์:
์์ธกํ ์์ญ์ด ์ผ๋ง๋ ์ ํํ๊ฒ ์ค์ ํ ์คํธ ์์ญ์ ์ผ์นํ๋์ง๋ฅผ ๋ํ๋ด๋ฉฐ, ๋ถํ์ํ ์์ญ์ด ์ ์์๋ก Precision์ด ๋์ต๋๋ค.
๋น๊ต ์์ฝ
๊ตฌ๋ถ | Area Precision | Area Recall |
---|---|---|
๊ธฐ์ค | Predicted bbox | Ground Truth bbox |
ํ๊ฐ ์ง๋ฌธ | ์์ธกํ bbox๊ฐ ์ผ๋ง๋ ์ ํํ๊ฐ? | ์ค์ ๊ฐ์ฒด๋ฅผ ์ผ๋ง๋ ์ ํฌํจํ๋๊ฐ? |
์๋ฏธ | ์์ธกํ ์์ญ ์ค GT์ ์ผ์นํ๋ ๋น์จ | GT ์์ญ ์ค ์์ธก bbox์ ํฌํจ๋ ๋น์จ |
2. Match ์ ํ
OCR ํ์คํฌ์์๋ ํ ์ด๋ฏธ์ง ๋ด์ ์ฌ๋ฌ ํ
์คํธ๊ฐ ์กด์ฌํ๊ธฐ ๋๋ฌธ์, GT bbox์ predicted bbox ๊ฐ์ ๋งค์นญ์ด ์ค์ํฉ๋๋ค.
-
One-to-One Match:
GT์ predicted bbox๊ฐ 1:1๋ก ์ ํํ๊ฒ ๋งค์นญ๋ ๊ฒฝ์ฐ. -
One-to-Many Match:
ํ๋์ GT bbox์ ๋ํด ์ฌ๋ฌ predicted bbox๊ฐ ๋ถํ ๋์ด ๋งค์นญ๋ ๊ฒฝ์ฐ.- ์ด ๊ฒฝ์ฐ, ํ๋ํฐ๋ก ๋ณดํต 0.8์ ๊ณฑํด ์ฑ๋ฅ ์ ์๋ฅผ ๋ฎ์ถฅ๋๋ค.
-
Many-to-One Match:
์ฌ๋ฌ GT bbox๊ฐ ํ๋์ predicted bbox๋ก ํฉ์ณ์ ธ ๋งค์นญ๋ ๊ฒฝ์ฐ.- ์ผ๋ฐ์ ์ผ๋ก ํ๋ํฐ ์์ด ์ฒ๋ฆฌํฉ๋๋ค.
3. ์ฃผ์ ํ๊ฐ Metric
3-1. DetEval
DetEval์ OCR์์ bbox ๊ฒ์ถ ์ฑ๋ฅ์ ํ๊ฐํ๊ธฐ ์ํ ์ข ํฉ Metric์ ๋๋ค.
-
๋งค์นญ:
๊ฐ GT bbox์ predicted bbox ์์ ๋งค์นญํ๊ณ , ๊ฐ ์์ ๋ํด Area Recall๊ณผ Area Precision์ ๊ณ์ฐํฉ๋๋ค.
-
Binary ํ๊ฐ:
๊ฐ ์์ ๋ํด ๋ค์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด 1, ๊ทธ๋ ์ง ์์ผ๋ฉด 0์ผ๋ก ์ ์๋ฅผ ๋ถ์ฌํฉ๋๋ค.- Area Recall โฅ 0.8
- Area Precision โฅ 0.4
-
๋งค์นญ ์ ํ ๊ณ ๋ ค:
- One-to-One: ๊ทธ๋๋ก 1์
- One-to-Many: ํ๋ํฐ 0.8 ์ ์ฉ
- Many-to-One: ํ๋ํฐ ์์ด 1์ ์ ์ฉ
-
์ต์ข ์ ์:
GT ๊ธฐ์ค ํ๊ท (Recall)๊ณผ ์์ธก ๊ธฐ์ค ํ๊ท (Precision)์ ๊ฐ๊ฐ ๊ณ์ฐํ๊ณ , F1 score๋ก ์ข ํฉํฉ๋๋ค.
3-2. IoU (Intersection over Union)
-
์ ์:
GT bbox์ predicted bbox์ ๊ฒน์น๋ ์์ญ์ ๋น์จ๋ก, IoU=๊ต์งํฉย ์์ญํฉ์งํฉย ์์ญ
-
์ฐธ๊ณ :
Object Detection ํ๊ฐ์ ๊ธฐ๋ณธ ์งํ์ ๋๋ค.
3-3. TIoU (Tightness-aware IoU)
TIoU๋ ๋จ์ IoU์ ๋ฌ๋ฆฌ, GT bbox์ ๋นํด ์์ธก bbox๊ฐ ๋ถ์กฑํ๊ฑฐ๋ ์ด๊ณผํ ์์ญ์ ๋ํด ํ๋ํฐ๋ฅผ ๋ถ์ฌํฉ๋๋ค.
-
TIoU Recall:
์ฌ๊ธฐ์ penalty๋ GT bbox์ ๋นํด ๋ถ์กฑํ ์์ญ์ ํฌ๊ธฐ์ ๋น๋กํ์ฌ ๊ณ์ฐ๋ฉ๋๋ค.
-
TIoU Precision:
์ฌ๊ธฐ์ penalty๋ predicted bbox๊ฐ GT bbox๋ณด๋ค ์ด๊ณผ๋ ์์ญ์ ํฌ๊ธฐ์ ๋น๋กํฉ๋๋ค.
-
์ต์ข TIoU:
TIoU Recall๊ณผ TIoU Precision์ ์กฐํ ํ๊ท :
์ฃผ์:
TIoU๋ GT๊ฐ golden answer๋ผ๋ ๊ฐ์ ์ด ํ์ํ๋ฉฐ, ๋จ์ ๋์ด ๊ธฐ๋ฐ ํ๋ํฐ๋ก ์ธํด ์ผ๋ถ ๊ธ์ ๋๋ฝ ๊ฐ์ ์ธ๋ฐํ ์ค๋ฅ๋ ๋ฐ์ํ์ง ๋ชปํ ์ ์์ต๋๋ค.
3-4. CLEval (Character-Level Evaluation)
CLEval์ OCR์ detection๋ฟ ์๋๋ผ recognition ์ฑ๋ฅ๋ ํ๊ฐํ๋ ๋ฌธ์ ๋จ์ ์งํ์ ๋๋ค.
-
Pseudo Character Centers (PCC):
๊ฐ ๊ธ์์ ์ค์ฌ์ ๊ณ์ฐํ์ฌ ํ๊ฐํฉ๋๋ค. -
๋งค์นญ ๋ฐ ์ ์ ๊ณ์ฐ:
- ๊ฐ GT bbox ๋ด์ PCC์ predicted bbox ๋ด์ PCC๋ฅผ ๋งค์นญํ์ฌ,
- Precision๋ ๋น์ทํ ๋ฐฉ์์ผ๋ก ๊ณ์ฐํ๋ฉฐ, ์ฌ๋ฌ predicted bbox์ ์ํ๋ PCC๋ ํด๋น bbox ์๋ก ๋๋์ด ๊ณ์ฐํฉ๋๋ค.
- ๊ฐ GT bbox ๋ด์ PCC์ predicted bbox ๋ด์ PCC๋ฅผ ๋งค์นญํ์ฌ,
-
์ต์ข CLEval:
Recall๊ณผ Precision์ ์กฐํ ํ๊ท :
4. ์์
์๋ ์ธ ๊ฐ์ง ์ผ์ด์ค์ ๋ํด ๊ฐ Metric์ ์์ ์ ์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
(1) ์ ๋ต ์ผ์ด์ค
Metric | Score |
---|---|
DetEval | 1.0 |
IoU | 1.0 |
TIoU | 0.9 |
CLEval | 8/9 |
(2) ์ ๋ต ์ผ์ด์ค
Metric | Score |
---|---|
DetEval | 0.8 |
IoU | 0.0 |
TIoU | - |
CLEval | 0.9 |
(3) ์ ๋ต ์ผ์ด์ค
Metric | Score |
---|---|
DetEval | 1.0 |
IoU | 0.0 |
TIoU | - |
CLEval | 0.93 |
ํด์:
๊ฐ ์ผ์ด์ค์์ DetEval, IoU, TIoU, CLEval์ OCR์ bounding box ๊ฒ์ถ ์ฑ๋ฅ์ ๋ค๋ฅธ ๊ด์ ์์ ํ๊ฐํฉ๋๋ค.
- DetEval์ binary ๊ธฐ์ค๊ณผ ๋งค์นญ ํ๋ํฐ๋ฅผ ๋ฐ์ํ๋ฉฐ,
- IoU๋ ๋จ์ ๊ฒน์นจ ๋น์จ,
- TIoU๋ ์ฌ๋ถ ํน์ ๋ถ์กฑํ ์์ญ์ ๋ํด ํ๋ํฐ๋ฅผ ์ฃผ๊ณ ,
- CLEval์ ๋ฌธ์ ๋จ์ ์ธ๋ฐ ํ๊ฐ๋ฅผ ์ ๊ณตํฉ๋๋ค.
๊ฒฐ๋ก
OCR ์์คํ ์ bounding box ์ฑ๋ฅ ํ๊ฐ๋ ๋จ์ํ IoU ์ด์์ ๋ค์ํ ์งํ๋ฅผ ํตํด ์ด๋ฃจ์ด์ง๋๋ค.
- Area Recall/Precision: GT์ ์์ธก bbox์ ๊ฒน์นจ ๋น์จ๋ก ๊ธฐ๋ณธ์ ์ธ ์ฑ๋ฅ ํ์ธ
- DetEval: ๋งค์นญ ๋ฐ binary ๊ธฐ์ค ํ๊ฐ๋ก ์ค์ ์๋น์ค ์ ์ฉ ๊ฐ๋ฅ์ฑ์ ํ๋จ
- TIoU: ์์ธก bbox์ ํ์ดํธํจ(์ ๋ฐ๋)์ ๋ฐ์ํ์ฌ ํ๋ํฐ ๋ถ์ฌ
- CLEval: ๋ฌธ์ ๋จ์ ํ๊ฐ๋ก, detection๊ณผ recognition ๋ชจ๋๋ฅผ ๋ฐ์
์ด๋ฌํ ๋ค์ํ ์งํ๋ฅผ ํ์ฉํ๋ฉด OCR ๋ชจ๋ธ์ bbox ๊ฒ์ถ ์ฑ๋ฅ์ ๋ค๊ฐ๋๋ก ํ๊ฐํ๊ณ , ๊ฐ์ ๋ฐฉํฅ์ ๋ชจ์ํ ์ ์์ต๋๋ค.
๋ฐ์ดํฐ Annotation: ํจ์จ์ ์ธ ์ด๋ฏธ์ง ๋ผ๋ฒจ๋ง ๋๊ตฌ ์๊ฐ
Annotation ์ ์ด๋ฏธ์ง, ๋น๋์ค, ํ ์คํธ ๋ฑ ์๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋จธ์ ๋ฌ๋ ๋ชจ๋ธ ํ์ต์ ํ์ฉํ ์ ์๋๋ก ๋ผ๋ฒจ(์ ๋ณด)๋ฅผ ์ถ๊ฐํ๋ ์์ ์ ๋๋ค. ์๋ฅผ ๋ค์ด, object detection ๋ฌธ์ ์์๋ ์ด๋ฏธ์ง ๋ด ๊ฐ์ฒด์ ์์น๋ฅผ ๋ํ๋ด๋ bounding box์ ํด๋น ๊ฐ์ฒด์ ํด๋์ค(label)๋ฅผ ์ง์ ํด์ผ ํฉ๋๋ค. ์ค๋์ ์ด๋ฌํ annotation ์์ ์ ๋ณด๋ค ์์ํ๊ฒ ์งํํ ์ ์๋ ๋ํ์ ์ธ ๋๊ตฌ๋ค์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1. ์ฃผ์ Annotation ๋๊ตฌ
LabelMe
- ๊ฐ์:
MIT CSAIL์์ ๊ณต๊ฐํ ์ด๋ฏธ์ง ๋ฐ์ดํฐ annotation ๋๊ตฌ๋ฅผ ์ฐธ๊ณ ํ์ฌ ๋ง๋ค์ด์ง ์คํ์์ค ์ํํธ์จ์ด์ ๋๋ค. - ํน์ง:
- ์ด๋ฏธ์ง๋ฅผ ์ด์ด bounding box์ ๋ผ๋ฒจ์ ์ง์ ์์ฑํ ์ ์์ผ๋ฉฐ, ๊ฒฐ๊ณผ๋ JSON ํ์ผ๋ก ์ ์ฅ๋ฉ๋๋ค.
- Python์ผ๋ก ์์ฑ๋์ด ์์ด, ํ์์ ๋ฐ๋ผ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ฑฐ๋ ์ปค์คํฐ๋ง์ด์งํ ์ ์์ต๋๋ค.
- ๋จ์ :
- ๋ค์ ์ฌ์ฉ์๊ฐ ๋์์ ์์ ํ๊ธฐ ์ด๋ ค์ ํ์ ์ ํ๊ณ๊ฐ ์์ต๋๋ค.
- object๋ image์ ๋ํ ์ถ๊ฐ ์์ฑ ๋ถ์ฌ ๊ธฐ๋ฅ์ ์ ๊ณต๋์ง ์์ต๋๋ค.
CVAT
- ๊ฐ์:
Intel OpenVINO ํ์์ ์ ์ํ ๊ณต๊ฐ computer vision ๋ฐ์ดํฐ ์ ์ ๋๊ตฌ์ ๋๋ค. - ํน์ง:
- ์น ํ๊ฒฝ์์ ๋์ํ์ฌ Chrome ๋ธ๋ผ์ฐ์ ๋ฑ์์ ์ฌ์ฉ์ด ์ฉ์ดํฉ๋๋ค.
- ์์ ํ๋ก์ธ์ค: ์๋ก์ด task ์์ฑ โ ๋ผ๋ฒจ ๋ฑ๋ก โ ์ด๋ฏธ์ง ์ ๋ก๋ โ bbox ๋ฐ ๋ผ๋ฒจ๋ง ์์ ํ ๋ฐ์ดํฐ์ Export.
- ๋จ์ถํค(์: n: bbox ์์ฑ, ctrl+s: ์ ์ฅ, delete: bbox ์ญ์ ๋ฑ)๋ฅผ ์ง์ํ์ฌ ์์ ํจ์จ์ ๋์ ๋๋ค.
- assignee์ reviewer๋ฅผ ์ง์ ํ ์ ์์ด, ๋ค์ ์ฌ์ฉ์ ๊ฐ ๊ณต๋ ์์ ์ด ๊ฐ๋ฅํฉ๋๋ค.
- automatic annotation ๊ธฐ๋ฅ์ ์ ๊ณตํด ์ผ๋ถ ์์ ์ ์๋ํํ ์ ์์ต๋๋ค.
- ๋จ์ :
- model inference๊ฐ ์๋์ ์ผ๋ก ๋๋ฆฐ ํธ์ ๋๋ค.
- object๋ image์ ๋ํ ์ถ๊ฐ ์์ฑ ๋ถ์ฌ ๊ธฐ๋ฅ์ ์ ๊ณต๋์ง ์์ต๋๋ค.
Hasty Labeling Tool
- ๊ฐ์:
์ฃผ๋ก ์ ๋ฃ ์๋น์ค๋ก ์ ๊ณต๋๋ฉฐ, free credit ์์ง ์ดํ ์ ๋ฃ๋ก ์ ํ๋ฉ๋๋ค. - ํน์ง:
- semi-automated annotation ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ, ์ผ๋ถ ์์ ์ ์๋ํํ ์ ์์ต๋๋ค.
- assignee์ reviewer ๊ธฐ๋ฅ์ ํตํด ๋ฉํฐ ์ ์ ํ์ ํ๊ฒฝ์ ์ง์ํฉ๋๋ค.
- ๋จ์ :
- ๋๊ตฌ ์ปค์คํฐ๋ง์ด์ง์ด ์ ํ์ ์ ๋๋ค.
LabelImg
- ๊ฐ์:
Pascal VOC ํฌ๋งท์ XML ํ์ผ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ๊ฐ๋จํ ์ด๋ฏธ์ง ๋ผ๋ฒจ๋ง ๋๊ตฌ์ ๋๋ค. - ํน์ง:
- ์ง์ ๋ ํด๋ ๋ด ์ด๋ฏธ์ง๋ค์ ๋ถ๋ฌ์, ์ด๋ฏธ์ง ์์ ํ์๋๋ bounding box์ ๋ผ๋ฒจ์ ํ์ธํ๋ฉฐ ์์ ํ ์ ์์ต๋๋ค.
- ์ง๊ด์ ์ธ ์ธํฐํ์ด์ค๋ก ๋น ๋ฅด๊ฒ annotation ์์ ์ ์งํํ ์ ์์ต๋๋ค.
- ๋จ์ :
- ์๋์ ์ผ๋ก ๋จ์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ, ํ์ ๊ธฐ๋ฅ์ด๋ ์๋ํ ๊ธฐ๋ฅ์ ๋ฏธํกํฉ๋๋ค.
2. ์ ํ ์ ๊ณ ๋ ค ์ฌํญ
- ํ์
ํ์์ฑ:
๋ค์ ์ฌ์ฉ์๊ฐ ๋์์ ์์ ํด์ผ ํ๋ ๊ฒฝ์ฐ, CVAT๋ Hasty Labeling Tool์ฒ๋ผ ํ์ ๊ธฐ๋ฅ์ ์ง์ํ๋ ๋๊ตฌ๊ฐ ์ ๋ฆฌํฉ๋๋ค. - ์๋ํ ์์ค:
์์ ๋์ด ๋ง์ ์๋ํ๊ฐ ํ์ํ ๊ฒฝ์ฐ, automatic ๋๋ semi-automatic annotation ๊ธฐ๋ฅ์ด ์๋ ๋๊ตฌ๋ฅผ ์ ํํ๋ ๊ฒ์ด ์ข์ต๋๋ค. - ์ปค์คํฐ๋ง์ด์ง:
ํน์ ์๊ตฌ ์ฌํญ์ ๋ง๊ฒ ๊ธฐ๋ฅ์ ํ์ฅํ๊ฑฐ๋ ์์ ํ๊ณ ์ ํ ๋๋, Python ๊ธฐ๋ฐ์ ์คํ์์ค ๋๊ตฌ(LabelMe, LabelImg)๊ฐ ์ ๋ฆฌํ ์ ์์ต๋๋ค. - ๋ฐ์ดํฐ ํฌ๋งท ๋ฐ ์์ฑ ๋ถ์ฌ:
์์ ํ๋ ค๋ ๋ฐ์ดํฐ์ ํน์ฑ๊ณผ ํ์ฒ๋ฆฌ ์๊ตฌ ์ฌํญ์ ๋ง์ถฐ, ์ด๋ค ํฌ๋งท(XML, JSON ๋ฑ)๊ณผ ์์ฑ ๋ถ์ฌ๊ฐ ๊ฐ๋ฅํ์ง๋ฅผ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.
๊ฒฐ๋ก
์ด๋ฏธ์ง annotation์ AI ๋ชจ๋ธ ํ์ต์ ํ์ง๊ณผ ์ฑ๋ฅ์ ์ข์ฐํ๋ ์ค์ํ ์ ์ฒ๋ฆฌ ๋จ๊ณ์ ๋๋ค.
- LabelMe ๋ Python ๊ธฐ๋ฐ ์ปค์คํฐ๋ง์ด์ง์ด ์ฉ์ดํ ๋๊ตฌ์ด๊ณ ,
- CVAT ๋ ์น ๊ธฐ๋ฐ ํ์ ๊ณผ ๋จ์ถํค, ์๋ํ ๊ธฐ๋ฅ์ด ๋ฐ์ด๋๋ฉฐ,
- Hasty Labeling Tool ์ semi-automated ๊ธฐ๋ฅ์ ์ ๊ณตํ์ง๋ง ์ปค์คํฐ๋ง์ด์ง์ ์ ํ์ ์ด๋ฉฐ,
- LabelImg ๋ ๋จ์ํ์ง๋ง ๋น ๋ฅธ ์์ ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค.
๊ฐ ๋๊ตฌ์ ์ฅ๋จ์ ์ ๊ณ ๋ คํ์ฌ ํ๋ก์ ํธ์ ํ์ ์๊ตฌ์ ๋ง๋ annotation ๋๊ตฌ๋ฅผ ์ ํํ๋ฉด, ๊ณ ํ์ง์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ ๋ฐ ํฐ ๋์์ด ๋ ๊ฒ์ ๋๋ค.
Data-Centric AI: ์ข์ ๋ฐ์ดํฐ๋ฅผ ์ํ Annotation ๊ฐ์ด๋๋ผ์ธ๊ณผ ์ผ๊ด์ฑ ํ๊ฐ
AI ๋ชจ๋ธ์ ์ฑ๋ฅ ํฅ์์์ ๋ฐ์ดํฐ์ ํ์ง์ ๋ชจ๋ธ ์์ฒด๋ณด๋ค ํจ์ฌ ์ค์ํ ์ญํ ์ ํฉ๋๋ค. Data-Centric AI ์ ๊ทผ๋ฒ์์๋ ํธํฅ๋์ง ์๊ณ ๊ณจ๊ณ ๋ฃจ ๋ถํฌ๋, ๊ทธ๋ฆฌ๊ณ ์ผ์ ํ ๊ธฐ์ค์ ๋ฐ๋ผ ๋ผ๋ฒจ๋ง๋ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ ๊ฒ์ด ํต์ฌ์ ๋๋ค. ์ด๋ฅผ ์ํด ๋ช ํํ๊ณ ๊ฐ๊ฒฐํ Annotation ๊ฐ์ด๋๋ผ์ธ์ ๋ง๋ จํ๋ ๊ฒ์ด ํ์์ ์ ๋๋ค.
์ด ํฌ์คํธ์์๋ ๋ฐ์ดํฐ annotation ๊ฐ์ด๋๋ผ์ธ์ ํฌํจ๋์ด์ผ ํ ๋ด์ฉ๊ณผ, annotation์ ํ์ง์ ํ๊ฐํ๊ธฐ ์ํ Inter-Annotator Agreement (IAA) ์งํ๋ค(Cohen's Kappa, Fleiss' Kappa, Krippendorff's Alpha, ๊ทธ๋ฆฌ๊ณ ์ต๊ทผ KS test)์ ์ดํด๋ด ๋๋ค.
1. Annotation ๊ฐ์ด๋๋ผ์ธ ์์ฑ
์ข์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ถํ๊ธฐ ์ํ Annotation ๊ฐ์ด๋๋ผ์ธ์ ๋ฐ์ดํฐ ํ๋ณด ๋ฐ ๋ผ๋ฒจ๋ง ๊ณผ์ ์ ํ์คํ๋ฅผ ์ํด ์์ฑ๋ ๋ฌธ์์ ๋๋ค. ๊ฐ์ด๋๋ผ์ธ์ ์๋์ ๊ฐ์ ์์๋ค์ ํฌํจํด์ผ ํ๋ฉฐ, ํด์์ ์ฌ์ง๊ฐ ์๋๋ก ๊ฐ๊ฒฐํ๊ณ ๋ช ํํ๊ฒ ์์ฑ๋์ด์ผ ํฉ๋๋ค.
ํ์ ํฌํจ ๋ด์ฉ
-
๋ฐ์ดํฐ ๊ตฌ์ถ์ ๋ชฉ์ :
- ๋ฐ์ดํฐ ์์ง ๋ฐ annotation ์์ ์ ์ต์ข ๋ชฉํ์ ํ์ฉ ๋ฐฉ์์ ๋ช ์
-
๋ผ๋ฒจ๋ง ๋์ ์ด๋ฏธ์ง ์๊ฐ:
- ์ด๋ค ์ข ๋ฅ์ ์ด๋ฏธ์ง(์: ์์์ฆ, ๋ช ํจ, ๊ธธ๊ฑฐ๋ฆฌ ๊ฐํ ๋ฑ)๋ฅผ ๋์์ผ๋ก ํ๋์ง ์ค๋ช
-
ํน์ด ์ผ์ด์ค ๋์ฒ ๋ฐฉ๋ฒ:
- ์์ธ์ ์ํฉ์ด๋ ๋ชจํธํ ์ฌ๋ก์ ๋ํด ์ด๋ป๊ฒ ์ฒ๋ฆฌํ ๊ฒ์ธ์ง ์ง์นจ ์ ๊ณต
-
๊ธฐ๋ณธ์ ์ธ ์ฉ์ด ์ ์:
- "bounding box", "์ ์ฌ", "ํ๊ทธ" ๋ฑ ์์ฃผ ์ฌ์ฉ๋๋ ์ฉ์ด์ ๋ํ ์ ์
- ๋ชจ๋ annotator๊ฐ ๋์ผํ ๊ธฐ์ค์ผ๋ก ์ดํดํ ์ ์๋๋ก
-
Annotation ๊ท์น:
- ์ด๋ค ๋ฐฉ์์ผ๋ก annotationํ ๊ฒ์ธ์ง (์: bbox ์์ ๋ฐฉ์, ๋ผ๋ฒจ๋ง ๊ธฐ์ค ๋ฑ)
- ์ต์ข ๋ฐ์ดํฐ ํ์(์: JSON, XML, Pascal VOC ๋ฑ)
-
์์ ๋ถ๊ฐ ์ด๋ฏธ์ง ์ ์ (๋์ ๋ฐ์ดํฐ ๊ธฐ์ค):
- ๋ถ๋ ์ด๋ฏธ์ง, ๋๋ฌด ํ๋ฆฌ๊ฑฐ๋ ์๊ณก๋ ์ด๋ฏธ์ง ๋ฑ annotation ์์ ์์ ์ ์ธํ ๋์์ ๋ช ์
-
์์ ๋ถ๊ฐ ์์ญ ์ ์:
- illegibility = True์ ๊ฐ์ด, ์ฝ๊ธฐ ์ด๋ ค์ด ์์ญ์ ๋ํ ๊ธฐ์ค ์ ์
-
BBOX ์์ ๋ฐฉ์ ์ ์:
- ์ขํ ํ๊ธฐ๋ฒ (์: (x1, y1, x2, y2) ๋ฑ) ๋ฐ ์์ ์ ์ฃผ์ ์ฌํญ
-
์ต์ข ๋ฐ์ดํฐ ํฌ๋งท:
- annotation ๊ฒฐ๊ณผ๊ฐ ์ ์ฅ๋ ํ์๊ณผ ๊ตฌ์กฐ๋ฅผ ๋ช ํํ ๊ธฐ์
์ด์ ๊ฐ์ด ๋ช ํํ ๊ฐ์ด๋๋ผ์ธ์ ์์ฑํ๋ฉด, annotator ๊ฐ์ ์ผ๊ด๋ ์์ ์ด ์ด๋ฃจ์ด์ง๊ณ , ์ข์ ํ์ง์ ๋ฐ์ดํฐ์ ๊ตฌ์ถ์ ํฐ ๋์์ด ๋ฉ๋๋ค.
2. Inter-Annotator Agreement (IAA)
Annotation ๋ฐ์ดํฐ์ ํ์ง์ annotator๋ค์ด ์ผ๋ง๋ ์ผ๊ด๋๊ฒ ๋ผ๋ฒจ๋งํ๋์ง์ ๋ฌ๋ ค ์์ต๋๋ค. Inter-Annotator Agreement (IAA) ๋ ์ฌ๋ฌ annotator๊ฐ ์์ฑํ ๋ผ๋ฒจ์ ์ผ์น๋๋ฅผ ํ๊ฐํ๋ ์งํ๋ก, ๋ํ์ ์ผ๋ก Cohen's Kappa, Fleiss' Kappa, Krippendorff's Alpha ๋ฑ์ด ์ฌ์ฉ๋ฉ๋๋ค.
2-1. Cohen's Kappa
-
์ ์:
๋ ๋ช ์ annotator๊ฐ ๋ผ๋ฒจ๋งํ ๊ฒฐ๊ณผ๊ฐ ์ฐ์ฐํ ์ผ์นํ ๊ฐ๋ฅ์ฑ์ ์ ๊ฑฐํ๊ณ , ์ค์ ์ผ์น ์ ๋๋ฅผ ์ธก์ ํฉ๋๋ค. -
์์:
: ๊ด์ธก๋ ์ผ์น๋ : ์ฐ์ฐํ ์ผ์นํ ํ๋ฅ
-
ํด์:
- ฮบ<0\kappa < 0: Poor
- 0.0 - 0.2: Slight
- 0.2 - 0.4: Fair
- 0.4 - 0.6: Moderate
- 0.6 - 0.8: Substantial
- 0.8 - 1.0: Almost Perfect
์ผ๋ฐ์ ์ผ๋ก 0.6 ์ด์์ด๋ฉด ์ผ์น๋๊ฐ ๋ณดํต ์ด์์ด๋ผ๊ณ ํ๊ฐํฉ๋๋ค.
2-2. Fleiss' Kappa
-
์ ์:
์ธ ๋ช ์ด์์ annotator๊ฐ ์์ฑํ ๋ผ๋ฒจ์ ์ผ๊ด์ฑ์ ํ๊ฐํ ๋ ์ฌ์ฉํฉ๋๋ค. -
์์:
: ๋ชจ๋ ํญ๋ชฉ์ ๋ํ ํ๊ท ์ผ์น๋ : ๋ฌด์์ ์ ํ ์ ๊ธฐ๋๋๋ ํ๊ท ์ผ์น๋
-
ํด์:
Cohen's Kappa์ ์ ์ฌํ ๊ธฐ์ค์ผ๋ก ํ๊ฐํฉ๋๋ค.
2-3. Krippendorff's Alpha
-
์ ์:
๋ ๋ช ์ด์์ annotator๊ฐ ์์ฑํ ๋ผ๋ฒจ์ ์ผ๊ด์ฑ์ ํ๊ฐํ๋ ์งํ๋ก, ๋ค์ํ ๋ฐ์ดํฐ ์ ํ(๋ช ๋ชฉ, ์์, ๊ฐ๊ฒฉ ๋ฑ)์ ์ ์ฉ ๊ฐ๋ฅํฉ๋๋ค. -
์์:
: ๊ด์ธก๋ ์ฐจ์ด(๋ถ์ผ์น) : ์ฐ์ฐํ ๋ฐ์ํ ๊ฒ์ผ๋ก ๊ธฐ๋๋๋ ์ฐจ์ด
-
ํด์:
- ฮฑ<0.667\alpha < 0.667: ๋ฐ์ดํฐ๋ฅผ ์ฌ๊ฒํ ํ๊ฑฐ๋ ํ๊ธฐ
- 0.667 - 0.8: ์ ์ ์ ์ธ ๊ฒฐ๋ก
- 0.8 ์ด์: ์ ๋ขฐํ ์ ์๋ ๋ฐ์ดํฐ
๋จ, ๋ณต์กํ ํ์คํฌ์ ์ ์ฉ ์ ๋ถ์ฐ์ ํฌ์ฐฉํ์ง ๋ชปํด ํ๊ณ๊ฐ ์์ ์ ์์ต๋๋ค.
2-4. Kolmogorov-Smirnov (KS) Test
์ต๊ทผ์๋ KS Test๋ฅผ ํ์ฉํ์ฌ annotator๊ฐ ์์ฑํ ๋ผ๋ฒจ ๋ฐ์ดํฐ์ ๋ถํฌ๊น์ง ๊ณ ๋ คํ ์ผ์น๋๋ฅผ ํ๊ฐํ๋ ์ฐ๊ตฌ๋ ์งํ๋๊ณ ์์ต๋๋ค. KS Test๋ ๋ ๋ฐ์ดํฐ ๋ถํฌ ๊ฐ์ ์ฐจ์ด๋ฅผ ํต๊ณ์ ์ผ๋ก ๊ฒ์ ํ ์ ์์ด, ๋จ์ ํ๊ท ์ผ์น๋๋ณด๋ค ๋ ์ธ๋ฐํ ํ๊ฐ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
๊ฒฐ๋ก
์ข์ ๋ฐ์ดํฐ๋ AI ๋ชจ๋ธ ์ฑ๋ฅ ํฅ์์ ํต์ฌ์ ๋๋ค.
- Annotation ๊ฐ์ด๋๋ผ์ธ์ ํตํด ์ผ๊ด๋๊ณ ์ ํํ ๋ผ๋ฒจ๋ง ์์ ์ ์ํํ๋ฉด, ๋ฐ์ดํฐ์ ํ์ง์ ํฌ๊ฒ ํฅ์์ํฌ ์ ์์ต๋๋ค.
- Inter-Annotator Agreement (IAA) ํ๊ฐ ์งํ(Cohen's Kappa, Fleiss' Kappa, Krippendorff's Alpha, KS Test)๋ฅผ ํตํด ๋ฐ์ดํฐ annotation์ ์ผ๊ด์ฑ์ ์ ๋์ ์ผ๋ก ์ธก์ ํ๊ณ , ํ์์ ๊ฐ์ ํ ์ ์์ต๋๋ค.
์ด๋ฌํ ์ ๊ทผ๋ฒ์ ๋ฐ์ดํฐ ์ค์ฌ AI ์ ๋ต์์ ์ข์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ์ฌ ์ต์ข ์ ์ผ๋ก AI ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๊ทน๋ํํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํฉ๋๋ค.
OCR ๋ฐ์ดํฐ ๊ฐ๊ณต ์ ๋ต: Augmentation๊ณผ ํฉ์ฑ ๋ฐ์ดํฐ ์ ์
OCR (Optical Character Recognition)์ ์ด๋ฏธ์ง ๋ด ๊ธ์๋ฅผ ๊ฒ์ถํ๊ณ ์ธ์ํ๋ ์ค์ํ ํ์คํฌ์
๋๋ค. ํ์ง๋ง ์ค์ ์๋น์ค ํ๊ฒฝ์์๋ ๋ฐ์ดํฐ์
์ด ํธํฅ๋๊ณ ์์ด ๋ถ์กฑํ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. Data-centric AI ์ ๊ทผ๋ฒ์์ ๊ฐ์กฐํ๋ ๊ฒ์ฒ๋ผ, ์ข์ ๋ฐ์ดํฐโ์ฆ, ํธํฅ๋์ง ์๊ณ ๊ณจ๊ณ ๋ฃจ ๋ถํฌํ๋ฉฐ ์ผ์ ํ ๊ธฐ์ค์ผ๋ก ๋ผ๋ฒจ๋ง๋ ๋ฐ์ดํฐโ๊ฐ AI ์ฑ๋ฅ ํฅ์์ ํต์ฌ์
๋๋ค.
์ด๋ฒ ํฌ์คํ
์์๋ OCR ํ์คํฌ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ๋ ๋ ๊ฐ์ง ์ฃผ์ ์ ๋ต, ๋ฐ์ดํฐ ์ฆ๊ฐ (Augmentation) ๊ณผ ํฉ์ฑ ๋ฐ์ดํฐ ์ ์ ์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1. ๋ฐ์ดํฐ ์ฆ๊ฐ (Augmentation)
1-1. ๋ฐ์ดํฐ ์ฆ๊ฐ์ ํ์์ฑ
-
๋ฐ์ดํฐ ๋ถ๊ท ํ ํด์:
์ฒ์ ์์งํ ๋ฐ์ดํฐ๋ ์์ด ์ ๊ณ ํธํฅ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ฆ๊ฐ์ ํตํด ๋ค์ํ ๋ณํ์ ์ฃผ์ด ๋ฐ์ดํฐ ๋ถํฌ๋ฅผ ๊ณ ๋ฅด๊ฒ ํ๊ณ , ๋ชจ๋ธ์ ์ผ๋ฐํ ์ฑ๋ฅ์ ํฅ์์ํฌ ์ ์์ต๋๋ค. -
๋ค์์ฑ ์ฆ๊ฐ:
๋ค์ํ ๊ฐ๋, ๋ฐ๊ธฐ, ๋ฐฐ๊ฒฝ ๋ฑ ์ฌ๋ฌ ์กฐ๊ฑด์์์ ๋ณํ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ์ฌ, ์ค์ ํ๊ฒฝ์์ ๋ฐ์ํ ์ ์๋ ๋ค์ํ ์ํฉ์ ๋์ํ ์ ์์ต๋๋ค.
1-2. OCR ํ์คํฌ์์์ Augmentation ์ ์ฃผ์ ์ฌํญ
์ผ๋ฐ์ ์ธ geometric transform (Random Crop, Random Rotation ๋ฑ)์ OCR์ ๊ทธ๋๋ก ์ ์ฉํ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
- ๋ฌธ์ ์ :
- ๊ธ์ ์๋ฆผ: ์ฆ๊ฐ ๊ณผ์ ์์ ํ ์คํธ ์์ญ(๊ฐ์ฒด)์ด ์๋ฆฌ๊ฑฐ๋ ์ผ๋ถ๋ง ํฌํจ๋๋ ๊ฒฝ์ฐ, ๋ชจ๋ธ ํ์ต ์ ํผ๋์ ์ด๋ํ๊ฑฐ๋ positive sample์ ๋น์จ์ด ๋ฎ์์ ธ ์ฑ๋ฅ์ด ์ ํ๋ ์ ์์ต๋๋ค.
- ๋ฐฐ๊ฒฝ๊ณผ์ hard negative sampling ๋ถ์กฑ:
๊ฐ์ฒด๋ฅผ ๋ฐ๋์ ํฌํจํ๋๋ก ๊ท์น์ ์ ์ฉํ๋ฉด, ํ ์คํธ์ ๋ฉ๋ฆฌ ์๋ ๋ฐฐ๊ฒฝ์์๋ hard negative sampling์ด ์ด๋ ค์์ง ์ ์์ต๋๋ค. - ๋ฐ์ง ์์ญ ํธํฅ:
๊ฐ์ฒด ์๋ฆผ์ ๋ฐฉ์งํ๊ธฐ ์ํ ๊ท์น์ผ๋ก ์ธํด, ๋ฐ์ง๋ ์์ญ์์ ์ํ๋ง์ด ์ด๋ ค์์ ธ ๋ฐ์ดํฐ ๋ถํฌ์ bias๊ฐ ์๊ธธ ์ ์์ต๋๋ค.
1-3. ํด๊ฒฐ ๋ฐฉ์
- Augmentation ์ ํ ๊ท์น ์ ์ฉ:
- ์ต์ 1๊ฐ ์ด์ ํ ์คํธ ๊ฐ์ฒด ํฌํจ: ์ฆ๊ฐ ์, ์ด๋ฏธ์ง ๋ด ์ต์ํ ํ๋์ ํ ์คํธ ์์ญ์ด ๋ฐ๋์ ํฌํจ๋๋๋ก ํฉ๋๋ค.
- ๊ฐ์ฒด ์๋ฆผ ๋ฐฉ์ง: ์ด๋ฏธ์ง ์ฆ๊ฐ ํ ์๋ฆฐ ํ ์คํธ ์์ญ์ ๋ง์คํน ์ฒ๋ฆฌํ์ฌ ํ์ต์์ ๋ฌด์ํ ์ ์๋๋ก ์ค์ ํฉ๋๋ค.
- Hard Negative Mining ๊ธฐ๋ฒ:
๋ฐฐ๊ฒฝ ์์ญ์์ ์ด๋ ค์ด ์ํ์ ๋ณ๋๋ก ์ถ์ถํ์ฌ ํ์ต์ ํ์ฉํ๋ฉด, ์ ์ฒด ๋ฐ์ดํฐ์ ์ ๋ค์์ฑ์ ๋ณด์ํ ์ ์์ต๋๋ค.
2. ํฉ์ฑ ๋ฐ์ดํฐ ์ ์
2-1. ํฉ์ฑ ๋ฐ์ดํฐ ์ ์์ ํ์์ฑ
-
๋ฐ์ดํฐ ์ ์ฆ๋:
์ค์ ๋ฐ์ดํฐ๋ฅผ ๋๋์ผ๋ก ์์งํ๋ ๊ฒ์ ๋น์ฉ๊ณผ ์๊ฐ์ด ๋ง์ด ์์๋๋ฏ๋ก, ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ฆ๊ฐํ ์ ์์ต๋๋ค. -
๊ฐ์ธ์ ๋ณด ๋ฐ ๋ผ์ด์ผ์ค ์ ์ฝ ํด์:
ํฉ์ฑ ๋ฐ์ดํฐ๋ ์ค์ ๋ฐ์ดํฐ์ ๋ฌ๋ฆฌ ๊ฐ์ธ์ ๋ณด๋ ๋ผ์ด์ผ์ค ๋ฌธ์ ์์ ์์ ๋กญ๊ณ , ์ํ๋ ํํ์ ์ธ๋ฐํ annotation์ ์ป์ ์ ์์ต๋๋ค. -
๋น์ฉ ํจ์จ์ฑ:
ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๋ ๋น์ฉ์ ์๋์ ์ผ๋ก ๋ฎ์ผ๋ฉฐ, ๋ค์ํ ํ๊ฒฝ๊ณผ ์กฐ๊ฑด์ ์ฝ๊ฒ ์์ฑํ ์ ์์ต๋๋ค.
2-2. ํฉ์ฑ ๋ฐ์ดํฐ ์ ์ ๋๊ตฌ
๋ค์๊ณผ ๊ฐ์ ๋๊ตฌ๋ค์ ํ์ฉํ์ฌ OCR ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ์ ์ํ ์ ์์ต๋๋ค.
- TextRecognitionDataGenerator:
ํ ์คํธ ์ธ์์ ์ํ ํฉ์ฑ ๋ฐ์ดํฐ ์์ฑ ๋๊ตฌ. - SynthText:
์์ฐ์ค๋ฌ์ด ํ ์คํธ ๋ฐฐ๊ฒฝ ํฉ์ฑ์ ์ํ ๋ํ์ ์ธ ๋๊ตฌ. - SynthText3D:
3D ํ๊ฒฝ์์ ํ ์คํธ๋ฅผ ํฉ์ฑํ์ฌ ๋ค์ํ ๊ฐ๋์ ์๊ณก์ ์ ์ฉํ ์ ์๋ ๋๊ตฌ. - UnrealText:
Unreal Engine์ ํ์ฉํ์ฌ ๋ณด๋ค ์ฌ์ค์ ์ธ ํฉ์ฑ ๋ฐ์ดํฐ ์ ์ ๊ฐ๋ฅ.
2-3. ํฉ์ฑ ๋ฐ์ดํฐ ํ์ฉ ์ ๋ต
- Pre-training:
ํฉ์ฑ ๋ฐ์ดํฐ๋ก ๋ชจ๋ธ์ ํ ๋ฒ ๋ ์ฌ์ ํ์ต(pre-train)ํ์ฌ, ๊ธฐ๋ณธ์ ์ธ ํ ์คํธ ์ธ์ ๋ฅ๋ ฅ์ ํฅ์์ํต๋๋ค. - Fine-tuning:
์ดํ ์ค์ ์์งํ train dataset์ผ๋ก ๋ชจ๋ธ์ fine-tuningํ์ฌ, ํฉ์ฑ ๋ฐ์ดํฐ์ ์ค์ ๋ฐ์ดํฐ ๊ฐ์ ์ฐจ์ด๋ฅผ ๋ณด์ํฉ๋๋ค.
๊ฒฐ๋ก
OCR ํ์คํฌ์์ ๋ชจ๋ธ ์ฑ๋ฅ์ ๊ทน๋ํํ๊ธฐ ์ํด์๋ ์ข์ ๋ฐ์ดํฐ์ ํ๋ณด๊ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค.
- Augmentation:
์ ์ ํ ๋ฐ์ดํฐ ์ฆ๊ฐ ๊ธฐ๋ฒ์ ํตํด, ๊ธฐ์กด์ ์ ํ์ ๋ฐ์ดํฐ๋ฅผ ๋ค์ํ๊ณ ๊ท ํ ์๊ฒ ํ์ฅํ ์ ์์ต๋๋ค. ๋ค๋ง, OCR ํน์ฑ์ ๋ง๊ฒ ํ ์คํธ ๊ฐ์ฒด๊ฐ ์๋ฆฌ์ง ์๋๋ก ์ธ์ฌํ๊ฒ ์ค๊ณํด์ผ ํฉ๋๋ค. - ํฉ์ฑ ๋ฐ์ดํฐ ์ ์:
ํฉ์ฑ ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ๋ฉด, ๋น์ฉ ํจ์จ์ ์ด๊ณ ๋ค์ํ ์กฐ๊ฑด์ ๋ฐ์ดํฐ๋ฅผ ๋๋์ผ๋ก ํ๋ณดํ ์ ์์ด, pre-training๊ณผ fine-tuning์ ํตํ ์ฑ๋ฅ ํฅ์์ ํฐ ๋์์ด ๋ฉ๋๋ค.
์ด์ ๊ฐ์ด, ๋ฐ์ดํฐ ์ค์ฌ AI ์ ๊ทผ๋ฒ์ ํตํด ๋ณด๋ค ๋์ ํ์ง์ ๋ฐ์ดํฐ๋ฅผ ํ๋ณดํ๋ฉด, OCR ๋ชจ๋ธ์ ์ฑ๋ฅ์ ์ง์์ ์ผ๋ก ๊ฐ์ ํ๊ณ ์์ ์ ์ธ ์๋น์ค ์ด์์ด ๊ฐ๋ฅํด์ง ๊ฒ์ ๋๋ค.