Skip to content

[2022-1학기 DSL 모델링 프로젝트 시계열] 플랫폼 내에서 고객 행동 데이터를 기반으로 다음 행동을 예측하여 Personalized한 서비스 제공할 수 있는 기회 제공을 목적으로 하며, L.POINT 데이터를 활용하였다.

Notifications You must be signed in to change notification settings

Jio0728/Categorical-Time-Series-Prediction-with-Embeddings

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Categorical-Time-Series-Prediction-with-Embeddings

image

플랫폼 내에서 고객 행동 데이터를 기반으로 다음 행동을 예측하여 Personalized한 서비스 제공할 수 있는 기회 제공을 목적으로 하며, L.POINT 데이터를 활용하였다.

DSL 모델링 프로젝트 (2022. 04. 07.)


Collaborators

김지오, 박준우, 이승재, 장윤태, 조수연, 조영규


File Definition

📁code

  • Embedding_action_type_prediction

Embedding을 적용한 후, action_type을 예측하는 모델링 코드이다.(모델 튜닝 전)

  • Transformer_action_type_prediction

직관적인 분류, 임베딩 기반 분류로 action_type을 군집화하여 예측한 모델링 코드이다.

  • metrics

히스토그램, 상관계수 행렬등의 그래프를 출력하는 코드이다.

  • LSTM_action_type_prediction

LSTM으로 action_type을 예측하는 모델링 코드이다. Embedding&Transformer기법을 활용한 모델보다 성능이 낮아 summary에는 활용되지 않았다.

  • time_series_clustering_10series & time_sereis_clustering_2

시계열 클러스터링 기법 (kmeans, kshape 등)을 사용하여 군집을 변수로 만들어 action type을 예측한 코드이다. 군집화변수를 넣은 것이 오히려 성능이 낮아져 시계열 클러스터링이 잘 되지 않는 것이 데이터의 한계였다.

📁data

제 6회 L.POINT BIG DATA Competition에서 제공한 데이터이다. 자세한 데이터에 대한 설명은 reference '제 6회 L.POINT Big Data Competition-설명회 자료'를 참고하면 된다.

  • 거래정보.csv

온라인 또는 오프라인에서 구매한 내역이 담겨있다.

  • 고객정보.csv

고객 Demographic 데이터(성별, 연령대)이다.

  • 상품분류정보.csv

상품에 대한 정보가 담겨있다.

  • 온라인행동정보.csv

고객의 온라인 행동에 대한 기록으로써, 유입부터 구매까지 모든 행동 과정이 담겨있다.


modeling_summary를 통한 프로젝트 설명

Overview

플랫폼 내에서 고객 행동 데이터를 기반으로 다음 행동을 예측하여 Personalized한 서비스 제공할 수 있는 기회 제공을 목적으로 하는 시계열 예측 모델링프로젝트이다. image

Data Preprocessing

Sliding window

'Sliding window'기법을 이용하여 '온라인행동정보.csv' 데이터에서 CLNT_ID(고객), SESS_ID(세션) 별 HIT_SEQ(조회일련번호)에 따라 정렬한 뒤, action_types데이터를 앞의 10 steps를 x, 11번째 step을 y로 정한다. window를 1 step씩 뒤로 이동시키며 이 과정을 반복하여 데이터를 생성하였다. image

Model Architecture

BST(Behavior Sequence Transformer) 모델을 참고했다.(Refrence 첨부) 모델의 자세한 구조는 아래와 같다. image

image

Time Series Application of Categorical Data

주로 연속적인 데이터를 예측하는 시계열 예측모델링을 Categorical Data에 적용하기 위해 아래와 같은 기법을 적용하였다.

1) One hot encoding

image

  • 특징
    ✔ 카테고리 개수만큼 차원을 갖는 벡터 생성
  • 단점
    ✔ 카테고리 개수가 커지면 데이터가 sparse 해짐
    ✔ 카테고리 벡터 간에 거리가 동일하므로 관계 분석에 어려움

2)Embedding

image

  • 특징
    ✔ 각 카테고리에 대해 원하는 차원수(D)만큼 설정할 수 있음 (sparse 방지)
    ✔ Embedding 값이 학습을 통해 의미적으로 비슷한, 즉, 유의미한 관계를 분석하여 데이터를 군집으로 해석할 수 있는 효과가 있음

Result

Test set 기준 약 62%의 정확도로,레이블의 분포 및인간의 행동을 예측했다는 점, categorical한 데이터를 예측한 것을 고려하면 괜찮은 예측 결과라고 말할 수 있다. image image

Model tuning

image image

Result

action_type이 8개에서 3개로 줄었기 때문에 Tuning이 없을 때보다 군집화를 잘한다면 Accuracy가 높아질 것을 예상해 볼 수 있다. 실제로, Embedding 기반으로 분류한 것이 Accuracy가 81.64%로, 직관적인 분류의 Accuracy인 73.6% 보다 높게 결과가 나왔다. image

Conclusion

image

Reference

About

[2022-1학기 DSL 모델링 프로젝트 시계열] 플랫폼 내에서 고객 행동 데이터를 기반으로 다음 행동을 예측하여 Personalized한 서비스 제공할 수 있는 기회 제공을 목적으로 하며, L.POINT 데이터를 활용하였다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 100.0%