BGE-m3-ko Inversion (V3)

Reconstructs Korean text from BAAI/bge-m3 sentence embeddings (vec2text). Meaning is recovered at any length (re-embedding cos 0.92โ€“0.95), but exact wording degrades with length โ€” a study of the privacy risk of leaked embeddings. Korean model card below; code and English docs: github.com/lifehardmod/bge-m3-ko-vec2text.


BAAI/bge-m3 ๋ฌธ์žฅ ์ž„๋ฒ ๋”ฉ์—์„œ ํ•œ๊ตญ์–ด ์›๋ฌธ์„ ๋˜๋Œ๋ฆฌ๋Š” ๋ชจ๋ธ์ด๋‹ค. ์ž„๋ฒ ๋”ฉ ๋ฒกํ„ฐ๋งŒ ์ฃผ์–ด์กŒ์„ ๋•Œ ๊ทธ๊ฒƒ์ด ์–ด๋–ค ๋ฌธ์žฅ์—์„œ ๋‚˜์™”๋Š”์ง€ ์–ผ๋งˆ๋‚˜ ๋ณต์›๋˜๋Š”์ง€๋ฅผ ๋‹ค๋ฃจ๋ฉฐ, ๋ฒกํ„ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋œ ์ž„๋ฒ ๋”ฉ์ด ์œ ์ถœ๋์„ ๋•Œ์˜ ํ”„๋ผ์ด๋ฒ„์‹œ ์œ„ํ—˜์„ ๊ฐ€๋Š ํ•˜๋Š” ์šฉ๋„๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

๊ตฌ์กฐ๋Š” Morris et al. (2023)์˜ vec2text๋ฅผ ๋”ฐ๋ฅธ๋‹ค. ์ž„๋ฒ ๋”ฉ์„ ํ•œ ๋ฒˆ์— ๋ฌธ์žฅ์œผ๋กœ ํŽผ์น˜๋Š” inversion ๋ชจ๋ธ๊ณผ, ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ์ž„๋ฒ ๋”ฉํ•ด ๋ชฉํ‘œ ๋ฒกํ„ฐ์™€์˜ ์ฐจ์ด๋ฅผ ์ค„์—ฌ๊ฐ€๋ฉฐ ์—ฌ๋Ÿฌ ๋ฒˆ ๊ณ ์ณ ์“ฐ๋Š” corrector ๋ชจ๋ธ๋กœ ์ด๋ฃจ์–ด์ง„๋‹ค. ์ด ์ €์žฅ์†Œ๋Š” ๊ทธ์ค‘ ํ•œ ๋ถ€๋ถ„์ด๋ฉฐ, ๋‚˜๋จธ์ง€ ํ•˜๋‚˜์™€ ํ•จ๊ป˜ ์จ์•ผ ํ•œ๋‹ค.

  • inversion: terriapurplewave/bge-m3-ko-inversion-v3
  • corrector: terriapurplewave/bge-m3-ko-corrector-v3

์ด๋ฆ„์ด ๋น„์Šทํ•œ ์ด์ „ ๋ชจ๋ธ๊ณผ๋Š” ๋ณ„๊ฐœ๋‹ค. bge-m3-ko-inversion(V1)์€ ์ž„๋ฒ ๋”๊ฐ€ dragonkue/BGE-m3-ko(ํ•œ๊ตญ์–ด ํŒŒ์ธํŠœ๋‹ํŒ)์ด๊ณ  64ํ† ํฐยท์œ„ํ‚ค ๋‹จ๋…์œผ๋กœ ํ•™์Šตํ•œ ๋‹ค๋ฅธ ๋ชจ๋ธ์ด๋‹ค. ์ด V3๋Š” ์ž„๋ฒ ๋”๊ฐ€ ํ‘œ์ค€ BAAI/bge-m3, ์ตœ๋Œ€ 256ํ† ํฐ, 6๊ฐœ ๋„๋ฉ”์ธ ํ•™์Šต์œผ๋กœ ์™„์ „ํžˆ ์ƒˆ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค. ์ž„๋ฒ ๋”๊ฐ€ ๋‹ค๋ฅด๋ฏ€๋กœ ๋‘ ๋ชจ๋ธ์€ ํ˜ธํ™˜๋˜์ง€ ์•Š๋Š”๋‹ค(V1 ๊ฐ€์ค‘์น˜์™€ V3 ๊ฐ€์ค‘์น˜๋ฅผ ์„ž์–ด ์“ธ ์ˆ˜ ์—†๋‹ค).

