πŸ“ νŒ€ ν”„λ‘œμ νŠΈ: [일상 λŒ€ν™” μš”μ•½]

πŸ“ ν”„λ‘œμ νŠΈ κ°œμš”

λ³Έ ν”„λ‘œμ νŠΈλŠ” μΌμƒμƒν™œμ—μ„œ μ΄λ£¨μ–΄μ§€λŠ” λŒ€ν™”λ₯Ό λ°”νƒ•μœΌλ‘œ 핡심 λ‚΄μš©μ„ μš”μ•½ν•˜λŠ” AI λͺ¨λΈμ„ κ°œλ°œν•˜λŠ” 것을 λͺ©ν‘œλ‘œ ν•©λ‹ˆλ‹€. 회의, 직μž₯, μ—¬ν–‰, μ—¬κ°€, μ‡Όν•‘ λ“± λ‹€μ–‘ν•œ 주제의 λŒ€ν™”λ¬Έμ„ μš”μ•½ν•˜μ—¬, 톡화 λΉ„μ„œλ‚˜ 회의둝 μš”μ•½ λ“±μ˜ μ‹€μ œ μ„œλΉ„μŠ€μ— ν™œμš©ν•  수 μžˆλŠ” λͺ¨λΈμ„ κ΅¬μΆ•ν•©λ‹ˆλ‹€.

⏱️ κΈ°κ°„ 및 인원

κΈ°κ°„: 2025λ…„ 3μ›” 12일 ~ 2025λ…„ 3μ›” 24일

인원: 총 5λͺ…

πŸ›  기술 μŠ€νƒ

πŸ”§ 핡심 κΈ°λŠ₯

πŸ§‘β€πŸ’» λ‚΄κ°€ κΈ°μ—¬ν•œ λΆ€λΆ„

πŸ› νŠΈλŸ¬λΈ”μŠˆνŒ…

πŸ“Œ κΈ΄ λ¬Έμž₯으둜 μΈν•œ Token 초과

- 문제 λ°°κ²½: KoBART λͺ¨λΈμ˜ μž…λ ₯ μ΅œλŒ€ 길이 μ œν•œ(512 토큰)을 μ΄ˆκ³Όν•˜λŠ” λŒ€ν™”λ¬Έμ΄ μ‘΄μž¬ν•˜μ—¬ ν•™μŠ΅ μ‹œ 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. 특히 평균 20ν„΄, μ΅œλŒ€ 60ν„΄μœΌλ‘œ κ΅¬μ„±λœ λŒ€ν™”μ—μ„œ κΈ΄ λ°œν™”κ°€ λ§Žμ•„ token overflowκ°€ 자주 λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

- ν•΄κ²° 방법: tokenizer μ„€μ • μ‹œ `truncation=True` μ˜΅μ…˜μ„ λͺ…μ‹œν•˜κ³ , `encoder_max_len` 값을 적절히 μ‘°μ •ν•˜μ—¬ λͺ¨λΈμ΄ 수용 κ°€λŠ₯ν•œ λ²”μœ„ λ‚΄μ—μ„œ μž…λ ₯을 자λ₯΄λŠ” λ°©μ‹μœΌλ‘œ ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. λ‹€λ§Œ 이둜 인해 μ€‘μš”ν•œ λ°œν™” 일뢀가 잘릴 κ°€λŠ₯성을 κ³ λ €ν•˜μ—¬, dialogue length 뢄포λ₯Ό 기반으둜 졜적의 max lengthλ₯Ό νƒμƒ‰ν–ˆμŠ΅λ‹ˆλ‹€.

πŸ“Œ μš”μ•½ μ„±λŠ₯ ν‰κ°€μ˜ 애맀함

- 문제 λ°°κ²½: λͺ¨λΈμ˜ μ„±λŠ₯이 μ’‹μ•„μ‘ŒλŠ”μ§€λ₯Ό νŒλ‹¨ν•˜κΈ° μœ„ν•œ 기쀀이 λͺ…ν™•ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. Rouge μ μˆ˜λŠ” ν‘œμ€€ μ§€ν‘œμ΄μ§€λ§Œ, μ •λ‹΅ μš”μ•½μ΄ 단일 λ¬Έμž₯으둜 μ œκ³΅λ˜μ–΄ 있고 생성 κ°€λŠ₯ν•œ μš”μ•½μ˜ ν‘œν˜„μ΄ λ‹€μ–‘ν•œ μƒν™©μ—μ„œ 이 점수만으둜 μ„±λŠ₯을 λ‹¨μ •ν•˜κΈ° μ–΄λ €μ› μŠ΅λ‹ˆλ‹€.

