Pair Evaluation 01 KO - teamswyg/laya-tools GitHub Wiki

2,400๊ฐœ ์™ธ๋ถ€ ํ‰๊ฐ€ 01: ํ˜„์žฌ ๋ชจ๋ธ์€ ๊ฐœ์„ ์„ ์ž…์ฆํ•˜์ง€ ๋ชปํ•จ

English ยท ๊ณ ์ • ๊ณ„ํš ยท ์ „์ฒด ์ง‘๊ณ„

์‹ค์ œ 2,400๊ฐœ ์งˆ๋ฌธ/์ฝ”๋“œ ์Œ์„ ํ‰๊ฐ€ํ–ˆ๋‹ค. ๊ธฐ์กด 24๊ฐœ ํ•ฉ์„ฑ ์‹คํ—˜์—์„œ 24/24์˜€๋˜ ๋ชจ๋ธ๋„ ์ด ์™ธ๋ถ€ ์ž๋ฃŒ์—์„œ๋Š” ์‹ค์‚ฌ์šฉ ๊ฐœ์„ ์„ ์ž…์ฆํ•˜์ง€ ๋ชปํ–ˆ๋‹ค. ๋ชจ๋“  ๋ชจ๋ธ์˜ ์Šน๊ฒฉ์„ ๋ณด๋ฅ˜ํ•œ๋‹ค. ์ด ๊ฒฐ๊ณผ๋Š” ๊ด€๋ จ์„ฑ ๋ถ„๋ฅ˜ ์‹œํ—˜์ด๋ฉฐ ์ €์žฅ์†Œ ์„ ํƒยทํ›„๋ณด ๊ฒ€์ƒ‰ยทLLM ๋น„์šฉ ์ ˆ๊ฐ ํ‰๊ฐ€๊ฐ€ ์•„๋‹ˆ๋‹ค.

๋ถ„๋ฆฌ์™€ ํ‰๊ฐ€ ์ ˆ์ฐจ

์•ž์„œ ๊ฐ์‚ฌํ•œ CoSQA ์›์ฒœ SHA256์„ ๊ณ ์ •ํ–ˆ๋‹ค. ์งˆ๋ฌธ์€ ์†Œ๋ฌธ์ž/๊ณต๋ฐฑ ์ •๊ทœํ™”, ์ฝ”๋“œ๋Š” ๊ณต๋ฐฑ ์—ฐ์†์„ ํ•˜๋‚˜๋กœ ์ •๊ทœํ™”ํ•˜์—ฌ ๋™์ผ ์งˆ๋ฌธ ๋˜๋Š” ๋™์ผ ์ฝ”๋“œ๋กœ ์—ฐ๊ฒฐ๋œ ์‚ฌ๋ก€๋ฅผ ๊ฐ™์€ ๊ทธ๋ฃน์— ๋„ฃ์—ˆ๋‹ค. ์ฝ”๋“œ ๊ณต๋ฐฑ ์ •๊ทœํ™”๋Š” ๋ฌธ์ž์—ด ์•ˆ์˜ ๊ณต๋ฐฑ๋„ ํ•ฉ์น  ์ˆ˜ ์žˆ์–ด ๋ณด์ˆ˜์ ์œผ๋กœ ๋‹ค๋ฅธ ์ฝ”๋“œ๋ฅผ ๊ฐ™์€ ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ์„ ์ˆ˜ ์žˆ๋‹ค. ๋ณ€์ˆ˜๋ช… ๋ณ€๊ฒฝ ๋“ฑ ๋ชจ๋“  ์˜๋ฏธ ๋ณต์ œ ํƒ์ง€๋ฅผ ๋ณด์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ €์žฅ์†Œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ์—†์–ด ์ €์žฅ์†Œ ๋‹จ์œ„ ๋ถ„๋ฆฌ๋ฅผ ์ฃผ์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค.