๊ตฌ์„ฑ

  • ์ž„๋ฒ ๋”(๊ณ ์ •): BAAI/bge-m3, dense 1024์ฐจ์›, CLS ํ’€๋ง + L2 ์ •๊ทœํ™”
  • ๋””์ฝ”๋” ๋ฐฑ๋ณธ: google/mt5-base
  • ์ตœ๋Œ€ ๊ธธ์ด: 256 ํ† ํฐ
  • ํ•™์Šต ๋ฐ์ดํ„ฐ: ํ•œ๊ตญ์–ด 4.1M ์ฒญํฌ. ์œ„ํ‚ค๋ฐฑ๊ณผ, ์›นํ…์ŠคํŠธ(HAERAE KOREAN-WEBTEXT), ๋‰ด์Šค, ๊ต๊ณผ์„œํ˜• ํ•ฉ์„ฑ๋ฌธ, ์ง€์‹œ-์‘๋‹ต, QA ๋ฌธ๋งฅ์˜ ์—ฌ์„ฏ ๋„๋ฉ”์ธ. ํ† ํฐ ๊ธฐ์ค€์œผ๋กœ ์ž˜๋ผ ์ž„๋ฒ ๋”ฉ ๋‹จ๊ณ„์—์„œ ์ ˆ๋‹จ์ด ์ƒ๊ธฐ์ง€ ์•Š๊ฒŒ ํ–ˆ๊ณ , ๋ฐ˜๋ณตยท์ €ํ’ˆ์งˆ ์ฒญํฌ๋Š” ๊ฑธ๋Ÿฌ๋ƒˆ๋‹ค.
  • ํ•™์Šต: inversion 9.4 epoch, corrector 10 epoch. RTX GPU ํ•œ ์žฅ.

์„ฑ๋Šฅ

ํ•œ๊ตญ์–ด ๊ฒ€์ฆ์…‹(๋ณ„๋„ held-out, ํ•™์Šต ๋ฐ์ดํ„ฐ์™€ ๊ฒน์น˜์ง€ ์•Š์Œ)์—์„œ ์ธก์ •ํ–ˆ๋‹ค. ๊ธธ์ด ๊ตฌ๊ฐ„๋ณ„๋กœ 150๊ฐœ ์ดํ•˜์˜ ๋ฌธ์žฅ์„ ๋ฌด์ž‘์œ„ ์ถ”์ถœ(seed 42)ํ•ด ๋ณต์›ํ•œ ๋’ค ์ง€ํ‘œ๋ฅผ ๊ณ„์‚ฐํ–ˆ๋‹ค. word-F1์€ ์–ด์ ˆ ์ง‘ํ•ฉ, char-F1์€ ์Œ์ ˆ ์ง‘ํ•ฉ์˜ F1์ด๊ณ , cos๋Š” ๋ณต์›๋ฌธ์„ ๋‹ค์‹œ ์ž„๋ฒ ๋”ฉํ•ด ์›๋ณธ ๋ฒกํ„ฐ์™€ ์žฐ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„๋‹ค. ํ‘œ์˜ corrector ์ˆ˜์น˜๋Š” 20 ์Šคํ…ยทbeam 4, N=80, ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 95% ์‹ ๋ขฐ๊ตฌ๊ฐ„์ด๋‹ค.

inversion ๋‹จ๋…์€ ์ž„๋ฒ ๋”ฉ์„ ํ•œ ๋ฒˆ์— ํŽผ์นœ ์ดˆ์•ˆ์ด๊ณ , corrector๋Š” ๊ทธ ์ดˆ์•ˆ์„ 20ํšŒ ๊ณ ์ณ ์“ด ๊ฒฐ๊ณผ๋‹ค. ๋‘˜์„ ๋‚˜๋ž€ํžˆ ๋‘๋ฉด corrector์˜ ๊ธฐ์—ฌ์™€ ๊ธธ์ด์— ๋”ฐ๋ฅธ ํ•œ๊ณ„๊ฐ€ ํ•จ๊ป˜ ๋“œ๋Ÿฌ๋‚œ๋‹ค.

๊ธธ์ด(ํ† ํฐ) inversion word-F1 corrector word-F1 [95% CI] char-F1 cos
32โ€“80 0.31 0.42 [0.38, 0.46] 0.77 0.95
81โ€“128 0.23 0.28 [0.25, 0.31] 0.71 0.93
129โ€“192 0.18 0.24 [0.22, 0.26] 0.68 0.93
193โ€“256 0.18 0.21 [0.19, 0.23] 0.66 0.92

ํ•œ ๊ธ€์ž๊นŒ์ง€ ๋งž๋Š” ์™„์ „ ์ผ์น˜๋Š” ์‚ฌ์‹ค์ƒ 0์— ๊ฐ€๊น๋‹ค. ์ด๋Š” ๊ฒฐํ•จ์ด๋ผ๊ธฐ๋ณด๋‹ค ์ •๋ณด๋Ÿ‰์˜ ๋ฌธ์ œ๋‹ค. 1024์ฐจ์› ๋ฒกํ„ฐ ํ•˜๋‚˜๊ฐ€ ๋‹ด๋Š” ์ •๋ณด๋Š” ํ•œ์ •๋ผ ์žˆ์–ด, ๋ฌธ์žฅ์ด ๊ธธ์–ด์งˆ์ˆ˜๋ก ๊ฐ™์€ ๋ฒกํ„ฐ๋กœ ๋งคํ•‘๋  ์ˆ˜ ์žˆ๋Š” ์›๋ฌธ ํ›„๋ณด๊ฐ€ ๊ธ‰๊ฒฉํžˆ ๋Š˜์–ด๋‚œ๋‹ค.

