2017-02-23 06:26:44 +08:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=9" / >
< meta name = "generator" content = "Doxygen 1.8.5" / >
< title > Faiss: faiss::IndexIVF Struct Reference< / title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "search/search.js" > < / script >
< script type = "text/javascript" >
$(document).ready(function() { searchBox.OnSelectItem(0); });
< / script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr style = "height: 56px;" >
< td style = "padding-left: 0.5em;" >
< div id = "projectname" > Faiss
< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
< script type = "text/javascript" >
var searchBox = new SearchBox("searchBox", "search",false,'Search');
< / script >
< div id = "navrow1" class = "tabs" >
< ul class = "tablist" >
< li > < a href = "index.html" > < span > Main  Page< / span > < / a > < / li >
< li > < a href = "namespaces.html" > < span > Namespaces< / span > < / a > < / li >
< li class = "current" > < a href = "annotated.html" > < span > Classes< / span > < / a > < / li >
< li > < a href = "files.html" > < span > Files< / span > < / a > < / li >
< li >
< div id = "MSearchBox" class = "MSearchBoxInactive" >
< span class = "left" >
< img id = "MSearchSelect" src = "search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
< input type = "text" id = "MSearchField" value = "Search" accesskey = "S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
< / span > < span class = "right" >
< a id = "MSearchClose" href = "javascript:searchBox.CloseResultsWindow()" > < img id = "MSearchCloseImg" border = "0" src = "search/close.png" alt = "" / > < / a >
< / span >
< / div >
< / li >
< / ul >
< / div >
< div id = "navrow2" class = "tabs2" >
< ul class = "tablist" >
< li > < a href = "annotated.html" > < span > Class  List< / span > < / a > < / li >
< li > < a href = "classes.html" > < span > Class  Index< / span > < / a > < / li >
< li > < a href = "hierarchy.html" > < span > Class  Hierarchy< / span > < / a > < / li >
< li > < a href = "functions.html" > < span > Class  Members< / span > < / a > < / li >
< / ul >
< / div >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(0)" > < span class = "SelectionMark" >   < / span > All< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(1)" > < span class = "SelectionMark" >   < / span > Classes< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(2)" > < span class = "SelectionMark" >   < / span > Namespaces< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(3)" > < span class = "SelectionMark" >   < / span > Functions< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(4)" > < span class = "SelectionMark" >   < / span > Variables< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(5)" > < span class = "SelectionMark" >   < / span > Typedefs< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(6)" > < span class = "SelectionMark" >   < / span > Enumerations< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(7)" > < span class = "SelectionMark" >   < / span > Enumerator< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(8)" > < span class = "SelectionMark" >   < / span > Friends< / a > < / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< iframe src = "javascript:void(0)" frameborder = "0"
name="MSearchResults" id="MSearchResults">
< / iframe >
< / div >
< div id = "nav-path" class = "navpath" >
< ul >
< li class = "navelem" > < a class = "el" href = "namespacefaiss.html" > faiss< / a > < / li > < li class = "navelem" > < a class = "el" href = "structfaiss_1_1IndexIVF.html" > IndexIVF< / a > < / li > < / ul >
< / div >
< / div > <!-- top -->
< div class = "header" >
< div class = "summary" >
< a href = "#pub-methods" > Public Member Functions< / a > |
< a href = "#pub-attribs" > Public Attributes< / a > |
< a href = "structfaiss_1_1IndexIVF-members.html" > List of all members< / a > < / div >
< div class = "headertitle" >
< div class = "title" > faiss::IndexIVF Struct Reference< span class = "mlabels" > < span class = "mlabel" > abstract< / span > < / span > < / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< p > < code > #include < < a class = "el" href = "IndexIVF_8h_source.html" > IndexIVF.h< / a > > < / code > < / p >
< div class = "dynheader" >
Inheritance diagram for faiss::IndexIVF:< / div >
< div class = "dyncontent" >
< div class = "center" >
< img src = "structfaiss_1_1IndexIVF.png" usemap = "#faiss::IndexIVF_map" alt = "" / >
< map id = "faiss::IndexIVF_map" name = "faiss::IndexIVF_map" >
< area href = "structfaiss_1_1Index.html" alt = "faiss::Index" shape = "rect" coords = "85,0,246,24" / >
< area href = "structfaiss_1_1IndexIVFFlat.html" alt = "faiss::IndexIVFFlat" shape = "rect" coords = "0,112,161,136" / >
< area href = "structfaiss_1_1IndexIVFPQ.html" alt = "faiss::IndexIVFPQ" shape = "rect" coords = "171,112,332,136" / >
< area href = "structfaiss_1_1IndexIVFPQCompact.html" alt = "faiss::IndexIVFPQCompact" shape = "rect" coords = "85,168,246,192" / >
< area href = "structfaiss_1_1IndexIVFPQR.html" alt = "faiss::IndexIVFPQR" shape = "rect" coords = "256,168,417,192" / >
< / map >
< / div > < / div >
< table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "pub-methods" > < / a >
Public Member Functions< / h2 > < / td > < / tr >
< tr class = "memitem:a617f8c4ff40619d141c5c21dbf758ddf" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a617f8c4ff40619d141c5c21dbf758ddf" > IndexIVF< / a > (< a class = "el" href = "structfaiss_1_1Index.html" > Index< / a > *< a class = "el" href = "structfaiss_1_1IndexIVF.html#a4b40cc7a70dff41196a3b8769586667a" > quantizer< / a > , size_t < a class = "el" href = "structfaiss_1_1Index.html#a2a002388d2c081c2dbab8508dcefe73d" > d< / a > , size_t < a class = "el" href = "structfaiss_1_1IndexIVF.html#ab38fde4c923abefc4185eb7450b5b95b" > nlist< / a > , < a class = "el" href = "namespacefaiss.html#afd12191c638da74760ff397cf319752c" > MetricType< / a > metric=METRIC_INNER_PRODUCT)< / td > < / tr >
< tr class = "separator:a617f8c4ff40619d141c5c21dbf758ddf" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a47a3b7665e9d2be41c6d3b2e9144b73f" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a47a3b7665e9d2be41c6d3b2e9144b73f" > < / a >
virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a47a3b7665e9d2be41c6d3b2e9144b73f" > reset< / a > () override< / td > < / tr >
< tr class = "memdesc:a47a3b7665e9d2be41c6d3b2e9144b73f" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > removes all elements from the database. < br / > < / td > < / tr >
< tr class = "separator:a47a3b7665e9d2be41c6d3b2e9144b73f" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7a1d5eec194db0977b2318c6ed6a2b86" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a7a1d5eec194db0977b2318c6ed6a2b86" > < / a >
virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a7a1d5eec194db0977b2318c6ed6a2b86" > train< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > n, const float *x) override< / td > < / tr >
< tr class = "memdesc:a7a1d5eec194db0977b2318c6ed6a2b86" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Trains the quantizer and calls train_residual to train sub-quantizers. < br / > < / td > < / tr >
< tr class = "separator:a7a1d5eec194db0977b2318c6ed6a2b86" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a821002a9d3a1a74dc8d6f6072eca4075" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a821002a9d3a1a74dc8d6f6072eca4075" > < / a >
virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a821002a9d3a1a74dc8d6f6072eca4075" > add< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > n, const float *x) override< / td > < / tr >
< tr class = "memdesc:a821002a9d3a1a74dc8d6f6072eca4075" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Quantizes x and calls add_with_key. < br / > < / td > < / tr >
< tr class = "separator:a821002a9d3a1a74dc8d6f6072eca4075" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a567ef760fd09d09ce2ee4f4e6c2d7280" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a567ef760fd09d09ce2ee4f4e6c2d7280" > train_residual< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > n, const float *x)< / td > < / tr >
< tr class = "separator:a567ef760fd09d09ce2ee4f4e6c2d7280" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a0f22cc237c30c935df5b6560aecf8f01" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a0f22cc237c30c935df5b6560aecf8f01" > merge_from< / a > (< a class = "el" href = "structfaiss_1_1IndexIVF.html" > IndexIVF< / a > & other, < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > add_id)< / td > < / tr >
< tr class = "separator:a0f22cc237c30c935df5b6560aecf8f01" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aacaf0b2529a9d9def094ea3728a12824" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#aacaf0b2529a9d9def094ea3728a12824" > merge_from_residuals< / a > (< a class = "el" href = "structfaiss_1_1IndexIVF.html" > IndexIVF< / a > & other)=0< / td > < / tr >
< tr class = "separator:aacaf0b2529a9d9def094ea3728a12824" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aae6f0fae1f0721af3aa0b5ea1bd9980d" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "aae6f0fae1f0721af3aa0b5ea1bd9980d" > < / a >
void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#aae6f0fae1f0721af3aa0b5ea1bd9980d" > make_direct_map< / a > ()< / td > < / tr >
< tr class = "memdesc:aae6f0fae1f0721af3aa0b5ea1bd9980d" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > intialize a direct map < br / > < / td > < / tr >
< tr class = "separator:aae6f0fae1f0721af3aa0b5ea1bd9980d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aeab84d4edf2cf9747c923e1a8395d9f3" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "aeab84d4edf2cf9747c923e1a8395d9f3" > < / a >
double  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#aeab84d4edf2cf9747c923e1a8395d9f3" > imbalance_factor< / a > () const < / td > < / tr >
< tr class = "memdesc:aeab84d4edf2cf9747c923e1a8395d9f3" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > 1= perfectly balanced, > 1: imbalanced < br / > < / td > < / tr >
< tr class = "separator:aeab84d4edf2cf9747c923e1a8395d9f3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a513dfec3a250f08a9fdd18a24178e6bb" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a513dfec3a250f08a9fdd18a24178e6bb" > < / a >
void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a513dfec3a250f08a9fdd18a24178e6bb" > print_stats< / a > () const < / td > < / tr >
< tr class = "memdesc:a513dfec3a250f08a9fdd18a24178e6bb" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > display some stats about the inverted lists < br / > < / td > < / tr >
< tr class = "separator:a513dfec3a250f08a9fdd18a24178e6bb" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "inherit_header pub_methods_structfaiss_1_1Index" > < td colspan = "2" onclick = "javascript:toggleInherit('pub_methods_structfaiss_1_1Index')" > < img src = "closed.png" alt = "-" / >   Public Member Functions inherited from < a class = "el" href = "structfaiss_1_1Index.html" > faiss::Index< / a > < / td > < / tr >
< tr class = "memitem:a18475cb29370bd6ac3c9f41d39f2e8ec inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a18475cb29370bd6ac3c9f41d39f2e8ec" > < / a >
  < / td > < td class = "memItemRight" valign = "bottom" > < b > Index< / b > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > < a class = "el" href = "structfaiss_1_1Index.html#a2a002388d2c081c2dbab8508dcefe73d" > d< / a > =0, < a class = "el" href = "namespacefaiss.html#afd12191c638da74760ff397cf319752c" > MetricType< / a > metric=METRIC_INNER_PRODUCT)< / td > < / tr >