- ν•΄κ²° 방법: Rouge-1, Rouge-2, Rouge-L λ“± λ‹€μˆ˜μ˜ μ§€ν‘œλ₯Ό ν•¨κ»˜ μ‚¬μš©ν•˜κ³ , μ •λŸ‰ 평가 외에도 직접 μš”μ•½λ¬Έμ„ ν™•μΈν•˜λ©° μ •μ„±μ μœΌλ‘œ λΉ„κ΅ν•˜λŠ” 과정을 λ³‘ν–‰ν–ˆμŠ΅λ‹ˆλ‹€. ν•™μŠ΅μš© 데이터가 μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” ν…ŒμŠ€νŠΈ ν™˜κ²½μ΄μ—ˆκΈ° λ•Œλ¬Έμ— wandb λ“± μ‹€ν—˜ 관리 도ꡬλ₯Ό μ‚¬μš©ν•  μˆ˜λŠ” μ—†μ—ˆμœΌλ©°, λŒ€μ‹  λ‹€μ–‘ν•œ 좜λ ₯ μ˜ˆμ‹œλ₯Ό μˆ˜μ§‘ν•˜κ³  직접 λΉ„κ΅Β·λΆ„μ„ν•˜μ—¬ λͺ¨λΈ μ„±λŠ₯을 ν‰κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

🌟 νŒ€ μ„±κ³Ό

πŸ’‘ 깨달은 점

μš”μ•½ λͺ¨λΈμ˜ μ„±λŠ₯은 μ „μ²˜λ¦¬, ꡬ쑰, ν•™μŠ΅ μ „λž΅, μ‹€ν—˜ 섀계가 μ’…ν•©μ μœΌλ‘œ μž‘μš©ν•œλ‹€λŠ” 것을 λ°°μ› μŠ΅λ‹ˆλ‹€. λ‹€μ–‘ν•œ μ‘°κ±΄μ—μ„œμ˜ μ‹€ν—˜κ³Ό κ·Έ κ²°κ³Όλ₯Ό μΆ”μ Β·κ΄€λ¦¬ν•˜λŠ” κ²½ν—˜μ„ 톡해 μ‹€λ¬΄μ—μ„œλ„ μž¬ν˜„ κ°€λŠ₯ν•œ νŒŒμ΄ν”„λΌμΈμ˜ μ€‘μš”μ„±μ„ μ²΄κ°ν–ˆμŠ΅λ‹ˆλ‹€.

λ˜ν•œ, LLM의 μ„±λŠ₯이 μ‹€μ œλ‘œ ν–₯μƒλ˜μ—ˆλŠ”μ§€λ₯Ό μ •λŸ‰μ μœΌλ‘œ ν‰κ°€ν•˜κΈ°κ°€ 쉽지 μ•Šλ‹€λŠ” 점도 κΉ¨λ‹¬μ•˜μŠ΅λ‹ˆλ‹€. Rouge와 같은 μ§€ν‘œλŠ” μ •λ‹΅κ³Όμ˜ μœ μ‚¬λ„λ₯Ό μˆ˜μΉ˜ν™”ν•˜μ§€λ§Œ, μš”μ•½μ΄λΌλŠ” μž‘μ—…μ˜ νŠΉμ„±μƒ λ‹€μ–‘ν•œ 정닡이 κ°€λŠ₯ν•˜κΈ° λ•Œλ¬Έμ— 평가 μ§€ν‘œλ‘œμ„œμ˜ ν•œκ³„κ°€ μ‘΄μž¬ν•©λ‹ˆλ‹€. 결과적으둜 λͺ¨λΈ κ°œμ„ μ΄ 의미 μžˆλŠ”μ§€ νŒλ‹¨ν•˜κΈ° μœ„ν•΄μ„  μ •λŸ‰μ  μ§€ν‘œ 외에도 μ‚¬λžŒ μ€‘μ‹¬μ˜ 정성적 νŒλ‹¨κ³Ό μ˜ˆμ‹œ 비ꡐ가 ν•¨κ»˜ 이루어져야 함을 λŠκΌˆμŠ΅λ‹ˆλ‹€.

이 κ³Όμ •μ—μ„œ Huggingface ν”Œλž«νΌμ΄ 맀우 μœ μš©ν•˜λ‹€λŠ” 것도 μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. HuggingfaceλŠ” λ‹€μ–‘ν•œ 사전 ν•™μŠ΅ λͺ¨λΈμ„ μ œκ³΅ν•  뿐만 μ•„λ‹ˆλΌ, Tokenizer, Trainer, Metrics λ“±μ˜ λͺ¨λ“ˆν™”λœ 도ꡬλ₯Ό μ œκ³΅ν•˜μ—¬ μ‹€ν—˜κ³Ό μž¬ν˜„μ„±μ„ λ†’μ—¬μ€λ‹ˆλ‹€. 특히 `transformers` λΌμ΄λΈŒλŸ¬λ¦¬λŠ” PyTorch 및 TensorFlow 기반 λͺ¨λΈμ„ μ†μ‰½κ²Œ 뢈러였고 fine-tuning ν•  수 μžˆλ„λ‘ λ„μ™€μ€˜, NLP 연ꡬ와 싀무 λͺ¨λ‘μ—μ„œ μ€‘μš”ν•œ 역할을 ν•œλ‹€λŠ” 것을 μ‹€κ°ν–ˆμŠ΅λ‹ˆλ‹€.

πŸ”— μ°Έκ³  링크