V úvodu bylo zmíněno, že doporučovací systém může předvídat uživatelské preference a uživatel tak šetří svůj čas. Systém to může udělat na základě toho, že ví, o co se uživatel předtím zajímal (co se uživateli nejvíce líbilo), jakým uživatelům se to líbilo (uživatelé jsou rozděleni do více segmentů na základě jejich preferencí) nebo kombinace předchozích možností. Shromážděním všech těchto údajů můžeme získat relevantní informace o zájmech uživatelů.
Systém doporučování se stává přesnější v momentě, kde se zvyšuje počet položek, o které uživatelé projevili zájem. Také, čím přesnější systém bude, tím více uživatelů ho bude užívat. V důsledku tohoto je vybudování robustního systému rozhodujícím úkolem.
Doporučovací systém je ve své podstatě schéma, které hodnotí položky uživatele, a tím může predikovat a vybrat si nejlepší možnost přímo pro něho.
Existují dva hlavní přístupy: filtrování ve spolupráci (collaborative filtering - CF) a obsahový přístup (content-based - CB). U CF dané doporučení vychází z hodnocení uživatelů, kteří jsou podobni stávajícímu. U CB jsou doporučení založena na popisu položek, které uživatel dříve hodnotil.
Oba přístupy mají klady i zápory.
CF i CB trpí problémem studeného startu. Tzn., pokud se u CF objeví nová položka a žádný jiný uživatel ji dříve nehodnotil, tak jej systém nedoporučí. Nebo opačně, když je nový uživatel, který nehodnotil doposud žádnou položku, nemůže systém porovnávat s žádným jiným uživatelem. Také nalezení náhodně vybrané skupiny uživatelů není vždy snadné, protože pravděpodobnost, že několik uživatelů bude mít stejné hodnocení, je nízká. Přístup CB postrádá uživatelské aktuality/hodnocení a potřebuje uložit popis obsahu pro každou položku.
Doporučení, která CF poskytnulo po studeném startu, jsou nešťastná. Pro CB je problém studeného startu vyřešen tím, že nový uživatel vyplní krátký průzkum.
Byla vynaložena snaha kombinovat oba přístupy několika způsoby, aby se minimalizovaly nevýhody. Tyto techniky zahrnují přepínání mezi oběma přístupy, vážení výstupu obou schémat, jejich použití v kaskádě apod.
Bayesovské sítě jsou velmi užitečné, pokud bychom uvažovali o modelování našeho doporučovacího systému. Bayesovská síť je řízený acyklický graf, kde uzly reprezentují množinu náhodných proměnných a oblouky zobrazují přímou závislost mezi proměnnými. Síla vztahu mezi nimi je kvantifikována podmíněným rozdělením pravděpodobnosti spojeným s každým uzlem.