Information Technology Reference
In-Depth Information
6.5.3 Content-Based Filtering
Content-based Filtering (CBF) supposes that users will continue to interact with
items that share similar contents. For instance, users interact with songs. The system
observes that a user frequents a certain artist. As a consequence, the system suggests
other items related to the artist. Algorithm 8 shows the content-based recommen-
dation algorithm. The system requires the set of items, its features, a user profile,
along with a similarity function. The algorithm computes the similarities between
any combinations of items. Finally, we project the user profile onto the similarity
matrix. As a result, we obtain a score for each item. The system recommends the
top
items excluding items the users is already familiar with. This approach directs
the major efforts towards the choice of similarity metrics as well as the decision on
which features to use.
k
Algorithm 8 Content-based Filtering
Input
set of items I , item feature matrix F , user profile U , similarity function similarity
(
X
,
Y
)
,
number of recommendations
k
Output
similar items
1: S
ₐ∅
Initialize similarity matrix S
2: for all do i
I
3:
for all do j I \ i
4:
S i , j
similarity ( F i , F j )
5: end for
6: end for
7: recommendations top (k, U , S , , I \ U )
6.5.4 Ensembles
So far, we have introduced a variety of recommendation algorithms. These algorithms
entail different ideas and require varying data. Machine learning research has shown
that combining various algorithms yields potential improvements [ 23 ].
In the context of news recommendation, we may combine individual algorithms
using different methods. Multi-armed bandits represent such a method [ 37 ]. Multi-
armed bandits target the problem of uncertainty with respect to the choice of
algorithm, parameter, or data. Uncertainty arises as the system cannot determine
which algorithm, parameter, or data will perform best. We refer to this problem
as “exploration-exploitation” dilemma. The problem manifests as systems try to
avoid selecting sub-optimal algorithms, parameter, or data. Conversely, system can-
not judge the performance differences between different algorithms, parameter, or
data unless they continuously evaluate them against each other. We may define multi-
armed bandits in different forms. First, we use them to switch different methods. For
 
Search WWH ::




Custom Search