ํ•œํŽธ ๋ณต์›๋ฌธ์„ ๋‹ค์‹œ ์ž„๋ฒ ๋”ฉํ–ˆ์„ ๋•Œ์˜ ์ฝ”์‚ฌ์ธ ์œ ์‚ฌ๋„(cos)๋Š” ๊ธธ์ด์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ 0.92~0.95๋กœ ์œ ์ง€๋œ๋‹ค. ์ฆ‰ ์žฌ์ž„๋ฒ ๋”ฉ ๊ธฐ์ค€์œผ๋กœ๋Š” ์›๋ณธ์— ๊ฑฐ์˜ ๋„๋‹ฌํ•˜๋ฉฐ, ๋‚จ์€ ๊ฐ„๊ฒฉ(1 โˆ’ cos โ‰ˆ 0.05โ€“0.08)์€ ๊ธธ์ด๊ฐ€ ๋Š˜์–ด๋„ ํฌ๊ฒŒ ๋ฒŒ์–ด์ง€์ง€ ์•Š๋Š”๋‹ค. ์ด ๊ฐ„๊ฒฉ์€ ์ž„๋ฒ ๋”ฉ์ด paraphrase์— ๋ถˆ๋ณ€ํ•˜๋„๋ก ํ•™์Šต๋˜๋ฉฐ ๋ฒ„๋ฆฐ ์ •๋ณด โ€” ์–ด์ˆœ, ์กฐ์‚ฌ, ๋™์˜์–ด ์„ ํƒ โ€” ์˜ ํ•˜ํ•œ์— ํ•ด๋‹นํ•˜๊ณ , ์–ด๋–ค ๋””์ฝ”๋”ฉ์ด๋‚˜ ์ถ”๊ฐ€ ํ•™์Šต์œผ๋กœ๋„ ๋„˜์„ ์ˆ˜ ์—†๋‹ค. ์ •๋ฆฌํ•˜๋ฉด, ์ž„๋ฒ ๋”ฉ์ด ๋‹ด์€ ์˜๋ฏธ๋Š” ๊ธธ์ด์— ์ƒ๊ด€์—†์ด ๊ฑฐ์˜ ๋‹ค ๋ณต์›๋˜์ง€๋งŒ, ๊ทธ ์˜๋ฏธ๋ฅผ ์›๋ž˜์˜ ์ •ํ™•ํ•œ ํ‘œํ˜„์œผ๋กœ ๋˜๋Œ๋ฆฌ๋Š” ์ผ์€ ๊ธธ์ˆ˜๋ก ๋‹ค๋Œ€์ผ ๋ฌธ์ œ๊ฐ€ ๋˜์–ด ์–ด๋ ค์›Œ์ง„๋‹ค. ์–ด์ ˆ ๋‹จ์œ„ ์ •ํ™•๋„ (word-F1)๊ฐ€ ๊ธธ์ด์— ๋”ฐ๋ผ ๋–จ์–ด์ง€๋Š” ๋ฐ˜๋ฉด ์Œ์ ˆ ๋‹จ์œ„(char-F1)์™€ ์˜๋ฏธ(cos)๊ฐ€ ๋น„๊ต์  ์œ ์ง€๋˜๋Š” ๊ฒƒ์ด ์ด ์„ฑ์งˆ์„ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ค€๋‹ค.

๋ณต์› ์˜ˆ์‹œ

๊ฒ€์ฆ์…‹ ๋ฌธ์žฅ์„ ์ž„๋ฒ ๋”ฉํ•œ ๋’ค ๊ทธ ๋ฒกํ„ฐ๋งŒ์œผ๋กœ ๋ณต์›ํ•œ ๊ฒฐ๊ณผ๋‹ค. ์›๋ฌธ์€ ๋ชจ๋ธ์— ์ฃผ์ง€ ์•Š์•˜๋‹ค. ์ž˜ ๋˜๋Š” ๊ฒฝ์šฐ์™€ ๋ฌด๋„ˆ์ง€๋Š” ๊ฒฝ์šฐ๋ฅผ ํ•จ๊ป˜ ์‹ฃ๋Š”๋‹ค.

์งง์€ ๋ฌธ์žฅ (โ‰ค 80 ํ† ํฐ)

๋‚ ์งœ์™€ ๊ณ ์œ ๋ช…์‚ฌ๊ฐ€ ๊ทธ๋Œ€๋กœ ์‚ด์•„๋‚˜๋Š” ๊ฒฝ์šฐ:

์›๋ฌธ 1998๋…„ 6์›” 29์ผ, ๊ตฌ์กฐ์กฐ์ •์˜ ์ผํ™˜์œผ๋กœ ๋Œ€๋™์€ํ–‰, ๋™ํ™”์€ํ–‰, ๋™๋‚จ์€ํ–‰, ๊ฒฝ๊ธฐ์€ํ–‰, ์ถฉ์ฒญ์€ํ–‰์— ํ‡ด์ถœ๋ช…๋ น์„ ๋‚ด๋ ค 5๊ฐœ ์€ํ–‰๋“ค์ด ์ œ๊ฑฐ๋‹นํ•œ๋‹ค. ๊ณต๋ฌด์›๋„ 98๋…„ ๋‹น์‹œ 5๋งŒ๋ช… ๊ฐ์ถ•๊ณ„ํš์„ ๋ฐœํ‘œํ•˜์—ฌ ์‹คํ–‰์— ๋“ค์–ด๊ฐ”๋‹ค.

