정보 기술 분야에서 머신러닝의 주요한 응용분야 중 하나는 잠재 고객에게 아이템을 추천하는 것이다. 이를 온라인 광고아이템 추천 두 가지 타입으로 구분할 수 있다. 둘 다 사용자와 아이템 간의 연관성을 예측하는데 의존하며, 광고가 표시되거나 해당 아이템에 대한 추천이 사용자에게 제시될 경우 어떤 행동의 확률이나 기대되는 이득을 예측한다. 때떄로, 추천은 제품을 실제로 팔기 위한 목적이 아닌 소셜 네트워크 뉴스 피드에 표시할 게시물을 선택하거나 영화 추천, 농담 추천, 전문가의 조언 추천, 비디오 게임 플레이어 매칭, 데이트 서비스 매칭 등에 관한 것일 수 있다.

이것과 연관된 문제는 감독(supercised)학습 문제처럼 처리된다. 아이템과 사용자에 대한 정보가 주어지면 관심의 프록시(proxy)를 예측하기 때문이다. 이는 종종 회귀분석(조건부 기댓값을 예측) 또는 확률적 분류 문제(discrete한 사건의 조건부 확률을 예측)로 해결한다. 추천자 시스템에 대한 초기 작업은 이러한 예측을 위해 사용자 ID와 아이템 ID 같은 최소한의 인풋 정보에 의존했다. 이런 맥락에서 일반화하는 유일한 방법은 다른 사용자나 다른 아이템에 대한 타겟 변수값의 패턴간 유사성에 의존하는 것이다.

이 원리에 기초한 알고리즘이 collaborate filtering 이다. 비모수적 접근법과 모수적 방법 모두 가능하다. 모수적 방법은 각 사용자와 아이템에 대한 분포적인 표현(임베딩(embedding)으로 불린다.)을 학습하는데 의존한다. 예측은 다음과 같이 사용자 임베딩과 아이템 임베딩 (사용자 ID나 아이템 ID 중 하나에 의존하는 상수에 의해 수정될 가능성이 있다.) 사이의 내적을 통해 구한다. $$ \hat{R}_{u, i}=b_{u}+c_{i}+\sum_{j} A_{u, j} B_{j, i} $$ Collaboratice filtering 시스템은 기본적인 제한이 있다. 새로운 아이템이나 사용자가 도입되면, 기록이 없기 때문에 다른 아이템이나 사용자와의 유사성 또는 새로운 사용자와 기존 아이템 사이의 연관성의 정도를 평가할 방법이 없다는 것이다. 이를 cold-start recommendations 문제라고 부른다. 콜드 스타트 추천 문제를 해결하는 일반적인 방법은 개별적인 사용자와 아이템에 대해 추가적인 정보를 도입하는 것이다. 예를 들어 추가적인 정보는 사용자 프로필 정보나 각 아이템의 특징이 될 수 있다. 이와 같은 정보를 사용하는 시스템을 content-based recommender 시스템이라고 한다. 풍부한 사용자 특징이나 아이템 특징의 집합에서 임베딩으로 매핑(mapping)하는 것은 딥러닝 구조(architecture)를 통해 학습될 수 있다.