๊ทธ๋ฃน ๋Œ€ํ‘œ ํ•ด์‹œ์™€ ๊ณ ์ • seed๋กœ ์ˆœ์„œ๋ฅผ ์ •ํ•˜๊ณ , ๋ผ๋ฒจยท๊ธธ์ดยท๋ชจ๋ธ ์ ์ˆ˜์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ๋ถ„ํ• ํ–ˆ๋‹ค. ์ตœ์ข… ์ตœ์†Œ 2,400๊ฐœ๋ฅผ ์ถฉ์กฑํ•œ ๋’ค ๋‹ค์Œ ๊ทธ๋ฃน์œผ๋กœ ๋„˜์–ด๊ฐ”์œผ๋ฉฐ ๊ทธ๋ฃน์„ ์ชผ๊ฐœ์ง€ ์•Š์•˜๋‹ค.

๋ถ„ํ•  ์งˆ๋ฌธ/์ฝ”๋“œ ์Œ ์—ฐ๊ฒฐ ๊ทธ๋ฃน ์ด๋ฒˆ ์‚ฌ์šฉ
development 12,189 3,754 BM25 ๋ฌธ์„œ ํ†ต๊ณ„๋งŒ; ๋ชจ๋ธ ๊ฐ€์ค‘์น˜ ํ•™์Šต ์—†์Œ
validation 607 175 ์‚ฌ์šฉ ์•ˆ ํ•จ
calibration 604 176 ๊ด€๋ จ/๋น„๊ด€๋ จ ์ž„๊ณ„๊ฐ’ ์„ ํƒ
final 2,400 724 ์ด๋ฒˆ ํ‰๊ฐ€
reserve1 2,403 716 ๋ชจ๋ธ ํ‰๊ฐ€ยทํ•™์Šต ์•ˆ ํ•จ
reserve2 2,401 722 ๋ชจ๋ธ ํ‰๊ฐ€ยทํ•™์Šต ์•ˆ ํ•จ

reserve๋„ ๊ทธ๋ฃน ์ƒ์„ฑ/ํ•ด์‹œ ๊ฒ€์ฆ์„ ์œ„ํ•ด ์›๋ฌธ ํŒŒ์ผ์—์„œ ์ฝ์ง€๋งŒ, ํŠน์ง• ํ•™์Šตยท์ ์ˆ˜ ๊ณ„์‚ฐยท์„ฑ๋Šฅ ์„ ํƒ์—๋Š” ์“ฐ์ง€ ์•Š์•˜๋‹ค. โ€˜ํŒŒ์ผ์„ ํ•œ ๋ฒˆ๋„ ์ฝ์ง€ ์•Š์•˜๋‹คโ€™๋Š” ๋œป์€ ์•„๋‹ˆ๋‹ค. ๋‹ค์Œ ๋ชจ๋ธ ํ•™์Šต์—๋Š” development๋งŒ, ์„ ํƒ์—๋Š” validation, ์ž„๊ณ„๊ฐ’์—๋Š” calibration์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋ฒˆ final์€ ์ด์ œ ๊ด€์ฐฐ๋œ ๊ฐœ๋ฐœ ์ฆ๊ฑฐ๋กœ ๊ฐ„์ฃผํ•œ๋‹ค.

ํ˜„์žฌ synthetic ๋ชจ๋ธ 8๊ฐœ์˜ ํ•ด์‹œ์™€ ๊ณ„ํšยท์›์ฒœยท๋ถ„ํ• ์„ freeze ๋‹จ๊ณ„์—์„œ ๊ณ ์ •ํ•˜๊ณ  evaluate ๋‹จ๊ณ„์—์„œ ์žฌ๊ณ„์‚ฐํ•ด ๋™์ผ์„ฑ์„ ํ™•์ธํ•œ ๋‹ค์Œ ์ ์ˆ˜๋ฅผ ๋ƒˆ๋‹ค. ์ตœ์ข… ์Œ์€ ๊ด€๋ จ 1,171 / ๋น„๊ด€๋ จ 1,229๊ฐœ๋‹ค. CoSQA์—์„œ ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋ฅผ ํ•™์Šตํ•˜์ง€ ์•Š์•˜์ง€๋งŒ 604๊ฐœ ๋ผ๋ฒจ๋กœ ์ž„๊ณ„๊ฐ’์„ ์ •ํ–ˆ์œผ๋ฏ€๋กœ ์™„์ „ ๋ฌด๋ณด์ • zero-shot ๋ถ„๋ฅ˜๋ผ๊ณ  ๋ถ€๋ฅด์ง€ ์•Š๋Š”๋‹ค.

