[AI 도입 / 개발 / 상용화]향수 추천 서비스(AROMAS), 개발 비하인드 대공개!

2024-08-27


AROMAS 서비스를 개발하게 된 배경은?

자료 : 2023년 소비 트렌드, CJ AI CENTER

최근 마케팅의 흐름에서 '초개인화'가 점차 중요한 요소로 떠오르고 있습니다.


기존의 개인화 마케팅은 주로 소비자의 행동 데이터를 분석해 그들의 취향을 파악하고, 맞춤형 상품이나 서비스를 추천하는 방식이였습니다. 하지만 오늘날의 초개인화는 여기에서 한 걸음 나아가, 소비자의 특성뿐만 아니라 그들이 처한 상황과 타이밍까지 고려한 맞춤형 경험을 제공하는 것을 목표로 합니다.


이러한 서비스는 소비자에게 큰 편의를 제공합니다. 수많은 선택지 중에서 자신에게 맞는 상품을 직접 찾아 헤매는 대신, 그들의 상황에 딱 맞는 추천을 받아 시간을 절약하고 구매 만족도를 높일 수 있습니다. 
기업 측면에서도 초개인화를 통해 더욱 정교한 타깃 마케팅이 가능해져, 마케팅 비용을 줄이고 고객 충성도를 강화할 수 있습니다. 


이처럼 초개인화가 오늘날 마케팅의 필수적인 전략으로 자리 잡으면서, 우리는 이 트렌드를 반영한 AROMAS 서비스를 구상하게 되었습니다.

AROMAS는 내 분위기에 맞는 향수를 추천하는 AI 기반 서비스로, 이를 통해 AI 기술이 어떻게 고객 맞춤형 서비스를 더욱 정교하게 발전시킬 수 있는지를 보여주고자 합니다. 

이 프로젝트는 젠데이터의 사내문화 중 토이-프로젝트의 일환으로 시작되었으며, 이 글을 통해 개발 과정을 공개함으로써 AI 도입을 고려하는 기업들에게 실질적인 도움이 되기를 바랍니다.


AI 서비스 개발과정

AROMAS 서비스를 구축하는 과정에서 다양한 AI 모델과 기술 스택을 결합해 사용자 맞춤형 향수 추천 시스템을 만들었습니다. 

이 과정은 AI를 이용해 개인화 서비스를 개발하려는 다른 사람들에게도 많은 시사점을 제공할 수 있으며, 각 단계에서 어떤 기술이 사용되었는지, 그 이유와 문제 해결 과정을 자세히 설명드리겠습니다.


1. 서비스 구조 및 소개

AROMAS는 사용자 사진을 기반으로 분위기와 감정을 분석하고, 나이와 성별을 파악한 후, 해당 데이터를 바탕으로 사용자의 분위기에 맞는 향수를 추천하는 AI 기반의 초개인화 서비스입니다. 

이때 사용되는 핵심 모델은 얼굴 인식, 나이/성별 판별, 감정/분위기 분석을 수행하며, 최종적으로 이러한 정보를 향수 추천 시스템에 입력하여 적합한 결과를 도출합니다.


2. 기술 스택

서비스 개발 과정에서는 다음과 같은 기술 스택을 활용했습니다.

  • 개발 환경: VS Code
  • 사용 언어: Python
  • 웹 서버: Flask, Gunicorn, NGINX
  • 프론트엔드: HTML, CSS, JavaScript
  • 사용 모델: VGGFace, MobileNet, Kor2Vec


이러한 기술 스택을 선택한 이유AI 모델의 성능확장성고려했기 때문입니다.
※ Python은 다양한 머신러닝 라이브러리를 지원하고, Flask와 같은 경량 웹 프레임워크는 AI 기반 웹 서비스를 빠르게 구현하는 데 적합합니다.


3.사용 모델

(1) 인상 및 분위기 판별 모델

향수 추천에서 중요한 부분은 사용자가 어떤 이미지를 표현하고 싶은지, 또는 그들의 분위기나 감정이 무엇인지 파악하는 것입니다. 

