blob: d55be9bbacf6e85e3bf37b811b4c04e8efb6a7a8 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_121) on Fri Apr 14 22:11:36 PDT 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>LocalitySensitiveHashSearch (Mahout Map-Reduce 0.13.0 API)</title>
<meta name="date" content="2017-04-14">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="LocalitySensitiveHashSearch (Mahout Map-Reduce 0.13.0 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":9,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/LocalitySensitiveHashSearch.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/mahout/math/neighborhood/HashedVector.html" title="class in org.apache.mahout.math.neighborhood"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/mahout/math/neighborhood/ProjectionSearch.html" title="class in org.apache.mahout.math.neighborhood"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html" target="_top">Frames</a></li>
<li><a href="LocalitySensitiveHashSearch.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.apache.mahout.math.neighborhood.Searcher">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.mahout.math.neighborhood</div>
<h2 title="Class LocalitySensitiveHashSearch" class="title">Class LocalitySensitiveHashSearch</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html" title="class in org.apache.mahout.math.neighborhood">org.apache.mahout.math.neighborhood.Searcher</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/mahout/math/neighborhood/UpdatableSearcher.html" title="class in org.apache.mahout.math.neighborhood">org.apache.mahout.math.neighborhood.UpdatableSearcher</a></li>
<li>
<ul class="inheritance">
<li>org.apache.mahout.math.neighborhood.LocalitySensitiveHashSearch</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;</dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">LocalitySensitiveHashSearch</span>
extends <a href="../../../../../org/apache/mahout/math/neighborhood/UpdatableSearcher.html" title="class in org.apache.mahout.math.neighborhood">UpdatableSearcher</a></pre>
<div class="block">Implements a Searcher that uses locality sensitivity hash as a first pass approximation
to estimate distance without floating point math. The clever bit about this implementation
is that it does an adaptive cutoff for the cutoff on the bitwise distance. Making this
cutoff adaptive means that we only needs to make a single pass through the data.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.mahout.math.neighborhood.Searcher">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.mahout.math.neighborhood.<a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html" title="class in org.apache.mahout.math.neighborhood">Searcher</a></h3>
<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#distanceMeasure">distanceMeasure</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#LocalitySensitiveHashSearch-org.apache.mahout.common.distance.DistanceMeasure-int-">LocalitySensitiveHashSearch</a></span>(<a href="../../../../../org/apache/mahout/common/distance/DistanceMeasure.html" title="interface in org.apache.mahout.common.distance">DistanceMeasure</a>&nbsp;distanceMeasure,
int&nbsp;searchSize)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#add-org.apache.mahout.math.Vector-">add</a></span>(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;vector)</code>
<div class="block">Add a new Vector to the Searcher that will be checked when getting
the nearest neighbors.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#clear--">clear</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#getSearchSize--">getSearchSize</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#iterator--">iterator</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#remove-org.apache.mahout.math.Vector-double-">remove</a></span>(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;v,
double&nbsp;epsilon)</code>&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected static <a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#removeHash-org.apache.mahout.math.random.WeightedThing-">removeHash</a></span>(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;&nbsp;input)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#resetEvaluationCount--">resetEvaluationCount</a></span>()</code>
<div class="block">This is only for testing.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#search-org.apache.mahout.math.Vector-int-">search</a></span>(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;query,
int&nbsp;limit)</code>
<div class="block">When querying the Searcher for the closest vectors, a list of WeightedThing<Vector>s is
returned.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#searchFirst-org.apache.mahout.math.Vector-boolean-">searchFirst</a></span>(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;query,
boolean&nbsp;differentThanQuery)</code>
<div class="block">Returns the closest vector to the query.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#setRaiseHashLimitStrategy-double-">setRaiseHashLimitStrategy</a></span>(double&nbsp;strategy)</code>&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#setSearchSize-int-">setSearchSize</a></span>(int&nbsp;size)</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html#size--">size</a></span>()</code>
<div class="block">Returns the number of WeightedVectors being searched for nearest neighbors.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.mahout.math.neighborhood.Searcher">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.mahout.math.neighborhood.<a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html" title="class in org.apache.mahout.math.neighborhood">Searcher</a></h3>
<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#addAll-java.lang.Iterable-">addAll</a>, <a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#addAllMatrixSlices-java.lang.Iterable-">addAllMatrixSlices</a>, <a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#addAllMatrixSlicesAsWeightedVectors-java.lang.Iterable-">addAllMatrixSlicesAsWeightedVectors</a>, <a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#getCandidateQueue-int-">getCandidateQueue</a>, <a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#getDistanceMeasure--">getDistanceMeasure</a>, <a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#search-java.lang.Iterable-int-">search</a>, <a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#searchFirst-java.lang.Iterable-boolean-">searchFirst</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Iterable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true#forEach-java.util.function.Consumer-" title="class or interface in java.lang">forEach</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Iterable.html?is-external=true#spliterator--" title="class or interface in java.lang">spliterator</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="LocalitySensitiveHashSearch-org.apache.mahout.common.distance.DistanceMeasure-int-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>LocalitySensitiveHashSearch</h4>
<pre>public&nbsp;LocalitySensitiveHashSearch(<a href="../../../../../org/apache/mahout/common/distance/DistanceMeasure.html" title="interface in org.apache.mahout.common.distance">DistanceMeasure</a>&nbsp;distanceMeasure,
int&nbsp;searchSize)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="search-org.apache.mahout.math.Vector-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>search</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;&gt;&nbsp;search(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;query,
int&nbsp;limit)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#search-org.apache.mahout.math.Vector-int-">Searcher</a></code></span></div>
<div class="block">When querying the Searcher for the closest vectors, a list of WeightedThing<Vector>s is
returned. The value of the WeightedThing is the neighbor and the weight is the
the distance (calculated by some metric - see a concrete implementation) between the query
and neighbor.
The actual type of vector in the pair is the same as the vector added to the Searcher.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#search-org.apache.mahout.math.Vector-int-">search</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html" title="class in org.apache.mahout.math.neighborhood">Searcher</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>query</code> - the vector to search for</dd>
<dd><code>limit</code> - the number of results to return</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the list of weighted vectors closest to the query</dd>
</dl>
</li>
</ul>
<a name="searchFirst-org.apache.mahout.math.Vector-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>searchFirst</h4>
<pre>public&nbsp;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;&nbsp;searchFirst(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;query,
boolean&nbsp;differentThanQuery)</pre>
<div class="block">Returns the closest vector to the query.
When only one the nearest vector is needed, use this method, NOT search(query, limit) because
it's faster (less overhead).
This is nearly the same as search().</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#searchFirst-org.apache.mahout.math.Vector-boolean-">searchFirst</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html" title="class in org.apache.mahout.math.neighborhood">Searcher</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>query</code> - the vector to search for</dd>
<dd><code>differentThanQuery</code> - if true, returns the closest vector different than the query (this
only matters if the query is among the searched vectors), otherwise,
returns the closest vector to the query (even the same vector).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the weighted vector closest to the query</dd>
</dl>
</li>
</ul>
<a name="removeHash-org.apache.mahout.math.random.WeightedThing-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeHash</h4>
<pre>protected static&nbsp;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;&nbsp;removeHash(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/random/WeightedThing.html?is-external=true" title="class or interface in org.apache.mahout.math.random">WeightedThing</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;&nbsp;input)</pre>
</li>
</ul>
<a name="add-org.apache.mahout.math.Vector-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre>public&nbsp;void&nbsp;add(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;vector)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#add-org.apache.mahout.math.Vector-">Searcher</a></code></span></div>
<div class="block">Add a new Vector to the Searcher that will be checked when getting
the nearest neighbors.
The vector IS NOT CLONED. Do not modify the vector externally otherwise the internal
Searcher data structures could be invalidated.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#add-org.apache.mahout.math.Vector-">add</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html" title="class in org.apache.mahout.math.neighborhood">Searcher</a></code></dd>
</dl>
</li>
</ul>
<a name="size--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>size</h4>
<pre>public&nbsp;int&nbsp;size()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#size--">Searcher</a></code></span></div>
<div class="block">Returns the number of WeightedVectors being searched for nearest neighbors.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html#size--">size</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/Searcher.html" title="class in org.apache.mahout.math.neighborhood">Searcher</a></code></dd>
</dl>
</li>
</ul>
<a name="getSearchSize--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSearchSize</h4>
<pre>public&nbsp;int&nbsp;getSearchSize()</pre>
</li>
</ul>
<a name="setSearchSize-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSearchSize</h4>
<pre>public&nbsp;void&nbsp;setSearchSize(int&nbsp;size)</pre>
</li>
</ul>
<a name="setRaiseHashLimitStrategy-double-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRaiseHashLimitStrategy</h4>
<pre>public&nbsp;void&nbsp;setRaiseHashLimitStrategy(double&nbsp;strategy)</pre>
</li>
</ul>
<a name="resetEvaluationCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetEvaluationCount</h4>
<pre>public&nbsp;int&nbsp;resetEvaluationCount()</pre>
<div class="block">This is only for testing.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of times the actual distance between two vectors was computed.</dd>
</dl>
</li>
</ul>
<a name="iterator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iterator</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a>&lt;<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&gt;&nbsp;iterator()</pre>
</li>
</ul>
<a name="remove-org.apache.mahout.math.Vector-double-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remove</h4>
<pre>public&nbsp;boolean&nbsp;remove(<a href="http://mahout.apache.org/mahout-math/apidocs/org/apache/mahout/math/Vector.html?is-external=true" title="class or interface in org.apache.mahout.math">Vector</a>&nbsp;v,
double&nbsp;epsilon)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/mahout/math/neighborhood/UpdatableSearcher.html#remove-org.apache.mahout.math.Vector-double-">remove</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/UpdatableSearcher.html" title="class in org.apache.mahout.math.neighborhood">UpdatableSearcher</a></code></dd>
</dl>
</li>
</ul>
<a name="clear--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>clear</h4>
<pre>public&nbsp;void&nbsp;clear()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/mahout/math/neighborhood/UpdatableSearcher.html#clear--">clear</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/mahout/math/neighborhood/UpdatableSearcher.html" title="class in org.apache.mahout.math.neighborhood">UpdatableSearcher</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/LocalitySensitiveHashSearch.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/mahout/math/neighborhood/HashedVector.html" title="class in org.apache.mahout.math.neighborhood"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/mahout/math/neighborhood/ProjectionSearch.html" title="class in org.apache.mahout.math.neighborhood"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/mahout/math/neighborhood/LocalitySensitiveHashSearch.html" target="_top">Frames</a></li>
<li><a href="LocalitySensitiveHashSearch.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.apache.mahout.math.neighborhood.Searcher">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2008&#x2013;2017 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>