언어 모델의 독성 감소
요약
대규모 언어 모델(LLM)은 방대한 온라인 데이터를 학습하면서 독성 콘텐츠와 편향을 습득하게 되므로, 안전한 배포를 위해 강력한 안전 제어가 필수적입니다. 독성은 모욕, 혐오 발언, 편향 등 다양한 형태로 나타나며, 그 정의 자체가 주관적이고 분류하기 어렵다는 어려움이 있습니다. 따라서 모델의 탈독소화(detoxification) 및 안전성을 확보하려면 명확하게 정의된 가이드라인과 체계적인 데이터 수집 방법론(전문가 코딩, 크라우드소싱 등)을 통해 고품질의 주석 데이터를 구축하는 것이 중요합니다.
핵심 포인트
- LLM은 학습 데이터로부터 독성 콘텐츠와 편향을 습득하므로 안전한 배포를 위한 강력한 제어가 필요하다.
- 독성은 모욕, 혐오 발언 등 다양한 형태로 나타나며, 그 정의가 주관적이고 분류 체계화에 어려움이 따른다.
- 모욕적인 언어는 공격의 유형(Offensive), 대상 여부(Targeted/Untargeted), 대상 그룹(Individual/Group)을 고려하는 계층적 분류 체계를 통해 구조화될 수 있다.
- 독성 콘텐츠 분류를 위한 데이터셋 구축 시, 전문가 코딩, 크라우드소싱, 전문 모더레이터 등 다양한 주석 방법을 활용할 수 있으며, 명확한 가이드라인과 테스트 데이터가 품질 관리에 필수적이다.
대규모 사전 학습 언어 모델은 상당량의 온라인 데이터를 통해 학습됩니다. 이러한 모델은 필연적으로 인터넷으로부터 특정 독성 행동과 편향을 습득합니다. 사전 학습 언어 모델은 매우 강력하며 많은 NLP 작업에서 큰 성공을 거두었습니다. 그러나 실제 실용적인 응용 프로그램에 안전하게 배포하기 위해서는 모델 생성 과정에 대한 강력한 안전 제어가 필요합니다.
다양한 유형의 불안전 콘텐츠를 줄이기 위한 노력에는 여러 가지 도전 과제가 존재합니다:
- 첫째, 독성, 폭언, 혐오 발언, 편향, 고정관념, 사이버 괴롭힘, 정체성 공격 등 다양한 유형의 불안전 콘텐츠가 있으며, 이는 상황에 따라 다른 대우를 필요로 할 수 있습니다.
- 둘째, 사전 학습 언어 모델의 불안전 행동에 대한 명확하고 널리 합의된 분류 및 정의는 존재하지 않습니다. 개인적인 인식은 사회적 배경에 따라 매우 다를 수 있습니다.
이 게시물에서는 언어 모델의 독성 문제에 대해 깊이 있게 다룹니다. 저는 아직 독성 콘텐츠의 구체적인 정의를 찾기 위해 노력 중이지만, 문헌에서 몇 가지 예를 나열합니다.
[Perspective API] 무례하고 존중하지 않는 또는 불합리적인 의견; 사람들이 토론을 떠날 가능성이 높습니다.
[Kurita et al. 2019] 혐오 발언, 인종 차별, 모욕적인 언어를 포함하여 수신자에게 상처를 줄 수 있는 콘텐츠.
[Pavlopoulos et al. 2020] 우리는 '독성'이라는 용어를 포괄적으로 사용하지만, 문헌은 독성 언어 또는 관련 현상의 다양한 종류에 대해 여러 용어를 사용합니다: '모욕적', '폭언적', '혐오적' 등.
전반적으로 독성은 여러 유형의 불안전 콘텐츠를 설명하는 광범위한 용어입니다. 이 게시물에서 제시된 방법론은 독성에 대한 어떤 형태의 정의가 주어지면 적용할 수 있습니다; 예를 들어, 주석기 위한 지침에 제시된 경우. 독성 개념을 올바르게 정의하고 따라서 정확한 주석 라벨을 수집하는 것은 이 게시물의 범위를 벗어납니다.
독성 콘텐츠 분류
독성 콘텐츠를 분류하는 것은 직관적인 작업이 아닙니다. 어떤 콘텐츠가 독성으로 간주되어야 하는지 그리고 어떤 유형의 독성 콘텐츠가 존재하는지는 매우 주관적일 수 있습니다. 한 그룹에게는 모욕적으로 보이지 않는 언어는 다른 그룹에게는 부적절해 보일 수 있습니다.
모욕적인 언어의 인기 있는 분류 체계는 Zampieri et al. (2019) 가 제안한 것으로, 공격의 유형과 대상 모두를 고려하는 3 단계 계층적 분류 체계입니다. Offensive Language Identification Dataset (OLID) 데이터셋은 이 분류 체계에 기반하여 수집되었습니다.
- Level A: "모욕적인가?"
[OFF]
Offensive: 부적절한 언어, 모욕 또는 위협.
[NOT]
Not offensive: 모욕이나 욕설이 없음.
- Level B: "모욕적인 텍스트가 대상인가?"
[TIN]
Targeted Insult: 개인, 집단 또는 기타에 대한 대상화된 모욕 또는 위협.
[UNT]
Untargeted: 대상이 아닌 욕설과 욕설.
- Level C: 대상은 무엇인가?
[IND]
The offense targets an individual, often defined as "cyberbullying". (공격은 종종 '사이버 괴롭힘'으로 정의되는 개인을 대상으로 함.)
[GRP]
The offense targets a group of people based on ethnicity, gender, sexual orientation, religion, or other common characteristic, often defined as "hate speech". (공격은 인종, 성별, 성적 지향, 종교 또는 기타 공통된 특성에 기반한 사람들을 대상으로 하며, 종종 '혐오 발언'으로 정의됨.)
[OTH]
The target can belong to other categories, such as an organization, an event, an issue, etc.
데이터 수집
"안전"과 "불안전"으로 라벨링된 샘플 데이터셋을 준비하는 것은 독성 언어 분류기를 훈련하고 모델 탈독소화 신호를 제공하는 데 기초가 됩니다.
인간 주석
Vidgen & Derczynski (2020) 는 독성 감지 (toxicity detection) 를 위한 고수준 훈련 데이터 어노테이션을 다음과 같이 수집할 수 있다고 요약했습니다:
- 전문가 코딩 (Expert coding): 전문가가 편견 연구자, 중간 수준의 훈련을 받은 학생, 또는 NLP 실무자 등 어노테이션 작업을 좋은 품질로 완료할 충분한 지식이나 훈련을 가집니다. 이는 비용이 더 높지만 고품질의 데이터를 생성합니다.
- 크라우드소싱 (Crowdsourcing): 크라우드소싱 플랫폼은 비전문가 어노레이터와 작업을 매칭시킵니다. 확장성이 쉽지만 품질 관리에 더 많은 주의를 요구합니다.
- 전문 모던레이터 (Professional moderators): 전문 모던레이터는 경험 많고 훈련을 받았으며, 그들의 목표는 플랫폼 특유의 출력에 최적화되는 것입니다.
- 합성 데이터 (Synthetic data): 관련 콘텐츠 크리에이터가 독성 콘텐츠 유형을 광범위하게 커버하기 위해 수동으로 훈련 데이터셋을 생성할 수도 있습니다.
크라우드소싱은 이 방법들 중 가장 일반적인 접근법이며 (Davidson et al. 2017, Zampieri et al. 2019), 데이터 품질을 개선하기 위한 몇 가지 좋은 실습이 있습니다:
- 테스트 데이터 (Test data): 소수의 전문가에서 수집된 어노테이션의 작은 세트는 크라우드소싱 플랫폼의 어노레이터가 특정 임계치를 달성할 수 없는 것을 필터링하는 데 사용될 수 있습니다.
- 명확한 가이드라인 (Clear guidelines): 상세한 지침은 어노레이터가 일관되고 일치된 라벨을 생성하도록 안내하는 데 유용합니다. 가이드라인이 없으면 어노레이터는 개인적 인식을 적용하는 것이 권장되지만, 이는 문제가 될 수 있습니다. 왜냐하면 (1) 독성 콘텐츠의 주관적 해석은 개인마다 크게 다르며 (2) sarcasm(사 Sarkasm) 및 ironies(irony) 와 같은 특정 유형의 노이즈를 마킹하기는 어렵기 때문입니다.
- 다수 투표 (Majority vote): 샘플당 여러 어노레이터로부터 라벨을 필요로 하고 다수 투표를 취하는 것은 매우 일반적입니다.
- 어노레이터의 정체성 이해 (Understanding annotators' identities): 인구 통계학적 배경은 어노레이터의 작업 이해에 큰 영향을 미칩니다. 우리는 다양한且有 자격 갖춘 어노레이터를 모집하는 것을 목표로 해야 합니다.
반지도사 데이터셋 (Semi-supervised Dataset)
Khatri et al. (2018) 는 독성 콘텐츠 분류기를 학습하기 위한 대규모 반지도사 데이터셋을 부스팅하기 위해 간단한 접근법을 제안했습니다. 그들의 접근법은 작은 어노테이션 데이터셋과 큰 비표시 데이터셋에 의존합니다.
-
첫째, 그들은 욕설, 혐오, 성적인 콘텐츠 및 모욕의 주제를 포함하는 800 개 이상의 단어 blacklist 를 수집했습니다. 욕설 black list 는 높은 정밀도와 낮은 재현율을 가질 수 있지만, 약한 지도 신호를 제공할 수 있습니다.
-
Subreddits 는 blacklisted 단어의 비율에 따라 정렬됩니다. 그런 다음 민감한 예시는 상위 subreddits 에서, 비민감한 예시는 하위에서 샘플링됩니다.
-
정렬된 subreddits 에서 더 많은 샘플을 선택하기 위해 약한 이진 분류기를 훈련합니다.
- 민감한 (Sensitive): blacklisted 단어 또는 독성 분류기 신뢰도 > 0.8 을 포함함;
- 비민감한 (Non-sensitive): blacklisted 단어를 포함하지 않으며 독성 분류기 신뢰도 < 0.3
-
이 대규모 확장된 데이터셋을 사용하여 새로운 "Two-stage bootstrap"(TS bootstrap)이라는 분류기를 훈련합니다.
그들의 실험은 TS bootstrap 분류기가 F1 점수, 정확도 및 재현율에서 매우 좋은 수치를 달성했으며, 그것은 도메인 밖 테스트 데이터로 전달할 수도 있음을 보여줍니다.
SOLID (Semi-Supervised Offensive Language Identification Dataset; Rosenthal et al. 2020) 는 OLID 와 동일한 분류 체계로 어노테이션된 900 만 개 이상의 트위터 게시물을 포함합니다. SOLID 는 OLID 를 시드(seed) 로 사용하고, democratic co-training이라는 반지도수 학습 기법을 통해 이를 확장합니다. Democratic co-training (Zhou & Goldman, 2004) 은 소수의 지도 학습 데이터셋으로 훈련된 다양한 모델의 노이즈 레이블을 사용하여 대규모 데이터를 생성합니다. SOLID 는 다음과 같이 구성됩니다:
- 먼저, 어노테이션된 OLID 데이터셋에 대해 다양한 지도 학습 모델을 훈련합니다. 해당 논문은 PMI (n-gram 기반 유사도), FastText (BoW 모델과 유사한 얕은 신경망 모델), LSTM 과 BERT 를 실험했습니다.
- 어노테이션되지 않은 데이터셋의 각 샘플에 대해, 각 모델이 목표 클래스에 대한 신뢰도 점수를 예측합니다. 점수는
avg()또는min()을 사용하여 집계됩니다. 높은 신뢰도를 가진 샘플은 데이터셋에 추가됩니다.
단순한 작업의 경우 지도 학습 데이터셋이 충분히 크다면 BERT 모델 성능은 개선되지 않지만, 원래 지도 학습 데이터셋이 작업에 너무 작다면 큰 반지도수 데이터셋에서 혜택을 받을 수 있습니다.
독성 감지 (Toxicity Detection)
지도 학습 데이터셋이 주어지면, 텍스트 분류기를 처음부터 훈련하거나 사전 훈련된 언어 모델을 미세 조정하여 분류 작업을 수행할 수 있습니다. 하지만 훈련 샘플이 충분하지 않거나 품질이 좋지 않은 경우? 혹은 그러한 지도 학습 데이터셋에 접근할 수 없는 경우? 어떻게 해야 할까요?
적대적 공격 (Adversarial Attacks)
적대적 공격에 견고한 독성 감지 모델을 만들기 위해, Dinan et al. (2019) 는 인간이 루프를 통해 대화 시스템 안전성을 개선하기 위한 반복적인 "build it, break it, fix it" 전략을 제안했습니다.
Build it: Jigsaw 데이터셋에 대해 BERT 모델이 독성 댓글을 분류하도록 훈련합니다.Break it: 크라우드소싱 작업자들이 모델을 "안전"으로 잘못 라벨링한 독성 메시지를 작성해달라고 요청받습니다.Fix it: 원본 데이터셋과 새로 수집된 적대적 샘플의 조합에 대해 모델을 재훈련합니다.Repeat: 견고화 된 모델을 다시 배포하고 단계 1 에서 새로운 라운드부터 반복합니다.
그들의 실험 중 하나는 "break it" 단계에서 적대적 컬렉션을 표준 컬렉션으로 교체하는 것입니다. 작업자들이 직접 "공격적인" 메시지를 제출하도록 요청받는 표준 컬렉션입니다. 표준 컬렉션에 비해, 적대적 컬렉션은 명시적인 욕설이 적고 모델을 속이기 위한 부정 (negations) 이 더 많습니다. 후기 라운드에서 작업들은 더욱 어려운 과제를 수행합니다.
적대적 모델은 표준 컬렉션으로 훈련된 베이스라인 모델보다 적대적 공격에 더 견고합니다. 3 번째 라운드 적대적 모델은 표준 작업에서 표준 모델보다 성능이 나빠질 가능성이 높습니다. 이는 과적합 (overfitting) 때문입니다. 저는 적대적과 표준 컬렉션을 모두 사용하여 훈련하면 모델 성능이 어떻게 될지 궁금하지만, 논문에 해당 내용을 찾지 못했습니다.
또 다른 유형의 적대적 공격은 독성 문장을 안전한 것으로 잘못 분류하도록 검출 모델을 속이기 위해 문자열의 일부를 교체하거나 섞는 것입니다. Kurita et al. (2019) 는 이러한 모델 무관적 (model-agnostic) 적대적 공격을 생성하는 방법을 개발했습니다. 여러 유형의 문자 수준 섭동 (character-level perturbations) 을 포함합니다:
Character scrambling: 문자 위치를 무작위로 변경하는 것.Homoglyph substitution: 비슷한 모양의 국제 문자로 한 글자나 여러 글자를 치환하는 것.Dictionary-based near-neighbor replacement: Levenshtein 거리의 관점에서 가장 가까운 다른 토큰을 찾아 치환하는 것.Distractor injection: 무독성 토큰의 랜덤 선택된 시퀀스를 반복하여 방해 토큰을 주입하는 것.
대응적 노이즈는 토큰 가식화와 방해 토큰을 결합하여 유해 분류기의 성능에 상당한 저하를 초래합니다. 문자 수준의 교란이 방해 요소보다 성능 저하가 더 큽니다.
이 논문은 대응적 공격을 해결하는 두 가지 방법을 제안했습니다:
Adversarial training: 모델에 노이즈가 포함된 데이터셋으로 훈련하는 것을 의미합니다. 그러나 incoming attack 의 세부 사항을 미리 알아야 합니다. 그리고 임의의 노이즈를 가진 훈련 샘플이 테스트 세트로 일반화할 보장된 것은 없습니다.CDAE (contextual denoising autoencoder): 가식화된 토큰을 제거하기 위해 문자 수준과 문맥 정보를 사용합니다. CDAE 는 노이즈 샘플을 입력받아 디노이즈 버전으로 예측합니다. 여전히, 어떤 수준의 문자 교란이 적용되어 노이즈 샘플을 생성할 수 있는지 알아야 합니다. CDAE 는 BERT 와 비교 가능한 성능을 보이지만, 본질적으로 더 나은 것은 아닙니다.
Perspective API
perspective API (www.perspectiveapi.com)는 유해 콘텐츠 감지를 위한 가장 널리 사용되는 상용 API 입니다. Perspective 는 여러 속성에 대한 점수를 제공하는 머신러닝 모델을 훈련합니다: 유해성, 중대한 유해성, 모욕, 욕설, 정체성 공격, 위협, 그리고 성적으로 명시적. 각 점수는 [0, 1] 사이의 숫자로, 해당 속성을 포함할 확률을 나타냅니다 (즉, 이진 분류기의 신뢰도)이며 이는 속성의 심각도를 의미하지 않습니다.
Gehman et al. (2020) 은 사전 훈련된 언어 모델에서 샘플링한 unprompted generations 의 Perspective API 유해성 점수를 측정했습니다. "Unprompted" 는 시작 문장 토큰에만 조건부이며 추가적인 컨텍스트를 주입하지 않는 것을 의미합니다. 주목할 만한 것은 모든 테스트 모델이 100 번의 생성 후 예상 최대 유해성 > 0.5 에 도달한다는 것입니다. 또한, 대규모 LM 의 훈련 데이터셋에는 상당량의 유해 콘텐츠가 포함되어 있음을 지적했습니다.
그들은 조건부 언어 모델 생성에서의 유해성을 연구하기 위해 RealToxicityPrompt 데이터셋을 수집했습니다. 이는 Perspective API 에서의 관련 유해성 점수와 함께 10 만 개의 자연스러운 프롬프트를 포함합니다. 어떤 프롬프트는 유해한 언어가 포함되어 있지 않더라도 매우 공격적인 완성 (completion) 을 유발할 수 있습니다.
인기에도 불구하고, Perspective API 는 Gehman et al. (2020) 에 의해 요약된 알려진 편향이 존재합니다:
… 소수자에 대한 편향을 보이며 주석에 낮은 일치를 겪습니다. 이는 주석 작성자의 정체성이 혐오 표현의 인식에 영향을 미치고 주석 작업 설정의 차이로 인해 부분적으로 발생합니다.
특히, 최근 연구는 텍스트에 소수자 정체성 언급 (예: "I'm a gay man") 이 포함되어 있거나 소수 인종 (예: 아프리카계 미국인 영어) 의 텍스트가 포함된 경우 유해성의 유행을 과대평가한다는 것을 발견했습니다. 이는 검출기의 유해성 단어 (욕설, 슬러, 그리고 다른 "나쁜" 단어) 의 어휘적 단서를 과도하게 의존하기 때문입니다.
Prompt-based Detection
AI 자동 생성 콘텐츠
본 콘텐츠는 Lilian Weng Blog의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기