< tr class = "separator:a18475cb29370bd6ac3c9f41d39f2e8ec inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aa6931dfe054b33b02c842ff75f7a0c7f inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#aa6931dfe054b33b02c842ff75f7a0c7f" > add_with_ids< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > n, const float *x, const long *xids)< / td > < / tr >
< tr class = "separator:aa6931dfe054b33b02c842ff75f7a0c7f inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aced51b1ebc33c47ab3ae15ea906559a7 inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#aced51b1ebc33c47ab3ae15ea906559a7" > search< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > n, const float *x, < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > k, float *distances, < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > *labels) const =0< / td > < / tr >
< tr class = "separator:aced51b1ebc33c47ab3ae15ea906559a7 inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a236897832a58dbb205e2d662c1929fb1 inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a236897832a58dbb205e2d662c1929fb1" > range_search< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > n, const float *x, float radius, < a class = "el" href = "structfaiss_1_1RangeSearchResult.html" > RangeSearchResult< / a > *result) const < / td > < / tr >
< tr class = "separator:a236897832a58dbb205e2d662c1929fb1 inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8bc5d8d1cd0dd7b34b3c98a9f76b4a9c inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a8bc5d8d1cd0dd7b34b3c98a9f76b4a9c" > assign< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > n, const float *x, < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > *labels, < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > k=1)< / td > < / tr >
< tr class = "separator:a8bc5d8d1cd0dd7b34b3c98a9f76b4a9c inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af8bf7bd97aeed8ad5fc48b242379a68a inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > virtual long  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#af8bf7bd97aeed8ad5fc48b242379a68a" > remove_ids< / a > (const < a class = "el" href = "structfaiss_1_1IDSelector.html" > IDSelector< / a > & sel)< / td > < / tr >
< tr class = "separator:af8bf7bd97aeed8ad5fc48b242379a68a inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aaef6f4132b1f390121ebb11058baf190 inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#aaef6f4132b1f390121ebb11058baf190" > reconstruct< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > key, float *recons) const < / td > < / tr >
< tr class = "separator:aaef6f4132b1f390121ebb11058baf190 inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a1936604fffe16b0ef2a3879305950738 inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a1936604fffe16b0ef2a3879305950738" > reconstruct_n< / a > (< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > i0, < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > ni, float *recons) const < / td > < / tr >
< tr class = "separator:a1936604fffe16b0ef2a3879305950738 inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aaae77608bbda70b1098897e9167a82f9 inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#aaae77608bbda70b1098897e9167a82f9" > compute_residual< / a > (const float *x, float *residual, < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > key) const < / td > < / tr >
< tr class = "separator:aaae77608bbda70b1098897e9167a82f9 inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a373c30e3d87d1d4e616f450d87152b1a inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a373c30e3d87d1d4e616f450d87152b1a" > display< / a > () const < / td > < / tr >
< tr class = "separator:a373c30e3d87d1d4e616f450d87152b1a inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aae095c6209a16347262408b3346193a3 inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > virtual std::string  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#aae095c6209a16347262408b3346193a3" > get_typename< / a > () const < / td > < / tr >
< tr class = "separator:aae095c6209a16347262408b3346193a3 inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a2d9fcc5be66369215df74bb7d028424c inherit pub_methods_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a2d9fcc5be66369215df74bb7d028424c" > < / a >
virtual void  < / td > < td class = "memItemRight" valign = "bottom" > < b > set_typename< / b > ()=0< / td > < / tr >
< tr class = "separator:a2d9fcc5be66369215df74bb7d028424c inherit pub_methods_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "pub-attribs" > < / a >
Public Attributes< / h2 > < / td > < / tr >
< tr class = "memitem:ab38fde4c923abefc4185eb7450b5b95b" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "ab38fde4c923abefc4185eb7450b5b95b" > < / a >
size_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#ab38fde4c923abefc4185eb7450b5b95b" > nlist< / a > < / td > < / tr >
< tr class = "memdesc:ab38fde4c923abefc4185eb7450b5b95b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > number of possible key values < br / > < / td > < / tr >
< tr class = "separator:ab38fde4c923abefc4185eb7450b5b95b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:affed235eadf27a13d753ee4d33a1dc58" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "affed235eadf27a13d753ee4d33a1dc58" > < / a >
size_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#affed235eadf27a13d753ee4d33a1dc58" > nprobe< / a > < / td > < / tr >
< tr class = "memdesc:affed235eadf27a13d753ee4d33a1dc58" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > number of probes at query time < br / > < / td > < / tr >
< tr class = "separator:affed235eadf27a13d753ee4d33a1dc58" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a4b40cc7a70dff41196a3b8769586667a" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a4b40cc7a70dff41196a3b8769586667a" > < / a >
< a class = "el" href = "structfaiss_1_1Index.html" > Index< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a4b40cc7a70dff41196a3b8769586667a" > quantizer< / a > < / td > < / tr >
< tr class = "memdesc:a4b40cc7a70dff41196a3b8769586667a" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > quantizer that maps vectors to inverted lists < br / > < / td > < / tr >
< tr class = "separator:a4b40cc7a70dff41196a3b8769586667a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a23ee7f75f8be4472a17778f2b33875de" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a23ee7f75f8be4472a17778f2b33875de" > < / a >
bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a23ee7f75f8be4472a17778f2b33875de" > quantizer_trains_alone< / a > < / td > < / tr >
< tr class = "memdesc:a23ee7f75f8be4472a17778f2b33875de" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > just pass over the trainset to quantizer < br / > < / td > < / tr >
< tr class = "separator:a23ee7f75f8be4472a17778f2b33875de" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aed2e9757ad5f3c234fd8ad60175a2a73" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "aed2e9757ad5f3c234fd8ad60175a2a73" > < / a >
bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#aed2e9757ad5f3c234fd8ad60175a2a73" > own_fields< / a > < / td > < / tr >
< tr class = "memdesc:aed2e9757ad5f3c234fd8ad60175a2a73" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > whether object owns the quantizer < br / > < / td > < / tr >
< tr class = "separator:aed2e9757ad5f3c234fd8ad60175a2a73" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a9746bcd42ecec1501f221e918b25e8e7" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a9746bcd42ecec1501f221e918b25e8e7" > < / a >
< a class = "el" href = "structfaiss_1_1ClusteringParameters.html" > ClusteringParameters< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#a9746bcd42ecec1501f221e918b25e8e7" > cp< / a > < / td > < / tr >
< tr class = "memdesc:a9746bcd42ecec1501f221e918b25e8e7" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > to override default clustering params < br / > < / td > < / tr >
< tr class = "separator:a9746bcd42ecec1501f221e918b25e8e7" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:af16d325f5bef22b2e5f90ceea796e80d" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "af16d325f5bef22b2e5f90ceea796e80d" > < / a >
std::vector< std::vector< long > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#af16d325f5bef22b2e5f90ceea796e80d" > ids< / a > < / td > < / tr >
< tr class = "memdesc:af16d325f5bef22b2e5f90ceea796e80d" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Inverted lists for indexes. < br / > < / td > < / tr >
< tr class = "separator:af16d325f5bef22b2e5f90ceea796e80d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aedd0c14b5654295b291638ec7f9f9517" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "aedd0c14b5654295b291638ec7f9f9517" > < / a >
bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1IndexIVF.html#aedd0c14b5654295b291638ec7f9f9517" > maintain_direct_map< / a > < / td > < / tr >
< tr class = "memdesc:aedd0c14b5654295b291638ec7f9f9517" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > map for direct access to the elements. Enables < a class = "el" href = "structfaiss_1_1Index.html#aaef6f4132b1f390121ebb11058baf190" > reconstruct()< / a > . < br / > < / td > < / tr >
< tr class = "separator:aedd0c14b5654295b291638ec7f9f9517" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a59fcfc4625260315c6423adc21d31ce9" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a59fcfc4625260315c6423adc21d31ce9" > < / a >
std::vector< long >   < / td > < td class = "memItemRight" valign = "bottom" > < b > direct_map< / b > < / td > < / tr >
< tr class = "separator:a59fcfc4625260315c6423adc21d31ce9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "inherit_header pub_attribs_structfaiss_1_1Index" > < td colspan = "2" onclick = "javascript:toggleInherit('pub_attribs_structfaiss_1_1Index')" > < img src = "closed.png" alt = "-" / >   Public Attributes inherited from < a class = "el" href = "structfaiss_1_1Index.html" > faiss::Index< / a > < / td > < / tr >
< tr class = "memitem:a294b7b4efde95636baed8a6691f49018 inherit pub_attribs_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a294b7b4efde95636baed8a6691f49018" > < / a >
std::string  < / td > < td class = "memItemRight" valign = "bottom" > < b > index_typename< / b > < / td > < / tr >
< tr class = "separator:a294b7b4efde95636baed8a6691f49018 inherit pub_attribs_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a2a002388d2c081c2dbab8508dcefe73d inherit pub_attribs_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a2a002388d2c081c2dbab8508dcefe73d" > < / a >
int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a2a002388d2c081c2dbab8508dcefe73d" > d< / a > < / td > < / tr >
< tr class = "memdesc:a2a002388d2c081c2dbab8508dcefe73d inherit pub_attribs_structfaiss_1_1Index" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > vector dimension < br / > < / td > < / tr >
< tr class = "separator:a2a002388d2c081c2dbab8508dcefe73d inherit pub_attribs_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6970683faa021b7a6f1a0865c0d4eccd inherit pub_attribs_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a6970683faa021b7a6f1a0865c0d4eccd" > < / a >
< a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a6970683faa021b7a6f1a0865c0d4eccd" > ntotal< / a > < / td > < / tr >
< tr class = "memdesc:a6970683faa021b7a6f1a0865c0d4eccd inherit pub_attribs_structfaiss_1_1Index" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > total nb of indexed vectors < br / > < / td > < / tr >
< tr class = "separator:a6970683faa021b7a6f1a0865c0d4eccd inherit pub_attribs_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5590d847c5c2b958affd2a05e58a6f23 inherit pub_attribs_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a5590d847c5c2b958affd2a05e58a6f23" > < / a >
bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a5590d847c5c2b958affd2a05e58a6f23" > verbose< / a > < / td > < / tr >
< tr class = "memdesc:a5590d847c5c2b958affd2a05e58a6f23 inherit pub_attribs_structfaiss_1_1Index" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > verbosity level < br / > < / td > < / tr >
< tr class = "separator:a5590d847c5c2b958affd2a05e58a6f23 inherit pub_attribs_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6e92732617c4dbe364e7678dd8773a7f inherit pub_attribs_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a6e92732617c4dbe364e7678dd8773a7f" > < / a >
bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a6e92732617c4dbe364e7678dd8773a7f" > is_trained< / a > < / td > < / tr >
< tr class = "memdesc:a6e92732617c4dbe364e7678dd8773a7f inherit pub_attribs_structfaiss_1_1Index" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > set if the < a class = "el" href = "structfaiss_1_1Index.html" > Index< / a > does not require training, or if training is done already < br / > < / td > < / tr >
< tr class = "separator:a6e92732617c4dbe364e7678dd8773a7f inherit pub_attribs_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8e18f641854b2bde83ecff0a2f9a6f4e inherit pub_attribs_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a8e18f641854b2bde83ecff0a2f9a6f4e" > < / a >
< a class = "el" href = "namespacefaiss.html#afd12191c638da74760ff397cf319752c" > MetricType< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a8e18f641854b2bde83ecff0a2f9a6f4e" > metric_type< / a > < / td > < / tr >
< tr class = "memdesc:a8e18f641854b2bde83ecff0a2f9a6f4e inherit pub_attribs_structfaiss_1_1Index" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > type of metric this index uses for search < br / > < / td > < / tr >
< tr class = "separator:a8e18f641854b2bde83ecff0a2f9a6f4e inherit pub_attribs_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "inherited" > < / a >
Additional Inherited Members< / h2 > < / td > < / tr >
< tr class = "inherit_header pub_types_structfaiss_1_1Index" > < td colspan = "2" onclick = "javascript:toggleInherit('pub_types_structfaiss_1_1Index')" > < img src = "closed.png" alt = "-" / >   Public Types inherited from < a class = "el" href = "structfaiss_1_1Index.html" > faiss::Index< / a > < / td > < / tr >
< tr class = "memitem:a040c6aed1f224f3ea7bf58eebc0c31a4 inherit pub_types_structfaiss_1_1Index" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "anchor" id = "a040c6aed1f224f3ea7bf58eebc0c31a4" > < / a >
typedef long  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a > < / td > < / tr >
< tr class = "memdesc:a040c6aed1f224f3ea7bf58eebc0c31a4 inherit pub_types_structfaiss_1_1Index" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > all indices are this type < br / > < / td > < / tr >
< tr class = "separator:a040c6aed1f224f3ea7bf58eebc0c31a4 inherit pub_types_structfaiss_1_1Index" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table >
< a name = "details" id = "details" > < / a > < h2 class = "groupheader" > Detailed Description< / h2 >
< div class = "textblock" > < p > < a class = "el" href = "structfaiss_1_1Index.html" > Index< / a > based on a inverted file (IVF)< / p >
< p > In the inverted file, the quantizer (an < a class = "el" href = "structfaiss_1_1Index.html" > Index< / a > instance) provides a quantization index for each vector to be added. The quantization index maps to a list (aka inverted list or posting list), where the id of the vector is then stored.< / p >
< p > At search time, the vector to be searched is also quantized, and only the list corresponding to the quantization index is searched. This speeds up the search by making it non-exhaustive. This can be relaxed using multi-probe search: a few (nprobe) quantization indices are selected and several inverted lists are visited.< / p >
< p > Sub-classes implement a post-filtering of the index that refines the distance estimation from the query to databse vectors. < / p >
< p > Definition at line < a class = "el" href = "IndexIVF_8h_source.html#l00046" > 46< / a > of file < a class = "el" href = "IndexIVF_8h_source.html" > IndexIVF.h< / a > .< / p >
< / div > < h2 class = "groupheader" > Constructor & Destructor Documentation< / h2 >
< a class = "anchor" id = "a617f8c4ff40619d141c5c21dbf758ddf" > < / a >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > faiss::IndexIVF::IndexIVF < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "structfaiss_1_1Index.html" > Index< / a > *  < / td >
< td class = "paramname" > < em > quantizer< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > size_t  < / td >
< td class = "paramname" > < em > d< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > size_t  < / td >
< td class = "paramname" > < em > nlist< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "namespacefaiss.html#afd12191c638da74760ff397cf319752c" > MetricType< / a >   < / td >
< td class = "paramname" > < em > metric< / em > = < code > METRIC_INNER_PRODUCT< / code >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > The Inverted file takes a quantizer (an < a class = "el" href = "structfaiss_1_1Index.html" > Index< / a > ) on input, which implements the function mapping a vector to a list identifier. The pointer is borrowed: the quantizer should not be deleted while the < a class = "el" href = "structfaiss_1_1IndexIVF.html" > IndexIVF< / a > is in use. < / p >
< p > Definition at line < a class = "el" href = "IndexIVF_8cpp_source.html#l00032" > 32< / a > of file < a class = "el" href = "IndexIVF_8cpp_source.html" > IndexIVF.cpp< / a > .< / p >
< / div >
< / div >
< h2 class = "groupheader" > Member Function Documentation< / h2 >
< a class = "anchor" id = "a0f22cc237c30c935df5b6560aecf8f01" > < / a >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void faiss::IndexIVF::merge_from < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "structfaiss_1_1IndexIVF.html" > IndexIVF< / a > &   < / td >
< td class = "paramname" > < em > other< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a >   < / td >
< td class = "paramname" > < em > add_id< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > moves the entries from another dataset to self. On output, other is empty. add_id is added to all moved ids (for sequential ids, this would be this-> ntotal < / p >
< p > Definition at line < a class = "el" href = "IndexIVF_8cpp_source.html#l00163" > 163< / a > of file < a class = "el" href = "IndexIVF_8cpp_source.html" > IndexIVF.cpp< / a > .< / p >
< / div >
< / div >
< a class = "anchor" id = "aacaf0b2529a9d9def094ea3728a12824" > < / a >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > virtual void faiss::IndexIVF::merge_from_residuals < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "structfaiss_1_1IndexIVF.html" > IndexIVF< / a > &   < / td >
< td class = "paramname" > < em > other< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > pure virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > implemented by sub-classes < / p >
< p > Implemented in < a class = "el" href = "structfaiss_1_1IndexIVFPQR.html#af6c7ee3bc917cc5d4ab04ff64269ee06" > faiss::IndexIVFPQR< / a > , < a class = "el" href = "structfaiss_1_1IndexIVFFlat.html#a8fc1695a87f33db1a16f8c50c3344cd3" > faiss::IndexIVFFlat< / a > , and < a class = "el" href = "structfaiss_1_1IndexIVFPQ.html#a6b8964e2da609a9261a8a35ae347ecb2" > faiss::IndexIVFPQ< / a > .< / p >
< / div >
< / div >
< a class = "anchor" id = "a567ef760fd09d09ce2ee4f4e6c2d7280" > < / a >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void faiss::IndexIVF::train_residual < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "structfaiss_1_1Index.html#a040c6aed1f224f3ea7bf58eebc0c31a4" > idx_t< / a >   < / td >
< td class = "paramname" > < em > n< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const float *  < / td >
< td class = "paramname" > < em > x< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > virtual< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Sub-classes that encode the residuals can train their encoders here does nothing by default < / p >
< p > Reimplemented in < a class = "el" href = "structfaiss_1_1IndexIVFPQR.html#a68ed7cae5bec89fcdcb6a1d2addbd5a8" > faiss::IndexIVFPQR< / a > , and < a class = "el" href = "structfaiss_1_1IndexIVFPQ.html#af6565a5d8bab7be3df19c50d235bd662" > faiss::IndexIVFPQ< / a > .< / p >
< p > Definition at line < a class = "el" href = "IndexIVF_8cpp_source.html#l00125" > 125< / a > of file < a class = "el" href = "IndexIVF_8cpp_source.html" > IndexIVF.cpp< / a > .< / p >
< / div >
< / div >
< hr / > The documentation for this struct was generated from the following files:< ul >
2017-03-01 17:50:47 +08:00
< li > < a class = "el" href = "IndexIVF_8h_source.html" > IndexIVF.h< / a > < / li >
< li > < a class = "el" href = "IndexIVF_8cpp_source.html" > IndexIVF.cpp< / a > < / li >
2017-02-23 06:26:44 +08:00
< / ul >
< / div > <!-- contents -->
<!-- start footer part -->
< hr class = "footer" / > < address class = "footer" > < small >
Generated by   < a href = "http://www.doxygen.org/index.html" >
< img class = "footer" src = "doxygen.png" alt = "doxygen" / >
< / a > 1.8.5
< / small > < / address >
< / body >
< / html >