๋ณต์› 1998๋…„ 6์›” 29์ผ, ๋Œ€๋™์€ํ–‰, ๋™ํ™”์€ํ–‰, ๊ฒฝ๊ธฐ์€ํ–‰, ์ถฉ์ฒญ์€ํ–‰ ๋“ฑ 5๊ฐœ ์€ํ–‰์ด ๊ตฌ์กฐ์กฐ์ • ๋ช…๋ น์— ๋”ฐ๋ผ ํ‡ด์ถœ๋‹นํ•œ๋‹ค. ๊ตฌ์กฐ์กฐ์ • ๋ช…๋ น์ด ๋‚ด๋ ค์ง„ 5๊ฐœ ์€ํ–‰์€ ๊ณต๋ฌด์› 5๋งŒ๋ช… ๊ฐ์ถ•๊ณ„ํš์— ํฌํ•จ๋˜์—ˆ๋‹ค.

๊ฑฐ์˜ ๊ทธ๋Œ€๋กœ ๋ณต์›๋˜๋Š” ๊ฒฝ์šฐ:

์›๋ฌธ ํ’๋™์ดˆ๋“ฑํ•™๊ต๋Š” ๊ฒฝ๊ธฐ๋„ ๊ณ ์–‘์‹œ ์ผ์‚ฐ๋™๊ตฌ์— ์žˆ๋Š” ๊ณต๋ฆฝ ์ดˆ๋“ฑํ•™๊ต์ด๋‹ค. ํ•™๊ต ์—ฐํ˜ 2006๋…„ 9์›” 1์ผ ๊ฐœ๊ต (โ€ฆ) 2006๋…„ ๊ฐœ๊ต ๊ณ ์–‘์‹œ์˜ ์ดˆ๋“ฑํ•™๊ต

๋ณต์› ํ’๋™์ดˆ๋“ฑํ•™๊ต๋Š” ๊ฒฝ๊ธฐ๋„ ๊ณ ์–‘์‹œ ์ผ์‚ฐ๋™๊ตฌ์— ์žˆ๋Š” ๊ณต๋ฆฝ ์ดˆ๋“ฑํ•™๊ต์ด๋‹ค. ํ•™๊ต ์—ฐํ˜ 2006๋…„ 9์›” 1์ผ ๊ฐœ๊ต (โ€ฆ) 2006๋…„ ๊ฐœ๊ต ๊ณ ์–‘์‹œ์˜ ์ดˆ๋“ฑํ•™๊ต

์งง์•„๋„ ๋ฌด๋„ˆ์ง€๋Š” ๊ฒฝ์šฐ. ๊ณก ์ œ๋ชฉ์ฒ˜๋Ÿผ ์ž„๋ฒ ๋”ฉ์ด ์•ฝํ•˜๊ฒŒ ๋ถ™๋“œ๋Š” ๊ณ ์œ ๋ช…์‚ฌ๋Š” ๋ฐ˜๋ณต์— ๋น ์ง€๊ธฐ ์‰ฝ๋‹ค:

์›๋ฌธ ํ•œ๊ตญ์—์„œ๋„ ์ผ์ฃผ์ผ ๋งŒ์— 1๋งŒ์žฅ์ด ํŒ๋งค๋˜์–ด (โ€ฆ) ์ธ๊ธฐ ๋Œํ’์„ ์ผ์œผ์ผฐ๋‹ค. ์ž์‹ ์˜ ์œ ๋ช…ํ•œ ๋…ธ๋ž˜๋Š” Starlight, Hysteria, Bliss, Blackout.

๋ณต์› ํŠนํžˆ ์œ ๋ช…ํ•œ ๊ณก์œผ๋กœ๋Š” 'Black Light', 'Hysteria', 'Psyche', 'Psyche', 'Psyche' โ€ฆ (๋ฐ˜๋ณต) โ€ฆ ๋“ฑ์ด ์žˆ๋‹ค. 2009

์ค‘๊ฐ„ ๊ธธ์ด (110โ€“150 ํ† ํฐ)

๊ฐœ๋…๊ณผ ์šฉ์–ด๊ฐ€ ์‚ด์•„๋‚˜๊ณ  ํ‘œํ˜„์€ ์žฌ๊ตฌ์„ฑ๋˜๋Š” ๊ฒฝ์šฐ:

์›๋ฌธ ํ™”ํ์˜ ์‹œ๊ฐ„ ๊ฐ€์น˜(TVM)๋Š” ์ž ์žฌ์  ์ˆ˜์ต ๋Šฅ๋ ฅ์œผ๋กœ ์ธํ•ด ํ˜„์žฌ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ™”ํ๊ฐ€ ๋ฏธ๋ž˜์— ๊ฐ™์€ ๊ธˆ์•ก๋ณด๋‹ค ๋” ๊ฐ€์น˜๊ฐ€ ์žˆ๋‹ค๋Š” ๊ฐœ๋…์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ธˆ์œต ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. (โ€ฆ) TVM์€ ํˆฌ์ž ์˜ต์…˜์„ ๋น„๊ตํ•˜๊ณ  ๋Œ€์ถœ, ๋ชจ๊ธฐ์ง€, ๋ฆฌ์Šค, ์ €์ถ•, ์—ฐ๊ธˆ๊ณผ ๊ด€๋ จ๋œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ฐœ๋…์€ ์ธํ”Œ๋ ˆ์ด์…˜์˜ ์˜ํ–ฅ๊ณผ ๋ฏธ๋ž˜์˜ ์ง€๊ธ‰๊ธˆ ์ˆ˜๋ น ์œ„ํ—˜์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค.

