본문 바로가기
  • 책상 밖 세상을 경험할 수 있는 Playground를 제공하고, 수동적 학습에서 창조의 삶으로의 전환을 위한 새로운 라이프 스타일을 제시합니다.
Miscellaneous

[2025-1] 이루가 - Machine learning based recommender system for e-commerce

by wnfladl 2025. 5. 10.

논문 링크: https://www.researchgate.net/publication/373328673_Machine_learning_based_recommender_system_for_e-commerce

 

0. Abstract

  • 전자상거래의 핵심 성공 요소 중 하나는 맞춤형 상품 추천
  • 추천 시스템은 사용자 경험을 향상시키고 구매율을 높임
  • 본 연구에서는 FP-Growth 기반의 연관 규칙 알고리즘을 사용
  • 추천된 상품의 평균 구매 확률이 높아 실제 적용 가능성 있음

 

1. Introduction

  • 오늘날 디지털 기술의 발전과 인터넷 접근의 용이성 덕분에 우리는 점점 더 많은 정보에 노출 → 사용자에게 다양한 콘텐츠를 제공하지만, 동시에 정보 과잉과 다수의 정보 출처로 인해 혼란 초래
  • 이러한 문제의 해결을 위해서 사용자에게 정보를 전달하기 전에 필터링할 수 있는 다양한 도구들이 개발되어 왔으며, 대표적인 것이 추천 시스템
  • 추천 시스템의 주요 목표: 사용자의 선호도에 따라 정보를 제공함으로써 의사결정을 쉽게 하도록 돕는 것

<추천 시스템의 두 가지 방식>

1) 콘텐츠 기반 필터링(Content-based filtering)

  • 추천되는 제품의 특성을 고려하여 유사한 콘텐츠끼리 그룹화
  • 콘텐츠: 단어와 제품 간의 관계를 의미
  • 외부 데이터를 기반으로 특성을 추출해야 하는 단점

2) 협업 필터링(Collaborative filtering)

  • 유사한 사용자 그룹(이웃)의 데이터를 활용하여 제품 추천
  • 추천 방식은 전 사용자에게 동일하게 제공하는 글로벌 방식과 사용자마다 다르게 추천하는 로컬 방식으로 나뉨
  • 협업 필터링은 구현 방식에 따라 두 가지 접근법 존재
    • 메모리 기반(Memory-based): 시스템이 메모리에 저장된 사용자 이웃 정보를 이용해 추천 생성
    • 모델 기반(Model-based): 사용자 행동을 모델링한 후 이 모델을 기반으로 추천 생성
  • 메모리 기반 방식이 정확도 측면에서 우수하지만, 모델 기반 방식은 대규모 데이터셋에 더 적합하다고 알려져 있습니다.

<추천 시스템이 사용하는 정보>

  • 명시적 정보 (Explicit): 사용자가 직접 제공한 정보 (평점, 위시리스트, 댓글 등)
  • 암시적 정보 (Implicit): 사용자가 의도치 않게 남긴 정보 (예: 구매 이력)

 

