맞춤형 화장품 추천 엔진 개발을 위한 데이터 가공기
고객사 서비스 소개
전 세계를 강타한 K-Beauty! 이젠 세계로 진출합니다.
클린 뷰티(Clean Beauty)에 대해서 들어보신 적 있으신가요?
K-뷰티 시장을 뒤흔들고 있는 클린뷰티는 유해성분이 없는 안전한 제품을 이용하고 비건, 친환경, 유기농 성분 사용에서 동물실험 배제, 친환경 포장 등으로 의미가 확대되며 깨끗한 피부와 건강한 삶을 추구하는 것을 의미합니다.
이렇게 클린 뷰티를 지향하는 소비자에게 개개인에 피부타입에 맞춰 화장품을 추천해주면 어떨까요? 또 제품에 달린 수많은 글로벌 사용자들의 리뷰를 찾아 들어가 분석하지 않아도 자동으로 분석, 요약해 알려준다면 어떨까요?
이러한 기능이 상용화되기 위해서는 진출하고자 하는 해당 국가 문화에 맞춰 제작되어야 할 것입니다.
고객사가 겪던 문제
클린 뷰티 맞춤 서비스의 글로벌 사용자 확보라는 목표는 명확했지만 이의 실현을 위해서 필요한 영문 데이터와 AI 알고리즘 학습 데이터의 확보가 어려웠습니다.
글로벌 시장인 만큼 모든 데이터가 영문 정보만 필요로 하였고, 영문 데이터 수집부터 해당 국가의 문화를 적용시킨 가공까지 막막했습니다.
OCR 전사를 통해서 제품 실시간 업데이트가 중요한 부분이였는데, OCR 알고리즘 고도화가 가능한 가공 데이터가 필요했습니다.
수많은 제품에 대한 영문 리뷰를 자동으로 분석하여 소비자에게 제공하는 것 또한 중요한 과제였는데, 이를 진행하기 위한 수십만건의 영문 리뷰와 의도 분류가 필수로 진행되어야 했습니다.
그러나 이 모든 것을 한번에 진행하기에는 시간과 인원 그리고 전문성의 문제가 분명히 있었습니다.
그래서 저희는 다양한 데이터에 대해 전문적으로 가공을 진행하고, 영문 데이터 가공 가능 인력을 보유한 데이터메이커를 선택했습니다.
데이터 가공분야
고객사에서 요청한 데이터 가공은 크게 3가지입니다.
- [OCR 전사, 데이터수집] OCR알고리즘 고도화를 위한 제품의 영문 정보 OCR
- [텍스트 분석, 데이터수집] 영문 리뷰 텍스트 데이터 수집 및 의도 분류와 핵심 키워드 태깅
- [크롤링] 화장품 제품 이미지와 글로벌 사용자의 영문 리뷰 수집
데이터메이커의 솔루션
데이터 수집을 시작으로 코드 개발과 데이터 가공을 위한 가이드라인 제시가 모두 필요한 프로젝트였기 때문에 데이터메이커가 가장 중점을 둔 부분은 데이터의 ‘정확도’와 고객사에서 진행하고자 하는 서비스 ‘맞춤 데이터 가공법’ 이었습니다.
1. 화장품의 영문 정보 OCR 및 리뷰 감성분석
제품 영문보 OCR에 대한 고객사의 요청은 아래와 같습니다.
✔️ 모든 정보는 영문이여야 하고 특히 성분을 구분하는 용어에 대하여는 별도 표기가 필요합니다. OCR 진행 시 동일한 단어가 줄이 바뀌어 있을 경우 같은 단어임을 표기해주셔야 합니다.
✔️ 리뷰는 영문이여야 하고 한개의 제품 당 50개의 리뷰에 대한 가공이 필요하고 리뷰에 대한 기본 정보도 필요합니다. 더불어, 텍스트 의도분석에 대한 정확한 방향성과 가이드를 수립하고자 합니다.
-
크롤링 코드 개발 및 이미지 크롤링 진행
데이터 수집을 위한 크롤링 코드를 개발하고 웹사이트에서 해당 이미지가 많이 나올 수 있는 키워드를 도출 후 영문 성분정보 이미지 및 영문 리뷰 크롤링을 진행 하였습니다.
-
크롤링 이미지 선별과 중복제거
고객사 요청에 따라 해당 기준에 맞는 이미지를 선별(ingredient 단어 포함, 구분자의 다양성 확보 등)을 위해 MoblieNet을 활용한 이미지 유사도 분석 알고리즘을 통해 빠르게 선별합니다. 중복된 이미지의 경우 더 높은 해상도의 이미지를 선별하며 중복을 방지 하였습니다.
-
RSGAN 기술을 이용한 이미지 화질 개선
양질의 데이터와 올바른 가공법은 AI 학습(고도화)의 핵심입니다. 크롤링으로 수집된 이미지 데이터의 경우 직접 찍은 이미지에 비해 화질이 상당히 낮았으며, 화질 개선을 위해 데이터메이커의 RSGAN 기술을 이용해 이미지 개선을 진행하였습니다. 이를 통해 기존 480 화소에서 1920화소까지 화질을 개선 시켰습니다.
-
OCR 및 리뷰 감성 분석 가공
데이터메이커의 자체 개발한 어노테이터를 통해 OCR 가공이 진행 되었으며,
데이터가 영문이기 때문에 가나 데이터랩에서 작업을 진행하고 1차 가공이 완료되면 한국 검수자가 전수 검수를 진행 하였습니다. 정확도 높은 라벨링과 하나의 성분정보에 줄바뀜이 있을 경우 같은 단어임을 인식시키는 태깅 등 여러 조건에 부합하는 가공을 위해 영문 가이드를 제작하여 교육 후 작업 및 검수까지 완료 하였습니다.
영문 리뷰 감정 분석의 경우 텍스트에서 핵심 키워드 추출 후 해당 리뷰에 대한 감정을 라벨링하는 작업을 진행 했으며, 작업자-검수자-관리자의 실시간 소통을 위한 공유 시트로 가공 하였습니다.
2. 화장품 기본정보 DB 구축
성분정보 OCR에 대한 고객사의 요청은 아래와 같습니다.
✔️ 총 2개의 사이트에서 크롤링을 진행하고 제품에 대한 모든 기본 정보들을 수집해야 합니다. 단 set, kit 제품은 제외해주시면 됩니다.
크롤링에 대한 요청이 정의된 후에 곧바로 코드 제작에 들어갔습니다. 이 때, 사이트 내에서 특정 정보를 선택하는 것에 따라 다른 정보들이 변하는 문제로 인해 전체 정보 크롤링에 문제가 발생했습니다.
예) 용량 선택에 따라 가격, 이미지, 할인적용률 변동
버튼을 누르면 정보가 달라지는 것을 크롤링 하기 위해서는 두가지의 방법이 있었습니다.
- selenium 기반으로 웹화면을 조작하여 크롤링하는 방식
- http request를 하여 받아오는 html reponse를 분석하여 처리하는 방식
selenium 기반한 방법은 한 item을 크롤링하기 위해 모든 ui를 하나씩 들어가는 방식으로 시간이 매우 오래걸려 지속적인 크롤링이 필요하고 production 레벨의 크롤링에는 잘 사용하지 않는 방법입니다.
저희 데이터메이커는 기간 내 요청을 빠르고 정확하게 진행하는 것을 목표로 두고 있기 때문에, html reponse를 분석 방법을 선택했습니다.
html reponse를 분석 크롤링 방법으로 진행하기 위해서는 현재 있는 코드에서 더욱 고도화된 html 파싱과 비동기 데이터 처리가 구현되어야 했습니다.
데이터메이커의 연구진의 코드 고도화를 통해 기본정보 크롤링이 빠르게 진행될 수 있었습니다.
프로젝트 수행을 마치며
본 프로젝트는 모두 영문으로 진행되어야 하고 의도 분석이라는 주관적인 라벨링 프로젝트라는 점에서 기존의 프로젝트들과는 차이점이 있었습니다.
새로운 경험과 노하우를 가질 수 있었고, 크롤링 코드 고도화를 통해 획득이 까다로운 사이트에서도 데이터 수집 또한 원활히 진행할 수 있는 데이터메이커의 역량을 확인할 수 있었습니다.