๋ณต์› ์‹œ๊ฐ„ ๊ฐ€์น˜(TVM)๋Š” ํ˜„์žฌ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ™”ํ์˜ ๊ฐ€์น˜๊ฐ€ ๋ฏธ๋ž˜์— ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ž ์žฌ์  ์ด์ต์— ๋น„๋ก€ํ•œ๋‹ค๋Š” ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. (โ€ฆ) ์ด๋Ÿฌํ•œ ๊ฐ€์น˜๋Š” ์ธํ”Œ๋ ˆ์ด์…˜, ๊ธˆ๋ฆฌ ์ƒ์Šน, ์ด์ž์œจ ์ƒ์Šน ๋“ฑ ๋‹ค์–‘ํ•œ ์š”์ธ์— ์˜ํ•ด ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค. TVM์„ ์‚ฌ์šฉํ•˜๋ฉด ํˆฌ์ž์ž๋Š” ํ˜„์žฌ ํ™”ํ ๊ฐ€์น˜๋ณด๋‹ค ๋ฏธ๋ž˜์— ๋” ๋งŽ์€ ๋ˆ์„ ๋ฒŒ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์ œ๋Š” ๋งž์ง€๋งŒ ๋…ผ๋ฆฌ๊ฐ€ ํ”๋“ค๋ฆฌ๋Š” ๊ฒฝ์šฐ:

์›๋ฌธ ์•ˆ์ •์ ์ธ ์›์ž์žฌ ๊ณต๊ธ‰์„ ํ•„์š”๋กœ ํ•˜๋Š” ๊ธฐ์—…์€ ์›์ž์žฌ ๊ฐ€๊ฒฉ ๋ณ€๋™์ด ์‹ฌํ•  ๊ฒฝ์šฐ ํ˜„๊ธˆ ํ๋ฆ„์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ์ด๋•Œ ํŒŒ์ƒ์ƒํ’ˆ์„ ๊ฑฐ๋ž˜ํ•˜๋ฉด ๋ฏธ๋ž˜ ์‹œ์ ์— ๊ฑฐ๋ž˜ํ•  ์›์ž์žฌ ๊ฐ€๊ฒฉ์˜ ๋ณ€๋™ํญ์„ ์šธํƒ€๋ฆฌ ์น˜๋“ฏ์ด(ํ—ค์ง€ยทhedge) ํ˜„์žฌ ์‹œ์ ์— ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. (โ€ฆ)

๋ณต์› ๊ธฐ์—…์ด ๊ธ‰๊ฒฉํ•œ ๋ณ€๋™์„ ๊ฒช์„ ๊ฒฝ์šฐ ์›์ž์žฌ ๊ฐ€๊ฒฉ์ด ๊ธ‰๋ณ€ํ•  ์ˆ˜๋ฐ–์— ์—†๊ธฐ ๋•Œ๋ฌธ์— (โ€ฆ) ๋ฆฌ์Šคํฌ ํ—ค์ง€(์œ„ํ—˜ ํ—ค์ง€)๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ์—…์€ ํŒŒ์ƒ์ƒํ’ˆ ๊ฑฐ๋ž˜์—์„œ ์›์ž์žฌ์˜ ํ๋ฆ„์„ ํ†ต์ œํ•  ์ˆ˜ ์žˆ๋Š” (โ€ฆ) ์šธํƒ€๋ฆฌ๋ฅผ ์น˜๋Š” ํ˜•ํƒœ๋กœ ๊ฑฐ๋ž˜๋  ์ˆ˜ ์žˆ๋‹ค.

Java ๋ฌธ๋ฒ• ์„ค๋ช…. ํ•ต์‹ฌ ์†Œ์žฌ($ ๊ธฐํ˜ธ, ํด๋ž˜์Šค ์ด๋ฆ„, ๊ฐ€๋…์„ฑ)๋Š” ๋‚จ์ง€๋งŒ ์‚ฌ์‹ค๊ด€๊ณ„๊ฐ€ ๋’ค์ง‘ํžŒ๋‹ค:

์›๋ฌธ ๋‹ฌ๋Ÿฌ ๊ธฐํ˜ธ '$'๋Š” Java์—์„œ ๋ณ€์ˆ˜ ์ด๋ฆ„์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์œ ํšจํ•œ ๋ฌธ์ž์ด๊ธฐ๋Š” ํ•˜์ง€๋งŒ (โ€ฆ) ์ปดํŒŒ์ผ๋Ÿฌ์—์„œ (โ€ฆ) ๋‚ด๋ถ€ ํด๋ž˜์Šค ๋ฐ ์ต๋ช… ํด๋ž˜์Šค์˜ ๋ช…๋ช… ๊ทœ์น™์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. (โ€ฆ) '$'๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ”๋“œ ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์งˆ ์ˆ˜ ์žˆ๊ณ  (โ€ฆ)

๋ณต์› Java์—์„œ "๋‹ฌ๋Ÿฌ" ๊ธฐํ˜ธ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ํด๋ž˜์Šค ์ด๋ฆ„์œผ๋กœ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ณ€์ˆ˜ ์ด๋ฆ„์€ (โ€ฆ) ์ฝ”๋“œ๋ฅผ ๋” ์ฝ๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ฌ๋Ÿฌ ๊ธฐํ˜ธ๋Š” ๋žŒ๋‹ค ๊ทœ์น™์— ์˜ํ•ด ์ •์˜๋˜๋ฉฐ (โ€ฆ)