2. Related work

  • 기존의 전통적인 콘텐츠 기반 추천 시스템 아키텍처에 feedback adjuster(피드백 조정기)를 추가하여 개인화된 콘텐츠 기반 추천 시스템을 제안한 연구 → 반복적인 구매 행동을 기반으로 고객의 선호도를 객관적으로 판단할 수 있어 주관적인 판단을 피할 수 있음
  • Alibaba 웹사이트의 데이터셋을 기반으로 세 가지 주요 추천 알고리즘을 비교 분석 연구 → 딥러닝 기반의 CNN(합성곱 신경망) 추천 알고리즘이 다른 알고리즘보다 뛰어난 성능 보임
  • 사용자의 피드백에서 제품 특성 정보를 추출하여 관련 없는 특성을 가진 제품은 추천하지 않는 방식으로 추천 품질을 향상시키는 접근법을 제안 연구
  • 다양한 협업 필터링 알고리즘(K-최근접 이웃, Slope One, Co-clustering, 비음수 행렬 분해)을 비교 분석한 연구 →  아이템 기반 협업 필터링에서 K-최근접 이웃(K-NN) 알고리즘이 가장 우수
  • 클라우드 컴퓨팅 플랫폼 위에 전자상거래 추천 시스템을 구축하는 솔루션을 구현한 연구 → 방대한 상품 및 사용자 정보 처리 능력 향상 및 비용 효율적인 고성능 컴퓨팅 가능
  • 다양한 전자상거래 플랫폼에서 실시간 사용자 데이터를 수집 및 전처리하여, 이를 통합해 다음 단계의 데이터 마이닝을 준비하고 빅데이터 기반 추천 시스템으로 개인화된 상품을 자동 추천하는 접근 제안 연구
  • 고객의 선호도를 파악하기 위해 개선된 conjoint analysis 제안 연구 → 일반화 선형 모델, 결정 트리, 랜덤 포레스트, 그래디언트 부스팅 트리, 서포트 벡터 머신 등과 비교, 여러 속성 중 최적 가격의 제품을 선택할 때 효과적

 

3. Background

 

- 일반적으로 추천 시스템은 다음 세 가지 요소를 기반으로 작동함

  • 사용자 집합 U
  • 상품 집합 P
  • 효용 함수(utility function) h: 사용자가 특정 상품에 대해 얼마나 흥미를 가지는지를 수치로 나타냄

- 따라서 추천 시스템은 최대화해야 할 함수로 정의


∀𝑢 ∈ 𝑈, 𝑖′𝑢 = argmax₍𝑖∈𝐼₎ ℎ(𝑢, 𝑖)  

 

  • I: 사용자 U에 대해 추천 가능한 제품 집합 
  • h(𝑢, 𝑖): 특정 사용자 u가 상품 i에 대해 가질 관심도의 정도

- 추천 시스템에서 상품 집합 I의 규모나 구성에 따라 추천 결과의 정확도와 적합성이 달라질 수 있으므로 중요

- 효용 함수 h의 선택은 사용하는 접근 방식에 따라 달라짐

  • 협업 필터링(Collaborative Filtering): 사용자 간 또는 아이템 간의 유사도(similarity)를 기반으로 h를 정의
  • 콘텐츠 기반 필터링(Content-based Filtering): 아이템의 특성(attribute 또는 feature)에 기반해 h를 정의

 

3.1. Collaborative Filtering

  • collaborative filtering은 여러 사용자의 협력을 활용하여 추천을 생성하는 방식
  • 작동 방식
    1. 사용자로부터 리뷰나 구매 이력 같은 정보를 수집하여 관심사 파악
    2. 이 정보를 다른 사용자들과 비교하여 가장 유사한 사용자들 찾기
    3. 이와 유사한 사용자들에게 적절한 제품 추천
  • collaborative filtering은 두 가지 중 하나의 방식으로 구현 가능
    • 메모리 기반 (Memory-based): 유사한 사용자 정보를 메모리에 저장하고 그에 기반하여 추천
    • 모델 기반 (Model-based): 수집한 정보를 기반으로 사용자 선호 모델을 생성하여 추천
  • 메모리 기반 방식에서는 일반적으로 두 가지 유사도 측정 기법이 많이 사용됨
    • 코사인 유사도 (Cosine Similarity): 암시적 정보 사용 시(ex. 구매 이력)
    • 피어슨 상관계수 (Pearson Correlation): 명시적 정보 사용 시(ex. 평점 데이터)

  • 모델 기반 협업 필터링에서는 세분화(Segmentation) 등의 기법을 활용하여 제품 구매나 견적 선택에 영향을 주는 잠재적 정보(latent information)를 탐지

 

 3.2. Trusted Network

  • 신뢰 네트워크(trust networks)는 collaborative filtering과 유사한 원리를 사용하지만 사용자 간 유사성 개념을 한 단계 더 확장한 개념
  • 신뢰 네트워크에 대한 연구는 "사용자가 제품을 구매하게 되는 이유는 협업 필터링에서 사용하는 전통적인 유사도 이외의 요인들도 존재할 수 있다"는 가설에서 출발
  • 이 가설은 현실 세계에서 사람들이 친구나 신뢰할 수 있는 사람에게 조언을 구하고 제품에 대해 대화하는 경향이 있다는 점에서 기인함
  • collaborative filtering이 개인의 프로필 기반 유사도를 사용하는 반면 신뢰 네트워크는 사용자 간의 신뢰 관계 자체에 초점

