Home [BoostCamp AI Tech / P Stage 2] Day45 - Project Day 5~6
Post
Cancel

[BoostCamp AI Tech / P Stage 2] Day45 - Project Day 5~6

P Stage 2 : Project Day 5~6


Day 5~6 list

  1. NGCF 대회용 코드 작성
  2. NCF 대회용 코드 작성
  3. User-based CF 코드 작성

NGCF 대회용 코드 작성

  • NGCF코드를 대회에 맞춰서 코드를 작성했음
  • 코드 자체는 이전에 공부할때 참고한 코드를 기반으로 잘 파이프라인을 구성했는데, 학습 시간에서 시간이 오래 걸리는 문제가 발생함
  • Graph Neural Net 자체에 대한 이해가 부족해서 inference 코드를 어떻게 작성할 지 모르겠음
    • 이 부분에 대해서는 NGCF 관련 구현 코드들을 TF는 Torch든 상관없이 더 찾아볼 필요가 있을듯
  • NGCF에서 Recall@K를 구현하는 부분도 잘 봐야할 거 같음
  • 모델 학습을 위한 데이터셋 구성에서 시간이 오래 걸리는 문제가 발생하므로 데이터셋 구성할 때 더 효율적으로 고려할 수 있는 부분을 확인할 필요가 있음

NCF 대회용 코드 작성

  • Neural Collaborative Filtering 코드를 대회에 맞춰서 작성
  • 문제는 참고한 코드가 user X item 사이즈의 데이터를 활용하므로 학습 과정에서 너무 오래 걸리는 문제가 발생
    • 2048 batch_size를 해도 batch 수가 7만 정도였음….;;
  • NCF 논문을 좀 더 자세히 읽을 필요도 있을듯 함
  • 모든 유저-아이템 조합을 활용하지 않는 방법이 있을까?

User-based CF

  • 간단한 classic user-based CF 코드 작성
  • 괜찮은 효율을 기대했으나 클래식 방법이라 큰 효과는 없었음
  • implicit으로만 데이터를 추천해서 time정보가 활용되지 않았음
  • time 데이터를 좀 더 활용할 필요가 있을듯

이후 해볼 것들

  • MovieLens 데이터셋에 대해서 EASE와 VASP를 활용한 것에 효과가 좋은 것으로 보임
  • EASE랑 VASP 논문 리딩 후 코드 구현에 대해서 고민해 볼 필요가 있을듯
  • Classic MF 논문도 읽고 MF 구현에도 좀 고려를 해 볼 필요가 있을듯 현재 구현에 참고한 MF는 학습시간에 너무 오랜 시간이 걸림
  • 일단 메모리가 크다는 장점이 있어서 user X item matrix를 형성할 수 있음
This post is licensed under CC BY 4.0 by the author.

[BoostCamp AI Tech / P Stage 2] Day44 - Project Day 4

[BoostCamp AI Tech / P Stage 2] Day50 - Project Day 10

Comments powered by Disqus.