이를 위해 AROMASGoogle Teachable Machine에서 제공하는 MobileNet 모델을 사용해 사진을 분석하고, 열 가지로 분류된 분위기 키워드를 사용해 이미지를 분류합니다.

  • 😊분위기 키워드: 
    [우아한], [달콤한], [섹시한], [순수한], [화려한], [시크한], [신비한], [시원한], [상큼한], [유니크한]

  • MobileNet 모델: 
    이미지 분류에 효과적인 CNN(Convolutional Neural Network) 기반의 모델로, 상대적으로 가벼운 구조를 가지고 있어 실시간 이미지 분석에 적합합니다.

여기서 중요한 포인트는, 서비스 기획 초기부터 사용자 경험을 중심으로 모델을 선택했다는 점입니다.

얼굴을 빠르게 인식하고, 적절한 분위기 키워드로 분류할 수 있는 모델이 필요했기 때문에 MobileNet을 선택했습니다.

또한, 사용자의 사진에서 분위기와 인상을 예측하는 이 모델은 실시간 분석과 정확도 사이의 균형을 유지하는 것이 중요했습니다.


(2) 나이와 성별 판별 모델

향수는 연령대와 성별에 따라 선호도가 다를 수 있습니다. 따라서 정확한 추천을 위해 사용자의 나이와 성별을 판별하는 것이 중요했습니다. 

여기서 Deepface 프레임워크와 VGGFace 모델을 사용해 얼굴을 분석하고 나이와 성별을 예측했습니다.

  • Deepface 프레임워크: 
    다양한 얼굴 분석 기능을 제공하는 경량 라이브러리로, 나이와 성별, 감정까지 분석할 수 있습니다.

  • VGGFace 모델:
    얼굴 인식에 특화된 CNN 기반 모델로, 비교적 높은 정확도로 나이와 성별을 예측할 수 있습니다.

나이와 성별 정보는 추천 결과의 정확도를 높이는 데 중요한 역할을 합니다. 특히, VGGFace 모델 analyze 기능을 사용해 감정까지 분석할 수 있지만, AROMAS에서는 나이와 성별 정보만 추천 시스템에 반영하여 
초개인화의 일관성을 유지했습니다.


(3) 향수 추천 모델

이제 사용자의 나이, 성별, 분위기 정보가 수집되면 향수 추천 모델이 이를 기반으로 적합한 향수를 제안합니다. 향수 추천은 텍스트 분석과 벡터화를 통해 이루어지며, Kor2Vec 모델을 사용해 향수 설명과 리뷰에서 추출한 주요 키워드를 벡터화하고, 이를 사용자 정보와 비교해 유사도를 계산합니다.

  • Kor2Vec 모델: 
    CNN 기반의 char-word 임베딩을 한국어에 적용한 모델로, 향수 설명에서 추출한 키워드와 사용자의 분위기 정보를 비교하여 유사도를 산출합니다.
    이를 통해 비슷한 나이, 성별, 분위기를 가진 사용자가 선호하는 향수를 추천할 수 있습니다.


이 과정에서 주목할 점은 단어 간 유사도를 기반으로 점수를 계산하여 추천 결과를 도출한다는 것입니다. 이를 통해 단순히 나이와 성별만으로 추천하는 것이 아니라, 각 사용자가 선호할 가능성이 높은 향수를 정교하게 예측할 수 있었습니다.


4. 개발 초기 문제 해결 및 피드백 반영

개발 과정에서 피드백을 통해 몇 가지 중요한 변화를 주었습니다.

  • 🙋결과의 다양성 문제 해결: 
    초기에는 특정 향수만 반복적으로 추천되는 문제가 있었습니다. 이를 해결하기 위해 워드 임베딩을 기반으로 한 추천 시스템의 키워드 데이터를 정제하고, 지나치게 높은 점수를 받는 키워드를 수정하여 더 다양한 향수 결과가 출력되도록 했습니다.

  • 💁확률 기반 점수 산정: 
    인상 분류 모델이 이미지에서 가장 확률이 높은 두 가지 라벨을 출력하도록 설계했기 때문에, 이 확률값을 향수 추천 점수에 반영해 더 정교한 추천 결과를 제공했습니다. 
    예를 들어, '시크하고 화려한' 키워드를 가진 두 사용자가 있어도 각자의 비율이 다를 수 있으며, 이를 기반으로 개별화된 추천을 제공하게 됩니다.

  • 🙆사진 인식 문제 개선: 
    초기에 얼굴 인식이 되지 않거나, 여러 얼굴이 인식된 경우 오류 메시지를 출력했지만, 사용자가 반려동물이나 캐릭터 사진을 업로드하는 경우도 고려해 다소 유연한 결과를 출력하도록 수정했습니다. 
    사용자 경험을 개선하고, 더 많은 사용자가 다양한 방식으로 서비스를 즐길 수 있도록 하기 위한 결정이었습니다.


