SlideShare a Scribd company logo
1 of 37
H&M Personalized Fashion
Recommendation Systems
시스템 종합설계(야) 3조
2022-06-09
인천대학교 산업경영공학과(야)
김종은 김범수 김현준 이태희 임재현
목차
Introduction
대회 소개
대회 내 데이터 소개
일정 계획
Data Analysis
Data EDA
Data Preprocessing
Recommender
System Models
Memory Based Method
Learn-to-Rank Models
Conclusion
Results
Limitations
Further Research Areas
1. Introduction 일정계획
3월 3일 3월 10일 3월 17일 3월 24일 3월 31일 4월 7일 4월 14일 4월 21일 4월 28일 5월 5일 5월 12일
팀결성
주제 탐색
데이터 분석
개념학습
방법론 탐색
데이터 전처리
모델링
결과 제출
공모전 참여기간
1. Introduction
• 글로벌 SPA 의류 브랜드 H&M에서 Kaggle을 통해 열린 총 상금 $50,000의 대회
• 온라인 고객 쇼핑 경험을 향상시키기 위해서 개인화된 제품 추천 시스템을 구현하기 위한 목적으로
대회 개최
• 대회에서 제공하는 데이터들을 통해 향후 고객이 어떤 제품을 구매할지 예측하는 것이 목표
• 대회 개최 기간은 2022.02.08~ 2022.05.09 UDT(미국시간)
대회 소개
1. Introduction 대회 내 데이터
데이터 파일 명 내용
Images 제품의 사진
articles.csv 제품의 특징에 대한 정보가 담긴 파일
customers.csv 고객의 개인정보가 담긴 파일
sample_submission.csv 예시로 만들어진 제출 양식
transactions_train.csv 고객의 제품에 대한 구매 정보가
1. Introduction
이미지 데이터 (105542) Images
• 총 105542개의 제품의 사진이 존재함
• 제품 id로 이미지 파일이 명칭됨
대회 내 데이터 소개
1. Introduction
고객 메타 데이터 (1371980, 7) customers.csv
• 총 1371980명에 대한 개인정보가 존재함
• 고객 id, 우편번호는 개인정보라서 암호화되어 있
음.
• 하나의 행은 고객의 고유 데이터를 의미함
대회 내 데이터 소개
Customer id 문자열로 이루어진 ID
FN 패션 뉴스 구독 여부
Active 커뮤니케이션 가능 여부
Club member status 회원 상태(신규, 활성화, 탈퇴)
Fashion news frequency 패션 뉴스 알람 주기
Age 나이(16~99)
Postal code 우편번호
1. Introduction
제품 데이터(105542, 25) articles.csv
• 총 105542개의 제품에 대한 정보가 담겨져 있음.
• 하나의 행은 제품에 대한 특징 데이터를 의미
대회 내 데이터 소개
제품id 숫자로 이루어진 ID
옷 종류 제품 특징
옷 색상 제품 색상 및 무늬
옷 용도 및 사이즈 제품 착용자 및 용도 분류
…
1. Introduction 대회 내 데이터 소개
1. Introduction
거래기록 데이터(31788324, 5) transactions_train.csv
• 2018.09.20~2020.09.22기간 동안 발생한
약 3천만건의 거래기록이 담겨져 있음
• 하나의 행은 제품 1회 구매 기록을 의미함
대회 내 데이터 소개
T dat 구매 날짜
Customer id 고객 정보의 id
Article id 제품 정보의 id
Price 실제 가격의 /590
Sales channel id 구매 방식
(1: 오프라인, 2: 온라인)
1. Introduction
샘플 양식 데이터(137980, 2) sample_submission.csv
• 대회에서 제공한 Baseline 제출 양식
• 고객 데이터에 등장하는 모든 고객에 대한 동일한
12가지 제품id가 담겨져 있음
• 샘플을 제출하면 0.0031점이 나옴
대회 내 데이터 소개
대회 제출물 조건 및 평가 방식
• 모든 고객에 대한 최대 12가지 아이템 리스트를 제출
• 평가는 2020.09.23~29일간의 거래기록을 참조해 얼마나 일
치하는지 Mean Average Precision@12를 통해 평가됨
• 틀린 예측에 대한 감점은 없음
변수 명 의미
U Customer의 수
P(k) Cutoff k에서의 정밀도
N 고객 당 예측 수
M 고객 당 실측값의 수
Rel(k)
K에 있는 항목인지 아닌지 판별하는지
시함수
2. Data Analysis Data EDA
데이터 분석 접근법
• 이미지 파일
 Images
• 테이블 데이터 파일
articles.csv, transactions_data.csv, customers.csv
• 거래기록을 일주일 단위로 분석한 결과 전체 아이템 중 약 17%만 등장, 전체 사용자 중 약 6%만 평균적으로 등장함.
2. Data Analysis Data EDA
판매량 데이터 분석
• 전체 기록으로 제품별 판매량을 살펴보니 판매량은 롱-테일 분포를 띔
• 마지막 일주일 상위 12품목으로 제출 결과 0.0062를 얻음 (기존 0.0031)
상위12품목의 거래량은 전체 거래량 3% 밖에 안됨. -> 97%의 나머지 거래량은 반영하지 못함.
• 전체 거래기록을 확인한 결과 약 7만명의 사용자와 1000개의 아이템이 거래에 나타나지 않음(Cold Start)
• 거래기록을 일주일 단위로 분석한 결과 전체 아이템 중 약 17%만 등장, 전체 사용자 중 약 6%만 평균적으로 등장함.
2. Data Analysis
각 주차 별 등장한 아이템 리스트들의 유사도 비교
Data EDA
Correlation of Articles=
𝑤𝑒𝑒𝑘(𝑛−1)∩𝑤𝑒𝑒𝑘(𝑛)
𝑤𝑒𝑒𝑘(𝑛−1)
등장하는 아이템 리스트는 가까울 수록 높은 유사율을 발견
• N주차에 대한 N-1주차의 아이템 리스트는 평균적으로
78%의 일치율을 보임
• N주차에 대한 N-1~N-3주차의 아이템 리스트 합집합은
평균적으로 90%의 일치율을 보임
 미래 예측을 위한 아이템 후보군에는 최근에 등장한 아
