본문 바로가기

NEWS

[2021.11.14] 튜닙의 1호 특허 출원을 마무리했습니다.

안녕하세요, 튜닙에서 IP 업무를 담당하고 있는 김한결(Hans)입니다. 오늘은 저희 튜닙에서 자체 개발한 모델인 TUNiB-Electra 활용하여 비윤리적 발화를 검출해내는 방법을 특허출원하게 되어 소개하려고 합니다. (TUNiB-Electra 대한 자세한 내용은 https://github.com/tunib-ai/tunib-electra 참고하세요!)


지난 10 29 출원한 이번 발명은 한국어 발화에서 욕설/모욕/성차별 등의 내용이 담긴 비윤리적인 발화를 딥러닝 기반의 모델로 탐지하고, 확률값을 활용하여 유해한 키워드 어구들을 생성해내는 방법에 대한 내용입니다.


문제 인식


기존의 유해 발화들을 탐지하는 모델들은 교묘하게 다른 방식으로 표현을 하면 유해한 발화인지 탐지를 못하는 경우가 많았었습니다. 특히, 한국어 특성상 비정상적인 방법으로 표현되어도 의미는 쉽게 인지되지만, 윤리 모델들을 잡아내지 못하는 점이 있었어요.


또한, 비윤리적인 발화의 세부적인 분류가 없기 때문에 (보통은 비윤리적 발화가 "맞다 / 아니다" 이진 분류), 가지 모델을 갖고 여러 서비스들에 적용하기 쉽지 않다는 문제점이 있었습니다. 예를 들어, A 서비스에서 편견을 감지해야 하지만 성희롱에는 어느 정도 너그러워야 하고, B 서비스에서는 성적인 부분에 매우 엄격하게 감지해야 하지만 욕설에는 관대하기를 원하는 경우가 있을 있습니다.


이에 튜닙에서는 여러 플랫폼들의 다양한 요구들을 충족할 있도록 비윤리적 속성을 13('욕설', '모욕', '폭력/위협', '외설', '범죄조장', '성별', '연령', '인종/출신지', '성적지향', '장애', '종교', '정치성향', '기타혐오')으로 새롭게 정의하였고, 자주 쓰이는 한글음절 변형 방법들을 정의하여 새로운 유해어/유해어구 사전을 구축할 있었습니다.


TUNiB
모델로 해결! 어떻게?


먼저 욕설, 모욕, 폭력/위협, 외설, 범죄 조장, 혐오 표현 비윤리적 데이터를 걸러내는 세부 기준들을 새롭게 정의하고 학습데이터(혐오데이터셋) 10만개 가량 구축하여 다음 기준에 따라 분류했습니다. 개별 학습데이터에 대해 5단계 Likert 척도를 사용하여 13가지 속성에 대해 강도에 따라 0부터 4점까지 점수를 매겼습니다. 특정 속성이 문장에 없으면 0, 약하게 표현되어 있으면 1, 보통이면 2, 정도가 강하면 3, 매우 강하면 4점을 주도록 했어요.


최근 튜닙에서 개발한 TUNiB-ELECTRA 모델 (기존 ELECTRA 모델을 개선) 사전학습을 하고, 위의 혐오데이터셋을 활용하여 비윤리적 발화를 탐지하는 문제로 파인튜닝 했습니다. 결국 학습된 모델에 어떤 발화가 입력되면, 해당 발화중에 가장 문제가 되는 단어 혹은 어구를 Highlight하고 동시에 비윤리적인 13가지 속성에 얼만큼 해당하는지를 확률값으로 내뱉게 됩니다.


국내 여러 방면(온라인 커뮤니티, 온라인 게임 )으로 리서치와 데이터 수집을 하면서 인터넷 유저들이 자주 쓰는 음절 변형 방법들을 발견할 있었습니다. (예를 들어, 바보 -> ᅡ보, r 등의 변형방법들) 실제로 자주 쓰이는 가지 음절 변형 방법들을 정의하였고, 변형 방법들을 조합한 가지 알고리즘을 제안할 있었습니다.


모델의 출력값인 속성별(클래스별) 확률값에 따라 제안한 변형 알고리즘들을 다르게 적용함으로써, 변형된 유해어들로 구성된 새로운 유해어 사전을 구축할 있었습니다. 13가지 클래스별 정보가 포함된 유해어/유해어구 사전을 구축할 있었어요. 이러한 과정을 통해 구축된 새로운 유해어/유해어구 사전을 활용하여 모델을 재학습시키면서, 저희는 교묘하게 표현된 비윤리적 발화들을 탐지해내는 강건한 모델을 만들 있었습니다. 그리고 13가지의 유해 클래스와 각각의 확률값 정보를 제공하기 때문에 다양한 서비스에 유연하게 적용할 있게 되었습니다. 또한, 다른 생성모델에 유해어/유해어구 사전을 활용한다면 새로운 비윤리적 학습데이터들을 생성할 수도 있습니다.

 


마치며

 

발명내용이 특허등록되어 공개되면, 여러 곳에서 쓰일 있다고 생각합니다. 빅모델 생성을 때의 데이터 필터링, 뉴스커뮤니티∙SNS 등에서의 모니터링, 온라인게임, 챗봇 서비스 유해한 발화를 차단해야 하는 여러 곳에서 활용될 있을 거예요.


다음에 또다른 새로운 기술과 함께 찾아뵙겠습니다! 감사합니다 :)