<주요 이점: cold start problem 완화>

  • collaborative filtering 기반 시스템에 신뢰 네트워크를 추가하면 콜드 스타트 문제(cold start problem)를 완화할 수 있음
  • 즉, 새롭게 시스템에 가입한 사용자도 다른 사용자들과 신뢰 관계가 있다면 추천을 받을 수 있음
  • 이를 위해서는 해당 사용자가 시스템 내 다른 사용자와 이미 연결되어 있어야 하고, 사용자의 1차 신뢰 네트워크에서 상품을 찾지 못하면 2차 신뢰 네트워크로 탐색 범위를 확장할 수 있어야 함
  • 하지만 이런 방식은 검색 범위를 멀리 확장할수록 커버리지는 높아지지만 추천 정확도는 낮아지는 단점도 존재

<신뢰의 두 가지 유형>

  1. 맥락 의존적 대인 신뢰 (Context-specific interpersonal trust)
    • 특정 상황에서만 사람들을 신뢰하는 경우
    • ex. 영화 볼 때는 친구를, 집을 살 땐 부동산 중개인을 신뢰
  2. 비개인적(시스템적) 신뢰 (Impersonal/systematic trust)
    • 사용자들이 속한 그룹에 기반한 일반적 신뢰
    • ex. 같은 커뮤니티에 속해 있다는 이유로 서로를 신뢰

 

3.3. Latent model

  • 잠재 모델(latent model) 기반의 추천 시스템은  신뢰 네트워크나 협업 필터링 방식과는 달리, 추천을 수행하는 동안 사용자 정보를 메모리에 유지하지 않음
  • 대신 사용자 정보를 데이터 마이닝 기법을 이용하여 모델로 변환
  • 이 모델을 만들기 위해 먼저 임의의 파라미터로 초기 학습을 진행한 후 cost function을 이용해 파라미터를 정교하게 조
  • latent model은 사용자와 제품 간의 명시적인 연결을 찾기보다는 사용자가 어떤 상품을 구매하게 되는 숨겨진(잠재적인) 요인을 파악
  • 기존 시스템에서는 드러나지 않던 사용자의 숨겨진 선호를 포착할 수 있다는 장점 존재(ex. 겉으로는 알 수 없지만 특정 사용자 그룹이 어떤 속성을 가진 제품을 더 좋아하는 경향 발견 가능)
  • 하지만 추천의 이유를 명확히 설명하기 어렵다는 단점도 존재(latent factor는 가격, 색상 같은 일반적인 속성이 아니라 여러 특성이 혼합된 정체 불명의 요인일 수 있기 때문)

<Matrix Factorization>

  • 잠재 모델을 구현하는 대표적인 방법 중 하나
  • 사용자와 제품을 잠재 공간(latent space)에서 벡터로 표현하고 이 두 벡터의 내적을 통해 추천 점수를 계산
  • 초기 행렬은 행(row)에 사용자, 열(column)에 제품이 배치된 형태
  • 이 행렬을 분해하여 각 사용자와 제품을 잠재 공간 상의 벡터로 변환
  • 두 벡터 간 내적 결과가 추천 점수가 됨
  • 실제 추천 시스템 데이터는 대부분 희소(sparse)하고 불균형적이므로 잠재 공간에 불필요한 노이즈가 많이 추가되지 않도록 주의

 