이템 목록만 사용하는게 바람직하다고 판단함
2. Data Analysis Data EDA
기준
1주내
재구매
비율
2주내
재구매
비율
3주내
재구매
비율
같은 제품
구매 5.1% 6.2% 6.6%
같은 제품군
구매 6.8% 8.5% 9.4%
같은 제품
그룹 구매 10.8% 14.3% 16.5%
5.1
6.2 6.6
6.8
8.5
9.4
10.8
14.3
16.5
0
2
4
6
8
10
12
14
16
18
1주내 재구매 비율 2주내 재구매 비율 3주내 재구매 비율
고객들은 동일한 제품을 재구매하는가?
같은 제품 구매 같은 제품군 구매 같은 제품 그룹 구매
Model Research
추천 시스템 정의
• 정보 필터링 시스템의 일종으로 특정 아이템에 대한 사용자의 “rating”, 혹은 “preference”를 예측하는 시스템을 의미
- Francesco Ricci, “Introduction to Recommender Systems Handbook”, Springer
추천 시스템을 구현하기 위해 사용한 방법론
1. 메모리 기반 추천 시스템
2. Learn-to-Rank 모델 기반 추천 시스템
3. Recommender Systems
Memory Based
• 메모리 기반 추천 시스템
1. 전체 거래기록에서 특정 기간 추출
2. 고객 정보를 통해 고객을 집단 분류
3. 샘플에서 고객 집단 별 거래기록 추출
4. 집단 별 사용자-아이템 구매 여부
행렬 생성
5. 차원 축소를 이용해 사용자-아이템
선호도 행렬 생성
6. 사용자 열에서 선호도 값이 가장 큰
12개 아이템 추천 진행
3. Recommender Systems
Singular Value Decomposition
3. Recommender Systems
사용자 – 아이템 행렬 축소 특잇값 분해 예시
고객 1 고객 2 … 고객 n
제품 1 0 1 … 0
제품 2 1 0 … 1
…
…
…
…
제품 m 1 0 … 0
구매여부에 대한 User-Item Matrix
차원축소를 통해 산출된 User-Item Matrix
고객 1 고객 2 … 고객 n
제품 1 0.002451 1.0067 … 0.00048
제품 2 0.05024 -0.00347 … 0.06416
…
…
…
…
제품 m 0.0264 -0.00634 … -0.00526
고객 1 고객 2 … 고객 n
선호도1 0 1 … 0
선호도2 1 0 … 1
선호도1 선호도2
제품 1 ~ ~
제품 2 ~ ~
…
…
…
제품 m ~ ~
• 차원 축소의 공분산 유지율 = 0.5 이상 지점에서 차원 축소 실시
• 차원의 크기가 너무 낮을 경우, 공분산 유지율이 너무 낮아지면서 데이터 훼손이 발생
• 차원의 크기를 너무 키울 경우, 계산하는데 걸리는 시간이 오래 걸리고/차원 축소 의미가 없음
Singular Value Decomposition
3. Recommender Systems
Memory Based
메모리 기반 추천 시스템 추가적인 특징
• 샘플 거래 기록에 등장하지 않은 Cold-Start 고객은 추천이 불가능
 예측 시점 일주일 전 거래량 상위 12품목 추천 진행
• 거래기록 샘플링 할 시, 아이템 거래 횟수가 1 이하인 아이템 제거 후 사용자-아이템 구매 여부 행렬 생성
• 중복제거를 한 경우 오히려 하지 않은 것이 좋게 나옴  기존에 구매한 제품도 재 추천되는 경우 존재
9.09~22의 거래기록, 1회 이하로 거래된 아이템 제거, 중복 제거X, 추천 경우 MAP@12 점수 0.01369
3. Recommender Systems
Memory Based
메모리 기반 협업 필터링 방식의 단점
• 필요로 하는 메모리가 많음  샘플 크기가 클수록 성능은 좋아지나, 계산량이 비약적으로 상승
• Cold-Start 고객에 대한 추천이 어려움
 구글, 유튜브, 링키드인, 등 유명 기업 추천 시스템에서 사용되는 Candidate Retrieval + Ranking 방법론을 사용
3. Recommender Systems
LGBM
Candidate Retrieval + Ranking 추천 시스템 원리
• 1 단계 : 전체 데이터 베이스에서 사용자 정보, 구매 이력 등을 활용해서 후보군 생성함
• 2 단계 : 생성된 후보군에서 개인 사용자에 대해 추가적인 아이템 정보, 이전 사용자 정보 등을 활용해서
유의미한 아이템 추출, 랭킹(사전에 학습이 완료된 Ranker 모델)을 진행함
• 3 단계 : 랭킹이 가장 높은 k개의 아이템을 사용자에게 추천함
3. Recommender Systems
LGBM
후보군 생성(Candidate Retrieval) :
Rule-based Candidate Retrieval
정해진 기간 내 구매 기록, 가장 많이 구매된 아이템 등 특정 규칙을 통해서 후보군 생성
 가장 등장 빈도가 높은 아이템에 대한 거래 기록, 고객이 구매한 아이템에 대한 거래 기록 등 적용
