Munche-v2-768 / README.md
ij's picture
Upload Munche-v2-768
0e1bece verified
|
Raw
History Blame Contribute Delete
12 kB
---
language:
- ko
license: gemma
library_name: peft
pipeline_tag: sentence-similarity
base_model: google/embeddinggemma-300m
tags:
- sentence-transformers
- feature-extraction
- korean
- fiction
- stylometry
- authorship-analysis
- lora
---
# Munche-v2-768
**Munche-v2-768**์€ ํ•œ๊ตญ์–ด ์žฅ๋ฅด์†Œ์„ค์˜ *๋‚ด์šฉ*๋ณด๋‹ค ๋ฌธ์žฅ ์šด์šฉ, ์„œ์ˆ  ๋ฆฌ๋“ฌ, ํ˜•ํƒœยท๊ธฐ๋Šฅ์–ด ์‚ฌ์šฉ๊ณผ ๊ฐ™์€ *๋ฌธ์ฒด*๋ฅผ ๋น„๊ตํ•˜๊ธฐ ์œ„ํ•ด ํ•™์Šตํ•œ 768์ฐจ์› ํ…์ŠคํŠธ ์ž„๋ฒ ๋”ฉ ๋ชจ๋ธ์ž…๋‹ˆ๋‹ค. [`google/embeddinggemma-300m`](https://huggingface.co/google/embeddinggemma-300m)์˜ ์›๋ž˜ 768์ฐจ์› pooling/projection ๊ฒฝ๋กœ๋ฅผ ์œ ์ง€ํ•˜๋ฉด์„œ, style LoRA๋ฅผ ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค.
์ด ๋ชจ๋ธ์€ ์ผ๋ฐ˜ ์˜๋ฏธ ๊ฒ€์ƒ‰ ๋ชจ๋ธ์˜ ๋Œ€์ฒด์žฌ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋™์ผยท์œ ์‚ฌํ•œ ๋‚ด์šฉ์„ ์ฐพ๋Š” ๊ฒƒ๋ณด๋‹ค ์„œ๋กœ ๋‹ค๋ฅธ ์ž‘ํ’ˆ์— ๋ฐ˜๋ณต๋˜๋Š” ์ž‘๊ฐ€์  ๋ฌธ์ฒด๋ฅผ ๋น„๊ตํ•˜๋Š” ์šฉ๋„๋กœ ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค.
![External benchmark comparison](assets/benchmark_comparison.png)
## ์ฃผ์š” ํŠน์ง•
- **์›๋ณธ 768์ฐจ์› head ์œ ์ง€:** ์ƒˆ๋กœ์šด projection head๋ฅผ ๋ง๋ถ™์ด์ง€ ์•Š๊ณ  EmbeddingGemma์˜ mean pooling๊ณผ ๋‘ projection layer๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
- **Style LoRA:** ๋™๊ฒฐ๋œ backbone์˜ `q_proj`, `v_proj`, `o_proj`์— rank 16, alpha 32, dropout 0.05์˜ LoRA๋ฅผ ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค. ์›๋ณธ pooling/projection layer๋Š” ๋™๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.
- **ํ‘œ์ค€ PEFT adapter:** LoRA๋ฅผ ๋ณ‘ํ•ฉํ•˜์ง€ ์•Š๊ณ  ํ•™์Šต๋œ adapter ๊ทธ๋Œ€๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
- **ํ•œ ๊ณต๊ฐ„์—์„œ ๊ณต๋™ ํ•™์Šต:** ์ž‘ํ’ˆ, ์ž‘๊ฐ€, ๋‹ค์ค‘ prototype, content-hard, counterfactual ์‹ ํ˜ธ๊ฐ€ ๋ชจ๋‘ ์ตœ์ข… 768์ฐจ์› cosine ๊ณต๊ฐ„์— ์ง์ ‘ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค.
- **๊ธด ํ…์ŠคํŠธ:** ํ•™์Šต ๊ตฌ๊ฐ„์€ 512/768/1024 token์ด๋ฉฐ, 1024 token์„ ๋„˜๋Š” ์ž…๋ ฅ์€ 512 stride sliding window์™€ overlap-corrected spherical pooling์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
- **๋ณด์กฐ ๊ณผ์ œ:** ์—ฐ์žฌ ์‹œ๊ธฐ, Kiwi stylometry, Human/AI ๋ถ„๋ฅ˜๋Š” ๋ณ„๋„ ๋ณด์กฐ head๋กœ ํ•™์Šตํ•˜๋˜ encoder gradient๋ฅผ ์ œํ•œํ•˜๊ฑฐ๋‚˜ ํ›„๋ฐ˜์— ๊ฐ์‡ ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์ž„๋ฒ ๋”ฉ API๋Š” ์ด ๋ณด์กฐ ์˜ˆ์ธก๊ฐ’์ด ์•„๋‹ˆ๋ผ L2-normalized 768์ฐจ์› ๋ฒกํ„ฐ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
## ์‚ฌ์šฉ๋ฒ•
EmbeddingGemma์˜ ๋ฌธ์„œ prompt๋ฅผ ํฌํ•จํ•ด ์ž…๋ ฅํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
```python
import torch
from peft import PeftModel
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("google/embeddinggemma-300m").to(torch.bfloat16)
model[0].auto_model = PeftModel.from_pretrained(
model[0].auto_model,
"Baragi-AI/Munche-v2-768",
)
model.max_seq_length = 1024
texts = [
"title: none | text: ๊ทธ๋Š” ๋Œ€๋‹ตํ•˜์ง€ ์•Š์•˜๋‹ค. ์ฐฝ๋ฐ–์˜ ๋น„๊ฐ€ ์˜ค๋ž˜๋œ ์ง€๋ถ•์„ ๋‘๋“œ๋ ธ๋‹ค.",
"title: none | text: ๋‚˜๋Š” ๊ฒ€์„ ๋‚ด๋ ค๋†“์•˜๋‹ค. ํ•ด์•ผ ํ•  ๋ง์€ ์ด๋ฏธ ๋ชจ๋‘ ๋๋‚œ ๋’ค์˜€๋‹ค.",
]
embeddings = model.encode(
texts,
normalize_embeddings=True,
convert_to_numpy=True,
)
similarity = embeddings @ embeddings.T
```
ํ•œ ์ž‘ํ’ˆ ์ „์ฒด๋ฅผ ์ž„๋ฒ ๋”ฉํ•  ๋•Œ๋Š” ๋‹ค์Œ ์ ˆ์ฐจ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.
1. ์‹ค์ œ tokenizer ๊ธฐ์ค€ 1024-token window์™€ 512-token stride๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
2. ๊ฐ window๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ L2 normalizeํ•ฉ๋‹ˆ๋‹ค.
3. ๊ฒน์นœ token์ด ์—ฌ๋Ÿฌ ๋ฒˆ ์ง‘๊ณ„๋˜์ง€ ์•Š๋„๋ก window๋ณ„ token coverage ์—ญ์ˆ˜๋ฅผ ๊ฐ€์ค‘์น˜๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
4. ๊ฐ€์ค‘ ํ‰๊ท  ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ L2 normalizeํ•ฉ๋‹ˆ๋‹ค.
5. ์ž‘ํ’ˆ ๊ธธ์ด ํŽธํ–ฅ์„ ์ค„์ด๋ ค๋ฉด ๋จผ์ € ํšŒ์ฐจ๋ณ„๋กœ poolingํ•œ ๋’ค ํšŒ์ฐจ ๋ฒกํ„ฐ๋ฅผ ๋™์ผ ๊ฐ€์ค‘ ํ‰๊ท ํ•ฉ๋‹ˆ๋‹ค.
์ด ๋ชจ๋ธ์€ BF16์œผ๋กœ ํ•™์Šตยทํ‰๊ฐ€ํ–ˆ์œผ๋ฉฐ FP16 activation์€ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
## ๋ชจ๋ธ ๊ตฌ์กฐ
```text
text + document prompt
โ†’ frozen EmbeddingGemma 300M backbone
+ trainable Q/V/O LoRA
โ†’ frozen original mean pooling
โ†’ frozen original Dense โ†’ Dense (768d)
โ†’ L2 normalization
โ†’ style embedding z โˆˆ R^768
โ”œโ”€ scalar ordinal publication head [training auxiliary]
โ”œโ”€ Kiwi stylometry MLP [training auxiliary]
โ””โ”€ Human/AI binary head [training auxiliary]
```
## ํ•™์Šต ๋ฐฉ๋ฒ•
### ๋ฐ์ดํ„ฐ ๋ถ„ํ• ๊ณผ sampling
- ์ž‘๊ฐ€๊ฐ€ ํ™•์ธ๋œ ๋ฐ์ดํ„ฐ๋Š” ์ž‘๊ฐ€ ์—ฐ๊ฒฐ์š”์†Œ ๋‹จ์œ„๋กœ train/validation/test๋ฅผ ๋ถ„๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ™์€ ์ž‘๊ฐ€์˜ ์—ฌ๋Ÿฌ ์ž‘ํ’ˆ๊ณผ ๊ฐ™์€ ์ž‘ํ’ˆ์˜ ๋ชจ๋“  ํŒŒ์ƒ window๋Š” ํ•˜๋‚˜์˜ split์—๋งŒ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.
- ์ •ํ™• ์ค‘๋ณต๊ณผ near-duplicate ์—ฐ๊ฒฐ์š”์†Œ๋ฅผ ๋จผ์ € ์ฒ˜๋ฆฌํ•ด `processed_data`์™€ ํŒŒ์ƒ counterfactual ๋ฐ์ดํ„ฐ์˜ ๋ˆ„์ˆ˜๋ฅผ ์ค„์˜€์Šต๋‹ˆ๋‹ค.
- ๊ธด ์ž‘ํ’ˆ์ด ํ•™์Šต์„ ๋…์ ํ•˜์ง€ ์•Š๋„๋ก ์ž‘ํ’ˆ์„ ๋จผ์ € ๊ท ํ˜• samplingํ•˜๊ณ , ์ž‘ํ’ˆ ์•ˆ์—์„œ ๋–จ์–ด์ง„ ์œ„์น˜์˜ window๋ฅผ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.
- ์ผ๋ฐ˜ metric batch๋Š” `8 authors ร— 3 works ร— 2 windows`์ž…๋‹ˆ๋‹ค. ์ธ๊ฐ„ ์ž‘ํ’ˆ metric loss๋Š” ๋งค ๋‘ ๋ฒˆ์งธ step์— ์ ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
- ์ตœ์ข… ๋‹จ๊ณ„์—์„œ๋Š” 10 step๋งˆ๋‹ค ํ•œ ๋ฒˆ `4 authors ร— 4 works ร— 3 windows`์˜ prototype ์ „์šฉ batch๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
### ์ตœ์ข… embedding์— ์ง์ ‘ ์ ์šฉํ•œ ๋ชฉ์ ํ•จ์ˆ˜
1. **Work metric loss** โ€” ๊ฐ™์€ ์ž‘ํ’ˆ์˜ ์„œ๋กœ ๋–จ์–ด์ง„ ๊ตฌ๊ฐ„์„ ๊ฐ€๊น๊ฒŒ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค. ๊ฐ™์€ ์ž‘๊ฐ€์˜ ๋‹ค๋ฅธ ์ž‘ํ’ˆ์€ ์ž‘ํ’ˆ loss์˜ negative์—์„œ ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค.
2. **Cross-work author loss** โ€” ๊ฐ™์€ ์ž‘๊ฐ€์˜ ์„œ๋กœ ๋‹ค๋ฅธ ์ž‘ํ’ˆ์„ ๊ฐ€๊น๊ฒŒ ํ•˜๋˜, ํ›„๋ฐ˜์—๋Š” ๋‹จ์ผ centroid ์••๋ ฅ์„ ๊ฐ์‡ ํ•ฉ๋‹ˆ๋‹ค.
3. **Leave-one-work-out multi-prototype loss** โ€” ์ž‘๊ฐ€๋‹น `N=3` prototype์„ support ์ž‘ํ’ˆ์œผ๋กœ ๋งŒ๋“ค๊ณ , ์ œ์™ธํ•œ query ์ž‘ํ’ˆ์˜ window๋ฅผ ๋ถ„๋ฅ˜ํ•ฉ๋‹ˆ๋‹ค.
4. **Work-balanced prototype construction** โ€” ์ž‘ํ’ˆ๋ณ„ local assignment๋ฅผ ๋จผ์ € ๊ณ„์‚ฐํ•˜๊ณ  ์ž‘ํ’ˆ๋งˆ๋‹ค ๊ฐ™์€ ๊ฐ€์ค‘์น˜๋ฅผ ์ฃผ์–ด, window๊ฐ€ ๋งŽ์€ ์ž‘ํ’ˆ์ด prototype์„ ์ง€๋ฐฐํ•˜์ง€ ์•Š๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
5. **Cross-work coverage + diversity** โ€” ๊ฐ prototype์ด ์ตœ์†Œ ๋‘ ์ž‘ํ’ˆ์—์„œ ์ง€์ง€๋ฅผ ๋ฐ›๋„๋ก effective-work ๋ฐ second-work-mass hinge๋ฅผ ์ ์šฉํ•˜๊ณ , ์ถฉ๋ถ„ํžˆ ์ง€์ง€๋˜๋Š” prototype๋ผ๋ฆฌ๋งŒ separation์„ ์œ ๋„ํ•ฉ๋‹ˆ๋‹ค. Prototype ์ „์šฉ batch์—์„œ๋Š” coverage ๊ธฐ์—ฌ๋ฅผ 1.5๋ฐฐ๋กœ ์ ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
6. **Semantic hard negatives** โ€” ๋™๊ฒฐ๋œ ์›๋ณธ EmbeddingGemma์—์„œ ์˜๋ฏธ๊ฐ€ ๊ฐ€๊นŒ์šด ๋‹ค๋ฅธ ์ž‘๊ฐ€์˜ ๊ตฌ๊ฐ„ 20๊ฐœ๋ฅผ ์ฐพ์•„ style ๊ณต๊ฐ„์—์„œ๋Š” ๋ฉ€์–ด์ง€๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
7. **Conditional decorrelation** โ€” ๊ฐ™์€ ์ž‘๊ฐ€ ์•ˆ์—์„œ ๋‚ด์šฉ semantic embedding์ด ์›€์ง์ด๋Š” ๋ฐฉํ–ฅ์„ style embedding์ด ๊ทธ๋Œ€๋กœ ๋”ฐ๋ฅด์ง€ ์•Š๋„๋ก cross-covariance๋ฅผ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค. ์ดˆ๋ฐ˜์—๋Š” ๋ฐฉํ–ฅ ํ˜•์„ฑ์— ์‚ฌ์šฉํ•˜๊ณ  ํ›„๋ฐ˜์—๋Š” guardrail๋กœ ๋‚ฎ์ท„์Šต๋‹ˆ๋‹ค.
8. **Human/LLM counterfactual ranking** โ€” ์ธ๊ฐ„ ์›๋ฌธ๊ณผ ๋‚ด์šฉ ๋ณด์กด LLM rewrite๋ฅผ ๊ตฌ๋ถ„ํ•˜๋„๋ก, ์ธ๊ฐ„ ์ž‘๊ฐ€ยท์ž‘ํ’ˆ positive๊ฐ€ rewrite๋ณด๋‹ค ๊ฐ€๊น๊ฒŒ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
9. **Synthetic hierarchy** โ€” ๋™์ผ ๋‚ด์šฉ blueprint์—์„œ `same recipe > same model/different prompt > different model/same prompt > different model/different prompt` ์ˆœ์„œ๋ฅผ ์œ ๋„ํ•˜๊ณ  ํ›„๋ฐ˜์—๋Š” ๊ฐ์‡ ํ•ฉ๋‹ˆ๋‹ค.
### ๋ณด์กฐ ๊ณผ์ œ์™€ schedule
- **Publication:** 5๊ฐœ๋กœ ๊ตฌ๋ถ„๋œ ์‹œ๊ธฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•˜์—ฌ ํ•˜๋‚˜์˜ ์—ฐ์† ์‹œ๊ธฐ scalar๋ฅผ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค. ํ•™์Šต ๊ฐ€๋Šฅํ•œ ordered cutpoint, interval-aware NLL/Huber, chronological ranking์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉฐ class-balanced ์ „์šฉ batch๋ฅผ 4 step๋งˆ๋‹ค ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค.
- **Kiwi stylometry:** ์ธ๊ฐ„ train split์—์„œ window ๋‹จ์œ„ ์‹ ๋ขฐ๋„๋กœ 16โ€“24๊ฐœ ํŠน์ง•์„ ์„ ํƒํ•˜๊ณ , hidden 256 MLP๋กœ ์ธ๊ฐ„ยทAI window์˜ ํ‘œ์ค€ํ™”๋œ ์ง€ํ‘œ๋ฅผ ํšŒ๊ท€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ฒด ๋ฐฉํ–ฅ์„ ์žก๋Š” ์ดˆ๊ธฐ ์‹ ํ˜ธ๋กœ ์‚ฌ์šฉํ•œ ๋’ค ๊ฐ์‡ ํ–ˆ์Šต๋‹ˆ๋‹ค.
- **Human/AI:** ์ธ๊ฐ„ ๋ณธ๋ฌธ, counterfactual rewrite, synthetic fiction์„ ์ถœ์ฒ˜๋ณ„ ๊ท ํ˜• ๊ธฐ์—ฌ๋กœ ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณด์กฐ head์˜ encoder gradient๋Š” 0.3๋ฐฐ๋กœ ์ œํ•œํ–ˆ์Šต๋‹ˆ๋‹ค.
- **Optimization:** BF16, AdamW, LoRA LR `2e-5`, auxiliary head LR `8e-5`/`2e-4`, weight decay `0.01`, max gradient norm `50`; gradient checkpointing์€ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
- **Ramps/fades:** hard-negative, counterfactual, decorrelation, synthetic, Human/AI loss๋ฅผ ramp๋กœ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. Stylometry์™€ synthetic์€ ์ดˆ๊ธฐ ์œ ๋„ ํ›„ ๊ฐ์‡ ํ•˜๊ณ , decorrelation์€ ์ค‘ํ›„๋ฐ˜ guardrail๋กœ ์œ ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค.
## ์™ธ๋ถ€ ํ‰๊ฐ€
### ํ”„๋กœํ† ์ฝœ
- ํ•œ๊ตญ์–ด ์žฅ๋ฅด์†Œ์„ค **11 authors / 80 works / 640 segments**
- ์ž‘ํ’ˆ๋งˆ๋‹ค ๋ฌด์ž‘์œ„ ์œ„์น˜์—์„œ ๋™์ผํ•˜๊ฒŒ 8๊ฐœ ๊ตฌ๊ฐ„ ์ถ”์ถœ
- ์ž…๋ ฅ ๊ธธ์ด 1024 tokens, ๋ชจ๋“  ๋ชจ๋ธ์— ๋™์ผํ•œ query/gallery ์‚ฌ์šฉ
- ๋น„๊ต ๋ชจ๋ธ: ์ˆ˜ํ•™์  ๋ฌด์ž‘์œ„ ๊ธฐ๋Œ“๊ฐ’, ์›๋ณธ EmbeddingGemma 300M, ์ „ ์„ธ๋Œ€ [`Baragi-AI/Munche-768`](https://huggingface.co/Baragi-AI/Munche-768), Munche-v2-768
- ์ด์ „ ํ‰๊ฐ€ ๋ฐ์ดํ„ฐ์— Munche-768์˜ ํ•™์Šต ๋…ธ์ถœ์ด ํ™•์ธ๋˜์–ด ํ•ด๋‹น ๊ฒฐ๊ณผ๋Š” ํ๊ธฐํ•˜๊ณ , ๋ณ„๋„์˜ ์›์‹œ ์ž‘๊ฐ€ ๋ง๋ญ‰์น˜์—์„œ ๋‹ค์‹œ ํ‘œ๋ณธ์„ ์ถ”์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.
- ๋ฌด์ž‘์œ„ ๊ฒฐ๊ณผ๋Š” ๋‚œ์ˆ˜ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์ด ์•„๋‹ˆ๋ผ ์‹ค์ œ candidate/positive ์ˆ˜์— ๋”ฐ๋ฅธ closed-form expectation์ž…๋‹ˆ๋‹ค.
| Metric | Random | EmbeddingGemma 300M | Munche-768 | **Munche-v2-768** |
|---|---:|---:|---:|---:|
| Same-work mAP | 0.0221 | 0.5680 | 0.7979 | **0.8233** |
| Same-work Recall@1 | 0.0120 | 0.8328 | **0.9484** | **0.9484** |
| Cross-work author mAP | 0.0882 | 0.1973 | 0.2960 | **0.3433** |
| Cross-work author Recall@1 | 0.0794 | 0.3726 | 0.5302 | **0.6395** |
| Cross-work author MRR | 0.2161 | 0.5163 | 0.6368 | **0.7205** |
| N=3 prototype, 2 support works, macro top1 | 0.0909 | 0.4599 | 0.5064 | **0.6116** |
| N=3 prototype, 3 support works, macro top1 | 0.0909 | 0.4981 | 0.5482 | **0.6205** |
| Content-hard pairwise accuracy | 0.5000 | 0.0888 | 0.5719 | **0.6213** |
| Content-hard top1 | 0.6998 | 0.3726 | 0.7412 | **0.7981** |
`Content-hard`์˜ negative๋Š” ์›๋ณธ EmbeddingGemma semantic space์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋‹ค๋ฅธ ์ž‘๊ฐ€ ๊ตฌ๊ฐ„์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ EmbeddingGemma ์ž์ฒด์˜ ๋‚ฎ์€ content-hard ์ ์ˆ˜๋Š” ์ผ๋ฐ˜ ์˜๋ฏธ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ๋œปํ•˜์ง€ ์•Š์œผ๋ฉฐ, ๊ฐ™์€ semantic space๋กœ ๊ณ ๋ฅธ ์˜๋„์ ์ธ adversarial baseline์ž…๋‹ˆ๋‹ค. Content-hard top1์˜ ๋ฌด์ž‘์œ„ ๊ธฐ๋Œ“๊ฐ’์ด ๋†’์€ ๊ฒƒ์€ query๋‹น same-author positive๊ฐ€ ๋‹ค์ˆ˜์ธ ๋ฐ˜๋ฉด hard negative๋ฅผ 20๊ฐœ๋กœ ์ œํ•œํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
### ์ž‘๊ฐ€ ๋‹จ์œ„ paired bootstrap
Munche-768 ๋Œ€๋น„ Munche-v2-768์˜ cross-work ์ฐจ์ด๋ฅผ ์ž‘๊ฐ€๋ฅผ ํ‘œ๋ณธ ๋‹จ์œ„๋กœ 20,000ํšŒ ๋ณต์›์ถ”์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.
| Metric | Paired difference | 95% bootstrap CI | Better authors |
|---|---:|---:|---:|
| mAP | **+0.0472** | `[+0.0107, +0.0850]` | 8 / 11 |
| Recall@1 | **+0.1093** | `[+0.0339, +0.1795]` | 9 / 11 |
| MRR | **+0.0836** | `[+0.0221, +0.1427]` | 9 / 11 |
## ํ•ด์„๊ณผ ์ œํ•œ์‚ฌํ•ญ
- Same-work retrieval์€ ์ธ๋ฌผยท์„ธ๊ณ„๊ด€ยท์‚ฌ๊ฑด ๋‹จ์„œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋ฌธ์ฒด ๋…๋ฆฝ์„ฑ์„ ๋‹จ๋…์œผ๋กœ ์ฆ๋ช…ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. **Cross-work**, **prototype**, **content-hard** ์ง€ํ‘œ๋ฅผ ์šฐ์„ ํ•ด์„œ ๋ณด์„ธ์š”.
- ๋ชจ๋ธ์€ ํ•œ๊ตญ์–ด ์žฅ๋ฅด์†Œ์„ค์— ํŠนํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋น„๋ฌธํ•™, ๋ฒˆ์—ญ๋ฌธ, ์งง์€ ๋ฌธ์žฅ, ์‹œ, ์ฑ„ํŒ…, ์˜์–ด ๋“ฑ์—์„œ๋Š” ์„ฑ๋Šฅ์„ ๋ณด์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
- ๋ฌธ์ฒด ์œ ์‚ฌ๋„๋Š” ์ €์ž ์‹ ์›์˜ ๋ฒ•์ ยท์‚ฌ์‹ค์  ์ฆ๊ฑฐ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๊ณต๋™ ์ง‘ํ•„, ํŽธ์ง‘, ์žฅ๋ฅด ๊ด€์Šต, ์‹œ๋Œ€, ํ”Œ๋žซํผ ๊ทœ์น™, ์˜๋„์  ๋ชจ๋ฐฉ์— ์˜ํ–ฅ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
- Human/AI ๋ณด์กฐ ํ•™์Šต์€ ํŠน์ • ์ƒ์„ฑ ๋ชจ๋ธ๊ณผ ๋ฐ์ดํ„ฐ ๋ถ„ํฌ์— ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด ์ž„๋ฒ ๋”ฉ์„ ๋‹จ๋… AI ํƒ์ง€๊ธฐ๋กœ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์„ธ์š”.
- ์ €์ž ์ถ”์ , ์ต๋ช… ์‚ฌ์šฉ์ž ์‹๋ณ„, ํ‘œ์ ˆ ๋‹จ์ • ๋“ฑ ๊ฐœ์ธ์—๊ฒŒ ๋ถˆ์ด์ต์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ์šฉ๋„์—๋Š” ์ธ๊ฐ„ ๊ฒ€ํ† ์™€ ๋ณ„๋„ ๊ฒ€์ฆ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
## ๋ผ์ด์„ ์Šค
์ด ๋ชจ๋ธ์€ EmbeddingGemma ํŒŒ์ƒ ๋ชจ๋ธ์ด๋ฉฐ **Gemma Terms of Use**์™€ **Gemma Prohibited Use Policy**๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ๋ฒ ์ด์Šค ๋ชจ๋ธ ํŒŒ์ผ์„ ๋ฐ›์œผ๋ ค๋ฉด Hugging Face์—์„œ Google์˜ ์‚ฌ์šฉ ์กฐ๊ฑด์— ๋™์˜ํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ [EmbeddingGemma ๋ชจ๋ธ ์นด๋“œ](https://huggingface.co/google/embeddinggemma-300m)๋ฅผ ํ™•์ธํ•˜์„ธ์š”.
## Citation
EmbeddingGemma๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์› ๋ชจ๋ธ ๋…ผ๋ฌธ์„ ์ธ์šฉํ•˜์„ธ์š”.
```bibtex
@article{embedding_gemma_2025,
title = {EmbeddingGemma: Powerful and Lightweight Text Representations},
author = {Schechter Vera, Henrique and others},
year = {2025},
url = {https://arxiv.org/abs/2509.20354}
}
```