직접 욕설, 비속어, 혐오 표현 관련 모델을 개발하면서 유용하다고 생각된 리소스를 모아둔 저장소입니다.
AI를 이용해 편집된 내용입니다.
누구나 쉽게 접근할 수 있는 데이터들로 이루어진 만큼 라이선스를 꼭 지켜주시기 바랍니다.
자연어 처리(NLP) 프로젝트, 특히 텍스트 윤리 검증, 악성 댓글 필터링, 혐오 표현 감지 등의 작업에 유용하게 활용될 수 있습니다.
- 데이터셋: 욕설, 비속어, 혐오 표현을 기준으로 라벨링 된 데이터
- 라이브러리: 욕설, 비속어, 혐오 표현을 다루는 라이브러리
- API: 욕설, 비속어, 혐오 표현 판별 기능을 지원하는 API
- 모델: 욕설, 비속어, 혐오 표현 판별하는 모델
- 블로그: 욕설, 비속어, 혐오 표현 관련 개발 블로그(블로그 아닐수도)
- 논문: 욕설, 비속어, 혐오 표현 관련 논문
- 라이선스: 데이터셋, 라이브러리, API에 사용된 라이선스 요약
- 성능 검증: 라이브러리, API를 데이터셋으로 어느정도의 성능이 나오는지 표로 정리(업데이트 예정)
데이터셋 이름 | URL | 데이터 건수 | 라이선스 | 설명 |
---|---|---|---|---|
한국어 악성댓글 데이터셋 | korean-malicious-comments-dataset | 10,000 | MIT License | 한국어 악성 댓글을 수집한 데이터셋 |
Curse-detection-data | Curse-detection-data | 5,825 | MIT License | 각종 커뮤니티 사이트 댓글의 욕설 여부를 분류한 데이터셋 |
kmhas_korean_hate_speech | kmhas_korean_hate_speech | 78,978 | CC BY-SA 4.0 | 온라인 뉴스 댓글을 8가지 혐오 표현으로 세분화하여 분류한 데이터셋 |
Korean Extremist Website Womad Hate Speech Data | Korean Extremist Website Womad Hate Speech Data | 2,081 | 확인 필요 | 한국 극단주의 웹사이트(워마드) 데이터를 분류한 데이터셋 |
LGBT-targeted HateSpeech Comments Dataset (Korean) | LGBT-targeted HateSpeech Comments Dataset (Korean) | 8,837 | CC BY-NC-SA 4.0 | 네이버 뉴스 성소수자 관련 댓글을 분류한 데이터셋 |
korean-hate-chat-data | korean-hate-chat-data | 5,000,000 | CC BY-NC-SA 4.0 | korcen으로 분류한 korcen-ml의 학습 파일 중 일부 |
korean-hate-speech | korean-hate-speech | 9,381 | CC BY-SA 4.0 | 한국 연예 뉴스 수집 플랫폼의 댓글 데이터셋 |
korean_unsmile_dataset | korean_unsmile_dataset | 18,742 | CC BY-NC-ND 4.0 | Smilegate AI에서 공개한 한국어 혐오표현 " |
bad_word_list | bad_word_list | 1,145 | 확인 필요 | 한국에서 주로 사용되는 패드립, 욕설, 비속어 등의 JSON Array |
한국어 혐오표현 분류(탐지) 데이터셋 | 한국어 혐오표현 분류(탐지) 데이터셋 | 100,000 | CC BY-SA 3.0 | 윤리적으로 문제가 되는 혐오 발화를 분류하여 문장의 윤리성을 판별하는 한국어 혐오 발화 데이터셋 |
텍스트 윤리검증 데이터 | 텍스트 윤리검증 데이터 | 453,340 | 확인 필요 | 비윤리 검증 데이터 선도사례 제시 및 AI 윤리 연구 자료를 공적 활용에 제공 |
APEACH - Korean Hate Speech Evaluation Datasets | APEACH - Korean Hate Speech Evaluation Datasets | 3,844 | CC BY-SA 4.0 | 혐오 발언 탐지를 위한 최초의 크라우드 생성 한국어 평가 데이터셋 |
Naver sentiment movie corpus v1.0 | Naver sentiment movie corpus v1.0 | 200,000 | CC0 1.0 | 한국어로 된 영화 리뷰 데이터셋 (감성 분석에도 사용 가능) |
K-MHaS | K-MHaS | 109,692 | 확인 필요 | 한국어 패턴을 효과적으로 처리하는 혐오 발언 탐지를 위한 새로운 다중 라벨 데이터셋 |
DKTC | DKTC | - | CC BY-NC-SA 4.0 | 2021 인공지능 그랜드 챌린지 4차대회 음성인지 트랙에 참가하기 위해 자체적으로 제작한 데이터셋 (혐오/악성 표현 포함 여부 불명확) |
KOLD | KOLD | - | 확인 필요 | 한국어 공격 언어(Offensive Language) 데이터셋 |
속성기반 감정분석 데이터 | 속성기반 감정분석 데이터 | 250,312 | 확인 필요 | 상품 리뷰데이터에 포함된 사용자 감정을 태깅한 데이터셋 (긍/부정 감정 분류에 사용 가능, 혐오/악성 표현 포함 여부 불명확) |
언어 | 라이브러리 | 라이선스 | 설명 |
---|---|---|---|
Python | korcen | Apache License 2.0 | 키워드 기반 비속어 판단 모듈 |
korcen-ml | Apache License 2.0 | korcen으로 분류한 데이터를 학습한 딥러닝 기반 비속어 판별 모델 (정확도 향상) | |
badword_check | 확인 필요 | 딥러닝 기반 한글 욕설 판별 모델 | |
CurseDetector | 확인 필요 | 한글 유사도와 한글 발음 유사도를 이용한 욕설/비속어/금지어 필터링 | |
badwordDetection2 | MIT License | 만들다가 실패한 욕설탐지모듈의 아이디어를 바탕으로 새롭게 만드는 욕설탐지모듈입니다. | |
Java | BadWordFiltering | MIT License | 비속어 필터링 라이브러리 (상세 알고리즘 확인 필요) |
bad-word-filtering | 확인 필요 | 비속어 필터링 라이브러리 (상세 알고리즘 확인 필요) | |
JavaScript | Cenkor | Apache License 2.0 | korcen 데이터셋을 이용한 비속어 검열 라이브러리 |
TypeScript | korcen.ts | Apache License 2.0 | korcen의 TypeScript 포팅 버전 (NPM 모듈) |
Dart | korean_profanity_filter | MIT License | 정규식 기반 한국어 욕설 필터링 라이브러리 |
Go | korcen-go | Apache License 2.0 | korcen의 Go 언어 포팅 버전 |
API | 라이선스 | 설명 |
---|---|---|
profanity-filter-api | GPL-3.0 License | KISO 이용자 보호 시스템 API 서비스 서비스를 API로 제공 |
do-not-say-profanity | MIT License | Google Jigsaw의 Perspective API를 활용한 비속어 검사 서비스 |
korcen-api | Apache License 2.0 & MIT License | korcen-go기반으로 만든 API |
모델 이름 | GitHub / Hugging Face 링크 | 설명 |
---|---|---|
korcen-ml | https://github.com/Tanat05/korcen-ml | 한국어 비속어 탐지 모델입니다. 채팅 데이터를 학습했으며 일부 모델만 공개하고 최신 모델의 경우 유료로 판매하고 있습니다. |
badword_check | https://github.com/Nam-SW/badword_check | 한국어 비속어 탐지 라이브러리입니다. 간단한 API를 제공하여 빠르게 비속어 여부를 판단할 수 있습니다. 내장된 비속어 사전을 기반으로 탐지하며, 사용자가 직접 비속어 사전을 추가할 수도 있습니다. 정확도보다는 속도에 중점을 둔 모델입니다. |
EthicalEye | https://huggingface.co/autopilot-ai/EthicalEye | 영어에 특화된 유해 콘텐츠(toxic content) 탐지 모델입니다. Hate speech, insults, threats, obscene language 등 다양한 유형의 유해 콘텐츠를 탐지합니다. RoBERTa 모델을 기반으로 하며, 높은 정확도를 자랑합니다. 영어 데이터에 대한 높은 성능을 보이지만, 다국어 지원은 제한적입니다. |
multilingual-sentiment-analysis | https://huggingface.co/tabularisai/multilingual-sentiment-analysis | 다국어 감성 분석 모델입니다. 비속어 탐지 전용 모델은 아니지만, 부정적인 감성을 가진 텍스트를 탐지하는 기능을 통해 간접적으로 비속어를 탐지하는 데 활용할 수 있습니다. XLM-RoBERTa 모델을 기반으로 하며, 영어, 프랑스어, 독일어, 스페인어, 이탈리아어, 포르투갈어, 러시아어, 중국어, 일본어, 한국어 등 다양한 언어를 지원합니다. |
블로그 제목 | 설명 |
---|---|
딥러닝 모델을 이용하여 비속어 필터링 구현하기 (skt-KoBERT, 1번째 전처리 단계) | skt-KoBERT 모델을 이용한 한국어 비속어 필터링 방법을 소개합니다. 전처리 단계에 대한 글로, 토크나이징, 정수 인코딩, 패딩 등 데이터 전처리 과정에 대해 상세히 설명합니다. 디스코드와 같이 혐오 표현이 빈번하게 발생하는 환경에서 유연한 필터링을 목표로 합니다. |
인공지능을 이용한 딥러닝 욕설 필터링 모델 만들기 - 1번째 (전처리 단계) | 딥러닝을 활용한 한국어 욕설 필터링 모델 제작 과정을 단계별로 설명하는 시리즈의 첫 번째 글입니다. 이 글에서는 전처리 단계에 초점을 맞추어 설명합니다. 데이터셋 준비, 토크나이징, 정제, 불용어 처리 등 전처리 과정에 대한 구체적인 방법을 제시 |
딥 러닝을 이용한 자연어 처리 입문 | 딥러닝 기반 자연어 처리(NLP) 전반에 대한 내용을 다루는 온라인 서적입니다. 비속어 필터링에 특화된 내용은 아니지만, 텍스트 분류, 토크나이징, 임베딩 등 NLP의 핵심 개념과 기술들을 학습할 수 있어 비속어 필터링 모델 개발에 도움이 되는 배경 지식을 쌓을 수 있습니다. |
여러 모델을 활용한 비속어 문장 탐지 | 다양한 기계학습 및 딥러닝 모델을 활용하여 한국어 비속어 문장을 탐지하는 실험 과정을 상세히 설명합니다. Logistic Regression, LSTM, BERT, KoBERT 등 여러 모델의 성능을 비교 분석하고, 각 모델의 장단점을 파악할 수 있습니다. 게임 커뮤니티에서 수집한 데이터를 활용하려 했으나, 공개된 데이터셋을 사용한 실험을 진행합니다. |
NDC Replay: 불량 이용자 대응을 위한 AI 활용 | 넥슨에서 진행한 NDC(Nexon Developers Conference) 2018 발표 영상입니다. 게임 내 불량 이용자 대응을 위한 AI 활용 사례를 소개합니다. 비속어 필터링을 포함하여, 어뷰징, 불법 프로그램 사용 탐지 등 다양한 AI 기술 적용 사례를 다룹니다. 실제 게임 서비스에 AI를 적용하는 과정에서 겪은 경험과 노하우를 공유합니다. |
메세지 필터링 : 사전 기반에서 딥러닝까지 #욕설필터링 #사전기반 #딥러닝 | 한국어 욕설 필터링 기술의 발전 과정을 사전 기반 방식부터 딥러닝 기반 방식까지 단계별로 설명합니다. 각 방식의 장단점과 한계를 분석하고, 딥러닝 기반 방식의 우수성을 강조합니다. 실제 서비스에 적용된 사례를 바탕으로 기술의 변천사를 살펴볼 수 있는 유용한 자료입니다. |
제목 | 저자 | 발행기관 | 발행연도 |
---|---|---|---|
딥러닝 기반 비속어 필터링 채팅 프로그램 설계 및 구현 | 이건환, 박주찬, 최동원, 이연경, 최호빈, 한연희 | ScienceON | 2019.10 |
단어와 문장의 의미를 고려한 비속어 판별 방법 | 이명호, 임명진, 신주현 | 한국스마트미디어학회 | 2020.9 |
실시간 비속어 탐지를 위한 모델 경량화 연구 | 심규성, 조남욱 | 대한산업공학회 | 2024.10 |
양방향 LSTM 기반 한국어 음성 비속어 필터링 | 김혜영, 이영우, 서지헌, 박성민, 김현우, 박영진 | 멀티미디어학회 | 2024.1 |
BERT 기반 욕설 필터링 및 GPT 기반 감성 대화 챗봇 개발 | 최안준 | 한국지능정보시스템학회 | 2022.11 |
잠재벡터 정규화를 이용한 문맥기반 욕설탐지의 성별 편향성 제거 | 박재일, 조성배 | 한국정보과학회 | 2022.06 |
BERT를 활용한 초등학교 고학년의 욕설문장 자동 분류방안 연구 | 심재권 | 창의정보문화연구 | 2021 |
임베딩 교체에 따른 한국어 욕설 탐지 모델 성능 비교 | 김현종, 남궁주홍, 손시운, 길명선, 문양세 | 한국정보과학회 | 2020.7 |
딥러닝 기반 욕설 탐지 | 김유민, 강효빈, 한수현, 정희용 | ScienceON | 2021.11 |
라이선스 유형 | 설명 | 상업적 이용 | 수정 | 재배포 | 저작권 및 라이선스 고지 | 동일 라이선스 조건 |
---|---|---|---|---|---|---|
CC0 | 저작권자가 저작물에 대한 모든 권리를 포기. 누구나 어떤 목적으로든 자유롭게 이용 가능. 저작자 표시 의무 없음. | ⭕ | ⭕ | ⭕ | ❌ | ❌ |
MIT License | 매우 허용 범위가 넓은 오픈소스 라이선스. 저작권자와 라이선스 문구 명시하면 상업적 이용, 수정, 재배포 등 모두 가능. 소스코드 공개 의무 없음. | ⭕ | ⭕ | ⭕ | ⭕ | ❌ |
CC BY | 저작자 표시. 저작자만 표시하면 영리적 이용, 변경 및 2차 저작물 작성이 모두 가능. | ⭕ | ⭕ | ⭕ | ⭕ | ❌ |
CC BY-SA | 저작자 표시-동일조건변경허락. 저작자를 표시하고, 2차 저작물에 동일한 라이선스를 적용하는 한 자유롭게 이용 가능. | ⭕ | ⭕ | ⭕ | ⭕ | ⭕ |
CC BY-ND | 저작자 표시-변경 금지. 저작자를 표시해야 하며, 저작물 변경은 불가능. | ⭕ | ❌ | ⭕ | ⭕ | ❌ |
CC BY-NC | 저작자 표시-비영리. 저작자를 표시해야 하며, 영리적 이용은 불가능. | ❌ | ⭕ | ⭕ | ⭕ | ❌ |
CC BY-NC-SA | 저작자 표시-비영리-동일조건변경허락. 저작자를 표시하고, 비영리 목적으로만 사용 가능하며, 2차 저작물에 동일한 라이선스를 적용해야 함. | ❌ | ⭕ | ⭕ | ⭕ | ⭕ |
CC BY-NC-ND | 저작자 표시-비영리-변경 금지. 저작자를 표시하고, 비영리 목적으로만 사용 가능하며, 저작물 변경은 불가능. | ❌ | ❌ | ⭕ | ⭕ | ❌ |
확인 필요 | 라이선스 정보가 명확히 기재되어 있지 않거나, 추가 확인이 필요한 경우. | ❓ | ❓ | ❓ | ❓ | ❓ |
라이선스 유형 | 설명 | 상업적 이용 | 수정 | 재배포 | 저작권 및 라이선스 고지 | 소스 코드 공개 | 동일 라이선스 조건 |
---|---|---|---|---|---|---|---|
MIT License | 매우 허용 범위가 넓은 라이선스. 상업적 이용, 수정, 재배포 가능. 저작권 및 라이선스 고지 필요. 소스코드 공개 의무는 없음. | ⭕ | ⭕ | ⭕ | ⭕ | ❌ | ❌ |
Apache License 2.0 | 특허권 관련 조항이 포함된 오픈 소스 라이선스. 상업적 이용, 수정, 재배포 가능. 저작권 및 라이선스 고지, 변경 사항 명시 필요. 소스코드 공개 의무는 없음. | ⭕ | ⭕ | ⭕ | ⭕ | ❌ | ❌ |
GPL-3.0 License | 강력한 카피레프트(copyleft) 라이선스. 이 라이선스를 사용한 코드를 포함하는 프로그램은 반드시 동일한 라이선스로 공개해야 함. 상업적 이용 가능. 저작권 및 라이선스 고지, 변경 사항 명시, 소스 코드 공개 필요. | ⭕ | ⭕ | ⭕ | ⭕ | ⭕ | ⭕ |
확인 필요 | 라이선스 정보가 명확히 기재되어 있지 않거나, 추가 확인이 필요한 경우. | ❓ | ❓ | ❓ | ❓ | ❓ | ❓ |
데이터와 결과가 일치한 개수 / 전체 데이터 개수
현재의 성능은 많이 다를 수 있음
언젠가 업데이트 예정
korean-malicious-comments-dataset | Curse-detection-data | kmhas_korean_hate_speech | Korean Extremist Website Womad Hate Speech Data | LGBT-targeted HateSpeech Comments Dataset (Korean) | korean-hate-chat-data | korean-hate-speech | korean_unsmile_dataset | 평균 처리 속도 | |
---|---|---|---|---|---|---|---|---|---|
korcen | 0.7121 | 0.8415 | 0.6773 | 0.6305 | 0.4479 | 0.9857 | 0.5534 | 9ms | |
korcen-ml | 0.8395 | 0.8432 | 0.8851 | 0.7155 | 0.7020 | 0.9941 | 0.7824 | 40ms | |
badword_check | 0.5829 | 0.6761 | 0.6410 | 0.4738 | 0.7980 | 0.4913 | 43ms | ||
CurseDetector | 0.5679 | 0.5785 | 0.6657 | 267ms | |||||
BadWordFiltering | |||||||||
Cenkor | 0.8317 | 0.6275 | 0.2ms | ||||||
korcen.ts | |||||||||
korean_profanity_filter |