3. Recommender Systems
LGBM
랭킹(Ranking):
• 사전 학습된 Ranker(“Ordinal Regression”) 모델을 활용해서 사용자에게 해당하는 후보군 아이템의
순서를 예측하고 가장 높은 k개의 후보들을 사용자에게 추천하는 방식.
3. Recommender Systems
LGBM
Ranking(“Ordinal Regression”) Models:
• 정보 검색을 위해서 입력된 질의(query)에 대한 후보들을 가장 적합한 순으로 데이터들을 나열하는 작업을
진행하는 모델들을 의미함
3. Recommender Systems
- Frakes, William B.; Baeza-Yates, Ricardo (1992). “Information Retrieval Data Structures & Algorithms.”
LGBM
후보군 생성 원리:
• 주차 별 구매 기록 데이터를 활용해서 샘플에 등장하는
모든 사용자에 대해서 Positive 샘플링, Negative
샘플링을 통해서 생성함.
• Positive 샘플링: 실제 고객 구매 이력
• Negative 샘플링:
각 주차 별 상위 12품목 중 고객이 구매하지 않은 제품
구매 기록 임의 생성
3. Recommender Systems
LGBM
Light GBM Ranker
• Gradient Boosting Decision Tree의 종류 중 하나인 LGBM은 수직적 분기를 통해 학습을 진행.
• LGBM Ranker 분기는 Lambda Rank Loss 변화량이 가장 큰 나무를 계속 분기 시키는 형태임.
3. Recommender Systems
LGBM
훈련 데이터 (구매 여부의 0-1로 Partial Order 생성)
• X: 아이템 * 변수 데이터
• y: 순서(0~n , 0-1로 부분적인 순서도 가능) 바탕으로 학습을 진행
3. Recommender Systems
거래기록 제품정보 고객정보 y-label
LGBM
Light GBM Ranker Test Data
• 예측 시점을 기준으로, 모든 행이 Negative 샘플링이 된 후보군을 바탕으로 예측을 진행
• 사용자 후보군에 대한 상위 12개 예측값을 기준으로 추천 진행함.
3. Recommender Systems
Ranker 모델
Feature Engineering
3. Recommender Systems
Feature Engineering:
• 도메인 지식을 활용해서 Raw Data에서 feature들을 추출하는 기법 의미
- "Machine Learning and AI via Brain simulations". Stanford University.
• 일반적인 추천 시스템, Ranker 시스템의 경우 Raw Data를 활용하는 것보다 Feature Engineering을
통해서 추가적인 low-level feature를 같이 사용하는 것이 성능이 더 높다고 알려짐.
• 본 프로젝트에서는 Raw Data를 활용해서 거래량 빈도가 가장 높은 아이템의 비율 등과 같은 모델 학습을
위한 low-level feature를 다량으로 생성함.
같은 고객에 의해 구매되는 아이템 조합 찾기(Feature Engineering 예
시)
1. 거래기록을 일주일 단위로 추출
2. 직전 일주일에 등장하지 않은 아이템의 거래기록 삭제
3. 특정 아이템을 구매한 고객들의 상위 구매 목록 5개 추출
4. 모든 아이템에서 같이 구매한 상위 5개 추출
Feature Engineering
3. Recommender Systems
Feature Engineering
3. Recommender Systems
Feature Engineering를 통해서 생성한 변수 목록(40개):
LGBM
Feature Engineering
• 다른 모델에서 자주 사용되는 Feature들을 참조해서 약 40개의 Low-level feature를 추가적으로 생성
3. Recommender Systems
거래기록 +
Negative Samples
제품정보
신규정보
(low-level features)
LGBM
Feature Engineering 안 한 경우
• 점수 결과 : 0.02087
• 현재 리더보드로 환산할 경우 등수 : 1,703 등 / 2,954 팀
Feature Engineering 한 경우
• 점수 결과 : 0.02918
• 현재 리더보드로 환산할 경우 등수 : 51 등 / 2,954 팀
3. Recommender Systems
LGBM
3. Recommender Systems
Candidate Retrieval + Ranking 추천 시스템 특징
• 후보군을 생성하는 방법론 및 모델 학습을 위해서 사용되는 데이터에 따라 모델의 성능이 갈림
• 메모리 기반에 비해 상대적으로 사용하는 메모리 양이 적어 더 빠른 속도로 실험 가능
• 단점으로 Cold-Start 고객에 대한 추천에 어려움 존재
Results
4. Conclusion
최종적으로 MAP@12 점수 0.029(= 2.9% 정확도) 달성  전체 팀 중 51등에 해당하는 점수
0.01494
0.02087
0.02918
0
0.005
0.01
0.015
0.02
0.025
0.03
0.035
Memory Based Model LGBM Ranker LGBM Ranker
Feature +40
점수 변화
2105
1703
51
1
701
1401
2101
2801
Memory Based Model LGBM Ranker LGBM Ranker
Feature +40
등수 변화
4. Conclusion Further Areas for Research
Candidate Retrieval + Ranking 방법론 추가적인 연구 영역
• Candidate Retrieval 방식을 규칙 기반이 아닌 강화학습 등 Recall을 높을 수 있는 방법론 적용
• Ranking: 다양한 기계학습 알고리즘(CatBoost Rank 등) 사용 및 앙상블 기법 적용
• Feature Engineering : 추가적으로 더 좋은 Feature들을 생성 및 학습에 적용

