통계 위젯 (화이트)

221495
8881
2514299

저작권

Do not be afraid to fail. Be afraid not to try. Pain is temporary, suck is forever. Keep it small and simple.

카카오 광고







딥러닝 파이썬 코드로 외설 사진 판별하기 by 미친병아리


업무상 필요한 코드가 있는데 아마도 오픈소스에 이미 있을 것 같아서, 찾아봤더니 역시나 이미 있다.

사진, 동영상 모두 판별해 주는 괜찮은 딥러닝, 인공지능 코드로 보인다.

잘 동작하는지 여부는 직접 이용해서 코드를 짜보는 수 밖에 없다. 다른 사람들이 뭐라고 해도, 내 용도와는 다를 수 있고, 내가 직접 판단하는게 가장 확실하니까.



아, 근데 테스트용 데이터 찾는 것도 귀찮은 일이다.

하지만, 그동안 클리앙 오늘의 추천글 열심히 읽은 덕분에 비교적 쉽게 구할 수 있었다.

클리앙에 올라오는 야한 사진들을 구글에서 검색해서 모아보는 팁을 누군가 올려줬다. 글 올려주신 분 땡큐.

이 검색 결과를 크롤링 해서 이미지 다운로드 받는 파이썬 코드를 작성했다. 이미지 다운로드 시키는 코드는 이전에 작성해 놨던거 자꾸 수정을 해야한다. 구글 애들 참 부지런하기도 하지, 이미지 검색 결과 화면을 계속해서 변경한다.

검색결과 다시 또 분석해서 코드 수정한 후에 이미지를 460개 정도 다운로드 받을 수 있었다. 좀 더 다운로드 받게 하고 싶었지만, 귀찮으니.. 뭐 이정도면 테스트 하기엔 충분하다.




깃헙 소스 설치하고, 샘플 코드 짜서 테스트 시작.

간단하게 unsafe 확율이 조금이라도 더 높게 나오면 unsafe로 분류.

결과는 그럭저럭 만족할만 하긴 하지만, 이 정도는 unsafe로 분류해야 할 것 같은데 맘에 안드는 것도 좀 있었고, 반대의 경우도 있었다.

구글링을 좀 더 해봤더니, 이게 생각보다 쉽지 않은 일 이라네.

PORN: YOU KNOW IT WHEN YOU SEE IT, BUT CAN A COMPUTER?

텀블러가 외설물 방치한다고 하도 욕 쳐먹어서, 인공지능 코드를 적용하여 모든 포스트들을 자동으로 차단해 버렸는데 수많은 정상적인 글들도 모조리 차단이 되어 버렸고, 텀블러는 적절한 대처를 못하고 있는 상황이라네.

대표적으로 아기 사진이 많이 블럭 당했는데, 현재 기술로는 구별해 내지 못할 것 같긴 하다.




그래서 테스트를 좀 해봤다. 아, 아기 사진 다운로드 받으려니 아까 작성했던 코드 또 고쳐야 한다. 구글 애들 참 사악하게 만들어 놨다. 아무래도 검색어에 따라서 검색 결과 화면 구성의 엘리먼트 클래스 이름을 그때 그때 다르게 해놨나 보다.

귀찮긴 하지만, 금방 고칠 수 있어서 큰 문제는 아니지만 어차피 코드 수정해서 돌릴텐데 뭐하러 이리 해놨는지. 어떻게든 서버 부하 줄이려면 내가 구글 개발자라도 그렇게 했을 것 같기는 하다. 거저 먹는 내가 참아야지.

아기사진은 좀 더 많이 다운로드 받을 수 있었다. 780개 다운로드 받았다.

자, 그럼 돌려보자. 780개 이미지 판별하는데 3분 2초 걸렸다.

결과는 생각보다 괜찮다. 위의 기사 읽고서는 처참한 결과가 나올 줄 알았는데, 780개 중 92개만 외설로 분류되었다. 780개 중 외설물은 없을 것으로 예상되니 오탐율은 11%.




마지막으로 얼굴 사진으로 검색을 해봤다. 얼굴 사진은 좀 다 많이 검색이 되었네. 999개 다운로드 성공.

999개 판독하는데 3분 29초, 외설로 오탐한 갯수는 60개. 999개 중 외설사진은 없을 것으로 보이니 오탐율은 6%.



수영복 사진이나, 예술작품, 아기사진, 얼굴사진 등은 오탐으로 외설로 분류될 가능성이 높긴 하지만, 그래도 성인물을 차단하는게 더 필요한 기능이니 결론은 잘만 사용하면 쓸만 할 것 같다.

이제 이 코드를 폰에서 사용할 수 있도록 포팅하면 된다. 파이썬 코드를 안드로이드에서 돌리려면 어떻게 해야하나. 뭐, 이런 생각을 한 사람이 내가 처음은 아닐 것이니, 분명 이것도 누가 만들어 둔게 있겠지.

아, 맞다. 포르노 사진들 구해서 놓치는 사진들이 있는지 테스트 해봐야 하는데. 쩝, 이건 테스트용 이미지를 어떻게 구해야 하나. 직접 하나 하나 만들 수도 없고. 이거 참 난감하구만.

딥러닝, 인공지능 공부를 좀 하면 직접 트레이닝도 시켜볼 수 있지 않을까 싶긴 하지만, 그건 좀 나중에.

일단, 오늘은 여기까지. 이것들은 다음주에.



2021.10.26 추가

새로운 애플 M1 맥북이 AI 및 딥러닝 관련 성능이 엄청나게 좋아졌다고 합니다. 기대가 됩니다.

새로운 M1 Pro, Max 맥북 프로 - 애플은 이번에도 미친 성능 보여주나? 

애플 M1 맥북의 미친 성능, 인텔은 왜 못 만드나


[에버키] Atlas S15 아틀라스 S15 EKP121S15, 본상품선택 BOSE QC35 II 2세대 노이즈 캔슬링 헤드폰, 블랙, QuietComfort 35 II Apple 2020년 맥북 프로 13 (M1 칩셋 8코어 CPU 8코어 GPU), 8GB, SSD 256GB, 스페이스 그레이 키크론 K6 무선 기계식키보드 WHITE LED 핫스왑 갈축, 혼합색상 마이크로소프트 모바일 마우스 KGY-00060, 포피레드 한성컴퓨터 39.62cm FHD DEX 포터블 HDR 멀티터치 휴대용 모니터, TFX156T
쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받을 있습니다.

핑백

카카오 광고