3.4. Association rules

  • 연관 규칙(association rules)은 일반적으로 대규모 데이터셋에서 반복적으로 나타나는 패턴을 발견하기 위해 사용됨
  • 신뢰 네트워크처럼 협업 필터링과 결합하여 추천 시스템의 정확도를 높이는 데 사용되기도 함
  • 연관 규칙은 확률적 인과관계(probabilistic cause-effect model)를 따르므로, 시스템은 여러 이벤트들을 분석하고, 어떤 결과(사실)가 발생하기 전 공통적으로 나타나는 사례들을 그룹화

<Association rules 기반 추천 시스템의 구조>

  • 거래 이력(transaction history)을 바탕으로 연관 규칙을 추출하여 추천에 활용
  • 문제점:
    • 추출되는 규칙의 수가 너무 많아져 유의미한 지식 도출이 어려움
    • 규칙의 수, 신뢰도(confidence level) 같은 명시적인 파라미터 지정이 필요함
  • 이를 보완하기 위해 품질 관리가 내장된 연관 규칙 생성 모델이 제안됨

<Association rules의 두 가지 형태>

  1. 상품 간 연관: 예) 제품 A와 B를 좋아하는 사람은 제품 C도 좋아한다
  2. 사용자 간 연관: 예) 사용자 A와 B가 좋아하는 상품은 사용자 C도 좋아할 가능성이 높다

→ 사용자 간의 직접적인 유사도가 없더라도 이러한 규칙 간의 중첩 관계를 분석하여 추천 가능

 

<문제점 및 특징>

  • 모델을 이용해 연관 규칙을 생성하면 품질은 향상되지만 여전히 생성되는 규칙 수가 지나치게 많아 추천 신뢰도가 떨어지는 문제가 있음
  • 연관 규칙은 본질적으로 두 개 이상의 특징(feature)의 조합으로 구성된 참/거짓 진리표로 표현 가능
  • 대규모 데이터셋에서 특징 간 관계를 추론하는 if-then 구조의 규칙들을 생성

<Association rule의 3가지 주요 index>

Support (지지도) 특정 항목(단독 또는 조합)이 데이터셋에 등장하는 비율
Confidence (신뢰도) A가 주어졌을 때 B가 함께 등장할 확률 (0~1 사이)
Lift (향상도) X와 Y가 독립적일 때 기대되는 지지도에 비해 실제 지지도의 비율 → 1보다 크면 양의 상관관계
 
<Association rule 기반 주요 알고리즘>
  1. Apriori 알고리즘
    • 자주 등장하는 항목 집합(frequent item-sets)을 기반으로 연관 규칙 생성
    • 트랜잭션 데이터에서 작동하도록 설계됨 
    • 너비 우선 탐색(BFS)과 해시 트리(hash tree)를 통해 아이템 집합의 조합을 반복적으로 생성
    • 후보 항목을 하나하나 생성하며 빈도 조건을 만족하는 집합을 추출
  2. FP-Growth 알고리즘
    • Apriori의 개선 버전 
    • 후보 집합 생성 없이 빈번한 항목 집합을 추출
    • 분할 정복(divide-and-conquer) 방식 채택
    • FP-Tree (빈번 패턴 트리)라는 압축된 전용 트리 구조를 사용해 메모리 효율성과 속도 향상
    • 대용량 데이터에 적합한 고성능 알고리즘

Association rule은 고객 행동 분석, 장바구니 분석, 상품 및 고객 분류, 제품 카탈로그 구성, 매장 운영 관리 등에 사용될 수 있고, AIS, SETM, Apriori, FP-Growth 등의 알고리즘에 적용할 수 있다.

 

4. Methodology

  • 고객의 구매 의사결정 문제를 해결하고, 매출을 증대시키기 위해서는 정확하고 효율적인 상품 추천 시스템의 구현이 중요
  • 해당 논문은 연관 규칙 기반 추천 시스템(Association Rule-Based Recommender System), FP-Growth 알고리즘을 적용
  • 이 알고리즘은 높은 정확도를 유지하면서도 구현과 설명이 용이하다는 장점이 있어 직관적 해석이 가능

 