More Related Content

What's hot

AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017
AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017
AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
 
게임서버 구축 방법비교 : GBaaS vs. Self-hosting
게임서버 구축 방법비교 : GBaaS vs. Self-hosting게임서버 구축 방법비교 : GBaaS vs. Self-hosting
게임서버 구축 방법비교 : GBaaS vs. Self-hostingiFunFactory Inc.
 
NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할Hoyoung Choi
 
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftPath to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftAmazon Web Services LATAM
 
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화BOAZ Bigdata
 
[211] 네이버 검색과 데이터마이닝
[211] 네이버 검색과 데이터마이닝[211] 네이버 검색과 데이터마이닝
[211] 네이버 검색과 데이터마이닝NAVER D2
 
트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기Yan So
 
WGSN 가이드.pdf
WGSN 가이드.pdfWGSN 가이드.pdf
WGSN 가이드.pdfjones cho
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링BOAZ Bigdata
 
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingAmazon Web Services Korea
 
Gestão Criativa na EBD
Gestão Criativa na EBDGestão Criativa na EBD
Gestão Criativa na EBDAmor pela EBD
 
Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...
Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...
Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...Amazon Web Services
 
Bootstrapping of PySpark Models for Factorial A/B Tests
Bootstrapping of PySpark Models for Factorial A/B TestsBootstrapping of PySpark Models for Factorial A/B Tests
Bootstrapping of PySpark Models for Factorial A/B TestsDatabricks
 
게임 분산 서버 구조
게임 분산 서버 구조게임 분산 서버 구조
게임 분산 서버 구조Hyunjik Bae
 
Getting Started with Amazon Redshift
Getting Started with Amazon RedshiftGetting Started with Amazon Redshift
Getting Started with Amazon RedshiftAmazon Web Services
 
Deep Learning in Recommender Systems - RecSys Summer School 2017
Deep Learning in Recommender Systems - RecSys Summer School 2017Deep Learning in Recommender Systems - RecSys Summer School 2017
Deep Learning in Recommender Systems - RecSys Summer School 2017Balázs Hidasi
 

What's hot (20)

AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017
AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017
AWS 클라우드 기반 게임 아키텍처 사례 - AWS Summit Seoul 2017
 
게임서버 구축 방법비교 : GBaaS vs. Self-hosting
게임서버 구축 방법비교 : GBaaS vs. Self-hosting게임서버 구축 방법비교 : GBaaS vs. Self-hosting
게임서버 구축 방법비교 : GBaaS vs. Self-hosting
 
NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할NDC2019 - 게임플레이 프로그래머의 역할
NDC2019 - 게임플레이 프로그래머의 역할
 
O cristianismo nos vingadores
O cristianismo nos vingadoresO cristianismo nos vingadores
O cristianismo nos vingadores
 
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon RedshiftPath to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
Path to the future #5 - Melhores práticas de data warehouse no Amazon Redshift
 
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화
제 17회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [중고책나라] : 실시간 데이터를 이용한 Elasticsearch 클러스터 최적화
 
[211] 네이버 검색과 데이터마이닝
[211] 네이버 검색과 데이터마이닝[211] 네이버 검색과 데이터마이닝
[211] 네이버 검색과 데이터마이닝
 
트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기트위터의 추천 시스템 파헤치기
트위터의 추천 시스템 파헤치기
 
WGSN 가이드.pdf
WGSN 가이드.pdfWGSN 가이드.pdf
WGSN 가이드.pdf
 
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
제 15회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [리뷰의 재발견 팀] : 이커머스 리뷰 유용성 파악 및 필터링
 
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 
Mais que amigos
Mais que amigosMais que amigos
Mais que amigos
 
Gestão Criativa na EBD
Gestão Criativa na EBDGestão Criativa na EBD
Gestão Criativa na EBD
 
Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...
Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...
Building Data Lakes and Analytics on AWS; Patterns and Best Practices - BDA30...
 
Bootstrapping of PySpark Models for Factorial A/B Tests
Bootstrapping of PySpark Models for Factorial A/B TestsBootstrapping of PySpark Models for Factorial A/B Tests
Bootstrapping of PySpark Models for Factorial A/B Tests
 
게임 분산 서버 구조
게임 분산 서버 구조게임 분산 서버 구조
게임 분산 서버 구조
 
Getting Started with Amazon Redshift
Getting Started with Amazon RedshiftGetting Started with Amazon Redshift
Getting Started with Amazon Redshift
 
Learning to Personalize
Learning to PersonalizeLearning to Personalize
Learning to Personalize
 
Ensemble methods
Ensemble methodsEnsemble methods
Ensemble methods
 
Deep Learning in Recommender Systems - RecSys Summer School 2017
Deep Learning in Recommender Systems - RecSys Summer School 2017Deep Learning in Recommender Systems - RecSys Summer School 2017
Deep Learning in Recommender Systems - RecSys Summer School 2017
 

Similar to [시스템종합설계].pptx

eCommerce Recommendation project
eCommerce Recommendation projecteCommerce Recommendation project
eCommerce Recommendation projectYEEUNOH2
 
언론사에 구글 애널리틱스 도입하기 - 강의 1주차
언론사에 구글 애널리틱스 도입하기 - 강의 1주차언론사에 구글 애널리틱스 도입하기 - 강의 1주차
언론사에 구글 애널리틱스 도입하기 - 강의 1주차chan693050
 
Aiffel 해커톤 최종 발표
Aiffel 해커톤 최종 발표Aiffel 해커톤 최종 발표
Aiffel 해커톤 최종 발표kiminPark2
 