๊ธด ๋ฌธ์žฅ (220โ€“256 ํ† ํฐ)

๋‰ด์Šค ๊ธฐ์‚ฌ. ์†Œ์žฌ(์•„๋ณด์นด๋„ยท์ฝœ๋ ˆ์Šคํ…Œ๋กคยทLDLยท์—ฐ๊ตฌ)๋Š” ๋‚จ์ง€๋งŒ ๊ธฐ๊ด€๋ช…ยท๊ธฐ๊ฐ„ ๊ฐ™์€ ์„ธ๋ถ€๋Š” ์ง€์–ด๋‚ธ๋‹ค:

์›๋ฌธ ์•„๋ณด์นด๋„๊ฐ€ ์ฝœ๋ ˆ์Šคํ…Œ๋กค ์ˆ˜์น˜๋ฅผ ๋‚ฎ์ถ”๋Š” ๋ฐ ๋„์›€์ด ๋œ๋‹ค๋Š” ์—ฐ๊ตฌ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์™”๋‹ค. ๋ฏธ๊ตญ ํŽœ์‹ค๋ฒ ์ด๋‹ˆ์•„๋Œ€ํ•™๊ต ํฌ๋ฆฌ์Šค ์—๋”ํŠผ ์—ฐ๊ตฌํŒ€์€ (โ€ฆ) 6๊ฐœ์›”๊ฐ„ ์‹คํ—˜์„ ์ง„ํ–‰ํ–ˆ๋‹ค. ์ฐธ๊ฐ€์ž 1000๋ช…์€ (โ€ฆ) ์•„๋ณด์นด๋„๋ฅผ ์„ญ์ทจํ•œ ๊ทธ๋ฃน์€ ์ด ์ฝœ๋ ˆ์Šคํ…Œ๋กค๊ณผ '๋‚˜์œ ์ฝœ๋ ˆ์Šคํ…Œ๋กค'์ธ ์ €๋ฐ€๋„ ์ฝœ๋ ˆ์Šคํ…Œ๋กค LDL ์ˆ˜์น˜๊ฐ€ ๊ฐ์†Œํ•œ ๊ฒƒ์ด๋‹ค.

๋ณต์› ์•„๋ณด์นด๋„๊ฐ€ ์ฝœ๋ ˆ์Šคํ…Œ๋กค ์ˆ˜์น˜๋ฅผ ๋‚ฎ์ถ”๋Š” ๋ฐ ๋„์›€์ด ๋œ๋‹ค๋Š” ์—ฐ๊ตฌ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์™”๋‹ค. ๋ฏธ๊ตญ ์บ˜๋ฆฌํฌ๋‹ˆ์•„์ฃผ ํ”ผ์ธ ๋ฒ„๊ทธ์˜ ํ•œ ์—ฐ๊ตฌํŒ€์€ ์•„๋ณด์นด๋„๋ฅผ ์„ญ์ทจํ•œ ๊ทธ๋ฃน๊ณผ ์„ญ์ทจํ•˜์ง€ ์•Š์€ ๊ทธ๋ฃน์„ ๋น„๊ตํ•œ ๊ฒฐ๊ณผ, ์ €๋ฐ€๋„ ์ง€๋‹จ๋ฐฑ์งˆ(LDL)๊ณผ HDL ์ˆ˜์น˜๊ฐ€ (โ€ฆ) ์˜ํ–ฅ์„ ๋ฏธ์ณค๋‹ค๋Š” ์‚ฌ์‹ค์„ ๋ฐœ๊ฒฌํ–ˆ๋‹ค. (โ€ฆ)

ํ† ๋ก ๋ฌธ. ํ™”์ž(ํ”ผยท์—ก์‹ค๋ก )์™€ "๋ˆ ์ด๋ก ยท์‹คํ—˜์  ๊ฒ€์ฆ"์ด๋ผ๋Š” ์ฃผ์ œ๋Š” ์œ ์ง€๋˜์ง€๋งŒ ์„ธ๋ถ€ ๋…ผ์ง€๋Š” ์žฌ์ƒ์„ฑ๋œ๋‹ค:

์›๋ฌธ ์‹คํ—˜์ ์ธ ๊ฒ€์ฆ์€ ๊ณผํ•™ ์ด๋ก ์˜ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ด๋ฉฐ, ๋ˆ ์ด๋ก ์€ ์•„์ง ์ด ๋ถ€๋ถ„์„ ํ†ต๊ณผํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ํ”ผ: ๋ˆ ์ด๋ก ์ด ๊ฒ€์ฆํ•˜๊ธฐ ์–ด๋ ต๋‹ค๋Š” ๊ฒƒ์€ ๊ทธ๊ฒƒ์ด ์ž˜๋ชป๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (โ€ฆ) ์—ก์‹ค๋ก : ๊ทธ๋Ÿฌ๋‚˜ ๋ˆ ์ด๋ก ์€ ๋ˆ์˜ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (โ€ฆ)

