앎을 경계하기

[가짜연구소3기] Data Engineer

[가짜연구소 3기] 데이터 엔지니어링 - 23 From ratings to recommendations

양갱맨 2021. 8. 25. 18:30

주제

평가 등급을 사용한 추천 시스템 전략 세우는 방법에 대해 배웠다.


추천 테이블

  • user_id : 사용자 아이디
  • course_id : 강의 아이디
  • rating : 평가 예측 - 수강 전 사용자가 해당 강의에 줄 평가 점수를 추정한다.

상식 기반 데이터 변환

  • Course 데이터와 Rating 데이터를 통해 추천하기 좋은 3가지 강의를 추정하는 것이다.

이전 시간에 각 코스의 평균 평가 점수를 집계했다.

이 집계 데이터를 통해 높은 등급의 코스 추천이 가능해진다.


사용자가 배우는 프로그래밍 언어로 된 과정 추천

2개의 SQL로 진행되는 강의를 듣기 때문에 이와 관련된 강의를 추천할 수 있다.


사용자가 아직 평가하지 않은 강의 추천

위 테이블처럼 user_id와 course_id 데이터 조합이 rating 테이블에 존재하지 않는 경우를 추천하는 것이다.


정리하면...

위 세 가지 방법을 통해 추천 전략을 세울 수 있다.

  1. 사용자가 대부분 평가한 기술의 강의를 추천
  1. 이미 평가된 강의는 추천하지 않는다.
  1. 가장 높은 등급을 유지하는 3가지 강의를 추천

예제

위 테이블에서 사용자가 SQL 강의 두 개와 R 강의 한 개를 평가하였다.

그럼 사용자에게 SQL 강의를 추천한다.

대신 12, 52 강의는 이미 사용자가 평가한 강의니까 추천 리스트에서 제외한다.

추천 리스트 중 최고 등급의 SQL 과정 3개를 추천한다.