๊ฒฐ๊ณผ

๊ท ํ˜• ์ •ํ™•๋„๋Š” ๊ด€๋ จ/๋น„๊ด€๋ จ ๋‘ ์ข…๋ฅ˜์˜ ์ •๋‹ต๋ฅ ์„ ๊ฐ๊ฐ ๊ตฌํ•œ ๋’ค ํ‰๊ท ํ•œ ๊ฐ’์ด๋‹ค. ๋ชจ๋“  2,400๊ฐœ๋ฅผ ํฌํ•จํ•˜๋ฉฐ ๋ชจ๋ธ ์ž…๋ ฅ ํ•œ๋„๋ฅผ ๋„˜์€ 151๊ฐœ(6.29%)๋Š” BM25์™€ ๊ทธ ๋ณด์ • ์ž„๊ณ„๊ฐ’์œผ๋กœ ๋ณต๊ท€ํ–ˆ๋‹ค. ์ด ์ž๋ฃŒ์— ๋งž์ง€ ์•Š๋Š” ์งง์€/๊ธด ์ž…๋ ฅ์„ ๊ณจ๋ผ ๋ฒ„๋ฆฌ์ง€ ์•Š์•˜๋‹ค.

๋ฐฉ๋ฒ• ๊ท ํ˜• ์ •ํ™•๋„ BM25 ๋Œ€๋น„ ์ฐจ์ด์˜ 95% ๊ตฌ๊ฐ„
BM25 52.62% ๊ธฐ์ค€
๋‹จ์–ด ๊ต์ง‘ํ•ฉ 53.22% โˆ’1.19 ~ +2.43%p
FP32 seed1729 54.15% โˆ’0.31 ~ +3.31%p
INT8 seed1729 54.31% โˆ’0.17 ~ +3.49%p
FP32 seed2718 54.19% โˆ’0.31 ~ +3.34%p
INT8 seed2718 54.09% โˆ’0.39 ~ +3.22%p
3์ง„ PTQ seed1729 49.81% โˆ’5.45 ~ โˆ’0.28%p
3์ง„ STE seed1729 49.61% โˆ’5.39 ~ โˆ’0.84%p
3์ง„ PTQ seed2718 50.05% โˆ’5.19 ~ +0.002%p
3์ง„ STE seed2718 51.36% โˆ’3.87 ~ +1.38%p

๊ฐ™์€ 724๊ฐœ ๊ทธ๋ฃน์„ ์Œ์œผ๋กœ ์žฌํ‘œ์ง‘ํ•˜๋Š” 500ํšŒ bootstrap์˜ percentile ๊ตฌ๊ฐ„์ด๋‹ค. 2,400๊ฐœ ๋…๋ฆฝ ํ‘œ๋ณธ์ด๋ผ๊ณ  ๊ฐ€์ •ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๋ฃน ์•ˆ ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ๋ฐ˜์˜ํ•˜์ง€๋งŒ ๋‚จ์•„ ์žˆ๋Š” ๊ทธ๋ฃน ๊ฐ„ ์˜๋ฏธ ์œ ์‚ฌ์„ฑ, ์ถœ์ฒ˜ ํŽธํ–ฅ, 8๋ชจ๋ธ ๋™์‹œ ๊ด€์ฐฐ์— ๋Œ€ํ•œ ๋‹ค์ค‘ ๋น„๊ต ๋ณด์ •์€ ํ•ด๊ฒฐํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ชจ๋‘ ํ•˜ํ•œ์ด 0 ์ดํ•˜๋ผ ์‚ฌ์ „์˜ ์–‘์ˆ˜ ํ•˜ํ•œ ๊ธฐ์ค€์„ ํ†ต๊ณผํ•œ ๋ชจ๋ธ์ด ์—†๋‹ค. 3์ง„ ์ผ๋ถ€๋Š” BM25๋ณด๋‹ค ๋‚ฎ์€ ์ชฝ์˜ ๊ตฌ๊ฐ„์ด๋‹ค.

