Database Reference
In-Depth Information
RecommAgent
(abstract)
StandardRecommAgent
PRecommAgent
TDRecommAgent
DPRecommAgent
Fig. 12.17 Class hierarchy of recommendation agents
12.2.3 The RL-Based Recommendation Package
The package
Recomm
contains the framework and algorithms for applying RL to
recommendation engines following the approach of this topic.
The central class
RecommAgent
extends
RLAgent
for RE applications.
Based on the categorization described in Chap.
5
, the class
PRecommAgent
extends
RecommAgent
and contains the implementation of the P-Version
(Sect.
5.2
). In the same way, the class with the historically established name
StandardRecommAgent
extends
RecommAgent
for unconditional TD agents.
TDRecommAgent
extends
StandardRecommAgent
for the conditional TD algo-
rithm. The class hierarchy of the recommendation agents is depicted in Fig.
12.17
.
All recommendation agents have a sister settings class as well. The settings
classes are organized in a similar hierarchy as their associated agents. In particular,
the agent settings class of
RecommAgent
is
RecommAgentSettings
and extends
RLAgentSettings
of the
RLAgent
. For example,
DPRecommAgent
has a settings
class
DPRecommAgentSettings
.
All recommendation agents implement the central Agent method
public Action learnApply(MiningVector learnApplyVector);
It is basically used for learning since we remember that learning for REs is done
with a one-step delay. In order to get the recommendations, the
qfunction
object of
the
RLAgent
shall be used in combination with a desired policy.
The
learnApply
methods of all recommendation agents require an object of
RecommVector
as argument and work in a stateless mode. This allows mixed
learning from multiple sessions.
RecommVector
extends
SarsaVector
and stores
the tuple (state, action,
reward, next state, next action). However, unlike