전자상거래 협업필터링
전자상거래 협업필터링전자상거래 협업필터링
전자상거래 협업필터링InJae Hwang
 
레코픽 설명회 15회-개인화 추천(with DMC미디어)
레코픽 설명회 15회-개인화 추천(with DMC미디어)레코픽 설명회 15회-개인화 추천(with DMC미디어)
레코픽 설명회 15회-개인화 추천(with DMC미디어)recopick
 
역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdfDeukJin Jeon
 
PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준sungjun han
 
[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저
[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저
[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저Amazon Web Services Korea
 
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...Amazon Web Services Korea
 
빅 데이터 추진방안
빅 데이터 추진방안빅 데이터 추진방안
빅 데이터 추진방안Sihyoung Jurn
 
제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드
제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드
제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드BOAZ Bigdata
 
마케팅인사이트 회사소개서
마케팅인사이트 회사소개서마케팅인사이트 회사소개서
마케팅인사이트 회사소개서mktarcadia
 
Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스
Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스
Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스Minkyu Cho
 
[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템
[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템
[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템Kweonwoo Moon
 
Web analytics 2.0 study ch.4-4.5
Web analytics 2.0 study ch.4-4.5Web analytics 2.0 study ch.4-4.5
Web analytics 2.0 study ch.4-4.5Eunyoung Kim
 
Diquest 김경선 엔터프라이즈 검색에 적합한
Diquest 김경선 엔터프라이즈 검색에 적합한 Diquest 김경선 엔터프라이즈 검색에 적합한
Diquest 김경선 엔터프라이즈 검색에 적합한 s song
 
구매 기록 데이터 기반 솔루션 제공
구매 기록 데이터 기반 솔루션 제공구매 기록 데이터 기반 솔루션 제공
구매 기록 데이터 기반 솔루션 제공정재 전
 
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...Amazon Web Services Korea
 
취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...
취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...
취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...Amazon Web Services Korea
 

Similar to [시스템종합설계].pptx (20)

eCommerce Recommendation project
eCommerce Recommendation projecteCommerce Recommendation project
eCommerce Recommendation project
 
언론사에 구글 애널리틱스 도입하기 - 강의 1주차
언론사에 구글 애널리틱스 도입하기 - 강의 1주차언론사에 구글 애널리틱스 도입하기 - 강의 1주차
언론사에 구글 애널리틱스 도입하기 - 강의 1주차
 
Aiffel 해커톤 최종 발표
Aiffel 해커톤 최종 발표Aiffel 해커톤 최종 발표
Aiffel 해커톤 최종 발표
 
전자상거래 협업필터링
전자상거래 협업필터링전자상거래 협업필터링
전자상거래 협업필터링
 
레코픽 설명회 15회-개인화 추천(with DMC미디어)
레코픽 설명회 15회-개인화 추천(with DMC미디어)레코픽 설명회 15회-개인화 추천(with DMC미디어)
레코픽 설명회 15회-개인화 추천(with DMC미디어)
 
역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf역삼역, 이마트 AI_v최종.pdf
역삼역, 이마트 AI_v최종.pdf
 
PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준PYCON 2017 발표자료 한성준
PYCON 2017 발표자료 한성준
 
[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저
[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저
[Retail & CPG Day 2019] 유통 고객의 AWS 도입 동향 - 박동국, AWS 어카운트 매니저, 김준성, AWS어카운트 매니저
 
Onepart M2E
Onepart M2EOnepart M2E
Onepart M2E
 
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
[Bespin Global 파트너 세션] 분산 데이터 통합 (Data Lake) 기반의 데이터 분석 환경 구축 사례 - 베스핀 글로벌 장익...
 
빅 데이터 추진방안
빅 데이터 추진방안빅 데이터 추진방안
빅 데이터 추진방안
 
제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드
제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드
제 19회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [무드등] : 무신사를 활용한 고객 상황에 따른 의류 추천 스타일링 대시보드
 
마케팅인사이트 회사소개서
마케팅인사이트 회사소개서마케팅인사이트 회사소개서
마케팅인사이트 회사소개서
 
Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스
Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스
Apache Mahout 맛보기 - 30분만에 추천시스템 만들기 for 네이버 TV 서비스
 
[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템
[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템
[패스트캠퍼스]개인맞춤 패션 쇼핑몰 상품 추천 시스템
 
Web analytics 2.0 study ch.4-4.5
Web analytics 2.0 study ch.4-4.5Web analytics 2.0 study ch.4-4.5
Web analytics 2.0 study ch.4-4.5
 
Diquest 김경선 엔터프라이즈 검색에 적합한
Diquest 김경선 엔터프라이즈 검색에 적합한 Diquest 김경선 엔터프라이즈 검색에 적합한
Diquest 김경선 엔터프라이즈 검색에 적합한
 
구매 기록 데이터 기반 솔루션 제공
구매 기록 데이터 기반 솔루션 제공구매 기록 데이터 기반 솔루션 제공
구매 기록 데이터 기반 솔루션 제공
 
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
데브시스터즈 데이터 레이크 구축 이야기 : Data Lake architecture case study (박주홍 데이터 분석 및 인프라 팀...
 
취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...
취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...
취향기반의 개인화 서비스를 통한 이커머스 혁신 – 소성운 ZIGZAG 데이터사이언티스트, 강상원 마이셀럽스 대표:: AWS Cloud We...
 

[시스템종합설계].pptx

  • 1. H&M Personalized Fashion Recommendation Systems 시스템 종합설계(야) 3조 2022-06-09 인천대학교 산업경영공학과(야) 김종은 김범수 김현준 이태희 임재현
  • 2. 목차 Introduction 대회 소개 대회 내 데이터 소개 일정 계획 Data Analysis Data EDA Data Preprocessing Recommender System Models Memory Based Method Learn-to-Rank Models Conclusion Results Limitations Further Research Areas
  • 3. 1. Introduction 일정계획 3월 3일 3월 10일 3월 17일 3월 24일 3월 31일 4월 7일 4월 14일 4월 21일 4월 28일 5월 5일 5월 12일 팀결성 주제 탐색 데이터 분석 개념학습 방법론 탐색 데이터 전처리 모델링 결과 제출 공모전 참여기간
  • 4. 1. Introduction • 글로벌 SPA 의류 브랜드 H&M에서 Kaggle을 통해 열린 총 상금 $50,000의 대회 • 온라인 고객 쇼핑 경험을 향상시키기 위해서 개인화된 제품 추천 시스템을 구현하기 위한 목적으로 대회 개최 • 대회에서 제공하는 데이터들을 통해 향후 고객이 어떤 제품을 구매할지 예측하는 것이 목표 • 대회 개최 기간은 2022.02.08~ 2022.05.09 UDT(미국시간) 대회 소개
  • 5. 1. Introduction 대회 내 데이터 데이터 파일 명 내용 Images 제품의 사진 articles.csv 제품의 특징에 대한 정보가 담긴 파일 customers.csv 고객의 개인정보가 담긴 파일 sample_submission.csv 예시로 만들어진 제출 양식 transactions_train.csv 고객의 제품에 대한 구매 정보가
  • 6. 1. Introduction 이미지 데이터 (105542) Images • 총 105542개의 제품의 사진이 존재함 • 제품 id로 이미지 파일이 명칭됨 대회 내 데이터 소개
  • 7. 1. Introduction 고객 메타 데이터 (1371980, 7) customers.csv • 총 1371980명에 대한 개인정보가 존재함 • 고객 id, 우편번호는 개인정보라서 암호화되어 있 음. • 하나의 행은 고객의 고유 데이터를 의미함 대회 내 데이터 소개 Customer id 문자열로 이루어진 ID FN 패션 뉴스 구독 여부 Active 커뮤니케이션 가능 여부 Club member status 회원 상태(신규, 활성화, 탈퇴) Fashion news frequency 패션 뉴스 알람 주기 Age 나이(16~99) Postal code 우편번호
  • 8. 1. Introduction 제품 데이터(105542, 25) articles.csv • 총 105542개의 제품에 대한 정보가 담겨져 있음. • 하나의 행은 제품에 대한 특징 데이터를 의미 대회 내 데이터 소개 제품id 숫자로 이루어진 ID 옷 종류 제품 특징 옷 색상 제품 색상 및 무늬 옷 용도 및 사이즈 제품 착용자 및 용도 분류 …
  • 9. 1. Introduction 대회 내 데이터 소개
  • 10. 1. Introduction 거래기록 데이터(31788324, 5) transactions_train.csv • 2018.09.20~2020.09.22기간 동안 발생한 약 3천만건의 거래기록이 담겨져 있음 • 하나의 행은 제품 1회 구매 기록을 의미함 대회 내 데이터 소개 T dat 구매 날짜 Customer id 고객 정보의 id Article id 제품 정보의 id Price 실제 가격의 /590 Sales channel id 구매 방식 (1: 오프라인, 2: 온라인)
  • 11. 1. Introduction 샘플 양식 데이터(137980, 2) sample_submission.csv • 대회에서 제공한 Baseline 제출 양식 • 고객 데이터에 등장하는 모든 고객에 대한 동일한 12가지 제품id가 담겨져 있음 • 샘플을 제출하면 0.0031점이 나옴 대회 내 데이터 소개 대회 제출물 조건 및 평가 방식 • 모든 고객에 대한 최대 12가지 아이템 리스트를 제출 • 평가는 2020.09.23~29일간의 거래기록을 참조해 얼마나 일 치하는지 Mean Average Precision@12를 통해 평가됨 • 틀린 예측에 대한 감점은 없음 변수 명 의미 U Customer의 수 P(k) Cutoff k에서의 정밀도 N 고객 당 예측 수 M 고객 당 실측값의 수 Rel(k) K에 있는 항목인지 아닌지 판별하는지 시함수
  • 12. 2. Data Analysis Data EDA 데이터 분석 접근법 • 이미지 파일  Images • 테이블 데이터 파일 articles.csv, transactions_data.csv, customers.csv • 거래기록을 일주일 단위로 분석한 결과 전체 아이템 중 약 17%만 등장, 전체 사용자 중 약 6%만 평균적으로 등장함.
  • 13. 2. Data Analysis Data EDA 판매량 데이터 분석 • 전체 기록으로 제품별 판매량을 살펴보니 판매량은 롱-테일 분포를 띔 • 마지막 일주일 상위 12품목으로 제출 결과 0.0062를 얻음 (기존 0.0031) 상위12품목의 거래량은 전체 거래량 3% 밖에 안됨. -> 97%의 나머지 거래량은 반영하지 못함. • 전체 거래기록을 확인한 결과 약 7만명의 사용자와 1000개의 아이템이 거래에 나타나지 않음(Cold Start) • 거래기록을 일주일 단위로 분석한 결과 전체 아이템 중 약 17%만 등장, 전체 사용자 중 약 6%만 평균적으로 등장함.
  • 14. 2. Data Analysis 각 주차 별 등장한 아이템 리스트들의 유사도 비교 Data EDA Correlation of Articles= 𝑤𝑒𝑒𝑘(𝑛−1)∩𝑤𝑒𝑒𝑘(𝑛) 𝑤𝑒𝑒𝑘(𝑛−1) 등장하는 아이템 리스트는 가까울 수록 높은 유사율을 발견 • N주차에 대한 N-1주차의 아이템 리스트는 평균적으로 78%의 일치율을 보임 • N주차에 대한 N-1~N-3주차의 아이템 리스트 합집합은 평균적으로 90%의 일치율을 보임  미래 예측을 위한 아이템 후보군에는 최근에 등장한 아 이템 목록만 사용하는게 바람직하다고 판단함
  • 15. 2. Data Analysis Data EDA 기준 1주내 재구매 비율 2주내 재구매 비율 3주내 재구매 비율 같은 제품 구매 5.1% 6.2% 6.6% 같은 제품군 구매 6.8% 8.5% 9.4% 같은 제품 그룹 구매 10.8% 14.3% 16.5% 5.1 6.2 6.6 6.8 8.5 9.4 10.8 14.3 16.5 0 2 4 6 8 10 12 14 16 18 1주내 재구매 비율 2주내 재구매 비율 3주내 재구매 비율 고객들은 동일한 제품을 재구매하는가? 같은 제품 구매 같은 제품군 구매 같은 제품 그룹 구매
  • 16. Model Research 추천 시스템 정의 • 정보 필터링 시스템의 일종으로 특정 아이템에 대한 사용자의 “rating”, 혹은 “preference”를 예측하는 시스템을 의미 - Francesco Ricci, “Introduction to Recommender Systems Handbook”, Springer 추천 시스템을 구현하기 위해 사용한 방법론 1. 메모리 기반 추천 시스템 2. Learn-to-Rank 모델 기반 추천 시스템 3. Recommender Systems
  • 17. Memory Based • 메모리 기반 추천 시스템 1. 전체 거래기록에서 특정 기간 추출 2. 고객 정보를 통해 고객을 집단 분류 3. 샘플에서 고객 집단 별 거래기록 추출 4. 집단 별 사용자-아이템 구매 여부 행렬 생성 5. 차원 축소를 이용해 사용자-아이템 선호도 행렬 생성 6. 사용자 열에서 선호도 값이 가장 큰 12개 아이템 추천 진행 3. Recommender Systems
  • 18. Singular Value Decomposition 3. Recommender Systems
  • 19. 사용자 – 아이템 행렬 축소 특잇값 분해 예시 고객 1 고객 2 … 고객 n 제품 1 0 1 … 0 제품 2 1 0 … 1 … … … … 제품 m 1 0 … 0 구매여부에 대한 User-Item Matrix 차원축소를 통해 산출된 User-Item Matrix 고객 1 고객 2 … 고객 n 제품 1 0.002451 1.0067 … 0.00048 제품 2 0.05024 -0.00347 … 0.06416 … … … … 제품 m 0.0264 -0.00634 … -0.00526 고객 1 고객 2 … 고객 n 선호도1 0 1 … 0 선호도2 1 0 … 1 선호도1 선호도2 제품 1 ~ ~ 제품 2 ~ ~ … … … 제품 m ~ ~ • 차원 축소의 공분산 유지율 = 0.5 이상 지점에서 차원 축소 실시 • 차원의 크기가 너무 낮을 경우, 공분산 유지율이 너무 낮아지면서 데이터 훼손이 발생 • 차원의 크기를 너무 키울 경우, 계산하는데 걸리는 시간이 오래 걸리고/차원 축소 의미가 없음 Singular Value Decomposition 3. Recommender Systems
  • 20. Memory Based 메모리 기반 추천 시스템 추가적인 특징 • 샘플 거래 기록에 등장하지 않은 Cold-Start 고객은 추천이 불가능  예측 시점 일주일 전 거래량 상위 12품목 추천 진행 • 거래기록 샘플링 할 시, 아이템 거래 횟수가 1 이하인 아이템 제거 후 사용자-아이템 구매 여부 행렬 생성 • 중복제거를 한 경우 오히려 하지 않은 것이 좋게 나옴  기존에 구매한 제품도 재 추천되는 경우 존재 9.09~22의 거래기록, 1회 이하로 거래된 아이템 제거, 중복 제거X, 추천 경우 MAP@12 점수 0.01369 3. Recommender Systems
  • 21. Memory Based 메모리 기반 협업 필터링 방식의 단점 • 필요로 하는 메모리가 많음  샘플 크기가 클수록 성능은 좋아지나, 계산량이 비약적으로 상승 • Cold-Start 고객에 대한 추천이 어려움  구글, 유튜브, 링키드인, 등 유명 기업 추천 시스템에서 사용되는 Candidate Retrieval + Ranking 방법론을 사용 3. Recommender Systems
  • 22. LGBM Candidate Retrieval + Ranking 추천 시스템 원리 • 1 단계 : 전체 데이터 베이스에서 사용자 정보, 구매 이력 등을 활용해서 후보군 생성함 • 2 단계 : 생성된 후보군에서 개인 사용자에 대해 추가적인 아이템 정보, 이전 사용자 정보 등을 활용해서 유의미한 아이템 추출, 랭킹(사전에 학습이 완료된 Ranker 모델)을 진행함 • 3 단계 : 랭킹이 가장 높은 k개의 아이템을 사용자에게 추천함 3. Recommender Systems
  • 23. LGBM 후보군 생성(Candidate Retrieval) : Rule-based Candidate Retrieval 정해진 기간 내 구매 기록, 가장 많이 구매된 아이템 등 특정 규칙을 통해서 후보군 생성  가장 등장 빈도가 높은 아이템에 대한 거래 기록, 고객이 구매한 아이템에 대한 거래 기록 등 적용 3. Recommender Systems
  • 24. LGBM 랭킹(Ranking): • 사전 학습된 Ranker(“Ordinal Regression”) 모델을 활용해서 사용자에게 해당하는 후보군 아이템의 순서를 예측하고 가장 높은 k개의 후보들을 사용자에게 추천하는 방식. 3. Recommender Systems
  • 25. LGBM Ranking(“Ordinal Regression”) Models: • 정보 검색을 위해서 입력된 질의(query)에 대한 후보들을 가장 적합한 순으로 데이터들을 나열하는 작업을 진행하는 모델들을 의미함 3. Recommender Systems - Frakes, William B.; Baeza-Yates, Ricardo (1992). “Information Retrieval Data Structures & Algorithms.”
  • 26. LGBM 후보군 생성 원리: • 주차 별 구매 기록 데이터를 활용해서 샘플에 등장하는 모든 사용자에 대해서 Positive 샘플링, Negative 샘플링을 통해서 생성함. • Positive 샘플링: 실제 고객 구매 이력 • Negative 샘플링: 각 주차 별 상위 12품목 중 고객이 구매하지 않은 제품 구매 기록 임의 생성 3. Recommender Systems
  • 27. LGBM Light GBM Ranker • Gradient Boosting Decision Tree의 종류 중 하나인 LGBM은 수직적 분기를 통해 학습을 진행. • LGBM Ranker 분기는 Lambda Rank Loss 변화량이 가장 큰 나무를 계속 분기 시키는 형태임. 3. Recommender Systems
  • 28. LGBM 훈련 데이터 (구매 여부의 0-1로 Partial Order 생성) • X: 아이템 * 변수 데이터 • y: 순서(0~n , 0-1로 부분적인 순서도 가능) 바탕으로 학습을 진행 3. Recommender Systems 거래기록 제품정보 고객정보 y-label
  • 29. LGBM Light GBM Ranker Test Data • 예측 시점을 기준으로, 모든 행이 Negative 샘플링이 된 후보군을 바탕으로 예측을 진행 • 사용자 후보군에 대한 상위 12개 예측값을 기준으로 추천 진행함. 3. Recommender Systems Ranker 모델
  • 30. Feature Engineering 3. Recommender Systems Feature Engineering: • 도메인 지식을 활용해서 Raw Data에서 feature들을 추출하는 기법 의미 - "Machine Learning and AI via Brain simulations". Stanford University. • 일반적인 추천 시스템, Ranker 시스템의 경우 Raw Data를 활용하는 것보다 Feature Engineering을 통해서 추가적인 low-level feature를 같이 사용하는 것이 성능이 더 높다고 알려짐. • 본 프로젝트에서는 Raw Data를 활용해서 거래량 빈도가 가장 높은 아이템의 비율 등과 같은 모델 학습을 위한 low-level feature를 다량으로 생성함.
  • 31. 같은 고객에 의해 구매되는 아이템 조합 찾기(Feature Engineering 예 시) 1. 거래기록을 일주일 단위로 추출 2. 직전 일주일에 등장하지 않은 아이템의 거래기록 삭제 3. 특정 아이템을 구매한 고객들의 상위 구매 목록 5개 추출 4. 모든 아이템에서 같이 구매한 상위 5개 추출 Feature Engineering 3. Recommender Systems
  • 32. Feature Engineering 3. Recommender Systems Feature Engineering를 통해서 생성한 변수 목록(40개):
  • 33. LGBM Feature Engineering • 다른 모델에서 자주 사용되는 Feature들을 참조해서 약 40개의 Low-level feature를 추가적으로 생성 3. Recommender Systems 거래기록 + Negative Samples 제품정보 신규정보 (low-level features)
  • 34. LGBM Feature Engineering 안 한 경우 • 점수 결과 : 0.02087 • 현재 리더보드로 환산할 경우 등수 : 1,703 등 / 2,954 팀 Feature Engineering 한 경우 • 점수 결과 : 0.02918 • 현재 리더보드로 환산할 경우 등수 : 51 등 / 2,954 팀 3. Recommender Systems
  • 35. LGBM 3. Recommender Systems Candidate Retrieval + Ranking 추천 시스템 특징 • 후보군을 생성하는 방법론 및 모델 학습을 위해서 사용되는 데이터에 따라 모델의 성능이 갈림 • 메모리 기반에 비해 상대적으로 사용하는 메모리 양이 적어 더 빠른 속도로 실험 가능 • 단점으로 Cold-Start 고객에 대한 추천에 어려움 존재
  • 36. Results 4. Conclusion 최종적으로 MAP@12 점수 0.029(= 2.9% 정확도) 달성  전체 팀 중 51등에 해당하는 점수 0.01494 0.02087 0.02918 0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 Memory Based Model LGBM Ranker LGBM Ranker Feature +40 점수 변화 2105 1703 51 1 701 1401 2101 2801 Memory Based Model LGBM Ranker LGBM Ranker Feature +40 등수 변화
  • 37. 4. Conclusion Further Areas for Research Candidate Retrieval + Ranking 방법론 추가적인 연구 영역 • Candidate Retrieval 방식을 규칙 기반이 아닌 강화학습 등 Recall을 높을 수 있는 방법론 적용 • Ranking: 다양한 기계학습 알고리즘(CatBoost Rank 등) 사용 및 앙상블 기법 적용 • Feature Engineering : 추가적으로 더 좋은 Feature들을 생성 및 학습에 적용