์ „์ฒด ์ •ํ™•๋„ยทํ˜ผ๋™ํ–‰๋ ฌยท์ •๋ฐ€๋„ยท์žฌํ˜„์œจยทAUC์™€ ๋ฒ”์œ„ ์•ˆ/๋ฐ– ํ•˜์œ„ ๊ฒฐ๊ณผ๋Š” JSON์— ์žˆ๋‹ค. ๋ชจ๋ธ์˜ EligibleAUC๋Š” ๋ฒ”์œ„ ์•ˆ 2,249๊ฐœ์—๋งŒ ํ•ด๋‹นํ•˜๋ฏ€๋กœ BM25 ์ „์ฒด 2,400๊ฐœ AUC์™€ ๋ฐ”๋กœ ๋น„๊ตํ•˜์ง€ ์•Š๋Š”๋‹ค. InScopeMetrics๋ฅผ ์“ฐ๋ฉด ๊ฐ™์€ 2,249๊ฐœ๋ฅผ ๋น„๊ตํ•  ์ˆ˜ ์žˆ๋‹ค. ์›์‹œ ๋ชจ๋ธ ์ ์ˆ˜๋Š” ํ™•๋ฅ ์ด ์•„๋‹ˆ๋‹ค.

์ธก์ •ยท์žฌํ˜„

  • ์„ ํƒ ๋ชจ๋ธ๊ณผ raw source์˜ ํ•ด์‹œ๋ฅผ ๊ฒ€์ฆํ–ˆ๋‹ค. frozen manifest SHA256: 19001225d9af3dc59ab474ff37313fbe82673d4a5b5c425f43941c63095998a8.
  • ์žฌ์‹คํ–‰์˜ ์‚ฌ๋ก€๋ณ„ ์ถœ๋ ฅ์ด ์ฒ˜์Œ ์‹คํ–‰๊ณผ byte ๋‹จ์œ„๋กœ ๋™์ผํ–ˆ๋‹ค. ์‚ฌ๋ก€๋ณ„ ์ถ”์ ์€ ์›๋ฌธยท๋ผ๋ฒจ ์žฌ๋ฐฐํฌ๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ๋กœ์ปฌ์—๋งŒ ๋‚จ๊ธฐ๊ณ , ๊ณต๊ฐœ ๊ฒฐ๊ณผ์—๋Š” trace hash์™€ ์ง‘๊ณ„๋ฅผ ์‹ฃ๋Š”๋‹ค.
  • Apple M4 Pro / Go1.27.1 / CPU. ์ฒซ ์ „์ฒด ํ”„๋กœ์„ธ์Šค wall0.78์ดˆ, userCPU0.43์ดˆ, ์ตœ๋Œ€RSS61,521,920B(58.67MiB), swap0. ์›์ฒœ ๋กœ๋”ฉยท๋ถ„ํ•  ์žฌํ™•์ธยท8๋ชจ๋ธยท2๊ธฐ์ค€์„ ยทbootstrap๋ฅผ ํฌํ•จํ•œ ํ‰๊ฐ€ ๋„๊ตฌ ๋น„์šฉ์ด๋ฉฐ ๋‹จ์ผ ์ถ”๋ก  latency๋‚˜ ์—์ด์ „ํŠธ ์ „์ฒด ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋‹ค. ๊ณต๊ฐœ JSON Seconds๋Š” ๋กœ๋”ฉ ์ดํ›„ ๊ตฌ๊ฐ„์ด๋ผ OS wall๊ณผ ๋‹ค๋ฅด๋‹ค.