5. 결과 이미지 공유 및 개인정보 보호

초기 버전에서는 테스트 결과 이미지를 공유하려는 사용자의 요구를 반영하기 위해 공유 기능을 도입했으나, 개인정보 보호 문제로 인해 결과 이미지가 서버에 일정 시간 이후 삭제되도록 설정했습니다. 

서비스의 개인정보 보호 기준을 강화하기 위한 조치였으며, 결과를 공유하고 싶은 사용자에게는 일정 제한을 두는 대신, 테스트 링크를 공유하는 방식으로 대체했습니다.


마무리 하며

초개인화 서비스는 이제 마케팅뿐만 아니라 다양한 산업에서 필수적인 요소로 자리 잡고 있습니다.
AROMAS와 같은 맞춤형 추천 기능을 다른 비즈니스에 적용하면, 고객 만족도와 참여도를 크게 향상시킬 수 있습니다. 다양한 산업에 어떻게 적용할 수 있을지 몇 가지 사례를 공유드립니다.


  • 👚패션 산업: 
    AROMAS와 같은 추천 시스템을 패션 업계에 도입하면, 고객의 스타일, 나이, 체형, 기호 등을 분석해 개개인에게 맞는 의류나 액세서리를 추천할 수 있습니다. 고객의 이전 구매 이력과 선호도를 기반으로 스타일을 예측하고, 그들이 선호할 가능성이 높은 제품을 제안하는 초개인화된 쇼핑 경험을 제공할 수 있습니다.


  • 🏃헬스케어 산업: 
    헬스케어 분야에서도 개인의 건강 상태, 생활 습관, 유전자 정보를 기반으로 맞춤형 치료법이나 건강 관리 방안을 추천할 수 있습니다. AI는 각 환자의 데이터를 분석해 적합한 식단, 운동 계획, 건강 보조제를 추천함으로써, 환자 맞춤형 건강 관리를 실현할 수 있습니다.


  • 🚞여행 산업: 
    여행 취향, 예산, 일정 등을 기반으로 한 맞춤형 여행 상품을 추천하는 서비스도 초개인화의 좋은 예입니다. AI는 사용자가 선호하는 여행 스타일을 분석해 그들의 성향에 맞는 여행지, 숙소, 액티비티 등을 추천하여 개인화된 여행 계획을 제안할 수 있습니다.


  • 🌐엔터테인먼트 산업:
    영화, 음악, 게임 등 다양한 엔터테인먼트 콘텐츠도 개인의 취향을 분석해 맞춤형 추천이 가능합니다. 사용자가 좋아하는 장르, 배우, 음악가 등을 AI가 파악해 그들이 관심을 가질 만한 콘텐츠를 제공할 수 있으며, 이는 사용자 참여를 높이고 이탈을 줄이는 효과를 기대할 수 있습니다.



여러분의 비즈니스에서도 AI를 도입하여, 고객의 만족도를 높이고 새로운 기회를 창출해 보시길 바랍니다.

AROMAS 서비스 체험 

AROMAS 서비스는 버튼 클릭 또는 [젠데이터 홈페이지] → [AI 솔루션] 에서 확인할 수 있습니다.

상호명: (주)젠데이터   ㅣ 사업자번호 : 449-87-02752 

T. 070-4895-5550 ㅣ  E. info@gendata.kr
본사. 광주광역시 동구 금남로 193-22,

광주에이아이창업캠프 3층 308호


연구소. 서울특별시 금천구 가산디지털1로 84

에이스하이엔드타워8차 3층 310호


COPYRIGHT ⓒ (주)젠데이터 ALL RIGHT RESERVED

상호명: (주)젠데이터 ㅣ 사업자번호 : 449-87-02752 | T. 070-4895-5550 ㅣ E. info@gendata.kr
본사. 광주광역시 동구 금남로 193-22, 광주에이아이창업캠프 3층 308호

연구소. 서울특별시 금천구 가산디지털1로 84 에이스하이엔드타워8차 3층 310호
COPYRIGHT ⓒ (주)젠데이터 ALL RIGHT RESERVED