\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ QPS (1/s) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0153, 1240.265919288611)
(0.0897, 299.6262729621818)
(0.3012, 85.80720902207432)
(0.8122, 31.20114364955493)
(0.8131, 31.074541169015816)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.23479999999999998, 3542.3069776869415)
(0.23879999999999998, 3199.785170673356)
(0.24020000000000002, 3133.0540132528886)
(0.5566, 934.8309157424903)
(0.557, 818.8897175679529)
(0.6929000000000001, 320.9910972370287)
(0.6948000000000001, 281.6787562386752)
(0.795, 91.72510565555166)
(0.7956000000000001, 82.65569542090091)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0147, 779.5220244544764)
(0.0159, 691.8744297687007)
(0.073, 179.72681105130937)
(0.23079999999999998, 58.98452934150923)
(0.23370000000000002, 58.18691693051772)
(0.6503, 22.123293153930966)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0902, 575.7396187353562)
(0.0903, 488.3561579239125)
(0.09330000000000001, 405.76300359723365)
(0.49539999999999995, 135.9431533031711)
(0.9178000000000001, 45.51129432172519)
(0.9208999999999999, 45.196375927154925)
(0.9833000000000001, 17.412423941732538)
(0.984, 17.33588163620361)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0484, 5453.132333534853)
(0.0492, 5446.51851928803)
(0.2427, 1217.2235384799333)
(0.2447, 1164.2093470852187)
(0.6346, 395.05279798422765)
(0.8813000000000001, 96.06819367071012)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0728, 2842.9656611720657)
(0.0731, 2718.687450089709)
(0.0737, 2679.9756941138735)
(0.2774, 662.2059680736918)
(0.2783, 646.509487155062)
(0.5786, 179.84784191585732)
(0.579, 170.60340540228552)
(0.7691, 49.93996803168798)
(0.7692, 49.75207670507219)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0333, 16485.48879036569)
(0.034, 15780.102860453653)
(0.0346, 15008.870837880877)
(0.1756, 3677.9170853786645)
(0.1759, 3573.278854861616)
(0.5353, 1258.943206686743)
(0.5393, 1199.0505488674883)
(0.9611000000000001, 522.910457762831)
(0.9612, 510.11912254681073)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.27149999999999996, 4710.758597297519)
(0.8211999999999999, 1111.0762618834688)
(0.9602999999999999, 395.41174613954706)
(0.9608000000000001, 363.34000476795046)
(0.962, 358.44695865185855)
(0.9948, 92.33250827866925)
(0.9949999999999999, 89.99265585275369)
(0.9951000000000001, 88.63147287224021)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0019, 3731.6436280619905)
(0.002, 3469.498092493391)
(0.0072, 937.5673254868615)
(0.007299999999999999, 884.827033493782)
(0.0078, 878.7603881685606)
(0.0079, 873.9932302732313)
(0.0083, 861.2065257229328)
(0.023, 307.31000437705507)
(0.023200000000000002, 302.64136833626634)
(0.0233, 291.33018639890867)
(0.0601, 84.07238440383891)
(0.061, 81.79861373295282)
(0.061399999999999996, 75.38359452676409)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0038, 119.91615512057476)
(0.0043, 83.38818250437558)
(0.023799999999999998, 33.825340232331634)
(0.0258, 33.78036263208461)
(0.1103, 12.256776579833378)
(0.1119, 12.176047745180444)
(0.1121, 12.055930542361775)
(0.1127, 12.03294727585413)
(0.11279999999999998, 11.698268281697947)
(0.3805, 4.6994657278497405)
(0.38130000000000003, 4.688792150564077)
(0.38170000000000004, 4.636924918588205)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-QPS (1/s) tradeoff - up and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Build time (s) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.8122, 8.497428894042969)
(0.8131, 8.581430196762085)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.7933, 259.0427348613739)
(0.795, 319.04064893722534)
(0.7952, 451.9243676662445)
(0.7956000000000001, 456.65114879608154)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.6503, 23.01564621925354)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9832000000000001, 502.5143802165985)
(0.9833000000000001, 506.1759741306305)
(0.984, 805.5767941474915)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.8797, 35.84559345245361)
(0.8811, 36.20997595787048)
(0.8813000000000001, 45.375641107559204)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.7692, 76.51220440864563)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9608000000000001, 9.504552841186523)
(0.9612, 9.572721719741821)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9945999999999999, 25.462316513061523)
(0.9949999999999999, 25.68654179573059)
(0.9951000000000001, 31.3517849445343)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0601, 36.10692477226257)
(0.060899999999999996, 36.304073333740234)
(0.061399999999999996, 44.6589732170105)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.3785, 588.7694096565247)
(0.3805, 589.8732917308807)
(0.38130000000000003, 950.4950485229492)
(0.38170000000000004, 1777.7102267742157)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Build time (s) tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Index size (kB) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.8131, 297276.0)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.7933, 5197596.0)
(0.795, 6566632.0)
(0.7952, 9305108.0)
(0.7956000000000001, 9305240.0)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.6498999999999999, 463684.0)
(0.6503, 463692.0)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9832000000000001, 5485028.0)
(0.9833000000000001, 5485032.0)
(0.984, 7199184.0)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.8797, 644112.0)
(0.8811, 644116.0)
(0.8813000000000001, 813892.0)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.7675, 1170496.0)
(0.7692, 1170500.0)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9612, 275800.0)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9945999999999999, 537828.0)
(0.9949999999999999, 537836.0)
(0.9951000000000001, 678080.0)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0601, 654836.0)
(0.060899999999999996, 654840.0)
(0.061399999999999996, 802820.0)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.3805, 14225128.0)
(0.38130000000000003, 26829896.0)
(0.38170000000000004, 52039392.0)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Index size (kB) tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Distance comp. },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0153, 1009)
(0.0897, 5009)
(0.3012, 15009)
(0.8131, 40009)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.24020000000000002, 1009)
(0.557, 5009)
(0.6948000000000001, 15009)
(0.7956000000000001, 40009)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0159, 1009)
(0.073, 5009)
(0.23370000000000002, 15009)
(0.6503, 40009)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.09330000000000001, 1009)
(0.49539999999999995, 5009)
(0.9208999999999999, 15009)
(0.984, 40009)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0492, 1009)
(0.2447, 5009)
(0.6346, 15009)
(0.8813000000000001, 40009)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0737, 1009)
(0.2783, 5009)
(0.579, 15009)
(0.7692, 40009)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0346, 1009)
(0.1759, 5009)
(0.5393, 15009)
(0.9612, 40009)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.27149999999999996, 1009)
(0.8211999999999999, 5009)
(0.962, 15009)
(0.9951000000000001, 40009)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.002, 1009)
(0.0083, 5009)
(0.0233, 15009)
(0.061399999999999996, 40009)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0043, 1009)
(0.0258, 5009)
(0.11279999999999998, 15009)
(0.38170000000000004, 40009)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Distance comp. tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Relative Error },
ylabel={ QPS (1/s) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(3.8077754894702887, 1240.265919288611)
(3.721994428440036, 1157.7488192866863)
(0.17984081799870716, 299.6262729621818)
(0.03571432352327715, 85.80720902207432)
(0.035638907253565305, 84.98091117368752)
(0.012651815454694184, 31.20114364955493)
(0.012636603265014926, 31.0989213756875)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(38.77986866467155, 3542.3069776869415)
(35.65283930565394, 3133.0540132528886)
(33.347007437256565, 2376.773455053394)
(17.36011261394589, 934.8309157424903)
(15.580956806269638, 819.438629491518)
(15.306741002508577, 779.3095490830027)
(10.059177669517789, 320.9910972370287)
(9.592266746958396, 281.6787562386752)
(5.69380695292522, 91.72510565555166)
(5.643864073241989, 87.53481468903873)
(5.617190141252147, 82.65569542090091)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(1.9463088320838795, 779.5220244544764)
(0.3631835740412157, 179.72681105130937)
(0.35555287778780426, 176.52802785388494)
(0.350550977458074, 169.97622815235331)
(0.34581546033905247, 166.96343586642507)
(0.08844463331290679, 58.98452934150923)
(0.019413149592281482, 22.123293153930966)
(0.019363418367036596, 21.948116591959696)
(0.01915427633307516, 21.925774317236886)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(8.806195187367228, 575.7396187353562)
(8.716749707800988, 560.7811861788286)
(8.439142680901561, 504.09017776844615)
(8.398834445078034, 488.3561579239125)
(8.38388011826416, 394.32573118899865)
(1.6780262963978756, 135.9431533031711)
(1.6743285451251984, 135.09385814234028)
(1.6741936795130345, 128.8523689591274)
(0.49203859551022183, 45.51129432172519)
(0.48030906558348924, 44.75045486329903)
(0.4769791232277786, 44.3972836590059)
(0.47131833107746707, 43.98457987651024)
(0.16665443450265605, 17.412423941732538)
(0.16597868035332874, 17.075162630051942)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.41865021395114294, 5453.132333534853)
(0.41848553348277656, 5446.51851928803)
(0.4181480641638032, 4546.799150978781)
(0.11015410468245003, 1217.2235384799333)
(0.10960277517455341, 1208.9770270659787)
(0.10948086888574088, 1164.2093470852187)
(0.10890579096701657, 1147.0427366882677)
(0.050110456500498314, 395.05279798422765)
(0.05008620949668008, 382.14121326599)
(0.049885604852271094, 378.61341308251934)
(0.028468849378990774, 96.06819367071012)
(0.02834076647010211, 93.53623590724733)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.13214168636108153, 2842.9656611720657)
(0.13189731403906851, 2718.687450089709)
(0.1318503857744532, 2679.9756941138735)
(0.1316718966442192, 2633.9413441044558)
(0.1316213349795696, 2215.6411661013512)
(0.06984502802810429, 662.2059680736918)
(0.06948566336791152, 654.1360501249615)
(0.06855524566402707, 638.8673401450889)
(0.04936124383363637, 179.84784191585732)
(0.04016811073667612, 49.93996803168798)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(7.4962237437744825, 16485.48879036569)
(1.3760728149188486, 3677.9170853786645)
(1.3735082710603341, 3573.278854861616)
(0.4381125009231534, 1258.943206686743)
(0.4347621414260709, 1199.0505488674883)
(0.16066742849280644, 522.910457762831)
(0.16056316904696213, 510.11912254681073)
(0.16050382705500413, 507.15540296585806)
(0.16047848097559508, 457.28021504785505)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(1.1752212470973626, 4710.758597297519)
(1.1751560032339432, 4612.688703470923)
(0.255678997497609, 1111.0762618834688)
(0.09794608215056606, 395.41174613954706)
(0.09782738190264503, 365.4929911298126)
(0.09706394514234411, 363.34000476795046)
(0.09674136513625925, 346.14194009471584)
(0.042899235158848074, 92.33250827866925)
(0.0428397013744729, 88.63147287224021)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(12.037880220025645, 3731.6436280619905)
(9.166656081336471, 3721.0134191629836)
(8.909517292942823, 3469.498092493391)
(3.1407938915264575, 937.5673254868615)
(2.71615311643433, 914.3004626103501)
(1.0880793265403792, 307.31000437705507)
(0.9957310366537581, 302.64136833626634)
(0.9879993677905783, 291.33018639890867)
(0.4314776471636274, 84.07238440383891)
(0.3834273922978212, 81.79861373295282)
(0.37302795401512745, 77.52766126571795)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(40.93234181304555, 119.91615512057476)
(40.89229098496799, 119.41693682054864)
(40.033208490960334, 103.06620120357069)
(39.68173975339089, 83.38818250437558)
(39.58232797925963, 82.3815765720635)
(6.769690048100904, 33.825340232331634)
(6.517025933579258, 32.436916645215696)
(6.490476954393626, 30.165256152390615)
(0.832497729782416, 12.256776579833378)
(0.8063720560226202, 12.055930542361775)
(0.09884206737256987, 4.6994657278497405)
(0.09618052548388925, 4.688792150564077)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Relative Error-QPS (1/s) tradeoff - up and to the left is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Candidates generated },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.8131, 10.0)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.7956000000000001, 10.0)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.6503, 10.0)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.984, 10.0)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.8813000000000001, 10.0)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.7692, 10.0)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9612, 10.0)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.9951000000000001, 10.0)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.061399999999999996, 10.0)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.38170000000000004, 10.0)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Candidates generated tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Index size (kB)/QPS (s) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0153, 239.6905335998535)
(0.0897, 992.1693350219726)
(0.3012, 3464.5107723236083)
(0.8122, 9527.855880508425)
(0.8131, 9566.54511431408)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.23879999999999998, 1624.3577999038696)
(0.24020000000000002, 2969.9800771512987)
(0.5446, 6507.627365627289)
(0.5566, 7024.406113895417)
(0.557, 8018.94548084259)
(0.6864, 18994.17470442867)
(0.6929000000000001, 20457.36488183975)
(0.6948000000000001, 33034.93711863517)
(0.7933, 68760.35612683868)
(0.795, 71590.34544652558)
(0.7956000000000001, 112578.32811902046)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0147, 594.8414354610443)
(0.0159, 1873.1954011268617)
(0.073, 2579.9823481407166)
(0.23079999999999998, 7861.247774230957)
(0.23290000000000002, 8058.142778707504)
(0.23370000000000002, 12737.021294408798)
(0.6503, 20959.447437309263)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0902, 9526.93165714073)
(0.0903, 14741.659101023675)
(0.09330000000000001, 26190.569139587402)
(0.49539999999999995, 40347.98271721458)
(0.9178000000000001, 120520.23748710823)
(0.9208999999999999, 159286.75369023514)
(0.9833000000000001, 315006.8030938511)
(0.984, 415276.48556191643)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0484, 118.1178010368347)
(0.0492, 118.26196821308137)
(0.2427, 529.1682091560364)
(0.2447, 709.5533356933594)
(0.6346, 1630.4554816131592)
(0.8811, 6886.272402908325)
(0.8813000000000001, 8472.023558491706)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0728, 411.71795213222504)
(0.0731, 430.53716967773437)
(0.0737, 522.2435423851014)
(0.2774, 1767.5769419670107)
(0.2783, 1810.485419403076)
(0.5786, 6508.257132980346)
(0.579, 8203.82217283249)
(0.7692, 23526.656122088432)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0333, 16.729864883422852)
(0.0346, 18.375799417495724)
(0.1756, 74.98809614181519)
(0.1759, 119.35368531894683)
(0.5353, 219.07263054847718)
(0.5393, 355.6847544107437)
(0.9612, 540.6580302715302)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.27149999999999996, 114.17014667415617)
(0.8211999999999999, 484.06038221740727)
(0.9602999999999999, 1360.1720364933012)
(0.9608000000000001, 1480.2553887329104)
(0.962, 2674.471011291504)
(0.9949999999999999, 5976.443243102073)
(0.9951000000000001, 7650.55547454834)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0019, 175.48299496650694)
(0.002, 316.43654809188837)
(0.007000000000000001, 716.2196966743469)
(0.007299999999999999, 740.0723251123427)
(0.0083, 932.2038048028948)
(0.023200000000000002, 2163.7359214963913)
(0.0233, 2247.758833694458)
(0.0601, 7788.954775619506)
(0.060899999999999996, 8361.646998939514)
(0.061399999999999996, 10649.797280693056)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0038, 118625.61792192841)
(0.023799999999999998, 420546.48681413836)
(0.0258, 421106.4326020279)
(0.1103, 1160592.910162468)
(0.1119, 1168287.797297003)
(0.1121, 2225451.44115802)
(0.1127, 2229702.780617855)
(0.3805, 3026967.0689797252)
(0.38130000000000003, 5722133.790206988)
(0.38170000000000004, 11222823.94338279)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Index size (kB)/QPS (s) tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Eps 0.01 Recall },
ylabel={ QPS (1/s) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0155, 1240.265919288611)
(0.0907, 299.6262729621818)
(0.30369999999999997, 85.80720902207432)
(0.8154, 31.20114364955493)
(0.8164, 31.074541169015816)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0001, 3199.785170673356)
(0.00030000000000000003, 3133.0540132528886)
(0.0008, 934.8309157424903)
(0.0009, 818.8897175679529)
(0.001, 779.3095490830027)
(0.0019, 320.9910972370287)
(0.0023, 281.6787562386752)
(0.0053, 91.72510565555166)
(0.0054, 76.52151195110422)
(0.0055, 74.81135091676948)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.014799999999999999, 779.5220244544764)
(0.016, 691.8744297687007)
(0.0731, 179.72681105130937)
(0.2318, 58.98452934150923)
(0.2347, 58.18691693051772)
(0.6527000000000001, 22.123293153930966)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0021000000000000003, 575.7396187353562)
(0.0021999999999999997, 560.7811861788286)
(0.0024000000000000002, 405.76300359723365)
(0.0106, 135.9431533031711)
(0.0306, 45.51129432172519)
(0.030699999999999998, 45.455312938880475)
(0.0309, 44.75045486329903)
(0.08, 17.412423941732538)
(0.0804, 17.33588163620361)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.010100000000000001, 5453.132333534853)
(0.0104, 4546.799150978781)
(0.032600000000000004, 1217.2235384799333)
(0.0328, 1208.9770270659787)
(0.033, 1184.0235590625155)
(0.0344, 1164.2093470852187)
(0.0349, 1147.0427366882677)
(0.0733, 395.05279798422765)
(0.07339999999999999, 382.14121326599)
(0.0746, 345.3429709479257)
(0.1461, 96.06819367071012)
(0.14650000000000002, 93.53623590724733)
(0.1466, 92.30894643467241)
(0.1469, 90.58186227302616)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0426, 2842.9656611720657)
(0.0427, 2679.9756941138735)
(0.043, 2244.025727917958)
(0.0431, 2215.6411661013512)
(0.1059, 662.2059680736918)
(0.10629999999999999, 646.509487155062)
(0.1817, 179.84784191585732)
(0.2817, 49.93996803168798)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0009, 16485.48879036569)
(0.001, 15780.102860453653)
(0.0012000000000000001, 14300.68122771008)
(0.0060999999999999995, 3677.9170853786645)
(0.0064, 3484.95818602545)
(0.0193, 1258.943206686743)
(0.0451, 522.910457762831)
(0.045200000000000004, 507.15540296585806)
(0.0454, 493.7266301715264)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0055, 4710.758597297519)
(0.0057, 4612.688703470923)
(0.0058000000000000005, 4365.792322424848)
(0.023200000000000002, 1111.0762618834688)
(0.0241, 1100.9475232051052)
(0.0553, 395.41174613954706)
(0.05620000000000001, 358.44695865185855)
(0.0573, 346.14194009471584)
(0.12350000000000001, 92.33250827866925)
(0.1244, 92.22696294457721)
(0.1248, 86.46982963874434)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0013, 3731.6436280619905)
(0.0015, 3469.498092493391)
(0.0056, 937.5673254868615)
(0.0059, 878.7603881685606)
(0.0062, 873.9932302732313)
(0.016900000000000002, 307.31000437705507)
(0.0173, 302.64136833626634)
(0.0174, 291.33018639890867)
(0.0444, 84.07238440383891)
(0.0453, 81.79861373295282)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0038, 119.91615512057476)
(0.0043, 83.38818250437558)
(0.0241, 33.825340232331634)
(0.0261, 33.78036263208461)
(0.11180000000000001, 12.256776579833378)
(0.1135, 12.176047745180444)
(0.11379999999999998, 12.055930542361775)
(0.11439999999999999, 12.03294727585413)
(0.38370000000000004, 4.6994657278497405)
(0.3851, 4.688792150564077)
(0.3852, 4.636924918588205)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Eps 0.01 Recall-QPS (1/s) tradeoff - up and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Eps 0.1 Recall },
ylabel={ QPS (1/s) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0166, 1240.265919288611)
(0.0986, 299.6262729621818)
(0.3298, 85.80720902207432)
(0.8596999999999999, 31.20114364955493)
(0.8605, 31.074541169015816)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0001, 3199.785170673356)
(0.00030000000000000003, 3133.0540132528886)
(0.0009, 934.8309157424903)
(0.001, 818.8897175679529)
(0.0010999999999999998, 779.3095490830027)
(0.0021000000000000003, 320.9910972370287)
(0.0025, 281.6787562386752)
(0.0056, 91.72510565555166)
(0.0058000000000000005, 82.65569542090091)
(0.006, 76.52151195110422)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.016, 779.5220244544764)
(0.0177, 691.8744297687007)
(0.08080000000000001, 179.72681105130937)
(0.0814, 172.32420025118725)
(0.2542, 58.98452934150923)
(0.2572, 58.18691693051772)
(0.6993, 22.123293153930966)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0021999999999999997, 575.7396187353562)
(0.0023, 560.7811861788286)
(0.0025, 405.76300359723365)
(0.0108, 135.9431533031711)
(0.033600000000000005, 45.51129432172519)
(0.033800000000000004, 45.455312938880475)
(0.0342, 44.75045486329903)
(0.0871, 17.412423941732538)
(0.0874, 17.33588163620361)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.011, 5453.132333534853)
(0.0112, 4546.799150978781)
(0.035199999999999995, 1217.2235384799333)
(0.0356, 1184.0235590625155)
(0.0368, 1164.2093470852187)
(0.0376, 1147.0427366882677)
(0.07880000000000001, 395.05279798422765)
(0.0791, 382.14121326599)
(0.08020000000000001, 345.3429709479257)
(0.15589999999999998, 96.06819367071012)
(0.1565, 93.53623590724733)
(0.15660000000000002, 92.30894643467241)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0466, 2842.9656611720657)
(0.0469, 2244.025727917958)
(0.0472, 2215.6411661013512)
(0.1167, 662.2059680736918)
(0.1176, 646.509487155062)
(0.202, 179.84784191585732)
(0.2022, 171.65590927861044)
(0.3096, 49.93996803168798)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0010999999999999998, 16485.48879036569)
(0.0012000000000000001, 15780.102860453653)
(0.0014, 14300.68122771008)
(0.0066, 3677.9170853786645)
(0.006900000000000001, 3484.95818602545)
(0.020999999999999998, 1258.943206686743)
(0.05, 522.910457762831)
(0.0501, 507.15540296585806)
(0.0502, 504.5519460772426)
(0.0503, 493.7266301715264)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0060999999999999995, 4710.758597297519)
(0.0062, 4612.688703470923)
(0.006500000000000001, 4365.792322424848)
(0.0252, 1111.0762618834688)
(0.0261, 1100.9475232051052)
(0.059399999999999994, 395.41174613954706)
(0.0601, 358.44695865185855)
(0.061399999999999996, 346.14194009471584)
(0.13169999999999998, 92.33250827866925)
(0.1329, 92.22696294457721)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0013, 3731.6436280619905)
(0.0015, 3469.498092493391)
(0.0057, 937.5673254868615)
(0.0059, 878.7603881685606)
(0.0062, 873.9932302732313)
(0.0172, 307.31000437705507)
(0.0177, 302.64136833626634)
(0.0178, 291.33018639890867)
(0.0458, 84.07238440383891)
(0.046400000000000004, 81.79861373295282)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.004, 119.91615512057476)
(0.0045, 83.38818250437558)
(0.0258, 33.825340232331634)
(0.0279, 33.78036263208461)
(0.1206, 12.256776579833378)
(0.12250000000000001, 12.176047745180444)
(0.12310000000000001, 12.03294727585413)
(0.12350000000000001, 11.698268281697947)
(0.4084, 4.6994657278497405)
(0.4103, 4.688792150564077)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Eps 0.1 Recall-QPS (1/s) tradeoff - up and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Percentile 50 (millis) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0153, 0.80108642578125)
(0.0897, 3.2988786697387695)
(0.3012, 11.589646339416504)
(0.8122, 31.95810317993164)
(0.8131, 32.04071521759033)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.23479999999999998, 0.2745389938354492)
(0.23879999999999998, 0.30922889709472656)
(0.24020000000000002, 0.31197071075439453)
(0.5566, 1.042485237121582)
(0.557, 1.2072324752807617)
(0.6929000000000001, 2.933621406555176)
(0.6948000000000001, 3.440380096435547)
(0.795, 10.5820894241333)
(0.7956000000000001, 12.058734893798828)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0147, 1.2564659118652344)
(0.0159, 1.4140605926513672)
(0.073, 5.506038665771484)
(0.23079999999999998, 16.85917377471924)
(0.23370000000000002, 17.075061798095703)
(0.6503, 44.97039318084717)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0902, 1.737833023071289)
(0.0903, 2.050638198852539)
(0.09330000000000001, 2.4906396865844727)
(0.49539999999999995, 7.294893264770508)
(0.9178000000000001, 21.847844123840332)
(0.9208999999999999, 22.025108337402344)
(0.9833000000000001, 57.17766284942627)
(0.984, 57.43563175201416)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0492, 0.17762184143066406)
(0.2427, 0.8090734481811523)
(0.2447, 0.8449554443359375)
(0.6346, 2.4766921997070312)
(0.8813000000000001, 10.5665922164917)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0728, 0.34880638122558594)
(0.0731, 0.3631114959716797)
(0.0737, 0.36525726318359375)
(0.2774, 1.491546630859375)
(0.2783, 1.5119314193725586)
(0.5786, 5.524992942810059)
(0.579, 5.683302879333496)
(0.7691, 19.913792610168457)
(0.7692, 20.04718780517578)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0333, 0.057697296142578125)
(0.0346, 0.05793571472167969)
(0.1756, 0.26738643646240234)
(0.1759, 0.2695322036743164)
(0.5353, 0.7841587066650391)
(0.5393, 0.8084774017333984)
(0.9611000000000001, 1.871347427368164)
(0.9612, 1.9283294677734375)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.27149999999999996, 0.20754337310791016)
(0.8211999999999999, 0.8802413940429688)
(0.9602999999999999, 2.482295036315918)
(0.9608000000000001, 2.662777900695801)
(0.962, 2.7104616165161133)
(0.9948, 10.789275169372559)
(0.9949999999999999, 11.357784271240234)
(0.9951000000000001, 11.418700218200684)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0019, 0.2620220184326172)
(0.002, 0.2810955047607422)
(0.0072, 1.0504722595214844)
(0.007299999999999999, 1.1196136474609375)
(0.0079, 1.123666763305664)
(0.0083, 1.1453628540039062)
(0.023, 3.167271614074707)
(0.023200000000000002, 3.1675100326538086)
(0.0233, 3.2987594604492188)
(0.0601, 11.805891990661621)
(0.061, 12.278318405151367)
(0.061399999999999996, 13.277530670166016)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0038, 8.304834365844727)
(0.0043, 11.913418769836426)
(0.023799999999999998, 29.394865036010742)
(0.0258, 29.407501220703125)
(0.1103, 81.0481309890747)
(0.1119, 81.71260356903076)
(0.1121, 82.47005939483643)
(0.1127, 82.785964012146)
(0.11279999999999998, 85.0834846496582)
(0.3805, 212.07475662231445)
(0.38130000000000003, 212.2802734375)
(0.38170000000000004, 215.0423526763916)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Percentile 50 (millis) tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Percentile 95 (millis) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0153, 0.8728861808776854)
(0.0897, 3.6180615425109863)
(0.30019999999999997, 12.31989860534668)
(0.3012, 12.38187551498413)
(0.8122, 33.415138721466064)
(0.8131, 33.55764150619507)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.23479999999999998, 0.33907890319824213)
(0.24020000000000002, 0.3732204437255858)
(0.5566, 1.2694835662841795)
(0.557, 1.3566136360168457)
(0.6929000000000001, 4.202771186828612)
(0.6948000000000001, 4.326426982879639)
(0.795, 13.547432422637938)
(0.7956000000000001, 14.25715684890747)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.013800000000000002, 1.3830900192260742)
(0.0147, 1.431727409362793)
(0.0159, 1.638185977935791)
(0.073, 6.06546401977539)
(0.23079999999999998, 17.88642406463623)
(0.23370000000000002, 18.1219220161438)
(0.6503, 47.23355770111084)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0902, 1.8649101257324219)
(0.0903, 2.328920364379883)
(0.09330000000000001, 2.851283550262451)
(0.4932, 7.8845977783203125)
(0.49539999999999995, 7.981240749359131)
(0.9160999999999999, 22.878670692443844)
(0.9178000000000001, 22.963547706604004)
(0.9208999999999999, 23.191869258880615)
(0.9833000000000001, 59.46781635284424)
(0.984, 59.960949420928955)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0492, 0.21555423736572263)
(0.2412, 0.8928894996643066)
(0.2427, 0.9142518043518065)
(0.2447, 0.9343862533569336)
(0.6346, 2.8696298599243164)
(0.8813000000000001, 11.630856990814209)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0728, 0.3843545913696289)
(0.0731, 0.40916204452514643)
(0.0737, 0.43590068817138666)
(0.2774, 1.6513347625732422)
(0.2783, 1.7409563064575195)
(0.5786, 6.584107875823975)
(0.579, 7.4924349784851065)
(0.7692, 21.179115772247314)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0333, 0.07414817810058594)
(0.034, 0.07796287536621094)
(0.0344, 0.07945299148559565)
(0.0346, 0.11467933654785156)
(0.1756, 0.29139518737792963)
(0.1759, 0.30853748321533203)
(0.5353, 0.8460164070129395)
(0.5393, 0.8823871612548828)
(0.9611000000000001, 2.0533084869384766)
(0.9612, 2.149832248687744)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.27149999999999996, 0.24390220642089844)
(0.8182, 0.9813666343688964)
(0.8211999999999999, 0.994265079498291)
(0.9602999999999999, 2.8760910034179688)
(0.962, 3.3241033554077144)
(0.9948, 12.19475269317627)
(0.9949999999999999, 12.544512748718262)
(0.9951000000000001, 12.673342227935791)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0019, 0.31337738037109364)
(0.002, 0.3361821174621582)
(0.0072, 1.1741399765014646)
(0.0078, 1.2195348739624023)
(0.0083, 1.2670516967773438)
(0.0217, 3.8144826889038086)
(0.023, 3.8217186927795406)
(0.023200000000000002, 4.096353054046631)
(0.0233, 4.396212100982665)
(0.061, 13.946843147277832)
(0.061399999999999996, 14.554738998413086)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0038, 8.794713020324707)
(0.0043, 13.004565238952637)
(0.023799999999999998, 30.756545066833496)
(0.0258, 30.87475299835205)
(0.1103, 84.99191999435425)
(0.1119, 85.53001880645752)
(0.1127, 85.97902059555052)
(0.11279999999999998, 88.6811375617981)
(0.3786, 219.31493282318115)
(0.3805, 219.75572109222412)
(0.38130000000000003, 220.0628161430359)
(0.38170000000000004, 222.00552225112915)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Percentile 95 (millis) tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Percentile 99 (millis) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0153, 0.9203791618347167)
(0.0897, 3.8651227951049805)
(0.30019999999999997, 12.614762783050537)
(0.3012, 12.781636714935303)
(0.8115, 34.116108417510986)
(0.8122, 34.33425426483154)
(0.8131, 34.38772678375244)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.23479999999999998, 0.406675338745117)
(0.24020000000000002, 0.4326701164245604)
(0.5536, 1.5114784240722654)
(0.5566, 1.516454219818115)
(0.557, 1.5181875228881836)
(0.6948000000000001, 4.924380779266357)
(0.795, 14.130337238311768)
(0.7956000000000001, 14.94300365447998)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.013800000000000002, 1.4543795585632324)
(0.0147, 1.4723730087280273)
(0.0159, 1.7128849029541016)
(0.0712, 6.3152313232421875)
(0.073, 6.455428600311279)
(0.23079999999999998, 18.41078758239746)
(0.23290000000000002, 18.63013505935669)
(0.23370000000000002, 18.631856441497803)
(0.6503, 48.32362174987793)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0902, 1.9791412353515623)
(0.0903, 2.4585795402526855)
(0.09330000000000001, 3.020768165588379)
(0.4932, 8.159899711608887)
(0.49539999999999995, 8.357586860656738)
(0.9160999999999999, 23.313918113708496)
(0.9178000000000001, 23.56372833251953)
(0.9208999999999999, 23.76873016357422)
(0.9833000000000001, 60.999770164489746)
(0.984, 61.551523208618164)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0484, 0.23961782455444336)
(0.0492, 0.25300741195678705)
(0.2405, 0.9441637992858886)
(0.2412, 0.9580111503601073)
(0.2427, 0.9635496139526366)
(0.2447, 1.005282402038574)
(0.6308, 3.2933521270751953)
(0.6346, 3.3122897148132324)
(0.8813000000000001, 11.983418464660645)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0728, 0.40842533111572266)
(0.0731, 0.4346442222595215)
(0.0737, 0.5095052719116211)
(0.2774, 1.7378902435302734)
(0.2783, 1.984710693359375)
(0.5786, 6.960875988006591)
(0.579, 8.134708404541016)
(0.7691, 21.73933506011963)
(0.7692, 21.774446964263916)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0333, 0.0880193710327148)
(0.034, 0.09824991226196288)
(0.0346, 0.13427019119262693)
(0.1746, 0.31709909439086914)
(0.1756, 0.3240919113159177)
(0.1759, 0.4282760620117178)
(0.5353, 0.9167551994323729)
(0.5376000000000001, 1.0264372825622559)
(0.5393, 1.7814922332763672)
(0.9612, 2.296426296234131)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.27149999999999996, 0.2811527252197265)
(0.8182, 1.0242629051208496)
(0.8194000000000001, 1.0495448112487793)
(0.8211999999999999, 1.0861825942993162)
(0.9602999999999999, 3.137660026550293)
(0.962, 3.932423591613769)
(0.9945999999999999, 12.782416343688965)
(0.9948, 12.853360176086426)
(0.9949999999999999, 13.214600086212158)
(0.9951000000000001, 13.766453266143797)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0015, 0.35580635070800776)
(0.0019, 0.35813570022583)
(0.002, 0.3893446922302246)
(0.0072, 1.232900619506836)
(0.0078, 1.3084864616394043)
(0.0079, 1.3185334205627441)
(0.0083, 1.3466024398803709)
(0.0217, 4.1658711433410645)
(0.023, 4.35060977935791)
(0.023200000000000002, 4.723637104034424)
(0.0233, 4.971477985382079)
(0.061, 14.582903385162354)
(0.061399999999999996, 15.163934230804443)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0038, 9.196488857269285)
(0.0043, 13.530478477478027)
(0.0258, 31.545047760009762)
(0.1103, 86.87491655349731)
(0.1127, 87.58930444717407)
(0.11279999999999998, 90.69260358810425)
(0.38130000000000003, 223.2019066810608)
(0.38170000000000004, 225.80693483352658)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Percentile 99 (millis) tradeoff - down and to the right is better }
\label{}
\end{figure}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
xlabel={ Recall },
ylabel={ Percentile 99.9 (millis) },
ymode = log,
yticklabel style={/pgf/number format/fixed,
/pgf/number format/precision=3},
legend style = { anchor=west}
]
\addplot [
color=red!90!black,
mark=o,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0153, 1.134584665298479)
(0.088, 4.4462733268738015)
(0.0897, 4.468585491180433)
(0.30019999999999997, 12.848523616790935)
(0.3012, 13.280592679977522)
(0.8112, 34.91174197196977)
(0.8115, 35.24467754364018)
(0.8131, 35.40546464920055)
};
\addlegendentry{ cifar10-512-euclidean (k = 10) };
\addplot [
color=blue!80!black,
mark=square,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.23479999999999998, 0.6259615421295268)
(0.23879999999999998, 0.6381137371063327)
(0.24020000000000002, 0.7072670459747421)
(0.5446, 1.9316942691803218)
(0.5566, 1.9629161357879867)
(0.557, 2.1501526832581077)
(0.6864, 5.578553438186714)
(0.6929000000000001, 5.824604988098169)
(0.6948000000000001, 5.991878271102921)
(0.795, 14.829050064086926)
(0.7956000000000001, 15.87187075614943)
};
\addlegendentry{ deep10m-96-euclidean (k = 10) };
\addplot [
color=green!70!black,
mark=triangle,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0147, 1.6023464202881015)
(0.0159, 2.1801369190216096)
(0.073, 6.844851255416878)
(0.23079999999999998, 19.289515018463177)
(0.23290000000000002, 19.356084823608427)
(0.23370000000000002, 19.56665897369388)
(0.6503, 49.72882199287417)
};
\addlegendentry{ fashion-mnist-784-euclidean (k = 10) };
\addplot [
color=orange!90!black,
mark=diamond,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0902, 2.1846776008606215)
(0.0903, 2.6162431240081854)
(0.09330000000000001, 3.1136002540588676)
(0.4932, 8.478224515914922)
(0.49539999999999995, 8.894973993301397)
(0.9160999999999999, 23.690546751022346)
(0.9208999999999999, 24.108117580413833)
(0.9833000000000001, 61.75393152236958)
(0.984, 63.33656191825873)
};
\addlegendentry{ gist-960-euclidean (k = 10) };
\addplot [
color=violet!90!black,
mark=x,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.048, 0.4389483928680652)
(0.0492, 0.48088455200197405)
(0.2427, 1.6416888236999885)
(0.2447, 1.685812711715737)
(0.6346, 4.78244280815131)
(0.8813000000000001, 12.845616579055859)
};
\addlegendentry{ glove-100-euclidean (k = 10) };
\addplot [
color=teal!90!black,
mark=pentagon,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0728, 0.6631639003753772)
(0.0731, 0.7175531387329238)
(0.0737, 0.7669939994812227)
(0.2774, 2.583371400833161)
(0.2783, 2.738994359970118)
(0.5786, 7.603741407394461)
(0.579, 10.042668819427554)
(0.7691, 22.272161006927494)
(0.7692, 22.908513784408704)
};
\addlegendentry{ glove-200-euclidean (k = 10) };
\addplot [
color=magenta!90!black,
mark=star,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0333, 0.22514748573303947)
(0.0346, 0.2502582073211811)
(0.17470000000000002, 0.5472452640533729)
(0.1756, 0.5797183513641897)
(0.1759, 1.2281239032745388)
(0.5353, 1.4848654270172974)
(0.5376000000000001, 1.6141805648804004)
(0.5393, 1.9971640110016449)
(0.9612, 3.7530620098114977)
};
\addlegendentry{ glove-25-euclidean (k = 10) };
\addplot [
color=olive!90!black,
mark=otimes,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.27149999999999996, 0.509194374084488)
(0.8211999999999999, 1.753987312316932)
(0.9602999999999999, 4.718987226486289)
(0.962, 5.076484441757273)
(0.9945999999999999, 13.255546569824258)
(0.9948, 13.630244255065927)
(0.9949999999999999, 14.023406505584726)
(0.9951000000000001, 15.466948270797754)
};
\addlegendentry{ music-100-euclidean (k = 10) };
\addplot [
color=cyan!70!black,
mark=asterisk,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0019, 0.5406072139740091)
(0.002, 0.5817971229553488)
(0.007000000000000001, 1.864329338073764)
(0.007299999999999999, 1.8954956531524934)
(0.0079, 1.994345664978068)
(0.0083, 2.120363473892243)
(0.023, 5.108666419982981)
(0.0233, 5.681719541549723)
(0.0607, 14.974417686462601)
(0.060899999999999996, 15.179090738296523)
(0.061, 15.380244731903085)
(0.061399999999999996, 15.986142158508382)
};
\addlegendentry{ sift-128-euclidean (k = 10) };
\addplot [
color=brown!90!black,
mark=oplus,
mark size=2.5pt,
line width=1pt
] coordinates {
(0.0038, 9.530490875244329)
(0.0043, 13.935917377472128)
(0.0258, 32.3399708271027)
(0.1103, 88.52732872962956)
(0.1121, 89.11716032028205)
(0.1127, 90.0074558258057)
(0.11279999999999998, 92.39165472984315)
(0.38130000000000003, 226.29087162017828)
(0.38170000000000004, 228.74179720878635)
};
\addlegendentry{ trevi-4096-euclidean (k = 10) };
\end{axis}
\end{tikzpicture}
\caption{ Recall-Percentile 99.9 (millis) tradeoff - down and to the right is better }
\label{}
\end{figure}
P2HNNS-benchmarks is a fork of the original ANN-BENCHMARKS repository, which was developed by Martin Aumueller (maau@itu.dk), Erik Bernhardsson (mail@erikbern.com), and Alec Faitfull (alef@itu.dk). This fork, reconfigured by Søren Majlund Jensen and Christian Porsmose Stender, includes minor modifications to address the P2HNNS problem. We acknowledge and give full credit to the original developers for their work. Please use GitHub to submit your implementations or improvements.