mkdir -p .cache/pair-eval
# ์›์ฒœ๊ณผ ๊ธฐ์กด ๋กœ์ปฌ ํ•™์Šต ๋ชจ๋ธ์€ ์•ž ๋ฌธ์„œ์˜ pinned ์ ˆ์ฐจ๋กœ ์ค€๋น„ํ•œ๋‹ค.
go run ./cmd/riido-paireval --input .cache/semantic-scale/cosqa-all.json \
  --selection .cache/semantic-learning/local-train/selection.json \
  --out .cache/pair-eval/frozen
go run ./cmd/riido-paireval --stage evaluate \
  --input .cache/semantic-scale/cosqa-all.json \
  --selection .cache/semantic-learning/local-train/selection.json \
  --frozen .cache/pair-eval/frozen/frozen.json --out .cache/pair-eval/evaluated

ํด๋”๋Š” ์ƒˆ ๊ฒƒ์ด์–ด์•ผ ํ•œ๋‹ค. ํ•™์Šต ์žฌ์‹คํ–‰์˜ ์‹œ๊ฐ„ ํ•„๋“œ๊ฐ€ ๋‹ค๋ฅด๋ฉด selection/frozen hash๋Š” ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์ง€๋งŒ ๋ชจ๋ธ ๊ณ„์ˆ˜ ํ•ด์‹œ์™€ ๋™์ผ ์ž…๋ ฅ์˜ ์‚ฌ๋ก€๋ณ„ ๊ฒฐ๊ณผ๋Š” ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ์ข…๋ฃŒ ์ฝ”๋“œ 0์€ ์ธก์ • ์„ฑ๊ณต์ด๋ฉฐ ๋ชจ๋ธ ํ’ˆ์งˆ ํ•ฉ๊ฒฉ์„ ๋œปํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ชจ๋“  ๊ฒฐ๊ณผ Promotion=false.

๋‹ค์Œ PDCA

์ž‘์€ ๋ชจ๋ธ์˜ ๊ตฌ์กฐ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒฐ๋ก ๋„ ์•„์ง ์ด๋ฅด๋‹ค. ์ง€๊ธˆ ๊ฐ€์ค‘์น˜๋Š” retain/discard ํ•ฉ์„ฑ ์ž๋ฃŒ๋กœ๋งŒ ํ•™์Šตํ–ˆ์œผ๋ฏ€๋กœ ์™ธ๋ถ€ ์ฝ”๋“œ ์งˆ์˜์— ๋งž๋Š” ํ•™์Šต์ด ํ•„์š”ํ•˜๋‹ค. development 12,189๊ฐœ์™€ validation607๊ฐœ๋ฅผ ์‚ฌ์šฉํ•ด ์‹ค์ œ ๊ด€๋ จ์„ฑ ํ•™์Šต๊ณผ ๋น„ํ•™์Šต ๋Œ€์กฐ๊ตฐ์„ ๋น„๊ตํ•˜๊ณ , ์„ ํƒยท๋ณด์ •์„ ๋งˆ์นœ ๋’ค reserve1์˜ 2,403๊ฐœ๋ฅผ ํ•œ ๋ฒˆ ํ‰๊ฐ€ํ•œ๋‹ค. ํ˜„์žฌ final์„ ๋ณด๊ณ  hyperparameter๋ฅผ ๋‹ค์‹œ ๊ณจ๋ผ ๊ฐ™์€ final์—์„œ ๊ฐœ์„ ์„ ์ฃผ์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค. ์‹ค์ œ ํ›„๋ณด ๊ฒ€์ƒ‰ ์ž๋ฃŒ์™€ ์‚ฌ์šฉ์ž ์ž‘์—… ๊ฒ€์ฆ์€ ์ด ๋ถ„๋ฅ˜ ์‹œํ—˜๊ณผ ๋ณ„๋„๋กœ ๊ณ„์† ํ•„์š”ํ•˜๋‹ค. ์ด๋ฒˆ ์‹คํŒจ ๋ชจ๋ธ์„ ์‹ค์‚ฌ์šฉ ๊ถŒ์žฅํ•˜๊ฑฐ๋‚˜ ์ž๋™ ์ ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.