23.06.15
DEVOTEE를 활성화 시키면
지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.
버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.
| 컨텐츠 유형 | 제목 | 저장일 | 삭제 |
|---|
본인인증 로그인에 실패하였습니다.
회원이 아니시거나 본인인증 등록이
완료되지 않은 사용자입니다.
「개인정보 보호법」에서 정의하는 개인정보는 살아 있는 개인에 관한 정보로 개인의 성명, 주민등록번호 등 인적 사항부터 사회·경제적 지위와 상태, 건강·의료, 재산, 문화 활동 및 정치적 성향과 같은 내면의 비밀에 이르기까지 그 종류가 매우 다양하고 폭 넓다.
SKT에서 보관하고 있는 얼굴, 이름, 주소 등의 다양한 이미지 데이터로부터 **PII Detection[1]**을 통해 개인정보를 탐지해 주어야 한다.
실시간으로 많은 데이터가 들어오고, 개인정보 포함 유무에 따른 데이터 보관/파기 방법이 달라짐에 따라 빠르고 정확한 개인정보 탐지를 필요로 한다.
< SKT에서 정의[2]한 개인정보 범주 >
Focal Loss[3] 등을 활용해 Hard Negative Example에 민감하지 않은 “Robust한 모델”을 개발한다.
S3등의 클라우드에 있는 다양한 데이터 셋을 한번에 학습시킴으로써 “End-to-End 기반 모델”을 제안한다.
다양한 Augmentation 및 Transformer 구조를 통한 “높은 성능”을 도모한다.
SR/CR[4] 등 “경량화”를 위한 기법과 모델을 사용해 학습시킴으로써 “실시간에 근사한 속도”를 제안한다.
우리는 위의 표에서 ‘1차 대상’에 포함되는 정보를 탐지하는 작업을 수행한다.
계좌번호, 신용카드, 주민등록번호, 이름, 주소 등의 정보들은 정규식[5]으로 어느 정도 탐지 할 수 있다.
1차적인 목표는 랜덤한 이미지가 Input으로 들어오면 얼굴 개인정보 포함 여부를 탐지하는 Face Detection Task이다.
2차적인 목표는 랜덤한 이미지가 Input으로 들어오면 언어(이름 및 주소) 개인정보 포함 여부를 탐지하는 Language Detection Task이다
※ 우리의 Task는 개인정보를 탐지하는 것에 있고, 탐지 후의 비식별화(ex. 제거, 가명 처리, 데이터 마스킹 등)는 고려하지 않는다.
Face Detection에서는 동양인/서양인 모두 잘 탐지해주기 위해 ‘WiderFace[6]’, ‘학습용 한국인 안면이미지 데이터[7]’를 사용한다.
또한 ‘Selfie-Image-Detection-Dataset[8]’을 사용해 사람의 얼굴이 아니거나 사람의 얼굴로 착각할 수 있는 데이터 셋도 같이 학습시킨다.
Language Detection에서는 ‘한국어 위키 문장 5M, 단어 54M[9]’ 통해 학습된 KoBERT 모델[9]을 가지고 와서 사용할 계획이다.
Face Detection 분야의 benchmark인 데이터 셋
32,203장의 이미지와 393,703개의 얼굴
Difficulty(Easy, Medium, Hard), Scale(Small, Medium, Large), Occulsion(No, Partial, Heavy), Pose(Typical, Atypical)
Event(61 classes)
License : Unknown (Free Download)
성별, 연령대 분포를 고려하여 한국인을 대상으로 촬영한 안면 영상 데이터임
2017년 200명, 2018년 200명, 2019년 600명의 인원에 대해 얼굴 포즈 20종, 조명 30종, 액세서리 6종, 표정 3종에 대해 촬영함
데이터베이스의 구조는 ID, 액세서리, 표정, 조명 위치 및 세기, 촬영 각도에 따라 다음 그림과 같이 구성되어 있음
성별: 남성(500명), 여성(501명)
연령: 20대(265명), 30대(250명), 40대(256명), 50대(230명)
License : 데이터 신청 후 다운 가능
selfie 이미지와 non-selfie 이미지를 둘 다 포함하는 총 78,619장의 얼굴 데이터
selfie 이미지는 Florida University에서, non-selfie 이미지는 Flickr30K 데이터셋에서 수집
다양한 자세와 위치의 selfie 데이터셋 포함
License : CC0: Public Domain (저작권 없음: 상업적인 목적 포함 모든 목적으로 복사, 수정, 배포, 실연 가능)
우리는 현재 SOTA이자 가장 빠르고 경량화된 모델인 SCRFD를 사용할 계획이다.
SCRFD는 TinaFace[10]에서 SR/CR 기법을 적용해 발전한 모델이다.
Face Classification과 BBox Regression을 동시에 할 수 있다는 것이 특징이다.
RetinaNet[11]을 기반으로, TinaFace는 ResNet-50[12]을 Backbone으로, FPN[13]을 Neck으로 사용하여 Feature Extractor를 구성한다.
Head 설계를 위해 Inception Block의 다른 Receptive Field를 통해 Context를 학습한다.
4개의 연속된 3x3 Convolution Layer를 각 Feature Pyramid에 추가한다.
Classification Branch : Focal Loss[3], Regression Branch : DIOU Loss, IOU Prediction Branch : Cross-Entropy Loss
Backbone 구조가 아무런 수정 없이 ImageNet Classification Task에서 빌려오기 때문에 대부분의 계산 비용(약 78%)은 Head에서 나온다.
→ 따라서 계산의 80%가 Backbone의 Shallow Stage에 가도록 재할당한다.
대부분의 얼굴들이 Stride4, Stride 8에서 32 Scale 이하로 검출된다.
→ 작은 얼굴을 잘 탐지하기 위해 Augmentation 및 Random Size 비율을 조정해서 Stride 8에서 더 많은 양의 샘플을 생성한다.
< SCRFD 전체 모델 구조 >
TinaFace에 SR 및 CR을 거친 전체 SCRFD 모델 구조이다.
KoBERT : 구글 BERT[14] base multilingual cased의 한국어 성능 한계로 인해 한국어에 맞게 새롭게 Pre-train 시킨 모델이다.
사전 크기는 8002이며 한국어 위키 문장 5M / 단어 54M[9] 통해 학습한다.
한글 위키 기반으로 학습한 토크나이저(SentencePiece) 사용한다.
KoBERT 활용 NER Task 기존 연구(Pytorch-BERT-CRF-NER[15])를 활용할 계획이다.
Tagset에는 총 8개의 태그가 있다.
PER: 사람이름, LOC: 지명, ORG: 기관명, POH: 기타, DAT: 날짜, TIM: 시간, DUR: 기간, MNY: 통화, PNT: 비율, NOH: 기타 수량표현
탐색 순서는 다음과 같다.
기존 Tagset에서 태그를 PER만 사용해 Binary classification task로 전환 후 우선 진행
원하는 결과(F1 score 기준 90 이상) 나오면 Task 범위를 주소(LOC)까지 확장
[1] PII Detection : https://docs.microsoft.com/ko-kr/azure/search/cognitive-search-skill-pii-detection
[2] SK telecom 프라이버시 센터 : https://privacy.sktelecom.com/view.do?ctg=knowledge&name=information
[3] Lin, Tsung-Yi, et al. “Focal loss for dense object detecion.” Proceedings of the IEEE international conference on computer vision. 2017. APA
[4] Guo, Jia, et al. "Sample and computation redistribution for efficient face detection." arXiv preprint arXiv:2105.04714 (2021).
[5] 개인정보 정규식 정리 : https://github.com/realchs/img-pii-detect/blob/main/Survey/개인정보 정규식 정리.md
[6] WiderFace : http://shuoyang1213.me/WIDERFACE/WiderFace_Results.html
[7] 학습용 한국인 안면이미지 데이터 : https://kface.aihub.or.kr/#/dynamictemplate?bbstypecd=4001001&MENU_NO=28&MENU_DESC=%EC%9D%B4%EB%AF%B8%EC%A7%80%EC%A7%80%EC%8B%9D%EB%B2%A0%EC%9D%B4%EC%8A%A4
[8] Selfi-Image-Detection-Dataset : https://www.kaggle.com/datasets/jigrubhatt/selfieimagedetectiondataset
[9] KoBERT : https://github.com/SKTBrain/KoBERT
[10] Zhu, Yanjia, et al. "Tinaface: Strong but simple baseline for face detection." arXiv preprint arXiv:2011.13183 (2020).
[11] He, Kaiming, et al. "Deep residual learning for image recognition." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.
[12] He, Kaiming, et al. "Deep residual learning for image recognition." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.
[13] Lin, Tsung-Yi, et al. "Feature pyramid networks for object detection." Proceedings of the IEEE conference on computer vision and pattern recognition. 2017.
[14] Devlin, Jacob, et al. "Bert: Pre-training of deep bidirectional transformers for language understanding." arXiv preprint arXiv:1810.04805 (2018).
[15] Pytorch-BERT-CRF-NER : https://github.com/eagle705/pytorch-bert-crf-ner
DEVOTEE를 활성화 시키면
지금 작성한 댓글에 AI가 댓글을 달아줍니다.