목록AI/추천시스템 (15)
꺼내먹는지식 준

연관 규칙 분석 (Association Rule Analysis, Association Rule Mining) 예를 들면 우유, 빵이 등장했을 때 계란과 콜라가 등장하면 연관 관계를 표기한다. 다만, 해당 연관관계가 인과관계를 의미하지는 않는다. 연관 규칙은 다음과 같다. IF (antecedent) $\rightarrow$ THEN (consequent) 특정 사건이 발생시 빈번하게 발생하는 또다른 사건 규칙 itemset: antecedent와 consequent 각각을 구성하는 상품들의 집합 위 사진을 참고하면 꼭 itemset이 {antecedent, consequent} 이러한 형태로 될 것 같지만 오해하지말자. antecedent와 consequent에 등장한 모든 상품들을 모아놓은 집합이다...

추천 시스템 중 가장 단순한 형태인 '인기도 기반 추천' 을 살펴보자. 아래와 같은 예시들이 있다. 마지막 예시인 reddit 의 경우 업로드 시간도 인기도의 결정 요인이 되어 최신 글 일 수록 인기도가 높다. 다음의 예시들이 인기도 기반 추천이 적합하다. 좀더 직관적으로 수치를 통해 보면, 조회수와 업로드 날짜에 가중치를 주어 score를 계산할 수 있다. 왼쪽과 같이 가중치 없이 진행하면 시간과 관계없이 Top Rank 가 설정될 위험이 있다. Hacker News Formula 라는 모델이 있다. 시간에 따라 score가 급격하게 떨어지도록 하여, 적절하게 조정될 수 있도록 한다. (gravity 상수를 통해 조정한다.) 비슷하지만, 감점이 아닌 최신 포스팅에 가점을 주는 방식인 Reddit for..

※ CTR은 광고가 클릭된 횟수를 광고가 게재된 횟수로 나눈 값 (클릭수 ÷ 노출수 = CTR) 품질 관점은 공학만이 아니라, UX, marketing 관점을 포함하고 있다. 단순한 성능 비교와 유사 연구단에서도 많이 언급되는 이슈이다. 생성되는 데이터로 다시 모델을 학습시키는 형태는 offline test와 다른 양상을 띄게 만드는 결정적 이슈이다. 이를 serving bias 라고 한다. Offline Test의 지표 (랭킹, 예측) 예측은 머신러닝 metric과 동일하기에 여기서는 추천 모델에서만 등장하는 ranking metric을 다룬다. Precision@5 : 예측한 5 개중 실제 유저가 관심있는 아이템의 비율 Recall@5 : 유저가 관심 있는 전체 아이템 5개 가운데, 우리가 추천한 아..

PULL: 사용자들은 본인이 원하는 것을 얻기 위해 keyword 로 검색을 한다. 사용자가 원하는 의도를 가지고 원하는 object를 찾는 방식을 pull이라고 한다. PUSH: 사용자의 흥미나 의도를 고려하여서 사용자도 모르는 필요를 제안해주는 방식이다. 왜 필요할까? 아이템이 기하급수적으로 많아져서 원하는 것을 효율적으로 찾기가 어려워졌다. 또한 자기가 무엇을 원하는지도 모르는 경우의 needs를 채워줄 수 있다. 즉, 추천시스템은 long tail phenomenon 이라 하는 즉, 물건이 많아도 소수만 인기가 많은 현상을 해결하고자 하고 이는 추천시스템의 본질적 목표이기도 하다. 사용자는 long tail 이 잘 될 수록 '개인화'가 잘 된다고 생각한다. 추천 시스템에서는 유저 관련 정보, 아이..

Sequence to sequence model이 output을 예측할 때 발생할 수 있는 이슈가 있다. 바로 우리가 찾고자 한 결과물이 he hit me with a pie 일 때, output이 he, hit, 으로 나오다가 갑자기 a 가 등장하면 더 이상 우리가 원하는 결과물을 얻기 힘들어진다. 이에 따라 조건부 확률을 최대로 하는 결과를 모두 찾아보는 방법을 택할 수도 있지만 이는 모든 가능성을 확인해본다는 점에서 가능성이 기하급수적으로 증가한다. 즉 좋은 선택지가 아니다. 이에 따라 두 방법의 절충안인 특정 개수를 정해서 그 개수만큼만 가능한 결과물을 확인해보는 방법이 있다. ※ 점수를 구할 때 왜 log를 취하는 경우. 보통 log를 계산의 단순화를 위해 취한다. 이 경우, 확률 값은 0~1 ..