You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hivemall.apache.org by my...@apache.org on 2017/06/15 10:36:19 UTC
[34/51] [partial] incubator-hivemall-site git commit: Updated
userguide for dimsum and general classifier/regressor
http://git-wip-us.apache.org/repos/asf/incubator-hivemall-site/blob/f103c424/userguide/eval/rank.html
----------------------------------------------------------------------
diff --git a/userguide/eval/rank.html b/userguide/eval/rank.html
index 2cbcb28..fba33ca 100644
--- a/userguide/eval/rank.html
+++ b/userguide/eval/rank.html
@@ -761,18 +761,70 @@
- <li class="header">Part V - Binary classification</li>
+ <li class="header">Part V - Prediction</li>
- <li class="chapter " data-level="5.1" data-path="../binaryclass/a9a.html">
+ <li class="chapter " data-level="5.1" data-path="../misc/prediction.html">
- <a href="../binaryclass/a9a.html">
+ <a href="../misc/prediction.html">
<b>5.1.</b>
- a9a Tutorial
+ How Prediction Works
+
+ </a>
+
+
+
+ </li>
+
+ <li class="chapter " data-level="5.2" data-path="../regression/general.html">
+
+ <a href="../regression/general.html">
+
+
+ <b>5.2.</b>
+
+ Regression
+
+ </a>
+
+
+
+ </li>
+
+ <li class="chapter " data-level="5.3" data-path="../binaryclass/general.html">
+
+ <a href="../binaryclass/general.html">
+
+
+ <b>5.3.</b>
+
+ Binary Classification
+
+ </a>
+
+
+
+ </li>
+
+
+
+
+ <li class="header">Part VI - Binary classification tutorials</li>
+
+
+
+ <li class="chapter " data-level="6.1" data-path="../binaryclass/a9a.html">
+
+ <a href="../binaryclass/a9a.html">
+
+
+ <b>6.1.</b>
+
+ a9a
</a>
@@ -781,12 +833,12 @@
<ul class="articles">
- <li class="chapter " data-level="5.1.1" data-path="../binaryclass/a9a_dataset.html">
+ <li class="chapter " data-level="6.1.1" data-path="../binaryclass/a9a_dataset.html">
<a href="../binaryclass/a9a_dataset.html">
- <b>5.1.1.</b>
+ <b>6.1.1.</b>
Data preparation
@@ -796,12 +848,12 @@
</li>
- <li class="chapter " data-level="5.1.2" data-path="../binaryclass/a9a_lr.html">
+ <li class="chapter " data-level="6.1.2" data-path="../binaryclass/a9a_lr.html">
<a href="../binaryclass/a9a_lr.html">
- <b>5.1.2.</b>
+ <b>6.1.2.</b>
Logistic Regression
@@ -811,12 +863,12 @@
</li>
- <li class="chapter " data-level="5.1.3" data-path="../binaryclass/a9a_minibatch.html">
+ <li class="chapter " data-level="6.1.3" data-path="../binaryclass/a9a_minibatch.html">
<a href="../binaryclass/a9a_minibatch.html">
- <b>5.1.3.</b>
+ <b>6.1.3.</b>
Mini-batch Gradient Descent
@@ -831,14 +883,14 @@
</li>
- <li class="chapter " data-level="5.2" data-path="../binaryclass/news20.html">
+ <li class="chapter " data-level="6.2" data-path="../binaryclass/news20.html">
<a href="../binaryclass/news20.html">
- <b>5.2.</b>
+ <b>6.2.</b>
- News20 Tutorial
+ News20
</a>
@@ -847,12 +899,12 @@
<ul class="articles">
- <li class="chapter " data-level="5.2.1" data-path="../binaryclass/news20_dataset.html">
+ <li class="chapter " data-level="6.2.1" data-path="../binaryclass/news20_dataset.html">
<a href="../binaryclass/news20_dataset.html">
- <b>5.2.1.</b>
+ <b>6.2.1.</b>
Data preparation
@@ -862,12 +914,12 @@
</li>
- <li class="chapter " data-level="5.2.2" data-path="../binaryclass/news20_pa.html">
+ <li class="chapter " data-level="6.2.2" data-path="../binaryclass/news20_pa.html">
<a href="../binaryclass/news20_pa.html">
- <b>5.2.2.</b>
+ <b>6.2.2.</b>
Perceptron, Passive Aggressive
@@ -877,12 +929,12 @@
</li>
- <li class="chapter " data-level="5.2.3" data-path="../binaryclass/news20_scw.html">
+ <li class="chapter " data-level="6.2.3" data-path="../binaryclass/news20_scw.html">
<a href="../binaryclass/news20_scw.html">
- <b>5.2.3.</b>
+ <b>6.2.3.</b>
CW, AROW, SCW
@@ -892,12 +944,12 @@
</li>
- <li class="chapter " data-level="5.2.4" data-path="../binaryclass/news20_adagrad.html">
+ <li class="chapter " data-level="6.2.4" data-path="../binaryclass/news20_adagrad.html">
<a href="../binaryclass/news20_adagrad.html">
- <b>5.2.4.</b>
+ <b>6.2.4.</b>
AdaGradRDA, AdaGrad, AdaDelta
@@ -912,14 +964,14 @@
</li>
- <li class="chapter " data-level="5.3" data-path="../binaryclass/kdd2010a.html">
+ <li class="chapter " data-level="6.3" data-path="../binaryclass/kdd2010a.html">
<a href="../binaryclass/kdd2010a.html">
- <b>5.3.</b>
+ <b>6.3.</b>
- KDD2010a Tutorial
+ KDD2010a
</a>
@@ -928,12 +980,12 @@
<ul class="articles">
- <li class="chapter " data-level="5.3.1" data-path="../binaryclass/kdd2010a_dataset.html">
+ <li class="chapter " data-level="6.3.1" data-path="../binaryclass/kdd2010a_dataset.html">
<a href="../binaryclass/kdd2010a_dataset.html">
- <b>5.3.1.</b>
+ <b>6.3.1.</b>
Data preparation
@@ -943,12 +995,12 @@
</li>
- <li class="chapter " data-level="5.3.2" data-path="../binaryclass/kdd2010a_scw.html">
+ <li class="chapter " data-level="6.3.2" data-path="../binaryclass/kdd2010a_scw.html">
<a href="../binaryclass/kdd2010a_scw.html">
- <b>5.3.2.</b>
+ <b>6.3.2.</b>
PA, CW, AROW, SCW
@@ -963,14 +1015,14 @@
</li>
- <li class="chapter " data-level="5.4" data-path="../binaryclass/kdd2010b.html">
+ <li class="chapter " data-level="6.4" data-path="../binaryclass/kdd2010b.html">
<a href="../binaryclass/kdd2010b.html">
- <b>5.4.</b>
+ <b>6.4.</b>
- KDD2010b Tutorial
+ KDD2010b
</a>
@@ -979,12 +1031,12 @@
<ul class="articles">
- <li class="chapter " data-level="5.4.1" data-path="../binaryclass/kdd2010b_dataset.html">
+ <li class="chapter " data-level="6.4.1" data-path="../binaryclass/kdd2010b_dataset.html">
<a href="../binaryclass/kdd2010b_dataset.html">
- <b>5.4.1.</b>
+ <b>6.4.1.</b>
Data preparation
@@ -994,12 +1046,12 @@
</li>
- <li class="chapter " data-level="5.4.2" data-path="../binaryclass/kdd2010b_arow.html">
+ <li class="chapter " data-level="6.4.2" data-path="../binaryclass/kdd2010b_arow.html">
<a href="../binaryclass/kdd2010b_arow.html">
- <b>5.4.2.</b>
+ <b>6.4.2.</b>
AROW
@@ -1014,14 +1066,14 @@
</li>
- <li class="chapter " data-level="5.5" data-path="../binaryclass/webspam.html">
+ <li class="chapter " data-level="6.5" data-path="../binaryclass/webspam.html">
<a href="../binaryclass/webspam.html">
- <b>5.5.</b>
+ <b>6.5.</b>
- Webspam Tutorial
+ Webspam
</a>
@@ -1030,12 +1082,12 @@
<ul class="articles">
- <li class="chapter " data-level="5.5.1" data-path="../binaryclass/webspam_dataset.html">
+ <li class="chapter " data-level="6.5.1" data-path="../binaryclass/webspam_dataset.html">
<a href="../binaryclass/webspam_dataset.html">
- <b>5.5.1.</b>
+ <b>6.5.1.</b>
Data pareparation
@@ -1045,12 +1097,12 @@
</li>
- <li class="chapter " data-level="5.5.2" data-path="../binaryclass/webspam_scw.html">
+ <li class="chapter " data-level="6.5.2" data-path="../binaryclass/webspam_scw.html">
<a href="../binaryclass/webspam_scw.html">
- <b>5.5.2.</b>
+ <b>6.5.2.</b>
PA1, AROW, SCW
@@ -1065,14 +1117,14 @@
</li>
- <li class="chapter " data-level="5.6" data-path="../binaryclass/titanic_rf.html">
+ <li class="chapter " data-level="6.6" data-path="../binaryclass/titanic_rf.html">
<a href="../binaryclass/titanic_rf.html">
- <b>5.6.</b>
+ <b>6.6.</b>
- Kaggle Titanic Tutorial
+ Kaggle Titanic
</a>
@@ -1083,18 +1135,18 @@
- <li class="header">Part VI - Multiclass classification</li>
+ <li class="header">Part VII - Multiclass classification tutorials</li>
- <li class="chapter " data-level="6.1" data-path="../multiclass/news20.html">
+ <li class="chapter " data-level="7.1" data-path="../multiclass/news20.html">
<a href="../multiclass/news20.html">
- <b>6.1.</b>
+ <b>7.1.</b>
- News20 Multiclass Tutorial
+ News20 Multiclass
</a>
@@ -1103,12 +1155,12 @@
<ul class="articles">
- <li class="chapter " data-level="6.1.1" data-path="../multiclass/news20_dataset.html">
+ <li class="chapter " data-level="7.1.1" data-path="../multiclass/news20_dataset.html">
<a href="../multiclass/news20_dataset.html">
- <b>6.1.1.</b>
+ <b>7.1.1.</b>
Data preparation
@@ -1118,12 +1170,12 @@
</li>
- <li class="chapter " data-level="6.1.2" data-path="../multiclass/news20_one-vs-the-rest_dataset.html">
+ <li class="chapter " data-level="7.1.2" data-path="../multiclass/news20_one-vs-the-rest_dataset.html">
<a href="../multiclass/news20_one-vs-the-rest_dataset.html">
- <b>6.1.2.</b>
+ <b>7.1.2.</b>
Data preparation for one-vs-the-rest classifiers
@@ -1133,12 +1185,12 @@
</li>
- <li class="chapter " data-level="6.1.3" data-path="../multiclass/news20_pa.html">
+ <li class="chapter " data-level="7.1.3" data-path="../multiclass/news20_pa.html">
<a href="../multiclass/news20_pa.html">
- <b>6.1.3.</b>
+ <b>7.1.3.</b>
PA
@@ -1148,12 +1200,12 @@
</li>
- <li class="chapter " data-level="6.1.4" data-path="../multiclass/news20_scw.html">
+ <li class="chapter " data-level="7.1.4" data-path="../multiclass/news20_scw.html">
<a href="../multiclass/news20_scw.html">
- <b>6.1.4.</b>
+ <b>7.1.4.</b>
CW, AROW, SCW
@@ -1163,12 +1215,12 @@
</li>
- <li class="chapter " data-level="6.1.5" data-path="../multiclass/news20_ensemble.html">
+ <li class="chapter " data-level="7.1.5" data-path="../multiclass/news20_ensemble.html">
<a href="../multiclass/news20_ensemble.html">
- <b>6.1.5.</b>
+ <b>7.1.5.</b>
Ensemble learning
@@ -1178,12 +1230,12 @@
</li>
- <li class="chapter " data-level="6.1.6" data-path="../multiclass/news20_one-vs-the-rest.html">
+ <li class="chapter " data-level="7.1.6" data-path="../multiclass/news20_one-vs-the-rest.html">
<a href="../multiclass/news20_one-vs-the-rest.html">
- <b>6.1.6.</b>
+ <b>7.1.6.</b>
one-vs-the-rest classifier
@@ -1198,14 +1250,14 @@
</li>
- <li class="chapter " data-level="6.2" data-path="../multiclass/iris.html">
+ <li class="chapter " data-level="7.2" data-path="../multiclass/iris.html">
<a href="../multiclass/iris.html">
- <b>6.2.</b>
+ <b>7.2.</b>
- Iris Tutorial
+ Iris
</a>
@@ -1214,12 +1266,12 @@
<ul class="articles">
- <li class="chapter " data-level="6.2.1" data-path="../multiclass/iris_dataset.html">
+ <li class="chapter " data-level="7.2.1" data-path="../multiclass/iris_dataset.html">
<a href="../multiclass/iris_dataset.html">
- <b>6.2.1.</b>
+ <b>7.2.1.</b>
Data preparation
@@ -1229,12 +1281,12 @@
</li>
- <li class="chapter " data-level="6.2.2" data-path="../multiclass/iris_scw.html">
+ <li class="chapter " data-level="7.2.2" data-path="../multiclass/iris_scw.html">
<a href="../multiclass/iris_scw.html">
- <b>6.2.2.</b>
+ <b>7.2.2.</b>
SCW
@@ -1244,12 +1296,12 @@
</li>
- <li class="chapter " data-level="6.2.3" data-path="../multiclass/iris_randomforest.html">
+ <li class="chapter " data-level="7.2.3" data-path="../multiclass/iris_randomforest.html">
<a href="../multiclass/iris_randomforest.html">
- <b>6.2.3.</b>
+ <b>7.2.3.</b>
RandomForest
@@ -1267,18 +1319,18 @@
- <li class="header">Part VII - Regression</li>
+ <li class="header">Part VIII - Regression tutorials</li>
- <li class="chapter " data-level="7.1" data-path="../regression/e2006.html">
+ <li class="chapter " data-level="8.1" data-path="../regression/e2006.html">
<a href="../regression/e2006.html">
- <b>7.1.</b>
+ <b>8.1.</b>
- E2006-tfidf regression Tutorial
+ E2006-tfidf regression
</a>
@@ -1287,12 +1339,12 @@
<ul class="articles">
- <li class="chapter " data-level="7.1.1" data-path="../regression/e2006_dataset.html">
+ <li class="chapter " data-level="8.1.1" data-path="../regression/e2006_dataset.html">
<a href="../regression/e2006_dataset.html">
- <b>7.1.1.</b>
+ <b>8.1.1.</b>
Data preparation
@@ -1302,12 +1354,12 @@
</li>
- <li class="chapter " data-level="7.1.2" data-path="../regression/e2006_arow.html">
+ <li class="chapter " data-level="8.1.2" data-path="../regression/e2006_arow.html">
<a href="../regression/e2006_arow.html">
- <b>7.1.2.</b>
+ <b>8.1.2.</b>
Passive Aggressive, AROW
@@ -1322,14 +1374,14 @@
</li>
- <li class="chapter " data-level="7.2" data-path="../regression/kddcup12tr2.html">
+ <li class="chapter " data-level="8.2" data-path="../regression/kddcup12tr2.html">
<a href="../regression/kddcup12tr2.html">
- <b>7.2.</b>
+ <b>8.2.</b>
- KDDCup 2012 track 2 CTR prediction Tutorial
+ KDDCup 2012 track 2 CTR prediction
</a>
@@ -1338,12 +1390,12 @@
<ul class="articles">
- <li class="chapter " data-level="7.2.1" data-path="../regression/kddcup12tr2_dataset.html">
+ <li class="chapter " data-level="8.2.1" data-path="../regression/kddcup12tr2_dataset.html">
<a href="../regression/kddcup12tr2_dataset.html">
- <b>7.2.1.</b>
+ <b>8.2.1.</b>
Data preparation
@@ -1353,12 +1405,12 @@
</li>
- <li class="chapter " data-level="7.2.2" data-path="../regression/kddcup12tr2_lr.html">
+ <li class="chapter " data-level="8.2.2" data-path="../regression/kddcup12tr2_lr.html">
<a href="../regression/kddcup12tr2_lr.html">
- <b>7.2.2.</b>
+ <b>8.2.2.</b>
Logistic Regression, Passive Aggressive
@@ -1368,12 +1420,12 @@
</li>
- <li class="chapter " data-level="7.2.3" data-path="../regression/kddcup12tr2_lr_amplify.html">
+ <li class="chapter " data-level="8.2.3" data-path="../regression/kddcup12tr2_lr_amplify.html">
<a href="../regression/kddcup12tr2_lr_amplify.html">
- <b>7.2.3.</b>
+ <b>8.2.3.</b>
Logistic Regression with Amplifier
@@ -1383,12 +1435,12 @@
</li>
- <li class="chapter " data-level="7.2.4" data-path="../regression/kddcup12tr2_adagrad.html">
+ <li class="chapter " data-level="8.2.4" data-path="../regression/kddcup12tr2_adagrad.html">
<a href="../regression/kddcup12tr2_adagrad.html">
- <b>7.2.4.</b>
+ <b>8.2.4.</b>
AdaGrad, AdaDelta
@@ -1406,16 +1458,16 @@
- <li class="header">Part VIII - Recommendation</li>
+ <li class="header">Part IX - Recommendation</li>
- <li class="chapter " data-level="8.1" data-path="../recommend/cf.html">
+ <li class="chapter " data-level="9.1" data-path="../recommend/cf.html">
<a href="../recommend/cf.html">
- <b>8.1.</b>
+ <b>9.1.</b>
Collaborative Filtering
@@ -1426,12 +1478,12 @@
<ul class="articles">
- <li class="chapter " data-level="8.1.1" data-path="../recommend/item_based_cf.html">
+ <li class="chapter " data-level="9.1.1" data-path="../recommend/item_based_cf.html">
<a href="../recommend/item_based_cf.html">
- <b>8.1.1.</b>
+ <b>9.1.1.</b>
Item-based Collaborative Filtering
@@ -1446,12 +1498,12 @@
</li>
- <li class="chapter " data-level="8.2" data-path="../recommend/news20.html">
+ <li class="chapter " data-level="9.2" data-path="../recommend/news20.html">
<a href="../recommend/news20.html">
- <b>8.2.</b>
+ <b>9.2.</b>
News20 related article recommendation Tutorial
@@ -1462,12 +1514,12 @@
<ul class="articles">
- <li class="chapter " data-level="8.2.1" data-path="../multiclass/news20_dataset.html">
+ <li class="chapter " data-level="9.2.1" data-path="../multiclass/news20_dataset.html">
<a href="../multiclass/news20_dataset.html">
- <b>8.2.1.</b>
+ <b>9.2.1.</b>
Data preparation
@@ -1477,12 +1529,12 @@
</li>
- <li class="chapter " data-level="8.2.2" data-path="../recommend/news20_jaccard.html">
+ <li class="chapter " data-level="9.2.2" data-path="../recommend/news20_jaccard.html">
<a href="../recommend/news20_jaccard.html">
- <b>8.2.2.</b>
+ <b>9.2.2.</b>
LSH/Minhash and Jaccard Similarity
@@ -1492,12 +1544,12 @@
</li>
- <li class="chapter " data-level="8.2.3" data-path="../recommend/news20_knn.html">
+ <li class="chapter " data-level="9.2.3" data-path="../recommend/news20_knn.html">
<a href="../recommend/news20_knn.html">
- <b>8.2.3.</b>
+ <b>9.2.3.</b>
LSH/Minhash and Brute-Force Search
@@ -1507,12 +1559,12 @@
</li>
- <li class="chapter " data-level="8.2.4" data-path="../recommend/news20_bbit_minhash.html">
+ <li class="chapter " data-level="9.2.4" data-path="../recommend/news20_bbit_minhash.html">
<a href="../recommend/news20_bbit_minhash.html">
- <b>8.2.4.</b>
+ <b>9.2.4.</b>
kNN search using b-Bits Minhash
@@ -1527,12 +1579,12 @@
</li>
- <li class="chapter " data-level="8.3" data-path="../recommend/movielens.html">
+ <li class="chapter " data-level="9.3" data-path="../recommend/movielens.html">
<a href="../recommend/movielens.html">
- <b>8.3.</b>
+ <b>9.3.</b>
MovieLens movie recommendation Tutorial
@@ -1543,12 +1595,12 @@
<ul class="articles">
- <li class="chapter " data-level="8.3.1" data-path="../recommend/movielens_dataset.html">
+ <li class="chapter " data-level="9.3.1" data-path="../recommend/movielens_dataset.html">
<a href="../recommend/movielens_dataset.html">
- <b>8.3.1.</b>
+ <b>9.3.1.</b>
Data preparation
@@ -1558,12 +1610,27 @@
</li>
- <li class="chapter " data-level="8.3.2" data-path="../recommend/movielens_mf.html">
+ <li class="chapter " data-level="9.3.2" data-path="../recommend/movielens_cf.html">
+
+ <a href="../recommend/movielens_cf.html">
+
+
+ <b>9.3.2.</b>
+
+ Item-based Collaborative Filtering
+
+ </a>
+
+
+
+ </li>
+
+ <li class="chapter " data-level="9.3.3" data-path="../recommend/movielens_mf.html">
<a href="../recommend/movielens_mf.html">
- <b>8.3.2.</b>
+ <b>9.3.3.</b>
Matrix Factorization
@@ -1573,12 +1640,12 @@
</li>
- <li class="chapter " data-level="8.3.3" data-path="../recommend/movielens_fm.html">
+ <li class="chapter " data-level="9.3.4" data-path="../recommend/movielens_fm.html">
<a href="../recommend/movielens_fm.html">
- <b>8.3.3.</b>
+ <b>9.3.4.</b>
Factorization Machine
@@ -1588,12 +1655,12 @@
</li>
- <li class="chapter " data-level="8.3.4" data-path="../recommend/movielens_cv.html">
+ <li class="chapter " data-level="9.3.5" data-path="../recommend/movielens_cv.html">
<a href="../recommend/movielens_cv.html">
- <b>8.3.4.</b>
+ <b>9.3.5.</b>
10-fold Cross Validation (Matrix Factorization)
@@ -1611,16 +1678,16 @@
- <li class="header">Part IX - Anomaly Detection</li>
+ <li class="header">Part X - Anomaly Detection</li>
- <li class="chapter " data-level="9.1" data-path="../anomaly/lof.html">
+ <li class="chapter " data-level="10.1" data-path="../anomaly/lof.html">
<a href="../anomaly/lof.html">
- <b>9.1.</b>
+ <b>10.1.</b>
Outlier Detection using Local Outlier Factor (LOF)
@@ -1630,12 +1697,12 @@
</li>
- <li class="chapter " data-level="9.2" data-path="../anomaly/sst.html">
+ <li class="chapter " data-level="10.2" data-path="../anomaly/sst.html">
<a href="../anomaly/sst.html">
- <b>9.2.</b>
+ <b>10.2.</b>
Change-Point Detection using Singular Spectrum Transformation (SST)
@@ -1645,12 +1712,12 @@
</li>
- <li class="chapter " data-level="9.3" data-path="../anomaly/changefinder.html">
+ <li class="chapter " data-level="10.3" data-path="../anomaly/changefinder.html">
<a href="../anomaly/changefinder.html">
- <b>9.3.</b>
+ <b>10.3.</b>
ChangeFinder: Detecting Outlier and Change-Point Simultaneously
@@ -1663,16 +1730,16 @@
- <li class="header">Part X - Clustering</li>
+ <li class="header">Part XI - Clustering</li>
- <li class="chapter " data-level="10.1" data-path="../clustering/lda.html">
+ <li class="chapter " data-level="11.1" data-path="../clustering/lda.html">
<a href="../clustering/lda.html">
- <b>10.1.</b>
+ <b>11.1.</b>
Latent Dirichlet Allocation
@@ -1682,12 +1749,12 @@
</li>
- <li class="chapter " data-level="10.2" data-path="../clustering/plsa.html">
+ <li class="chapter " data-level="11.2" data-path="../clustering/plsa.html">
<a href="../clustering/plsa.html">
- <b>10.2.</b>
+ <b>11.2.</b>
Probabilistic Latent Semantic Analysis
@@ -1700,16 +1767,16 @@
- <li class="header">Part XI - GeoSpatial functions</li>
+ <li class="header">Part XII - GeoSpatial functions</li>
- <li class="chapter " data-level="11.1" data-path="../geospatial/latlon.html">
+ <li class="chapter " data-level="12.1" data-path="../geospatial/latlon.html">
<a href="../geospatial/latlon.html">
- <b>11.1.</b>
+ <b>12.1.</b>
Lat/Lon functions
@@ -1722,16 +1789,16 @@
- <li class="header">Part XII - Hivemall on Spark</li>
+ <li class="header">Part XIII - Hivemall on Spark</li>
- <li class="chapter " data-level="12.1" data-path="../spark/getting_started/">
+ <li class="chapter " data-level="13.1" data-path="../spark/getting_started/">
<a href="../spark/getting_started/">
- <b>12.1.</b>
+ <b>13.1.</b>
Getting Started
@@ -1742,12 +1809,12 @@
<ul class="articles">
- <li class="chapter " data-level="12.1.1" data-path="../spark/getting_started/installation.html">
+ <li class="chapter " data-level="13.1.1" data-path="../spark/getting_started/installation.html">
<a href="../spark/getting_started/installation.html">
- <b>12.1.1.</b>
+ <b>13.1.1.</b>
Installation
@@ -1762,12 +1829,12 @@
</li>
- <li class="chapter " data-level="12.2" data-path="../spark/binaryclass/">
+ <li class="chapter " data-level="13.2" data-path="../spark/binaryclass/">
<a href="../spark/binaryclass/">
- <b>12.2.</b>
+ <b>13.2.</b>
Binary Classification
@@ -1778,12 +1845,12 @@
<ul class="articles">
- <li class="chapter " data-level="12.2.1" data-path="../spark/binaryclass/a9a_df.html">
+ <li class="chapter " data-level="13.2.1" data-path="../spark/binaryclass/a9a_df.html">
<a href="../spark/binaryclass/a9a_df.html">
- <b>12.2.1.</b>
+ <b>13.2.1.</b>
a9a Tutorial for DataFrame
@@ -1798,12 +1865,12 @@
</li>
- <li class="chapter " data-level="12.3" data-path="../spark/binaryclass/">
+ <li class="chapter " data-level="13.3" data-path="../spark/binaryclass/">
<a href="../spark/binaryclass/">
- <b>12.3.</b>
+ <b>13.3.</b>
Regression
@@ -1814,12 +1881,12 @@
<ul class="articles">
- <li class="chapter " data-level="12.3.1" data-path="../spark/regression/e2006_df.html">
+ <li class="chapter " data-level="13.3.1" data-path="../spark/regression/e2006_df.html">
<a href="../spark/regression/e2006_df.html">
- <b>12.3.1.</b>
+ <b>13.3.1.</b>
E2006-tfidf regression Tutorial for DataFrame
@@ -1834,12 +1901,12 @@
</li>
- <li class="chapter " data-level="12.4" data-path="../spark/misc/misc.html">
+ <li class="chapter " data-level="13.4" data-path="../spark/misc/misc.html">
<a href="../spark/misc/misc.html">
- <b>12.4.</b>
+ <b>13.4.</b>
Generic features
@@ -1850,12 +1917,12 @@
<ul class="articles">
- <li class="chapter " data-level="12.4.1" data-path="../spark/misc/topk_join.html">
+ <li class="chapter " data-level="13.4.1" data-path="../spark/misc/topk_join.html">
<a href="../spark/misc/topk_join.html">
- <b>12.4.1.</b>
+ <b>13.4.1.</b>
Top-k Join processing
@@ -1865,12 +1932,12 @@
</li>
- <li class="chapter " data-level="12.4.2" data-path="../spark/misc/functions.html">
+ <li class="chapter " data-level="13.4.2" data-path="../spark/misc/functions.html">
<a href="../spark/misc/functions.html">
- <b>12.4.2.</b>
+ <b>13.4.2.</b>
Other utility functions
@@ -1888,16 +1955,16 @@
- <li class="header">Part XIII - Hivemall on Docker</li>
+ <li class="header">Part XIV - Hivemall on Docker</li>
- <li class="chapter " data-level="13.1" data-path="../docker/getting_started.html">
+ <li class="chapter " data-level="14.1" data-path="../docker/getting_started.html">
<a href="../docker/getting_started.html">
- <b>13.1.</b>
+ <b>14.1.</b>
Getting Started
@@ -1914,12 +1981,12 @@
- <li class="chapter " data-level="14.1" >
+ <li class="chapter " data-level="15.1" >
<a target="_blank" href="https://github.com/maropu/hivemall-spark">
- <b>14.1.</b>
+ <b>15.1.</b>
Hivemall on Apache Spark
@@ -1929,12 +1996,12 @@
</li>
- <li class="chapter " data-level="14.2" >
+ <li class="chapter " data-level="15.2" >
<a target="_blank" href="https://github.com/daijyc/hivemall/wiki/PigHome">
- <b>14.2.</b>
+ <b>15.2.</b>
Hivemall on Apache Pig
@@ -2153,7 +2220,7 @@
</tbody>
</table>
<p>How can we compare <code>dummy_rec</code> with <code>dummy_truth</code> to figure out the accuracy of <code>dummy_rec</code>?</p>
-<p>To be more precise, in case we built a recommender system, let a target user <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mi>u</mi><mo>∈</mo><mrow><mi mathvariant="script">U</mi></mrow></mrow><annotation encoding="application/x-tex">u \in \mathcal{U}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.68333em;"></span><span class="strut bottom" style="height:0.72243em;vertical-align:-0.0391em;"></span><span class="base textstyle uncramped"><span class="mord mathit">u</span><span class="mrel">∈</span><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.09931em;">U</span></span></span></span></span>, set of all items <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="script">I</mi></mrow></mrow><annotation encoding="application/x-tex">\mathcal{I}</annotation></semantics></math></span><span class="katex
-html" aria-hidden="true"><span class="strut" style="height:0.68333em;"></span><span class="strut bottom" style="height:0.68333em;vertical-align:0em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span></span></span></span>, ordered set of top-k recommended items <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo><mo>⊂</mo><mrow><mi mathvariant="script">I</mi></mrow></mrow><annotation encoding="application/x-tex">I_k(u) \subset \mathcal{I}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><sp
an style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mrel">⊂</span><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span></span></span></span>, and set of truth items <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup></mrow><annotation encoding="application/x-tex">\mathcal{I}^+_u</annotation></semantics></math></span><span
class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.0183309999999999em;vertical-align:-0.247em;"></span><span class="base textstyle uncramped"><span class=""><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle uncramped"><span class="mord">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</
span></span></span></span></span></span>. Hence, when we launch top-2 recommendation for the above tables, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="script">U</mi></mrow><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo separator="true">,</mo><mn>3</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">\mathcal{U} = \{1, 2, 3\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.09931em;">U</span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">2</span><span class="mpunct">,</span><span class="mord mathrm">3</span><span class=
"mclose">}</span></span></span></span>, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="script">I</mi></mrow><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo separator="true">,</mo><mn>3</mn><mo separator="true">,</mo><mn>4</mn><mo separator="true">,</mo><mn>5</mn><mo separator="true">,</mo><mn>6</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">\mathcal{I} = \{1, 2, 3, 4, 5, 6\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">2</span><span class="mpunct">,
</span><span class="mord mathrm">3</span><span class="mpunct">,</span><span class="mord mathrm">4</span><span class="mpunct">,</span><span class="mord mathrm">5</span><span class="mpunct">,</span><span class="mord mathrm">6</span><span class="mclose">}</span></span></span></span> and <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mn>2</mn></msub><mo>(</mo><mi>u</mi><mo>)</mo><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>3</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">I_2(u) = \{1, 3\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="f
ontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathrm">2</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">3</span><span class="mclose">}</span></span></span></span> which consists of two highest-scored items, and <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo separator="true">,</mo><mn>4</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">
\mathcal{I}^+_u = \{1, 2, 4\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.021331em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class=""><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle uncramped"><span class="mord">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5
"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">2</span><span class="mpunct">,</span><span class="mord mathrm">4</span><span class="mclose">}</span></span></span></span>.</p>
+<p>To be more precise, in case we built a recommender system, let a target user <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mi>u</mi><mo>∈</mo><mrow><mi mathvariant="script">U</mi></mrow></mrow><annotation encoding="application/x-tex">u \in \mathcal{U}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.68333em;"></span><span class="strut bottom" style="height:0.72243em;vertical-align:-0.0391em;"></span><span class="base textstyle uncramped"><span class="mord mathit">u</span><span class="mrel">∈</span><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.09931em;">U</span></span></span></span></span>, set of all items <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="script">I</mi></mrow></mrow><annotation encoding="application/x-tex">\mathcal{I}</annotation></semantics></math></span><span class="katex
-html" aria-hidden="true"><span class="strut" style="height:0.68333em;"></span><span class="strut bottom" style="height:0.68333em;vertical-align:0em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span></span></span></span>, ordered set of top-k recommended items <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo><mo>⊂</mo><mrow><mi mathvariant="script">I</mi></mrow></mrow><annotation encoding="application/x-tex">I_k(u) \subset \mathcal{I}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="msupsub"><
span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mrel">⊂</span><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span></span></span></span>, and set of truth items <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup></mrow><annotation encoding="application/x-tex">\mathcal{I}^+_u</
annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.0183309999999999em;vertical-align:-0.247em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="msupsub"><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle uncramped mtight"><span class="mbin mtight">+</span></span></span><span class="baseline-fix"><span class="
fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span></span></span></span>. Hence, when we launch top-2 recommendation for the above tables, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="script">U</mi></mrow><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo separator="true">,</mo><mn>3</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">\mathcal{U} = \{1, 2, 3\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.09931em;">U</span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span
class="mord mathrm">2</span><span class="mpunct">,</span><span class="mord mathrm">3</span><span class="mclose">}</span></span></span></span>, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="script">I</mi></mrow><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo separator="true">,</mo><mn>3</mn><mo separator="true">,</mo><mn>4</mn><mo separator="true">,</mo><mn>5</mn><mo separator="true">,</mo><mn>6</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">\mathcal{I} = \{1, 2, 3, 4, 5, 6\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mo
rd mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">2</span><span class="mpunct">,</span><span class="mord mathrm">3</span><span class="mpunct">,</span><span class="mord mathrm">4</span><span class="mpunct">,</span><span class="mord mathrm">5</span><span class="mpunct">,</span><span class="mord mathrm">6</span><span class="mclose">}</span></span></span></span> and <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mn>2</mn></msub><mo>(</mo><mi>u</mi><mo>)</mo><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>3</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">I_2(u) = \{1, 3\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span
><span class="msupsub"><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathrm mtight">2</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">3</span><span class="mclose">}</span></span></span></span> which consists of two highest-scored items, and <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>=</mo><mo>{
</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo separator="true">,</mo><mn>4</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">\mathcal{I}^+_u = \{1, 2, 4\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.021331em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="msupsub"><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">&#
x200B;</span></span><span class="reset-textstyle scriptstyle uncramped mtight"><span class="mbin mtight">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">2</span><span class="mpunct">,</span><span class="mord mathrm">4</span><span class="mclose">}</span></span></span></span>.</p>
<p>Evaluation of the ordered sets can be done by the following query:</p>
<pre><code class="lang-sql">with truth as (
<span class="hljs-keyword">select</span> userid, collect_set(itemid) <span class="hljs-keyword">as</span> truth
@@ -2245,43 +2312,43 @@ rec <span class="hljs-keyword">as</span> (
<p><strong>Recall-at-k (Recall@k)</strong> indicates coverage of truth samples as a result of top-k recommendation. The value is computed by the following equation:
<span class="katex-display"><span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="normal">R</mi><mi mathvariant="normal">e</mi><mi mathvariant="normal">c</mi><mi mathvariant="normal">a</mi><mi mathvariant="normal">l</mi><mi mathvariant="normal">l</mi><mi mathvariant="normal">@</mi></mrow><mi>k</mi><mo>=</mo><mfrac><mrow><mi mathvariant="normal">∣</mi><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>∩</mo><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo><mi mathvariant="normal">∣</mi></mrow><mrow><mi mathvariant="normal">∣</mi><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mi mathvariant="normal">∣</mi></mrow></mfrac><mi mathvariant="normal">.</mi></mrow><annotation encoding="application/x-tex">
\mathrm{Recall@}k = \frac{|\mathcal{I}^+_u \cap I_k(u)|}{|\mathcal{I}^+_u|}.
-</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:1.448331em;"></span><span class="strut bottom" style="height:2.384331em;vertical-align:-0.936em;"></span><span class="base displaystyle textstyle uncramped"><span class="mord displaystyle textstyle uncramped"><span class="mord mathrm">R</span><span class="mord mathrm">e</span><span class="mord mathrm">c</span><span class="mord mathrm">a</span><span class="mord mathrm">l</span><span class="mord mathrm">l</span><span class="mord mathrm">@</span></span><span class="mord mathit" style="margin-right:0.03148em;">k</span><span class="mrel">=</span><span class="mord reset-textstyle displaystyle textstyle uncramped"><span class="sizing reset-size5 size5 reset-textstyle textstyle uncramped nulldelimiter"></span><span class="mfrac"><span class="vlist"><span style="top:0.686em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><s
pan class="reset-textstyle textstyle cramped"><span class="mord textstyle cramped"><span class="mord mathrm">∣</span><span class=""><span class="mord textstyle cramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit">u</span></span></span><span style="top:-0.29733em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mord mathrm">∣</span></span></span></span><span style="top:-0.230
0000000000001em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle textstyle uncramped frac-line"></span></span><span style="top:-0.677em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathrm">∣</span><span class=""><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span
class="reset-textstyle scriptstyle uncramped"><span class="mord">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mbin">∩</span><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mord mathrm">∣</span></span></span></span><span c
lass="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="sizing reset-size5 size5 reset-textstyle textstyle uncramped nulldelimiter"></span></span><span class="mord mathrm">.</span></span></span></span></span>
-Here, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mi mathvariant="normal">∣</mi><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>∩</mo><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo><mi mathvariant="normal">∣</mi></mrow><annotation encoding="application/x-tex">|\mathcal{I}^+_u \cap I_k(u)|</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.021331em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord mathrm">∣</span><span class=""><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span cla
ss="reset-textstyle scriptstyle cramped"><span class="mord mathit">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle uncramped"><span class="mord">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mbin">∩</span><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size
5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mord mathrm">∣</span></span></span></span> is the number of true positives. If <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mn>2</mn></msub><mo>(</mo><mi>u</mi><mo>)</mo><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>3</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">I_2(u) = \{1, 3\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensu
rer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathrm">2</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">3</span><span class="mclose">}</span></span></span></span> and <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo separator="true">,</mo><mn>4</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">\mathcal{I}^+_u = \{1, 2, 4\}</annotation></semantics></
math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.021331em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class=""><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle uncramped"><span class="mord">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>&#x
200B;</span></span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">2</span><span class="mpunct">,</span><span class="mord mathrm">4</span><span class="mclose">}</span></span></span></span>, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="normal">R</mi><mi mathvariant="normal">e</mi><mi mathvariant="normal">c</mi><mi mathvariant="normal">a</mi><mi mathvariant="normal">l</mi><mi mathvariant="normal">l</mi><mi mathvariant="normal">@</mi></mrow><mn>2</mn><mo>=</mo><mn>1</mn><mi mathvariant="normal">/</mi><mn>3</mn><mo>≈</mo><mn>0</mn><mi mathvariant="normal">.</mi><mn>3</mn><mn>3</mn><mn>3</mn></mrow><annotation encoding="application/x-tex">\mathrm{Recall@}2 = 1 / 3 \approx 0.333</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom
" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathrm">R</span><span class="mord mathrm">e</span><span class="mord mathrm">c</span><span class="mord mathrm">a</span><span class="mord mathrm">l</span><span class="mord mathrm">l</span><span class="mord mathrm">@</span></span><span class="mord mathrm">2</span><span class="mrel">=</span><span class="mord mathrm">1</span><span class="mord mathrm">/</span><span class="mord mathrm">3</span><span class="mrel">≈</span><span class="mord mathrm">0</span><span class="mord mathrm">.</span><span class="mord mathrm">3</span><span class="mord mathrm">3</span><span class="mord mathrm">3</span></span></span></span>.</p>
+</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:1.448331em;"></span><span class="strut bottom" style="height:2.384331em;vertical-align:-0.936em;"></span><span class="base displaystyle textstyle uncramped"><span class="mord displaystyle textstyle uncramped"><span class="mord mathrm">R</span><span class="mord mathrm">e</span><span class="mord mathrm">c</span><span class="mord mathrm">a</span><span class="mord mathrm">l</span><span class="mord mathrm">l</span><span class="mord mathrm">@</span></span><span class="mord mathit" style="margin-right:0.03148em;">k</span><span class="mrel">=</span><span class="mord reset-textstyle displaystyle textstyle uncramped"><span class="mopen sizing reset-size5 size5 reset-textstyle textstyle uncramped nulldelimiter"></span><span class="mfrac"><span class="vlist"><span style="top:0.686em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></s
pan><span class="reset-textstyle textstyle cramped"><span class="mord textstyle cramped"><span class="mord mathrm">∣</span><span class="mord"><span class="mord textstyle cramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="msupsub"><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight">u</span></span></span><span style="top:-0.28900000000000003em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mbin mtight">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span
class="mord mathrm">∣</span></span></span></span><span style="top:-0.2300000000000001em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle textstyle uncramped frac-line"></span></span><span style="top:-0.677em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathrm">∣</span><span class="mord"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="msupsub"><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight">u</span></span></span><span style="top:-0.363em;margin-ri
ght:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle uncramped mtight"><span class="mbin mtight">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mbin">∩</span><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="msupsub"><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</spa
n></span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mord mathrm">∣</span></span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mclose sizing reset-size5 size5 reset-textstyle textstyle uncramped nulldelimiter"></span></span><span class="mord mathrm">.</span></span></span></span></span>
+Here, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mi mathvariant="normal">∣</mi><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>∩</mo><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo><mi mathvariant="normal">∣</mi></mrow><annotation encoding="application/x-tex">|\mathcal{I}^+_u \cap I_k(u)|</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.021331em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord mathrm">∣</span><span class="mord"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="msupsub"><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;"> 
0B;</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle uncramped mtight"><span class="mbin mtight">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mbin">∩</span><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="msupsub"><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight" style="margin-right:0.03148em;
">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mord mathrm">∣</span></span></span></span> is the number of true positives. If <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mn>2</mn></msub><mo>(</mo><mi>u</mi><mo>)</mo><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>3</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">I_2(u) = \{1, 3\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class
="msupsub"><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathrm mtight">2</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">3</span><span class="mclose">}</span></span></span></span> and <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>=</mo><mo>{</mo><mn>1</mn><mo separator="true">,</mo><mn>2</mn><mo
separator="true">,</mo><mn>4</mn><mo>}</mo></mrow><annotation encoding="application/x-tex">\mathcal{I}^+_u = \{1, 2, 4\}</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.771331em;"></span><span class="strut bottom" style="height:1.021331em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="msupsub"><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scripts
tyle uncramped mtight"><span class="mbin mtight">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mrel">=</span><span class="mopen">{</span><span class="mord mathrm">1</span><span class="mpunct">,</span><span class="mord mathrm">2</span><span class="mpunct">,</span><span class="mord mathrm">4</span><span class="mclose">}</span></span></span></span>, <span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="normal">R</mi><mi mathvariant="normal">e</mi><mi mathvariant="normal">c</mi><mi mathvariant="normal">a</mi><mi mathvariant="normal">l</mi><mi mathvariant="normal">l</mi><mi mathvariant="normal">@</mi></mrow><mn>2</mn><mo>=</mo><mn>1</mn><mi mathvariant="normal">/</mi><mn>3</mn><mo>≈</mo><mn>0</mn><mi mathvariant="normal">.</mi><mn>3</mn><mn>3</mn><mn>3</mn></mrow><annotation encoding="applicat
ion/x-tex">\mathrm{Recall@}2 = 1 / 3 \approx 0.333</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathrm">R</span><span class="mord mathrm">e</span><span class="mord mathrm">c</span><span class="mord mathrm">a</span><span class="mord mathrm">l</span><span class="mord mathrm">l</span><span class="mord mathrm">@</span></span><span class="mord mathrm">2</span><span class="mrel">=</span><span class="mord mathrm">1</span><span class="mord mathrm">/</span><span class="mord mathrm">3</span><span class="mrel">≈</span><span class="mord mathrm">0</span><span class="mord mathrm">.</span><span class="mord mathrm">3</span><span class="mord mathrm">3</span><span class="mord mathrm">3</span></span></span></span>.</p>
<h2 id="precision-at-k">Precision-At-k</h2>
-<p>Unlike Recall@k, <strong>Precision-at-k (Precision@k)</strong> evaluates correctness of a top-k recommendation list <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo></mrow><annotation encoding="application/x-tex">I_k(u)</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class
="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span></span></span></span> according to the portion of true positives in the list as:
+<p>Unlike Recall@k, <strong>Precision-at-k (Precision@k)</strong> evaluates correctness of a top-k recommendation list <span class="katex"><span class="katex-mathml"><math><semantics><mrow><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo></mrow><annotation encoding="application/x-tex">I_k(u)</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:0.75em;"></span><span class="strut bottom" style="height:1em;vertical-align:-0.25em;"></span><span class="base textstyle uncramped"><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="msupsub"><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped mtight"><span class="mord mathit mtight" style="margin-right:0.03148em;">k</span></span></span><s
pan class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span></span></span></span> according to the portion of true positives in the list as:
<span class="katex-display"><span class="katex"><span class="katex-mathml"><math><semantics><mrow><mrow><mi mathvariant="normal">P</mi><mi mathvariant="normal">r</mi><mi mathvariant="normal">e</mi><mi mathvariant="normal">c</mi><mi mathvariant="normal">i</mi><mi mathvariant="normal">s</mi><mi mathvariant="normal">i</mi><mi mathvariant="normal">o</mi><mi mathvariant="normal">n</mi><mi mathvariant="normal">@</mi></mrow><mi>k</mi><mo>=</mo><mfrac><mrow><mi mathvariant="normal">∣</mi><msubsup><mrow><mi mathvariant="script">I</mi></mrow><mi>u</mi><mo>+</mo></msubsup><mo>∩</mo><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo><mi mathvariant="normal">∣</mi></mrow><mrow><mi mathvariant="normal">∣</mi><msub><mi>I</mi><mi>k</mi></msub><mo>(</mo><mi>u</mi><mo>)</mo><mi mathvariant="normal">∣</mi></mrow></mfrac><mi mathvariant="normal">.</mi></mrow><annotation encoding="application/x-tex">
\mathrm{Precision@}k = \frac{|\mathcal{I}^+_u \cap I_k(u)|}{|I_k(u)|}.
-</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:1.448331em;"></span><span class="strut bottom" style="height:2.384331em;vertical-align:-0.936em;"></span><span class="base displaystyle textstyle uncramped"><span class="mord displaystyle textstyle uncramped"><span class="mord mathrm">P</span><span class="mord mathrm">r</span><span class="mord mathrm">e</span><span class="mord mathrm">c</span><span class="mord mathrm">i</span><span class="mord mathrm">s</span><span class="mord mathrm">i</span><span class="mord mathrm">o</span><span class="mord mathrm">n</span><span class="mord mathrm">@</span></span><span class="mord mathit" style="margin-right:0.03148em;">k</span><span class="mrel">=</span><span class="mord reset-textstyle displaystyle textstyle uncramped"><span class="sizing reset-size5 size5 reset-textstyle textstyle uncramped nulldelimiter"></span><span class="mfrac"><span class="vlist"><span style="top:0.686em;">
<span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle textstyle cramped"><span class="mord textstyle cramped"><span class="mord mathrm">∣</span><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mord mathrm">∣</span></span></span></span><span style="top:-0.2300000000000001em;"><span class="font
size-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle textstyle uncramped frac-line"></span></span><span style="top:-0.677em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle textstyle uncramped"><span class="mord textstyle uncramped"><span class="mord mathrm">∣</span><span class=""><span class="mord textstyle uncramped"><span class="mord mathcal" style="margin-right:0.07382em;">I</span></span><span class="vlist"><span style="top:0.247em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit">u</span></span></span><span style="top:-0.363em;margin-right:0.05em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle
uncramped"><span class="mord">+</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mbin">∩</span><span class="mord"><span class="mord mathit" style="margin-right:0.07847em;">I</span><span class="vlist"><span style="top:0.15em;margin-right:0.05em;margin-left:-0.07847em;"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span><span class="reset-textstyle scriptstyle cramped"><span class="mord mathit" style="margin-right:0.03148em;">k</span></span></span><span class="baseline-fix"><span class="fontsize-ensurer reset-size5 size5"><span style="font-size:0em;">​</span></span>​</span></span></span><span class="mopen">(</span><span class="mord mathit">u</span><span class="mclose">)</span><span class="mord mathrm">∣</
<TRUNCATED>