4.1. Data visualization

  • 사용된 데이터셋: UCI Machine Learning Repository의 "Online Retail" 데이터
  • 이 데이터는 영국에 등록된 한 전자상거래 회사의 실제 거래 데이터로 구성되어 있으며, 총 406,829건의 거래 기록 포함
  • 해당 회사는 주로 독특한 선물용 제품을 판매
  • 데이터셋에 포함된 정보: 고객 ID, 인보이스 번호, 상품 코드, 상품 설명, 구매 수량, 구매 날짜, 단가, 인보이스 총액, 국가

4.2. Data pre-processing

 

  • 고객이 실제로 장바구니에 담은 상품만 남기고 회사 측에서 증정한 무료 상품은 데이터에서 제거
  • 각 고객이 구매한 상품들을 하나로 묶어 새로운 데이터셋 구성 =  이 데이터셋에서는 각 행이 하나의 거래(인보이스)를 나타내며 해당 고객 ID와 함께 구매한 모든 상품 정보가 포함됨

 

 

 

4.3. Association rules modelling

  • 연관 규칙을 도출하기 위해 해당 연구에서는 FP-Growth 모델 사용 → 거래 이력을 바탕으로 데이터셋 내에서 가장 자주 발생하는 연관 규칙 집합을 도출할 수 있음
  • 이를 위해 고객들이 이미 구매한 제품들의 장바구니로 구성된 거래 기록 집합 데이터가 입력값으로 필요함
  • 연관 테이블을 구축하기 위해 두 가지 하이퍼파라미터 설정
    • minSupRatio (Minimum Support Ratio): 특정 아이템 집합이 "frequent" 집합으로 간주되기 위한 최소 지지도
    • minConf (Minimum Confidence): 연관 규칙을 생성하기 위한 최소 신뢰도 임계값
  • 이 설정을 바탕으로 시스템은 총 4,970개의 연관 규칙 생성
  • FP-Growth 모델을 통해 도출된 연관 규칙들은 이후 각 고객의 장바구니 데이터에 적용되어 고객의 과거 구매 이력을 기반으로 새로운 제품을 추천할 수 있게 됨
  • 추천된 제품들을 기반으로 예상 가격(Estimated Prices)도 계산됨

 

 

5. Model evaluation and results

해당 연구는 추천 시스템의 성능을 아래의 방식으로 평가함:

1) 고객이 다음에 구매할 제품의 평균 확률(Paverage) 계산: 추천된 제품 중 실제 구매로 이어질 가능성의 평균치를 기반으로 효과 측정

2) 예측 및 추천된 제품들로부터 기대되는 수익(Expected Incomes)도 함께 계산 

 

→ 평가 과정을 통해 제안된 추천 시스템을 실제로 도입했을 경우 매출이 얼마나 증가할 수 있을지 추정 가능

 

6. Conclusion

  • 오늘날처럼 정보가 넘쳐나는 시대에 데이터 과잉(data overload)은 올바른 결정을 내리는 데 큰 장애물이 되고 있음
  • 특히 전자상거래 이용자(e-consumers)가 혼란스러운 정보 속에서 자신의 관심사에 맞는 정보를 정확하고 빠르게 찾을 수 있게 하는 것이 모든 e커머스 기업에게 주어진 중요한 과제
  • 이러한 배경에서 추천 시스템은 이러한 문제를 해결하고 사용자가 올바른 결정을 내릴 수 있도록 돕는 역할 수행
  • 해당 연구는 FP-Growth 알고리즘을 활용한 연관 규칙 기반 추천 시스템을 구현한다는 목표를 달성했지만, 추천 시스템의 평가 지표 중 일부인 다양성(diversity), 설명 가능성(explainability)은 명확하게 정의하기 어렵다는 한계점도 존재