๋ณต์› ํ”ผ: ๋ˆ ์ด๋ก ์€ ์•„์ง ๊ฒ€์ฆ๋˜์ง€ ์•Š์•˜์ง€๋งŒ, ๊ทธ๊ฒƒ์€ ์—ฌ์ „ํžˆ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. (โ€ฆ) ์—ก์‹ค๋ก : ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ ์„ฑ๊ณต์€ ์‹คํ—˜์  ์ฆ๊ฑฐ์— ์˜ํ•ด ๋’ท๋ฐ›์นจ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (โ€ฆ) ํ”ผ: (โ€ฆ) ์‹คํ—˜์  ๊ฒ€์ฆ์€ ๊ณผํ•™์  ์ด๋ก ์„ ์ •์˜ํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค.

๊ณ ์œ ๋ช…์‚ฌ๊ฐ€ ์ด˜์ด˜ํ•œ ๋ฌธ์„œ์—์„œ๋Š” ์ด๋ฆ„ยท์ˆ˜์น˜๊ฐ€ ์„œ๋กœ ๋’ค์„ž์ธ๋‹ค. ์ด๋ฆ„ยท์ƒ‰๊น”ยท์ƒ์ผ์ด ๋‚˜์—ด๋œ ์บ๋ฆญํ„ฐ ์„ค๋ช…์—์„œ๋Š” ํ•ญ๋ชฉ์˜ ๊ณจ๊ฒฉ๋งŒ ๋‚จ๊ณ  ๊ฐ’์ด ์–ด๊ธ‹๋‚œ๋‹ค.

์„ค์น˜

์ด ๋ชจ๋ธ์€ ์ž„๋ฒ ๋”๋กœ BAAI/bge-m3๋ฅผ ์“ฐ๋„๋ก ์ˆ˜์ •ํ•œ vec2text ํฌํฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ๊ณต์‹ PyPI์˜ vec2text์—๋Š” ์ด ์ž„๋ฒ ๋” ๋ถ„๊ธฐ์™€ ๋ช‡ ๊ฐ€์ง€ ๋กœ๋”ฉ ๊ด€๋ จ ์ˆ˜์ •์ด ์—†์–ด ๊ทธ๋Œ€๋กœ๋Š” ๋กœ๋“œ๋˜์ง€ ์•Š๋Š”๋‹ค. ํฌํฌ๋Š” ์ด ์ €์žฅ์†Œ์˜ vec2text/ ๋””๋ ‰ํ„ฐ๋ฆฌ์— ํ•จ๊ป˜ ๋„ฃ์–ด ๋‘์—ˆ๋‹ค(๋˜๋Š” ํ•™์Šต์— ์“ด ์†Œ์Šค ํŠธ๋ฆฌ๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค).

๊ฒ€์ฆ๋œ ํ™˜๊ฒฝ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ํŠนํžˆ transformers๋Š” 4.44.2๋ฅผ ์“ด๋‹ค. 5.x ๊ณ„์—ด์€ mt5 ํ† ํฌ๋‚˜์ด์ € ๋™์ž‘์ด ๋‹ฌ๋ผ ์žฌํ˜„์ด ๊นจ์ง„๋‹ค.

python 3.12
torch 2.11.0 (cu128)
transformers==4.44.2
sentencepiece==0.2.1
safetensors==0.8.0
datasets==3.6.0

์‚ฌ์šฉ๋ฒ•

์ด ์ €์žฅ์†Œ์˜ ๊ฐ€์ค‘์น˜๋Š” ํ‘œ์ค€ from_pretrained ๊ฒฝ๋กœ์—์„œ forward๊ฐ€ ์–ด๊ธ‹๋‚˜๋ฏ€๋กœ, InversionConfig๋กœ ๋ผˆ๋Œ€๋ฅผ ๋งŒ๋“  ๋’ค state_dict๋ฅผ ์ง์ ‘ ์ ์žฌํ•ด์•ผ ํ•œ๋‹ค.

import torch, vec2text
from vec2text.models import CorrectorEncoderModel, InversionModel
from vec2text.models.config import InversionConfig
from safetensors.torch import load_file

def load(cls, repo_dir):
    m = cls(InversionConfig.from_pretrained(repo_dir))
    m.load_state_dict(load_file(f"{repo_dir}/model.safetensors"), strict=False)
    return m.to("cuda").eval()

inv  = load(InversionModel, "path/to/bge-m3-ko-inversion-v3")
corr = load(CorrectorEncoderModel, "path/to/bge-m3-ko-corrector-v3")
corrector = vec2text.load_corrector(inv, corr)

inp = inv.embedder_tokenizer(["๋ณต์›ํ•  ํ•œ๊ตญ์–ด ๋ฌธ์žฅ"], return_tensors="pt",
                             padding="max_length", truncation=True, max_length=256).to("cuda")
with torch.no_grad():
    emb = inv.call_embedding_model(input_ids=inp.input_ids, attention_mask=inp.attention_mask)

print(vec2text.invert_embeddings(embeddings=emb, corrector=corrector,
                                 num_steps=20, sequence_beam_width=4))

๋””์ฝ”๋”ฉ ์„ค์ •์€ ๊ธธ์ด์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ๋‘๋Š” ํŽธ์ด ๋‚ซ๋‹ค. ์งง์€ ๋ฌธ์žฅ์€ ๋ฐ˜๋ณต ์–ต์ œ ์—†์ด ๋‘๋Š” ์ชฝ์ด ์–ด์ ˆ ๋ณต์›์ด ์ข‹๊ณ , ๊ธด ๋ฌธ์žฅ์€ ๋ฐ˜๋ณต ์–ต์ œ(repetition_penalty 1.3, no_repeat_ngram 4)๋ฅผ ์ผœ์•ผ ๊ฐ™์€ ๊ตฌ์ ˆ์ด ๋˜ํ’€์ด๋˜๋ฉฐ ๋ฌด๋„ˆ์ง€๋Š” ๊ฒƒ์„ ๋ง‰๋Š”๋‹ค.

ํ‰๊ฐ€ ์žฌํ˜„

์œ„ ์„ฑ๋Šฅํ‘œ๋Š” ๋‹ค์Œ ์กฐ๊ฑด์—์„œ ๋‚˜์˜จ ๊ฐ’์ด๋‹ค.

  • ์ž„๋ฒ ๋”: BAAI/bge-m3 dense, max_length 256, CLS ํ’€๋ง + L2 ์ •๊ทœํ™”
  • ์ถ”๋ก : num_steps 20, sequence_beam_width 4
  • ํ‘œ๋ณธ: ๊ธธ์ด ๊ตฌ๊ฐ„๋ณ„ ๋ฌด์ž‘์œ„ 80๋ฌธ์žฅ(seed 42), ํ•™์Šต๊ณผ ๊ฒน์น˜์ง€ ์•Š๋Š” held-out ๊ฒ€์ฆ์…‹
  • ์ง€ํ‘œ: word-F1(์–ด์ ˆ ์ง‘ํ•ฉ F1), char-F1(์Œ์ ˆ ์ง‘ํ•ฉ F1), cos(๋ณต์›๋ฌธ ์žฌ์ž„๋ฒ ๋”ฉ๊ณผ ์›๋ณธ์˜ ์ฝ”์‚ฌ์ธ), ์‹ ๋ขฐ๊ตฌ๊ฐ„์€ ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 1000ํšŒ
  • ๋””์ฝ”๋”ฉ์€ ๊ธธ์ด์— ๋งž์ถฐ: 128 ํ† ํฐ ์ดํ•˜๋Š” ๋ฐ˜๋ณต ์–ต์ œ๋ฅผ ๋„๊ณ , ๊ทธ ์ด์ƒ์€ repetition_penalty 1.3 ยท no_repeat_ngram 4

์งง์€ ๋ฌธ์žฅ์—์„œ ๋ฐ˜๋ณต ์–ต์ œ๋ฅผ ๋„๋Š” ํŽธ์ด ์–ด์ ˆ ๋ณต์›์ด ์ข‹๊ณ , ๊ธด ๋ฌธ์žฅ์—์„œ๋Š” ์ผœ์•ผ ๊ฐ™์€ ๊ตฌ์ ˆ์ด ๋˜ํ’€์ด๋˜๋ฉฐ ๋ฌด๋„ˆ์ง€๋Š” ๊ฒƒ์„ ๋ง‰๋Š”๋‹ค. ์ด ๋‘˜์˜ ์ตœ์ ์ด ๋ฐ˜๋Œ€๋ผ๋Š” ์ ์€ ์Šค์œ•์œผ๋กœ ํ™•์ธํ–ˆ๋‹ค.

ํ•œ๊ณ„์™€ ์šฉ๋„

  • ์™„์ „ ๋ณต์›๊ธฐ๊ฐ€ ์•„๋‹ˆ๋ผ ๋ถ€๋ถ„ ๋ณต์›๊ธฐ๋‹ค. ์ฃผ์ œ, ๊ณ ์œ ๋ช…์‚ฌ, ํ•ต์‹ฌ ๊ตฌ์ ˆ์€ ์ž˜ ์ƒˆ์ง€๋งŒ ์„ธ๋ถ€๋Š” ํ‹€๋ฆด ์ˆ˜ ์žˆ๋‹ค.
  • ์ž„๋ฒ ๋”๋ฅผ ๋ฐ”๊พธ๋ฉด ๋‹ค์‹œ ํ•™์Šตํ•ด์•ผ ํ•œ๋‹ค. ์ด ๋ชจ๋ธ์€ BAAI/bge-m3 dense ์ „์šฉ์ด๋‹ค.
  • ํ”„๋ผ์ด๋ฒ„์‹œ ์—ฐ๊ตฌ์™€ ๋ฐฉ์–ด ๊ธฐ๋ฒ• ํ‰๊ฐ€๋ฅผ ์œ„ํ•œ ๊ฒƒ์ด๋‹ค. ํƒ€์ธ์˜ ์ž„๋ฒ ๋”ฉ์„ ๋ฌด๋‹จ ๋ณต์›ํ•˜๋Š” ๋ฐ ์“ฐ์ง€ ๋ง ๊ฒƒ.

์ธ์šฉ

@inproceedings{morris2023text,
  title={Text Embeddings Reveal (Almost) As Much As Text},
  author={Morris, John X. and Kuleshov, Volodymyr and Shmatikov, Vitaly and Rush, Alexander M.},
  booktitle={EMNLP},
  year={2023}
}
Downloads last month
-
Safetensors
Model size
1B params
Tensor type
F32
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for terriapurplewave/bge-m3-ko-corrector-v3

Base model

BAAI/bge-m3
Finetuned
(520)
this model